From d8c1e7f0680c73903ed7a2d32766a590dcdad6d3 Mon Sep 17 00:00:00 2001 From: WalterNorthwoods Date: Wed, 14 Sep 2016 10:14:33 -0400 Subject: [PATCH] 1.6.16 --- api/index.html | 2 +- api/symbols/ActionTool.html | 2 +- api/symbols/Adornment.html | 2 +- api/symbols/AnimationManager.html | 2 +- api/symbols/Binding.html | 2 +- api/symbols/Brush.html | 2 +- api/symbols/ChangedEvent.html | 2 +- api/symbols/CircularEdge.html | 2 +- api/symbols/CircularLayout.html | 2 +- api/symbols/CircularVertex.html | 2 +- api/symbols/ClickCreatingTool.html | 2 +- api/symbols/ClickSelectingTool.html | 2 +- api/symbols/CommandHandler.html | 2 +- api/symbols/ContextMenuTool.html | 2 +- api/symbols/Diagram.html | 2 +- api/symbols/DiagramEvent.html | 2 +- api/symbols/DragSelectingTool.html | 2 +- api/symbols/DraggingTool.html | 2 +- api/symbols/ForceDirectedEdge.html | 2 +- api/symbols/ForceDirectedLayout.html | 2 +- api/symbols/ForceDirectedVertex.html | 2 +- api/symbols/Geometry.html | 2 +- api/symbols/GraphLinksModel.html | 2 +- api/symbols/GraphObject.html | 2 +- api/symbols/GridLayout.html | 2 +- api/symbols/Group.html | 2 +- api/symbols/InputEvent.html | 2 +- api/symbols/Iterable.html | 2 +- api/symbols/Iterator.html | 2 +- api/symbols/Layer.html | 2 +- api/symbols/LayeredDigraphEdge.html | 2 +- api/symbols/LayeredDigraphLayout.html | 2 +- api/symbols/LayeredDigraphVertex.html | 2 +- api/symbols/Layout.html | 2 +- api/symbols/LayoutEdge.html | 2 +- api/symbols/LayoutNetwork.html | 2 +- api/symbols/LayoutVertex.html | 2 +- api/symbols/Link.html | 2 +- api/symbols/LinkReshapingTool.html | 2 +- api/symbols/LinkingBaseTool.html | 2 +- api/symbols/LinkingTool.html | 2 +- api/symbols/List.html | 2 +- api/symbols/Map.html | 2 +- api/symbols/Margin.html | 2 +- api/symbols/Model.html | 2 +- api/symbols/Node.html | 2 +- api/symbols/Overview.html | 2 +- api/symbols/Palette.html | 2 +- api/symbols/Panel.html | 2 +- api/symbols/PanningTool.html | 2 +- api/symbols/Part.html | 2 +- api/symbols/PathFigure.html | 2 +- api/symbols/PathSegment.html | 2 +- api/symbols/Picture.html | 2 +- api/symbols/Placeholder.html | 2 +- api/symbols/Point.html | 2 +- api/symbols/Rect.html | 2 +- api/symbols/RelinkingTool.html | 2 +- api/symbols/ResizingTool.html | 2 +- api/symbols/RotatingTool.html | 2 +- api/symbols/RowColumnDefinition.html | 2 +- api/symbols/Set.html | 2 +- api/symbols/Shape.html | 2 +- api/symbols/Size.html | 2 +- api/symbols/Spot.html | 2 +- api/symbols/TextBlock.html | 2 +- api/symbols/TextEditingTool.html | 2 +- api/symbols/Tool.html | 2 +- api/symbols/ToolManager.html | 2 +- api/symbols/Transaction.html | 2 +- api/symbols/TreeEdge.html | 2 +- api/symbols/TreeLayout.html | 2 +- api/symbols/TreeModel.html | 2 +- api/symbols/TreeVertex.html | 2 +- api/symbols/UndoManager.html | 2 +- doc/changelog.html | 21 + extensions/DimensioningLink.js | 2 + extensions/TableLayout.js | 14 +- package.json | 2 +- release/go-debug.js | 3874 +++++++++++++------------ release/go.js | 3532 +++++++++++----------- 81 files changed, 3812 insertions(+), 3783 deletions(-) diff --git a/api/index.html b/api/index.html index b922edff3..31c0db9ad 100644 --- a/api/index.html +++ b/api/index.html @@ -1073,7 +1073,7 @@

GoJS Class Index

diff --git a/api/symbols/ActionTool.html b/api/symbols/ActionTool.html index 1dc0022f1..b2eb16e38 100644 --- a/api/symbols/ActionTool.html +++ b/api/symbols/ActionTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Adornment.html b/api/symbols/Adornment.html index d380e2585..48880f9b8 100644 --- a/api/symbols/Adornment.html +++ b/api/symbols/Adornment.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/AnimationManager.html b/api/symbols/AnimationManager.html index 202c23a1f..fa059e5ff 100644 --- a/api/symbols/AnimationManager.html +++ b/api/symbols/AnimationManager.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Binding.html b/api/symbols/Binding.html index 610802a49..be8d65874 100644 --- a/api/symbols/Binding.html +++ b/api/symbols/Binding.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Brush.html b/api/symbols/Brush.html index ecbea9a12..10b6593cd 100644 --- a/api/symbols/Brush.html +++ b/api/symbols/Brush.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/ChangedEvent.html b/api/symbols/ChangedEvent.html index 09e97a047..0fee7a38d 100644 --- a/api/symbols/ChangedEvent.html +++ b/api/symbols/ChangedEvent.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/CircularEdge.html b/api/symbols/CircularEdge.html index 85c3404a9..eb31f7812 100644 --- a/api/symbols/CircularEdge.html +++ b/api/symbols/CircularEdge.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/CircularLayout.html b/api/symbols/CircularLayout.html index 047980c27..7ef19b3a6 100644 --- a/api/symbols/CircularLayout.html +++ b/api/symbols/CircularLayout.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/CircularVertex.html b/api/symbols/CircularVertex.html index e7a8ab1ad..5ec2a0f0c 100644 --- a/api/symbols/CircularVertex.html +++ b/api/symbols/CircularVertex.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/ClickCreatingTool.html b/api/symbols/ClickCreatingTool.html index 836f85c0c..e50b126db 100644 --- a/api/symbols/ClickCreatingTool.html +++ b/api/symbols/ClickCreatingTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/ClickSelectingTool.html b/api/symbols/ClickSelectingTool.html index bd3914662..3c036bf24 100644 --- a/api/symbols/ClickSelectingTool.html +++ b/api/symbols/ClickSelectingTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/CommandHandler.html b/api/symbols/CommandHandler.html index e3874ee2c..4215a8ef6 100644 --- a/api/symbols/CommandHandler.html +++ b/api/symbols/CommandHandler.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/ContextMenuTool.html b/api/symbols/ContextMenuTool.html index d21bc0ac2..d502a3c7f 100644 --- a/api/symbols/ContextMenuTool.html +++ b/api/symbols/ContextMenuTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Diagram.html b/api/symbols/Diagram.html index 11d516622..9c12ab51a 100644 --- a/api/symbols/Diagram.html +++ b/api/symbols/Diagram.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/DiagramEvent.html b/api/symbols/DiagramEvent.html index 146fc5f63..4d74f1900 100644 --- a/api/symbols/DiagramEvent.html +++ b/api/symbols/DiagramEvent.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/DragSelectingTool.html b/api/symbols/DragSelectingTool.html index 9fd3c8842..192491888 100644 --- a/api/symbols/DragSelectingTool.html +++ b/api/symbols/DragSelectingTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/DraggingTool.html b/api/symbols/DraggingTool.html index 4fb967588..778aee24c 100644 --- a/api/symbols/DraggingTool.html +++ b/api/symbols/DraggingTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/ForceDirectedEdge.html b/api/symbols/ForceDirectedEdge.html index d5eb5e8fc..80e00d60b 100644 --- a/api/symbols/ForceDirectedEdge.html +++ b/api/symbols/ForceDirectedEdge.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/ForceDirectedLayout.html b/api/symbols/ForceDirectedLayout.html index 8b0c3e8dd..1ca1f580b 100644 --- a/api/symbols/ForceDirectedLayout.html +++ b/api/symbols/ForceDirectedLayout.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/ForceDirectedVertex.html b/api/symbols/ForceDirectedVertex.html index ed0673fe2..5fd78c7fb 100644 --- a/api/symbols/ForceDirectedVertex.html +++ b/api/symbols/ForceDirectedVertex.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Geometry.html b/api/symbols/Geometry.html index d4bab7359..4b986849f 100644 --- a/api/symbols/Geometry.html +++ b/api/symbols/Geometry.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/GraphLinksModel.html b/api/symbols/GraphLinksModel.html index 37bf38051..7d79acb82 100644 --- a/api/symbols/GraphLinksModel.html +++ b/api/symbols/GraphLinksModel.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/GraphObject.html b/api/symbols/GraphObject.html index 28027bfdf..4aca04676 100644 --- a/api/symbols/GraphObject.html +++ b/api/symbols/GraphObject.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/GridLayout.html b/api/symbols/GridLayout.html index ee74d945d..dba3a93cc 100644 --- a/api/symbols/GridLayout.html +++ b/api/symbols/GridLayout.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Group.html b/api/symbols/Group.html index 639c35ba1..934968b4c 100644 --- a/api/symbols/Group.html +++ b/api/symbols/Group.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/InputEvent.html b/api/symbols/InputEvent.html index f5e59e62b..e304dc157 100644 --- a/api/symbols/InputEvent.html +++ b/api/symbols/InputEvent.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Iterable.html b/api/symbols/Iterable.html index 5ad6b70dd..e484af151 100644 --- a/api/symbols/Iterable.html +++ b/api/symbols/Iterable.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Iterator.html b/api/symbols/Iterator.html index 116ef7f5f..5f31f1201 100644 --- a/api/symbols/Iterator.html +++ b/api/symbols/Iterator.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Layer.html b/api/symbols/Layer.html index 70b074253..dd8b4d1b8 100644 --- a/api/symbols/Layer.html +++ b/api/symbols/Layer.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/LayeredDigraphEdge.html b/api/symbols/LayeredDigraphEdge.html index a5fd2dc72..8a3b7e7ce 100644 --- a/api/symbols/LayeredDigraphEdge.html +++ b/api/symbols/LayeredDigraphEdge.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/LayeredDigraphLayout.html b/api/symbols/LayeredDigraphLayout.html index 6c8ce8709..5b2ef0ead 100644 --- a/api/symbols/LayeredDigraphLayout.html +++ b/api/symbols/LayeredDigraphLayout.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/LayeredDigraphVertex.html b/api/symbols/LayeredDigraphVertex.html index 15b310d9f..6c483e9f8 100644 --- a/api/symbols/LayeredDigraphVertex.html +++ b/api/symbols/LayeredDigraphVertex.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Layout.html b/api/symbols/Layout.html index 74ddf199f..f06b044e8 100644 --- a/api/symbols/Layout.html +++ b/api/symbols/Layout.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/LayoutEdge.html b/api/symbols/LayoutEdge.html index 777feef5c..560e1438b 100644 --- a/api/symbols/LayoutEdge.html +++ b/api/symbols/LayoutEdge.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/LayoutNetwork.html b/api/symbols/LayoutNetwork.html index 2f4a6b103..0a6f263bf 100644 --- a/api/symbols/LayoutNetwork.html +++ b/api/symbols/LayoutNetwork.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/LayoutVertex.html b/api/symbols/LayoutVertex.html index 1d5b65f9e..de6d6e4af 100644 --- a/api/symbols/LayoutVertex.html +++ b/api/symbols/LayoutVertex.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Link.html b/api/symbols/Link.html index 354489576..e83cdd941 100644 --- a/api/symbols/Link.html +++ b/api/symbols/Link.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/LinkReshapingTool.html b/api/symbols/LinkReshapingTool.html index 26cfd4e14..7c39628fa 100644 --- a/api/symbols/LinkReshapingTool.html +++ b/api/symbols/LinkReshapingTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/LinkingBaseTool.html b/api/symbols/LinkingBaseTool.html index 86869f477..7c2e5b417 100644 --- a/api/symbols/LinkingBaseTool.html +++ b/api/symbols/LinkingBaseTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/LinkingTool.html b/api/symbols/LinkingTool.html index 19756324c..6ad358c46 100644 --- a/api/symbols/LinkingTool.html +++ b/api/symbols/LinkingTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/List.html b/api/symbols/List.html index c125532f9..e788564ea 100644 --- a/api/symbols/List.html +++ b/api/symbols/List.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Map.html b/api/symbols/Map.html index 7d624e3b5..1fb71d9bf 100644 --- a/api/symbols/Map.html +++ b/api/symbols/Map.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Margin.html b/api/symbols/Margin.html index 7b581a787..187ffc876 100644 --- a/api/symbols/Margin.html +++ b/api/symbols/Margin.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Model.html b/api/symbols/Model.html index 7d3b92849..1dfa5fd63 100644 --- a/api/symbols/Model.html +++ b/api/symbols/Model.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Node.html b/api/symbols/Node.html index 315bc7d18..d31d40861 100644 --- a/api/symbols/Node.html +++ b/api/symbols/Node.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Overview.html b/api/symbols/Overview.html index 982690868..be7a7a803 100644 --- a/api/symbols/Overview.html +++ b/api/symbols/Overview.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Palette.html b/api/symbols/Palette.html index aaf2a7665..2d51377be 100644 --- a/api/symbols/Palette.html +++ b/api/symbols/Palette.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Panel.html b/api/symbols/Panel.html index ea74f9161..c7c59d226 100644 --- a/api/symbols/Panel.html +++ b/api/symbols/Panel.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/PanningTool.html b/api/symbols/PanningTool.html index 633ed294a..f3e3b840e 100644 --- a/api/symbols/PanningTool.html +++ b/api/symbols/PanningTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Part.html b/api/symbols/Part.html index b9bb91a22..55fb1293d 100644 --- a/api/symbols/Part.html +++ b/api/symbols/Part.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/PathFigure.html b/api/symbols/PathFigure.html index 36f010f17..c96ed961a 100644 --- a/api/symbols/PathFigure.html +++ b/api/symbols/PathFigure.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/PathSegment.html b/api/symbols/PathSegment.html index 162608f38..a4fba8e7a 100644 --- a/api/symbols/PathSegment.html +++ b/api/symbols/PathSegment.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Picture.html b/api/symbols/Picture.html index 41a1d3628..94d8f4ef5 100644 --- a/api/symbols/Picture.html +++ b/api/symbols/Picture.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Placeholder.html b/api/symbols/Placeholder.html index 446d21a93..f28068469 100644 --- a/api/symbols/Placeholder.html +++ b/api/symbols/Placeholder.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Point.html b/api/symbols/Point.html index 273577f85..f59c4e6d4 100644 --- a/api/symbols/Point.html +++ b/api/symbols/Point.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Rect.html b/api/symbols/Rect.html index 3071c05a1..e0b560297 100644 --- a/api/symbols/Rect.html +++ b/api/symbols/Rect.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/RelinkingTool.html b/api/symbols/RelinkingTool.html index 491302f92..9e2fcb75d 100644 --- a/api/symbols/RelinkingTool.html +++ b/api/symbols/RelinkingTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/ResizingTool.html b/api/symbols/ResizingTool.html index 444ade74c..12081b5e6 100644 --- a/api/symbols/ResizingTool.html +++ b/api/symbols/ResizingTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/RotatingTool.html b/api/symbols/RotatingTool.html index 4b0476fd9..9b45dbda7 100644 --- a/api/symbols/RotatingTool.html +++ b/api/symbols/RotatingTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/RowColumnDefinition.html b/api/symbols/RowColumnDefinition.html index 589d6947a..837a1c1e1 100644 --- a/api/symbols/RowColumnDefinition.html +++ b/api/symbols/RowColumnDefinition.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Set.html b/api/symbols/Set.html index 865604e1b..bca63ba0e 100644 --- a/api/symbols/Set.html +++ b/api/symbols/Set.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Shape.html b/api/symbols/Shape.html index 422ac8189..7bd2a4d09 100644 --- a/api/symbols/Shape.html +++ b/api/symbols/Shape.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Size.html b/api/symbols/Size.html index f4fca3d82..c1d652e29 100644 --- a/api/symbols/Size.html +++ b/api/symbols/Size.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Spot.html b/api/symbols/Spot.html index e1805068f..16f3e512b 100644 --- a/api/symbols/Spot.html +++ b/api/symbols/Spot.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/TextBlock.html b/api/symbols/TextBlock.html index f9f4872c0..3b669a8c6 100644 --- a/api/symbols/TextBlock.html +++ b/api/symbols/TextBlock.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/TextEditingTool.html b/api/symbols/TextEditingTool.html index fafbaa75a..965936cbe 100644 --- a/api/symbols/TextEditingTool.html +++ b/api/symbols/TextEditingTool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Tool.html b/api/symbols/Tool.html index 40536d092..6e178d39f 100644 --- a/api/symbols/Tool.html +++ b/api/symbols/Tool.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/ToolManager.html b/api/symbols/ToolManager.html index 1bc988880..5dcc988ff 100644 --- a/api/symbols/ToolManager.html +++ b/api/symbols/ToolManager.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/Transaction.html b/api/symbols/Transaction.html index 45a84d398..e3ce96fc3 100644 --- a/api/symbols/Transaction.html +++ b/api/symbols/Transaction.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/TreeEdge.html b/api/symbols/TreeEdge.html index acf4218aa..007be314b 100644 --- a/api/symbols/TreeEdge.html +++ b/api/symbols/TreeEdge.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/TreeLayout.html b/api/symbols/TreeLayout.html index fbea0bedc..4be742eb1 100644 --- a/api/symbols/TreeLayout.html +++ b/api/symbols/TreeLayout.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/TreeModel.html b/api/symbols/TreeModel.html index a98a2148b..0f2cf5f3a 100644 --- a/api/symbols/TreeModel.html +++ b/api/symbols/TreeModel.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/TreeVertex.html b/api/symbols/TreeVertex.html index df40d58ff..7497ea27f 100644 --- a/api/symbols/TreeVertex.html +++ b/api/symbols/TreeVertex.html @@ -1093,7 +1093,7 @@
diff --git a/api/symbols/UndoManager.html b/api/symbols/UndoManager.html index 2a9352df1..bda8b0795 100644 --- a/api/symbols/UndoManager.html +++ b/api/symbols/UndoManager.html @@ -1093,7 +1093,7 @@
diff --git a/doc/changelog.html b/doc/changelog.html index d613700c0..d69bbe3ff 100644 --- a/doc/changelog.html +++ b/doc/changelog.html @@ -80,6 +80,27 @@

GoJS Change Log

+ +

Changes for 1.6.16

+
    +
  • + Scrollbar fixes for RTL langauges. +
  • +
  • + TextBlock.textAlign values "start" and "end" now correctly interpret the alignment value when Diagrams divs have direction: RTL set in their CSS. +
  • +
  • + Fix for Table Panel when panel elements had Horizontal or Vertical stretch, but not enough room. + The stretch had affected sizing in the wrong direction. +
  • +
  • + Fixed line dash drawing (Use of Shape.strokeDashArray and Shape.strokeDashOffset), a regression from 1.6.13. +
  • +
  • + Fixed routing of links connecting with non-visible ports, a regression from 1.6.12. +
  • +
+

Changes for 1.6.15

  • diff --git a/extensions/DimensioningLink.js b/extensions/DimensioningLink.js index 56b22f765..ac1d854e4 100644 --- a/extensions/DimensioningLink.js +++ b/extensions/DimensioningLink.js @@ -21,6 +21,8 @@ */ function DimensioningLink() { go.Link.call(this); + this.isLayoutPositioned = false; + this.isTreeLink = false; this.routing = go.Link.Orthogonal; /** @type {number} */ this._direction = 0; diff --git a/extensions/TableLayout.js b/extensions/TableLayout.js index 631e04a38..490d998c3 100644 --- a/extensions/TableLayout.js +++ b/extensions/TableLayout.js @@ -317,10 +317,10 @@ TableLayout.prototype.measureTable = function(width, height, children, union, mi var realheight = !(isNaN(dsize.height)); var realsize = realwidth && realheight; if (!spanner && stretch !== go.GraphObject.None && !realsize) { - if (nosizeCols[j] === undefined) { + if (nosizeCols[j] === undefined && (stretch === go.GraphObject.Fill || stretch === go.GraphObject.Horizontal)) { nosizeCols[j] = -1; nosizeCols.count++; } - if (nosizeRows[i] === undefined) { + if (nosizeRows[i] === undefined && (stretch === go.GraphObject.Fill || stretch === go.GraphObject.Vertical)) { nosizeRows[i] = -1; nosizeRows.count++; } nosize.push(child); @@ -393,12 +393,12 @@ TableLayout.prototype.measureTable = function(width, height, children, union, mi var margw = marg.right + marg.left; var margh = marg.top + marg.bottom; - if (colHerald.actual === 0) { + if (colHerald.actual === 0 && nosizeCols[child.column] !== undefined) { nosizeCols[child.column] = Math.max(mb.width + margw, nosizeCols[child.column]); } else { nosizeCols[child.column] = null; // obey the column herald } - if (rowHerald.actual === 0) { + if (rowHerald.actual === 0 && nosizeRows[child.row]!== undefined) { nosizeRows[child.row] = Math.max(mb.height + margh, nosizeRows[child.row]); } else { nosizeRows[child.row] = null; // obey the row herald @@ -456,12 +456,14 @@ TableLayout.prototype.measureTable = function(width, height, children, union, mi // Which way do we care about fill: var stretch = this.getEffectiveTableStretch(child, rowHerald, colHerald); + // This used to set allowedSize height/width to Infinity, + // but we can only set it to the current row/column space, plus rowleft/colleft values, at most. switch (stretch) { case go.GraphObject.Horizontal: // H stretch means it can be as large as its wants vertically - allowedSize.height = Infinity; + allowedSize.height = Math.max(allowedSize.height, rowHerald.actual + rowleft); break; case go.GraphObject.Vertical: // vice versa - allowedSize.width = Infinity; + allowedSize.width = Math.max(allowedSize.width, colHerald.actual + colleft); break; } diff --git a/package.json b/package.json index 1772fbc61..99b47d7a2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gojs", - "version": "1.6.15", + "version": "1.6.16", "description": "Interactive diagrams, charts, and graphs, such as trees, flowcharts, orgcharts, UML, BPMN, or business diagrams", "keywords": [ "diagram", "chart", "tree", "flowchart", "orgchart", "uml", "bpmn", "graphics", "editor", "inspector", "drawing", "canvas", "shape", "svg", "hierarchy", "node", "link", "group", "vertex", "edge", "connection", "port", "label", "arrowhead", "family-tree", "decision-tree", "mindmap", "tournament", "treeview", "pipe-tree", "genogram", "ivr-tree", "parse-tree", "concept-map", "euler", "visualization", "entity-relationship", "er-diagram", "friend-wheel", "radial", "graph-distances", "graph-paths", "sankey", "pert", "gantt", "timeline", "monitor", "layer", "swimlane", "spreadsheet", "virtualization", "flow", "process", "state", "sequential-function", "grafcet", "sequence", "circuit", "record", "field", "table", "dataflow", "data-flow", "planogram", "seating", "pipes", "overview", "palette", "comment", "layout", "grid-layout", "tree-layout", "force-directed", "layered", "hierarchical", "circular", "fishbone", "ishikawa", "parallel", "serpentine", "treemap", "tree-map", "freehand", "polygon", "polyline", "bezier", "panel", "view", "model", "databinding", "data-binding", "binding", "transaction", "coordinates", "subgraph", "selection", "highlight", "tooltip", "context-menu", "tool", "command", "validation", "button", "template", "legend", "grid", "printing" ], "homepage": "https://gojs.net", diff --git a/release/go-debug.js b/release/go-debug.js index 2f51b3abb..a6337bed2 100644 --- a/release/go-debug.js +++ b/release/go-debug.js @@ -1,1469 +1,1471 @@ /* - * GoJS v1.6.15 JavaScript Library for HTML Diagrams + * GoJS v1.6.16 JavaScript Library for HTML Diagrams * Northwoods Software, https://www.nwoods.com/ * GoJS and Northwoods Software are registered trademarks of Northwoods Software Corporation. * Copyright (C) 1998-2016 by Northwoods Software Corporation. All Rights Reserved. - * THIS SOFTWARE IS LICENSED. THE LICENSE AGREEMENT IS AT: https://gojs.net/1.6.15/doc/license.html. + * THIS SOFTWARE IS LICENSED. THE LICENSE AGREEMENT IS AT: https://gojs.net/1.6.16/doc/license.html. */ (function(window) { var f,aa={};if(!window.document||void 0===window.document.createElement("canvas").getContext)throw window.console&&window.console.log("The HTML Canvas element is not supported in this browser,or this browser is in Compatibility mode."),Error("The HTML Canvas element is not supported in this browser,or this browser is in Compatibility mode.");if(!Object.defineProperty)throw Error("GoJS requires a newer version of JavaScript"); Function.prototype.bind||(Function.prototype.bind=function(a){function b(){return g.apply(a,e.concat(d.call(arguments)))}function c(){}var d=Array.prototype.slice,e=d.call(arguments,1),g=this;c.prototype=this.prototype;b.prototype=new c;return b}); (function(){for(var a=0,b=["ms","moz","webkit","o"],c=0;c=d.length)){var e=y.tb(b,d);if(null!==e&&"function"!==typeof e){if(b.hasOwnProperty(d)){var g=Object.getPrototypeOf(b);if(g&&g.Xv&&g.Xv[d])continue}else if(y.bx(b,d))continue;""===c&&(c=b+"\n");c+=' unknown property "'+d+'" has value: '+e+" at "+a+"\n"}}return c},Kw:function(a,b){if(null!==b&&void 0!==b&&"number"!==typeof b&&"string"!==typeof b&&"boolean"!==typeof b&&"function"!==typeof b)if(void 0!==y.nd(b)){if(!u.lw.contains(b))if(u.lw.add(b), -u.Lv.add(u.LD(a,b)),b instanceof J||b instanceof K||b instanceof na)for(var c=b.i;c.next();)u.Kw(a+"["+c.key+"]",c.value);else for(c in b){var d=y.tb(b,c);if(void 0!==d&&null!==d&&y.Ya(d)&&d!==b.Xv){if(b instanceof qa){if(d===b.Mj)continue}else if(b instanceof I){if("data"===c||d===b.he)continue;if("itemArray"===c||d===b.Ki)continue;if(b instanceof D&&d===b.hl)continue}else if(!(b instanceof C))if(b instanceof ra){if("archetypeGroupData"===c||d===b.hy)continue}else if(b instanceof ta){if("archetypeLinkData"=== -c||d===b.jy)continue;if("archetypeLabelNodeData"===c||d===b.iy)continue}else if(b instanceof va){if("archetypeNodeData"===c||d===b.Mk)continue}else if(b instanceof M){if("nodeDataArray"===c||d===b.wf)continue;if("linkDataArray"===c||d===b.vf||d===b.tm)continue;if(d===b.vc)continue;if(d===b.pg)continue}else if(b instanceof wa||b instanceof xa||b instanceof ya)continue;u.Kw(a+"."+c,d)}}}else if(Array.isArray(b))for(c=0;c=a.length?a.push(c):a.splice(b,0,c):y.k("Cannot insert an object into an HTMLCollection or NodeList: "+c+" at "+b)},ji:function(a,b){Array.isArray(a)?b>=a.length?a.pop():a.splice(b,1):y.k("Cannot remove an object from an HTMLCollection or NodeList at "+b)},Xx:[],O:function(){var a=y.Xx.pop();return void 0===a?new N:a},Tb:function(a,b){var c=y.Xx.pop();if(void 0===c)return new N(a,b);c.x=a;c.y=b;return c},A:function(a){y.Xx.push(a)}, -jB:[],Xl:function(){var a=y.jB.pop();return void 0===a?new Ea:a},pk:function(a){y.jB.push(a)},Yx:[],mg:function(){var a=y.Yx.pop();return void 0===a?new w:a},yk:function(a,b,c,d){var e=y.Yx.pop();if(void 0===e)return new w(a,b,c,d);e.x=a;e.y=b;e.width=c;e.height=d;return e},dc:function(a){y.Yx.push(a)},kB:[],Gh:function(){var a=y.kB.pop();return void 0===a?new Fa:a},jf:function(a){y.kB.push(a)},Zx:null,v:function(){var a=y.Zx;return null!==a?(y.Zx=null,a):new Ga},u:function(a){a.reset();y.Zx=a},iB:[], -rb:function(){var a=y.iB.pop();return void 0===a?[]:a},xa:function(a){a.length=0;y.iB.push(a)},Ih:Object.freeze([]),am:1,lc:function(a){a.__gohashid=y.am++},Ht:function(a){var b=a.__gohashid;void 0===b&&(b=y.am++,a.__gohashid=b);return b},nd:function(a){return a.__gohashid},ia:function(a,b){b.oy=a;aa[a]=b},Pa:function(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a},ki:function(a){a.xG=!0},defineProperty:function(a,b,c,d,e){y.g(a,"function","Util.defineProperty:classfunc"); -y.g(b,"object","Util.defineProperty:propobj");y.g(c,"function","Util.defineProperty:getter");y.g(d,"function","Util.defineProperty:setter");for(var g in b){b=b[g];c={get:c,set:d,enumerable:!0};if(void 0!==e)for(var h in e)c[h]=e[h];Object.defineProperty(a.prototype,g,c);e=Object.getOwnPropertyDescriptor(a.prototype,g);b&&e&&Object.defineProperty(a.prototype,b,e);break}},EJ:!1,w:function(a,b,c,d){y.g(a,"function","Util.defineReadOnlyProperty:classfunc");y.g(b,"object","Util.defineReadOnlyProperty:propobj"); -y.g(c,"function","Util.defineReadOnlyProperty:getter");for(var e in b){var g=b[e];b={get:c,set:function(a){y.k('The property "'+g+'" is read-only and cannot be set to '+a)},enumerable:!0};if(void 0!==d)for(var h in d)b[h]=d[h];Object.defineProperty(a.prototype,e,b);d=Object.getOwnPropertyDescriptor(a.prototype,e);g&&d&&Object.defineProperty(a.prototype,g,d);break}},be:function(a,b){for(var c in b)b[c]=!0;a.prototype.Xv=b},getTypeName:function(a){return void 0===a?"":"string"===typeof a?a:"function"=== -typeof a?y.kf(a):null===a?"*":""},kf:function(a){if("function"===typeof a){if(a.oy)return a.oy;if(a.name)return a.name;var b=a.toString(),c=b.indexOf("("),b=b.substring(9,c).trim();if(""!==b)return a.oy=b}else if("object"===typeof a&&a.constructor)return y.kf(a.constructor);return typeof a},s:function(a,b,c){y.g(a,"function","Util.defineEnumValue:classfunc");y.g(b,"string","Util.defineEnumValue:name");y.g(c,"number","Util.defineEnumValue:num");c=new Ba(a,b,c);Object.freeze(c);a[b]=c;var d=a.Eu;d instanceof -na||(d=new na("string",Ba),a.Eu=d);d.add(b,c);return c},tb:function(a,b){if(!a||!b)return null;var c=void 0;try{"function"===typeof b?c=b(a):"function"===typeof a.getAttribute?(c=a.getAttribute(b),null===c&&(c=void 0)):c=a[b]}catch(d){u&&y.trace("property get error: "+d.toString())}return c},Qa:function(a,b,c){if(a&&b)try{"function"===typeof b?b(a,c):"function"===typeof a.setAttribute?a.setAttribute(b,c):a[b]=c}catch(d){u&&y.trace("property set error: "+d.toString())}},pu:function(a,b){y.g(a,"object", -"Setting properties requires Objects as arguments");y.g(b,"object","Setting properties requires Objects as arguments");var c=a instanceof I,d=a instanceof C,e;for(e in b){""===e&&y.k("Setting properties requires non-empty property names");var g=a,h=e;if(c||d){var k=e.indexOf(".");if(0c;c++)b[c]=c;for(var d=0,e=0,c=0;256>c;c++)d=(d+b[c]+119)%256,e=b[c],b[c]=b[d],b[d]=e;for(var d=c=0,g="",h=0;hc;c++)b["0123456789abcdef".charAt(c>>4)+"0123456789abcdef".charAt(c&15)]=String.fromCharCode(c);a.length%2&&(a="0"+a); -for(var d=[],e=0,c=0;cd;d++)b[y.Gg("7ca11abfd7330390")](y.Gg(c[d-1]),10,15*d+0);b[y.Gg("7ca11abfd022028846")]=y.Gg("39f046ebb36e4b");for(d=1;5>d;d++)b[y.Gg("7ca11abfd7330390")](y.Gg(c[d- -1]),10,15*d+0);if(4!==c.length||"5"!==c[0][0]||"7"!==c[3][0])y.s=function(a,b){var c=new Ba(a,b,2);Object.freeze(c);a[b]=c;var d=a.Eu;d instanceof na||(d=new na("string",Ba),a.Eu=d);d.add(b,c);return c};return a}();function Ba(a,b,c){y.lc(this);this.tB=a;this.Ub=b;this.CG=c}y.ia("EnumValue",Ba);Ba.prototype.toString=function(){return y.kf(this.tB)+"."+this.Ub};y.w(Ba,{Ae:"classType"},function(){return this.tB});y.w(Ba,{name:"name"},function(){return this.Ub});y.w(Ba,{value:"value"},function(){return this.CG}); -var Ja;Ba.findName=Ja=function(a,b){if(void 0===b||null===b||""===b)return null;y.g(a,"function","findName:classfunc");y.g(b,"string","EnumValue.findName:name");var c=a.Eu;return c instanceof na?c.na(b):null};function za(){this.sB=[]}za.prototype.toString=function(){return this.sB.join("")};za.prototype.add=function(a){""!==a&&this.sB.push(a)};function ma(){} -function Ka(a){void 0===a&&(a=42);this.seed=a;this.Tx=48271;this.Du=2147483647;this.hB=this.Du/this.Tx;this.gG=this.Du%this.Tx;this.fG=1/this.Du;this.random()}Ka.prototype.random=function(){var a=this.seed%this.hB*this.Tx-this.seed/this.hB*this.gG;this.seed=0this.key)return!1;y.Ra(a)}var a=a.o,b=a.length,c=++this.Uc,d=this.Xh;if(null!==d)for(;cthis.key)return!1;y.Ra(a)}var b=--this.Uc;if(0<=b)return this.key=b,this.value=a.o[b],!0;this.Of();return!1};Ua.prototype.first=Ua.prototype.first=function(){var a=this.Bc;this.nb=a.H;var b=a.o;this.Uc=a=b.length-1;return 0<=a?(b=b[a],this.key=a,this.value=b):null}; -Ua.prototype.any=function(a){var b=this.Bc;b.Kj=null;var c=b.H,d=b.o,e=d.length;this.Uc=e;for(e-=1;0<=e;e--){if(a(d[e]))return!0;b.H!==c&&y.Ra(b)}return!1};Ua.prototype.all=function(a){var b=this.Bc;b.Kj=null;var c=b.H,d=b.o,e=d.length;this.Uc=e;for(e-=1;0<=e;e--){if(!a(d[e]))return!1;b.H!==c&&y.Ra(b)}return!0};Ua.prototype.each=function(a){var b=this.Bc;b.Kj=null;var c=b.H,d=b.o,e=d.length;this.Uc=e;for(e-=1;0<=e;e--)a(d[e]),b.H!==c&&y.Ra(b);return this}; -Ua.prototype.map=function(a){var b=this.Bc;b.Kj=null;var c=b.H,d=[],e=b.o,g=e.length;this.Uc=g;for(g-=1;0<=g;g--)d.push(a(e[g])),b.H!==c&&y.Ra(b);a=new J;a.o=d;a.Jc();return a.i};Ua.prototype.filter=function(a){var b=this.Bc;b.Kj=null;var c=b.H,d=[],e=b.o,g=e.length;this.Uc=g;for(g-=1;0<=g;g--){var h=e[g];a(h)&&d.push(h);b.H!==c&&y.Ra(b)}a=new J(b.ba);a.o=d;a.Jc();return a.i};Ua.prototype.concat=function(a){this.Bc.Kj=null;return new Sa(this,a.i)};y.w(Ua,{count:"count"},function(){return this.Bc.o.length}); -Ua.prototype.Of=function(){this.key=-1;this.value=null;this.nb=-1;this.Bc.Kj=this};Ua.prototype.toString=function(){return"ListIteratorBackwards("+this.Uc+"/"+this.Bc.count+")"}; -function J(a){y.lc(this);this.G=!1;this.o=[];this.H=0;this.Kj=this.ec=null;void 0===a||null===a?this.ba=null:"string"===typeof a?"object"===a||"string"===a||"number"===a||"boolean"===a||"function"===a?this.ba=a:y.ka(a,"the string 'object', 'number', 'string', 'boolean', or 'function'","List constructor: type"):"function"===typeof a?this.ba=a===Object?"object":a===String?"string":a===Number?"number":a===Boolean?"boolean":a===Function?"function":a:y.ka(a,"null, a primitive type name, or a class type", -"List constructor: type")}y.ia("List",J);J.prototype.Zg=function(a){null!==this.ba&&("string"===typeof this.ba?typeof a===this.ba&&null!==a||y.jc(a,this.ba):a instanceof this.ba||y.jc(a,this.ba))};J.prototype.Jc=function(){var a=this.H;a++;999999999a||a>=b.length)&&y.ka(a,"0 <= i < length",J,"elt:i");return b[a]}; -J.prototype.setElt=J.prototype.set=J.prototype.Sg=function(a,b){u&&(this.Zg(b),y.p(a,J,"setElt:i"));var c=this.o;(0>a||a>=c.length)&&y.ka(a,"0 <= i < length",J,"setElt:i");this.G&&y.oa(this,a);c[a]=b};J.prototype.first=J.prototype.first=function(){var a=this.o;return 0===a.length?null:a[0]};J.prototype.last=J.prototype.fe=function(){var a=this.o,b=a.length;return 0a&&y.ka(a,">= 0",J,"insertAt:i");this.G&&y.oa(this,a);var c=this.o;a>=c.length?c.push(b):c.splice(a,0,b);this.Jc();return!0};J.prototype.remove=J.prototype["delete"]=J.prototype.remove=function(a){if(null===a)return!1;u&&this.Zg(a);this.G&&y.oa(this,a);var b=this.o;a=b.indexOf(a);if(-1===a)return!1;a===b.length-1?b.pop():b.splice(a,1);this.Jc();return!0}; -J.prototype.removeAt=J.prototype.ed=function(a){u&&y.p(a,J,"removeAt:i");var b=this.o;(0>a||a>=b.length)&&y.ka(a,"0 <= i < length",J,"removeAt:i");this.G&&y.oa(this,a);a===b.length-1?b.pop():b.splice(a,1);this.Jc()}; -J.prototype.removeRange=J.prototype.removeRange=function(a,b){u&&(y.p(a,J,"removeRange:from"),y.p(b,J,"removeRange:to"));var c=this.o;(0>a||a>=c.length)&&y.ka(a,"0 <= from < length",J,"elt:from");(0>b||b>=c.length)&&y.ka(b,"0 <= to < length",J,"elt:to");this.G&&y.oa(this,a);var d=c.slice((b||a)+1||c.length);c.length=0>a?c.length+a:a;c.push.apply(c,d);this.Jc()};J.prototype.copy=function(){var a=new J(this.ba),b=this.o;0=g)return this;(0>b||b>=e-1)&&y.ka(b,"0 <= from < length",J,"sortRange:from");if(2===g)return c=d[b],e=d[b+1],0=e)d.sort(a);else for(g=d.slice(0,c),g.sort(a),a=0;a=e)for(g=d.slice(b), -g.sort(a),a=b;a=this.o.length)return Pa;var a=this.ec;return null!==a?(a.reset(),a):new Ta(this)}); -y.w(J,{nn:"iteratorBackwards"},function(){if(0>=this.o.length)return Pa;var a=this.Kj;return null!==a?(a.reset(),a):new Ua(this)});function Wa(a){this.Zh=a;this.reset()}y.be(Wa,{key:!0,value:!0});y.w(Wa,{i:"iterator"},function(){return this});Wa.prototype.reset=Wa.prototype.reset=function(){var a=this.Zh;a.ec=null;this.nb=a.H;this.lb=null}; -Wa.prototype.next=Wa.prototype.hasNext=Wa.prototype.next=function(){var a=this.Zh;if(a.H!==this.nb){if(null===this.key)return!1;y.Ra(a)}var b=this.lb,b=null===b?a.Ka:b.bb;if(null!==b)return this.lb=b,this.value=b.value,this.key=b.key,!0;this.Of();return!1};Wa.prototype.first=Wa.prototype.first=function(){var a=this.Zh;this.nb=a.H;a=a.Ka;if(null!==a){this.lb=a;var b=a.value;this.key=a.key;return this.value=b}return null}; -Wa.prototype.any=function(a){var b=this.Zh;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(a(d.value))return!0;b.H!==c&&y.Ra(b);d=d.bb}return!1};Wa.prototype.all=function(a){var b=this.Zh;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(!a(d.value))return!1;b.H!==c&&y.Ra(b);d=d.bb}return!0};Wa.prototype.each=function(a){var b=this.Zh;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;)a(d.value),b.H!==c&&y.Ra(b),d=d.bb;return this}; -Wa.prototype.map=function(a){var b=this.Zh;b.ec=null;for(var c=new J,d=b.H,e=b.Ka;null!==e;)c.add(a(e.value)),b.H!==d&&y.Ra(b),e=e.bb;return c.i};Wa.prototype.filter=function(a){var b=this.Zh;b.ec=null;for(var c=new J(b.ba),d=b.H,e=b.Ka;null!==e;){var g=e.value;a(g)&&c.add(g);b.H!==d&&y.Ra(b);e=e.bb}return c.i};Wa.prototype.concat=function(a){this.Zh.ec=null;return new Sa(this,a.i)};y.w(Wa,{count:"count"},function(){return this.Zh.rd}); -Wa.prototype.Of=function(){this.value=this.key=null;this.nb=-1;this.Zh.ec=this};Wa.prototype.toString=function(){return null!==this.lb?"SetIterator@"+this.lb.value:"SetIterator"}; -function K(a){y.lc(this);this.G=!1;void 0===a||null===a?this.ba=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.ba=a:y.ka(a,"the string 'object', 'number' or 'string'","Set constructor: type"):"function"===typeof a?this.ba=a===Object?"object":a===String?"string":a===Number?"number":a:y.ka(a,"null, a primitive type name, or a class type","Set constructor: type");this.sd={};this.rd=0;this.ec=null;this.H=0;this.Uh=this.Ka=null}y.ia("Set",K); -K.prototype.Zg=function(a){null!==this.ba&&("string"===typeof this.ba?typeof a===this.ba&&null!==a||y.jc(a,this.ba):a instanceof this.ba||y.jc(a,this.ba))};K.prototype.Jc=function(){var a=this.H;a++;999999999=this.rd)return Pa;var a=this.ec;return null!==a?(a.reset(),a):new Wa(this)});function $a(a){this.Na=a;this.reset()}y.be($a,{key:!0,value:!0});y.w($a,{i:"iterator"},function(){return this});$a.prototype.reset=$a.prototype.reset=function(){this.nb=this.Na.H;this.lb=null}; -$a.prototype.next=$a.prototype.hasNext=$a.prototype.next=function(){var a=this.Na;if(a.H!==this.nb){if(null===this.key)return!1;y.Ra(a)}var b=this.lb,b=null===b?a.Ka:b.bb;if(null!==b)return this.lb=b,this.value=this.key=a=b.key,!0;this.Of();return!1};$a.prototype.first=$a.prototype.first=function(){var a=this.Na;this.nb=a.H;a=a.Ka;return null!==a?(this.lb=a,this.value=this.key=a=a.key):null}; -$a.prototype.any=function(a){var b=this.Na,c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(a(d.key))return!0;b.H!==c&&y.Ra(b);d=d.bb}return!1};$a.prototype.all=function(a){var b=this.Na,c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(!a(d.key))return!1;b.H!==c&&y.Ra(b);d=d.bb}return!0};$a.prototype.each=function(a){var b=this.Na,c=b.H;this.lb=null;for(var d=b.Ka;null!==d;)a(d.key),b.H!==c&&y.Ra(b),d=d.bb;return this}; -$a.prototype.map=function(a){var b=this.Na,c=b.H;this.lb=null;for(var d=new J,e=b.Ka;null!==e;)d.add(a(e.key)),b.H!==c&&y.Ra(b),e=e.bb;return d.i};$a.prototype.filter=function(a){var b=this.Na,c=b.H;this.lb=null;for(var d=new J(b.af),e=b.Ka;null!==e;){var g=e.key;a(g)&&d.add(g);b.H!==c&&y.Ra(b);e=e.bb}return d.i};$a.prototype.concat=function(a){return new Sa(this,a.i)};y.w($a,{count:"count"},function(){return this.Na.rd});$a.prototype.Of=function(){this.value=this.key=null;this.nb=-1}; -$a.prototype.toString=function(){return null!==this.lb?"MapKeySetIterator@"+this.lb.value:"MapKeySetIterator"};function ab(a){y.lc(this);this.G=!0;this.Na=a}y.Pa(ab,K);ab.prototype.freeze=function(){return this};ab.prototype.Wa=function(){return this};ab.prototype.toString=function(){return"MapKeySet("+this.Na.toString()+")"};ab.prototype.add=ab.prototype.set=ab.prototype.add=function(){y.k("This Set is read-only: "+this.toString());return!1}; -ab.prototype.contains=ab.prototype.has=ab.prototype.contains=function(a){return this.Na.contains(a)};ab.prototype.remove=ab.prototype["delete"]=ab.prototype.remove=function(){y.k("This Set is read-only: "+this.toString());return!1};ab.prototype.clear=ab.prototype.clear=function(){y.k("This Set is read-only: "+this.toString())};ab.prototype.first=ab.prototype.first=function(){var a=this.Na.Ka;return null!==a?a.key:null}; +var u={aj:!1,Rz:!1,mE:!1,zH:!1,dF:!1,EE:!1,ut:null,enableBoundsInfo:function(a){u.aj=!0;a&&a.Tp()},disableBoundsInfo:function(a){u.aj=!1;a&&(ca(a.hd,!0),a.Tp())},jE:function(a,b){void 0===a&&(a=u.ut);void 0===b&&(b=a.El("").mb);var c=b.length,d=a.hd;d.fillStyle="rgba(255,255,0,.3)";for(var e=0;e=d.length)){var e=z.tb(b,d);if(null!==e&&"function"!==typeof e){if(b.hasOwnProperty(d)){var g=Object.getPrototypeOf(b);if(g&&g.Yv&&g.Yv[d])continue}else if(z.ex(b,d))continue;""===c&&(c=b+"\n");c+=' unknown property "'+d+'" has value: '+e+" at "+a+"\n"}}return c},Lw:function(a,b){if(null!==b&&void 0!==b&&"number"!==typeof b&&"string"!==typeof b&&"boolean"!==typeof b&&"function"!==typeof b)if(void 0!==z.nd(b)){if(!u.mw.contains(b))if(u.mw.add(b), +u.Mv.add(u.OD(a,b)),b instanceof J||b instanceof K||b instanceof na)for(var c=b.i;c.next();)u.Lw(a+"["+c.key+"]",c.value);else for(c in b){var d=z.tb(b,c);if(void 0!==d&&null!==d&&z.Ya(d)&&d!==b.Yv){if(b instanceof qa){if(d===b.Mj)continue}else if(b instanceof I){if("data"===c||d===b.fe)continue;if("itemArray"===c||d===b.Ii)continue;if(b instanceof D&&d===b.hl)continue}else if(!(b instanceof C))if(b instanceof ra){if("archetypeGroupData"===c||d===b.iy)continue}else if(b instanceof ta){if("archetypeLinkData"=== +c||d===b.ky)continue;if("archetypeLabelNodeData"===c||d===b.jy)continue}else if(b instanceof va){if("archetypeNodeData"===c||d===b.Mk)continue}else if(b instanceof M){if("nodeDataArray"===c||d===b.vf)continue;if("linkDataArray"===c||d===b.uf||d===b.sm)continue;if(d===b.vc)continue;if(d===b.og)continue}else if(b instanceof wa||b instanceof xa||b instanceof ya)continue;u.Lw(a+"."+c,d)}}}else if(Array.isArray(b))for(c=0;c=a.length?a.push(c):a.splice(b,0,c):z.k("Cannot insert an object into an HTMLCollection or NodeList: "+c+" at "+b)},hi:function(a,b){Array.isArray(a)?b>=a.length?a.pop():a.splice(b,1):z.k("Cannot remove an object from an HTMLCollection or NodeList at "+b)},Yx:[],O:function(){var a=z.Yx.pop();return void 0===a?new N:a},Tb:function(a,b){var c=z.Yx.pop();if(void 0===c)return new N(a,b);c.x=a;c.y=b;return c},A:function(a){z.Yx.push(a)}, +nB:[],Wl:function(){var a=z.nB.pop();return void 0===a?new Ea:a},pk:function(a){z.nB.push(a)},Zx:[],lg:function(){var a=z.Zx.pop();return void 0===a?new w:a},yk:function(a,b,c,d){var e=z.Zx.pop();if(void 0===e)return new w(a,b,c,d);e.x=a;e.y=b;e.width=c;e.height=d;return e},dc:function(a){z.Zx.push(a)},oB:[],Fh:function(){var a=z.oB.pop();return void 0===a?new Fa:a},hf:function(a){z.oB.push(a)},$x:null,v:function(){var a=z.$x;return null!==a?(z.$x=null,a):new Ga},u:function(a){a.reset();z.$x=a},mB:[], +rb:function(){var a=z.mB.pop();return void 0===a?[]:a},xa:function(a){a.length=0;z.mB.push(a)},wj:Object.freeze([]),$l:1,lc:function(a){a.__gohashid=z.$l++},It:function(a){var b=a.__gohashid;void 0===b&&(b=z.$l++,a.__gohashid=b);return b},nd:function(a){return a.__gohashid},ia:function(a,b){b.py=a;aa[a]=b},Qa:function(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a},ii:function(a){a.AG=!0},defineProperty:function(a,b,c,d,e){z.g(a,"function","Util.defineProperty:classfunc"); +z.g(b,"object","Util.defineProperty:propobj");z.g(c,"function","Util.defineProperty:getter");z.g(d,"function","Util.defineProperty:setter");for(var g in b){b=b[g];c={get:c,set:d,enumerable:!0};if(void 0!==e)for(var h in e)c[h]=e[h];Object.defineProperty(a.prototype,g,c);e=Object.getOwnPropertyDescriptor(a.prototype,g);b&&e&&Object.defineProperty(a.prototype,b,e);break}},GJ:!1,w:function(a,b,c,d){z.g(a,"function","Util.defineReadOnlyProperty:classfunc");z.g(b,"object","Util.defineReadOnlyProperty:propobj"); +z.g(c,"function","Util.defineReadOnlyProperty:getter");for(var e in b){var g=b[e];b={get:c,set:function(a){z.k('The property "'+g+'" is read-only and cannot be set to '+a)},enumerable:!0};if(void 0!==d)for(var h in d)b[h]=d[h];Object.defineProperty(a.prototype,e,b);d=Object.getOwnPropertyDescriptor(a.prototype,e);g&&d&&Object.defineProperty(a.prototype,g,d);break}},$d:function(a,b){for(var c in b)b[c]=!0;a.prototype.Yv=b},getTypeName:function(a){return void 0===a?"":"string"===typeof a?a:"function"=== +typeof a?z.jf(a):null===a?"*":""},jf:function(a){if("function"===typeof a){if(a.py)return a.py;if(a.name)return a.name;var b=a.toString(),c=b.indexOf("("),b=b.substring(9,c).trim();if(""!==b)return a.py=b}else if("object"===typeof a&&a.constructor)return z.jf(a.constructor);return typeof a},s:function(a,b,c){z.g(a,"function","Util.defineEnumValue:classfunc");z.g(b,"string","Util.defineEnumValue:name");z.g(c,"number","Util.defineEnumValue:num");c=new Ba(a,b,c);Object.freeze(c);a[b]=c;var d=a.Fu;d instanceof +na||(d=new na("string",Ba),a.Fu=d);d.add(b,c);return c},tb:function(a,b){if(!a||!b)return null;var c=void 0;try{"function"===typeof b?c=b(a):"function"===typeof a.getAttribute?(c=a.getAttribute(b),null===c&&(c=void 0)):c=a[b]}catch(d){u&&z.trace("property get error: "+d.toString())}return c},Ra:function(a,b,c){if(a&&b)try{"function"===typeof b?b(a,c):"function"===typeof a.setAttribute?a.setAttribute(b,c):a[b]=c}catch(d){u&&z.trace("property set error: "+d.toString())}},qu:function(a,b){z.g(a,"object", +"Setting properties requires Objects as arguments");z.g(b,"object","Setting properties requires Objects as arguments");var c=a instanceof I,d=a instanceof C,e;for(e in b){""===e&&z.k("Setting properties requires non-empty property names");var g=a,h=e;if(c||d){var k=e.indexOf(".");if(0c;c++)b[c]=c;for(var d=0,e=0,c=0;256>c;c++)d=(d+b[c]+119)%256,e=b[c],b[c]=b[d],b[d]=e;for(var d=c=0,g="",h=0;hc;c++)b["0123456789abcdef".charAt(c>>4)+"0123456789abcdef".charAt(c&15)]=String.fromCharCode(c);a.length%2&&(a="0"+a); +for(var d=[],e=0,c=0;cd;d++)b[z.Fg("7ca11abfd7330390")](z.Fg(c[d-1]),10,15*d+0);b[z.Fg("7ca11abfd022028846")]=z.Fg("39f046ebb36e4b");for(d=1;5>d;d++)b[z.Fg("7ca11abfd7330390")](z.Fg(c[d- +1]),10,15*d+0);if(4!==c.length||"5"!==c[0][0]||"7"!==c[3][0])z.s=function(a,b){var c=new Ba(a,b,2);Object.freeze(c);a[b]=c;var d=a.Fu;d instanceof na||(d=new na("string",Ba),a.Fu=d);d.add(b,c);return c};return a}();function Ba(a,b,c){z.lc(this);this.xB=a;this.Ub=b;this.FG=c}z.ia("EnumValue",Ba);Ba.prototype.toString=function(){return z.jf(this.xB)+"."+this.Ub};z.w(Ba,{ze:"classType"},function(){return this.xB});z.w(Ba,{name:"name"},function(){return this.Ub});z.w(Ba,{value:"value"},function(){return this.FG}); +var Ja;Ba.findName=Ja=function(a,b){if(void 0===b||null===b||""===b)return null;z.g(a,"function","findName:classfunc");z.g(b,"string","EnumValue.findName:name");var c=a.Fu;return c instanceof na?c.na(b):null};function za(){this.wB=[]}za.prototype.toString=function(){return this.wB.join("")};za.prototype.add=function(a){""!==a&&this.wB.push(a)};function ma(){} +function Ka(a){void 0===a&&(a=42);this.seed=a;this.Ux=48271;this.Eu=2147483647;this.lB=this.Eu/this.Ux;this.jG=this.Eu%this.Ux;this.iG=1/this.Eu;this.random()}Ka.prototype.random=function(){var a=this.seed%this.lB*this.Ux-this.seed/this.lB*this.jG;this.seed=0this.key)return!1;z.Sa(a)}var a=a.o,b=a.length,c=++this.Uc,d=this.Vh;if(null!==d)for(;cthis.key)return!1;z.Sa(a)}var b=--this.Uc;if(0<=b)return this.key=b,this.value=a.o[b],!0;this.Nf();return!1};Ua.prototype.first=Ua.prototype.first=function(){var a=this.Bc;this.nb=a.H;var b=a.o;this.Uc=a=b.length-1;return 0<=a?(b=b[a],this.key=a,this.value=b):null}; +Ua.prototype.any=function(a){var b=this.Bc;b.Kj=null;var c=b.H,d=b.o,e=d.length;this.Uc=e;for(e-=1;0<=e;e--){if(a(d[e]))return!0;b.H!==c&&z.Sa(b)}return!1};Ua.prototype.all=function(a){var b=this.Bc;b.Kj=null;var c=b.H,d=b.o,e=d.length;this.Uc=e;for(e-=1;0<=e;e--){if(!a(d[e]))return!1;b.H!==c&&z.Sa(b)}return!0};Ua.prototype.each=function(a){var b=this.Bc;b.Kj=null;var c=b.H,d=b.o,e=d.length;this.Uc=e;for(e-=1;0<=e;e--)a(d[e]),b.H!==c&&z.Sa(b);return this}; +Ua.prototype.map=function(a){var b=this.Bc;b.Kj=null;var c=b.H,d=[],e=b.o,g=e.length;this.Uc=g;for(g-=1;0<=g;g--)d.push(a(e[g])),b.H!==c&&z.Sa(b);a=new J;a.o=d;a.Jc();return a.i};Ua.prototype.filter=function(a){var b=this.Bc;b.Kj=null;var c=b.H,d=[],e=b.o,g=e.length;this.Uc=g;for(g-=1;0<=g;g--){var h=e[g];a(h)&&d.push(h);b.H!==c&&z.Sa(b)}a=new J(b.ba);a.o=d;a.Jc();return a.i};Ua.prototype.concat=function(a){this.Bc.Kj=null;return new Sa(this,a.i)};z.w(Ua,{count:"count"},function(){return this.Bc.o.length}); +Ua.prototype.Nf=function(){this.key=-1;this.value=null;this.nb=-1;this.Bc.Kj=this};Ua.prototype.toString=function(){return"ListIteratorBackwards("+this.Uc+"/"+this.Bc.count+")"}; +function J(a){z.lc(this);this.G=!1;this.o=[];this.H=0;this.Kj=this.ec=null;void 0===a||null===a?this.ba=null:"string"===typeof a?"object"===a||"string"===a||"number"===a||"boolean"===a||"function"===a?this.ba=a:z.ka(a,"the string 'object', 'number', 'string', 'boolean', or 'function'","List constructor: type"):"function"===typeof a?this.ba=a===Object?"object":a===String?"string":a===Number?"number":a===Boolean?"boolean":a===Function?"function":a:z.ka(a,"null, a primitive type name, or a class type", +"List constructor: type")}z.ia("List",J);J.prototype.Yg=function(a){null!==this.ba&&("string"===typeof this.ba?typeof a===this.ba&&null!==a||z.jc(a,this.ba):a instanceof this.ba||z.jc(a,this.ba))};J.prototype.Jc=function(){var a=this.H;a++;999999999a||a>=b.length)&&z.ka(a,"0 <= i < length",J,"elt:i");return b[a]}; +J.prototype.setElt=J.prototype.set=J.prototype.Rg=function(a,b){u&&(this.Yg(b),z.p(a,J,"setElt:i"));var c=this.o;(0>a||a>=c.length)&&z.ka(a,"0 <= i < length",J,"setElt:i");this.G&&z.oa(this,a);c[a]=b};J.prototype.first=J.prototype.first=function(){var a=this.o;return 0===a.length?null:a[0]};J.prototype.last=J.prototype.de=function(){var a=this.o,b=a.length;return 0a&&z.ka(a,">= 0",J,"insertAt:i");this.G&&z.oa(this,a);var c=this.o;a>=c.length?c.push(b):c.splice(a,0,b);this.Jc();return!0};J.prototype.remove=J.prototype["delete"]=J.prototype.remove=function(a){if(null===a)return!1;u&&this.Yg(a);this.G&&z.oa(this,a);var b=this.o;a=b.indexOf(a);if(-1===a)return!1;a===b.length-1?b.pop():b.splice(a,1);this.Jc();return!0}; +J.prototype.removeAt=J.prototype.ed=function(a){u&&z.p(a,J,"removeAt:i");var b=this.o;(0>a||a>=b.length)&&z.ka(a,"0 <= i < length",J,"removeAt:i");this.G&&z.oa(this,a);a===b.length-1?b.pop():b.splice(a,1);this.Jc()}; +J.prototype.removeRange=J.prototype.removeRange=function(a,b){u&&(z.p(a,J,"removeRange:from"),z.p(b,J,"removeRange:to"));var c=this.o;(0>a||a>=c.length)&&z.ka(a,"0 <= from < length",J,"elt:from");(0>b||b>=c.length)&&z.ka(b,"0 <= to < length",J,"elt:to");this.G&&z.oa(this,a);var d=c.slice((b||a)+1||c.length);c.length=0>a?c.length+a:a;c.push.apply(c,d);this.Jc()};J.prototype.copy=function(){var a=new J(this.ba),b=this.o;0=g)return this;(0>b||b>=e-1)&&z.ka(b,"0 <= from < length",J,"sortRange:from");if(2===g)return c=d[b],e=d[b+1],0=e)d.sort(a);else for(g=d.slice(0,c),g.sort(a),a=0;a=e)for(g=d.slice(b), +g.sort(a),a=b;a=this.o.length)return Pa;var a=this.ec;return null!==a?(a.reset(),a):new Ta(this)}); +z.w(J,{nn:"iteratorBackwards"},function(){if(0>=this.o.length)return Pa;var a=this.Kj;return null!==a?(a.reset(),a):new Ua(this)});function Xa(a){this.Xh=a;this.reset()}z.$d(Xa,{key:!0,value:!0});z.w(Xa,{i:"iterator"},function(){return this});Xa.prototype.reset=Xa.prototype.reset=function(){var a=this.Xh;a.ec=null;this.nb=a.H;this.lb=null}; +Xa.prototype.next=Xa.prototype.hasNext=Xa.prototype.next=function(){var a=this.Xh;if(a.H!==this.nb){if(null===this.key)return!1;z.Sa(a)}var b=this.lb,b=null===b?a.Ka:b.bb;if(null!==b)return this.lb=b,this.value=b.value,this.key=b.key,!0;this.Nf();return!1};Xa.prototype.first=Xa.prototype.first=function(){var a=this.Xh;this.nb=a.H;a=a.Ka;if(null!==a){this.lb=a;var b=a.value;this.key=a.key;return this.value=b}return null}; +Xa.prototype.any=function(a){var b=this.Xh;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(a(d.value))return!0;b.H!==c&&z.Sa(b);d=d.bb}return!1};Xa.prototype.all=function(a){var b=this.Xh;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(!a(d.value))return!1;b.H!==c&&z.Sa(b);d=d.bb}return!0};Xa.prototype.each=function(a){var b=this.Xh;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;)a(d.value),b.H!==c&&z.Sa(b),d=d.bb;return this}; +Xa.prototype.map=function(a){var b=this.Xh;b.ec=null;for(var c=new J,d=b.H,e=b.Ka;null!==e;)c.add(a(e.value)),b.H!==d&&z.Sa(b),e=e.bb;return c.i};Xa.prototype.filter=function(a){var b=this.Xh;b.ec=null;for(var c=new J(b.ba),d=b.H,e=b.Ka;null!==e;){var g=e.value;a(g)&&c.add(g);b.H!==d&&z.Sa(b);e=e.bb}return c.i};Xa.prototype.concat=function(a){this.Xh.ec=null;return new Sa(this,a.i)};z.w(Xa,{count:"count"},function(){return this.Xh.rd}); +Xa.prototype.Nf=function(){this.value=this.key=null;this.nb=-1;this.Xh.ec=this};Xa.prototype.toString=function(){return null!==this.lb?"SetIterator@"+this.lb.value:"SetIterator"}; +function K(a){z.lc(this);this.G=!1;void 0===a||null===a?this.ba=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.ba=a:z.ka(a,"the string 'object', 'number' or 'string'","Set constructor: type"):"function"===typeof a?this.ba=a===Object?"object":a===String?"string":a===Number?"number":a:z.ka(a,"null, a primitive type name, or a class type","Set constructor: type");this.sd={};this.rd=0;this.ec=null;this.H=0;this.Sh=this.Ka=null}z.ia("Set",K); +K.prototype.Yg=function(a){null!==this.ba&&("string"===typeof this.ba?typeof a===this.ba&&null!==a||z.jc(a,this.ba):a instanceof this.ba||z.jc(a,this.ba))};K.prototype.Jc=function(){var a=this.H;a++;999999999=this.rd)return Pa;var a=this.ec;return null!==a?(a.reset(),a):new Xa(this)});function $a(a){this.Na=a;this.reset()}z.$d($a,{key:!0,value:!0});z.w($a,{i:"iterator"},function(){return this});$a.prototype.reset=$a.prototype.reset=function(){this.nb=this.Na.H;this.lb=null}; +$a.prototype.next=$a.prototype.hasNext=$a.prototype.next=function(){var a=this.Na;if(a.H!==this.nb){if(null===this.key)return!1;z.Sa(a)}var b=this.lb,b=null===b?a.Ka:b.bb;if(null!==b)return this.lb=b,this.value=this.key=a=b.key,!0;this.Nf();return!1};$a.prototype.first=$a.prototype.first=function(){var a=this.Na;this.nb=a.H;a=a.Ka;return null!==a?(this.lb=a,this.value=this.key=a=a.key):null}; +$a.prototype.any=function(a){var b=this.Na,c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(a(d.key))return!0;b.H!==c&&z.Sa(b);d=d.bb}return!1};$a.prototype.all=function(a){var b=this.Na,c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(!a(d.key))return!1;b.H!==c&&z.Sa(b);d=d.bb}return!0};$a.prototype.each=function(a){var b=this.Na,c=b.H;this.lb=null;for(var d=b.Ka;null!==d;)a(d.key),b.H!==c&&z.Sa(b),d=d.bb;return this}; +$a.prototype.map=function(a){var b=this.Na,c=b.H;this.lb=null;for(var d=new J,e=b.Ka;null!==e;)d.add(a(e.key)),b.H!==c&&z.Sa(b),e=e.bb;return d.i};$a.prototype.filter=function(a){var b=this.Na,c=b.H;this.lb=null;for(var d=new J(b.$e),e=b.Ka;null!==e;){var g=e.key;a(g)&&d.add(g);b.H!==c&&z.Sa(b);e=e.bb}return d.i};$a.prototype.concat=function(a){return new Sa(this,a.i)};z.w($a,{count:"count"},function(){return this.Na.rd});$a.prototype.Nf=function(){this.value=this.key=null;this.nb=-1}; +$a.prototype.toString=function(){return null!==this.lb?"MapKeySetIterator@"+this.lb.value:"MapKeySetIterator"};function ab(a){z.lc(this);this.G=!0;this.Na=a}z.Qa(ab,K);ab.prototype.freeze=function(){return this};ab.prototype.Wa=function(){return this};ab.prototype.toString=function(){return"MapKeySet("+this.Na.toString()+")"};ab.prototype.add=ab.prototype.set=ab.prototype.add=function(){z.k("This Set is read-only: "+this.toString());return!1}; +ab.prototype.contains=ab.prototype.has=ab.prototype.contains=function(a){return this.Na.contains(a)};ab.prototype.remove=ab.prototype["delete"]=ab.prototype.remove=function(){z.k("This Set is read-only: "+this.toString());return!1};ab.prototype.clear=ab.prototype.clear=function(){z.k("This Set is read-only: "+this.toString())};ab.prototype.first=ab.prototype.first=function(){var a=this.Na.Ka;return null!==a?a.key:null}; ab.prototype.any=function(a){for(var b=this.Na.Ka;null!==b;){if(a(b.key))return!0;b=b.bb}return!1};ab.prototype.all=function(a){for(var b=this.Na.Ka;null!==b;){if(!a(b.key))return!1;b=b.bb}return!0};ab.prototype.each=function(a){for(var b=this.Na.Ka;null!==b;)a(b.key),b=b.bb;return this};ab.prototype.map=function(a){for(var b=new K,c=this.Na.Ka;null!==c;)b.add(a(c.key)),c=c.bb;return b}; -ab.prototype.filter=function(a){for(var b=new K(this.Na.af),c=this.Na.Ka;null!==c;){var d=c.key;a(d)&&b.add(d);c=c.bb}return b};ab.prototype.concat=function(a){return this.QF().$c(a)};ab.prototype.copy=function(){return new ab(this.Na)};ab.prototype.toSet=ab.prototype.QF=function(){var a=new K(this.Na.af),b=this.Na.sd,c;for(c in b)a.add(b[c].key);return a};ab.prototype.toArray=ab.prototype.kc=function(){var a=this.Na.sd,b=Array(this.Na.rd),c=0,d;for(d in a)b[c]=a[d].key,c++;return b}; -ab.prototype.toList=function(){var a=new J(this.ba),b=this.Na.sd,c;for(c in b)a.add(b[c].key);return a};y.w(ab,{count:"count"},function(){return this.Na.rd});y.w(ab,{size:"size"},function(){return this.Na.rd});y.w(ab,{i:"iterator"},function(){return 0>=this.Na.rd?Pa:new $a(this.Na)});function bb(a){this.Na=a;this.reset()}y.be(bb,{key:!0,value:!0});y.w(bb,{i:"iterator"},function(){return this});bb.prototype.reset=bb.prototype.reset=function(){var a=this.Na;a.Lj=null;this.nb=a.H;this.lb=null}; -bb.prototype.next=bb.prototype.hasNext=bb.prototype.next=function(){var a=this.Na;if(a.H!==this.nb){if(null===this.key)return!1;y.Ra(a)}var b=this.lb,b=null===b?a.Ka:b.bb;if(null!==b)return this.lb=b,this.value=b.value,this.key=b.key,!0;this.Of();return!1};bb.prototype.first=bb.prototype.first=function(){var a=this.Na;this.nb=a.H;a=a.Ka;if(null!==a){this.lb=a;var b=a.value;this.key=a.key;return this.value=b}return null}; -bb.prototype.any=function(a){var b=this.Na;b.Lj=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(a(d.value))return!0;b.H!==c&&y.Ra(b);d=d.bb}return!1};bb.prototype.all=function(a){var b=this.Na;b.Lj=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(!a(d.value))return!1;b.H!==c&&y.Ra(b);d=d.bb}return!0};bb.prototype.each=function(a){var b=this.Na;b.Lj=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;)a(d.value),b.H!==c&&y.Ra(b),d=d.bb;return this}; -bb.prototype.map=function(a){var b=this.Na;b.Lj=null;var c=b.H;this.lb=null;for(var d=new J,e=b.Ka;null!==e;)d.add(a(e.value)),b.H!==c&&y.Ra(b),e=e.bb;return d.i};bb.prototype.filter=function(a){var b=this.Na;b.Lj=null;var c=b.H;this.lb=null;for(var d=new J(b.af),e=b.Ka;null!==e;){var g=e.value;a(g)&&d.add(g);b.H!==c&&y.Ra(b);e=e.bb}return d.i};bb.prototype.concat=function(a){this.Na.Lj=null;return new Sa(this,a.i)};y.w(bb,{count:"count"},function(){return this.Na.rd}); -bb.prototype.Of=function(){this.value=this.key=null;this.nb=-1;this.Na.Lj=this};bb.prototype.toString=function(){return null!==this.lb?"MapValueSetIterator@"+this.lb.value:"MapValueSetIterator"};function Za(a,b){this.key=a;this.value=b;this.Jo=this.bb=null}y.be(Za,{key:!0,value:!0});Za.prototype.toString=function(){return"{"+this.key+":"+this.value+"}"};function cb(a){this.Na=a;this.reset()}y.be(cb,{key:!0,value:!0});y.w(cb,{i:"iterator"},function(){return this}); -cb.prototype.reset=cb.prototype.reset=function(){var a=this.Na;a.ec=null;this.nb=a.H;this.lb=null};cb.prototype.next=cb.prototype.hasNext=cb.prototype.next=function(){var a=this.Na;if(a.H!==this.nb){if(null===this.key)return!1;y.Ra(a)}var b=this.lb,b=null===b?a.Ka:b.bb;if(null!==b)return this.lb=b,this.key=b.key,this.value=b.value,!0;this.Of();return!1}; -cb.prototype.first=cb.prototype.first=function(){var a=this.Na;this.nb=a.H;a=a.Ka;return null!==a?(this.lb=a,this.key=a.key,this.value=a.value,a):null};cb.prototype.any=function(a){var b=this.Na;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(a(d))return!0;b.H!==c&&y.Ra(b);d=d.bb}return!1};cb.prototype.all=function(a){var b=this.Na;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(!a(d))return!1;b.H!==c&&y.Ra(b);d=d.bb}return!0}; -cb.prototype.each=function(a){var b=this.Na;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;)a(d),b.H!==c&&y.Ra(b),d=d.bb;return this};cb.prototype.map=function(a){var b=this.Na;b.ec=null;var c=b.H;this.lb=null;for(var d=new J,e=b.Ka;null!==e;)d.add(a(e)),b.H!==c&&y.Ra(b),e=e.bb;return d.i};cb.prototype.filter=function(a){var b=this.Na;b.ec=null;var c=b.H;this.lb=null;for(var d=new J,e=b.Ka;null!==e;)a(e)&&d.add(e),b.H!==c&&y.Ra(b),e=e.bb;return d.i}; -cb.prototype.concat=function(a){this.Na.ec=null;return new Sa(this,a.i)};y.w(cb,{count:"count"},function(){return this.Na.rd});cb.prototype.Of=function(){this.value=this.key=null;this.nb=-1;this.Na.ec=this};cb.prototype.toString=function(){return null!==this.lb?"MapIterator@"+this.lb:"MapIterator"}; -function na(a,b){y.lc(this);this.G=!1;void 0===a||null===a?this.af=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.af=a:y.ka(a,"the string 'object', 'number' or 'string'","Map constructor: keytype"):"function"===typeof a?this.af=a===Object?"object":a===String?"string":a===Number?"number":a:y.ka(a,"null, a primitive type name, or a class type","Map constructor: keytype");void 0===b||null===b?this.hi=null:"string"===typeof b?"object"===b||"string"===b||"boolean"===b||"number"=== -b||"function"===b?this.hi=b:y.ka(b,"the string 'object', 'number', 'string', 'boolean', or 'function'","Map constructor: valtype"):"function"===typeof b?this.hi=b===Object?"object":b===String?"string":b===Number?"number":b===Boolean?"boolean":b===Function?"function":b:y.ka(b,"null, a primitive type name, or a class type","Map constructor: valtype");this.sd={};this.rd=0;this.Lj=this.ec=null;this.H=0;this.Uh=this.Ka=null}y.ia("Map",na); -function fb(a,b){null!==a.af&&("string"===typeof a.af?typeof b===a.af&&null!==b||y.jc(b,a.af):b instanceof a.af||y.jc(b,a.af))}na.prototype.Jc=function(){var a=this.H;a++;999999999=this.count)return Pa;var a=this.ec;return null!==a?(a.reset(),a):new cb(this)});y.w(na,{PE:"iteratorKeys"},function(){return 0>=this.count?Pa:new $a(this)});y.w(na,{QE:"iteratorValues"},function(){if(0>=this.count)return Pa;var a=this.Lj;return null!==a?(a.reset(),a):new bb(this)});function N(a,b){void 0===a?this.K=this.J=0:"number"===typeof a&&"number"===typeof b?(this.J=a,this.K=b):y.k("Invalid arguments to Point constructor: "+a+", "+b);this.G=!1} -y.ia("Point",N);y.ki(N);y.be(N,{x:!0,y:!0});N.prototype.assign=function(a){this.J=a.J;this.K=a.K};N.prototype.setTo=N.prototype.n=function(a,b){u&&(y.g(a,"number",N,"setTo:x"),y.g(b,"number",N,"setTo:y"));this.J=a;this.K=b;return this};N.prototype.set=N.prototype.set=function(a){u&&y.l(a,N,N,"set:p");this.Oa();this.J=a.J;this.K=a.K;return this};N.prototype.copy=function(){var a=new N;a.J=this.J;a.K=this.K;return a};f=N.prototype;f.La=function(){this.G=!0;Object.freeze(this);return this}; -f.U=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.G=!0;return this};f.Wa=function(){Object.isFrozen(this)&&y.k("cannot thaw constant: "+this);this.G=!1;return this};f.Oa=function(a){if(this.G){var b="The Point is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);y.k(b)}}; +ab.prototype.filter=function(a){for(var b=new K(this.Na.$e),c=this.Na.Ka;null!==c;){var d=c.key;a(d)&&b.add(d);c=c.bb}return b};ab.prototype.concat=function(a){return this.TF().$c(a)};ab.prototype.copy=function(){return new ab(this.Na)};ab.prototype.toSet=ab.prototype.TF=function(){var a=new K(this.Na.$e),b=this.Na.sd,c;for(c in b)a.add(b[c].key);return a};ab.prototype.toArray=ab.prototype.kc=function(){var a=this.Na.sd,b=Array(this.Na.rd),c=0,d;for(d in a)b[c]=a[d].key,c++;return b}; +ab.prototype.toList=function(){var a=new J(this.ba),b=this.Na.sd,c;for(c in b)a.add(b[c].key);return a};z.w(ab,{count:"count"},function(){return this.Na.rd});z.w(ab,{size:"size"},function(){return this.Na.rd});z.w(ab,{i:"iterator"},function(){return 0>=this.Na.rd?Pa:new $a(this.Na)});function bb(a){this.Na=a;this.reset()}z.$d(bb,{key:!0,value:!0});z.w(bb,{i:"iterator"},function(){return this});bb.prototype.reset=bb.prototype.reset=function(){var a=this.Na;a.Lj=null;this.nb=a.H;this.lb=null}; +bb.prototype.next=bb.prototype.hasNext=bb.prototype.next=function(){var a=this.Na;if(a.H!==this.nb){if(null===this.key)return!1;z.Sa(a)}var b=this.lb,b=null===b?a.Ka:b.bb;if(null!==b)return this.lb=b,this.value=b.value,this.key=b.key,!0;this.Nf();return!1};bb.prototype.first=bb.prototype.first=function(){var a=this.Na;this.nb=a.H;a=a.Ka;if(null!==a){this.lb=a;var b=a.value;this.key=a.key;return this.value=b}return null}; +bb.prototype.any=function(a){var b=this.Na;b.Lj=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(a(d.value))return!0;b.H!==c&&z.Sa(b);d=d.bb}return!1};bb.prototype.all=function(a){var b=this.Na;b.Lj=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(!a(d.value))return!1;b.H!==c&&z.Sa(b);d=d.bb}return!0};bb.prototype.each=function(a){var b=this.Na;b.Lj=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;)a(d.value),b.H!==c&&z.Sa(b),d=d.bb;return this}; +bb.prototype.map=function(a){var b=this.Na;b.Lj=null;var c=b.H;this.lb=null;for(var d=new J,e=b.Ka;null!==e;)d.add(a(e.value)),b.H!==c&&z.Sa(b),e=e.bb;return d.i};bb.prototype.filter=function(a){var b=this.Na;b.Lj=null;var c=b.H;this.lb=null;for(var d=new J(b.$e),e=b.Ka;null!==e;){var g=e.value;a(g)&&d.add(g);b.H!==c&&z.Sa(b);e=e.bb}return d.i};bb.prototype.concat=function(a){this.Na.Lj=null;return new Sa(this,a.i)};z.w(bb,{count:"count"},function(){return this.Na.rd}); +bb.prototype.Nf=function(){this.value=this.key=null;this.nb=-1;this.Na.Lj=this};bb.prototype.toString=function(){return null!==this.lb?"MapValueSetIterator@"+this.lb.value:"MapValueSetIterator"};function Za(a,b){this.key=a;this.value=b;this.Jo=this.bb=null}z.$d(Za,{key:!0,value:!0});Za.prototype.toString=function(){return"{"+this.key+":"+this.value+"}"};function cb(a){this.Na=a;this.reset()}z.$d(cb,{key:!0,value:!0});z.w(cb,{i:"iterator"},function(){return this}); +cb.prototype.reset=cb.prototype.reset=function(){var a=this.Na;a.ec=null;this.nb=a.H;this.lb=null};cb.prototype.next=cb.prototype.hasNext=cb.prototype.next=function(){var a=this.Na;if(a.H!==this.nb){if(null===this.key)return!1;z.Sa(a)}var b=this.lb,b=null===b?a.Ka:b.bb;if(null!==b)return this.lb=b,this.key=b.key,this.value=b.value,!0;this.Nf();return!1}; +cb.prototype.first=cb.prototype.first=function(){var a=this.Na;this.nb=a.H;a=a.Ka;return null!==a?(this.lb=a,this.key=a.key,this.value=a.value,a):null};cb.prototype.any=function(a){var b=this.Na;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(a(d))return!0;b.H!==c&&z.Sa(b);d=d.bb}return!1};cb.prototype.all=function(a){var b=this.Na;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;){if(!a(d))return!1;b.H!==c&&z.Sa(b);d=d.bb}return!0}; +cb.prototype.each=function(a){var b=this.Na;b.ec=null;var c=b.H;this.lb=null;for(var d=b.Ka;null!==d;)a(d),b.H!==c&&z.Sa(b),d=d.bb;return this};cb.prototype.map=function(a){var b=this.Na;b.ec=null;var c=b.H;this.lb=null;for(var d=new J,e=b.Ka;null!==e;)d.add(a(e)),b.H!==c&&z.Sa(b),e=e.bb;return d.i};cb.prototype.filter=function(a){var b=this.Na;b.ec=null;var c=b.H;this.lb=null;for(var d=new J,e=b.Ka;null!==e;)a(e)&&d.add(e),b.H!==c&&z.Sa(b),e=e.bb;return d.i}; +cb.prototype.concat=function(a){this.Na.ec=null;return new Sa(this,a.i)};z.w(cb,{count:"count"},function(){return this.Na.rd});cb.prototype.Nf=function(){this.value=this.key=null;this.nb=-1;this.Na.ec=this};cb.prototype.toString=function(){return null!==this.lb?"MapIterator@"+this.lb:"MapIterator"}; +function na(a,b){z.lc(this);this.G=!1;void 0===a||null===a?this.$e=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.$e=a:z.ka(a,"the string 'object', 'number' or 'string'","Map constructor: keytype"):"function"===typeof a?this.$e=a===Object?"object":a===String?"string":a===Number?"number":a:z.ka(a,"null, a primitive type name, or a class type","Map constructor: keytype");void 0===b||null===b?this.fi=null:"string"===typeof b?"object"===b||"string"===b||"boolean"===b||"number"=== +b||"function"===b?this.fi=b:z.ka(b,"the string 'object', 'number', 'string', 'boolean', or 'function'","Map constructor: valtype"):"function"===typeof b?this.fi=b===Object?"object":b===String?"string":b===Number?"number":b===Boolean?"boolean":b===Function?"function":b:z.ka(b,"null, a primitive type name, or a class type","Map constructor: valtype");this.sd={};this.rd=0;this.Lj=this.ec=null;this.H=0;this.Sh=this.Ka=null}z.ia("Map",na); +function fb(a,b){null!==a.$e&&("string"===typeof a.$e?typeof b===a.$e&&null!==b||z.jc(b,a.$e):b instanceof a.$e||z.jc(b,a.$e))}na.prototype.Jc=function(){var a=this.H;a++;999999999=this.count)return Pa;var a=this.ec;return null!==a?(a.reset(),a):new cb(this)});z.w(na,{SE:"iteratorKeys"},function(){return 0>=this.count?Pa:new $a(this)});z.w(na,{TE:"iteratorValues"},function(){if(0>=this.count)return Pa;var a=this.Lj;return null!==a?(a.reset(),a):new bb(this)});function N(a,b){void 0===a?this.K=this.J=0:"number"===typeof a&&"number"===typeof b?(this.J=a,this.K=b):z.k("Invalid arguments to Point constructor: "+a+", "+b);this.G=!1} +z.ia("Point",N);z.ii(N);z.$d(N,{x:!0,y:!0});N.prototype.assign=function(a){this.J=a.J;this.K=a.K};N.prototype.setTo=N.prototype.n=function(a,b){u&&(z.g(a,"number",N,"setTo:x"),z.g(b,"number",N,"setTo:y"));this.J=a;this.K=b;return this};N.prototype.set=N.prototype.set=function(a){u&&z.l(a,N,N,"set:p");this.Pa();this.J=a.J;this.K=a.K;return this};N.prototype.copy=function(){var a=new N;a.J=this.J;a.K=this.K;return a};f=N.prototype;f.La=function(){this.G=!0;Object.freeze(this);return this}; +f.V=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.G=!0;return this};f.Wa=function(){Object.isFrozen(this)&&z.k("cannot thaw constant: "+this);this.G=!1;return this};f.Pa=function(a){if(this.G){var b="The Point is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);z.k(b)}}; N.parse=function(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=0;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));for(var e=0;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));return new N(c,e)}return new N};N.stringify=function(a){return a instanceof N?a.x.toString()+" "+a.y.toString():a.toString()};N.prototype.toString=function(){return"Point("+this.x+","+this.y+")"};N.prototype.equals=N.prototype.N=function(a){return a instanceof N?this.J===a.x&&this.K===a.y:!1}; -N.prototype.equalTo=N.prototype.Uw=function(a,b){return this.J===a&&this.K===b};N.prototype.equalsApprox=N.prototype.Mc=function(a){return gb(this.J,a.x)&&gb(this.K,a.y)};N.prototype.add=N.prototype.add=function(a){u&&y.l(a,N,N,"add:p");this.Oa();this.J+=a.x;this.K+=a.y;return this};N.prototype.subtract=N.prototype.wu=function(a){u&&y.l(a,N,N,"subtract:p");this.Oa();this.J-=a.x;this.K-=a.y;return this}; -N.prototype.offset=N.prototype.offset=function(a,b){u&&(y.p(a,N,"offset:dx"),y.p(b,N,"offset:dy"));this.Oa();this.J+=a;this.K+=b;return this};N.prototype.rotate=N.prototype.rotate=function(a){u&&y.p(a,N,"rotate:angle");this.Oa();if(0===a)return this;var b=this.J,c=this.K;if(0===b&&0===c)return this;var d=0,e=0;360<=a?a-=360:0>a&&(a+=360);90===a?(d=0,e=1):180===a?(d=-1,e=0):270===a?(d=0,e=-1):(a=a*Math.PI/180,d=Math.cos(a),e=Math.sin(a));this.J=d*b-e*c;this.K=e*b+d*c;return this}; -N.prototype.scale=N.prototype.scale=function(a,b){u&&(y.p(a,N,"scale:sx"),y.p(b,N,"scale:sy"));this.J*=a;this.K*=b;return this};N.prototype.distanceSquaredPoint=N.prototype.Bf=function(a){u&&y.l(a,N,N,"distanceSquaredPoint:p");var b=a.x-this.J;a=a.y-this.K;return b*b+a*a};N.prototype.distanceSquared=N.prototype.mp=function(a,b){u&&(y.p(a,N,"distanceSquared:px"),y.p(b,N,"distanceSquared:py"));var c=a-this.J,d=b-this.K;return c*c+d*d}; -N.prototype.normalize=N.prototype.normalize=function(){this.Oa();var a=this.J,b=this.K,c=Math.sqrt(a*a+b*b);0b?270:0;if(0===b)return 0a?c=0>b?c+180:180-c:0>b&&(c=360-c);return c}N.prototype.projectOntoLineSegment=function(a,b,c,d){u&&(y.p(a,N,"projectOntoLineSegment:px"),y.p(b,N,"projectOntoLineSegment:py"),y.p(c,N,"projectOntoLineSegment:qx"),y.p(d,N,"projectOntoLineSegment:qy"));kb(a,b,c,d,this.J,this.K,this);return this}; -N.prototype.projectOntoLineSegmentPoint=function(a,b){u&&(y.l(a,N,N,"projectOntoLineSegmentPoint:p"),y.l(b,N,N,"projectOntoLineSegmentPoint:q"));kb(a.x,a.y,b.x,b.y,this.J,this.K,this);return this};N.prototype.snapToGrid=function(a,b,c,d){u&&(y.p(a,N,"snapToGrid:originx"),y.p(b,N,"snapToGrid:originy"),y.p(c,N,"snapToGrid:cellwidth"),y.p(d,N,"snapToGrid:cellheight"));qb(this.J,this.K,a,b,c,d,this);return this}; -N.prototype.snapToGridPoint=function(a,b){u&&(y.l(a,N,N,"snapToGridPoint:p"),y.l(b,Ea,N,"snapToGridPoint:q"));qb(this.J,this.K,a.x,a.y,b.width,b.height,this);return this};N.prototype.setRectSpot=N.prototype.qu=function(a,b){u&&(y.l(a,w,N,"setRectSpot:r"),y.l(b,Q,N,"setRectSpot:spot"));this.Oa();this.J=a.x+b.x*a.width+b.offsetX;this.K=a.y+b.y*a.height+b.offsetY;return this}; -N.prototype.setSpot=N.prototype.su=function(a,b,c,d,e){u&&(y.p(a,N,"setSpot:x"),y.p(b,N,"setSpot:y"),y.p(c,N,"setSpot:w"),y.p(d,N,"setSpot:h"),(0>c||0>d)&&y.k("Point.setSpot:Width and height cannot be negative"),y.l(e,Q,N,"setSpot:spot"));this.Oa();this.J=a+e.x*c+e.offsetX;this.K=b+e.y*d+e.offsetY;return this};N.prototype.transform=function(a){u&&y.l(a,Fa,N,"transform:t");a.Cb(this);return this};function vb(a,b){u&&y.l(b,Fa,N,"transformInverted:t");b.mi(a);return a}var wb; -N.distanceLineSegmentSquared=wb=function(a,b,c,d,e,g){u&&(y.p(a,N,"distanceLineSegmentSquared:px"),y.p(b,N,"distanceLineSegmentSquared:py"),y.p(c,N,"distanceLineSegmentSquared:ax"),y.p(d,N,"distanceLineSegmentSquared:ay"),y.p(e,N,"distanceLineSegmentSquared:bx"),y.p(g,N,"distanceLineSegmentSquared:by"));var h=e-c,k=g-d,l=h*h+k*k;c-=a;d-=b;var m=-c*h-d*k;if(0>=m||m>=l)return h=e-a,k=g-b,Math.min(c*c+d*d,h*h+k*k);a=h*d-k*c;return a*a/l};var xb; -N.distanceSquared=xb=function(a,b,c,d){u&&(y.p(a,N,"distanceSquared:px"),y.p(b,N,"distanceSquared:py"),y.p(c,N,"distanceSquared:qx"),y.p(d,N,"distanceSquared:qy"));a=c-a;b=d-b;return a*a+b*b};var yb; -N.direction=yb=function(a,b,c,d){u&&(y.p(a,N,"direction:px"),y.p(b,N,"direction:py"),y.p(c,N,"direction:qx"),y.p(d,N,"direction:qy"));a=c-a;b=d-b;if(0===a)return 0b?270:0;if(0===b)return 0a?d=0>b?d+180:180-d:0>b&&(d=360-d);return d};y.defineProperty(N,{x:"x"},function(){return this.J},function(a){this.Oa(a);u&&y.g(a,"number",N,"x");this.J=a}); -y.defineProperty(N,{y:"y"},function(){return this.K},function(a){this.Oa(a);u&&y.g(a,"number",N,"y");this.K=a});N.prototype.isReal=N.prototype.F=function(){return isFinite(this.x)&&isFinite(this.y)};function Ea(a,b){void 0===a?this.Da=this.Ea=0:"number"===typeof a&&(0<=a||isNaN(a))&&"number"===typeof b&&(0<=b||isNaN(b))?(this.Ea=a,this.Da=b):y.k("Invalid arguments to Size constructor: "+a+", "+b);this.G=!1}y.ia("Size",Ea);y.ki(Ea);y.be(Ea,{width:!0,height:!0}); -Ea.prototype.assign=function(a){this.Ea=a.Ea;this.Da=a.Da};Ea.prototype.setTo=Ea.prototype.n=function(a,b){u&&(y.g(a,"number",Ea,"setTo:w"),y.g(b,"number",Ea,"setTo:h"),0>a&&y.ka(a,">= 0",Ea,"setTo:w"),0>b&&y.ka(b,">= 0",Ea,"setTo:h"));this.Ea=a;this.Da=b;return this};Ea.prototype.set=Ea.prototype.set=function(a){u&&y.l(a,Ea,Ea,"set:s");this.Oa();this.Ea=a.Ea;this.Da=a.Da;return this};Ea.prototype.copy=function(){var a=new Ea;a.Ea=this.Ea;a.Da=this.Da;return a};f=Ea.prototype; -f.La=function(){this.G=!0;Object.freeze(this);return this};f.U=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.G=!0;return this};f.Wa=function(){Object.isFrozen(this)&&y.k("cannot thaw constant: "+this);this.G=!1;return this};f.Oa=function(a){if(this.G){var b="The Size is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);y.k(b)}}; +N.prototype.equalTo=N.prototype.Vw=function(a,b){return this.J===a&&this.K===b};N.prototype.equalsApprox=N.prototype.Mc=function(a){return gb(this.J,a.x)&&gb(this.K,a.y)};N.prototype.add=N.prototype.add=function(a){u&&z.l(a,N,N,"add:p");this.Pa();this.J+=a.x;this.K+=a.y;return this};N.prototype.subtract=N.prototype.xu=function(a){u&&z.l(a,N,N,"subtract:p");this.Pa();this.J-=a.x;this.K-=a.y;return this}; +N.prototype.offset=N.prototype.offset=function(a,b){u&&(z.p(a,N,"offset:dx"),z.p(b,N,"offset:dy"));this.Pa();this.J+=a;this.K+=b;return this};N.prototype.rotate=N.prototype.rotate=function(a){u&&z.p(a,N,"rotate:angle");this.Pa();if(0===a)return this;var b=this.J,c=this.K;if(0===b&&0===c)return this;var d=0,e=0;360<=a?a-=360:0>a&&(a+=360);90===a?(d=0,e=1):180===a?(d=-1,e=0):270===a?(d=0,e=-1):(a=a*Math.PI/180,d=Math.cos(a),e=Math.sin(a));this.J=d*b-e*c;this.K=e*b+d*c;return this}; +N.prototype.scale=N.prototype.scale=function(a,b){u&&(z.p(a,N,"scale:sx"),z.p(b,N,"scale:sy"));this.J*=a;this.K*=b;return this};N.prototype.distanceSquaredPoint=N.prototype.Af=function(a){u&&z.l(a,N,N,"distanceSquaredPoint:p");var b=a.x-this.J;a=a.y-this.K;return b*b+a*a};N.prototype.distanceSquared=N.prototype.mp=function(a,b){u&&(z.p(a,N,"distanceSquared:px"),z.p(b,N,"distanceSquared:py"));var c=a-this.J,d=b-this.K;return c*c+d*d}; +N.prototype.normalize=N.prototype.normalize=function(){this.Pa();var a=this.J,b=this.K,c=Math.sqrt(a*a+b*b);0b?270:0;if(0===b)return 0a?c=0>b?c+180:180-c:0>b&&(c=360-c);return c}N.prototype.projectOntoLineSegment=function(a,b,c,d){u&&(z.p(a,N,"projectOntoLineSegment:px"),z.p(b,N,"projectOntoLineSegment:py"),z.p(c,N,"projectOntoLineSegment:qx"),z.p(d,N,"projectOntoLineSegment:qy"));kb(a,b,c,d,this.J,this.K,this);return this}; +N.prototype.projectOntoLineSegmentPoint=function(a,b){u&&(z.l(a,N,N,"projectOntoLineSegmentPoint:p"),z.l(b,N,N,"projectOntoLineSegmentPoint:q"));kb(a.x,a.y,b.x,b.y,this.J,this.K,this);return this};N.prototype.snapToGrid=function(a,b,c,d){u&&(z.p(a,N,"snapToGrid:originx"),z.p(b,N,"snapToGrid:originy"),z.p(c,N,"snapToGrid:cellwidth"),z.p(d,N,"snapToGrid:cellheight"));lb(this.J,this.K,a,b,c,d,this);return this}; +N.prototype.snapToGridPoint=function(a,b){u&&(z.l(a,N,N,"snapToGridPoint:p"),z.l(b,Ea,N,"snapToGridPoint:q"));lb(this.J,this.K,a.x,a.y,b.width,b.height,this);return this};N.prototype.setRectSpot=N.prototype.ru=function(a,b){u&&(z.l(a,w,N,"setRectSpot:r"),z.l(b,Q,N,"setRectSpot:spot"));this.Pa();this.J=a.x+b.x*a.width+b.offsetX;this.K=a.y+b.y*a.height+b.offsetY;return this}; +N.prototype.setSpot=N.prototype.tu=function(a,b,c,d,e){u&&(z.p(a,N,"setSpot:x"),z.p(b,N,"setSpot:y"),z.p(c,N,"setSpot:w"),z.p(d,N,"setSpot:h"),(0>c||0>d)&&z.k("Point.setSpot:Width and height cannot be negative"),z.l(e,Q,N,"setSpot:spot"));this.Pa();this.J=a+e.x*c+e.offsetX;this.K=b+e.y*d+e.offsetY;return this};N.prototype.transform=function(a){u&&z.l(a,Fa,N,"transform:t");a.Cb(this);return this};function vb(a,b){u&&z.l(b,Fa,N,"transformInverted:t");b.ki(a);return a}var wb; +N.distanceLineSegmentSquared=wb=function(a,b,c,d,e,g){u&&(z.p(a,N,"distanceLineSegmentSquared:px"),z.p(b,N,"distanceLineSegmentSquared:py"),z.p(c,N,"distanceLineSegmentSquared:ax"),z.p(d,N,"distanceLineSegmentSquared:ay"),z.p(e,N,"distanceLineSegmentSquared:bx"),z.p(g,N,"distanceLineSegmentSquared:by"));var h=e-c,k=g-d,l=h*h+k*k;c-=a;d-=b;var m=-c*h-d*k;if(0>=m||m>=l)return h=e-a,k=g-b,Math.min(c*c+d*d,h*h+k*k);a=h*d-k*c;return a*a/l};var xb; +N.distanceSquared=xb=function(a,b,c,d){u&&(z.p(a,N,"distanceSquared:px"),z.p(b,N,"distanceSquared:py"),z.p(c,N,"distanceSquared:qx"),z.p(d,N,"distanceSquared:qy"));a=c-a;b=d-b;return a*a+b*b};var yb; +N.direction=yb=function(a,b,c,d){u&&(z.p(a,N,"direction:px"),z.p(b,N,"direction:py"),z.p(c,N,"direction:qx"),z.p(d,N,"direction:qy"));a=c-a;b=d-b;if(0===a)return 0b?270:0;if(0===b)return 0a?d=0>b?d+180:180-d:0>b&&(d=360-d);return d};z.defineProperty(N,{x:"x"},function(){return this.J},function(a){this.Pa(a);u&&z.g(a,"number",N,"x");this.J=a}); +z.defineProperty(N,{y:"y"},function(){return this.K},function(a){this.Pa(a);u&&z.g(a,"number",N,"y");this.K=a});N.prototype.isReal=N.prototype.F=function(){return isFinite(this.x)&&isFinite(this.y)};function Ea(a,b){void 0===a?this.Ea=this.Fa=0:"number"===typeof a&&(0<=a||isNaN(a))&&"number"===typeof b&&(0<=b||isNaN(b))?(this.Fa=a,this.Ea=b):z.k("Invalid arguments to Size constructor: "+a+", "+b);this.G=!1}z.ia("Size",Ea);z.ii(Ea);z.$d(Ea,{width:!0,height:!0}); +Ea.prototype.assign=function(a){this.Fa=a.Fa;this.Ea=a.Ea};Ea.prototype.setTo=Ea.prototype.n=function(a,b){u&&(z.g(a,"number",Ea,"setTo:w"),z.g(b,"number",Ea,"setTo:h"),0>a&&z.ka(a,">= 0",Ea,"setTo:w"),0>b&&z.ka(b,">= 0",Ea,"setTo:h"));this.Fa=a;this.Ea=b;return this};Ea.prototype.set=Ea.prototype.set=function(a){u&&z.l(a,Ea,Ea,"set:s");this.Pa();this.Fa=a.Fa;this.Ea=a.Ea;return this};Ea.prototype.copy=function(){var a=new Ea;a.Fa=this.Fa;a.Ea=this.Ea;return a};f=Ea.prototype; +f.La=function(){this.G=!0;Object.freeze(this);return this};f.V=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.G=!0;return this};f.Wa=function(){Object.isFrozen(this)&&z.k("cannot thaw constant: "+this);this.G=!1;return this};f.Pa=function(a){if(this.G){var b="The Size is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);z.k(b)}}; Ea.parse=function(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=0;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));for(var e=0;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));return new Ea(c,e)}return new Ea};Ea.stringify=function(a){return a instanceof Ea?a.width.toString()+" "+a.height.toString():a.toString()};Ea.prototype.toString=function(){return"Size("+this.width+","+this.height+")"}; -Ea.prototype.equals=Ea.prototype.N=function(a){return a instanceof Ea?this.Ea===a.width&&this.Da===a.height:!1};Ea.prototype.equalTo=Ea.prototype.Uw=function(a,b){return this.Ea===a&&this.Da===b};Ea.prototype.equalsApprox=Ea.prototype.Mc=function(a){return gb(this.Ea,a.width)&&gb(this.Da,a.height)};y.defineProperty(Ea,{width:"width"},function(){return this.Ea},function(a){this.Oa(a);u&&y.g(a,"number",Ea,"width");0>a&&y.ka(a,">= 0",Ea,"width");this.Ea=a}); -y.defineProperty(Ea,{height:"height"},function(){return this.Da},function(a){this.Oa(a);u&&y.g(a,"number",Ea,"height");0>a&&y.ka(a,">= 0",Ea,"height");this.Da=a});Ea.prototype.isReal=Ea.prototype.F=function(){return isFinite(this.width)&&isFinite(this.height)}; -function w(a,b,c,d){void 0===a?this.Da=this.Ea=this.K=this.J=0:a instanceof N?b instanceof N?(this.J=Math.min(a.J,b.J),this.K=Math.min(a.K,b.K),this.Ea=Math.abs(a.J-b.J),this.Da=Math.abs(a.K-b.K)):b instanceof Ea?(this.J=a.J,this.K=a.K,this.Ea=b.Ea,this.Da=b.Da):y.k("Incorrect arguments supplied to Rect constructor"):"number"===typeof a&&"number"===typeof b&&"number"===typeof c&&(0<=c||isNaN(c))&&"number"===typeof d&&(0<=d||isNaN(d))?(this.J=a,this.K=b,this.Ea=c,this.Da=d):y.k("Invalid arguments to Rect constructor: "+ -a+", "+b+", "+c+", "+d);this.G=!1}y.ia("Rect",w);y.ki(w);y.be(w,{x:!0,y:!0,width:!0,height:!0});w.prototype.assign=function(a){this.J=a.J;this.K=a.K;this.Ea=a.Ea;this.Da=a.Da};function zb(a,b,c){a.Ea=b;a.Da=c}w.prototype.setTo=w.prototype.n=function(a,b,c,d){u&&(y.g(a,"number",w,"setTo:x"),y.g(b,"number",w,"setTo:y"),y.g(c,"number",w,"setTo:w"),y.g(d,"number",w,"setTo:h"),0>c&&y.ka(c,">= 0",w,"setTo:w"),0>d&&y.ka(d,">= 0",w,"setTo:h"));this.J=a;this.K=b;this.Ea=c;this.Da=d;return this}; -w.prototype.set=w.prototype.set=function(a){u&&y.l(a,w,w,"set:r");this.Oa();this.J=a.J;this.K=a.K;this.Ea=a.Ea;this.Da=a.Da;return this};w.prototype.setPoint=w.prototype.Lf=function(a){u&&y.l(a,N,w,"setPoint:p");this.Oa();this.J=a.J;this.K=a.K;return this};w.prototype.setSize=function(a){u&&y.l(a,Ea,w,"setSize:s");this.Oa();this.Ea=a.Ea;this.Da=a.Da;return this};w.prototype.copy=function(){var a=new w;a.J=this.J;a.K=this.K;a.Ea=this.Ea;a.Da=this.Da;return a};f=w.prototype; -f.La=function(){this.G=!0;Object.freeze(this);return this};f.U=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.G=!0;return this};f.Wa=function(){Object.isFrozen(this)&&y.k("cannot thaw constant: "+this);this.G=!1;return this};f.Oa=function(a){if(this.G){var b="The Rect is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);y.k(b)}}; +Ea.prototype.equals=Ea.prototype.N=function(a){return a instanceof Ea?this.Fa===a.width&&this.Ea===a.height:!1};Ea.prototype.equalTo=Ea.prototype.Vw=function(a,b){return this.Fa===a&&this.Ea===b};Ea.prototype.equalsApprox=Ea.prototype.Mc=function(a){return gb(this.Fa,a.width)&&gb(this.Ea,a.height)};z.defineProperty(Ea,{width:"width"},function(){return this.Fa},function(a){this.Pa(a);u&&z.g(a,"number",Ea,"width");0>a&&z.ka(a,">= 0",Ea,"width");this.Fa=a}); +z.defineProperty(Ea,{height:"height"},function(){return this.Ea},function(a){this.Pa(a);u&&z.g(a,"number",Ea,"height");0>a&&z.ka(a,">= 0",Ea,"height");this.Ea=a});Ea.prototype.isReal=Ea.prototype.F=function(){return isFinite(this.width)&&isFinite(this.height)}; +function w(a,b,c,d){void 0===a?this.Ea=this.Fa=this.K=this.J=0:a instanceof N?b instanceof N?(this.J=Math.min(a.J,b.J),this.K=Math.min(a.K,b.K),this.Fa=Math.abs(a.J-b.J),this.Ea=Math.abs(a.K-b.K)):b instanceof Ea?(this.J=a.J,this.K=a.K,this.Fa=b.Fa,this.Ea=b.Ea):z.k("Incorrect arguments supplied to Rect constructor"):"number"===typeof a&&"number"===typeof b&&"number"===typeof c&&(0<=c||isNaN(c))&&"number"===typeof d&&(0<=d||isNaN(d))?(this.J=a,this.K=b,this.Fa=c,this.Ea=d):z.k("Invalid arguments to Rect constructor: "+ +a+", "+b+", "+c+", "+d);this.G=!1}z.ia("Rect",w);z.ii(w);z.$d(w,{x:!0,y:!0,width:!0,height:!0});w.prototype.assign=function(a){this.J=a.J;this.K=a.K;this.Fa=a.Fa;this.Ea=a.Ea};function zb(a,b,c){a.Fa=b;a.Ea=c}w.prototype.setTo=w.prototype.n=function(a,b,c,d){u&&(z.g(a,"number",w,"setTo:x"),z.g(b,"number",w,"setTo:y"),z.g(c,"number",w,"setTo:w"),z.g(d,"number",w,"setTo:h"),0>c&&z.ka(c,">= 0",w,"setTo:w"),0>d&&z.ka(d,">= 0",w,"setTo:h"));this.J=a;this.K=b;this.Fa=c;this.Ea=d;return this}; +w.prototype.set=w.prototype.set=function(a){u&&z.l(a,w,w,"set:r");this.Pa();this.J=a.J;this.K=a.K;this.Fa=a.Fa;this.Ea=a.Ea;return this};w.prototype.setPoint=w.prototype.Kf=function(a){u&&z.l(a,N,w,"setPoint:p");this.Pa();this.J=a.J;this.K=a.K;return this};w.prototype.setSize=function(a){u&&z.l(a,Ea,w,"setSize:s");this.Pa();this.Fa=a.Fa;this.Ea=a.Ea;return this};w.prototype.copy=function(){var a=new w;a.J=this.J;a.K=this.K;a.Fa=this.Fa;a.Ea=this.Ea;return a};f=w.prototype; +f.La=function(){this.G=!0;Object.freeze(this);return this};f.V=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.G=!0;return this};f.Wa=function(){Object.isFrozen(this)&&z.k("cannot thaw constant: "+this);this.G=!1;return this};f.Pa=function(a){if(this.G){var b="The Rect is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);z.k(b)}}; w.parse=function(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=0;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));for(var e=0;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));for(var g=0;""===a[b];)b++;(d=a[b++])&&(g=parseFloat(d));for(var h=0;""===a[b];)b++;(d=a[b++])&&(h=parseFloat(d));return new w(c,e,g,h)}return new w};w.stringify=function(a){return a instanceof w?a.x.toString()+" "+a.y.toString()+" "+a.width.toString()+" "+a.height.toString():a.toString()}; -w.prototype.toString=function(){return"Rect("+this.x+","+this.y+","+this.width+","+this.height+")"};w.prototype.equals=w.prototype.N=function(a){return a instanceof w?this.J===a.x&&this.K===a.y&&this.Ea===a.width&&this.Da===a.height:!1};w.prototype.equalTo=w.prototype.Uw=function(a,b,c,d){return this.J===a&&this.K===b&&this.Ea===c&&this.Da===d};w.prototype.equalsApprox=w.prototype.Mc=function(a){return gb(this.J,a.x)&&gb(this.K,a.y)&&gb(this.Ea,a.width)&&gb(this.Da,a.height)}; -w.prototype.containsPoint=w.prototype.Ma=function(a){u&&y.l(a,N,w,"containsPoint:p");return this.J<=a.x&&this.J+this.Ea>=a.x&&this.K<=a.y&&this.K+this.Da>=a.y};w.prototype.containsRect=w.prototype.mk=function(a){u&&y.l(a,w,w,"containsRect:r");return this.J<=a.x&&a.x+a.width<=this.J+this.Ea&&this.K<=a.y&&a.y+a.height<=this.K+this.Da}; -w.prototype.contains=w.prototype.contains=function(a,b,c,d){u?(y.p(a,w,"contains:x"),y.p(b,w,"contains:y"),void 0===c?c=0:y.p(c,w,"contains:w"),void 0===d?d=0:y.p(d,w,"contains:h"),(0>c||0>d)&&y.k("Rect.contains:Width and height cannot be negative")):(void 0===c&&(c=0),void 0===d&&(d=0));return this.J<=a&&a+c<=this.J+this.Ea&&this.K<=b&&b+d<=this.K+this.Da};w.prototype.reset=function(){this.Oa();this.Da=this.Ea=this.K=this.J=0}; -w.prototype.offset=w.prototype.offset=function(a,b){u&&(y.p(a,w,"offset:dx"),y.p(b,w,"offset:dy"));this.Oa();this.J+=a;this.K+=b;return this};w.prototype.inflate=w.prototype.cg=function(a,b){u&&(y.p(a,w,"inflate:w"),y.p(b,w,"inflate:h"));return Ab(this,b,a,b,a)};w.prototype.addMargin=w.prototype.Bw=function(a){u&&y.l(a,Eb,w,"addMargin:m");return Ab(this,a.top,a.right,a.bottom,a.left)}; -w.prototype.subtractMargin=w.prototype.pJ=function(a){u&&y.l(a,Eb,w,"subtractMargin:m");return Ab(this,-a.top,-a.right,-a.bottom,-a.left)};w.prototype.grow=function(a,b,c,d){u&&(y.p(a,w,"grow:t"),y.p(b,w,"grow:r"),y.p(c,w,"grow:b"),y.p(d,w,"grow:l"));return Ab(this,a,b,c,d)};function Ab(a,b,c,d,e){a.Oa();var g=a.Ea;c+e<=-g?(a.J+=g/2,a.Ea=0):(a.J-=e,a.Ea+=c+e);c=a.Da;b+d<=-c?(a.K+=c/2,a.Da=0):(a.K-=b,a.Da+=b+d);return a} -w.prototype.intersectRect=function(a){u&&y.l(a,w,w,"intersectRect:r");return Fb(this,a.x,a.y,a.width,a.height)};w.prototype.intersect=function(a,b,c,d){u&&(y.p(a,w,"intersect:x"),y.p(b,w,"intersect:y"),y.p(c,w,"intersect:w"),y.p(d,w,"intersect:h"),(0>c||0>d)&&y.k("Rect.intersect:Width and height cannot be negative"));return Fb(this,a,b,c,d)}; -function Fb(a,b,c,d,e){a.Oa();var g=Math.max(a.J,b),h=Math.max(a.K,c);b=Math.min(a.J+a.Ea,b+d);c=Math.min(a.K+a.Da,c+e);a.J=g;a.K=h;a.Ea=Math.max(0,b-g);a.Da=Math.max(0,c-h);return a}w.prototype.intersectsRect=w.prototype.Jg=function(a){u&&y.l(a,w,w,"intersectsRect:r");return this.DE(a.x,a.y,a.width,a.height)}; -w.prototype.intersects=w.prototype.DE=function(a,b,c,d){u&&(y.p(a,w,"intersects:x"),y.p(b,w,"intersects:y"),y.p(a,w,"intersects:w"),y.p(b,w,"intersects:h"),(0>c||0>d)&&y.k("Rect.intersects:Width and height cannot be negative"));var e=this.Ea,g=this.J;if(Infinity!==e&&Infinity!==c&&(e+=g,c+=a,isNaN(c)||isNaN(e)||g>c||a>e))return!1;a=this.Da;c=this.K;return Infinity!==a&&Infinity!==d&&(a+=c,d+=b,isNaN(d)||isNaN(a)||c>d||b>a)?!1:!0}; -function Ib(a,b){var c=a.Ea,d=b.width+10+10,e=a.J,g=b.x-10;if(e>d+g||g>c+e)return!1;c=a.Da;d=b.height+10+10;e=a.K;g=b.y-10;return e>d+g||g>c+e?!1:!0}w.prototype.unionPoint=w.prototype.vj=function(a){u&&y.l(a,N,w,"unionPoint:p");return Jb(this,a.x,a.y,0,0)};w.prototype.unionRect=w.prototype.si=function(a){u&&y.l(a,w,w,"unionRect:r");return Jb(this,a.J,a.K,a.Ea,a.Da)}; -w.prototype.union=w.prototype.ZF=function(a,b,c,d){this.Oa();u?(y.p(a,w,"union:x"),y.p(b,w,"union:y"),void 0===c?c=0:y.p(c,w,"union:w"),void 0===d?d=0:y.p(d,w,"union:h"),(0>c||0>d)&&y.k("Rect.union:Width and height cannot be negative")):(void 0===c&&(c=0),void 0===d&&(d=0));return Jb(this,a,b,c,d)};function Jb(a,b,c,d,e){var g=Math.min(a.J,b),h=Math.min(a.K,c);b=Math.max(a.J+a.Ea,b+d);c=Math.max(a.K+a.Da,c+e);a.J=g;a.K=h;a.Ea=b-g;a.Da=c-h;return a} -w.prototype.setSpot=w.prototype.su=function(a,b,c){u&&(y.p(a,w,"setSpot:x"),y.p(b,w,"setSpot:y"),y.l(c,Q,w,"setSpot:spot"));this.Oa();this.J=a-c.offsetX-c.x*this.Ea;this.K=b-c.offsetY-c.y*this.Da;return this};var Kb; -w.contains=Kb=function(a,b,c,d,e,g,h,k){u?(y.p(a,w,"contains:rx"),y.p(b,w,"contains:ry"),y.p(c,w,"contains:rw"),y.p(d,w,"contains:rh"),y.p(e,w,"contains:x"),y.p(g,w,"contains:y"),void 0===h?h=0:y.p(h,w,"contains:w"),void 0===k?k=0:y.p(k,w,"contains:h"),(0>c||0>d||0>h||0>k)&&y.k("Rect.contains:Width and height cannot be negative")):(void 0===h&&(h=0),void 0===k&&(k=0));return a<=e&&e+h<=a+c&&b<=g&&g+k<=b+d}; -w.intersects=function(a,b,c,d,e,g,h,k){u&&(y.p(a,w,"intersects:rx"),y.p(b,w,"intersects:ry"),y.p(c,w,"intersects:rw"),y.p(d,w,"intersects:rh"),y.p(e,w,"intersects:x"),y.p(g,w,"intersects:y"),y.p(h,w,"intersects:w"),y.p(k,w,"intersects:h"),(0>c||0>d||0>h||0>k)&&y.k("Rect.intersects:Width and height cannot be negative"));c+=a;h+=e;if(a>h||e>c)return!1;a=d+b;k+=g;return b>k||g>a?!1:!0};y.defineProperty(w,{x:"x"},function(){return this.J},function(a){this.Oa(a);u&&y.g(a,"number",w,"x");this.J=a}); -y.defineProperty(w,{y:"y"},function(){return this.K},function(a){this.Oa(a);u&&y.g(a,"number",w,"y");this.K=a});y.defineProperty(w,{width:"width"},function(){return this.Ea},function(a){this.Oa(a);u&&y.g(a,"number",w,"width");0>a&&y.ka(a,">= 0",w,"width");this.Ea=a});y.defineProperty(w,{height:"height"},function(){return this.Da},function(a){this.Oa(a);u&&y.g(a,"number",w,"height");0>a&&y.ka(a,">= 0",w,"height");this.Da=a}); -y.defineProperty(w,{left:"left"},function(){return this.J},function(a){this.Oa(a);u&&y.g(a,"number",w,"left");this.J=a});y.defineProperty(w,{top:"top"},function(){return this.K},function(a){this.Oa(a);u&&y.g(a,"number",w,"top");this.K=a});y.defineProperty(w,{right:"right"},function(){return this.J+this.Ea},function(a){this.Oa(a);u&&y.p(a,w,"right");this.J+=a-(this.J+this.Ea)}); -y.defineProperty(w,{bottom:"bottom"},function(){return this.K+this.Da},function(a){this.Oa(a);u&&y.p(a,w,"top");this.K+=a-(this.K+this.Da)});y.defineProperty(w,{position:"position"},function(){return new N(this.J,this.K)},function(a){this.Oa(a);u&&y.l(a,N,w,"position");this.J=a.x;this.K=a.y});y.defineProperty(w,{size:"size"},function(){return new Ea(this.Ea,this.Da)},function(a){this.Oa(a);u&&y.l(a,Ea,w,"size");this.Ea=a.width;this.Da=a.height}); -y.defineProperty(w,{wl:"center"},function(){return new N(this.J+this.Ea/2,this.K+this.Da/2)},function(a){this.Oa(a);u&&y.l(a,N,w,"center");this.J=a.x-this.Ea/2;this.K=a.y-this.Da/2});y.defineProperty(w,{ra:"centerX"},function(){return this.J+this.Ea/2},function(a){this.Oa(a);u&&y.p(a,w,"centerX");this.J=a-this.Ea/2});y.defineProperty(w,{za:"centerY"},function(){return this.K+this.Da/2},function(a){this.Oa(a);u&&y.p(a,w,"centerY");this.K=a-this.Da/2}); +w.prototype.toString=function(){return"Rect("+this.x+","+this.y+","+this.width+","+this.height+")"};w.prototype.equals=w.prototype.N=function(a){return a instanceof w?this.J===a.x&&this.K===a.y&&this.Fa===a.width&&this.Ea===a.height:!1};w.prototype.equalTo=w.prototype.Vw=function(a,b,c,d){return this.J===a&&this.K===b&&this.Fa===c&&this.Ea===d};w.prototype.equalsApprox=w.prototype.Mc=function(a){return gb(this.J,a.x)&&gb(this.K,a.y)&&gb(this.Fa,a.width)&&gb(this.Ea,a.height)}; +w.prototype.containsPoint=w.prototype.Ma=function(a){u&&z.l(a,N,w,"containsPoint:p");return this.J<=a.x&&this.J+this.Fa>=a.x&&this.K<=a.y&&this.K+this.Ea>=a.y};w.prototype.containsRect=w.prototype.mk=function(a){u&&z.l(a,w,w,"containsRect:r");return this.J<=a.x&&a.x+a.width<=this.J+this.Fa&&this.K<=a.y&&a.y+a.height<=this.K+this.Ea}; +w.prototype.contains=w.prototype.contains=function(a,b,c,d){u?(z.p(a,w,"contains:x"),z.p(b,w,"contains:y"),void 0===c?c=0:z.p(c,w,"contains:w"),void 0===d?d=0:z.p(d,w,"contains:h"),(0>c||0>d)&&z.k("Rect.contains:Width and height cannot be negative")):(void 0===c&&(c=0),void 0===d&&(d=0));return this.J<=a&&a+c<=this.J+this.Fa&&this.K<=b&&b+d<=this.K+this.Ea};w.prototype.reset=function(){this.Pa();this.Ea=this.Fa=this.K=this.J=0}; +w.prototype.offset=w.prototype.offset=function(a,b){u&&(z.p(a,w,"offset:dx"),z.p(b,w,"offset:dy"));this.Pa();this.J+=a;this.K+=b;return this};w.prototype.inflate=w.prototype.bg=function(a,b){u&&(z.p(a,w,"inflate:w"),z.p(b,w,"inflate:h"));return Ab(this,b,a,b,a)};w.prototype.addMargin=w.prototype.Cw=function(a){u&&z.l(a,Eb,w,"addMargin:m");return Ab(this,a.top,a.right,a.bottom,a.left)}; +w.prototype.subtractMargin=w.prototype.rJ=function(a){u&&z.l(a,Eb,w,"subtractMargin:m");return Ab(this,-a.top,-a.right,-a.bottom,-a.left)};w.prototype.grow=function(a,b,c,d){u&&(z.p(a,w,"grow:t"),z.p(b,w,"grow:r"),z.p(c,w,"grow:b"),z.p(d,w,"grow:l"));return Ab(this,a,b,c,d)};function Ab(a,b,c,d,e){a.Pa();var g=a.Fa;c+e<=-g?(a.J+=g/2,a.Fa=0):(a.J-=e,a.Fa+=c+e);c=a.Ea;b+d<=-c?(a.K+=c/2,a.Ea=0):(a.K-=b,a.Ea+=b+d);return a} +w.prototype.intersectRect=function(a){u&&z.l(a,w,w,"intersectRect:r");return Fb(this,a.x,a.y,a.width,a.height)};w.prototype.intersect=function(a,b,c,d){u&&(z.p(a,w,"intersect:x"),z.p(b,w,"intersect:y"),z.p(c,w,"intersect:w"),z.p(d,w,"intersect:h"),(0>c||0>d)&&z.k("Rect.intersect:Width and height cannot be negative"));return Fb(this,a,b,c,d)}; +function Fb(a,b,c,d,e){a.Pa();var g=Math.max(a.J,b),h=Math.max(a.K,c);b=Math.min(a.J+a.Fa,b+d);c=Math.min(a.K+a.Ea,c+e);a.J=g;a.K=h;a.Fa=Math.max(0,b-g);a.Ea=Math.max(0,c-h);return a}w.prototype.intersectsRect=w.prototype.Ig=function(a){u&&z.l(a,w,w,"intersectsRect:r");return this.GE(a.x,a.y,a.width,a.height)}; +w.prototype.intersects=w.prototype.GE=function(a,b,c,d){u&&(z.p(a,w,"intersects:x"),z.p(b,w,"intersects:y"),z.p(a,w,"intersects:w"),z.p(b,w,"intersects:h"),(0>c||0>d)&&z.k("Rect.intersects:Width and height cannot be negative"));var e=this.Fa,g=this.J;if(Infinity!==e&&Infinity!==c&&(e+=g,c+=a,isNaN(c)||isNaN(e)||g>c||a>e))return!1;a=this.Ea;c=this.K;return Infinity!==a&&Infinity!==d&&(a+=c,d+=b,isNaN(d)||isNaN(a)||c>d||b>a)?!1:!0}; +function Ib(a,b){var c=a.Fa,d=b.width+10+10,e=a.J,g=b.x-10;if(e>d+g||g>c+e)return!1;c=a.Ea;d=b.height+10+10;e=a.K;g=b.y-10;return e>d+g||g>c+e?!1:!0}w.prototype.unionPoint=w.prototype.uj=function(a){u&&z.l(a,N,w,"unionPoint:p");return Jb(this,a.x,a.y,0,0)};w.prototype.unionRect=w.prototype.qi=function(a){u&&z.l(a,w,w,"unionRect:r");return Jb(this,a.J,a.K,a.Fa,a.Ea)}; +w.prototype.union=w.prototype.bG=function(a,b,c,d){this.Pa();u?(z.p(a,w,"union:x"),z.p(b,w,"union:y"),void 0===c?c=0:z.p(c,w,"union:w"),void 0===d?d=0:z.p(d,w,"union:h"),(0>c||0>d)&&z.k("Rect.union:Width and height cannot be negative")):(void 0===c&&(c=0),void 0===d&&(d=0));return Jb(this,a,b,c,d)};function Jb(a,b,c,d,e){var g=Math.min(a.J,b),h=Math.min(a.K,c);b=Math.max(a.J+a.Fa,b+d);c=Math.max(a.K+a.Ea,c+e);a.J=g;a.K=h;a.Fa=b-g;a.Ea=c-h;return a} +w.prototype.setSpot=w.prototype.tu=function(a,b,c){u&&(z.p(a,w,"setSpot:x"),z.p(b,w,"setSpot:y"),z.l(c,Q,w,"setSpot:spot"));this.Pa();this.J=a-c.offsetX-c.x*this.Fa;this.K=b-c.offsetY-c.y*this.Ea;return this};var Kb; +w.contains=Kb=function(a,b,c,d,e,g,h,k){u?(z.p(a,w,"contains:rx"),z.p(b,w,"contains:ry"),z.p(c,w,"contains:rw"),z.p(d,w,"contains:rh"),z.p(e,w,"contains:x"),z.p(g,w,"contains:y"),void 0===h?h=0:z.p(h,w,"contains:w"),void 0===k?k=0:z.p(k,w,"contains:h"),(0>c||0>d||0>h||0>k)&&z.k("Rect.contains:Width and height cannot be negative")):(void 0===h&&(h=0),void 0===k&&(k=0));return a<=e&&e+h<=a+c&&b<=g&&g+k<=b+d}; +w.intersects=function(a,b,c,d,e,g,h,k){u&&(z.p(a,w,"intersects:rx"),z.p(b,w,"intersects:ry"),z.p(c,w,"intersects:rw"),z.p(d,w,"intersects:rh"),z.p(e,w,"intersects:x"),z.p(g,w,"intersects:y"),z.p(h,w,"intersects:w"),z.p(k,w,"intersects:h"),(0>c||0>d||0>h||0>k)&&z.k("Rect.intersects:Width and height cannot be negative"));c+=a;h+=e;if(a>h||e>c)return!1;a=d+b;k+=g;return b>k||g>a?!1:!0};z.defineProperty(w,{x:"x"},function(){return this.J},function(a){this.Pa(a);u&&z.g(a,"number",w,"x");this.J=a}); +z.defineProperty(w,{y:"y"},function(){return this.K},function(a){this.Pa(a);u&&z.g(a,"number",w,"y");this.K=a});z.defineProperty(w,{width:"width"},function(){return this.Fa},function(a){this.Pa(a);u&&z.g(a,"number",w,"width");0>a&&z.ka(a,">= 0",w,"width");this.Fa=a});z.defineProperty(w,{height:"height"},function(){return this.Ea},function(a){this.Pa(a);u&&z.g(a,"number",w,"height");0>a&&z.ka(a,">= 0",w,"height");this.Ea=a}); +z.defineProperty(w,{left:"left"},function(){return this.J},function(a){this.Pa(a);u&&z.g(a,"number",w,"left");this.J=a});z.defineProperty(w,{top:"top"},function(){return this.K},function(a){this.Pa(a);u&&z.g(a,"number",w,"top");this.K=a});z.defineProperty(w,{right:"right"},function(){return this.J+this.Fa},function(a){this.Pa(a);u&&z.p(a,w,"right");this.J+=a-(this.J+this.Fa)}); +z.defineProperty(w,{bottom:"bottom"},function(){return this.K+this.Ea},function(a){this.Pa(a);u&&z.p(a,w,"top");this.K+=a-(this.K+this.Ea)});z.defineProperty(w,{position:"position"},function(){return new N(this.J,this.K)},function(a){this.Pa(a);u&&z.l(a,N,w,"position");this.J=a.x;this.K=a.y});z.defineProperty(w,{size:"size"},function(){return new Ea(this.Fa,this.Ea)},function(a){this.Pa(a);u&&z.l(a,Ea,w,"size");this.Fa=a.width;this.Ea=a.height}); +z.defineProperty(w,{wl:"center"},function(){return new N(this.J+this.Fa/2,this.K+this.Ea/2)},function(a){this.Pa(a);u&&z.l(a,N,w,"center");this.J=a.x-this.Fa/2;this.K=a.y-this.Ea/2});z.defineProperty(w,{ra:"centerX"},function(){return this.J+this.Fa/2},function(a){this.Pa(a);u&&z.p(a,w,"centerX");this.J=a-this.Fa/2});z.defineProperty(w,{za:"centerY"},function(){return this.K+this.Ea/2},function(a){this.Pa(a);u&&z.p(a,w,"centerY");this.K=a-this.Ea/2}); w.prototype.isReal=w.prototype.F=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)};w.prototype.isEmpty=function(){return 0===this.width&&0===this.height}; -function Eb(a,b,c,d){void 0===a?this.gh=this.Yg=this.oh=this.ph=0:void 0===b?this.left=this.bottom=this.right=this.top=a:void 0===c?(d=b,this.top=a,this.right=b,this.bottom=a,this.left=d):void 0!==d?(this.top=a,this.right=b,this.bottom=c,this.left=d):y.k("Invalid arguments to Margin constructor: "+a+", "+b+", "+c+", "+d);this.G=!1}y.ia("Margin",Eb);y.ki(Eb);y.be(Eb,{top:!0,right:!0,bottom:!0,left:!0});Eb.prototype.assign=function(a){this.ph=a.ph;this.oh=a.oh;this.Yg=a.Yg;this.gh=a.gh}; -Eb.prototype.setTo=Eb.prototype.n=function(a,b,c,d){u&&(y.g(a,"number",Eb,"setTo:t"),y.g(b,"number",Eb,"setTo:r"),y.g(c,"number",Eb,"setTo:b"),y.g(d,"number",Eb,"setTo:l"));this.Oa();this.ph=a;this.oh=b;this.Yg=c;this.gh=d;return this};Eb.prototype.set=Eb.prototype.set=function(a){u&&y.l(a,Eb,Eb,"assign:m");this.Oa();this.ph=a.ph;this.oh=a.oh;this.Yg=a.Yg;this.gh=a.gh;return this};Eb.prototype.copy=function(){var a=new Eb;a.ph=this.ph;a.oh=this.oh;a.Yg=this.Yg;a.gh=this.gh;return a};f=Eb.prototype; -f.La=function(){this.G=!0;Object.freeze(this);return this};f.U=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.G=!0;return this};f.Wa=function(){Object.isFrozen(this)&&y.k("cannot thaw constant: "+this);this.G=!1;return this};f.Oa=function(a){if(this.G){var b="The Margin is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);y.k(b)}}; +function Eb(a,b,c,d){void 0===a?this.fh=this.Xg=this.nh=this.oh=0:void 0===b?this.left=this.bottom=this.right=this.top=a:void 0===c?(d=b,this.top=a,this.right=b,this.bottom=a,this.left=d):void 0!==d?(this.top=a,this.right=b,this.bottom=c,this.left=d):z.k("Invalid arguments to Margin constructor: "+a+", "+b+", "+c+", "+d);this.G=!1}z.ia("Margin",Eb);z.ii(Eb);z.$d(Eb,{top:!0,right:!0,bottom:!0,left:!0});Eb.prototype.assign=function(a){this.oh=a.oh;this.nh=a.nh;this.Xg=a.Xg;this.fh=a.fh}; +Eb.prototype.setTo=Eb.prototype.n=function(a,b,c,d){u&&(z.g(a,"number",Eb,"setTo:t"),z.g(b,"number",Eb,"setTo:r"),z.g(c,"number",Eb,"setTo:b"),z.g(d,"number",Eb,"setTo:l"));this.Pa();this.oh=a;this.nh=b;this.Xg=c;this.fh=d;return this};Eb.prototype.set=Eb.prototype.set=function(a){u&&z.l(a,Eb,Eb,"assign:m");this.Pa();this.oh=a.oh;this.nh=a.nh;this.Xg=a.Xg;this.fh=a.fh;return this};Eb.prototype.copy=function(){var a=new Eb;a.oh=this.oh;a.nh=this.nh;a.Xg=this.Xg;a.fh=this.fh;return a};f=Eb.prototype; +f.La=function(){this.G=!0;Object.freeze(this);return this};f.V=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.G=!0;return this};f.Wa=function(){Object.isFrozen(this)&&z.k("cannot thaw constant: "+this);this.G=!1;return this};f.Pa=function(a){if(this.G){var b="The Margin is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);z.k(b)}}; Eb.parse=function(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=NaN;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));if(isNaN(c))return new Eb;for(var e=NaN;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));if(isNaN(e))return new Eb(c);for(var g=NaN;""===a[b];)b++;(d=a[b++])&&(g=parseFloat(d));if(isNaN(g))return new Eb(c,e);for(var h=NaN;""===a[b];)b++;(d=a[b++])&&(h=parseFloat(d));return isNaN(h)?new Eb(c,e):new Eb(c,e,g,h)}return new Eb}; -Eb.stringify=function(a){return a instanceof Eb?a.top.toString()+" "+a.right.toString()+" "+a.bottom.toString()+" "+a.left.toString():a.toString()};Eb.prototype.toString=function(){return"Margin("+this.top+","+this.right+","+this.bottom+","+this.left+")"};Eb.prototype.equals=Eb.prototype.N=function(a){return a instanceof Eb?this.ph===a.top&&this.oh===a.right&&this.Yg===a.bottom&&this.gh===a.left:!1}; -Eb.prototype.equalTo=Eb.prototype.Uw=function(a,b,c,d){return this.ph===a&&this.oh===b&&this.Yg===c&&this.gh===d};Eb.prototype.equalsApprox=Eb.prototype.Mc=function(a){return gb(this.ph,a.top)&&gb(this.oh,a.right)&&gb(this.Yg,a.bottom)&&gb(this.gh,a.left)};y.defineProperty(Eb,{top:"top"},function(){return this.ph},function(a){this.Oa(a);u&&y.p(a,Eb,"top");this.ph=a});y.defineProperty(Eb,{right:"right"},function(){return this.oh},function(a){this.Oa(a);u&&y.p(a,Eb,"right");this.oh=a}); -y.defineProperty(Eb,{bottom:"bottom"},function(){return this.Yg},function(a){this.Oa(a);u&&y.p(a,Eb,"bottom");this.Yg=a});y.defineProperty(Eb,{left:"left"},function(){return this.gh},function(a){this.Oa(a);u&&y.p(a,Eb,"left");this.gh=a});Eb.prototype.isReal=Eb.prototype.F=function(){return isFinite(this.top)&&isFinite(this.right)&&isFinite(this.bottom)&&isFinite(this.left)};function Fa(){this.m11=1;this.m21=this.m12=0;this.m22=1;this.dy=this.dx=0}y.ki(Fa); -y.be(Fa,{m11:!0,m12:!0,m21:!0,m22:!0,dx:!0,dy:!0});Fa.prototype.set=Fa.prototype.set=function(a){u&&y.l(a,Fa,Fa,"set:t");this.m11=a.m11;this.m12=a.m12;this.m21=a.m21;this.m22=a.m22;this.dx=a.dx;this.dy=a.dy;return this};Fa.prototype.copy=function(){var a=new Fa;a.m11=this.m11;a.m12=this.m12;a.m21=this.m21;a.m22=this.m22;a.dx=this.dx;a.dy=this.dy;return a};Fa.prototype.toString=function(){return"Transform("+this.m11+","+this.m12+","+this.m21+","+this.m22+","+this.dx+","+this.dy+")"}; -Fa.prototype.equals=Fa.prototype.N=function(a){return a instanceof Fa?this.m11===a.m11&&this.m12===a.m12&&this.m21===a.m21&&this.m22===a.m22&&this.dx===a.dx&&this.dy===a.dy:!1};Fa.prototype.isIdentity=Fa.prototype.Ot=function(){return 1===this.m11&&0===this.m12&&0===this.m21&&1===this.m22&&0===this.dx&&0===this.dy};Fa.prototype.reset=Fa.prototype.reset=function(){this.m11=1;this.m21=this.m12=0;this.m22=1;this.dy=this.dx=0;return this}; -Fa.prototype.multiply=Fa.prototype.multiply=function(a){u&&y.l(a,Fa,Fa,"multiply:matrix");var b=this.m12*a.m11+this.m22*a.m12,c=this.m11*a.m21+this.m21*a.m22,d=this.m12*a.m21+this.m22*a.m22,e=this.m11*a.dx+this.m21*a.dy+this.dx,g=this.m12*a.dx+this.m22*a.dy+this.dy;this.m11=this.m11*a.m11+this.m21*a.m12;this.m12=b;this.m21=c;this.m22=d;this.dx=e;this.dy=g;return this}; -Fa.prototype.multiplyInverted=Fa.prototype.rA=function(a){u&&y.l(a,Fa,Fa,"multiplyInverted:matrix");var b=1/(a.m11*a.m22-a.m12*a.m21),c=a.m22*b,d=-a.m12*b,e=-a.m21*b,g=a.m11*b,h=b*(a.m21*a.dy-a.m22*a.dx),k=b*(a.m12*a.dx-a.m11*a.dy);a=this.m12*c+this.m22*d;b=this.m11*e+this.m21*g;e=this.m12*e+this.m22*g;g=this.m11*h+this.m21*k+this.dx;h=this.m12*h+this.m22*k+this.dy;this.m11=this.m11*c+this.m21*d;this.m12=a;this.m21=b;this.m22=e;this.dx=g;this.dy=h;return this}; -Fa.prototype.invert=Fa.prototype.bA=function(){var a=1/(this.m11*this.m22-this.m12*this.m21),b=-this.m12*a,c=-this.m21*a,d=this.m11*a,e=a*(this.m21*this.dy-this.m22*this.dx),g=a*(this.m12*this.dx-this.m11*this.dy);this.m11=this.m22*a;this.m12=b;this.m21=c;this.m22=d;this.dx=e;this.dy=g;return this}; -Fa.prototype.rotate=Fa.prototype.rotate=function(a,b,c){u&&(y.p(a,Fa,"rotate:angle"),y.p(b,Fa,"rotate:rx"),y.p(c,Fa,"rotate:ry"));360<=a?a-=360:0>a&&(a+=360);if(0===a)return this;this.translate(b,c);var d=0,e=0;90===a?(d=0,e=1):180===a?(d=-1,e=0):270===a?(d=0,e=-1):(e=a*Math.PI/180,d=Math.cos(e),e=Math.sin(e));a=this.m12*d+this.m22*e;var g=this.m11*-e+this.m21*d,h=this.m12*-e+this.m22*d;this.m11=this.m11*d+this.m21*e;this.m12=a;this.m21=g;this.m22=h;this.translate(-b,-c);return this}; -Fa.prototype.translate=Fa.prototype.translate=function(a,b){u&&(y.p(a,Fa,"translate:x"),y.p(b,Fa,"translate:y"));this.dx+=this.m11*a+this.m21*b;this.dy+=this.m12*a+this.m22*b;return this};Fa.prototype.scale=Fa.prototype.scale=function(a,b){void 0===b&&(b=a);u&&(y.p(a,Fa,"translate:sx"),y.p(b,Fa,"translate:sy"));this.m11*=a;this.m12*=a;this.m21*=b;this.m22*=b;return this}; -Fa.prototype.transformPoint=Fa.prototype.Cb=function(a){u&&y.l(a,N,Fa,"transformPoint:p");var b=a.J,c=a.K;a.J=b*this.m11+c*this.m21+this.dx;a.K=b*this.m12+c*this.m22+this.dy;return a};Fa.prototype.invertedTransformPoint=Fa.prototype.mi=function(a){u&&y.l(a,N,Fa,"invertedTransformPoint:p");var b=1/(this.m11*this.m22-this.m12*this.m21),c=-this.m12*b,d=this.m11*b,e=b*(this.m12*this.dx-this.m11*this.dy),g=a.J,h=a.K;a.J=g*this.m22*b+h*-this.m21*b+b*(this.m21*this.dy-this.m22*this.dx);a.K=g*c+h*d+e;return a}; -Fa.prototype.transformRect=Fa.prototype.XF=function(a){u&&y.l(a,w,Fa,"transformRect:rect");var b=a.J,c=a.K,d=b+a.Ea,e=c+a.Da,g=this.m11,h=this.m12,k=this.m21,l=this.m22,m=this.dx,n=this.dy,p=b*g+c*k+m,q=b*h+c*l+n,r=d*g+c*k+m,c=d*h+c*l+n,s=b*g+e*k+m,b=b*h+e*l+n,g=d*g+e*k+m,d=d*h+e*l+n,e=p,h=q,p=Math.min(p,r),e=Math.max(e,r),h=Math.min(h,c),q=Math.max(q,c),p=Math.min(p,s),e=Math.max(e,s),h=Math.min(h,b),q=Math.max(q,b),p=Math.min(p,g),e=Math.max(e,g),h=Math.min(h,d),q=Math.max(q,d);a.J=p;a.K=h;a.Ea= -e-p;a.Da=q-h;return a};function Q(a,b,c,d){void 0===a?this.zg=this.yg=this.K=this.J=0:(void 0===b&&(b=0),void 0===c&&(c=0),void 0===d&&(d=0),this.x=a,this.y=b,this.offsetX=c,this.offsetY=d);this.G=!1}y.ia("Spot",Q);y.ki(Q);y.be(Q,{x:!0,y:!0,offsetX:!0,offsetY:!0});Q.prototype.assign=function(a){this.J=a.J;this.K=a.K;this.yg=a.yg;this.zg=a.zg}; -Q.prototype.setTo=Q.prototype.n=function(a,b,c,d){u&&(Lb(a,"setTo:x"),Lb(b,"setTo:y"),Qb(c,"setTo:offx"),Qb(d,"setTo:offy"));this.Oa();this.J=a;this.K=b;this.yg=c;this.zg=d;return this};Q.prototype.set=Q.prototype.set=function(a){u&&y.l(a,Q,Q,"set:s");this.Oa();this.J=a.J;this.K=a.K;this.yg=a.yg;this.zg=a.zg;return this};Q.prototype.copy=function(){var a=new Q;a.J=this.J;a.K=this.K;a.yg=this.yg;a.zg=this.zg;return a};f=Q.prototype;f.La=function(){this.G=!0;Object.freeze(this);return this}; -f.U=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.G=!0;return this};f.Wa=function(){Object.isFrozen(this)&&y.k("cannot thaw constant: "+this);this.G=!1;return this};f.Oa=function(a){if(this.G){var b="The Spot is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);y.k(b)}};function Tb(a,b){a.J=NaN;a.K=NaN;a.yg=b;return a}function Lb(a,b){(isNaN(a)||1a)&&y.ka(a,"0 <= "+b+" <= 1",Q,b)} -function Qb(a,b){(isNaN(a)||Infinity===a||-Infinity===a)&&y.ka(a,"real number, not NaN or Infinity",Q,b)}var Ub; -Q.parse=Ub=function(a){if("string"===typeof a){a=a.trim();if("None"===a)return Vb;if("TopLeft"===a)return Zb;if("Top"===a||"TopCenter"===a||"MiddleTop"===a)return $b;if("TopRight"===a)return cc;if("Left"===a||"LeftCenter"===a||"MiddleLeft"===a)return dc;if("Center"===a)return ec;if("Right"===a||"RightCenter"===a||"MiddleRight"===a)return fc;if("BottomLeft"===a)return gc;if("Bottom"===a||"BottomCenter"===a||"MiddleBottom"===a)return hc;if("BottomRight"===a)return mc;if("TopSide"===a)return nc;if("LeftSide"=== -a)return oc;if("RightSide"===a)return pc;if("BottomSide"===a)return qc;if("TopBottomSides"===a)return rc;if("LeftRightSides"===a)return sc;if("TopLeftSides"===a)return tc;if("TopRightSides"===a)return uc;if("BottomLeftSides"===a)return zc;if("BottomRightSides"===a)return Ac;if("NotTopSide"===a)return Bc;if("NotLeftSide"===a)return Cc;if("NotRightSide"===a)return Dc;if("NotBottomSide"===a)return Ec;if("AllSides"===a)return Fc;if("Default"===a)return Kc;a=a.split(" ");for(var b=0,c=0;""===a[b];)b++; +Eb.stringify=function(a){return a instanceof Eb?a.top.toString()+" "+a.right.toString()+" "+a.bottom.toString()+" "+a.left.toString():a.toString()};Eb.prototype.toString=function(){return"Margin("+this.top+","+this.right+","+this.bottom+","+this.left+")"};Eb.prototype.equals=Eb.prototype.N=function(a){return a instanceof Eb?this.oh===a.top&&this.nh===a.right&&this.Xg===a.bottom&&this.fh===a.left:!1}; +Eb.prototype.equalTo=Eb.prototype.Vw=function(a,b,c,d){return this.oh===a&&this.nh===b&&this.Xg===c&&this.fh===d};Eb.prototype.equalsApprox=Eb.prototype.Mc=function(a){return gb(this.oh,a.top)&&gb(this.nh,a.right)&&gb(this.Xg,a.bottom)&&gb(this.fh,a.left)};z.defineProperty(Eb,{top:"top"},function(){return this.oh},function(a){this.Pa(a);u&&z.p(a,Eb,"top");this.oh=a});z.defineProperty(Eb,{right:"right"},function(){return this.nh},function(a){this.Pa(a);u&&z.p(a,Eb,"right");this.nh=a}); +z.defineProperty(Eb,{bottom:"bottom"},function(){return this.Xg},function(a){this.Pa(a);u&&z.p(a,Eb,"bottom");this.Xg=a});z.defineProperty(Eb,{left:"left"},function(){return this.fh},function(a){this.Pa(a);u&&z.p(a,Eb,"left");this.fh=a});Eb.prototype.isReal=Eb.prototype.F=function(){return isFinite(this.top)&&isFinite(this.right)&&isFinite(this.bottom)&&isFinite(this.left)};function Fa(){this.m11=1;this.m21=this.m12=0;this.m22=1;this.dy=this.dx=0}z.ii(Fa); +z.$d(Fa,{m11:!0,m12:!0,m21:!0,m22:!0,dx:!0,dy:!0});Fa.prototype.set=Fa.prototype.set=function(a){u&&z.l(a,Fa,Fa,"set:t");this.m11=a.m11;this.m12=a.m12;this.m21=a.m21;this.m22=a.m22;this.dx=a.dx;this.dy=a.dy;return this};Fa.prototype.copy=function(){var a=new Fa;a.m11=this.m11;a.m12=this.m12;a.m21=this.m21;a.m22=this.m22;a.dx=this.dx;a.dy=this.dy;return a};Fa.prototype.toString=function(){return"Transform("+this.m11+","+this.m12+","+this.m21+","+this.m22+","+this.dx+","+this.dy+")"}; +Fa.prototype.equals=Fa.prototype.N=function(a){return a instanceof Fa?this.m11===a.m11&&this.m12===a.m12&&this.m21===a.m21&&this.m22===a.m22&&this.dx===a.dx&&this.dy===a.dy:!1};Fa.prototype.isIdentity=Fa.prototype.Pt=function(){return 1===this.m11&&0===this.m12&&0===this.m21&&1===this.m22&&0===this.dx&&0===this.dy};Fa.prototype.reset=Fa.prototype.reset=function(){this.m11=1;this.m21=this.m12=0;this.m22=1;this.dy=this.dx=0;return this}; +Fa.prototype.multiply=Fa.prototype.multiply=function(a){u&&z.l(a,Fa,Fa,"multiply:matrix");var b=this.m12*a.m11+this.m22*a.m12,c=this.m11*a.m21+this.m21*a.m22,d=this.m12*a.m21+this.m22*a.m22,e=this.m11*a.dx+this.m21*a.dy+this.dx,g=this.m12*a.dx+this.m22*a.dy+this.dy;this.m11=this.m11*a.m11+this.m21*a.m12;this.m12=b;this.m21=c;this.m22=d;this.dx=e;this.dy=g;return this}; +Fa.prototype.multiplyInverted=Fa.prototype.vA=function(a){u&&z.l(a,Fa,Fa,"multiplyInverted:matrix");var b=1/(a.m11*a.m22-a.m12*a.m21),c=a.m22*b,d=-a.m12*b,e=-a.m21*b,g=a.m11*b,h=b*(a.m21*a.dy-a.m22*a.dx),k=b*(a.m12*a.dx-a.m11*a.dy);a=this.m12*c+this.m22*d;b=this.m11*e+this.m21*g;e=this.m12*e+this.m22*g;g=this.m11*h+this.m21*k+this.dx;h=this.m12*h+this.m22*k+this.dy;this.m11=this.m11*c+this.m21*d;this.m12=a;this.m21=b;this.m22=e;this.dx=g;this.dy=h;return this}; +Fa.prototype.invert=Fa.prototype.fA=function(){var a=1/(this.m11*this.m22-this.m12*this.m21),b=-this.m12*a,c=-this.m21*a,d=this.m11*a,e=a*(this.m21*this.dy-this.m22*this.dx),g=a*(this.m12*this.dx-this.m11*this.dy);this.m11=this.m22*a;this.m12=b;this.m21=c;this.m22=d;this.dx=e;this.dy=g;return this}; +Fa.prototype.rotate=Fa.prototype.rotate=function(a,b,c){u&&(z.p(a,Fa,"rotate:angle"),z.p(b,Fa,"rotate:rx"),z.p(c,Fa,"rotate:ry"));360<=a?a-=360:0>a&&(a+=360);if(0===a)return this;this.translate(b,c);var d=0,e=0;90===a?(d=0,e=1):180===a?(d=-1,e=0):270===a?(d=0,e=-1):(e=a*Math.PI/180,d=Math.cos(e),e=Math.sin(e));a=this.m12*d+this.m22*e;var g=this.m11*-e+this.m21*d,h=this.m12*-e+this.m22*d;this.m11=this.m11*d+this.m21*e;this.m12=a;this.m21=g;this.m22=h;this.translate(-b,-c);return this}; +Fa.prototype.translate=Fa.prototype.translate=function(a,b){u&&(z.p(a,Fa,"translate:x"),z.p(b,Fa,"translate:y"));this.dx+=this.m11*a+this.m21*b;this.dy+=this.m12*a+this.m22*b;return this};Fa.prototype.scale=Fa.prototype.scale=function(a,b){void 0===b&&(b=a);u&&(z.p(a,Fa,"translate:sx"),z.p(b,Fa,"translate:sy"));this.m11*=a;this.m12*=a;this.m21*=b;this.m22*=b;return this}; +Fa.prototype.transformPoint=Fa.prototype.Cb=function(a){u&&z.l(a,N,Fa,"transformPoint:p");var b=a.J,c=a.K;a.J=b*this.m11+c*this.m21+this.dx;a.K=b*this.m12+c*this.m22+this.dy;return a};Fa.prototype.invertedTransformPoint=Fa.prototype.ki=function(a){u&&z.l(a,N,Fa,"invertedTransformPoint:p");var b=1/(this.m11*this.m22-this.m12*this.m21),c=-this.m12*b,d=this.m11*b,e=b*(this.m12*this.dx-this.m11*this.dy),g=a.J,h=a.K;a.J=g*this.m22*b+h*-this.m21*b+b*(this.m21*this.dy-this.m22*this.dx);a.K=g*c+h*d+e;return a}; +Fa.prototype.transformRect=Fa.prototype.$F=function(a){u&&z.l(a,w,Fa,"transformRect:rect");var b=a.J,c=a.K,d=b+a.Fa,e=c+a.Ea,g=this.m11,h=this.m12,k=this.m21,l=this.m22,m=this.dx,n=this.dy,p=b*g+c*k+m,q=b*h+c*l+n,r=d*g+c*k+m,c=d*h+c*l+n,s=b*g+e*k+m,b=b*h+e*l+n,g=d*g+e*k+m,d=d*h+e*l+n,e=p,h=q,p=Math.min(p,r),e=Math.max(e,r),h=Math.min(h,c),q=Math.max(q,c),p=Math.min(p,s),e=Math.max(e,s),h=Math.min(h,b),q=Math.max(q,b),p=Math.min(p,g),e=Math.max(e,g),h=Math.min(h,d),q=Math.max(q,d);a.J=p;a.K=h;a.Fa= +e-p;a.Ea=q-h;return a};function Q(a,b,c,d){void 0===a?this.yg=this.xg=this.K=this.J=0:(void 0===b&&(b=0),void 0===c&&(c=0),void 0===d&&(d=0),this.x=a,this.y=b,this.offsetX=c,this.offsetY=d);this.G=!1}z.ia("Spot",Q);z.ii(Q);z.$d(Q,{x:!0,y:!0,offsetX:!0,offsetY:!0});Q.prototype.assign=function(a){this.J=a.J;this.K=a.K;this.xg=a.xg;this.yg=a.yg}; +Q.prototype.setTo=Q.prototype.n=function(a,b,c,d){u&&(Lb(a,"setTo:x"),Lb(b,"setTo:y"),Qb(c,"setTo:offx"),Qb(d,"setTo:offy"));this.Pa();this.J=a;this.K=b;this.xg=c;this.yg=d;return this};Q.prototype.set=Q.prototype.set=function(a){u&&z.l(a,Q,Q,"set:s");this.Pa();this.J=a.J;this.K=a.K;this.xg=a.xg;this.yg=a.yg;return this};Q.prototype.copy=function(){var a=new Q;a.J=this.J;a.K=this.K;a.xg=this.xg;a.yg=this.yg;return a};f=Q.prototype;f.La=function(){this.G=!0;Object.freeze(this);return this}; +f.V=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.G=!0;return this};f.Wa=function(){Object.isFrozen(this)&&z.k("cannot thaw constant: "+this);this.G=!1;return this};f.Pa=function(a){if(this.G){var b="The Spot is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);z.k(b)}};function Tb(a,b){a.J=NaN;a.K=NaN;a.xg=b;return a}function Lb(a,b){(isNaN(a)||1a)&&z.ka(a,"0 <= "+b+" <= 1",Q,b)} +function Qb(a,b){(isNaN(a)||Infinity===a||-Infinity===a)&&z.ka(a,"real number, not NaN or Infinity",Q,b)}var Ub; +Q.parse=Ub=function(a){if("string"===typeof a){a=a.trim();if("None"===a)return Yb;if("TopLeft"===a)return Zb;if("Top"===a||"TopCenter"===a||"MiddleTop"===a)return $b;if("TopRight"===a)return cc;if("Left"===a||"LeftCenter"===a||"MiddleLeft"===a)return dc;if("Center"===a)return ec;if("Right"===a||"RightCenter"===a||"MiddleRight"===a)return fc;if("BottomLeft"===a)return gc;if("Bottom"===a||"BottomCenter"===a||"MiddleBottom"===a)return hc;if("BottomRight"===a)return ic;if("TopSide"===a)return nc;if("LeftSide"=== +a)return oc;if("RightSide"===a)return pc;if("BottomSide"===a)return qc;if("TopBottomSides"===a)return rc;if("LeftRightSides"===a)return sc;if("TopLeftSides"===a)return tc;if("TopRightSides"===a)return uc;if("BottomLeftSides"===a)return Ac;if("BottomRightSides"===a)return Bc;if("NotTopSide"===a)return Cc;if("NotLeftSide"===a)return Dc;if("NotRightSide"===a)return Ec;if("NotBottomSide"===a)return Fc;if("AllSides"===a)return Gc;if("Default"===a)return Lc;a=a.split(" ");for(var b=0,c=0;""===a[b];)b++; var d=a[b++];void 0!==d&&0b.offset?1:-1});for(k=0;k=2*Math.PI?(md(a,b,c,d,e,e+Math.PI,h),md(a,b,c,d,e+Math.PI,e+2*Math.PI,h),a.path.push(["M",l,g])):(b+=d*Math.cos(e),c+=d*Math.sin(e),k=180*k/Math.PI,e=h?0:1,h=180<=k===!!h?0:1,0!==a.path.length?a.path.push(["L",b,c]):a.path.push(["M",b,c]),a.path.push(["A",d,d,k,h,e,l,g]))}}function ld(a,b,c,d,e,g,h){var k=new $c;k.pf=[b,c,d,e,g,h];b={};pd(a,"g",b,k);k=a.addElement("g",b);a.Df.push(k)} -f.fb=function(){if(0!==this.shadowOffsetX||0!==this.shadowOffsetY||0!==this.shadowBlur){var a="SHADOW"+y.am++,b=this.addElement("filter",{id:a,x:"-100%",y:"-100%",width:"300%",height:"300%"},null),c,d,e,g,h;c=kd(this,"feGaussianBlur",{"in":"SourceAlpha",result:"blur",tL:this.shadowBlur/2});d=kd(this,"feFlood",{"in":"blur",result:"flood","flood-color":this.shadowColor});e=kd(this,"feComposite",{"in":"flood",in2:"blur",operator:"in",result:"comp"});g=kd(this,"feOffset",{"in":"comp",result:"offsetBlur", -dx:this.shadowOffsetX,dy:this.shadowOffsetY});h=kd(this,"feMerge",{});h.appendChild(kd(this,"feMergeNode",{"in":"offsetBlur"}));h.appendChild(kd(this,"feMergeNode",{"in":"SourceGraphic"}));b.appendChild(c);b.appendChild(d);b.appendChild(e);b.appendChild(g);b.appendChild(h);0b?(this.scale(b/a,1),this.translate((a-b)/2,0)):b>a&&(this.scale(1,a/b),this.translate(0,(b-a)/2));this.Mn?this.clip():this.fill();a>b?(this.translate(-(a-b)/2,0),this.scale(1/(b/a),1)):b>a&&(this.translate(0,-(b-a)/2),this.scale(1,1/(a/b)))}else this.Mn?this.clip():this.fill()};f.tj=function(){this.Mn||this.stroke()};y.defineProperty(sd,{Mw:"clipInsteadOfFill"},function(){return this.Mn},function(a){this.Mn=a}); -sd.prototype.PA=function(a,b,c){this.Gs=a;this.Hs=b;this.Bg=c};sd.prototype.yn=function(){this.shadowBlur=this.shadowOffsetY=this.shadowOffsetX=0};sd.prototype.zn=function(){this.shadowOffsetX=this.Gs;this.shadowOffsetY=this.Hs;this.shadowBlur=this.Bg};function ca(a,b){b&&(a.ly="");a.my="";a.ky=""} -var Ed=(Math.sqrt(2)-1)/3*4,Fd=(new N(0,0)).La(),Gd=(new w(0,0,0,0)).La(),Hd=(new Eb(0,0,0,0)).La(),Id=(new Eb(2,2,2,2)).La(),Jd=(new N(6,6)).La(),Kd=(new N(-Infinity,-Infinity)).La(),Ld=(new N(Infinity,Infinity)).La(),Md=(new Ea(0,0)).La(),Nd=(new Ea(1,1)).La(),Sd=(new Ea(6,6)).La(),Td=(new Ea(8,8)).La(),Ud=(new Ea(10,10)).La(),Vd=(new Ea(Infinity,Infinity)).La(),Wd=(new N(NaN,NaN)).La(),Xd=(new Ea(NaN,NaN)).La(),Yd=(new w(NaN,NaN,NaN,NaN)).La(),Zd=(new Q(.156,.156)).La(),$d=(new Q(.844,.844)).La(), -ae=new ma,be=new ma,ce=null;function ne(a){if(0>=a)return 0;var b=ce;if(null===b){for(var b=[],c=0;2E3>=c;c++)b[c]=Math.sqrt(c);ce=b}return 1>a?(c=1/a,2E3>=c?1/b[c|0]:Math.sqrt(a)):2E3>=a?b[a|0]:Math.sqrt(a)}function gb(a,b){var c=a-b;return.5>c&&-.5c&&-5E-8b.offset?1:-1});for(k=0;k=2*Math.PI?(pd(a,b,c,d,e,e+Math.PI,h),pd(a,b,c,d,e+Math.PI,e+2*Math.PI,h),a.path.push(["M",l,g])):(b+=d*Math.cos(e),c+=d*Math.sin(e),k=180*k/Math.PI,e=h?0:1,h=180<=k===!!h?0:1,0!==a.path.length?a.path.push(["L",b,c]):a.path.push(["M",b,c]),a.path.push(["A",d,d,k,h,e,l,g]))}}function od(a,b,c,d,e,g,h){var k=new ad;k.of=[b,c,d,e,g,h];b={};sd(a,"g",b,k);k=a.addElement("g",b);a.Cf.push(k)} +f.fb=function(){if(0!==this.shadowOffsetX||0!==this.shadowOffsetY||0!==this.shadowBlur){var a="SHADOW"+z.$l++,b=this.addElement("filter",{id:a,x:"-100%",y:"-100%",width:"300%",height:"300%"},null),c,d,e,g,h;c=nd(this,"feGaussianBlur",{"in":"SourceAlpha",result:"blur",vL:this.shadowBlur/2});d=nd(this,"feFlood",{"in":"blur",result:"flood","flood-color":this.shadowColor});e=nd(this,"feComposite",{"in":"flood",in2:"blur",operator:"in",result:"comp"});g=nd(this,"feOffset",{"in":"comp",result:"offsetBlur", +dx:this.shadowOffsetX,dy:this.shadowOffsetY});h=nd(this,"feMerge",{});h.appendChild(nd(this,"feMergeNode",{"in":"offsetBlur"}));h.appendChild(nd(this,"feMergeNode",{"in":"SourceGraphic"}));b.appendChild(c);b.appendChild(d);b.appendChild(e);b.appendChild(g);b.appendChild(h);0b?(this.scale(b/a,1),this.translate((a-b)/2,0)):b>a&&(this.scale(1,a/b),this.translate(0,(b-a)/2));this.Mn?this.clip():this.fill();a>b?(this.translate(-(a-b)/2,0),this.scale(1/(b/a),1)):b>a&&(this.translate(0,-(b-a)/2),this.scale(1,1/(a/b)))}else this.Mn?this.clip():this.fill()};f.sj=function(){this.Mn||this.stroke()};z.defineProperty(vd,{Nw:"clipInsteadOfFill"},function(){return this.Mn},function(a){this.Mn=a});f=vd.prototype; +f.TA=function(a,b,c){this.Hs=a;this.Is=b;this.Ag=c};f.yn=function(){this.shadowBlur=this.shadowOffsetY=this.shadowOffsetX=0};f.zn=function(){this.shadowOffsetX=this.Hs;this.shadowOffsetY=this.Is;this.shadowBlur=this.Ag};f.Tz=function(a,b){var c=this.Ca;if(void 0!==c.setLineDash)c.setLineDash(a),c.lineDashOffset=b;else if(void 0!==c.webkitLineDash)c.webkitLineDash=a,c.webkitLineDashOffset=b;else if(void 0!==c.mozDash)c.mozDash=a,c.mozDashOffset=b;else return!1;return!0}; +f.Pz=function(){var a=this.Ca;void 0!==a.setLineDash?(a.setLineDash(z.wj),a.lineDashOffset=0):void 0!==a.webkitLineDash?(a.webkitLineDash=z.wj,a.webkitLineDashOffset=0):void 0!==a.mozDash&&(a.mozDash=null,a.mozDashOffset=0)};function ca(a,b){b&&(a.my="");a.ny="";a.ly=""} +var Fd=(Math.sqrt(2)-1)/3*4,Gd=(new N(0,0)).La(),Hd=(new w(0,0,0,0)).La(),Id=(new Eb(0,0,0,0)).La(),Jd=(new Eb(2,2,2,2)).La(),Kd=(new N(6,6)).La(),Ld=(new N(-Infinity,-Infinity)).La(),Md=(new N(Infinity,Infinity)).La(),Nd=(new Ea(0,0)).La(),Od=(new Ea(1,1)).La(),Td=(new Ea(6,6)).La(),Ud=(new Ea(8,8)).La(),Vd=(new Ea(10,10)).La(),Wd=(new Ea(Infinity,Infinity)).La(),Xd=(new N(NaN,NaN)).La(),Yd=(new Ea(NaN,NaN)).La(),Zd=(new w(NaN,NaN,NaN,NaN)).La(),$d=(new Q(.156,.156)).La(),ae=(new Q(.844,.844)).La(), +be=new ma,ce=new ma,de=null;function ne(a){if(0>=a)return 0;var b=de;if(null===b){for(var b=[],c=0;2E3>=c;c++)b[c]=Math.sqrt(c);de=b}return 1>a?(c=1/a,2E3>=c?1/b[c|0]:Math.sqrt(a)):2E3>=a?b[a|0]:Math.sqrt(a)}function gb(a,b){var c=a-b;return.5>c&&-.5c&&-5E-8=e&&(e=1E-6);var k=0,l=0,m=0,n=0;am-n)if(a-c>e||c-a>e){if(g=(d-b)/(c-a)*(g-a)+b,g-e<=h&&h<=g+e)return!0}else return!0;else if(b-d>e||d-b>e){if(h=(c-a)/(d-b)*(h-b)+a,h-e<=g&&g<=h+e)return!0}else return!0;return!1} function pe(a,b,c,d,e,g,h,k,l,m,n,p){if(oe(a,b,h,k,p,c,d)&&oe(a,b,h,k,p,e,g))return oe(a,b,h,k,p,m,n);var q=(a+c)/2,r=(b+d)/2,s=(c+e)/2,t=(d+g)/2;e=(e+h)/2;g=(g+k)/2;d=(q+s)/2;c=(r+t)/2;var s=(s+e)/2,t=(t+g)/2,v=(d+s)/2,x=(c+t)/2;return pe(a,b,q,r,d,c,v,x,l,m,n,p)||pe(v,x,s,t,e,g,h,k,l,m,n,p)} function qe(a,b,c,d,e,g,h,k,l,m){if(oe(a,b,h,k,l,c,d)&&oe(a,b,h,k,l,e,g))Jb(m,a,b,0,0),Jb(m,h,k,0,0);else{var n=(a+c)/2,p=(b+d)/2,q=(c+e)/2,r=(d+g)/2;e=(e+h)/2;g=(g+k)/2;d=(n+q)/2;c=(p+r)/2;var q=(q+e)/2,r=(r+g)/2,s=(d+q)/2,t=(c+r)/2;qe(a,b,n,p,d,c,s,t,l,m);qe(s,t,q,r,e,g,h,k,l,m)}} function re(a,b,c,d,e,g,h,k,l,m){if(oe(a,b,h,k,l,c,d)&&oe(a,b,h,k,l,e,g))0===m.length&&(m.push(a),m.push(b)),m.push(h),m.push(k);else{var n=(a+c)/2,p=(b+d)/2,q=(c+e)/2,r=(d+g)/2;e=(e+h)/2;g=(g+k)/2;d=(n+q)/2;c=(p+r)/2;var q=(q+e)/2,r=(r+g)/2,s=(d+q)/2,t=(c+r)/2;re(a,b,n,p,d,c,s,t,l,m);re(s,t,q,r,e,g,h,k,l,m)}} function se(a,b,c,d,e,g,h,k,l,m,n,p,q,r){var s=1-l;a=a*s+c*l;b=b*s+d*l;c=c*s+e*l;d=d*s+g*l;e=e*s+h*l;g=g*s+k*l;k=a*s+c*l;h=b*s+d*l;c=c*s+e*l;d=d*s+g*l;m.x=a;m.y=b;n.x=k;n.y=h;p.x=k*s+c*l;p.y=h*s+d*l;q.x=c;q.y=d;r.x=e;r.y=g}function te(a,b,c,d,e,g,h,k,l,m){if(oe(a,b,e,g,m,c,d))return oe(a,b,e,g,m,k,l);var n=(a+c)/2,p=(b+d)/2;c=(c+e)/2;d=(d+g)/2;var q=(n+c)/2,r=(p+d)/2;return te(a,b,n,p,q,r,h,k,l,m)||te(q,r,c,d,e,g,h,k,l,m)} function ue(a,b,c,d,e,g,h,k){if(oe(a,b,e,g,h,c,d))Jb(k,a,b,0,0),Jb(k,e,g,0,0);else{var l=(a+c)/2,m=(b+d)/2;c=(c+e)/2;d=(d+g)/2;var n=(l+c)/2,p=(m+d)/2;ue(a,b,l,m,n,p,h,k);ue(n,p,c,d,e,g,h,k)}}function Ge(a,b,c,d,e,g,h,k){if(oe(a,b,e,g,h,c,d))0===k.length&&(k.push(a),k.push(b)),k.push(e),k.push(g);else{var l=(a+c)/2,m=(b+d)/2;c=(c+e)/2;d=(d+g)/2;var n=(l+c)/2,p=(m+d)/2;Ge(a,b,l,m,n,p,h,k);Ge(n,p,c,d,e,g,h,k)}} -function He(a,b,c,d,e,g,h,k,l,m,n,p,q,r){0>=q&&(q=1E-6);if(oe(a,b,h,k,q,c,d)&&oe(a,b,h,k,q,e,g)){var s=(a-h)*(m-p)-(b-k)*(l-n);if(0===s)return!1;q=((a*k-b*h)*(l-n)-(a-h)*(l*p-m*n))/s;s=((a*k-b*h)*(m-p)-(b-k)*(l*p-m*n))/s;if((l>n?l-n:n-l)<(m>p?m-p:p-m)){if(h=l=0,bh)return!1}else if(ah)return!1;r.x=q;r.y=s;return!0}var s=(a+c)/2,t=(b+d)/2;c=(c+e)/2;d=(d+g)/2;e=(e+h)/2;g=(g+k)/2;var v=(s+c)/2,x=(t+d)/2;c=(c+e)/2;d=(d+g)/2;var z=(v+c)/2,A=(x+d)/2, -B=(n-l)*(n-l)+(p-m)*(p-m),L=!1;He(a,b,s,t,v,x,z,A,l,m,n,p,q,r)&&(b=(r.x-l)*(r.x-l)+(r.y-m)*(r.y-m),b=q&&(q=1E-6);if(oe(a,b,h,k,q,c,d)&&oe(a,b,h,k,q,e,g)){var s=(a-h)*(m-p)-(b-k)*(l-n);if(0===s)return!1;q=((a*k-b*h)*(l-n)-(a-h)*(l*p-m*n))/s;s=((a*k-b*h)*(m-p)-(b-k)*(l*p-m*n))/s;if((l>n?l-n:n-l)<(m>p?m-p:p-m)){if(h=l=0,bh)return!1}else if(ah)return!1;r.x=q;r.y=s;return!0}var s=(a+c)/2,t=(b+d)/2;c=(c+e)/2;d=(d+g)/2;e=(e+h)/2;g=(g+k)/2;var v=(s+c)/2,x=(t+d)/2;c=(c+e)/2;d=(d+g)/2;var y=(v+c)/2,A=(x+d)/2, +B=(n-l)*(n-l)+(p-m)*(p-m),L=!1;He(a,b,s,t,v,x,y,A,l,m,n,p,q,r)&&(b=(r.x-l)*(r.x-l)+(r.y-m)*(r.y-m),b=q&&(q=1E-6);if(oe(a,b,h,k,q,c,d)&&oe(a,b,h,k,q,e,g)){q=(a-h)*(m-p)-(b-k)*(l-n);if(0===q)return r;var s=((a*k-b*h)*(l-n)-(a-h)*(l*p-m*n))/q,t=((a*k-b*h)*(m-p)-(b-k)*(l*p-m*n))/q;if(s>=n)return r;if((l>n?l-n:n-l)<(m>p?m-p:p-m)){if(a=l=0,ba)return r}else if(aa)return r;0q&&r--}else{var s=(a+c)/2,t=(b+d)/2,v=(c+e)/2,x=(d+g)/2;e=(e+h)/2;g=(g+k)/2;d=(s+v)/2;c=(t+x)/2;var v=(v+e)/2,x=(x+g)/2, -z=(d+v)/2,A=(c+x)/2,r=r+Ie(a,b,s,t,d,c,z,A,l,m,n,p,q),r=r+Ie(z,A,v,x,e,g,h,k,l,m,n,p,q)}return r} -function kb(a,b,c,d,e,g,h){if(od(a,c)){var k=0;c=0;bc)return h.x=a,h.y=c,!1;h.x=a;h.y=d;return!0}if(od(b,d)){ac)return h.x=c,h.y=b,!1;h.x=d;h.y=b;return!0}k=((a-e)*(a-c)+(b-g)*(b-d))/((c-a)*(c-a)+(d-b)*(d-b));if(-5E-6>k)return h.x=a,h.y=b,!1;if(1.000005c)return l.x=a,l.y=c,!1;l.x=a;l.y=g;return!0}h=(d-b)/(c-a);if(od(k,h))return kb(a,b,c,d,e,g,l),!1;e=(h*a-k*e+g-b)/(h-k);if(od(h,0)){ac)return l.x=c,l.y=b,!1;l.x=e;l.y=b;return!0}g= +y=(d+v)/2,A=(c+x)/2,r=r+Ie(a,b,s,t,d,c,y,A,l,m,n,p,q),r=r+Ie(y,A,v,x,e,g,h,k,l,m,n,p,q)}return r} +function kb(a,b,c,d,e,g,h){if(rd(a,c)){var k=0;c=0;bc)return h.x=a,h.y=c,!1;h.x=a;h.y=d;return!0}if(rd(b,d)){ac)return h.x=c,h.y=b,!1;h.x=d;h.y=b;return!0}k=((a-e)*(a-c)+(b-g)*(b-d))/((c-a)*(c-a)+(d-b)*(d-b));if(-5E-6>k)return h.x=a,h.y=b,!1;if(1.000005c)return l.x=a,l.y=c,!1;l.x=a;l.y=g;return!0}h=(d-b)/(c-a);if(rd(k,h))return kb(a,b,c,d,e,g,l),!1;e=(h*a-k*e+g-b)/(h-k);if(rd(h,0)){ac)return l.x=c,l.y=b,!1;l.x=e;l.y=b;return!0}g= h*(e-a)+b;return kb(a,b,c,d,e,g,l)}function Ke(a,b,c,d,e,g,h,k,l){var m=1E21,n=a,p=b;if(Je(a,b,a,d,e,g,h,k,l)){var q=(l.x-e)*(l.x-e)+(l.y-g)*(l.y-g);qm} function Le(a,b,c,d,e,g,h,k,l){c=a-c;var m=e-h,n=h=0;0===c||0===m?0===c?(k=(g-k)/m,h=a,n=k*h+(g-k*e)):(d=(b-d)/c,h=e,n=d*h+(b-d*a)):(d=(b-d)/c,k=(g-k)/m,a=b-d*a,h=(g-k*e-a)/(d-k),n=d*h+a);l.n(h,n);return l} function Me(a,b,c){var d=b.x,e=b.y,g=c.x,h=c.y,k=a.left,l=a.right,m=a.top,n=a.bottom;return d===g?(g=a=0,e=m):e===h?(d=k):a.Ma(b)||a.Ma(c)||cf(k,m,l,m,d,e,g,h)||cf(l,m,l,n,d,e,g,h)||cf(l,n,k,n,d,e,g,h)||cf(k,n,k,m,d,e,g,h)?!0:!1}function cf(a,b,c,d,e,g,h,k){return 0>=df(a,b,c,d,e,g)*df(a,b,c,d,h,k)&&0>=df(e,g,h,k,a,b)*df(e,g,h,k,c,d)} function df(a,b,c,d,e,g){c-=a;d-=b;a=e-a;b=g-b;g=a*d-b*c;0===g&&(g=a*c+b*d,0g&&(g=0)));return 0>g?-1:0a&&(a+=360);360<=a&&(a-=360);return a} function ff(a,b,c,d){var e=Math.PI;d||(b*=e/180,c*=e/180);d=bc,g=0>d,h=0,k=h=0;ag;++g){m=.5*(d+e);if(m===d||m===e)break;k=l/(m+b);h=c/(m+a);k=k*k+h*h-1;if(0k)e=m;else break}n=b*n/(m+b)-n;p=a*p/(m+a)-p;a=Math.sqrt(n*n+p*p)}else a=Math.abs(p-m);else p=l*l-m*m,a=l*n,aa?"M"+this.Ga.toString()+" "+this.Ca.toString()+"L"+this.L.toString()+" "+this.M.toString():"M"+this.Ga.toFixed(a)+" "+this.Ca.toFixed(a)+"L"+this.L.toFixed(a)+" "+this.M.toFixed(a);case of:var b=new w(this.Ga,this.Ca,0,0);b.ZF(this.L,this.M,0,0);return 0>a?"M"+b.x.toString()+" "+b.y.toString()+"H"+b.right.toString()+"V"+b.bottom.toString()+"H"+b.left.toString()+"z":"M"+b.x.toFixed(a)+" "+b.y.toFixed(a)+"H"+b.right.toFixed(a)+ -"V"+b.bottom.toFixed(a)+"H"+b.left.toFixed(a)+"z";case pf:b=new w(this.Ga,this.Ca,0,0);b.ZF(this.L,this.M,0,0);if(0>a){var c=b.left.toString()+" "+(b.y+b.height/2).toString(),d=b.right.toString()+" "+(b.y+b.height/2).toString();return"M"+c+"A"+(b.width/2).toString()+" "+(b.height/2).toString()+" 0 0 1 "+d+"A"+(b.width/2).toString()+" "+(b.height/2).toString()+" 0 0 1 "+c}c=b.left.toFixed(a)+" "+(b.y+b.height/2).toFixed(a);d=b.right.toFixed(a)+" "+(b.y+b.height/2).toFixed(a);return"M"+c+"A"+(b.width/ -2).toFixed(a)+" "+(b.height/2).toFixed(a)+" 0 0 1 "+d+"A"+(b.width/2).toFixed(a)+" "+(b.height/2).toFixed(a)+" 0 0 1 "+c;case kf:for(var b="",c=this.cc.o,d=c.length,e=0;e=t-1?!0:null!==l[m+1].match(/[A-Za-z]/)}function d(){m++;return l[m]}function e(){var a=new N(parseFloat(d()),parseFloat(d()));n===n.toLowerCase()&&(a.x=s.x+a.x,a.y=s.y+a.y);return a}function g(){return s=e()}function h(){return r=e()}function k(){return"c"!==p.toLowerCase()&&"s"!==p.toLowerCase()?s:new N(2*s.x-r.x,2*s.y-r.y)}void 0===b&&(b=!1);"string"!==typeof a&&y.jc(a,"string",jf,"parse:str");a=a.replace(/,/gm," ");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm, +p*p)),n=l*p-n,a=Math.sqrt(n*n+a*a)):a=Math.abs(n-l);return a}function jf(a){1a?"M"+this.Ha.toString()+" "+this.Da.toString()+"L"+this.L.toString()+" "+this.M.toString():"M"+this.Ha.toFixed(a)+" "+this.Da.toFixed(a)+"L"+this.L.toFixed(a)+" "+this.M.toFixed(a);case of:var b=new w(this.Ha,this.Da,0,0);b.bG(this.L,this.M,0,0);return 0>a?"M"+b.x.toString()+" "+b.y.toString()+"H"+b.right.toString()+"V"+b.bottom.toString()+"H"+b.left.toString()+"z":"M"+b.x.toFixed(a)+" "+b.y.toFixed(a)+"H"+b.right.toFixed(a)+ +"V"+b.bottom.toFixed(a)+"H"+b.left.toFixed(a)+"z";case pf:b=new w(this.Ha,this.Da,0,0);b.bG(this.L,this.M,0,0);if(0>a){var c=b.left.toString()+" "+(b.y+b.height/2).toString(),d=b.right.toString()+" "+(b.y+b.height/2).toString();return"M"+c+"A"+(b.width/2).toString()+" "+(b.height/2).toString()+" 0 0 1 "+d+"A"+(b.width/2).toString()+" "+(b.height/2).toString()+" 0 0 1 "+c}c=b.left.toFixed(a)+" "+(b.y+b.height/2).toFixed(a);d=b.right.toFixed(a)+" "+(b.y+b.height/2).toFixed(a);return"M"+c+"A"+(b.width/ +2).toFixed(a)+" "+(b.height/2).toFixed(a)+" 0 0 1 "+d+"A"+(b.width/2).toFixed(a)+" "+(b.height/2).toFixed(a)+" 0 0 1 "+c;case kf:for(var b="",c=this.cc.o,d=c.length,e=0;e=t-1?!0:null!==l[m+1].match(/[A-Za-z]/)}function d(){m++;return l[m]}function e(){var a=new N(parseFloat(d()),parseFloat(d()));n===n.toLowerCase()&&(a.x=s.x+a.x,a.y=s.y+a.y);return a}function g(){return s=e()}function h(){return r=e()}function k(){return"c"!==p.toLowerCase()&&"s"!==p.toLowerCase()?s:new N(2*s.x-r.x,2*s.y-r.y)}void 0===b&&(b=!1);"string"!==typeof a&&z.jc(a,"string",jf,"parse:str");a=a.replace(/,/gm," ");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm, "$1 $2");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm,"$1 $2");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([^\s])/gm,"$1 $2");a=a.replace(/([^\s])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm,"$1 $2");a=a.replace(/([0-9])([+\-])/gm,"$1 $2");a=a.replace(/(\.[0-9]*)(\.)/gm,"$1 $2");a=a.replace(/([Aa](\s+[0-9]+){3})\s+([01])\s*([01])/gm,"$1 $3 $4 ");a=a.replace(/[\s\r\t\n]+/gm," ");a=a.replace(/^\s+|\s+$/g,"");for(var l=a.split(" "),m=-1,n="",p="",q=new N(0,0),r=new N(0,0),s=new N(0, -0),t=l.length,v=y.v(),x=!1,z=!1,A=!0;!(m>=t-1);)if(p=n,n=d(),""!==n)switch(n.toUpperCase()){case "X":A=!0;z=x=!1;break;case "M":var B=g();null===v.$b||!0===A?(R(v,B.x,B.y,x,!1,!z),A=!1):v.moveTo(B.x,B.y);for(q=s;!c();)B=g(),v.lineTo(B.x,B.y);break;case "L":for(;!c();)B=g(),v.lineTo(B.x,B.y);break;case "H":for(;!c();)s=B=new N((n===n.toLowerCase()?s.x:0)+parseFloat(d()),s.y),v.lineTo(s.x,s.y);break;case "V":for(;!c();)s=B=new N(s.x,(n===n.toLowerCase()?s.y:0)+parseFloat(d())),v.lineTo(s.x,s.y);break; +0),t=l.length,v=z.v(),x=!1,y=!1,A=!0;!(m>=t-1);)if(p=n,n=d(),""!==n)switch(n.toUpperCase()){case "X":A=!0;y=x=!1;break;case "M":var B=g();null===v.$b||!0===A?(R(v,B.x,B.y,x,!1,!y),A=!1):v.moveTo(B.x,B.y);for(q=s;!c();)B=g(),v.lineTo(B.x,B.y);break;case "L":for(;!c();)B=g(),v.lineTo(B.x,B.y);break;case "H":for(;!c();)s=B=new N((n===n.toLowerCase()?s.x:0)+parseFloat(d()),s.y),v.lineTo(s.x,s.y);break;case "V":for(;!c();)s=B=new N(s.x,(n===n.toLowerCase()?s.y:0)+parseFloat(d())),v.lineTo(s.x,s.y);break; case "C":for(;!c();){var L=e(),H=h(),B=g();S(v,L.x,L.y,H.x,H.y,B.x,B.y)}break;case "S":for(;!c();)L=k(),H=h(),B=g(),S(v,L.x,L.y,H.x,H.y,B.x,B.y);break;case "Q":for(;!c();)H=h(),B=g(),zf(v,H.x,H.y,B.x,B.y);break;case "T":for(;!c();)r=H=k(),B=g(),zf(v,H.x,H.y,B.x,B.y);break;case "B":for(;!c();){var B=parseFloat(d()),L=parseFloat(d()),H=parseFloat(d()),U=parseFloat(d()),ea=parseFloat(d()),W=ea,P=!1;c()||(W=parseFloat(d()),c()||(P=0!==parseFloat(d())));n===n.toLowerCase()&&(H+=s.x,U+=s.y);v.arcTo(B,L, H,U,ea,W,P)}break;case "A":for(;!c();)L=Math.abs(parseFloat(d())),H=Math.abs(parseFloat(d())),U=parseFloat(d()),ea=!!parseFloat(d()),W=!!parseFloat(d()),B=g(),Af(v,L,H,U,ea,W,B.x,B.y);break;case "Z":B=v.q.cc.o[v.q.cc.length-1];T(v);s=q;break;case "F":B="";for(L=1;l[m+L];)if(null!==l[m+L].match(/[Uu]/))L++;else if(null===l[m+L].match(/[A-Za-z]/))L++;else{B=l[m+L];break}B.match(/[Mm]/)?x=!0:Bf(v);break;case "U":B="";for(L=1;l[m+L];)if(null!==l[m+L].match(/[Ff]/))L++;else if(null===l[m+L].match(/[A-Za-z]/))L++; -else{B=l[m+L];break}B.match(/[Mm]/)?z=!0:v.fb(!1)}q=v.q;y.u(v);if(b)for(v=q.cc.i;v.next();)B=v.value,B.Nt=!0;return q};function Cf(a,b){for(var c=a.length,d=y.O(),e=0;eh&&(h+=360),s.Ge+=h);0>a&&(s.Ge=180-s.Ge,s.Mf=-s.Mf);0>d&&(s.Ge=-s.Ge,s.Mf=-s.Mf);s.radiusX*=Math.sqrt(a*a+c*c);void 0!==s.radiusY&&(s.radiusY*=Math.sqrt(b*b+d*d));break;case If:h=s.L;k=s.M;s.L=h* -a+k*c+e;s.M=h*b+k*d+g;0!==b&&(h=180*Math.atan2(b,a)/Math.PI,0>h&&(h+=360),s.wj+=h);0>a&&(s.wj=180-s.wj,s.Nl=!s.Nl);0>d&&(s.wj=-s.wj,s.Nl=!s.Nl);s.radiusX*=Math.sqrt(a*a+c*c);s.radiusY*=Math.sqrt(b*b+d*d);break;default:y.k("Unknown Segment type: "+s.type)}}}}this.hb=!0;return this}; -jf.prototype.Ma=function(a,b,c,d){var e=a.x,g=a.y,h=this.vb.x-20;a=a.y;for(var k=0,l=0,m=0,n=0,p=0,q=0,r=this.cc.o,s=r.length,t=0;th&&(h+=360),s.Fe+=h);0>a&&(s.Fe=180-s.Fe,s.Lf=-s.Lf);0>d&&(s.Fe=-s.Fe,s.Lf=-s.Lf);s.radiusX*=Math.sqrt(a*a+c*c);void 0!==s.radiusY&&(s.radiusY*=Math.sqrt(b*b+d*d));break;case If:h=s.L;k=s.M;s.L=h* +a+k*c+e;s.M=h*b+k*d+g;0!==b&&(h=180*Math.atan2(b,a)/Math.PI,0>h&&(h+=360),s.vj+=h);0>a&&(s.vj=180-s.vj,s.Nl=!s.Nl);0>d&&(s.vj=-s.vj,s.Nl=!s.Nl);s.radiusX*=Math.sqrt(a*a+c*c);s.radiusY*=Math.sqrt(b*b+d*d);break;default:z.k("Unknown Segment type: "+s.type)}}}}this.hb=!0;return this}; +jf.prototype.Ma=function(a,b,c,d){var e=a.x,g=a.y,h=this.vb.x-20;a=a.y;for(var k=0,l=0,m=0,n=0,p=0,q=0,r=this.cc.o,s=r.length,t=0;t=a)return 0;if((e>h?e-h:h-e)<(g>k?g-k:k-g)){if(e=a=0,ge)return 0}else if(ee)return 0;return 0a||1a)return n=(a-q)/p,y.xa(c),new N(b+(e-b)*n,d+(g-d)*n);q+=p}b=e;d=g}y.xa(c);return null};y.defineProperty(jf,{type:"type"},function(){return this.ba},function(a){this.ba!==a&&(u&&y.Ba(a,jf,jf,"type"),this.G&&y.oa(this,a),this.ba=a,this.hb=!0)}); -y.defineProperty(jf,{Ga:"startX"},function(){return this.xc},function(a){this.xc!==a&&(u&&y.p(a,jf,"startX"),this.G&&y.oa(this,a),this.xc=a,this.hb=!0)});y.defineProperty(jf,{Ca:"startY"},function(){return this.Cc},function(a){this.Cc!==a&&(u&&y.p(a,jf,"startY"),this.G&&y.oa(this,a),this.Cc=a,this.hb=!0)});y.defineProperty(jf,{L:"endX"},function(){return this.zb},function(a){this.zb!==a&&(u&&y.p(a,jf,"endX"),this.G&&y.oa(this,a),this.zb=a,this.hb=!0)}); -y.defineProperty(jf,{M:"endY"},function(){return this.Gb},function(a){this.Gb!==a&&(u&&y.p(a,jf,"endY"),this.G&&y.oa(this,a),this.Gb=a,this.hb=!0)});y.defineProperty(jf,{cc:"figures"},function(){return this.Bj},function(a){this.Bj!==a&&(u&&y.l(a,J,jf,"figures"),this.G&&y.oa(this,a),this.Bj=a,this.hb=!0)});jf.prototype.add=jf.prototype.add=function(a){this.Bj.add(a);return this}; -jf.prototype.setSpots=function(a,b,c,d,e,g,h,k){this.G&&y.oa(this);this.di=(new Q(a,b,e,g)).freeze();this.ei=(new Q(c,d,h,k)).freeze();return this};y.defineProperty(jf,{C:"spot1"},function(){return this.di},function(a){u&&y.l(a,Q,jf,"spot1");this.G&&y.oa(this,a);this.di=a.U()});y.defineProperty(jf,{D:"spot2"},function(){return this.ei},function(a){u&&y.l(a,Q,jf,"spot2");this.G&&y.oa(this,a);this.ei=a.U()}); -y.defineProperty(jf,{ae:"defaultStretch"},function(){return this.Di},function(a){u&&y.Ba(a,O,jf,"stretch");this.G&&y.oa(this,a);this.Di=a});y.w(jf,{vb:"bounds"},function(){this.eA()&&(this.aB(),this.sh());return this.Wu});function lf(a,b,c,d){y.lc(this);this.G=!1;void 0===c&&(c=!0);this.jm=c;void 0===d&&(d=!0);this.uo=d;void 0!==a?(u&&y.p(a,lf,"sx"),this.xc=a):this.xc=0;void 0!==b?(u&&y.p(b,lf,"sy"),this.Cc=b):this.Cc=0;this.No=new J(Pf);this.mw=this.No.H;this.hb=!0}y.ia("PathFigure",lf);y.ki(lf); -lf.prototype.copy=function(){var a=new lf;a.jm=this.jm;a.uo=this.uo;a.xc=this.xc;a.Cc=this.Cc;for(var b=this.No.o,c=b.length,d=a.No,e=0;ea?"M"+this.Ga.toString()+" "+this.Ca.toString():"M"+this.Ga.toFixed(a)+" "+this.Ca.toFixed(a),c=this.Ab.o,d=c.length,e=0;ea&&(a+=360),this.Ed=a,this.Oe=0,u&&y.p(d,Pf,"x1"),this.nh=Math.max(d,0),u&&y.p(e,Pf,"y1"),this.Ag=Math.max(e,0),this.zo="boolean"===typeof h?!!h:!1,this.Nn=!!k):(u&&y.p(d,Pf,"x1"),this.Ed=d,u&&y.p(e, -Pf,"y1"),this.Oe=e,u&&y.p(g,Pf,"x2"),a===Hf&&(g=Math.max(g,0)),this.nh=g,"number"===typeof h?(a===Hf&&(h=Math.max(h,0)),this.Ag=h):this.Ag=0,this.Nn=this.zo=!1);this.Th=!1;this.hb=!0;this.og=null}y.ia("PathSegment",Pf);y.ki(Pf);Pf.prototype.copy=function(){var a=new Pf;a.ba=this.ba;a.zb=this.zb;a.Gb=this.Gb;a.Ed=this.Ed;a.Oe=this.Oe;a.nh=this.nh;a.Ag=this.Ag;a.zo=this.zo;a.Nn=this.Nn;a.Th=this.Th;a.hb=this.hb;return a}; -Pf.prototype.equalsApprox=Pf.prototype.Mc=function(a){if(!(a instanceof Pf)||this.type!==a.type||this.ex!==a.ex)return!1;switch(this.type){case Ef:case rf:return gb(this.L,a.L)&&gb(this.M,a.M);case Ff:return gb(this.L,a.L)&&gb(this.M,a.M)&&gb(this.zc,a.zc)&&gb(this.Qc,a.Qc)&&gb(this.Bh,a.Bh)&&gb(this.Ch,a.Ch);case Gf:return gb(this.L,a.L)&&gb(this.M,a.M)&&gb(this.zc,a.zc)&&gb(this.Qc,a.Qc);case Hf:return gb(this.Ge,a.Ge)&&gb(this.Mf,a.Mf)&&gb(this.ra,a.ra)&&gb(this.za,a.za)&&gb(this.radiusX,a.radiusX)&& -gb(this.radiusY,a.radiusY);case If:return this.Nl===a.Nl&&this.jx===a.jx&&gb(this.wj,a.wj)&&gb(this.L,a.L)&&gb(this.M,a.M)&&gb(this.radiusX,a.radiusX)&&gb(this.radiusY,a.radiusY);default:return!1}}; -Pf.prototype.toString=function(a){void 0===a&&(a=-1);var b="";switch(this.type){case Ef:b=0>a?"M"+this.L.toString()+" "+this.M.toString():"M"+this.L.toFixed(a)+" "+this.M.toFixed(a);break;case rf:b=0>a?"L"+this.L.toString()+" "+this.M.toString():"L"+this.L.toFixed(a)+" "+this.M.toFixed(a);break;case Ff:b=0>a?"C"+this.zc.toString()+" "+this.Qc.toString()+" "+this.Bh.toString()+" "+this.Ch.toString()+" "+this.L.toString()+" "+this.M.toString():"C"+this.zc.toFixed(a)+" "+this.Qc.toFixed(a)+" "+this.Bh.toFixed(a)+ -" "+this.Ch.toFixed(a)+" "+this.L.toFixed(a)+" "+this.M.toFixed(a);break;case Gf:b=0>a?"Q"+this.zc.toString()+" "+this.Qc.toString()+" "+this.L.toString()+" "+this.M.toString():"Q"+this.zc.toFixed(a)+" "+this.Qc.toFixed(a)+" "+this.L.toFixed(a)+" "+this.M.toFixed(a);break;case Hf:b=0>a?"B"+this.Ge.toString()+" "+this.Mf.toString()+" "+this.ra.toString()+" "+this.za.toString()+" "+this.radiusX:"B"+this.Ge.toFixed(a)+" "+this.Mf.toFixed(a)+" "+this.ra.toFixed(a)+" "+this.za.toFixed(a)+" "+this.radiusX; -break;case If:b=0>a?"A"+this.radiusX.toString()+" "+this.radiusY.toString()+" "+this.wj.toString()+" "+(this.jx?1:0)+" "+(this.Nl?1:0)+" "+this.L.toString()+" "+this.M.toString():"A"+this.radiusX.toFixed(a)+" "+this.radiusY.toFixed(a)+" "+this.wj.toFixed(a)+" "+(this.jx?1:0)+" "+(this.Nl?1:0)+" "+this.L.toFixed(a)+" "+this.M.toFixed(a);break;default:b=this.type.toString()}return b+(this.Th?"z":"")};var Ef;Pf.Move=Ef=y.s(Pf,"Move",0);var rf;Pf.Line=rf=y.s(Pf,"Line",1);var Ff; -Pf.Bezier=Ff=y.s(Pf,"Bezier",2);var Gf;Pf.QuadraticBezier=Gf=y.s(Pf,"QuadraticBezier",3);var Hf;Pf.Arc=Hf=y.s(Pf,"Arc",4);var If;Pf.SvgArc=If=y.s(Pf,"SvgArc",4);Pf.prototype.freeze=function(){this.G=!0;return this};Pf.prototype.Wa=function(){this.G=!1;return this};Pf.prototype.close=Pf.prototype.close=function(){this.Th=!0;return this}; -function Jf(a,b){if(null!==a.og&&!1===b.hb)return a.og;var c=a.radiusX,d=a.radiusY;void 0===d&&(d=c);if(0===c||0===d)return a.og=[],a.og;var e=a.Ed,g=a.Oe,h=ff(c=r?h=Math.PI:1<=r&&(h=0);!l&&0h&&(h+=2*Math.PI);l=b>g?1:b/g;r=b>g?g/b:1;b=ff(b>g?b:g,n,n+h,!0);g=y.Gh();g.reset();g.translate(c,d);g.rotate(a.Ed,0,0);g.scale(l,r);Cf(b,g);y.jf(g);a.og=b;return a.og} -y.defineProperty(Pf,{ex:"isClosed"},function(){return this.Th},function(a){this.Th!==a&&(this.Th=a,this.hb=!0)});y.defineProperty(Pf,{type:"type"},function(){return this.ba},function(a){u&&y.Ba(a,Pf,Pf,"type");this.G&&y.oa(this,a);this.ba=a;this.hb=!0});y.defineProperty(Pf,{L:"endX"},function(){return this.zb},function(a){u&&y.p(a,Pf,"endX");this.G&&y.oa(this,a);this.zb=a;this.hb=!0}); -y.defineProperty(Pf,{M:"endY"},function(){return this.Gb},function(a){u&&y.p(a,Pf,"endY");this.G&&y.oa(this,a);this.Gb=a;this.hb=!0});y.defineProperty(Pf,{zc:"point1X"},function(){return this.Ed},function(a){u&&y.p(a,Pf,"point1X");this.G&&y.oa(this,a);this.Ed=a;this.hb=!0});y.defineProperty(Pf,{Qc:"point1Y"},function(){return this.Oe},function(a){u&&y.p(a,Pf,"point1Y");this.G&&y.oa(this,a);this.Oe=a;this.hb=!0}); -y.defineProperty(Pf,{Bh:"point2X"},function(){return this.nh},function(a){u&&y.p(a,Pf,"point2X");this.G&&y.oa(this,a);this.nh=a;this.hb=!0});y.defineProperty(Pf,{Ch:"point2Y"},function(){return this.Ag},function(a){u&&y.p(a,Pf,"point2Y");this.G&&y.oa(this,a);this.Ag=a;this.hb=!0});y.defineProperty(Pf,{ra:"centerX"},function(){return this.Ed},function(a){u&&y.p(a,Pf,"centerX");this.G&&y.oa(this,a);this.Ed=a;this.hb=!0}); -y.defineProperty(Pf,{za:"centerY"},function(){return this.Oe},function(a){u&&y.p(a,Pf,"centerY");this.G&&y.oa(this,a);this.Oe=a;this.hb=!0});y.defineProperty(Pf,{radiusX:"radiusX"},function(){return this.nh},function(a){u&&y.p(a,Pf,"radiusX");0>a&&y.ka(a,">= zero",Pf,"radiusX");this.G&&y.oa(this,a);this.nh=a;this.hb=!0});y.defineProperty(Pf,{radiusY:"radiusY"},function(){return this.Ag},function(a){u&&y.p(a,Pf,"radiusY");0>a&&y.ka(a,">= zero",Pf,"radiusY");this.G&&y.oa(this,a);this.Ag=a;this.hb=!0}); -y.defineProperty(Pf,{Ge:"startAngle"},function(){return this.zb},function(a){this.zb!==a&&(this.G&&y.oa(this,a),u&&y.p(a,Pf,"startAngle"),a%=360,0>a&&(a+=360),this.zb=a,this.hb=!0)});y.defineProperty(Pf,{Mf:"sweepAngle"},function(){return this.Gb},function(a){u&&y.p(a,Pf,"sweepAngle");this.G&&y.oa(this,a);360a&&(a=-360);this.Gb=a;this.hb=!0});y.defineProperty(Pf,{Nl:"isClockwiseArc"},function(){return this.Nn},function(a){this.G&&y.oa(this,a);this.Nn=a;this.hb=!0}); -y.defineProperty(Pf,{jx:"isLargeArc"},function(){return this.zo},function(a){this.G&&y.oa(this,a);this.zo=a;this.hb=!0});y.defineProperty(Pf,{wj:"xAxisRotation"},function(){return this.Ed},function(a){u&&y.p(a,Pf,"xAxisRotation");a%=360;0>a&&(a+=360);this.G&&y.oa(this,a);this.Ed=a;this.hb=!0}); -function Qf(){this.Z=null;this.rz=(new N(0,0)).freeze();this.Ay=(new N(0,0)).freeze();this.Su=this.Ov=0;this.Tu=1;this.Cv="";this.ww=this.iv=!1;this.ev=this.Vu=0;this.xj=this.pv=this.zv=!1;this.Zq=null;this.uw=0;this.Cg=this.tw=null}y.ia("InputEvent",Qf); -Qf.prototype.copy=function(){var a=new Qf;a.Z=this.Z;a.rz.assign(this.ve);a.Ay.assign(this.ga);a.Ov=this.Ov;a.Su=this.Su;a.Tu=this.Tu;a.Cv=this.Cv;a.iv=this.iv;a.ww=this.ww;a.Vu=this.Vu;a.ev=this.ev;a.zv=this.zv;a.pv=this.pv;a.xj=this.xj;a.Zq=this.Zq;a.uw=this.uw;a.tw=this.tw;a.Cg=this.Cg;return a}; -Qf.prototype.toString=function(){var a="^";0!==this.yd&&(a+="M:"+this.yd);0!==this.button&&(a+="B:"+this.button);""!==this.key&&(a+="K:"+this.key);0!==this.ef&&(a+="C:"+this.ef);0!==this.Bl&&(a+="D:"+this.Bl);this.Gc&&(a+="h");this.bubbles&&(a+="b");null!==this.ga&&(a+="@"+this.ga.toString());return a};y.defineProperty(Qf,{h:"diagram"},function(){return this.Z},function(a){this.Z=a});y.defineProperty(Qf,{ve:"viewPoint"},function(){return this.rz},function(a){y.l(a,N,Qf,"viewPoint");this.rz.assign(a)}); -y.defineProperty(Qf,{ga:"documentPoint"},function(){return this.Ay},function(a){y.l(a,N,Qf,"documentPoint");this.Ay.assign(a)});y.defineProperty(Qf,{yd:"modifiers"},function(){return this.Ov},function(a){this.Ov=a});y.defineProperty(Qf,{button:"button"},function(){return this.Su},function(a){this.Su=a;if(null===this.event)switch(a){case 0:this.buttons=1;break;case 1:this.buttons=4;break;case 2:this.buttons=2}}); -y.defineProperty(Qf,{buttons:"buttons"},function(){return this.Tu},function(a){this.Tu=a});y.defineProperty(Qf,{key:"key"},function(){return this.Cv},function(a){this.Cv=a});y.defineProperty(Qf,{Dl:"down"},function(){return this.iv},function(a){this.iv=a});y.defineProperty(Qf,{up:"up"},function(){return this.ww},function(a){this.ww=a});y.defineProperty(Qf,{ef:"clickCount"},function(){return this.Vu},function(a){this.Vu=a}); -y.defineProperty(Qf,{Bl:"delta"},function(){return this.ev},function(a){this.ev=a});y.defineProperty(Qf,{Pt:"isMultiTouch"},function(){return this.zv},function(a){this.zv=a});y.defineProperty(Qf,{Gc:"handled"},function(){return this.pv},function(a){this.pv=a});y.defineProperty(Qf,{bubbles:"bubbles"},function(){return this.xj},function(a){this.xj=a});y.defineProperty(Qf,{event:"event"},function(){return this.Zq},function(a){this.Zq=a}); -y.w(Qf,{mj:"isTouchEvent"},function(){var a=window.TouchEvent;return a&&this.event instanceof a?!0:(a=window.PointerEvent)&&this.event instanceof a&&"touch"===this.event.pointerType});y.w(Qf,{rk:"isMac"},function(){return y.rk});y.defineProperty(Qf,{timestamp:"timestamp"},function(){return this.uw},function(a){this.uw=a});y.defineProperty(Qf,{Tg:"targetDiagram"},function(){return this.tw},function(a){this.tw=a}); -y.defineProperty(Qf,{He:"targetObject"},function(){return this.Cg},function(a){this.Cg=a});y.defineProperty(Qf,{control:"control"},function(){return 0!==(this.yd&1)},function(a){this.yd=a?this.yd|1:this.yd&-2});y.defineProperty(Qf,{shift:"shift"},function(){return 0!==(this.yd&4)},function(a){this.yd=a?this.yd|4:this.yd&-5});y.defineProperty(Qf,{alt:"alt"},function(){return 0!==(this.yd&2)},function(a){this.yd=a?this.yd|2:this.yd&-3}); -y.defineProperty(Qf,{Zt:"meta"},function(){return 0!==(this.yd&8)},function(a){this.yd=a?this.yd|8:this.yd&-9});y.defineProperty(Qf,{left:"left"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?0===this.button:0!==(this.buttons&1)},function(a){this.buttons=a?this.buttons|1:this.buttons&-2}); -y.defineProperty(Qf,{right:"right"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?2===this.button:0!==(this.buttons&2)},function(a){this.buttons=a?this.buttons|2:this.buttons&-3});y.defineProperty(Qf,{TK:"middle"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?1===this.button:0!==(this.buttons&4)},function(a){this.buttons=a?this.buttons|4:this.buttons&-5}); -function Rf(){this.Z=null;this.Ub="";this.Yv=this.rw=null;this.Uu=!1}y.ia("DiagramEvent",Rf);Rf.prototype.copy=function(){var a=new Rf;a.Z=this.Z;a.Ub=this.Ub;a.rw=this.rw;a.Yv=this.Yv;a.Uu=this.Uu;return a};Rf.prototype.toString=function(){var a="*"+this.name;this.cancel&&(a+="x");null!==this.SA&&(a+=":"+this.SA.toString());null!==this.yA&&(a+="("+this.yA.toString()+")");return a};y.defineProperty(Rf,{h:"diagram"},function(){return this.Z},function(a){this.Z=a}); -y.defineProperty(Rf,{name:"name"},function(){return this.Ub},function(a){this.Ub=a});y.defineProperty(Rf,{SA:"subject"},function(){return this.rw},function(a){this.rw=a});y.defineProperty(Rf,{yA:"parameter"},function(){return this.Yv},function(a){this.Yv=a});y.defineProperty(Rf,{cancel:"cancel"},function(){return this.Uu},function(a){this.Uu=a});function Sf(){this.wq=Tf;this.Em=this.Nv="";this.Wr=this.Xr=this.$r=this.as=this.Zr=this.Z=this.ke=null}y.ia("ChangedEvent",Sf);var Uf; -Sf.Transaction=Uf=y.s(Sf,"Transaction",-1);var Tf;Sf.Property=Tf=y.s(Sf,"Property",0);var Vf;Sf.Insert=Vf=y.s(Sf,"Insert",1);var Wf;Sf.Remove=Wf=y.s(Sf,"Remove",2);Sf.prototype.clear=Sf.prototype.clear=function(){this.Wr=this.Xr=this.$r=this.as=this.Zr=this.Z=this.ke=null}; -Sf.prototype.copy=function(){var a=new Sf;a.wq=this.wq;a.Nv=this.Nv;a.Em=this.Em;a.ke=this.ke;a.Z=this.Z;a.Zr=this.Zr;var b=this.as;a.as=y.Ya(b)&&"function"===typeof b.U?b.U():b;b=this.$r;a.$r=y.Ya(b)&&"function"===typeof b.U?b.U():b;b=this.Xr;a.Xr=y.Ya(b)&&"function"===typeof b.U?b.U():b;b=this.Wr;a.Wr=y.Ya(b)&&"function"===typeof b.U?b.U():b;return a}; -Sf.prototype.toString=function(){var a="",a=this.Dc===Uf?a+"* ":this.Dc===Tf?a+(null!==this.ha?"!m":"!d"):a+((null!==this.ha?"!m":"!d")+this.Dc);this.propertyName&&"string"===typeof this.propertyName&&(a+=" "+this.propertyName);this.rf&&this.rf!==this.propertyName&&(a+=" "+this.rf);a+=": ";this.Dc===Uf?null!==this.oldValue&&(a+=" "+this.oldValue):(null!==this.object&&(a+=ka(this.object)),null!==this.oldValue&&(a+=" old: "+ka(this.oldValue)),null!==this.Ng&&(a+=" "+this.Ng),null!==this.newValue&& -(a+=" new: "+ka(this.newValue)),null!==this.Lg&&(a+=" "+this.Lg));return a};Sf.prototype.getValue=Sf.prototype.na=function(a){return a?this.oldValue:this.newValue};Sf.prototype.getParam=function(a){return a?this.Ng:this.Lg};Sf.prototype.canUndo=Sf.prototype.canUndo=function(){return null!==this.ha||null!==this.h?!0:!1};Sf.prototype.undo=Sf.prototype.undo=function(){this.canUndo()&&(null!==this.ha?this.ha.Wm(this,!0):null!==this.h&&this.h.Wm(this,!0))}; -Sf.prototype.canRedo=Sf.prototype.canRedo=function(){return null!==this.ha||null!==this.h?!0:!1};Sf.prototype.redo=Sf.prototype.redo=function(){this.canRedo()&&(null!==this.ha?this.ha.Wm(this,!1):null!==this.h&&this.h.Wm(this,!1))};y.defineProperty(Sf,{ha:"model"},function(){return this.ke},function(a){this.ke=a});y.defineProperty(Sf,{h:"diagram"},function(){return this.Z},function(a){this.Z=a}); -y.defineProperty(Sf,{Dc:"change"},function(){return this.wq},function(a){u&&y.Ba(a,Sf,Sf,"change");this.wq=a});y.defineProperty(Sf,{rf:"modelChange"},function(){return this.Nv},function(a){u&&y.g(a,"string",Sf,"modelChange");this.Nv=a});y.defineProperty(Sf,{propertyName:"propertyName"},function(){return this.Em},function(a){u&&"string"!==typeof a&&y.g(a,"function",Sf,"propertyName");this.Em=a}); -y.w(Sf,{OE:"isTransactionFinished"},function(){return this.wq===Uf&&("CommittedTransaction"===this.Em||"FinishedUndo"===this.Em||"FinishedRedo"===this.Em)});y.defineProperty(Sf,{object:"object"},function(){return this.Zr},function(a){this.Zr=a});y.defineProperty(Sf,{oldValue:"oldValue"},function(){return this.as},function(a){this.as=a});y.defineProperty(Sf,{Ng:"oldParam"},function(){return this.$r},function(a){this.$r=a}); -y.defineProperty(Sf,{newValue:"newValue"},function(){return this.Xr},function(a){this.Xr=a});y.defineProperty(Sf,{Lg:"newParam"},function(){return this.Wr},function(a){this.Wr=a}); -function M(a){1a||1a)return n=(a-q)/p,z.xa(c),new N(b+(e-b)*n,d+(g-d)*n);q+=p}b=e;d=g}z.xa(c);return null};z.defineProperty(jf,{type:"type"},function(){return this.ba},function(a){this.ba!==a&&(u&&z.Ba(a,jf,jf,"type"),this.G&&z.oa(this,a),this.ba=a,this.hb=!0)}); +z.defineProperty(jf,{Ha:"startX"},function(){return this.xc},function(a){this.xc!==a&&(u&&z.p(a,jf,"startX"),this.G&&z.oa(this,a),this.xc=a,this.hb=!0)});z.defineProperty(jf,{Da:"startY"},function(){return this.Cc},function(a){this.Cc!==a&&(u&&z.p(a,jf,"startY"),this.G&&z.oa(this,a),this.Cc=a,this.hb=!0)});z.defineProperty(jf,{L:"endX"},function(){return this.zb},function(a){this.zb!==a&&(u&&z.p(a,jf,"endX"),this.G&&z.oa(this,a),this.zb=a,this.hb=!0)}); +z.defineProperty(jf,{M:"endY"},function(){return this.Gb},function(a){this.Gb!==a&&(u&&z.p(a,jf,"endY"),this.G&&z.oa(this,a),this.Gb=a,this.hb=!0)});z.defineProperty(jf,{cc:"figures"},function(){return this.Bj},function(a){this.Bj!==a&&(u&&z.l(a,J,jf,"figures"),this.G&&z.oa(this,a),this.Bj=a,this.hb=!0)});jf.prototype.add=jf.prototype.add=function(a){this.Bj.add(a);return this}; +jf.prototype.setSpots=function(a,b,c,d,e,g,h,k){this.G&&z.oa(this);this.bi=(new Q(a,b,e,g)).freeze();this.ci=(new Q(c,d,h,k)).freeze();return this};z.defineProperty(jf,{C:"spot1"},function(){return this.bi},function(a){u&&z.l(a,Q,jf,"spot1");this.G&&z.oa(this,a);this.bi=a.V()});z.defineProperty(jf,{D:"spot2"},function(){return this.ci},function(a){u&&z.l(a,Q,jf,"spot2");this.G&&z.oa(this,a);this.ci=a.V()}); +z.defineProperty(jf,{Zd:"defaultStretch"},function(){return this.Bi},function(a){u&&z.Ba(a,O,jf,"stretch");this.G&&z.oa(this,a);this.Bi=a});z.w(jf,{vb:"bounds"},function(){this.iA()&&(this.eB(),this.rh());return this.Xu});function lf(a,b,c,d){z.lc(this);this.G=!1;void 0===c&&(c=!0);this.im=c;void 0===d&&(d=!0);this.uo=d;void 0!==a?(u&&z.p(a,lf,"sx"),this.xc=a):this.xc=0;void 0!==b?(u&&z.p(b,lf,"sy"),this.Cc=b):this.Cc=0;this.No=new J(Pf);this.nw=this.No.H;this.hb=!0}z.ia("PathFigure",lf);z.ii(lf); +lf.prototype.copy=function(){var a=new lf;a.im=this.im;a.uo=this.uo;a.xc=this.xc;a.Cc=this.Cc;for(var b=this.No.o,c=b.length,d=a.No,e=0;ea?"M"+this.Ha.toString()+" "+this.Da.toString():"M"+this.Ha.toFixed(a)+" "+this.Da.toFixed(a),c=this.Ab.o,d=c.length,e=0;ea&&(a+=360),this.Dd=a,this.Ne=0,u&&z.p(d,Pf,"x1"),this.mh=Math.max(d,0),u&&z.p(e,Pf,"y1"),this.zg=Math.max(e,0),this.zo="boolean"===typeof h?!!h:!1,this.Nn=!!k):(u&&z.p(d,Pf,"x1"),this.Dd=d,u&&z.p(e, +Pf,"y1"),this.Ne=e,u&&z.p(g,Pf,"x2"),a===Hf&&(g=Math.max(g,0)),this.mh=g,"number"===typeof h?(a===Hf&&(h=Math.max(h,0)),this.zg=h):this.zg=0,this.Nn=this.zo=!1);this.Rh=!1;this.hb=!0;this.ng=null}z.ia("PathSegment",Pf);z.ii(Pf);Pf.prototype.copy=function(){var a=new Pf;a.ba=this.ba;a.zb=this.zb;a.Gb=this.Gb;a.Dd=this.Dd;a.Ne=this.Ne;a.mh=this.mh;a.zg=this.zg;a.zo=this.zo;a.Nn=this.Nn;a.Rh=this.Rh;a.hb=this.hb;return a}; +Pf.prototype.equalsApprox=Pf.prototype.Mc=function(a){if(!(a instanceof Pf)||this.type!==a.type||this.gx!==a.gx)return!1;switch(this.type){case Ef:case rf:return gb(this.L,a.L)&&gb(this.M,a.M);case Ff:return gb(this.L,a.L)&&gb(this.M,a.M)&&gb(this.zc,a.zc)&&gb(this.Qc,a.Qc)&&gb(this.Ah,a.Ah)&&gb(this.Bh,a.Bh);case Gf:return gb(this.L,a.L)&&gb(this.M,a.M)&&gb(this.zc,a.zc)&&gb(this.Qc,a.Qc);case Hf:return gb(this.Fe,a.Fe)&&gb(this.Lf,a.Lf)&&gb(this.ra,a.ra)&&gb(this.za,a.za)&&gb(this.radiusX,a.radiusX)&& +gb(this.radiusY,a.radiusY);case If:return this.Nl===a.Nl&&this.kx===a.kx&&gb(this.vj,a.vj)&&gb(this.L,a.L)&&gb(this.M,a.M)&&gb(this.radiusX,a.radiusX)&&gb(this.radiusY,a.radiusY);default:return!1}}; +Pf.prototype.toString=function(a){void 0===a&&(a=-1);var b="";switch(this.type){case Ef:b=0>a?"M"+this.L.toString()+" "+this.M.toString():"M"+this.L.toFixed(a)+" "+this.M.toFixed(a);break;case rf:b=0>a?"L"+this.L.toString()+" "+this.M.toString():"L"+this.L.toFixed(a)+" "+this.M.toFixed(a);break;case Ff:b=0>a?"C"+this.zc.toString()+" "+this.Qc.toString()+" "+this.Ah.toString()+" "+this.Bh.toString()+" "+this.L.toString()+" "+this.M.toString():"C"+this.zc.toFixed(a)+" "+this.Qc.toFixed(a)+" "+this.Ah.toFixed(a)+ +" "+this.Bh.toFixed(a)+" "+this.L.toFixed(a)+" "+this.M.toFixed(a);break;case Gf:b=0>a?"Q"+this.zc.toString()+" "+this.Qc.toString()+" "+this.L.toString()+" "+this.M.toString():"Q"+this.zc.toFixed(a)+" "+this.Qc.toFixed(a)+" "+this.L.toFixed(a)+" "+this.M.toFixed(a);break;case Hf:b=0>a?"B"+this.Fe.toString()+" "+this.Lf.toString()+" "+this.ra.toString()+" "+this.za.toString()+" "+this.radiusX:"B"+this.Fe.toFixed(a)+" "+this.Lf.toFixed(a)+" "+this.ra.toFixed(a)+" "+this.za.toFixed(a)+" "+this.radiusX; +break;case If:b=0>a?"A"+this.radiusX.toString()+" "+this.radiusY.toString()+" "+this.vj.toString()+" "+(this.kx?1:0)+" "+(this.Nl?1:0)+" "+this.L.toString()+" "+this.M.toString():"A"+this.radiusX.toFixed(a)+" "+this.radiusY.toFixed(a)+" "+this.vj.toFixed(a)+" "+(this.kx?1:0)+" "+(this.Nl?1:0)+" "+this.L.toFixed(a)+" "+this.M.toFixed(a);break;default:b=this.type.toString()}return b+(this.Rh?"z":"")};var Ef;Pf.Move=Ef=z.s(Pf,"Move",0);var rf;Pf.Line=rf=z.s(Pf,"Line",1);var Ff; +Pf.Bezier=Ff=z.s(Pf,"Bezier",2);var Gf;Pf.QuadraticBezier=Gf=z.s(Pf,"QuadraticBezier",3);var Hf;Pf.Arc=Hf=z.s(Pf,"Arc",4);var If;Pf.SvgArc=If=z.s(Pf,"SvgArc",4);Pf.prototype.freeze=function(){this.G=!0;return this};Pf.prototype.Wa=function(){this.G=!1;return this};Pf.prototype.close=Pf.prototype.close=function(){this.Rh=!0;return this}; +function Jf(a,b){if(null!==a.ng&&!1===b.hb)return a.ng;var c=a.radiusX,d=a.radiusY;void 0===d&&(d=c);if(0===c||0===d)return a.ng=[],a.ng;var e=a.Dd,g=a.Ne,h=ff(c=r?h=Math.PI:1<=r&&(h=0);!l&&0h&&(h+=2*Math.PI);l=b>g?1:b/g;r=b>g?g/b:1;b=ff(b>g?b:g,n,n+h,!0);g=z.Fh();g.reset();g.translate(c,d);g.rotate(a.Dd,0,0);g.scale(l,r);Cf(b,g);z.hf(g);a.ng=b;return a.ng} +z.defineProperty(Pf,{gx:"isClosed"},function(){return this.Rh},function(a){this.Rh!==a&&(this.Rh=a,this.hb=!0)});z.defineProperty(Pf,{type:"type"},function(){return this.ba},function(a){u&&z.Ba(a,Pf,Pf,"type");this.G&&z.oa(this,a);this.ba=a;this.hb=!0});z.defineProperty(Pf,{L:"endX"},function(){return this.zb},function(a){u&&z.p(a,Pf,"endX");this.G&&z.oa(this,a);this.zb=a;this.hb=!0}); +z.defineProperty(Pf,{M:"endY"},function(){return this.Gb},function(a){u&&z.p(a,Pf,"endY");this.G&&z.oa(this,a);this.Gb=a;this.hb=!0});z.defineProperty(Pf,{zc:"point1X"},function(){return this.Dd},function(a){u&&z.p(a,Pf,"point1X");this.G&&z.oa(this,a);this.Dd=a;this.hb=!0});z.defineProperty(Pf,{Qc:"point1Y"},function(){return this.Ne},function(a){u&&z.p(a,Pf,"point1Y");this.G&&z.oa(this,a);this.Ne=a;this.hb=!0}); +z.defineProperty(Pf,{Ah:"point2X"},function(){return this.mh},function(a){u&&z.p(a,Pf,"point2X");this.G&&z.oa(this,a);this.mh=a;this.hb=!0});z.defineProperty(Pf,{Bh:"point2Y"},function(){return this.zg},function(a){u&&z.p(a,Pf,"point2Y");this.G&&z.oa(this,a);this.zg=a;this.hb=!0});z.defineProperty(Pf,{ra:"centerX"},function(){return this.Dd},function(a){u&&z.p(a,Pf,"centerX");this.G&&z.oa(this,a);this.Dd=a;this.hb=!0}); +z.defineProperty(Pf,{za:"centerY"},function(){return this.Ne},function(a){u&&z.p(a,Pf,"centerY");this.G&&z.oa(this,a);this.Ne=a;this.hb=!0});z.defineProperty(Pf,{radiusX:"radiusX"},function(){return this.mh},function(a){u&&z.p(a,Pf,"radiusX");0>a&&z.ka(a,">= zero",Pf,"radiusX");this.G&&z.oa(this,a);this.mh=a;this.hb=!0});z.defineProperty(Pf,{radiusY:"radiusY"},function(){return this.zg},function(a){u&&z.p(a,Pf,"radiusY");0>a&&z.ka(a,">= zero",Pf,"radiusY");this.G&&z.oa(this,a);this.zg=a;this.hb=!0}); +z.defineProperty(Pf,{Fe:"startAngle"},function(){return this.zb},function(a){this.zb!==a&&(this.G&&z.oa(this,a),u&&z.p(a,Pf,"startAngle"),a%=360,0>a&&(a+=360),this.zb=a,this.hb=!0)});z.defineProperty(Pf,{Lf:"sweepAngle"},function(){return this.Gb},function(a){u&&z.p(a,Pf,"sweepAngle");this.G&&z.oa(this,a);360a&&(a=-360);this.Gb=a;this.hb=!0});z.defineProperty(Pf,{Nl:"isClockwiseArc"},function(){return this.Nn},function(a){this.G&&z.oa(this,a);this.Nn=a;this.hb=!0}); +z.defineProperty(Pf,{kx:"isLargeArc"},function(){return this.zo},function(a){this.G&&z.oa(this,a);this.zo=a;this.hb=!0});z.defineProperty(Pf,{vj:"xAxisRotation"},function(){return this.Dd},function(a){u&&z.p(a,Pf,"xAxisRotation");a%=360;0>a&&(a+=360);this.G&&z.oa(this,a);this.Dd=a;this.hb=!0}); +function Qf(){this.Z=null;this.uz=(new N(0,0)).freeze();this.By=(new N(0,0)).freeze();this.Tu=this.Pv=0;this.Uu=1;this.Dv="";this.xw=this.jv=!1;this.fv=this.Wu=0;this.xj=this.qv=this.Av=!1;this.Zq=null;this.vw=0;this.Bg=this.uw=null}z.ia("InputEvent",Qf); +Qf.prototype.copy=function(){var a=new Qf;a.Z=this.Z;a.uz.assign(this.te);a.By.assign(this.ga);a.Pv=this.Pv;a.Tu=this.Tu;a.Uu=this.Uu;a.Dv=this.Dv;a.jv=this.jv;a.xw=this.xw;a.Wu=this.Wu;a.fv=this.fv;a.Av=this.Av;a.qv=this.qv;a.xj=this.xj;a.Zq=this.Zq;a.vw=this.vw;a.uw=this.uw;a.Bg=this.Bg;return a}; +Qf.prototype.toString=function(){var a="^";0!==this.xd&&(a+="M:"+this.xd);0!==this.button&&(a+="B:"+this.button);""!==this.key&&(a+="K:"+this.key);0!==this.df&&(a+="C:"+this.df);0!==this.Bl&&(a+="D:"+this.Bl);this.Gc&&(a+="h");this.bubbles&&(a+="b");null!==this.ga&&(a+="@"+this.ga.toString());return a};z.defineProperty(Qf,{h:"diagram"},function(){return this.Z},function(a){this.Z=a});z.defineProperty(Qf,{te:"viewPoint"},function(){return this.uz},function(a){z.l(a,N,Qf,"viewPoint");this.uz.assign(a)}); +z.defineProperty(Qf,{ga:"documentPoint"},function(){return this.By},function(a){z.l(a,N,Qf,"documentPoint");this.By.assign(a)});z.defineProperty(Qf,{xd:"modifiers"},function(){return this.Pv},function(a){this.Pv=a});z.defineProperty(Qf,{button:"button"},function(){return this.Tu},function(a){this.Tu=a;if(null===this.event)switch(a){case 0:this.buttons=1;break;case 1:this.buttons=4;break;case 2:this.buttons=2}}); +z.defineProperty(Qf,{buttons:"buttons"},function(){return this.Uu},function(a){this.Uu=a});z.defineProperty(Qf,{key:"key"},function(){return this.Dv},function(a){this.Dv=a});z.defineProperty(Qf,{Dl:"down"},function(){return this.jv},function(a){this.jv=a});z.defineProperty(Qf,{up:"up"},function(){return this.xw},function(a){this.xw=a});z.defineProperty(Qf,{df:"clickCount"},function(){return this.Wu},function(a){this.Wu=a}); +z.defineProperty(Qf,{Bl:"delta"},function(){return this.fv},function(a){this.fv=a});z.defineProperty(Qf,{Qt:"isMultiTouch"},function(){return this.Av},function(a){this.Av=a});z.defineProperty(Qf,{Gc:"handled"},function(){return this.qv},function(a){this.qv=a});z.defineProperty(Qf,{bubbles:"bubbles"},function(){return this.xj},function(a){this.xj=a});z.defineProperty(Qf,{event:"event"},function(){return this.Zq},function(a){this.Zq=a}); +z.w(Qf,{kj:"isTouchEvent"},function(){var a=window.TouchEvent;return a&&this.event instanceof a?!0:(a=window.PointerEvent)&&this.event instanceof a&&"touch"===this.event.pointerType});z.w(Qf,{rk:"isMac"},function(){return z.rk});z.defineProperty(Qf,{timestamp:"timestamp"},function(){return this.vw},function(a){this.vw=a});z.defineProperty(Qf,{Sg:"targetDiagram"},function(){return this.uw},function(a){this.uw=a}); +z.defineProperty(Qf,{Ge:"targetObject"},function(){return this.Bg},function(a){this.Bg=a});z.defineProperty(Qf,{control:"control"},function(){return 0!==(this.xd&1)},function(a){this.xd=a?this.xd|1:this.xd&-2});z.defineProperty(Qf,{shift:"shift"},function(){return 0!==(this.xd&4)},function(a){this.xd=a?this.xd|4:this.xd&-5});z.defineProperty(Qf,{alt:"alt"},function(){return 0!==(this.xd&2)},function(a){this.xd=a?this.xd|2:this.xd&-3}); +z.defineProperty(Qf,{$t:"meta"},function(){return 0!==(this.xd&8)},function(a){this.xd=a?this.xd|8:this.xd&-9});z.defineProperty(Qf,{left:"left"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?0===this.button:0!==(this.buttons&1)},function(a){this.buttons=a?this.buttons|1:this.buttons&-2}); +z.defineProperty(Qf,{right:"right"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?2===this.button:0!==(this.buttons&2)},function(a){this.buttons=a?this.buttons|2:this.buttons&-3});z.defineProperty(Qf,{VK:"middle"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?1===this.button:0!==(this.buttons&4)},function(a){this.buttons=a?this.buttons|4:this.buttons&-5}); +function Rf(){this.Z=null;this.Ub="";this.Zv=this.sw=null;this.Vu=!1}z.ia("DiagramEvent",Rf);Rf.prototype.copy=function(){var a=new Rf;a.Z=this.Z;a.Ub=this.Ub;a.sw=this.sw;a.Zv=this.Zv;a.Vu=this.Vu;return a};Rf.prototype.toString=function(){var a="*"+this.name;this.cancel&&(a+="x");null!==this.WA&&(a+=":"+this.WA.toString());null!==this.CA&&(a+="("+this.CA.toString()+")");return a};z.defineProperty(Rf,{h:"diagram"},function(){return this.Z},function(a){this.Z=a}); +z.defineProperty(Rf,{name:"name"},function(){return this.Ub},function(a){this.Ub=a});z.defineProperty(Rf,{WA:"subject"},function(){return this.sw},function(a){this.sw=a});z.defineProperty(Rf,{CA:"parameter"},function(){return this.Zv},function(a){this.Zv=a});z.defineProperty(Rf,{cancel:"cancel"},function(){return this.Vu},function(a){this.Vu=a});function Sf(){this.wq=Tf;this.Dm=this.Ov="";this.Xr=this.Yr=this.as=this.bs=this.$r=this.Z=this.ie=null}z.ia("ChangedEvent",Sf);var Uf; +Sf.Transaction=Uf=z.s(Sf,"Transaction",-1);var Tf;Sf.Property=Tf=z.s(Sf,"Property",0);var Vf;Sf.Insert=Vf=z.s(Sf,"Insert",1);var Wf;Sf.Remove=Wf=z.s(Sf,"Remove",2);Sf.prototype.clear=Sf.prototype.clear=function(){this.Xr=this.Yr=this.as=this.bs=this.$r=this.Z=this.ie=null}; +Sf.prototype.copy=function(){var a=new Sf;a.wq=this.wq;a.Ov=this.Ov;a.Dm=this.Dm;a.ie=this.ie;a.Z=this.Z;a.$r=this.$r;var b=this.bs;a.bs=z.Ya(b)&&"function"===typeof b.V?b.V():b;b=this.as;a.as=z.Ya(b)&&"function"===typeof b.V?b.V():b;b=this.Yr;a.Yr=z.Ya(b)&&"function"===typeof b.V?b.V():b;b=this.Xr;a.Xr=z.Ya(b)&&"function"===typeof b.V?b.V():b;return a}; +Sf.prototype.toString=function(){var a="",a=this.Dc===Uf?a+"* ":this.Dc===Tf?a+(null!==this.ha?"!m":"!d"):a+((null!==this.ha?"!m":"!d")+this.Dc);this.propertyName&&"string"===typeof this.propertyName&&(a+=" "+this.propertyName);this.qf&&this.qf!==this.propertyName&&(a+=" "+this.qf);a+=": ";this.Dc===Uf?null!==this.oldValue&&(a+=" "+this.oldValue):(null!==this.object&&(a+=ka(this.object)),null!==this.oldValue&&(a+=" old: "+ka(this.oldValue)),null!==this.Mg&&(a+=" "+this.Mg),null!==this.newValue&& +(a+=" new: "+ka(this.newValue)),null!==this.Kg&&(a+=" "+this.Kg));return a};Sf.prototype.getValue=Sf.prototype.na=function(a){return a?this.oldValue:this.newValue};Sf.prototype.getParam=function(a){return a?this.Mg:this.Kg};Sf.prototype.canUndo=Sf.prototype.canUndo=function(){return null!==this.ha||null!==this.h?!0:!1};Sf.prototype.undo=Sf.prototype.undo=function(){this.canUndo()&&(null!==this.ha?this.ha.Wm(this,!0):null!==this.h&&this.h.Wm(this,!0))}; +Sf.prototype.canRedo=Sf.prototype.canRedo=function(){return null!==this.ha||null!==this.h?!0:!1};Sf.prototype.redo=Sf.prototype.redo=function(){this.canRedo()&&(null!==this.ha?this.ha.Wm(this,!1):null!==this.h&&this.h.Wm(this,!1))};z.defineProperty(Sf,{ha:"model"},function(){return this.ie},function(a){this.ie=a});z.defineProperty(Sf,{h:"diagram"},function(){return this.Z},function(a){this.Z=a}); +z.defineProperty(Sf,{Dc:"change"},function(){return this.wq},function(a){u&&z.Ba(a,Sf,Sf,"change");this.wq=a});z.defineProperty(Sf,{qf:"modelChange"},function(){return this.Ov},function(a){u&&z.g(a,"string",Sf,"modelChange");this.Ov=a});z.defineProperty(Sf,{propertyName:"propertyName"},function(){return this.Dm},function(a){u&&"string"!==typeof a&&z.g(a,"function",Sf,"propertyName");this.Dm=a}); +z.w(Sf,{RE:"isTransactionFinished"},function(){return this.wq===Uf&&("CommittedTransaction"===this.Dm||"FinishedUndo"===this.Dm||"FinishedRedo"===this.Dm)});z.defineProperty(Sf,{object:"object"},function(){return this.$r},function(a){this.$r=a});z.defineProperty(Sf,{oldValue:"oldValue"},function(){return this.bs},function(a){this.bs=a});z.defineProperty(Sf,{Mg:"oldParam"},function(){return this.as},function(a){this.as=a}); +z.defineProperty(Sf,{newValue:"newValue"},function(){return this.Yr},function(a){this.Yr=a});z.defineProperty(Sf,{Kg:"newParam"},function(){return this.Xr},function(a){this.Xr=a}); +function M(a){1g?b+("\\u000"+a.charCodeAt(d).toString(16)):32>g?b+("\\u00"+a.charCodeAt(d).toString(16)):8232===g?b+"\\u2028":8233===g?b+"\\u2029":b+e}return'"'+b+'"'}; -M.prototype.writeJsonValue=M.prototype.Cu=function(a){return void 0===a?"undefined":null===a?"null":!0===a?"true":!1===a?"false":"string"===typeof a?this.quote(a):"number"===typeof a?Infinity===a?"9e9999":-Infinity===a?"-9e9999":isNaN(a)?'{"class":"NaN"}':a.toString():a instanceof Date?'{"class":"Date", "value":"'+a.toJSON()+'"}':a instanceof Number?this.Cu(a.valueOf()):y.isArray(a)?bg(this,a):y.Ya(a)?Zf(this,a):"function"===typeof a?"null":a.toString()}; -function bg(a,b,c){void 0===c&&(c=!1);var d=y.ab(b);if(0>=d)return"[]";var e=new za;e.add("[ ");c&&1=d)return"[]";var e=new za;e.add("[ ");c&&1e)return;y.ji(a.wf,e)}yg(a,"nodeDataArray",Wf,"nodeDataArray",a,b,null,e,null);a.Au(b)}} -M.prototype.removeNodeDataCollection=function(a){if(y.isArray(a))for(var b=y.ab(a),c=0;cb&&(b=y.ab(a));y.bj(a,b,c);yg(this,"",Vf,"",a,null,c,null,b)}; -M.prototype.removeArrayItem=function(a,b){void 0===b&&(b=-1);u&&(y.mt(a,M,"removeArrayItem:arr"),y.p(b,M,"removeArrayItem:idx"));a===this.wf&&y.k("Model.removeArrayItem should not be called on the Model.nodeDataArray");-1===b&&(b=y.ab(a)-1);var c=y.Xa(a,b);y.ji(a,b);yg(this,"",Wf,"",a,c,null,b,null)};y.defineProperty(M,{sn:"nodeCategoryProperty"},function(){return this.ym},function(a){var b=this.ym;b!==a&&(zg(a,M,"nodeCategoryProperty"),this.ym=a,this.j("nodeCategoryProperty",b,a))}); -M.prototype.getCategoryForNodeData=M.prototype.Wz=function(a){if(null===a)return"";var b=this.ym;if(""===b)return"";b=y.tb(a,b);if(void 0===b)return"";if("string"===typeof b)return b;y.k("getCategoryForNodeData found a non-string category for "+a+": "+b);return""}; -M.prototype.setCategoryForNodeData=M.prototype.Ix=function(a,b){y.g(b,"string",M,"setCategoryForNodeData:cat");if(null!==a){var c=this.ym;if(""!==c)if(this.ne(a)){var d=y.tb(a,c);void 0===d&&(d="");d!==b&&(y.Qa(a,c,b),yg(this,"nodeCategory",Tf,c,a,d,b))}else y.Qa(a,c,b)}}; -function V(a,b){2e||(y.ji(d,e),this.th(a)&&(Fg(this,b,a),yg(this,"linkLabelKeys",Wf,c,a,b,null)))}else void 0!==d&&y.k(c+" property is not an Array; cannot removeLabelKeyforLinkData: "+a)}}}; -y.defineProperty(V,{Kg:"linkDataArray"},function(){return this.vf},function(a){var b=this.vf;if(b!==a){y.mt(a,V,"linkDataArray");this.jd.clear();for(var c=y.ab(a),d=0;de)return;y.ji(a.vf,e)}yg(a,"linkDataArray",Wf,"linkDataArray",a,b,null,e,null);c=a.Kl(b);Fg(a,c,b);c=a.Ll(b);Fg(a,c,b);d=a.qk(b);if(y.isArray(d))for(var e=y.ab(d),g=0;ga.Hh&&y.trace("Ending transaction without having started a transaction: "+c);var d=1===a.Hh;d&&b&&a.isEnabled&&a.ld("CommittingTransaction",c,a.ej);var e=0;if(0a.jj;e--)g=d.ea(e),null!== -g&&g.clear(),d.ed(e),a.Vy=!0;e=a.VE;0===e&&(e=1);0=e&&(g=d.ea(0),null!==g&&g.clear(),d.ed(0),a.dh--);d.add(b);a.dh++;d.freeze();g=b}a.ld("CommittedTransaction",c,g)}else{a.Ji=!0;try{a.isEnabled&&null!==g&&(g.Mt=!0,g.undo())}finally{a.ld("RolledBackTransaction",c,g),a.Ji=!1}null!==g&&g.clear()}a.dv=null;return!0}if(a.isEnabled&&!b&&null!==g){a=e;c=g.$f;for(b=c.count-1;b>=a;b--)d=c.ea(b),null!==d&&d.undo(),c.Wa(),c.ed(b);c.freeze()}return!1} -Xf.prototype.canUndo=Xf.prototype.canUndo=function(){if(!this.isEnabled||0=this.Hh&&!this.Jy&&(a=a.h,null!==a&&!1===a.mn||y.trace("Change not within a transaction: "+c.toString()))}}; -Xf.prototype.skipsEvent=function(a){if(null===a||0>a.Dc.value)return!0;a=a.object;if(a instanceof O){if(a=a.layer,null!==a&&a.Nc)return!0}else if(a instanceof vg&&a.Nc)return!0;return!1};y.w(Xf,{FI:"models"},function(){return this.az.i});y.defineProperty(Xf,{isEnabled:"isEnabled"},function(){return this.$e},function(a){this.$e=a});y.w(Xf,{WF:"transactionToUndo"},function(){return 0<=this.jj&&this.jj<=this.history.count-1?this.history.ea(this.jj):null}); -y.w(Xf,{VF:"transactionToRedo"},function(){return this.jjb.yh||(b.scale=a))};ra.prototype.canDecreaseZoom=function(a){void 0===a&&(a=1/this.Sx);y.p(a,ra,"canDecreaseZoom:factor");var b=this.h;if(null===b||b.vl!==kh)return!1;a*=b.scale;return ab.yh?!1:b.Iw}; -ra.prototype.increaseZoom=function(a){void 0===a&&(a=this.Sx);y.p(a,ra,"increaseZoom:factor");var b=this.h;null!==b&&b.vl===kh&&(a*=b.scale,ab.yh||(b.scale=a))};ra.prototype.canIncreaseZoom=function(a){void 0===a&&(a=this.Sx);y.p(a,ra,"canIncreaseZoom:factor");var b=this.h;if(null===b||b.vl!==kh)return!1;a*=b.scale;return ab.yh?!1:b.Iw};ra.prototype.resetZoom=function(a){void 0===a&&(a=this.Qw);y.p(a,ra,"resetZoom:newscale");var b=this.h;null===b||ab.yh||(b.scale=a)}; -ra.prototype.canResetZoom=function(a){void 0===a&&(a=this.Qw);y.p(a,ra,"canResetZoom:newscale");var b=this.h;return null===b||ab.yh?!1:b.Iw};ra.prototype.zoomToFit=function(){var a=this.h;if(null!==a){var b=a.scale,c=a.position;b===this.vz&&!isNaN(this.Wy)&&a.ad.N(this.uz)?(a.scale=this.Wy,a.position=this.vC,this.vz=NaN,this.uz=Gd):(this.Wy=b,this.vC=c.copy(),a.zoomToFit(),this.vz=a.scale,this.uz=a.ad.copy())}};ra.prototype.canZoomToFit=function(){var a=this.h;return null===a?!1:a.Iw}; -ra.prototype.scrollToPart=function(a){void 0===a&&(a=null);null!==a&&y.l(a,D,ra,"part");var b=this.h;if(null!==b){if(null===a){try{null!==this.Xj&&(this.Xj.next()?a=this.Xj.value:this.Xj=null)}catch(c){}null===a&&(0e)return;z.hi(a.vf,e)}yg(a,"nodeDataArray",Wf,"nodeDataArray",a,b,null,e,null);a.Bu(b)}} +M.prototype.removeNodeDataCollection=function(a){if(z.isArray(a))for(var b=z.ab(a),c=0;cb&&(b=z.ab(a));z.$i(a,b,c);yg(this,"",Vf,"",a,null,c,null,b)}; +M.prototype.removeArrayItem=function(a,b){void 0===b&&(b=-1);u&&(z.nt(a,M,"removeArrayItem:arr"),z.p(b,M,"removeArrayItem:idx"));a===this.vf&&z.k("Model.removeArrayItem should not be called on the Model.nodeDataArray");-1===b&&(b=z.ab(a)-1);var c=z.Xa(a,b);z.hi(a,b);yg(this,"",Wf,"",a,c,null,b,null)};z.defineProperty(M,{sn:"nodeCategoryProperty"},function(){return this.xm},function(a){var b=this.xm;b!==a&&(zg(a,M,"nodeCategoryProperty"),this.xm=a,this.j("nodeCategoryProperty",b,a))}); +M.prototype.getCategoryForNodeData=M.prototype.$z=function(a){if(null===a)return"";var b=this.xm;if(""===b)return"";b=z.tb(a,b);if(void 0===b)return"";if("string"===typeof b)return b;z.k("getCategoryForNodeData found a non-string category for "+a+": "+b);return""}; +M.prototype.setCategoryForNodeData=M.prototype.Jx=function(a,b){z.g(b,"string",M,"setCategoryForNodeData:cat");if(null!==a){var c=this.xm;if(""!==c)if(this.le(a)){var d=z.tb(a,c);void 0===d&&(d="");d!==b&&(z.Ra(a,c,b),yg(this,"nodeCategory",Tf,c,a,d,b))}else z.Ra(a,c,b)}}; +function V(a,b){2e||(z.hi(d,e),this.sh(a)&&(Fg(this,b,a),yg(this,"linkLabelKeys",Wf,c,a,b,null)))}else void 0!==d&&z.k(c+" property is not an Array; cannot removeLabelKeyforLinkData: "+a)}}}; +z.defineProperty(V,{Jg:"linkDataArray"},function(){return this.uf},function(a){var b=this.uf;if(b!==a){z.nt(a,V,"linkDataArray");this.jd.clear();for(var c=z.ab(a),d=0;de)return;z.hi(a.uf,e)}yg(a,"linkDataArray",Wf,"linkDataArray",a,b,null,e,null);c=a.Kl(b);Fg(a,c,b);c=a.Ll(b);Fg(a,c,b);d=a.qk(b);if(z.isArray(d))for(var e=z.ab(d),g=0;ga.Gh&&z.trace("Ending transaction without having started a transaction: "+c);var d=1===a.Gh;d&&b&&a.isEnabled&&a.ld("CommittingTransaction",c,a.cj);var e=0;if(0a.hj;e--)g=d.ea(e),null!== +g&&g.clear(),d.ed(e),a.Wy=!0;e=a.YE;0===e&&(e=1);0=e&&(g=d.ea(0),null!==g&&g.clear(),d.ed(0),a.bh--);d.add(b);a.bh++;d.freeze();g=b}a.ld("CommittedTransaction",c,g)}else{a.Hi=!0;try{a.isEnabled&&null!==g&&(g.Nt=!0,g.undo())}finally{a.ld("RolledBackTransaction",c,g),a.Hi=!1}null!==g&&g.clear()}a.ev=null;return!0}if(a.isEnabled&&!b&&null!==g){a=e;c=g.Zf;for(b=c.count-1;b>=a;b--)d=c.ea(b),null!==d&&d.undo(),c.Wa(),c.ed(b);c.freeze()}return!1} +Xf.prototype.canUndo=Xf.prototype.canUndo=function(){if(!this.isEnabled||0=this.Gh&&!this.Ky&&(a=a.h,null!==a&&!1===a.mn||z.trace("Change not within a transaction: "+c.toString()))}}; +Xf.prototype.skipsEvent=function(a){if(null===a||0>a.Dc.value)return!0;a=a.object;if(a instanceof O){if(a=a.layer,null!==a&&a.Nc)return!0}else if(a instanceof vg&&a.Nc)return!0;return!1};z.w(Xf,{HI:"models"},function(){return this.bz.i});z.defineProperty(Xf,{isEnabled:"isEnabled"},function(){return this.Ze},function(a){this.Ze=a});z.w(Xf,{ZF:"transactionToUndo"},function(){return 0<=this.hj&&this.hj<=this.history.count-1?this.history.ea(this.hj):null}); +z.w(Xf,{YF:"transactionToRedo"},function(){return this.hjb.xh||(b.scale=a))};ra.prototype.canDecreaseZoom=function(a){void 0===a&&(a=1/this.Tx);z.p(a,ra,"canDecreaseZoom:factor");var b=this.h;if(null===b||b.vl!==kh)return!1;a*=b.scale;return ab.xh?!1:b.Jw}; +ra.prototype.increaseZoom=function(a){void 0===a&&(a=this.Tx);z.p(a,ra,"increaseZoom:factor");var b=this.h;null!==b&&b.vl===kh&&(a*=b.scale,ab.xh||(b.scale=a))};ra.prototype.canIncreaseZoom=function(a){void 0===a&&(a=this.Tx);z.p(a,ra,"canIncreaseZoom:factor");var b=this.h;if(null===b||b.vl!==kh)return!1;a*=b.scale;return ab.xh?!1:b.Jw};ra.prototype.resetZoom=function(a){void 0===a&&(a=this.Rw);z.p(a,ra,"resetZoom:newscale");var b=this.h;null===b||ab.xh||(b.scale=a)}; +ra.prototype.canResetZoom=function(a){void 0===a&&(a=this.Rw);z.p(a,ra,"canResetZoom:newscale");var b=this.h;return null===b||ab.xh?!1:b.Jw};ra.prototype.zoomToFit=function(){var a=this.h;if(null!==a){var b=a.scale,c=a.position;b===this.xz&&!isNaN(this.Xy)&&a.ad.N(this.wz)?(a.scale=this.Xy,a.position=this.yC,this.xz=NaN,this.wz=Hd):(this.Xy=b,this.yC=c.copy(),a.zoomToFit(),this.xz=a.scale,this.wz=a.ad.copy())}};ra.prototype.canZoomToFit=function(){var a=this.h;return null===a?!1:a.Jw}; +ra.prototype.scrollToPart=function(a){void 0===a&&(a=null);null!==a&&z.l(a,D,ra,"part");var b=this.h;if(null!==b){if(null===a){try{null!==this.Xj&&(this.Xj.next()?a=this.Xj.value:this.Xj=null)}catch(c){}null===a&&(0b.targetTouches.length)return;c=b.targetTouches[0];d=b.targetTouches[1]}else if(null!==a.Vf[0])c=a.Vf[0],d=a.Vf[1];else return;this.doCancel();if(a.vp("hasGestureZoom")){a.Ky=!0;a.HC=a.scale;var e=xh(a),g=c,h=g.clientX-e.x,c=g.clientY-e.y,g=d,d=g.clientX-e.x,g=g.clientY-e.y;y.A(e);e=d-h;c=g-c;a.$C=Math.sqrt(e*e+c*c);b.preventDefault();b.cancelBubble=!0}}}; -wg.prototype.standardPinchZoomMove=function(){var a=this.h;if(null!==a){var b=a.Q.event;this.doCancel();var c=null,d=null;if(void 0!==b.targetTouches){if(2>b.targetTouches.length)return;c=b.targetTouches[0];d=b.targetTouches[1]}else if(null!==a.Vf[0])c=a.Vf[0],d=a.Vf[1];else return;if(a.vp("hasGestureZoom")&&a.Ky){var e=xh(a),g=c,c=g.clientX-e.x,h=g.clientY-e.y,g=d,d=g.clientX-e.x,g=g.clientY-e.y;y.A(e);var e=d-c,k=g-h,e=Math.sqrt(e*e+k*k)/a.$C,c=new N((Math.min(d,c)+Math.max(d,c))/2,(Math.min(g, -h)+Math.max(g,h))/2),h=a.HC*e,d=a.wb;h!==a.scale&&d.canResetZoom(h)&&(e=a.$l,a.$l=c,d.resetZoom(h),a.$l=e);b.preventDefault();b.cancelBubble=!0}}};wg.prototype.doKeyDown=function(){var a=this.h;null!==a&&"Esc"===a.Q.key&&this.doCancel()};wg.prototype.doKeyUp=function(){};wg.prototype.startTransaction=wg.prototype.Vb=function(a){void 0===a&&(a=this.name);this.Nf=null;var b=this.h;return null===b?!1:b.Vb(a)}; -wg.prototype.stopTransaction=wg.prototype.xk=function(){var a=this.h;return null===a?!1:null===this.Nf?a.Wp():a.Md(this.Nf)}; -wg.prototype.standardMouseSelect=function(){var a=this.h;if(null!==a&&a.xf){var b=a.Q,c=a.zt(b.ga,!1);if(null!==c)if(y.rk?b.Zt:b.control){a.Ja("ChangingSelection");for(b=c;null!==b&&!b.canSelect();)b=b.Va;null!==b&&(b.jb=!b.jb);a.Ja("ChangedSelection")}else if(b.shift){if(!c.jb){a.Ja("ChangingSelection");for(b=c;null!==b&&!b.canSelect();)b=b.Va;null!==b&&(b.jb=!0);a.Ja("ChangedSelection")}}else{if(!c.jb){for(b=c;null!==b&&!b.canSelect();)b=b.Va;null!==b&&a.select(b)}}else!b.left||(y.rk?b.Zt:b.control)|| -b.shift||a.Lw()}};wg.prototype.standardMouseClick=function(a,b){void 0===a&&(a=null);void 0===b&&(b=function(a){return!a.layer.Nc});var c=this.h;if(null===c)return!1;var d=c.Q,e=c.re(d.ga,a,b);d.He=e;yh(e,d,c);return d.Gc}; -function yh(a,b,c){b.Gc=!1;var d=0;b.left?d=1===b.ef?1:2===b.ef?2:1:b.right&&1===b.ef&&(d=3);var e="";if(null!==a){switch(d){case 1:e="ObjectSingleClicked";break;case 2:e="ObjectDoubleClicked";break;case 3:e="ObjectContextClicked"}0!==d&&c.Ja(e,a)}else{switch(d){case 1:e="BackgroundSingleClicked";break;case 2:e="BackgroundDoubleClicked";break;case 3:e="BackgroundContextClicked"}0!==d&&c.Ja(e)}if(null!==a)for(;null!==a;){c=null;switch(d){case 1:c=a.click;break;case 2:c=a.vt?a.vt:a.click;break;case 3:c= -a.Ez}if(null!==c&&(c(b,a),b.Gc))break;a=a.V}else{a=null;switch(d){case 1:a=c.click;break;case 2:a=c.vt?c.vt:c.click;break;case 3:a=c.Ez}null!==a&&a(b)}} -wg.prototype.standardMouseOver=function(){var a=this.h;if(null!==a){var b=a.Q;if(null!==b.h&&!0!==a.Ua.wc){var c=a.Bb;a.Bb=!0;var d=a.re(b.ga,null,null);b.He=d;var e=!1;if(d!==a.Un){var g=a.Un,h=g;a.Un=d;this.doCurrentObjectChanged(g,d);for(b.Gc=!1;null!==g;){var k=g.au;if(null!==k){if(d===g)break;if(null!==d&&d.Ol(g))break;k(b,g,d);e=!0;if(b.Gc)break}g=g.V}g=h;for(b.Gc=!1;null!==d;){k=d.$t;if(null!==k){if(g===d)break;if(null!==g&&g.Ol(d))break;k(b,d,g);e=!0;if(b.Gc)break}d=d.V}d=a.Un}if(null!==d){g= -d;for(k="";null!==g;){k=g.cursor;if(""!==k)break;g=g.V}a.gc=k;b.Gc=!1;for(g=d;null!==g;){k=g.qA;if(null!==k&&(k(b,g),e=!0,b.Gc))break;g=g.V}}else a.gc="",k=a.qA,null!==k&&(k(b),e=!0);e&&a.De();a.Bb=c}}};wg.prototype.doCurrentObjectChanged=function(){}; -wg.prototype.standardMouseWheel=function(){var a=this.h;if(null!==a){var b=a.Q,c=b.Bl;if(0!==c&&a.ad.F()){var d=a.wb,e=a.gb.bu;if((e===zh&&!b.shift||e===Ah&&b.control)&&(0e||Math.abs(b.y-a.y)>d};y.w(wg,{h:"diagram"},function(){return this.Z});y.defineProperty(wg,{name:"name"},function(){return this.Ub},function(a){y.g(a,"string",wg,"name");this.Ub=a}); -y.defineProperty(wg,{isEnabled:"isEnabled"},function(){return this.$e},function(a){y.g(a,"boolean",wg,"isEnabled");this.$e=a});y.defineProperty(wg,{ua:"isActive"},function(){return this.gC},function(a){y.g(a,"boolean",wg,"isActive");this.gC=a});y.defineProperty(wg,{Nf:"transactionResult"},function(){return this.rD},function(a){null!==a&&y.g(a,"string",wg,"transactionResult");this.rD=a}); -function jh(){0e&&(e=k),l>g&&(g=l))}}Infinity===c?b.n(0,0,0,0):b.n(c,d,e-c,g-d)} -function Uh(a,b){if(null===a.pc){var c=a.h;if(!(null===c||b&&(c.ib||c.Ff))&&null!==a.ic){var d=c.pa;d.isEnabled&&d.LE?null!==d.ej&&0c.sa)){var d=a.h;if(null!==d&&!d.ib&&(d=a.Ui,null!==d)){var e=null,g=null;null===c.Y&&(e=di(a,c.m(0),!1),null!==e&&(g=e.ca));var h=null,k=null;null===c.da&&(h=di(a,c.m(c.sa-1),!0),null!==h&&(k=h.ca));d.isValidLink(g,e,k,h)?b?(c.Xn=c.m(0).copy(),c.ao=c.m(c.sa-1).copy(),c.fq=!1,c.Y=g,null!==e&&(c.bg=e.zd),c.da=k,null!==h&&(c.Vg=h.zd)):ei(d,g,e,k,h):ei(d,null,null,null,null)}}}jh.prototype.doDragOver=function(){}; -function fi(a,b){var c=a.h;if(null!==c){a.gj&&$h(a,!0);Kh(a);var d=ai(c,b,null,function(b){return!Yh(a,b)}),e=c.Q;e.He=d;if(null!==d){e.Gc=!1;for(var g=d;null!==g;){var h=g.nA;if(null!==h&&(h(e,g),e.Gc))break;g=ci(g)}}else h=c.nA,null!==h&&h(e);if(a.ua||null!==Dh)if(a.doDropOnto(b,d),a.ua||null!==Dh)for(d=c.selection.i;d.next();)e=d.value,e instanceof E&&gi(c,e.W)}}jh.prototype.doDropOnto=function(){}; +wg.prototype.standardPinchZoomStart=function(){var a=this.h;if(null!==a){var b=a.Q.event,c=null,d=null;if(void 0!==b.targetTouches){if(2>b.targetTouches.length)return;c=b.targetTouches[0];d=b.targetTouches[1]}else if(null!==a.Uf[0])c=a.Uf[0],d=a.Uf[1];else return;this.doCancel();if(a.vp("hasGestureZoom")){a.Ly=!0;a.KC=a.scale;var e=xh(a),g=c,h=g.clientX-e.x,c=g.clientY-e.y,g=d,d=g.clientX-e.x,g=g.clientY-e.y;z.A(e);e=d-h;c=g-c;a.cD=Math.sqrt(e*e+c*c);b.preventDefault();b.cancelBubble=!0}}}; +wg.prototype.standardPinchZoomMove=function(){var a=this.h;if(null!==a){var b=a.Q.event;this.doCancel();var c=null,d=null;if(void 0!==b.targetTouches){if(2>b.targetTouches.length)return;c=b.targetTouches[0];d=b.targetTouches[1]}else if(null!==a.Uf[0])c=a.Uf[0],d=a.Uf[1];else return;if(a.vp("hasGestureZoom")&&a.Ly){var e=xh(a),g=c,c=g.clientX-e.x,h=g.clientY-e.y,g=d,d=g.clientX-e.x,g=g.clientY-e.y;z.A(e);var e=d-c,k=g-h,e=Math.sqrt(e*e+k*k)/a.cD,c=new N((Math.min(d,c)+Math.max(d,c))/2,(Math.min(g, +h)+Math.max(g,h))/2),h=a.KC*e,d=a.wb;h!==a.scale&&d.canResetZoom(h)&&(e=a.Zl,a.Zl=c,d.resetZoom(h),a.Zl=e);b.preventDefault();b.cancelBubble=!0}}};wg.prototype.doKeyDown=function(){var a=this.h;null!==a&&"Esc"===a.Q.key&&this.doCancel()};wg.prototype.doKeyUp=function(){};wg.prototype.startTransaction=wg.prototype.Wb=function(a){void 0===a&&(a=this.name);this.Mf=null;var b=this.h;return null===b?!1:b.Wb(a)}; +wg.prototype.stopTransaction=wg.prototype.xk=function(){var a=this.h;return null===a?!1:null===this.Mf?a.Wp():a.Kd(this.Mf)}; +wg.prototype.standardMouseSelect=function(){var a=this.h;if(null!==a&&a.wf){var b=a.Q,c=a.At(b.ga,!1);if(null!==c)if(z.rk?b.$t:b.control){a.Ja("ChangingSelection");for(b=c;null!==b&&!b.canSelect();)b=b.Va;null!==b&&(b.jb=!b.jb);a.Ja("ChangedSelection")}else if(b.shift){if(!c.jb){a.Ja("ChangingSelection");for(b=c;null!==b&&!b.canSelect();)b=b.Va;null!==b&&(b.jb=!0);a.Ja("ChangedSelection")}}else{if(!c.jb){for(b=c;null!==b&&!b.canSelect();)b=b.Va;null!==b&&a.select(b)}}else!b.left||(z.rk?b.$t:b.control)|| +b.shift||a.Mw()}};wg.prototype.standardMouseClick=function(a,b){void 0===a&&(a=null);void 0===b&&(b=function(a){return!a.layer.Nc});var c=this.h;if(null===c)return!1;var d=c.Q,e=c.pe(d.ga,a,b);d.Ge=e;yh(e,d,c);return d.Gc}; +function yh(a,b,c){b.Gc=!1;var d=0;b.left?d=1===b.df?1:2===b.df?2:1:b.right&&1===b.df&&(d=3);var e="";if(null!==a){switch(d){case 1:e="ObjectSingleClicked";break;case 2:e="ObjectDoubleClicked";break;case 3:e="ObjectContextClicked"}0!==d&&c.Ja(e,a)}else{switch(d){case 1:e="BackgroundSingleClicked";break;case 2:e="BackgroundDoubleClicked";break;case 3:e="BackgroundContextClicked"}0!==d&&c.Ja(e)}if(null!==a)for(;null!==a;){c=null;switch(d){case 1:c=a.click;break;case 2:c=a.wt?a.wt:a.click;break;case 3:c= +a.Gz}if(null!==c&&(c(b,a),b.Gc))break;a=a.U}else{a=null;switch(d){case 1:a=c.click;break;case 2:a=c.wt?c.wt:c.click;break;case 3:a=c.Gz}null!==a&&a(b)}} +wg.prototype.standardMouseOver=function(){var a=this.h;if(null!==a){var b=a.Q;if(null!==b.h&&!0!==a.Ua.wc){var c=a.Bb;a.Bb=!0;var d=a.pe(b.ga,null,null);b.Ge=d;var e=!1;if(d!==a.Un){var g=a.Un,h=g;a.Un=d;this.doCurrentObjectChanged(g,d);for(b.Gc=!1;null!==g;){var k=g.bu;if(null!==k){if(d===g)break;if(null!==d&&d.Ol(g))break;k(b,g,d);e=!0;if(b.Gc)break}g=g.U}g=h;for(b.Gc=!1;null!==d;){k=d.au;if(null!==k){if(g===d)break;if(null!==g&&g.Ol(d))break;k(b,d,g);e=!0;if(b.Gc)break}d=d.U}d=a.Un}if(null!==d){g= +d;for(k="";null!==g;){k=g.cursor;if(""!==k)break;g=g.U}a.gc=k;b.Gc=!1;for(g=d;null!==g;){k=g.uA;if(null!==k&&(k(b,g),e=!0,b.Gc))break;g=g.U}}else a.gc="",k=a.uA,null!==k&&(k(b),e=!0);e&&a.Ce();a.Bb=c}}};wg.prototype.doCurrentObjectChanged=function(){}; +wg.prototype.standardMouseWheel=function(){var a=this.h;if(null!==a){var b=a.Q,c=b.Bl;if(0!==c&&a.ad.F()){var d=a.wb,e=a.gb.cu;if((e===zh&&!b.shift||e===Ah&&b.control)&&(0e||Math.abs(b.y-a.y)>d};z.w(wg,{h:"diagram"},function(){return this.Z});z.defineProperty(wg,{name:"name"},function(){return this.Ub},function(a){z.g(a,"string",wg,"name");this.Ub=a}); +z.defineProperty(wg,{isEnabled:"isEnabled"},function(){return this.Ze},function(a){z.g(a,"boolean",wg,"isEnabled");this.Ze=a});z.defineProperty(wg,{ua:"isActive"},function(){return this.kC},function(a){z.g(a,"boolean",wg,"isActive");this.kC=a});z.defineProperty(wg,{Mf:"transactionResult"},function(){return this.uD},function(a){null!==a&&z.g(a,"string",wg,"transactionResult");this.uD=a}); +function jh(){0e&&(e=k),l>g&&(g=l))}}Infinity===c?b.n(0,0,0,0):b.n(c,d,e-c,g-d)} +function Uh(a,b){if(null===a.pc){var c=a.h;if(!(null===c||b&&(c.ib||c.Ef))&&null!==a.ic){var d=c.pa;d.isEnabled&&d.OE?null!==d.cj&&0c.sa)){var d=a.h;if(null!==d&&!d.ib&&(d=a.Si,null!==d)){var e=null,g=null;null===c.Y&&(e=di(a,c.m(0),!1),null!==e&&(g=e.ca));var h=null,k=null;null===c.da&&(h=di(a,c.m(c.sa-1),!0),null!==h&&(k=h.ca));d.isValidLink(g,e,k,h)?b?(c.Xn=c.m(0).copy(),c.ao=c.m(c.sa-1).copy(),c.fq=!1,c.Y=g,null!==e&&(c.ag=e.yd),c.da=k,null!==h&&(c.Ug=h.yd)):ei(d,g,e,k,h):ei(d,null,null,null,null)}}}jh.prototype.doDragOver=function(){}; +function fi(a,b){var c=a.h;if(null!==c){a.ej&&$h(a,!0);Kh(a);var d=ai(c,b,null,function(b){return!Yh(a,b)}),e=c.Q;e.Ge=d;if(null!==d){e.Gc=!1;for(var g=d;null!==g;){var h=g.rA;if(null!==h&&(h(e,g),e.Gc))break;g=ci(g)}}else h=c.rA,null!==h&&h(e);if(a.ua||null!==Dh)if(a.doDropOnto(b,d),a.ua||null!==Dh)for(d=c.selection.i;d.next();)e=d.value,e instanceof E&&gi(c,e.W)}}jh.prototype.doDropOnto=function(){}; jh.prototype.doMouseMove=function(){if(this.ua){var a=this.h;if(null!==a&&null!==this.cn&&null!==this.ic){var b=!1,c=!1;this.mayCopy()?(b=!0,a.gc="copy",Uh(this,!1),Ch(this,this.pc),Vh(this,this.pc,!1),Lh(this,this.pc)):this.mayMove()?(c=!0,a.gc="default",Oh(this),Vh(this,this.ic,!0)):this.mayDragOut()?(a.gc="no-drop",Uh(this,!1),Vh(this,this.pc,!1)):Oh(this);Zh(this,a.Q.ga,c,b)}}}; -jh.prototype.doMouseUp=function(){if(this.ua){var a=this.h;if(null!==a){var b=!1,c=this.mayCopy();c&&null!==this.pc?(Oh(this),Uh(this,!0),Ch(this,this.pc),Vh(this,this.pc,!1),Lh(this,this.pc),null!==this.pc&&a.AF(this.pc.uj())):(b=!0,Oh(this),this.mayMove()&&(Vh(this,this.ic,!0),Zh(this,a.Q.ga,!0,!1)));this.Vq=!0;fi(this,a.Q.ga);if(this.ua){this.pc=null;if(b&&null!==this.ic)for(b=this.ic.i;b.next();){var d=b.key;d instanceof E&&(d=d.Va,null===d||null===d.placeholder||this.ic.contains(d)||d.SD&&d.S())}a.yc(); -Lh(this,this.ic);this.Nf=c?"Copy":"Move";a.Ja(c?"SelectionCopied":"SelectionMoved",a.selection)}this.stopTool()}}};jh.prototype.mayCopy=function(){if(!this.IE)return!1;var a=this.h;if(null===a||a.ib||a.Ff||!a.cp||!a.kk||(y.rk?!a.Q.alt:!a.Q.control))return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.de()&&b.canCopy())return!0}return null!==this.md&&this.gj&&this.md.canCopy()?!0:!1}; -jh.prototype.mayDragOut=function(){if(!this.IE)return!1;var a=this.h;if(null===a||!a.jt||!a.kk||a.tl)return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.de()&&b.canCopy())return!0}return null!==this.md&&this.gj&&this.md.canCopy()?!0:!1};jh.prototype.mayMove=function(){var a=this.h;if(null===a||a.ib||!a.tl)return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.de()&&b.canMove())return!0}return null!==this.md&&this.gj&&this.md.canMove()?!0:!1};var Mh=new J(jh),Dh=null,Eh=null; -jh.prototype.mayDragIn=function(){var a=this.h;if(null===a||!a.CD||a.ib||a.Ff||!a.cp)return!1;var b=Dh;return null===b||b.h.ha.zl!==a.ha.zl?!1:!0};jh.prototype.doSimulatedDragEnter=function(){if(this.mayDragIn()){var a=this.h;a.Ua.qi();hi(a);a=Dh;null!==a&&(a.h.gc="copy")}};jh.prototype.doSimulatedDragLeave=function(){var a=Dh;null!==a&&a.doSimulatedDragOut();this.doCancel()}; -jh.prototype.doSimulatedDragOver=function(){var a=this.h;if(null!==a){var b=Dh;null!==b&&null!==b.ic&&this.mayDragIn()&&(a.gc="copy",ii(this,b.ic.uj(),!1),Vh(this,this.pc,!1),Zh(this,a.Q.ga,!1,!0))}}; -jh.prototype.doSimulatedDrop=function(){var a=this.h;if(null!==a){var b=Dh;if(null!==b){var c=b.h;b.Vq=!0;Oh(this);this.mayDragIn()&&(this.Vb("Drop"),ii(this,b.ic.uj(),!0),Vh(this,this.pc,!1),null!==this.pc&&a.AF(this.pc.uj()),fi(this,a.Q.ga),a.yc(),b=a.selection,null!==this.pc?this.Nf="ExternalCopy":b=new K(D),this.pc=null,a.focus(),a.Ja("ExternalObjectsDropped",b,c),this.xk())}}}; -function ii(a,b,c){if(null===a.pc){var d=a.h;if(null!==d&&!d.ib&&!d.Ff){d.Bb=!c;d.mq=!c;a.wk=d.Q.ga;d=d.jp(b,d,!0);c=y.mg();Th(b,c);var e=c.x+c.width/2,g=c.y+c.height/2;y.dc(c);var h=a.pw;c=new na(D);var k=y.O();for(b=b.i;b.next();){var l=b.value;if(l.de()&&l.canCopy()){var m=l.location,l=d.na(l);k.n(h.x-(e-m.x),h.y-(g-m.y));l.location=k;l.Cf();c.add(l,Hh(k))}}y.A(k);for(d=d.i;d.next();)e=d.value,e instanceof G&&e.canCopy()&&c.add(e,Hh());a.pc=c;Bh(a,c.uj());null!==a.md&&(c=a.md,d=c.wn,c.Rl(a.wk.x- -(d.x+d.width/2),a.wk.y-(d.y+d.height/2)))}}}jh.prototype.doSimulatedDragOut=function(){var a=this.h;null!==a&&(this.mayCopy()||this.mayMove()?a.gc="":a.gc="no-drop")};function Ih(a){this.point=a;this.GF=Fd}y.ia("DraggingInfo",Ih);function Wh(a,b,c){this.Pc=a;this.info=b;this.OH=c} -function ji(){0=d&&(d=.1);for(var e=this,g=b.en(c,d,function(b){return e.findValidLinkablePort(b,a)},null,!0),d=Infinity,b=null,g=g.i;g.next();){var h=g.value,k=h.ca;if(k instanceof E){var l=h.eb(ec,y.O()),m=c.x-l.x,n=c.y-l.y;y.A(l);l=m*m+n*n;lc){if(null!==this.sc&&a===this.Og&&b===this.Pg)return!0;var d=b.zd;null===d&&(d="");if(a.Xw(d).count>=c)return!1}return!0}; -ji.prototype.isValidTo=function(a,b){if(null===a||null===b)return this.Dp;if(this.h.cb===this&&(null!==a.layer&&!a.layer.kt||!0!==b.OF))return!1;var c=b.uJ;if(Infinity>c){if(null!==this.sc&&a===this.Qg&&b===this.Rg)return!0;var d=b.zd;null===d&&(d="");if(a.Ig(d).count>=c)return!1}return!0};ji.prototype.isInSameNode=function(a,b){if(null===a||null===b)return!1;if(a===b)return!0;var c=a.ca,d=b.ca;return null!==c&&c===d}; -ji.prototype.isLinked=function(a,b){if(null===a||null===b)return!1;var c=a.ca;if(!(c instanceof E))return!1;var d=a.zd;null===d&&(d="");var e=b.ca;if(!(e instanceof E))return!1;var g=b.zd;null===g&&(g="");for(e=e.Ig(g);e.next();)if(g=e.value,g.Y===c&&g.bg===d)return!0;return!1}; -ji.prototype.isValidLink=function(a,b,c,d){if(!this.isValidFrom(a,b)||!this.isValidTo(c,d)||!(null===b||null===d||(b.GH&&d.tJ||!this.isInSameNode(b,d))&&(b.FH&&d.sJ||!this.isLinked(b,d)))||null!==this.sc&&(null!==a&&this.isLabelDependentOnLink(a,this.sc)||null!==c&&this.isLabelDependentOnLink(c,this.sc))||null!==a&&null!==c&&(null===a.data&&null!==c.data||null!==a.data&&null===c.data)||!this.isValidCycle(a,c,this.sc))return!1;if(null!==a){var e=a.ox;if(null!==e&&!e(a,b,c,d,this.sc))return!1}if(null!== -c&&(e=c.ox,null!==e&&!e(a,b,c,d,this.sc)))return!1;e=this.ox;return null!==e?e(a,b,c,d,this.sc):!0};ji.prototype.isLabelDependentOnLink=function(a,b){if(null===a)return!1;var c=a.Sd;if(null===c)return!1;if(c===b)return!0;var d=new K(E);d.add(a);return ki(this,c,b,d)};function ki(a,b,c,d){if(b===c)return!0;var e=b.Y;if(null!==e&&e.Ef&&(d.add(e),ki(a,e.Sd,c,d)))return!0;b=b.da;return null!==b&&b.Ef&&(d.add(b),ki(a,b.Sd,c,d))?!0:!1} -ji.prototype.isValidCycle=function(a,b,c){void 0===c&&(c=null);if(null===a||null===b)return this.Dp;var d=this.h.AJ;if(d!==vi){if(d===wi){if(null!==c&&!c.Oc)return!0;for(d=b.ge;d.next();){var e=d.value;if(e!==c&&e.Oc&&e.da===b)return!1}return!xi(this,a,b,c,!0)}if(d===yi){if(null!==c&&!c.Oc)return!0;for(d=a.ge;d.next();)if(e=d.value,e!==c&&e.Oc&&e.Y===a)return!1;return!xi(this,a,b,c,!0)}if(d===zi)return a===b?a=!0:(d=new K(E),d.add(b),a=Ai(this,d,a,b,c)),!a;if(d===Bi)return!xi(this,a,b,c,!1);if(d=== -Ci)return a===b?a=!0:(d=new K(E),d.add(b),a=Di(this,d,a,b,c)),!a}return!0};function xi(a,b,c,d,e){if(b===c)return!0;if(null===b||null===c)return!1;for(var g=b.ge;g.next();){var h=g.value;if(h!==d&&(!e||h.Oc)&&h.da===b&&(h=h.Y,h!==b&&xi(a,h,c,d,e)))return!0}return!1}function Ai(a,b,c,d,e){if(c===d)return!0;if(null===c||null===d||b.contains(c))return!1;b.add(c);for(var g=c.ge;g.next();){var h=g.value;if(h!==e&&h.da===c&&(h=h.Y,h!==c&&Ai(a,b,h,d,e)))return!0}return!1} -function Di(a,b,c,d,e){if(c===d)return!0;if(null===c||null===d||b.contains(c))return!1;b.add(c);for(var g=c.ge;g.next();){var h=g.value;if(h!==e){var k=h.Y,h=h.da,k=k===c?h:k;if(k!==c&&Di(a,b,k,d,e))return!0}}return!1}y.defineProperty(ji,{ox:"linkValidation"},function(){return this.dl},function(a){null!==a&&y.g(a,"function",ji,"linkValidation");this.dl=a});y.defineProperty(ji,{zx:"portTargeted"},function(){return this.SC},function(a){null!==a&&y.g(a,"function",ji,"portTargeted");this.SC=a}); -function ta(){0b.At+1&&c=d&&(d=.1);for(var e=this,g=b.en(c,d,function(b){return e.findValidLinkablePort(b,a)},null,!0),d=Infinity,b=null,g=g.i;g.next();){var h=g.value,k=h.ca;if(k instanceof E){var l=h.eb(ec,z.O()),m=c.x-l.x,n=c.y-l.y;z.A(l);l=m*m+n*n;lc){if(null!==this.sc&&a===this.Ng&&b===this.Og)return!0;var d=b.yd;null===d&&(d="");if(a.Yw(d).count>=c)return!1}return!0}; +ji.prototype.isValidTo=function(a,b){if(null===a||null===b)return this.Dp;if(this.h.cb===this&&(null!==a.layer&&!a.layer.lt||!0!==b.RF))return!1;var c=b.wJ;if(Infinity>c){if(null!==this.sc&&a===this.Pg&&b===this.Qg)return!0;var d=b.yd;null===d&&(d="");if(a.Hg(d).count>=c)return!1}return!0};ji.prototype.isInSameNode=function(a,b){if(null===a||null===b)return!1;if(a===b)return!0;var c=a.ca,d=b.ca;return null!==c&&c===d}; +ji.prototype.isLinked=function(a,b){if(null===a||null===b)return!1;var c=a.ca;if(!(c instanceof E))return!1;var d=a.yd;null===d&&(d="");var e=b.ca;if(!(e instanceof E))return!1;var g=b.yd;null===g&&(g="");for(e=e.Hg(g);e.next();)if(g=e.value,g.Y===c&&g.ag===d)return!0;return!1}; +ji.prototype.isValidLink=function(a,b,c,d){if(!this.isValidFrom(a,b)||!this.isValidTo(c,d)||!(null===b||null===d||(b.IH&&d.vJ||!this.isInSameNode(b,d))&&(b.HH&&d.uJ||!this.isLinked(b,d)))||null!==this.sc&&(null!==a&&this.isLabelDependentOnLink(a,this.sc)||null!==c&&this.isLabelDependentOnLink(c,this.sc))||null!==a&&null!==c&&(null===a.data&&null!==c.data||null!==a.data&&null===c.data)||!this.isValidCycle(a,c,this.sc))return!1;if(null!==a){var e=a.px;if(null!==e&&!e(a,b,c,d,this.sc))return!1}if(null!== +c&&(e=c.px,null!==e&&!e(a,b,c,d,this.sc)))return!1;e=this.px;return null!==e?e(a,b,c,d,this.sc):!0};ji.prototype.isLabelDependentOnLink=function(a,b){if(null===a)return!1;var c=a.Qd;if(null===c)return!1;if(c===b)return!0;var d=new K(E);d.add(a);return ki(this,c,b,d)};function ki(a,b,c,d){if(b===c)return!0;var e=b.Y;if(null!==e&&e.Df&&(d.add(e),ki(a,e.Qd,c,d)))return!0;b=b.da;return null!==b&&b.Df&&(d.add(b),ki(a,b.Qd,c,d))?!0:!1} +ji.prototype.isValidCycle=function(a,b,c){void 0===c&&(c=null);if(null===a||null===b)return this.Dp;var d=this.h.CJ;if(d!==vi){if(d===wi){if(null!==c&&!c.Oc)return!0;for(d=b.ee;d.next();){var e=d.value;if(e!==c&&e.Oc&&e.da===b)return!1}return!xi(this,a,b,c,!0)}if(d===yi){if(null!==c&&!c.Oc)return!0;for(d=a.ee;d.next();)if(e=d.value,e!==c&&e.Oc&&e.Y===a)return!1;return!xi(this,a,b,c,!0)}if(d===zi)return a===b?a=!0:(d=new K(E),d.add(b),a=Ai(this,d,a,b,c)),!a;if(d===Bi)return!xi(this,a,b,c,!1);if(d=== +Ci)return a===b?a=!0:(d=new K(E),d.add(b),a=Di(this,d,a,b,c)),!a}return!0};function xi(a,b,c,d,e){if(b===c)return!0;if(null===b||null===c)return!1;for(var g=b.ee;g.next();){var h=g.value;if(h!==d&&(!e||h.Oc)&&h.da===b&&(h=h.Y,h!==b&&xi(a,h,c,d,e)))return!0}return!1}function Ai(a,b,c,d,e){if(c===d)return!0;if(null===c||null===d||b.contains(c))return!1;b.add(c);for(var g=c.ee;g.next();){var h=g.value;if(h!==e&&h.da===c&&(h=h.Y,h!==c&&Ai(a,b,h,d,e)))return!0}return!1} +function Di(a,b,c,d,e){if(c===d)return!0;if(null===c||null===d||b.contains(c))return!1;b.add(c);for(var g=c.ee;g.next();){var h=g.value;if(h!==e){var k=h.Y,h=h.da,k=k===c?h:k;if(k!==c&&Di(a,b,k,d,e))return!0}}return!1}z.defineProperty(ji,{px:"linkValidation"},function(){return this.dl},function(a){null!==a&&z.g(a,"function",ji,"linkValidation");this.dl=a});z.defineProperty(ji,{Ax:"portTargeted"},function(){return this.VC},function(a){null!==a&&z.g(a,"function",ji,"portTargeted");this.VC=a}); +function ta(){0b.Bt+1&&c=a.x)c=0>=a.y?c+225:1<=a.y?c+135:c+180;else if(1<=a.x)0>=a.y?c+=315:1<=a.y&&(c+=45);else if(0>=a.y)c+=270;else if(1<=a.y)c+=90;else break a;0>c?c+=360:360<=c&&(c-=360);b.cursor=22.5>c?"e-resize":67.5>c?"se-resize":112.5>c?"s-resize":157.5>c?"sw-resize":202.5>c?"w-resize":247.5>c?"nw-resize":292.5>c?"n-resize":337.5>c?"ne-resize":"e-resize"}else if(b instanceof I)for(b=b.elements;b.next();)Ui(a, -b.value,c)}y.defineProperty(Ti,{Gt:"handleArchetype"},function(){return this.Uk},function(a){null!==a&&y.l(a,O,Ti,"handleArchetype");this.Uk=a});y.w(Ti,{handle:"handle"},function(){return this.ac});y.defineProperty(Ti,{fc:"adornedObject"},function(){return this.Ib},function(a){null!==a&&y.l(a,O,Ti,"adornedObject");this.Ib=a});Ti.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.h;return null!==a&&!a.ib&&a.lt&&a.Q.left?null!==this.findToolHandleAt(a.Fc.ga,this.name)?!0:!1:!1}; -Ti.prototype.doActivate=function(){var a=this.h;null!==a&&(this.ac=this.findToolHandleAt(a.Fc.ga,this.name),null!==this.ac&&(this.Ib=this.ac.ca.fc,this.ez.set(this.Ib.ca.location),this.Tv.set(this.Ib.Aa),this.Gy=this.computeCellSize(),this.Iy=this.computeMinSize(),this.Hy=this.computeMaxSize(),a.Ve=!0,this.FC=a.Ua.isEnabled,a.Ua.isEnabled=!1,this.Vb(this.name),this.ua=!0))};Ti.prototype.doDeactivate=function(){var a=this.h;null!==a&&(this.xk(),this.Ib=this.ac=null,this.ua=a.Ve=!1,a.Ua.isEnabled=this.FC)}; -Ti.prototype.doCancel=function(){this.Ib.Aa=this.Tv;this.Ib.ca.location=this.ez;this.stopTool()};Ti.prototype.doMouseMove=function(){var a=this.h;if(this.ua&&null!==a){var b=this.Iy,c=this.Hy,d=this.Gy,e=this.Ib.uE(a.Q.ga,y.O()),g=Xi;this.Ib instanceof X&&(g=Yi(this.Ib));b=this.computeResize(e,this.ac.alignment,b,c,d,!(g===Zi||g===$i||a.Q.shift));this.resize(b);a.dg();y.A(e)}}; -Ti.prototype.doMouseUp=function(){var a=this.h;if(this.ua&&null!==a){var b=this.Iy,c=this.Hy,d=this.Gy,e=this.Ib.uE(a.Q.ga,y.O()),g=Xi;this.Ib instanceof X&&(g=Yi(this.Ib));b=this.computeResize(e,this.ac.alignment,b,c,d,!(g===Zi||g===$i||a.Q.shift));this.resize(b);y.A(e);a.yc();this.Nf=this.name;a.Ja("PartResized",this.Ib,this.Tv)}this.stopTool()}; -Ti.prototype.resize=function(a){if(null!==this.h){var b=this.fc,c=b.ca,d=b.Jl(),e=b.hj(),g=Math.PI*d/180,h=Math.cos(g),g=Math.sin(g),k=0d?1:0,l=90d?1:0,d=180d?1:0,m=b.Fa.width,n=b.Fa.height;b.Aa=a.size;var p=c.position.copy();c.Cf();m=b.Fa.width-m;n=b.Fa.height-n;if(0!==m||0!==n)0!==m&&(p.x+=e*((a.x+m*l)*h-(a.y+n*k)*g)),0!==n&&(p.y+=e*((a.x+m*d)*g+(a.y+n*l)*h)),c.move(p),c instanceof E&&c.mf()}}; -Ti.prototype.computeResize=function(a,b,c,d,e,g){b.Ce()&&(b=ec);var h=this.fc.Fa,k=h.x,l=h.y,m=h.x+h.width,n=h.y+h.height,p=1;if(!g){var p=h.width,q=h.height;0>=p&&(p=1);0>=q&&(q=1);p=q/p}q=y.O();qb(a.x,a.y,k,l,e.width,e.height,q);a=h.copy();0>=b.x?0>=b.y?(a.x=Math.max(q.x,m-d.width),a.x=Math.min(a.x,m-c.width),a.width=Math.max(m-a.x,c.width),a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n-c.height),a.height=Math.max(n-a.y,c.height),g||(b=a.height/a.width,p=a.x)c=0>=a.y?c+225:1<=a.y?c+135:c+180;else if(1<=a.x)0>=a.y?c+=315:1<=a.y&&(c+=45);else if(0>=a.y)c+=270;else if(1<=a.y)c+=90;else break a;0>c?c+=360:360<=c&&(c-=360);b.cursor=22.5>c?"e-resize":67.5>c?"se-resize":112.5>c?"s-resize":157.5>c?"sw-resize":202.5>c?"w-resize":247.5>c?"nw-resize":292.5>c?"n-resize":337.5>c?"ne-resize":"e-resize"}else if(b instanceof I)for(b=b.elements;b.next();)Ui(a, +b.value,c)}z.defineProperty(Ti,{Ht:"handleArchetype"},function(){return this.Uk},function(a){null!==a&&z.l(a,O,Ti,"handleArchetype");this.Uk=a});z.w(Ti,{handle:"handle"},function(){return this.ac});z.defineProperty(Ti,{fc:"adornedObject"},function(){return this.Ib},function(a){null!==a&&z.l(a,O,Ti,"adornedObject");this.Ib=a});Ti.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.h;return null!==a&&!a.ib&&a.mt&&a.Q.left?null!==this.findToolHandleAt(a.Fc.ga,this.name)?!0:!1:!1}; +Ti.prototype.doActivate=function(){var a=this.h;null!==a&&(this.ac=this.findToolHandleAt(a.Fc.ga,this.name),null!==this.ac&&(this.Ib=this.ac.ca.fc,this.fz.set(this.Ib.ca.location),this.Uv.set(this.Ib.Aa),this.Hy=this.computeCellSize(),this.Jy=this.computeMinSize(),this.Iy=this.computeMaxSize(),a.Ue=!0,this.IC=a.Ua.isEnabled,a.Ua.isEnabled=!1,this.Wb(this.name),this.ua=!0))};Ti.prototype.doDeactivate=function(){var a=this.h;null!==a&&(this.xk(),this.Ib=this.ac=null,this.ua=a.Ue=!1,a.Ua.isEnabled=this.IC)}; +Ti.prototype.doCancel=function(){this.Ib.Aa=this.Uv;this.Ib.ca.location=this.fz;this.stopTool()};Ti.prototype.doMouseMove=function(){var a=this.h;if(this.ua&&null!==a){var b=this.Jy,c=this.Iy,d=this.Hy,e=this.Ib.xE(a.Q.ga,z.O()),g=Xi;this.Ib instanceof X&&(g=Yi(this.Ib));b=this.computeResize(e,this.ac.alignment,b,c,d,!(g===Zi||g===$i||a.Q.shift));this.resize(b);a.cg();z.A(e)}}; +Ti.prototype.doMouseUp=function(){var a=this.h;if(this.ua&&null!==a){var b=this.Jy,c=this.Iy,d=this.Hy,e=this.Ib.xE(a.Q.ga,z.O()),g=Xi;this.Ib instanceof X&&(g=Yi(this.Ib));b=this.computeResize(e,this.ac.alignment,b,c,d,!(g===Zi||g===$i||a.Q.shift));this.resize(b);z.A(e);a.yc();this.Mf=this.name;a.Ja("PartResized",this.Ib,this.Uv)}this.stopTool()}; +Ti.prototype.resize=function(a){if(null!==this.h){var b=this.fc,c=b.ca,d=b.Jl(),e=b.fj(),g=Math.PI*d/180,h=Math.cos(g),g=Math.sin(g),k=0d?1:0,l=90d?1:0,d=180d?1:0,m=b.Ga.width,n=b.Ga.height;b.Aa=a.size;var p=c.position.copy();c.Bf();m=b.Ga.width-m;n=b.Ga.height-n;if(0!==m||0!==n)0!==m&&(p.x+=e*((a.x+m*l)*h-(a.y+n*k)*g)),0!==n&&(p.y+=e*((a.x+m*d)*g+(a.y+n*l)*h)),c.move(p),c instanceof E&&c.lf()}}; +Ti.prototype.computeResize=function(a,b,c,d,e,g){b.Be()&&(b=ec);var h=this.fc.Ga,k=h.x,l=h.y,m=h.x+h.width,n=h.y+h.height,p=1;if(!g){var p=h.width,q=h.height;0>=p&&(p=1);0>=q&&(q=1);p=q/p}q=z.O();lb(a.x,a.y,k,l,e.width,e.height,q);a=h.copy();0>=b.x?0>=b.y?(a.x=Math.max(q.x,m-d.width),a.x=Math.min(a.x,m-c.width),a.width=Math.max(m-a.x,c.width),a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n-c.height),a.height=Math.max(n-a.y,c.height),g||(b=a.height/a.width,p=b.y?(a.width=Math.max(Math.min(q.x-k,d.width),c.width),a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n-c.height), a.height=Math.max(n-a.y,c.height),g||(b=a.height/a.width,p=b.y?(a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n-c.height),a.height=n-a.y,g||(a.width=a.height/p,a.x= -k+.5*(m-k-a.width))):1<=b.y&&(a.height=Math.max(Math.min(q.y-l,d.height),c.height),g||(a.width=a.height/p,a.x=k+.5*(m-k-a.width)));y.A(q);return a};Ti.prototype.computeMinSize=function(){var a=this.fc.eg.copy(),b=this.eg;!isNaN(b.width)&&b.width>a.width&&(a.width=b.width);!isNaN(b.height)&&b.height>a.height&&(a.height=b.height);return a}; -Ti.prototype.computeMaxSize=function(){var a=this.fc.We.copy(),b=this.We;!isNaN(b.width)&&b.widtha&&(a+=360));var b=Math.min(Math.abs(this.lJ),180),c=Math.min(Math.abs(this.kJ),b/2);!this.h.Q.shift&&0b-c&&(a=(Math.floor(a/b)+1)*b));360<=a?a-=360:0>a&&(a+=360);return a};y.defineProperty(aj,{lJ:"snapAngleMultiple"},function(){return this.ZC},function(a){y.g(a,"number",aj,"snapAngleMultiple");this.ZC=a}); -y.defineProperty(aj,{kJ:"snapAngleEpsilon"},function(){return this.YC},function(a){y.g(a,"number",aj,"snapAngleEpsilon");this.YC=a});y.w(aj,{$K:"originalAngle"},function(){return this.Sv});function cj(){0e.right&&(c.x-=d.width+5);c.xe.bottom&&(c.y-=d.height+5);c.ya.width&&(a.width=b.width);!isNaN(b.height)&&b.height>a.height&&(a.height=b.height);return a}; +Ti.prototype.computeMaxSize=function(){var a=this.fc.Ve.copy(),b=this.Ve;!isNaN(b.width)&&b.widtha&&(a+=360));var b=Math.min(Math.abs(this.nJ),180),c=Math.min(Math.abs(this.mJ),b/2);!this.h.Q.shift&&0b-c&&(a=(Math.floor(a/b)+1)*b));360<=a?a-=360:0>a&&(a+=360);return a};z.defineProperty(aj,{nJ:"snapAngleMultiple"},function(){return this.bD},function(a){z.g(a,"number",aj,"snapAngleMultiple");this.bD=a}); +z.defineProperty(aj,{mJ:"snapAngleEpsilon"},function(){return this.aD},function(a){z.g(a,"number",aj,"snapAngleEpsilon");this.aD=a});z.w(aj,{bL:"originalAngle"},function(){return this.Tv});function cj(){0e.right&&(c.x-=d.width+5);c.xe.bottom&&(c.y-=d.height+5);c.ye.right&&(c.x-=d.width+5);c.xe.bottom?c.y-(d.height+5):c.y+20;c.ya?c/2*a*a+b:-c/2*(--a*(a-2)-1)+b} -y.defineProperty(Ig,{RA:"starting"},function(){return this.To},function(a){this.To!==a&&(null!==a&&y.g(a,"function",Ig,"starting"),this.To=a)});y.w(Ig,{$J:"animationReasons"},function(){return this.Ou});Ig.prototype.prepareAutomaticAnimation=Ig.prototype.un=function(a){if(this.$e&&(this.Jj||this.Z.mn)){this.Ou.add(a);var b=this.RA;if(null===b||b(this,a))this.Ij&&this.qi(),this.wc=!0,this.cm=!1}}; -function Qj(a){if(a.$e&&(a.Ou.clear(),a.wc))if(!a.cm)a.wc=!1;else if(0===a.Jn){var b=+new Date;a.Jn=b;requestAnimationFrame(function(){if(!1!==a.wc&&!a.Ij&&a.Jn===b){var c=a.Z;c.ij("temporaryPixelRatio")&&(c.ck=1);Rj(c);a.wc=!1;c.Ja("AnimationStarting");Sj(a,b)}})}} -function Tj(a,b,c,d,e,g){if(a.wc&&(u&&y.l(b,O,Ig,"addPropToAnimation:obj"),!("position"===c&&d.N(e)||b instanceof D&&!b.FE))){var h=a.zm;if(h.contains(b)){b=h.na(b);var k=b.start,l=b.end;void 0===k[c]&&(k[c]=Uj(d));b.Jz&&void 0!==l[c]?b.Rz[c]=Uj(e):(g||(b.Rz[c]=Uj(e)),l[c]=Uj(e))}else k=new ma,l=new ma,k[c]=Uj(d),l[c]=Uj(e),c=l,d=k.position,d instanceof N&&!d.F()&&a.Ou.contains("Expand SubGraph")&&d.assign(c.position),h.add(b,new Pj(k,l,g));a.cm=!0}} +fj.prototype.showDefaultContextMenu=function(){var a=this.h;if(null!==a){null===this.wy&&(this.wy=ij(this));this.bo!==this.yf&&this.hideContextMenu();z.rt.innerHTML="";z.qt.addEventListener("click",this.qD,!1);var b=this,c=z.createElement("ul");c.className="defaultCXul";z.rt.appendChild(c);c.innerHTML="";for(var d=this.wy.i;d.next();){var e=d.value,g=e.text,h=e.visible;if("function"===typeof e.TD&&("function"!==typeof h||h(a))){h=z.createElement("li");h.className="defaultCXli";var k=z.createElement("a"); +k.className="defaultCXa";k.href="#";k.lG=e.TD;k.addEventListener("click",function(c){this.lG(a);b.stopTool();c.preventDefault();return!1},!1);k.textContent=g;h.appendChild(k);c.appendChild(h)}}z.rt.style.display="block";z.qt.style.display="block";this.yf=this.bo}};fj.prototype.hideDefaultContextMenu=function(){null!==this.yf&&this.yf===this.bo&&(z.rt.style.display="none",z.qt.style.display="none",z.qt.removeEventListener("click",this.qD,!1),this.yf=null)}; +z.defineProperty(fj,{yf:"currentContextMenu"},function(){return this.FB},function(a){null!==a&&z.l(a,da,fj,"currentContextMenu");this.FB=a;this.uy=null!==a?a.Xf:null});z.defineProperty(fj,{Nz:"currentObject"},function(){return this.IB},function(a){null!==a&&z.l(a,O,fj,"currentObject");this.IB=a});z.w(fj,{XK:"mouseDownPoint"},function(){return this.GC}); +function jj(){0e.right&&(c.x-=d.width+5);c.xe.bottom?c.y-(d.height+5):c.y+20;c.ya?c/2*a*a+b:-c/2*(--a*(a-2)-1)+b} +z.defineProperty(Ig,{VA:"starting"},function(){return this.To},function(a){this.To!==a&&(null!==a&&z.g(a,"function",Ig,"starting"),this.To=a)});z.w(Ig,{bK:"animationReasons"},function(){return this.Pu});Ig.prototype.prepareAutomaticAnimation=Ig.prototype.un=function(a){if(this.Ze&&(this.Jj||this.Z.mn)){this.Pu.add(a);var b=this.VA;if(null===b||b(this,a))this.Ij&&this.oi(),this.wc=!0,this.bm=!1}}; +function Qj(a){if(a.Ze&&(a.Pu.clear(),a.wc))if(!a.bm)a.wc=!1;else if(0===a.Jn){var b=+new Date;a.Jn=b;requestAnimationFrame(function(){if(!1!==a.wc&&!a.Ij&&a.Jn===b){var c=a.Z;c.gj("temporaryPixelRatio")&&(c.ck=1);Rj(c);a.wc=!1;c.Ja("AnimationStarting");Sj(a,b)}})}} +function Tj(a,b,c,d,e,g){if(a.wc&&(u&&z.l(b,O,Ig,"addPropToAnimation:obj"),!("position"===c&&d.N(e)||b instanceof D&&!b.IE))){var h=a.ym;if(h.contains(b)){b=h.na(b);var k=b.start,l=b.end;void 0===k[c]&&(k[c]=Uj(d));b.Lz&&void 0!==l[c]?b.Vz[c]=Uj(e):(g||(b.Vz[c]=Uj(e)),l[c]=Uj(e))}else k=new ma,l=new ma,k[c]=Uj(d),l[c]=Uj(e),c=l,d=k.position,d instanceof N&&!d.F()&&a.Pu.contains("Expand SubGraph")&&d.assign(c.position),h.add(b,new Pj(k,l,g));a.bm=!0}} function Uj(a){return a instanceof N?a.copy():a instanceof Ea?a.copy():a} -function Sj(a,b){var c;function d(){if(!1!==g.Ij&&g.Jn===b){var a=+new Date,c=a>s?m:a-r;Vj(g);Wj(g,e,q,h,c,m);g.av&&g.av();hi(e);Xj(g);a>s?Yj(g):requestAnimationFrame(d)}}void 0===c&&(c=new ma);var e=a.Z;if(null!==e){a.Ij=!0;var g=a,h=c.yK||a.JB,k=c.YK||null,l=c.ZK||null,m=c.duration||a.Dy,n=a.tG;for(c=a.zm.i;c.next();){var p=c.value.start.position;p instanceof N&&(p.F()||p.assign(n))}a.DB=h;a.av=k;a.bv=l;a.CB=m;a.GB=a.zm;var q=a.GB;for(c=q.i;c.next();)k=c.value.end,k["position:placeholder"]&&(l= +function Sj(a,b){var c;function d(){if(!1!==g.Ij&&g.Jn===b){var a=+new Date,c=a>s?m:a-r;Vj(g);Wj(g,e,q,h,c,m);g.bv&&g.bv();hi(e);Xj(g);a>s?Yj(g):requestAnimationFrame(d)}}void 0===c&&(c=new ma);var e=a.Z;if(null!==e){a.Ij=!0;var g=a,h=c.AK||a.NB,k=c.$K||null,l=c.aL||null,m=c.duration||a.Ey,n=a.wG;for(c=a.ym.i;c.next();){var p=c.value.start.position;p instanceof N&&(p.F()||p.assign(n))}a.HB=h;a.bv=k;a.cv=l;a.GB=m;a.KB=a.ym;var q=a.KB;for(c=q.i;c.next();)k=c.value.end,k["position:placeholder"]&&(l= k["position:placeholder"],n=l.eb(Zb),n.x+=l.padding.left,n.y+=l.padding.top,k["position:placeholder"]=n);Vj(a);Wj(a,e,q,h,0,m);hi(a.Z);Xj(a);var r=+new Date,s=r+m;g.Jn===b&&requestAnimationFrame(function(){d()})}} -var Zj={opacity:function(a,b,c,d,e,g){a.opacity=d(e,b,c-b,g)},position:function(a,b,c,d,e,g){e!==g?a.Mx(d(e,b.x,c.x-b.x,g),d(e,b.y,c.y-b.y,g)):a.position=new N(d(e,b.x,c.x-b.x,g),d(e,b.y,c.y-b.y,g))},"position:node":function(a,b,c,d,e,g){var h=a.W,k=c.W;c=k.x+k.width/2-h.width/2;h=k.y+k.height/2-h.height/2;e!==g?a.Mx(d(e,b.x,c-b.x,g),d(e,b.y,h-b.y,g)):a.position=new N(d(e,b.x,c-b.x,g),d(e,b.y,h-b.y,g))},"position:placeholder":function(a,b,c,d,e,g){e!==g?a.Mx(d(e,b.x,c.x-b.x,g),d(e,b.y,c.y-b.y,g)): -a.position=new N(d(e,b.x,c.x-b.x,g),d(e,b.y,c.y-b.y,g))},scale:function(a,b,c,d,e,g){a.scale=d(e,b,c-b,g)},visible:function(a,b,c,d,e,g){a.visible=e!==g?b:c}};function Vj(a){if(!a.vo){var b=a.Z;a.sD=b.Bb;a.qB=b.Fe;a.rB=b.uu;b.Bb=!0;b.Fe=!0;b.uu=!0;a.vo=!0}}function Xj(a){var b=a.Z;b.Bb=a.sD;b.Fe=a.qB;b.uu=a.rB;a.vo=!1} -function Wj(a,b,c,d,e,g){for(c=c.i;c.next();){var h=c.key,k=c.value,l=k.start,k=k.end,m;for(m in k)if(("position"!==m||!k["position:placeholder"]&&!k["position:node"])&&void 0!==Zj[m])Zj[m](h,l[m],k[m],d,e,g)}d=b.cA;b.cA=!0;m=a.JB;0!==a.Tq&&0!==a.Sq&&(c=a.Tq,b.bc=m(e,c,a.Sq-c,g));null!==a.Rq&&null!==a.Qq&&(c=a.Rq,a=a.Qq,b.sb=new N(m(e,c.x,a.x-c.x,g),m(e,c.y,a.y-c.y,g)));b.cA=d}Ig.prototype.stopAnimation=Ig.prototype.qi=function(){!0===this.wc&&(this.wc=!1,this.cm&&this.Z.De());this.Ij&&this.$e&&Yj(this)}; -function Yj(a){a.Ij=!1;a.Jn=0;a.cm=!1;a.Rq=null;a.Qq=null;a.Tq=0;a.Sq=0;Vj(a);for(var b=a.Z,c=a.DB,d=a.CB,e=a.GB.i;e.next();){var g=e.key,h=e.value,k=h.start,l=h.end,m=h.Rz,n;for(n in l)if(void 0!==Zj[n]){var p=n;!h.Jz||"position:node"!==p&&"position:placeholder"!==p||(p="position");Zj[p](g,k[n],void 0!==m[n]?m[n]:h.Jz?k[n]:l[n],c,d,d)}h.Bx&&g.xd(!1)}for(c=a.Z.links;c.next();)d=c.value,null!==d.Mo&&(d.points=d.Mo,d.Mo=null);b.px.clear();b.ck=null;b.yc();b.dg();ak(b);Xj(a);a.zm=new na(O,Pj);a.bv&& -a.bv();a.bv=null;a.av=null;b.Ja("AnimationFinished");b.De()}function bk(a,b,c){var d=b.W,e=c.W,g=null;c instanceof F&&(g=c.placeholder);null!==g?(d=g.eb(Zb),d.x+=g.padding.left,d.y+=g.padding.top,Tj(a,b,"position",d,b.position,!1)):Tj(a,b,"position",new N(e.x+e.width/2-d.width/2,e.y+e.height/2-d.height/2),b.position,!1);Tj(a,b,"scale",.01,b.scale,!1);if(b instanceof F)for(b=b.Hc;b.next();)g=b.value,g instanceof E&&bk(a,g,c)} -function ck(a,b,c){if(b.isVisible()){var d=null;c instanceof F&&(d=c.placeholder);null!==d?Tj(a,b,"position:placeholder",b.position,d,!0):Tj(a,b,"position:node",b.position,c,!0);Tj(a,b,"scale",b.scale,.01,!0);a.wc&&(d=a.zm,d.contains(b)&&(d.na(b).Bx=!0));if(b instanceof F)for(b=b.Hc;b.next();)d=b.value,d instanceof E&&ck(a,d,c)}}function dk(a,b,c){a.wc&&(null===a.Rq&&b.F()&&null===a.Qq&&(a.Rq=b.copy()),a.Qq=c.copy(),a.cm=!0)} -function ek(a,b,c){a.wc&&a.Z.mn&&(0===a.Tq&&0===a.Sq&&(a.Tq=b),a.Sq=c,a.cm=!0)}y.defineProperty(Ig,{isEnabled:"isEnabled"},function(){return this.$e},function(a){y.g(a,"boolean",Ig,"isEnabled");this.$e=a});y.defineProperty(Ig,{duration:"duration"},function(){return this.Dy},function(a){y.g(a,"number",Ig,"duration");1>a&&y.ka(a,">= 1",Ig,"duration");this.Dy=a});y.w(Ig,{nf:"isAnimating"},function(){return this.Ij});y.w(Ig,{iI:"isTicking"},function(){return this.vo}); -y.defineProperty(Ig,{ME:"isInitial"},function(){return this.Jj},function(a){y.g(a,"boolean",Ig,"isInitial");this.Jj=a});function Pj(a,b,c){this.start=a;this.end=b;this.Rz=new ma;this.Jz=c;this.Bx=!1}function vg(){0a&&z.ka(a,">= 1",Ig,"duration");this.Ey=a});z.w(Ig,{mf:"isAnimating"},function(){return this.Ij});z.w(Ig,{kI:"isTicking"},function(){return this.vo}); +z.defineProperty(Ig,{PE:"isInitial"},function(){return this.Jj},function(a){z.g(a,"boolean",Ig,"isInitial");this.Jj=a});function Pj(a,b,c){this.start=a;this.end=b;this.Vz=new ma;this.Lz=c;this.Cx=!1}function vg(){0=a)return b;for(var c=0,d=0,e=0,g=0,h=0,k=this.mb.i;k.next();){var l=k.value;l instanceof F?e++:l instanceof E?d++:l instanceof G?g++:l instanceof da?h++:c++}k="";0=a)return b;for(var c=0,d=0,e=0,g=0,h=0,k=this.mb.i;k.next();){var l=k.value;l instanceof F?e++:l instanceof E?d++:l instanceof G?g++:l instanceof da?h++:c++}k="";0=d.count)a=d.count;else if(d.ea(a)===b)return-1;d.Qd(a,b);b.Jt(c);d=this.h;null!==d&&(c?d.ta():d.zp(b));kk(this,a,b);return a}; -f.Ue=function(a,b,c){if(!c&&b.layer!==this&&null!==b.layer)return b.layer.Ue(a,b,c);var d=this.mb;if(0>a||a>=d.length){if(a=d.indexOf(b),0>a)return-1}else if(d.ea(a)!==b&&(a=d.indexOf(b),0>a))return-1;b.Kt(c);d.ed(a);d=this.h;null!==d&&(c?d.ta():d.Ue(b));b.Ev=null;return a}; -function kk(a,b,c){b=lk(a,b,c);if(c instanceof F&&null!==c&&isNaN(c.Gn)){if(0!==c.Hc.count){for(var d=-1,e=a.mb.o,g=e.length,h=0;hd&&k.Va===c&&(d=h,0<=b))break}!(0>d)&&d=e)return b;0>b&&(b=a.indexOf(c));if(0>b)return-1;for(var g=b-1,h=NaN;0<=g;){h=a.ea(g).Gn;if(!isNaN(h))break;g--}for(var k=b+1,l=NaN;kd)for(;;){if(-1===g||h<=d){g++;if(g===b)break;a.ed(b);a.Qd(g,c);return g}for(h=NaN;0<=--g&&(h=a.ea(g).Gn,isNaN(h)););}else if(!isNaN(l)&&l=d){k--;if(k===b)break;a.ed(b);a.Qd(k,c);return k}for(l=NaN;++ka||1=a)return b;for(var c=this.Xb.i;c.next();)b+="\n "+c.value.toString(a-1);return b};C.fromDiv=function(a){var b=a;"string"===typeof a&&(b=window.document.getElementById(a));return b instanceof HTMLDivElement&&b.Z instanceof C?b.Z:null}; -y.defineProperty(C,{Cl:"div"},function(){return this.Pb},function(a){null!==a&&y.l(a,HTMLDivElement,C,"div");if(this.Pb!==a){nk=[];var b=this.Pb;null!==b?(b.Z=void 0,b.innerHTML="",null!==this.Fb&&(this.Fb.removeEventListener("touchstart",this.UF,!1),this.Fb.removeEventListener("touchmove",this.TF,!1),this.Fb.removeEventListener("touchend",this.SF,!1),this.Fb.Nd.Z=null),b=this.gb,null!==b&&(b.Xe.each(function(a){a.cancelWaitAfter()}),b.fg.each(function(a){a.cancelWaitAfter()}),b.gg.each(function(a){a.cancelWaitAfter()})), -b.cancelWaitAfter(),this.cb.doCancel(),this.hd=this.Fb=null,window.removeEventListener("resize",this.cG,!1),window.removeEventListener("mousemove",this.Lp,!0),window.removeEventListener("mousedown",this.Kp,!0),window.removeEventListener("mouseup",this.Np,!0),window.removeEventListener("mousewheel",this.Ah,!0),window.removeEventListener("DOMMouseScroll",this.Ah,!0),window.removeEventListener("mouseout",this.Mp,!0)):this.fh=!1;this.Pb=null;if(null!==a){if(b=a.Z)b.Cl=null;zk(this,a);this.Tp()}}}); -function Ck(a){var b=a.Fb;b.addEventListener("touchstart",a.UF,!1);b.addEventListener("touchmove",a.TF,!1);b.addEventListener("touchend",a.SF,!1);b.addEventListener("mousemove",a.Lp,!1);b.addEventListener("mousedown",a.Kp,!1);b.addEventListener("mouseup",a.Np,!1);b.addEventListener("mousewheel",a.Ah,!1);b.addEventListener("DOMMouseScroll",a.Ah,!1);b.addEventListener("mouseout",a.Mp,!1);b.addEventListener("keydown",a.mI,!1);b.addEventListener("keyup",a.nI,!1);b.addEventListener("selectstart",function(a){a.preventDefault(); -return!1},!1);b.addEventListener("contextmenu",function(a){a.preventDefault();return!1},!1);b.addEventListener("gesturechange",function(b){a.gb.tp===Kj&&b.preventDefault()},!1);b.addEventListener("pointerdown",a.NI,!1);b.addEventListener("pointermove",a.QI,!1);b.addEventListener("pointerleave",a.OI,!1);window.addEventListener("resize",a.cG,!1)}C.prototype.computePixelRatio=function(){return null!==this.ck?this.ck:this.qG};C.prototype.doMouseMove=function(){this.cb.doMouseMove()}; +vg.prototype.findObjectAt=vg.prototype.pe=function(a,b,c){void 0===b&&(b=null);void 0===c&&(c=null);if(!1===this.ll)return null;u&&!a.F()&&z.k("findObjectAt: Point must have a real value, not: "+a.toString());var d=!1;this.h.xb.Ma(a)&&(d=!0);for(var e=z.O(),g=this.mb.o,h=g.length;h--;){var k=g[h];if((!0!==d||!1!==fk(k))&&k.isVisible()&&(e.assign(a),vb(e,k.ph),k=k.pe(e,b,c),null!==k&&(null!==b&&(k=b(k)),null!==k&&(null===c||c(k)))))return z.A(e),k}z.A(e);return null}; +vg.prototype.findObjectsAt=vg.prototype.op=function(a,b,c,d){void 0===b&&(b=null);void 0===c&&(c=null);d instanceof J||d instanceof K||(d=new K(O));if(!1===this.ll)return d;u&&!a.F()&&z.k("findObjectsAt: Point must have a real value, not: "+a.toString());var e=!1;this.h.xb.Ma(a)&&(e=!0);for(var g=z.O(),h=this.mb.o,k=h.length;k--;){var l=h[k];!0===e&&!1===fk(l)||!l.isVisible()||(g.assign(a),vb(g,l.ph),l.op(g,b,c,d)&&(null!==b&&(l=b(l)),null===l||null!==c&&!c(l)||d.add(l)))}z.A(g);return d}; +vg.prototype.findObjectsIn=vg.prototype.ok=function(a,b,c,d,e){void 0===b&&(b=null);void 0===c&&(c=null);void 0===d&&(d=!1);e instanceof J||e instanceof K||(e=new K(O));if(!1===this.ll)return e;u&&!a.F()&&z.k("findObjectsIn: Rect must have a real value, not: "+a.toString());var g=!1;this.h.xb.mk(a)&&(g=!0);for(var h=this.mb.o,k=h.length;k--;){var l=h[k];(!0!==g||!1!==fk(l))&&l.isVisible()&&l.ok(a,b,c,d,e)&&(null!==b&&(l=b(l)),null===l||null!==c&&!c(l)||e.add(l))}return e}; +vg.prototype.Wz=function(a,b,c,d,e,g,h){if(!1===this.ll)return e;for(var k=this.mb.o,l=k.length;l--;){var m=k[l];(!0!==h||!1!==fk(m))&&g(m)&&m.isVisible()&&m.ok(a,b,c,d,e)&&(null!==b&&(m=b(m)),null===m||null!==c&&!c(m)||e.add(m))}return e}; +vg.prototype.findObjectsNear=vg.prototype.en=function(a,b,c,d,e,g){void 0===c&&(c=null);void 0===d&&(d=null);void 0===e&&(e=!0);if(!1!==e&&!0!==e){if(e instanceof J||e instanceof K)g=e;e=!0}g instanceof J||g instanceof K||(g=new K(O));if(!1===this.ll)return g;u&&!a.F()&&z.k("findObjectsNear: Point must have a real value, not: "+a.toString());var h=!1;this.h.xb.Ma(a)&&(h=!0);for(var k=z.O(),l=z.O(),m=this.mb.o,n=m.length;n--;){var p=m[n];!0===h&&!1===fk(p)||!p.isVisible()||(k.assign(a),vb(k,p.ph), +l.n(a.x+b,a.y),vb(l,p.ph),p.en(k,l,c,d,e,g)&&(null!==c&&(p=c(p)),null===p||null!==d&&!d(p)||g.add(p)))}z.A(k);z.A(l);return g};f=vg.prototype;f.Jf=function(a,b){if(this.visible){var c;c=void 0===b?a.xb:b;for(var d=this.mb.o,e=d.length,g=0;g=d.count)a=d.count;else if(d.ea(a)===b)return-1;d.Od(a,b);b.Kt(c);d=this.h;null!==d&&(c?d.ta():d.zp(b));kk(this,a,b);return a}; +f.Te=function(a,b,c){if(!c&&b.layer!==this&&null!==b.layer)return b.layer.Te(a,b,c);var d=this.mb;if(0>a||a>=d.length){if(a=d.indexOf(b),0>a)return-1}else if(d.ea(a)!==b&&(a=d.indexOf(b),0>a))return-1;b.Lt(c);d.ed(a);d=this.h;null!==d&&(c?d.ta():d.Te(b));b.Fv=null;return a}; +function kk(a,b,c){b=lk(a,b,c);if(c instanceof F&&null!==c&&isNaN(c.Gn)){if(0!==c.Hc.count){for(var d=-1,e=a.mb.o,g=e.length,h=0;hd&&k.Va===c&&(d=h,0<=b))break}!(0>d)&&d=e)return b;0>b&&(b=a.indexOf(c));if(0>b)return-1;for(var g=b-1,h=NaN;0<=g;){h=a.ea(g).Gn;if(!isNaN(h))break;g--}for(var k=b+1,l=NaN;kd)for(;;){if(-1===g||h<=d){g++;if(g===b)break;a.ed(b);a.Od(g,c);return g}for(h=NaN;0<=--g&&(h=a.ea(g).Gn,isNaN(h)););}else if(!isNaN(l)&&l=d){k--;if(k===b)break;a.ed(b);a.Od(k,c);return k}for(l=NaN;++ka||1=a)return b;for(var c=this.Yb.i;c.next();)b+="\n "+c.value.toString(a-1);return b};C.fromDiv=function(a){var b=a;"string"===typeof a&&(b=window.document.getElementById(a));return b instanceof HTMLDivElement&&b.Z instanceof C?b.Z:null}; +z.defineProperty(C,{Cl:"div"},function(){return this.Pb},function(a){null!==a&&z.l(a,HTMLDivElement,C,"div");if(this.Pb!==a){nk=[];var b=this.Pb;null!==b?(b.Z=void 0,b.innerHTML="",null!==this.Fb&&(this.Fb.removeEventListener("touchstart",this.XF,!1),this.Fb.removeEventListener("touchmove",this.WF,!1),this.Fb.removeEventListener("touchend",this.VF,!1),this.Fb.Ld.Z=null),b=this.gb,null!==b&&(b.We.each(function(a){a.cancelWaitAfter()}),b.eg.each(function(a){a.cancelWaitAfter()}),b.fg.each(function(a){a.cancelWaitAfter()})), +b.cancelWaitAfter(),this.cb.doCancel(),this.hd=this.Fb=null,window.removeEventListener("resize",this.fG,!1),window.removeEventListener("mousemove",this.Lp,!0),window.removeEventListener("mousedown",this.Kp,!0),window.removeEventListener("mouseup",this.Np,!0),window.removeEventListener("mousewheel",this.zh,!0),window.removeEventListener("DOMMouseScroll",this.zh,!0),window.removeEventListener("mouseout",this.Mp,!0)):this.eh=!1;this.Pb=null;if(null!==a){if(b=a.Z)b.Cl=null;zk(this,a);this.Tp()}}}); +function Ck(a){var b=a.Fb;b.addEventListener("touchstart",a.XF,!1);b.addEventListener("touchmove",a.WF,!1);b.addEventListener("touchend",a.VF,!1);b.addEventListener("mousemove",a.Lp,!1);b.addEventListener("mousedown",a.Kp,!1);b.addEventListener("mouseup",a.Np,!1);b.addEventListener("mousewheel",a.zh,!1);b.addEventListener("DOMMouseScroll",a.zh,!1);b.addEventListener("mouseout",a.Mp,!1);b.addEventListener("keydown",a.oI,!1);b.addEventListener("keyup",a.pI,!1);b.addEventListener("selectstart",function(a){a.preventDefault(); +return!1},!1);b.addEventListener("contextmenu",function(a){a.preventDefault();return!1},!1);b.addEventListener("gesturechange",function(b){a.gb.tp===Kj&&b.preventDefault()},!1);b.addEventListener("pointerdown",a.QI,!1);b.addEventListener("pointermove",a.SI,!1);b.addEventListener("pointerleave",a.RI,!1);window.addEventListener("resize",a.fG,!1)}C.prototype.computePixelRatio=function(){return null!==this.ck?this.ck:this.tG};C.prototype.doMouseMove=function(){this.cb.doMouseMove()}; C.prototype.doMouseDown=function(){this.cb.doMouseDown()};C.prototype.doMouseUp=function(){this.cb.doMouseUp()};C.prototype.doMouseWheel=function(){this.cb.doMouseWheel()};C.prototype.doKeyDown=function(){this.cb.doKeyDown()};C.prototype.doKeyUp=function(){this.cb.doKeyUp()};C.prototype.doFocus=function(){this.focus()};C.prototype.focus=C.prototype.focus=function(){this.Fb&&this.Fb.focus()}; -function Rj(a){if(null!==a.Fb){var b=a.Pb;if(0!==b.clientWidth&&0!==b.clientHeight){var c=a.Vk?a.Jd:0,d=a.Gj?a.Jd:0,e=a.kd;a.kd=a.computePixelRatio();a.kd!==e&&(a.hr=!0,a.De());if(b.clientWidth!==a.Jb+c||b.clientHeight!==a.Ob+d)a.im=!0,a.we=!0,b=a.Sb,null!==b&&b.lx&&a.vl===kh&&b.I(),a.Zd||a.De()}}} -function wk(a){var b=new vg;b.name="Background";a.et(b);b=new vg;b.name="";a.et(b);b=new vg;b.name="Foreground";a.et(b);b=new vg;b.name="Adornment";b.Nc=!0;a.et(b);b=new vg;b.name="Tool";b.Nc=!0;b.GE=!0;a.et(b);b=new vg;b.name="Grid";b.xf=!1;b.kg=!1;b.Nc=!0;a.KG(b,a.El("Background"))} +function Rj(a){if(null!==a.Fb){var b=a.Pb;if(0!==b.clientWidth&&0!==b.clientHeight){var c=a.Vk?a.Hd:0,d=a.Gj?a.Hd:0,e=a.kd;a.kd=a.computePixelRatio();a.kd!==e&&(a.hr=!0,a.Ce());if(b.clientWidth!==a.Jb+c||b.clientHeight!==a.Ob+d)a.hm=!0,a.ue=!0,b=a.Sb,null!==b&&b.mx&&a.vl===kh&&b.I(),a.Xd||a.Ce()}}} +function wk(a){var b=new vg;b.name="Background";a.ft(b);b=new vg;b.name="";a.ft(b);b=new vg;b.name="Foreground";a.ft(b);b=new vg;b.name="Adornment";b.Nc=!0;a.ft(b);b=new vg;b.name="Tool";b.Nc=!0;b.JE=!0;a.ft(b);b=new vg;b.name="Grid";b.wf=!1;b.jg=!1;b.Nc=!0;a.MG(b,a.El("Background"))} function Dk(a){a.td=new I(Ek);a.td.name="GRID";var b=new X;b.Hb="LineH";b.stroke="lightgray";b.ub=.5;b.interval=1;a.td.add(b);b=new X;b.Hb="LineH";b.stroke="gray";b.ub=.5;b.interval=5;a.td.add(b);b=new X;b.Hb="LineH";b.stroke="gray";b.ub=1;b.interval=10;a.td.add(b);b=new X;b.Hb="LineV";b.stroke="lightgray";b.ub=.5;b.interval=1;a.td.add(b);b=new X;b.Hb="LineV";b.stroke="gray";b.ub=.5;b.interval=5;a.td.add(b);b=new X;b.Hb="LineV";b.stroke="gray";b.ub=1;b.interval=10;a.td.add(b);b=new D;b.add(a.td); -b.Jf="Grid";b.Gn=0;b.ix=!1;b.FE=!1;b.kg=!1;b.qx="GRID";a.add(b);a.mb.remove(b);a.td.visible=!1}C.prototype.sG=function(){this.Z.isEnabled?this.Z.oH(this):Fk(this.Z)};C.prototype.GC=function(a){this.Z.isEnabled?(this.Z.gz=!0,this.Z.iz=a.target.scrollTop,this.Z.hz=a.target.scrollLeft):Fk(this.Z)}; -C.prototype.diagramScroll=C.prototype.oH=function(a){if(this.gz&&null!==this.Fb){this.fw=!0;var b=this.ad,c=this.xb,d=b.width,e=c.width,g=b.height,h=c.height,k=b.right,l=c.right,m=b.bottom,n=c.bottom,p=b.x,q=c.x,b=b.y,c=c.y,r=this.scale,s;el&&(this.position=s.n(-(this.jw.scrollWidth-this.Jb)+a.scrollLeft-this.Jb/r+k,this.position.y))),a.wG&&this.ze&&(bn&&(this.position=s.n(this.position.x,-(this.jw.scrollHeight-this.Ob)+a.scrollTop-this.Ob/r+m))),y.A(s),Gk(this),this.im=this.fw=!1,b=this.ad,c=this.xb,k=b.right,l=c.right,m=b.bottom,n=c.bottom,p=b.x,q=c.x,b=b.y,c=c.y,e>=d&&p>=q&&k<=l&&(this.ws.style.width="1px"),h>=g&& -b>=c&&m<=n&&(this.ws.style.height="1px"))}};C.prototype.computeBounds=C.prototype.sh=function(){0c&&(e=c),ea.yh&&(e=a.yh),e):b===Ok?(e=l>k?(h-a.Jd)/d:(g-a.Jd)/e,e>c&&(e=c),ea.yh&&(e=a.yh),e):a.scale}C.prototype.zoomToFit=C.prototype.zoomToFit=function(){this.scale=Kk(this,Nk)}; -C.prototype.zoomToRect=function(a,b){void 0===b&&(b=Nk);var c=a.width,d=a.height;if(!(0===c||0===d||isNaN(c)&&isNaN(d))){var e=1;if(b===Nk||b===Ok)if(isNaN(c))e=this.xb.height*this.scale/d;else if(isNaN(d))e=this.xb.width*this.scale/c;else var e=this.Jb,g=this.Ob,e=b===Ok?g/d>e/c?(g-(this.Gj?this.Jd:0))/d:(e-(this.Vk?this.Jd:0))/c:Math.min(g/d,e/c);this.scale=e;this.position=new N(a.x,a.y)}};y.defineProperty(C,{cA:null},function(){return this.Vc},function(a){this.Vc=a}); -C.prototype.alignDocument=function(a,b){this.Hj&&Mk(this,this.sh());var c=this.ad,d=this.xb;this.position=new N(c.x+(a.x*c.width+a.offsetX)-(b.x*d.width-b.offsetX),c.y+(a.y*c.height+a.offsetY)-(b.y*d.height-b.offsetY))}; -function Lk(a,b,c,d,e,g,h){var k=b.x,l=b.y;if(h||a.IA===ok)g.dd()&&(d>c.width&&(k=c.x+(g.x*c.width+g.offsetX)-(g.x*d-g.offsetX)),e>c.height&&(l=c.y+(g.y*c.height+g.offsetY)-(g.y*e-g.offsetY))),g=a.wF,h=d-c.width,dc.left?k=c.left:kc.top?l=c.top:ll&&(this.position=s.n(-(this.kw.scrollWidth-this.Jb)+t-this.Jb/r+k,this.position.y))),a.zG&&this.ye&&(bn&&(this.position=s.n(this.position.x,-(this.kw.scrollHeight-this.Ob)+a.scrollTop-this.Ob/r+m))),z.A(s),Gk(this),this.hm=this.gw=!1,b=this.ad,c=this.xb,k=b.right,l=c.right, +m=b.bottom,n=c.bottom,p=b.x,q=c.x,b=b.y,c=c.y,e>=d&&p>=q&&k<=l&&(this.xs.style.width="1px"),h>=g&&b>=c&&m<=n&&(this.xs.style.height="1px"))}};C.prototype.computeBounds=C.prototype.rh=function(){0c&&(e=c),ea.xh&&(e=a.xh),e):b===Ok?(e=l>k?(h-a.Hd)/d:(g-a.Hd)/e,e>c&&(e=c),ea.xh&&(e=a.xh),e):a.scale}C.prototype.zoomToFit=C.prototype.zoomToFit=function(){this.scale=Kk(this,Nk)}; +C.prototype.zoomToRect=function(a,b){void 0===b&&(b=Nk);var c=a.width,d=a.height;if(!(0===c||0===d||isNaN(c)&&isNaN(d))){var e=1;if(b===Nk||b===Ok)if(isNaN(c))e=this.xb.height*this.scale/d;else if(isNaN(d))e=this.xb.width*this.scale/c;else var e=this.Jb,g=this.Ob,e=b===Ok?g/d>e/c?(g-(this.Gj?this.Hd:0))/d:(e-(this.Vk?this.Hd:0))/c:Math.min(g/d,e/c);this.scale=e;this.position=new N(a.x,a.y)}};z.defineProperty(C,{gA:null},function(){return this.Vc},function(a){this.Vc=a}); +C.prototype.alignDocument=function(a,b){this.Hj&&Mk(this,this.rh());var c=this.ad,d=this.xb;this.position=new N(c.x+(a.x*c.width+a.offsetX)-(b.x*d.width-b.offsetX),c.y+(a.y*c.height+a.offsetY)-(b.y*d.height-b.offsetY))}; +function Lk(a,b,c,d,e,g,h){var k=b.x,l=b.y;if(h||a.MA===ok)g.dd()&&(d>c.width&&(k=c.x+(g.x*c.width+g.offsetX)-(g.x*d-g.offsetX)),e>c.height&&(l=c.y+(g.y*c.height+g.offsetY)-(g.y*e-g.offsetY))),g=a.zF,h=d-c.width,dc.left?k=c.left:kc.top?l=c.top:lc.touches.length)&&c.preventDefault();c.cancelBubble=!0;return!1} -C.prototype.mI=function(a){if(!this.Z.isEnabled)return!1;var b=this.Z.Qb;Pk(this.Z,this.Z,a,b,!1);b.key=String.fromCharCode(a.which);b.Dl=!0;switch(a.which){case 8:b.key="Backspace";break;case 33:b.key="PageUp";break;case 34:b.key="PageDown";break;case 35:b.key="End";break;case 36:b.key="Home";break;case 37:b.key="Left";break;case 38:b.key="Up";break;case 39:b.key="Right";break;case 40:b.key="Down";break;case 45:b.key="Insert";break;case 46:b.key="Del";break;case 48:b.key="0";break;case 187:case 61:case 107:b.key= +function Pk(a,b,c,d,e){d.h=b;d.event=c;e?Qk(a,c,d):(d.te=b.Qb.te,d.ga=b.Qb.ga);a=0;c.ctrlKey&&(a+=1);c.altKey&&(a+=2);c.shiftKey&&(a+=4);c.metaKey&&(a+=8);d.xd=a;d.button=c.button;c.buttons&&(d.buttons=c.buttons);z.rk&&0===c.button&&c.ctrlKey&&(d.button=2);d.Dl=!1;d.up=!1;d.df=1;d.Bl=0;d.Gc=!1;d.bubbles=!1;d.timestamp=Date.now();d.Qt=!1;d.Sg=c.target.Z?c.target.Z:null;d.Ge=null} +function Rk(a,b,c,d,e){d.h=a;Qk(a,c,d);d.xd=0;d.button=0;d.buttons=1;d.Dl=!0;d.up=!1;d.df=1;d.Bl=0;d.Gc=!1;d.bubbles=!0;d.event=b;d.timestamp=Date.now();d.Qt=e;d.Sg=b.target.Z?b.target.Z:null;d.Ge=null;a.Ei=d.copy();Dh=null} +function Sk(a,b,c,d,e){var g=null;d.h=a;null!==c?((g=window.document.elementFromPoint(c.clientX,c.clientY))&&g.Z?g=g.Z:(c=b.changedTouches[0],g=a),d.Sg=g,Qk(a,c,d)):null!==a.Zc?(d.ga=a.Zc.ga,d.te=a.Zc.te,d.Sg=a.Zc.Sg):null!==a.Ei&&(d.ga=a.Ei.ga,d.te=a.Ei.te,d.Sg=a.Ei.Sg);d.xd=0;d.button=0;d.buttons=1;d.Dl=!1;d.up=!1;d.df=1;d.Bl=0;d.Gc=!1;d.bubbles=!1;d.event=b;d.timestamp=Date.now();d.Qt=e;d.Ge=null} +function ia(a,b,c){if(b.bubbles)return u&&u.EE&&z.trace("NOT handled "+c.type+" "+b.toString()),!0;u&&u.EE&&z.trace("handled "+c.type+" "+a.cb.name+" "+b.toString());void 0!==c.stopPropagation&&c.stopPropagation();(void 0===c.touches||2>c.touches.length)&&c.preventDefault();c.cancelBubble=!0;return!1} +C.prototype.oI=function(a){if(!this.Z.isEnabled)return!1;var b=this.Z.Qb;Pk(this.Z,this.Z,a,b,!1);b.key=String.fromCharCode(a.which);b.Dl=!0;switch(a.which){case 8:b.key="Backspace";break;case 33:b.key="PageUp";break;case 34:b.key="PageDown";break;case 35:b.key="End";break;case 36:b.key="Home";break;case 37:b.key="Left";break;case 38:b.key="Up";break;case 39:b.key="Right";break;case 40:b.key="Down";break;case 45:b.key="Insert";break;case 46:b.key="Del";break;case 48:b.key="0";break;case 187:case 61:case 107:b.key= "Add";break;case 189:case 173:case 109:b.key="Subtract";break;case 27:b.key="Esc"}this.Z.doKeyDown();return 187!==a.which&&189!==a.which&&48!==a.which&&107!==a.which&&109!==a.which&&61!==a.which&&173!==a.which||!0!==a.ctrlKey?ia(this.Z,b,a):(a.cancelBubble=!0,a.preventDefault(),a.stopPropagation(),!1)}; -C.prototype.nI=function(a){if(!this.Z.isEnabled)return!1;var b=this.Z.Qb;Pk(this.Z,this.Z,a,b,!1);b.key=String.fromCharCode(a.which);b.up=!0;switch(a.which){case 8:b.key="Backspace";break;case 33:b.key="PageUp";break;case 34:b.key="PageDown";break;case 35:b.key="End";break;case 36:b.key="Home";break;case 37:b.key="Left";break;case 38:b.key="Up";break;case 39:b.key="Right";break;case 40:b.key="Down";break;case 45:b.key="Insert";break;case 46:b.key="Del";break;case 93:a.preventDefault()}this.Z.doKeyUp(); -return ia(this.Z,b,a)};C.prototype.no=function(a){var b=this.Fb;if(null===b)return new N(0,0);var c=this.Jb,d=this.Ob,b=b.getBoundingClientRect(),c=a.clientX-c/b.width*b.left;a=a.clientY-d/b.height*b.top;return null!==this.Ld?(a=new N(c,a),vb(a,this.Ld),a):new N(c,a)}; -function Qk(a,b,c){var d=a.Fb,e=a.Jb,g=a.Ob,h=0,k=0;null!==d&&(d=d.getBoundingClientRect(),h=b.clientX-e/d.width*d.left,k=b.clientY-g/d.height*d.top);c.ve.n(h,k);null!==a.Ld?(b=y.Tb(h,k),a.Ld.mi(b),c.ga.assign(b),y.A(b)):c.ga.n(h,k)}C.prototype.invalidateDocumentBounds=C.prototype.yc=function(){this.Hj||(this.Hj=!0,this.De(!0))};function ak(a){a.Zd||Hk(a);a.Hj&&Mk(a,a.sh())}C.prototype.redraw=C.prototype.Tp=function(){this.Vc||this.Zd||(this.ta(),Tk(this),Gk(this),this.yc(),this.dg())}; -C.prototype.isUpdateRequested=function(){return this.Wf};C.prototype.delayInitialization=function(a){void 0===a&&(a=null);var b=this.Ua,c=b.isEnabled;b.qi();b.isEnabled=!1;hi(this);this.fh=!1;b.isEnabled=c;null!==a&&y.setTimeout(a,1)};C.prototype.requestUpdate=C.prototype.De=function(a){void 0===a&&(a=!1);if(!0!==this.Wf&&!(this.Vc||!1===a&&this.Zd)){this.Wf=!0;var b=this;requestAnimationFrame(function(){b.Wf&&b.dg()})}}; -C.prototype.maybeUpdate=C.prototype.dg=function(){if(!this.ko||this.Wf)this.ko&&(this.ko=!1),hi(this)};function Uk(a,b){a.Ua.nf||a.Vc||!a.im||Fk(a)||(b&&Hk(a),Jk(a,!1))} -function hi(a){if(!a.Zd&&(a.Wf=!1,null!==a.Pb)){a.Zd=!0;var b=a.Ua,c=a.PC;if(!b.vo&&0!==c.length){for(var d=c.o,e=d.length,g=0;gb;b++){var c=a.sg.i;if(null===c||0===a.sg.count)break;a.sg=new K(O);a.$A(c,a.sg);u&&22===b&&y.trace("failure to validate parts")}} -C.prototype.$A=function(a,b){for(a.reset();a.next();){var c=a.value;!c.de()||c instanceof F||!c.isVisible()||(c.Pl()?(oj(c,Infinity,Infinity),c.Lc()):b.add(c))}for(a.reset();a.next();)c=a.value,c instanceof F&&c.isVisible()&&kl(this,c);for(a.reset();a.next();)c=a.value,c instanceof G&&c.isVisible()&&(c.Pl()?(oj(c,Infinity,Infinity),c.Lc()):b.add(c));for(a.reset();a.next();)c=a.value,c instanceof da&&c.isVisible()&&(c.Pl()?(oj(c,Infinity,Infinity),c.Lc()):b.add(c))}; -function kl(a,b){for(var c=y.rb(),d=y.rb(),e=b.Hc;e.next();){var g=e.value;g.isVisible()&&(g instanceof F?(ll(g)||ml(g)||nl(g))&&kl(a,g):g instanceof G?g.Y===b||g.da===b?d.push(g):c.push(g):(oj(g,Infinity,Infinity),g.Lc()))}for(var e=c.length,h=0;hx+1&& -(B=Math.max((v-x)*H+a.Jb,B)),q+k+1n+1&&(L=Math.max((p-n)*H+a.Ob,L)),r+l+1x+1&&(B=Math.max((v-x)*H+a.Jb,B)),q+1n+1&&(L=Math.max((p-n)*H+l,L)),r+1x+1&&(b.scrollLeft=a.position.x*H));a.$z&&a.ze&&(r+1n+1&&(b.scrollTop=a.position.y*H));h&&(a.hr=!0);m=a.Jb;c=a.Ob;b.style.width=m+(a.Vk?a.Jd:0)+"px";b.style.height=c+(a.Gj?a.Jd:0)+"px";a.gz=!1;return d!==m||e!==c||a.Ua.wc?(n=a.xb,a.eu(g,n,h),!1):!0} -C.prototype.add=C.prototype.add=function(a){y.l(a,D,C,"add:part");var b=a.h;if(b!==this){null!==b&&y.k("Cannot add part "+a.toString()+" to "+this.toString()+". It is already a part of "+b.toString());this.mq&&(a.bl="Tool");var c=a.Jf,b=this.El(c);null===b&&(b=this.El(""));null===b&&y.k('Cannot add a Part when unable find a Layer named "'+c+'" and there is no default Layer');a.layer!==b&&(c=b.zp(99999999,a,a.h===this),0<=c&&this.Rc(Vf,"parts",b,null,a,null,c),b.Nc||this.yc(),a.I(ul),c=a.Tt,null!== +C.prototype.pI=function(a){if(!this.Z.isEnabled)return!1;var b=this.Z.Qb;Pk(this.Z,this.Z,a,b,!1);b.key=String.fromCharCode(a.which);b.up=!0;switch(a.which){case 8:b.key="Backspace";break;case 33:b.key="PageUp";break;case 34:b.key="PageDown";break;case 35:b.key="End";break;case 36:b.key="Home";break;case 37:b.key="Left";break;case 38:b.key="Up";break;case 39:b.key="Right";break;case 40:b.key="Down";break;case 45:b.key="Insert";break;case 46:b.key="Del";break;case 93:a.preventDefault()}this.Z.doKeyUp(); +return ia(this.Z,b,a)};C.prototype.no=function(a){var b=this.Fb;if(null===b)return new N(0,0);var c=this.Jb,d=this.Ob,b=b.getBoundingClientRect(),c=a.clientX-c/b.width*b.left;a=a.clientY-d/b.height*b.top;return null!==this.Jd?(a=new N(c,a),vb(a,this.Jd),a):new N(c,a)}; +function Qk(a,b,c){var d=a.Fb,e=a.Jb,g=a.Ob,h=0,k=0;null!==d&&(d=d.getBoundingClientRect(),h=b.clientX-e/d.width*d.left,k=b.clientY-g/d.height*d.top);c.te.n(h,k);null!==a.Jd?(b=z.Tb(h,k),a.Jd.ki(b),c.ga.assign(b),z.A(b)):c.ga.n(h,k)}C.prototype.invalidateDocumentBounds=C.prototype.yc=function(){this.Hj||(this.Hj=!0,this.Ce(!0))};function ak(a){a.Xd||Hk(a);a.Hj&&Mk(a,a.rh())}C.prototype.redraw=C.prototype.Tp=function(){this.Vc||this.Xd||(this.ta(),Tk(this),Gk(this),this.yc(),this.cg())}; +C.prototype.isUpdateRequested=function(){return this.Vf};C.prototype.delayInitialization=function(a){void 0===a&&(a=null);var b=this.Ua,c=b.isEnabled;b.oi();b.isEnabled=!1;hi(this);this.eh=!1;b.isEnabled=c;null!==a&&z.setTimeout(a,1)};C.prototype.requestUpdate=C.prototype.Ce=function(a){void 0===a&&(a=!1);if(!0!==this.Vf&&!(this.Vc||!1===a&&this.Xd)){this.Vf=!0;var b=this;requestAnimationFrame(function(){b.Vf&&b.cg()})}}; +C.prototype.maybeUpdate=C.prototype.cg=function(){if(!this.ko||this.Vf)this.ko&&(this.ko=!1),hi(this)};function Uk(a,b){a.Ua.mf||a.Vc||!a.hm||Fk(a)||(b&&Hk(a),Jk(a,!1))} +function hi(a){if(!a.Xd&&(a.Vf=!1,null!==a.Pb)){a.Xd=!0;var b=a.Ua,c=a.SC;if(!b.vo&&0!==c.length){for(var d=c.o,e=d.length,g=0;gb;b++){var c=a.rg.i;if(null===c||0===a.rg.count)break;a.rg=new K(O);a.dB(c,a.rg);u&&22===b&&z.trace("failure to validate parts")}} +C.prototype.dB=function(a,b){for(a.reset();a.next();){var c=a.value;!c.be()||c instanceof F||!c.isVisible()||(c.Pl()?(oj(c,Infinity,Infinity),c.Lc()):b.add(c))}for(a.reset();a.next();)c=a.value,c instanceof F&&c.isVisible()&&kl(this,c);for(a.reset();a.next();)c=a.value,c instanceof G&&c.isVisible()&&(c.Pl()?(oj(c,Infinity,Infinity),c.Lc()):b.add(c));for(a.reset();a.next();)c=a.value,c instanceof da&&c.isVisible()&&(c.Pl()?(oj(c,Infinity,Infinity),c.Lc()):b.add(c))}; +function kl(a,b){for(var c=z.rb(),d=z.rb(),e=b.Hc;e.next();){var g=e.value;g.isVisible()&&(g instanceof F?(ll(g)||ml(g)||nl(g))&&kl(a,g):g instanceof G?g.Y===b||g.da===b?d.push(g):c.push(g):(oj(g,Infinity,Infinity),g.Lc()))}for(var e=c.length,h=0;hx+1&& +(B=Math.max((v-x)*H+a.Jb,B)),q+k+1n+1&&(L=Math.max((p-n)*H+a.Ob,L)),r+l+1x+1&&(B=Math.max((v-x)*H+a.Jb,B)),q+1n+1&&(L=Math.max((p-n)*H+l,L)),r+1x+1&&(k=a.position.x*H));if(a.nr)switch(a.hz){case "negative":k=-(b.scrollWidth-k-b.clientWidth);break;case "reverse":k=b.scrollWidth-k-b.clientWidth}b.scrollLeft=k;a.dA&&a.ye&&(r+1n+1&&(b.scrollTop=a.position.y*H));h&&(a.hr=!0);m=a.Jb;c=a.Ob;b.style.width=m+(a.Vk?a.Hd:0)+"px";b.style.height=c+(a.Gj?a.Hd:0)+"px";a.iz=!1;return d!==m||e!== +c||a.Ua.wc?(n=a.xb,a.fu(g,n,h),!1):!0} +C.prototype.add=C.prototype.add=function(a){z.l(a,D,C,"add:part");var b=a.h;if(b!==this){null!==b&&z.k("Cannot add part "+a.toString()+" to "+this.toString()+". It is already a part of "+b.toString());this.mq&&(a.bl="Tool");var c=a.If,b=this.El(c);null===b&&(b=this.El(""));null===b&&z.k('Cannot add a Part when unable find a Layer named "'+c+'" and there is no default Layer');a.layer!==b&&(c=b.zp(99999999,a,a.h===this),0<=c&&this.Rc(Vf,"parts",b,null,a,null,c),b.Nc||this.yc(),a.I(ul),c=a.Ut,null!== c&&c(a,null,b))}}; -C.prototype.zp=function(a){if(a instanceof E){if(this.Ho.add(a),a instanceof F){var b=a.Va;null===b?this.nl.add(a):b.xm.add(a);b=a.Sb;null!==b&&(b.h=this)}}else a instanceof G?this.Bo.add(a):a instanceof da||this.mb.add(a);var c=this;vl(a,function(a){wl(c,a)});a.Lb&&a.S();b=a.data;null!==b&&(a instanceof da||(a instanceof G?this.Qk.add(b,a):this.Bi.add(b,a)),vl(a,function(a){xl(c,a)}));!0!==ml(a)&&!0!==nl(a)||this.sg.add(a);yl(a,!0,this);zl(a)?(a.W.F()&&this.ta(jk(a,a.W)),this.yc()):a.isVisible()&& -a.W.F()&&this.ta(jk(a,a.W));this.De()}; -C.prototype.Ue=function(a){a.ot();if(a instanceof E){if(this.Ho.remove(a),a instanceof F){var b=a.Va;null===b?this.nl.remove(a):b.xm.remove(a);b=a.Sb;null!==b&&(b.h=null)}}else a instanceof G?this.Bo.remove(a):a instanceof da||this.mb.remove(a);var c=this;vl(a,function(a){Al(c,a)});b=a.data;null!==b&&(a instanceof da||(a instanceof G?this.Qk.remove(b):this.Bi.remove(b)),vl(a,function(a){Bl(c,a)}));this.sg.remove(a);zl(a)?(a.W.F()&&this.ta(jk(a,a.W)),this.yc()):a.isVisible()&&a.W.F()&&this.ta(jk(a, -a.W));this.De()};C.prototype.remove=C.prototype.remove=function(a){y.l(a,D,C,"remove:part");a.jb=!1;a.xh=!1;var b=a.layer;if(null!==b&&b.h===this){a.I(Cl);a.dn();var c=b.Ue(-1,a,!1);0<=c&&this.Rc(Wf,"parts",b,a,null,c,null);c=a.Tt;null!==c&&c(a,b,null)}};C.prototype.removeParts=C.prototype.FA=function(a,b){if(y.isArray(a))for(var c=y.ab(a),d=0;dd&&this.yc()}; -C.prototype.addLayerAfter=function(a,b){Dl(this,a,b);a.Sc(this);var c=this.Xb,d=c.indexOf(a);0<=d&&(c.remove(a),null!==this.ke&&this.Rc(Wf,"layers",this,a,null,d,null));for(var e=c.count,g=0;gd&&this.yc()}; -C.prototype.removeLayer=function(a){y.l(a,vg,C,"removeLayer:layer");a.h!==this&&y.k("Cannot remove a Layer from another Diagram: "+a+" of "+a.h);if(""!==a.name){var b=this.Xb,c=b.indexOf(a);if(b.remove(a)){for(b=a.mb.copy().i;b.next();){var d=b.value,e=d.Jf;d.Jf=e!==a.name?e:""}null!==this.ke&&this.Rc(Wf,"layers",this,a,null,c,null);this.ta();this.yc()}}};C.prototype.findLayer=C.prototype.El=function(a){for(var b=this.on;b.next();){var c=b.value;if(c.name===a)return c}return null}; -C.prototype.addModelChangedListener=C.prototype.MG=function(a){y.g(a,"function",C,"addModelChangedListener:listener");null===this.hh&&(this.hh=new J("function"));this.hh.add(a);this.ha.Sm(a)};C.prototype.removeModelChangedListener=function(a){y.g(a,"function",C,"removeModelChangedListener:listener");null!==this.hh&&(this.hh.remove(a),0===this.hh.count&&(this.hh=null));this.ha.hu(a)}; -C.prototype.addChangedListener=C.prototype.Sm=function(a){y.g(a,"function",C,"addChangedListener:listener");null===this.vi&&(this.vi=new J("function"));this.vi.add(a)};C.prototype.removeChangedListener=C.prototype.hu=function(a){y.g(a,"function",C,"removeChangedListener:listener");null!==this.vi&&(this.vi.remove(a),0===this.vi.count&&(this.vi=null))}; -C.prototype.Jw=function(a){this.Bb||this.pa.AE(a);a.Dc!==Uf&&(this.oi=!0);if(null!==this.vi){var b=this.vi,c=b.length;if(1===c)b=b.ea(0),b(a);else if(0!==c)for(var d=b.kc(),e=0;ea.yh&&(c=a.yh);e=y.Tb(a.sb.x+h/b-h/c,a.sb.y+k/b-k/c);a.position=e;y.A(e);a.bc=c;a.eu(d,a.xb);a.Vc=!1;Jk(a,!1);c= -a.Ua;c.wc&&ek(c,b,a.bc);a.ta();Tk(a)}}C.prototype.eu=function(a,b,c){if(!a.N(b)){void 0===c&&(c=!1);c||Tk(this);Gk(this);var d=this.Sb;null===d||!d.lx||this.vl!==kh||c||a.width===b.width&&a.height===b.height||d.I();d=this.cb;!0===this.km&&d instanceof eh&&(this.Q.ga=this.YF(this.Q.ve),Mj(d,this));this.Vc||this.EE(a,b);gl(this);this.Ja("ViewportBoundsChanged",c?y.Ih:null,a)}}; -function gl(a,b){void 0===b&&(b=null);var c=a.td;if(null!==c&&c.visible){for(var d=y.Xl(),e=1,g=1,h=c.va.o,k=h.length,l=0;ln||(Fl(m.Hb)?g=g*n/gf(g,n):e=e*n/gf(e,n))}h=c.ax;d.n(g*h.width,e*h.height);h=g=l=k=0;if(null!==b)k=b.width,l=b.height,g=b.x,h=b.y;else{e=y.mg();g=a.xb;e.n(g.x,g.y,g.width,g.height);for(h=a.Wv.i;h.next();)g=h.value.xb,g.F()&&Jb(e,g.x,g.y,g.width,g.height);if(!e.F()){y.dc(e);return}k=e.width;l=e.height;g=e.x;h=e.y;y.dc(e)}c.width=k+2*d.width;c.height= -l+2*d.height;e=y.O();qb(g,h,0,0,d.width,d.height,e);e.offset(-d.width,-d.height);y.pk(d);c.ca.location=e;y.A(e)}}C.prototype.clearSelection=C.prototype.Lw=function(){var a=0a&&y.ka(a,">= 0",C,"scrollHorizontalLineChange"),this.gw=a,this.j("scrollHorizontalLineChange",b,a))}); -y.defineProperty(C,{nu:"scrollVerticalLineChange"},function(){return this.kw},function(a){var b=this.kw;b!==a&&(y.g(a,"number",C,"scrollVerticalLineChange"),0>a&&y.ka(a,">= 0",C,"scrollVerticalLineChange"),this.kw=a,this.j("scrollVerticalLineChange",b,a))});y.defineProperty(C,{Q:"lastInput"},function(){return this.Qb},function(a){u&&y.l(a,Qf,C,"lastInput");this.Qb=a});y.defineProperty(C,{Fc:"firstInput"},function(){return this.Gi},function(a){u&&y.l(a,Qf,C,"firstInput");this.Gi=a}); -y.defineProperty(C,{gc:"currentCursor"},function(){return this.$u},function(a){""===a&&(a=this.Pq);this.$u!==a&&(y.g(a,"string",C,"currentCursor"),null!==this.Fb&&(this.$u=a,this.Fb.style.cursor=a,this.Pb.style.cursor=a))});y.defineProperty(C,{iK:"defaultCursor"},function(){return this.Pq},function(a){""===a&&(a="auto");var b=this.Pq;b!==a&&(y.g(a,"string",C,"defaultCursor"),this.Pq=a,this.j("defaultCursor",b,a))}); -y.defineProperty(C,{click:"click"},function(){return this.wi},function(a){var b=this.wi;b!==a&&(null!==a&&y.g(a,"function",C,"click"),this.wi=a,this.j("click",b,a))});y.defineProperty(C,{vt:"doubleClick"},function(){return this.Ei},function(a){var b=this.Ei;b!==a&&(null!==a&&y.g(a,"function",C,"doubleClick"),this.Ei=a,this.j("doubleClick",b,a))}); -y.defineProperty(C,{Ez:"contextClick"},function(){return this.zi},function(a){var b=this.zi;b!==a&&(null!==a&&y.g(a,"function",C,"contextClick"),this.zi=a,this.j("contextClick",b,a))});y.defineProperty(C,{qA:"mouseOver"},function(){return this.Ri},function(a){var b=this.Ri;b!==a&&(null!==a&&y.g(a,"function",C,"mouseOver"),this.Ri=a,this.j("mouseOver",b,a))}); -y.defineProperty(C,{pA:"mouseHover"},function(){return this.Qi},function(a){var b=this.Qi;b!==a&&(null!==a&&y.g(a,"function",C,"mouseHover"),this.Qi=a,this.j("mouseHover",b,a))});y.defineProperty(C,{oA:"mouseHold"},function(){return this.Pi},function(a){var b=this.Pi;b!==a&&(null!==a&&y.g(a,"function",C,"mouseHold"),this.Pi=a,this.j("mouseHold",b,a))}); -y.defineProperty(C,{II:"mouseDragOver"},function(){return this.Pv},function(a){var b=this.Pv;b!==a&&(null!==a&&y.g(a,"function",C,"mouseDragOver"),this.Pv=a,this.j("mouseDragOver",b,a))});y.defineProperty(C,{nA:"mouseDrop"},function(){return this.Oi},function(a){var b=this.Oi;b!==a&&(null!==a&&y.g(a,"function",C,"mouseDrop"),this.Oi=a,this.j("mouseDrop",b,a))}); -y.defineProperty(C,{WA:"toolTip"},function(){return this.Xi},function(a){var b=this.Xi;b!==a&&(null!==a&&y.l(a,da,C,"toolTip"),this.Xi=a,this.j("toolTip",b,a))});y.defineProperty(C,{contextMenu:"contextMenu"},function(){return this.Ai},function(a){var b=this.Ai;b!==a&&(null!==a&&y.l(a,da,C,"contextMenu"),this.Ai=a,this.j("contextMenu",b,a))}); -y.defineProperty(C,{wb:"commandHandler"},function(){return this.py},function(a){var b=this.py;b!==a&&(y.l(a,ra,C,"commandHandler"),null!==a.h&&y.k("Cannot share CommandHandlers between Diagrams: "+a.toString()),null!==b&&b.Sc(null),this.py=a,a.Sc(this))});y.defineProperty(C,{gb:"toolManager"},function(){return this.pz},function(a){var b=this.pz;b!==a&&(y.l(a,eh,C,"toolManager"),null!==a.h&&y.k("Cannot share ToolManagers between Diagrams: "+a.toString()),null!==b&&b.Sc(null),this.pz=a,a.Sc(this))}); -y.defineProperty(C,{ut:"defaultTool"},function(){return this.wy},function(a){var b=this.wy;b!==a&&(y.l(a,wg,C,"defaultTool"),this.wy=a,this.cb===b&&(this.cb=a))});y.defineProperty(C,{cb:"currentTool"},function(){return this.uy},function(a){var b=this.uy;null!==b&&(b.ua&&b.doDeactivate(),b.cancelWaitAfter(),b.doStop());null===a&&(a=this.ut);null!==a&&(y.l(a,wg,C,"currentTool"),this.uy=a,a.Sc(this),a.doStart())});y.w(C,{selection:"selection"},function(){return this.nw}); -y.defineProperty(C,{AI:"maxSelectionCount"},function(){return this.Kv},function(a){var b=this.Kv;if(b!==a)if(y.g(a,"number",C,"maxSelectionCount"),0<=a&&!isNaN(a)){if(this.Kv=a,this.j("maxSelectionCount",b,a),!this.pa.qb&&(a=this.selection.count-a,0= 0",C,"maxSelectionCount")}); -y.defineProperty(C,{KI:"nodeSelectionAdornmentTemplate"},function(){return this.Qv},function(a){var b=this.Qv;b!==a&&(y.l(a,da,C,"nodeSelectionAdornmentTemplate"),this.Qv=a,this.j("nodeSelectionAdornmentTemplate",b,a))});y.defineProperty(C,{PH:"groupSelectionAdornmentTemplate"},function(){return this.ov},function(a){var b=this.ov;b!==a&&(y.l(a,da,C,"groupSelectionAdornmentTemplate"),this.ov=a,this.j("groupSelectionAdornmentTemplate",b,a))}); -y.defineProperty(C,{uI:"linkSelectionAdornmentTemplate"},function(){return this.Gv},function(a){var b=this.Gv;b!==a&&(y.l(a,da,C,"linkSelectionAdornmentTemplate"),this.Gv=a,this.j("linkSelectionAdornmentTemplate",b,a))});y.w(C,{jn:"highlighteds"},function(){return this.tv}); -y.defineProperty(C,{oi:"isModified"},function(){var a=this.pa;return a.isEnabled?null!==a.ej?!0:this.Ty&&this.dh!==a.jj:this.Ty},function(a){if(this.Ty!==a){y.g(a,"boolean",C,"isModified");this.Ty=a;var b=this.pa;!a&&b.isEnabled&&(this.dh=b.jj);a||Gl(this)}});function Gl(a){var b=a.oi;a.uD!==b&&(a.uD=b,a.Ja("Modified"))} -y.defineProperty(C,{ha:"model"},function(){return this.ke},function(a){var b=this.ke;if(b!==a){y.l(a,M,C,"model");this.cb.doCancel();null!==b&&b.pa!==a.pa&&b.pa.LE&&y.k("Do not replace a Diagram.model while a transaction is in progress.");this.Ua.qi();this.Lw();this.fh=!1;this.ko=!0;this.dh=-2;this.Wf=!1;var c=this.Zd;this.Zd=!0;this.Ua.un("Model");null!==b&&(null!==this.hh&&this.hh.each(function(a){b.hu(a)}),b.hu(this.CC),b instanceof V&&Hl(this,b.Kg),Hl(this,b.ig));this.ke=a;a.Sm(this.BC);Il(this, -a.ig);a instanceof V&&Jl(this,a.Kg);a.hu(this.BC);a.Sm(this.CC);null!==this.hh&&this.hh.each(function(b){a.Sm(b)});this.Zd=c;this.Vc||this.ta();null!==b&&(a.pa.isEnabled=b.pa.isEnabled)}});y.defineProperty(C,{Za:null},function(){return this.uC},function(a){this.uC=a});y.w(C,{px:null},function(){return this.mG}); -function sk(a,b){if(b.ha===a.ha){var c=b.Dc,d=b.propertyName;if(c===Uf&&"S"===d[0])if("StartingFirstTransaction"===d)c=a.gb,c.Xe.each(function(b){b.Sc(a)}),c.fg.each(function(b){b.Sc(a)}),c.gg.each(function(b){b.Sc(a)}),a.Zd||a.fh||(a.fv=!0,a.ko&&(a.Wf=!0));else if("StartingUndo"===d||"StartingRedo"===d){var e=a.Ua;e.nf&&!a.Bb&&e.qi();a.Ja("ChangingSelection")}else"StartedTransaction"===d&&(e=a.Ua,e.nf&&!a.Bb&&e.qi());else if(a.Za){a.Za=!1;try{var g=b.rf;if(""!==g)if(c===Tf){if("linkFromKey"===g){var h= -b.object,k=a.ag(h);if(null!==k){var l=b.newValue,m=a.hf(l);k.Y=m}}else if("linkToKey"===g)h=b.object,k=a.ag(h),null!==k&&(l=b.newValue,m=a.hf(l),k.da=m);else if("linkFromPortId"===g){if(h=b.object,k=a.ag(h),null!==k){var n=b.newValue;"string"===typeof n&&(k.bg=n)}}else if("linkToPortId"===g)h=b.object,k=a.ag(h),null!==k&&(n=b.newValue,"string"===typeof n&&(k.Vg=n));else if("nodeGroupKey"===g){var h=b.object,p=a.vh(h);if(null!==p){var q=b.newValue;if(void 0!==q){var r=a.hf(q);p.Va=r instanceof F?r: -null}else p.Va=null}}else if("linkLabelKeys"===g){if(h=b.object,k=a.ag(h),null!==k){var s=b.oldValue,t=b.newValue;if(y.isArray(s))for(var v=y.ab(s),x=0;xl)){var m=l;Ql(k)&&m++;k.Ue(m);Rl(k,m,l)}}}}function xl(a,b){var c=b.Ki;if(y.isArray(c)){var d=a.nm.na(c);if(null===d)d=[],d.push(b),a.nm.add(c,d);else{for(c=0;cd&&this.yc()}; +C.prototype.addLayerAfter=function(a,b){Dl(this,a,b);a.Sc(this);var c=this.Yb,d=c.indexOf(a);0<=d&&(c.remove(a),null!==this.ie&&this.Rc(Wf,"layers",this,a,null,d,null));for(var e=c.count,g=0;gd&&this.yc()}; +C.prototype.removeLayer=function(a){z.l(a,vg,C,"removeLayer:layer");a.h!==this&&z.k("Cannot remove a Layer from another Diagram: "+a+" of "+a.h);if(""!==a.name){var b=this.Yb,c=b.indexOf(a);if(b.remove(a)){for(b=a.mb.copy().i;b.next();){var d=b.value,e=d.If;d.If=e!==a.name?e:""}null!==this.ie&&this.Rc(Wf,"layers",this,a,null,c,null);this.ta();this.yc()}}};C.prototype.findLayer=C.prototype.El=function(a){for(var b=this.on;b.next();){var c=b.value;if(c.name===a)return c}return null}; +C.prototype.addModelChangedListener=C.prototype.OG=function(a){z.g(a,"function",C,"addModelChangedListener:listener");null===this.gh&&(this.gh=new J("function"));this.gh.add(a);this.ha.Sm(a)};C.prototype.removeModelChangedListener=function(a){z.g(a,"function",C,"removeModelChangedListener:listener");null!==this.gh&&(this.gh.remove(a),0===this.gh.count&&(this.gh=null));this.ha.iu(a)}; +C.prototype.addChangedListener=C.prototype.Sm=function(a){z.g(a,"function",C,"addChangedListener:listener");null===this.ti&&(this.ti=new J("function"));this.ti.add(a)};C.prototype.removeChangedListener=C.prototype.iu=function(a){z.g(a,"function",C,"removeChangedListener:listener");null!==this.ti&&(this.ti.remove(a),0===this.ti.count&&(this.ti=null))}; +C.prototype.Kw=function(a){this.Bb||this.pa.DE(a);a.Dc!==Uf&&(this.mi=!0);if(null!==this.ti){var b=this.ti,c=b.length;if(1===c)b=b.ea(0),b(a);else if(0!==c)for(var d=b.kc(),e=0;ea.xh&&(c=a.xh);e=z.Tb(a.sb.x+h/b-h/c,a.sb.y+k/b-k/c);a.position=e;z.A(e);a.bc=c;a.fu(d,a.xb);a.Vc=!1;Jk(a,!1);c= +a.Ua;c.wc&&ek(c,b,a.bc);a.ta();Tk(a)}}C.prototype.fu=function(a,b,c){if(!a.N(b)){void 0===c&&(c=!1);c||Tk(this);Gk(this);var d=this.Sb;null===d||!d.mx||this.vl!==kh||c||a.width===b.width&&a.height===b.height||d.I();d=this.cb;!0===this.jm&&d instanceof eh&&(this.Q.ga=this.aG(this.Q.te),Mj(d,this));this.Vc||this.HE(a,b);gl(this);this.Ja("ViewportBoundsChanged",c?z.wj:null,a)}}; +function gl(a,b){void 0===b&&(b=null);var c=a.td;if(null!==c&&c.visible){for(var d=z.Wl(),e=1,g=1,h=c.va.o,k=h.length,l=0;ln||(Fl(m.Hb)?g=g*n/gf(g,n):e=e*n/gf(e,n))}h=c.bx;d.n(g*h.width,e*h.height);h=g=l=k=0;if(null!==b)k=b.width,l=b.height,g=b.x,h=b.y;else{e=z.lg();g=a.xb;e.n(g.x,g.y,g.width,g.height);for(h=a.Xv.i;h.next();)g=h.value.xb,g.F()&&Jb(e,g.x,g.y,g.width,g.height);if(!e.F()){z.dc(e);return}k=e.width;l=e.height;g=e.x;h=e.y;z.dc(e)}c.width=k+2*d.width;c.height= +l+2*d.height;e=z.O();lb(g,h,0,0,d.width,d.height,e);e.offset(-d.width,-d.height);z.pk(d);c.ca.location=e;z.A(e)}}C.prototype.clearSelection=C.prototype.Mw=function(){var a=0a&&z.ka(a,">= 0",C,"scrollHorizontalLineChange"),this.hw=a,this.j("scrollHorizontalLineChange",b,a))}); +z.defineProperty(C,{ou:"scrollVerticalLineChange"},function(){return this.lw},function(a){var b=this.lw;b!==a&&(z.g(a,"number",C,"scrollVerticalLineChange"),0>a&&z.ka(a,">= 0",C,"scrollVerticalLineChange"),this.lw=a,this.j("scrollVerticalLineChange",b,a))});z.defineProperty(C,{Q:"lastInput"},function(){return this.Qb},function(a){u&&z.l(a,Qf,C,"lastInput");this.Qb=a});z.defineProperty(C,{Fc:"firstInput"},function(){return this.Ei},function(a){u&&z.l(a,Qf,C,"firstInput");this.Ei=a}); +z.defineProperty(C,{gc:"currentCursor"},function(){return this.av},function(a){""===a&&(a=this.Pq);this.av!==a&&(z.g(a,"string",C,"currentCursor"),null!==this.Fb&&(this.av=a,this.Fb.style.cursor=a,this.Pb.style.cursor=a))});z.defineProperty(C,{kK:"defaultCursor"},function(){return this.Pq},function(a){""===a&&(a="auto");var b=this.Pq;b!==a&&(z.g(a,"string",C,"defaultCursor"),this.Pq=a,this.j("defaultCursor",b,a))}); +z.defineProperty(C,{click:"click"},function(){return this.ui},function(a){var b=this.ui;b!==a&&(null!==a&&z.g(a,"function",C,"click"),this.ui=a,this.j("click",b,a))});z.defineProperty(C,{wt:"doubleClick"},function(){return this.Ci},function(a){var b=this.Ci;b!==a&&(null!==a&&z.g(a,"function",C,"doubleClick"),this.Ci=a,this.j("doubleClick",b,a))}); +z.defineProperty(C,{Gz:"contextClick"},function(){return this.xi},function(a){var b=this.xi;b!==a&&(null!==a&&z.g(a,"function",C,"contextClick"),this.xi=a,this.j("contextClick",b,a))});z.defineProperty(C,{uA:"mouseOver"},function(){return this.Pi},function(a){var b=this.Pi;b!==a&&(null!==a&&z.g(a,"function",C,"mouseOver"),this.Pi=a,this.j("mouseOver",b,a))}); +z.defineProperty(C,{tA:"mouseHover"},function(){return this.Oi},function(a){var b=this.Oi;b!==a&&(null!==a&&z.g(a,"function",C,"mouseHover"),this.Oi=a,this.j("mouseHover",b,a))});z.defineProperty(C,{sA:"mouseHold"},function(){return this.Ni},function(a){var b=this.Ni;b!==a&&(null!==a&&z.g(a,"function",C,"mouseHold"),this.Ni=a,this.j("mouseHold",b,a))}); +z.defineProperty(C,{KI:"mouseDragOver"},function(){return this.Qv},function(a){var b=this.Qv;b!==a&&(null!==a&&z.g(a,"function",C,"mouseDragOver"),this.Qv=a,this.j("mouseDragOver",b,a))});z.defineProperty(C,{rA:"mouseDrop"},function(){return this.Mi},function(a){var b=this.Mi;b!==a&&(null!==a&&z.g(a,"function",C,"mouseDrop"),this.Mi=a,this.j("mouseDrop",b,a))}); +z.defineProperty(C,{$A:"toolTip"},function(){return this.Vi},function(a){var b=this.Vi;b!==a&&(null!==a&&z.l(a,da,C,"toolTip"),this.Vi=a,this.j("toolTip",b,a))});z.defineProperty(C,{contextMenu:"contextMenu"},function(){return this.yi},function(a){var b=this.yi;b!==a&&(null!==a&&z.l(a,da,C,"contextMenu"),this.yi=a,this.j("contextMenu",b,a))}); +z.defineProperty(C,{wb:"commandHandler"},function(){return this.qy},function(a){var b=this.qy;b!==a&&(z.l(a,ra,C,"commandHandler"),null!==a.h&&z.k("Cannot share CommandHandlers between Diagrams: "+a.toString()),null!==b&&b.Sc(null),this.qy=a,a.Sc(this))});z.defineProperty(C,{gb:"toolManager"},function(){return this.rz},function(a){var b=this.rz;b!==a&&(z.l(a,eh,C,"toolManager"),null!==a.h&&z.k("Cannot share ToolManagers between Diagrams: "+a.toString()),null!==b&&b.Sc(null),this.rz=a,a.Sc(this))}); +z.defineProperty(C,{vt:"defaultTool"},function(){return this.xy},function(a){var b=this.xy;b!==a&&(z.l(a,wg,C,"defaultTool"),this.xy=a,this.cb===b&&(this.cb=a))});z.defineProperty(C,{cb:"currentTool"},function(){return this.vy},function(a){var b=this.vy;null!==b&&(b.ua&&b.doDeactivate(),b.cancelWaitAfter(),b.doStop());null===a&&(a=this.vt);null!==a&&(z.l(a,wg,C,"currentTool"),this.vy=a,a.Sc(this),a.doStart())});z.w(C,{selection:"selection"},function(){return this.ow}); +z.defineProperty(C,{CI:"maxSelectionCount"},function(){return this.Lv},function(a){var b=this.Lv;if(b!==a)if(z.g(a,"number",C,"maxSelectionCount"),0<=a&&!isNaN(a)){if(this.Lv=a,this.j("maxSelectionCount",b,a),!this.pa.qb&&(a=this.selection.count-a,0= 0",C,"maxSelectionCount")}); +z.defineProperty(C,{MI:"nodeSelectionAdornmentTemplate"},function(){return this.Rv},function(a){var b=this.Rv;b!==a&&(z.l(a,da,C,"nodeSelectionAdornmentTemplate"),this.Rv=a,this.j("nodeSelectionAdornmentTemplate",b,a))});z.defineProperty(C,{RH:"groupSelectionAdornmentTemplate"},function(){return this.pv},function(a){var b=this.pv;b!==a&&(z.l(a,da,C,"groupSelectionAdornmentTemplate"),this.pv=a,this.j("groupSelectionAdornmentTemplate",b,a))}); +z.defineProperty(C,{wI:"linkSelectionAdornmentTemplate"},function(){return this.Hv},function(a){var b=this.Hv;b!==a&&(z.l(a,da,C,"linkSelectionAdornmentTemplate"),this.Hv=a,this.j("linkSelectionAdornmentTemplate",b,a))});z.w(C,{jn:"highlighteds"},function(){return this.uv}); +z.defineProperty(C,{mi:"isModified"},function(){var a=this.pa;return a.isEnabled?null!==a.cj?!0:this.Uy&&this.bh!==a.hj:this.Uy},function(a){if(this.Uy!==a){z.g(a,"boolean",C,"isModified");this.Uy=a;var b=this.pa;!a&&b.isEnabled&&(this.bh=b.hj);a||Gl(this)}});function Gl(a){var b=a.mi;a.xD!==b&&(a.xD=b,a.Ja("Modified"))} +z.defineProperty(C,{ha:"model"},function(){return this.ie},function(a){var b=this.ie;if(b!==a){z.l(a,M,C,"model");this.cb.doCancel();null!==b&&b.pa!==a.pa&&b.pa.OE&&z.k("Do not replace a Diagram.model while a transaction is in progress.");this.Ua.oi();this.Mw();this.eh=!1;this.ko=!0;this.bh=-2;this.Vf=!1;var c=this.Xd;this.Xd=!0;this.Ua.un("Model");null!==b&&(null!==this.gh&&this.gh.each(function(a){b.iu(a)}),b.iu(this.FC),b instanceof V&&Hl(this,b.Jg),Hl(this,b.hg));this.ie=a;a.Sm(this.EC);Il(this, +a.hg);a instanceof V&&Jl(this,a.Jg);a.iu(this.EC);a.Sm(this.FC);null!==this.gh&&this.gh.each(function(b){a.Sm(b)});this.Xd=c;this.Vc||this.ta();null!==b&&(a.pa.isEnabled=b.pa.isEnabled)}});z.defineProperty(C,{Za:null},function(){return this.xC},function(a){this.xC=a});z.w(C,{qx:null},function(){return this.pG}); +function sk(a,b){if(b.ha===a.ha){var c=b.Dc,d=b.propertyName;if(c===Uf&&"S"===d[0])if("StartingFirstTransaction"===d)c=a.gb,c.We.each(function(b){b.Sc(a)}),c.eg.each(function(b){b.Sc(a)}),c.fg.each(function(b){b.Sc(a)}),a.Xd||a.eh||(a.gv=!0,a.ko&&(a.Vf=!0));else if("StartingUndo"===d||"StartingRedo"===d){var e=a.Ua;e.mf&&!a.Bb&&e.oi();a.Ja("ChangingSelection")}else"StartedTransaction"===d&&(e=a.Ua,e.mf&&!a.Bb&&e.oi());else if(a.Za){a.Za=!1;try{var g=b.qf;if(""!==g)if(c===Tf){if("linkFromKey"===g){var h= +b.object,k=a.$f(h);if(null!==k){var l=b.newValue,m=a.gf(l);k.Y=m}}else if("linkToKey"===g)h=b.object,k=a.$f(h),null!==k&&(l=b.newValue,m=a.gf(l),k.da=m);else if("linkFromPortId"===g){if(h=b.object,k=a.$f(h),null!==k){var n=b.newValue;"string"===typeof n&&(k.ag=n)}}else if("linkToPortId"===g)h=b.object,k=a.$f(h),null!==k&&(n=b.newValue,"string"===typeof n&&(k.Ug=n));else if("nodeGroupKey"===g){var h=b.object,p=a.uh(h);if(null!==p){var q=b.newValue;if(void 0!==q){var r=a.gf(q);p.Va=r instanceof F?r: +null}else p.Va=null}}else if("linkLabelKeys"===g){if(h=b.object,k=a.$f(h),null!==k){var s=b.oldValue,t=b.newValue;if(z.isArray(s))for(var v=z.ab(s),x=0;xl)){var m=l;Ql(k)&&m++;k.Te(m);Rl(k,m,l)}}}}function xl(a,b){var c=b.Ii;if(z.isArray(c)){var d=a.mm.na(c);if(null===d)d=[],d.push(b),a.mm.add(c,d);else{for(c=0;cthis.scale&&(this.scale=a)):y.ka(a,"> 0",C,"minScale"))}); -y.defineProperty(C,{yh:"maxScale"},function(){return this.Jv},function(a){y.p(a,C,"maxScale");var b=this.Jv;b!==a&&(0 0",C,"maxScale"))});y.defineProperty(C,{$l:"zoomPoint"},function(){return this.Aw},function(a){this.Aw.N(a)||(y.l(a,N,C,"zoomPoint"),this.Aw=a=a.U())}); -y.defineProperty(C,{UD:"contentAlignment"},function(){return this.Rn},function(a){var b=this.Rn;b.N(a)||(y.l(a,Q,C,"contentAlignment"),this.Rn=a=a.U(),this.j("contentAlignment",b,a),Jk(this,!1))});y.defineProperty(C,{CK:"initialContentAlignment"},function(){return this.po},function(a){var b=this.po;b.N(a)||(y.l(a,Q,C,"initialContentAlignment"),this.po=a=a.U(),this.j("initialContentAlignment",b,a))}); -y.defineProperty(C,{padding:"padding"},function(){return this.cf},function(a){"number"===typeof a?a=new Eb(a):y.l(a,Eb,C,"padding");var b=this.cf;b.N(a)||(this.cf=a=a.U(),this.yc(),this.j("padding",b,a))});y.w(C,{Mg:"nodes"},function(){return this.Ho.i});y.w(C,{links:"links"},function(){return this.Bo.i});y.w(C,{pi:"parts"},function(){return this.mb.i}); -C.prototype.findTopLevelNodesAndLinks=function(){for(var a=new K(D),b=this.Ho.i;b.next();){var c=b.value;c.Cp&&a.add(c)}for(b=this.Bo.i;b.next();)c=b.value,c.Cp&&a.add(c);return a.i};C.prototype.findTopLevelGroups=function(){return this.nl.i};y.defineProperty(C,{Sb:"layout"},function(){return this.je},function(a){var b=this.je;b!==a&&(y.l(a,xg,C,"layout"),null!==b&&(b.h=null,b.group=null),this.je=a,a.h=this,a.group=null,this.Pu=!0,this.j("layout",b,a),this.De())}); -C.prototype.layoutDiagram=function(a){Hk(this);a&&Wl(this,!0);hl(this,!1)};function Wl(a,b){for(var c=a.nl.i;c.next();)dm(a,c.value,b);null!==a.Sb&&(b?a.Sb.Hf=!1:a.Sb.I())}function dm(a,b,c){if(null!==b){for(var d=b.xm.i;d.next();)dm(a,d.value,c);null!==b.Sb&&(c?b.Sb.Hf=!1:b.Sb.I())}} -function hl(a,b){if(!a.xy){var c=a.Sb,d=a.Za;a.Za=!0;try{a.Vb("Layout");var e=a.Ua;1!==a.pa.Hh||e.nf||e.wc||e.un("Layout");for(var g=a.nl.i;g.next();)em(a,g.value,b);c.Hf||b&&!c.NE&&1!==a.pa.Hh||(c.doLayout(a),Hk(a),c.Hf=!0)}finally{a.Md("Layout"),a.Pu=!c.Hf,a.Za=d}}}function em(a,b,c){if(null!==b){for(var d=b.xm.i;d.next();)em(a,d.value,c);d=b.Sb;null===d||d.Hf||c&&!d.NE||(b.cz=!b.location.F(),d.doLayout(b),b.I(fm),d.Hf=!0,kl(a,b))}} -y.defineProperty(C,{ee:"isTreePathToChildren"},function(){return this.Bv},function(a){var b=this.Bv;if(b!==a&&(y.g(a,"boolean",C,"isTreePathToChildren"),this.Bv=a,this.j("isTreePathToChildren",b,a),!this.pa.qb))for(a=this.Mg;a.next();)gm(a.value)});C.prototype.findTreeRoots=function(){for(var a=new J(E),b=this.Mg;b.next();){var c=b.value;c.Cp&&null===c.rp()&&a.add(c)}return a.i}; -y.defineProperty(C,{YA:"treeCollapsePolicy"},function(){return this.vw},function(a){var b=this.vw;b!==a&&(y.Ba(a,C,C,"treeCollapsePolicy"),this.vw=a,this.j("treeCollapsePolicy",b,a))});y.defineProperty(C,{wh:null},function(){return this.hC},function(a){this.hC=a}); +C.prototype.reset=C.prototype.reset=function(){this.Vc=!0;this.clear();this.Yb=new J(vg);this.pF();this.oF();this.sb=(new N(NaN,NaN)).freeze();this.bc=1;this.wv=(new N(NaN,NaN)).freeze();this.xv=NaN;this.Nv=1E-4;this.Kv=100;this.Bw=(new N(NaN,NaN)).freeze();this.nv=(new w(NaN,NaN,NaN,NaN)).freeze();this.iw=(new Eb(0,0,0,0)).freeze();this.jw=ok;this.fw=this.bw=null;this.cm=kh;this.Rn=Lc;this.Xk=kh;this.po=Lc;this.yv=this.vv=Zb;this.tB=250;this.Su=(new Eb(16,16,16,16)).freeze();this.Cv=!0;this.ww=qk; +this.yw=vi;this.Pq="auto";this.yi=this.Vi=this.Mi=this.Qv=this.Ni=this.Oi=this.Pi=this.xi=this.Ci=this.ui=null;this.Gi=!1;this.Bk=this.Ak=this.Hu=this.Ze=!0;this.Ju=this.Iu=!1;this.Nu=this.Ku=this.tv=this.sv=this.Ou=this.Mu=this.Jk=this.Ik=this.Hk=this.Gk=this.Ek=this.Fk=this.Dk=this.Lu=this.Lk=this.Ck=this.Kk=!0;this.lw=this.hw=16;this.bf=(new Eb(5)).freeze();this.Lv=999999999;this.he=null;xk(this);this.td=null;this.gb=new eh;this.gb.initializeStandardTools();this.cb=this.vt=this.gb;this.wb=new ra; +this.Ui=!0;wk(this);this.Sb=new xg;this.Ui=!1;this.ha=new V;this.eh=!1;this.ko=!0;this.Vc=this.Vf=!1;this.ta();this.gh=this.ti=null;pk(this);this.av=""}; +C.prototype.rebuildParts=C.prototype.Rl=function(){for(var a=this.zA.i;a.next();){var b=a.value,c=a.key;(!b.be()||b instanceof F)&&z.k('Invalid node template in Diagram.nodeTemplateMap: template for "'+c+'" must be a Node or a simple Part, not a Group or Link: '+b)}for(a=this.bA.i;a.next();)b=a.value,c=a.key,b instanceof F||z.k('Invalid group template in Diagram.groupTemplateMap: template for "'+c+'" must be a Group, not a normal Node or Link: '+b);for(a=this.lA.i;a.next();)b=a.value,c=a.key,b instanceof +G||z.k('Invalid link template in Diagram.linkTemplateMap: template for "'+c+'" must be a Link, not a normal Node or simple Part: '+b);a=z.rb();for(b=this.selection.i;b.next();)(c=b.value.data)&&a.push(c);for(var b=z.rb(),d=this.jn.i;d.next();)(c=d.value.data)&&b.push(c);c=z.rb();for(d=this.Lg.i;d.next();){var e=d.value;null!==e.data&&(c.push(e.data),c.push(e.location))}for(d=this.links.i;d.next();)e=d.value,null!==e.data&&(c.push(e.data),c.push(e.location));for(d=this.ni.i;d.next();)e=d.value,null!== +e.data&&(c.push(e.data),c.push(e.location));d=this.ha;d instanceof V&&Hl(this,d.Jg);Hl(this,d.hg);Il(this,d.hg);d instanceof V&&Jl(this,d.Jg);for(d=0;dthis.scale&&(this.scale=a)):z.ka(a,"> 0",C,"minScale"))}); +z.defineProperty(C,{xh:"maxScale"},function(){return this.Kv},function(a){z.p(a,C,"maxScale");var b=this.Kv;b!==a&&(0 0",C,"maxScale"))});z.defineProperty(C,{Zl:"zoomPoint"},function(){return this.Bw},function(a){this.Bw.N(a)||(z.l(a,N,C,"zoomPoint"),this.Bw=a=a.V())}); +z.defineProperty(C,{XD:"contentAlignment"},function(){return this.Rn},function(a){var b=this.Rn;b.N(a)||(z.l(a,Q,C,"contentAlignment"),this.Rn=a=a.V(),this.j("contentAlignment",b,a),Jk(this,!1))});z.defineProperty(C,{EK:"initialContentAlignment"},function(){return this.po},function(a){var b=this.po;b.N(a)||(z.l(a,Q,C,"initialContentAlignment"),this.po=a=a.V(),this.j("initialContentAlignment",b,a))}); +z.defineProperty(C,{padding:"padding"},function(){return this.bf},function(a){"number"===typeof a?a=new Eb(a):z.l(a,Eb,C,"padding");var b=this.bf;b.N(a)||(this.bf=a=a.V(),this.yc(),this.j("padding",b,a))});z.w(C,{Lg:"nodes"},function(){return this.Ho.i});z.w(C,{links:"links"},function(){return this.Bo.i});z.w(C,{ni:"parts"},function(){return this.mb.i}); +C.prototype.findTopLevelNodesAndLinks=function(){for(var a=new K(D),b=this.Ho.i;b.next();){var c=b.value;c.Cp&&a.add(c)}for(b=this.Bo.i;b.next();)c=b.value,c.Cp&&a.add(c);return a.i};C.prototype.findTopLevelGroups=function(){return this.nl.i};z.defineProperty(C,{Sb:"layout"},function(){return this.he},function(a){var b=this.he;b!==a&&(z.l(a,xg,C,"layout"),null!==b&&(b.h=null,b.group=null),this.he=a,a.h=this,a.group=null,this.Qu=!0,this.j("layout",b,a),this.Ce())}); +C.prototype.layoutDiagram=function(a){Hk(this);a&&Wl(this,!0);hl(this,!1)};function Wl(a,b){for(var c=a.nl.i;c.next();)dm(a,c.value,b);null!==a.Sb&&(b?a.Sb.Gf=!1:a.Sb.I())}function dm(a,b,c){if(null!==b){for(var d=b.wm.i;d.next();)dm(a,d.value,c);null!==b.Sb&&(c?b.Sb.Gf=!1:b.Sb.I())}} +function hl(a,b){if(!a.yy){var c=a.Sb,d=a.Za;a.Za=!0;try{a.Wb("Layout");var e=a.Ua;1!==a.pa.Gh||e.mf||e.wc||e.un("Layout");for(var g=a.nl.i;g.next();)em(a,g.value,b);c.Gf||b&&!c.QE&&1!==a.pa.Gh||(c.doLayout(a),Hk(a),c.Gf=!0)}finally{a.Kd("Layout"),a.Qu=!c.Gf,a.Za=d}}}function em(a,b,c){if(null!==b){for(var d=b.wm.i;d.next();)em(a,d.value,c);d=b.Sb;null===d||d.Gf||c&&!d.QE||(b.dz=!b.location.F(),d.doLayout(b),b.I(fm),d.Gf=!0,kl(a,b))}} +z.defineProperty(C,{ce:"isTreePathToChildren"},function(){return this.Cv},function(a){var b=this.Cv;if(b!==a&&(z.g(a,"boolean",C,"isTreePathToChildren"),this.Cv=a,this.j("isTreePathToChildren",b,a),!this.pa.qb))for(a=this.Lg;a.next();)gm(a.value)});C.prototype.findTreeRoots=function(){for(var a=new J(E),b=this.Lg;b.next();){var c=b.value;c.Cp&&null===c.rp()&&a.add(c)}return a.i}; +z.defineProperty(C,{bB:"treeCollapsePolicy"},function(){return this.ww},function(a){var b=this.ww;b!==a&&(z.Ba(a,C,C,"treeCollapsePolicy"),this.ww=a,this.j("treeCollapsePolicy",b,a))});z.defineProperty(C,{vh:null},function(){return this.lC},function(a){this.lC=a}); function pk(a){function b(a){var b=a.toLowerCase(),h=new J("function");c.add(a,h);c.add(b,h);d.add(a,a);d.add(b,a)}var c=new na("string",J),d=new na("string","string");b("AnimationStarting");b("AnimationFinished");b("BackgroundSingleClicked");b("BackgroundDoubleClicked");b("BackgroundContextClicked");b("ClipboardChanged");b("ClipboardPasted");b("DocumentBoundsChanged");b("ExternalObjectsDropped");b("InitialLayoutCompleted");b("LayoutCompleted");b("LinkDrawn");b("LinkRelinked");b("LinkReshaped");b("Modified"); -b("ObjectSingleClicked");b("ObjectDoubleClicked");b("ObjectContextClicked");b("PartCreated");b("PartResized");b("PartRotated");b("SelectionMoved");b("SelectionCopied");b("SelectionDeleting");b("SelectionDeleted");b("SelectionGrouped");b("SelectionUngrouped");b("ChangingSelection");b("ChangedSelection");b("SubGraphCollapsed");b("SubGraphExpanded");b("TextEdited");b("TreeCollapsed");b("TreeExpanded");b("ViewportBoundsChanged");a.zy=c;a.yy=d} -function Ia(a,b){var c=a.yy.na(b);return null!==c?c:a.yy.na(b.toLowerCase())}function hm(a,b){var c=a.zy.na(b);if(null!==c)return c;c=a.zy.na(b.toLowerCase());if(null!==c)return c;y.k("Unknown DiagramEvent name: "+b);return null}C.prototype.addDiagramListener=C.prototype.wz=function(a,b){y.g(a,"string",C,"addDiagramListener:name");y.g(b,"function",C,"addDiagramListener:listener");var c=hm(this,a);null!==c&&c.add(b)}; -C.prototype.removeDiagramListener=C.prototype.hF=function(a,b){y.g(a,"string",C,"removeDiagramListener:name");y.g(b,"function",C,"addDiagramListener:listener");var c=hm(this,a);null!==c&&c.remove(b)};C.prototype.raiseDiagramEvent=C.prototype.Ja=function(a,b,c){u&&y.g(a,"string",C,"raiseDiagramEvent:name");var d=hm(this,a),e=new Rf;e.h=this;e.name=Ia(this,a);void 0!==b&&(e.SA=b);void 0!==c&&(e.yA=c);a=d.length;if(1===a)d=d.ea(0),d(e);else if(0!==a)for(b=d.kc(),c=0;c=d.top&&0>=d.left&&0>=d.right&&0>=d.bottom)return c;var e=a.xb,g=a.scale,e=y.yk(0,0,e.width*g,e.height*g),h=y.Tb(0,0);if(b.x>=e.x&&b.xe.x+e.width-d.right&&(k=Math.max(a.mu,1),k|=0,h.x+=k,b.x>e.x+e.width-d.right/2&&(h.x+=k),b.x>e.x+e.width-d.right/4&&(h.x+=4*k));b.y>=e.y&&b.ye.y+e.height-d.bottom&&(k=Math.max(a.nu,1),k|=0,h.y+=k,b.y>e.y+e.height-d.bottom/2&&(h.y+=k),b.y>e.y+e.height-d.bottom/4&&(h.y+=4*k));h.Mc(Fd)||(c=new N(c.x+h.x/g,c.y+h.y/g));y.dc(e);y.A(h);return c}C.prototype.makeSVG=C.prototype.makeSvg=function(a){void 0===a&&(a=new ma);a.context="svg";a=pm(this,a);return null!==a?a.Vl:null}; -C.prototype.makeImage=function(a){void 0===a&&(a=new ma);var b=(a.document||document).createElement("img");b.src=this.vI(a);return b};C.prototype.makeImageData=C.prototype.vI=function(a){void 0===a&&(a=new ma);var b=pm(this,a);return null!==b?b.toDataURL(a.type,a.details):""};var qm=!1; -function pm(a,b){a.Ua.qi();a.dg();if(null===a.Fb)return null;"object"!==typeof b&&y.k("properties argument must be an Object.");var c=!1,d=b.size||null,e=b.scale||null;void 0!==b.scale&&isNaN(b.scale)&&(e="NaN");var g=b.maxSize;void 0===b.maxSize&&(c=!0,g="svg"===b.context?new Ea(Infinity,Infinity):new Ea(2E3,2E3));var h=b.position||null,k=b.parts||null,l=void 0===b.padding?1:b.padding,m=b.background||null,n=b.omitTemporary;void 0===n&&(n=!0);var p=b.document||document,q=b.elementFinished||null,r= -b.showTemporary;void 0===r&&(r=!n);n=b.showGrid;void 0===n&&(n=r);null!==d&&isNaN(d.width)&&isNaN(d.height)&&(d=null);"number"===typeof l?l=new Eb(l):l instanceof Eb||(l=new Eb(0));l.left=Math.max(l.left,0);l.right=Math.max(l.right,0);l.top=Math.max(l.top,0);l.bottom=Math.max(l.bottom,0);a.eo=!1;ca(a.hd,!0);var s=new la(null,p),t=s.xl,v=s;if(!(d||e||k||h))return s.width=a.Jb+Math.ceil(l.left+l.right),s.height=a.Ob+Math.ceil(l.top+l.bottom),"svg"===b.context&&(t=v=new bd(s.Nd,p,q),t instanceof bd&& -(a.eo=!0)),rl(a,t,l,new Ea(s.width,s.height),a.bc,a.sb,k,m,r,n),a.eo=!0,v;var x=a.wb.Qw,z=new N(0,0),A=a.ad.copy();A.pJ(a.padding);if(r)for(var B=!0,B=a.Xb.o,L=B.length,H=0;Hx?(e=x,h=A.width,ba=A.height):(h=g.width,ba=g.height)):(h=A.width*e,ba=A.height*e):(e=x,h=A.width,ba=A.height);null!==l?(h+=ea,ba+=B):l=new Eb(0);null!==g&&(d=g.width,g=g.height,"svg"!==b.context&&c&&!qm&&(h>d||ba>g)&&(y.trace("Diagram.makeImage(data): Diagram width or height is larger than the default max size. ("+Math.ceil(h)+"x"+Math.ceil(ba)+" vs 2000x2000) Consider increasing the max size."), -qm=!0),isNaN(d)&&(d=2E3),isNaN(g)&&(g=2E3),isFinite(d)&&(h=Math.min(h,d)),isFinite(g)&&(ba=Math.min(ba,g)));s.width=Math.ceil(h);s.height=Math.ceil(ba);"svg"===b.context&&(t=v=new bd(s.Nd,p,q),t instanceof bd&&(a.eo=!0));rl(a,t,l,new Ea(Math.ceil(h),Math.ceil(ba)),e,z,k,m,r,n);a.eo=!0;return v}C.inherit=function(a,b){y.g(a,"function",C,"inherit");y.g(b,"function",C,"inherit");b.xG&&y.k("Cannot inherit from "+y.kf(b));y.Pa(a,b)}; -function yk(){this.AG="63ad05bbe23a1786468a4c741b6d2";this.qg=this.AG===this._tk?!0:null} -yk.prototype.Zl=function(a){a.hd.setTransform(a.kd,0,0,a.kd,0,0);if(null===this.qg)a:{var b="f",c=window[y.Gg("76a715b2f73f148a")][y.Gg("72ba13b5")];a=y.Gg;if(window[a("7da7")]&&window[a("7da7")][a("76a115b6ed251eaf4692")]){this.qg=!0;var d=window[a("7da7")][a("76a115b6ed251eaf4692")],d=a(d).split(a("39e9")),e=a(d[1]).split("."),g=y[a("6cae19")].split(".");if(e[0]>g[0]||e[0]===g[0]&&e[1]>=g[1]){e=c[a("76ad18b4f73e")];for(g=c[a("73a612b6fb191d")](a("35e7"))+2;gc&&a(d[2])!==a("7da71ca0ad381e90")&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));0>c&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));this.qg=!(0<=c&&cc&&a(y.adym)!==a("7da71ca0ad381e90")&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));if(this.qg=!(0<=c&&cb.timeStamp-a.qm?b.preventDefault():a.Zk?b.preventDefault():(a.Zc=a.Qb,a.Qb=c,Pk(a,a,b,c,!0),c.Dl=!0,c.ef=b.detail,a.Gi=c,!0===c.Zq.simulated?(b.preventDefault(),b.simulated=!0):(u&&u.aF&&(window.aF=a.op(c.ga)), -Dh=null,a.doMouseDown(),a.Gi=a.Gi.copy(),1===b.button?b.preventDefault():ia(a,c,b)))}};a.Np=function(b){if(a.isEnabled)if(a.Zk&&2===b.button)b.preventDefault();else if(a.Zk&&0===b.button&&(a.Zk=!1),a.Rs)b.preventDefault();else{a.km=!0;var c=a.Zc;if(y.ln){if(400>b.timeStamp-a.qm){b.preventDefault();return}a.qm=b.timeStamp}if(y.ln&&null!==a.Js)a.Js=null,b.preventDefault();else{a.Zc=a.Qb;a.Qb=c;Pk(a,a,b,c,!0);c.up=!0;c.ef=b.detail;if(y.cI||y.dI)b.timeStamp-a.qma.$v)){var c=a.Vf;c[0].pointerId=== -b.pointerId&&(c[0]=b);c[1].pointerId===b.pointerId&&(c[1]=b);a.isEnabled&&(c=a.Zc,a.Zc=a.Qb,a.Qb=c,Sk(a,b,b,c,!0),a.Ox(b,null,c.Tg)||(a.doMouseMove(),ia(a,c,b)))}};a.OI=function(b){if("touch"===b.pointerType){var c=a.QC;void 0!==c[b.pointerId]&&(a.$v--,delete c[b.pointerId],c=a.Vf,null!==c[0]&&c[0].pointerId===b.pointerId&&(c[0]=null),null!==c[1]&&c[1].pointerId===b.pointerId&&(c[1]=null))}};ca(d,!0);Ck(a)} -function rm(a){1a)&&y.ka(a,"0 <= loc <= 1",Da,"addColorStop:loc");y.g(b,"string",Da,"addColorStop:color");u&&!Ca(b)&&y.k('Color "'+b+'" is not a valid color string for Brush.addColorStop');null===this.ah&&(this.ah=new na("number","string"));this.ah.add(a,b);this.ba===tg&&(this.type=ug);this.bh=null}; -y.defineProperty(Da,{type:"type"},function(){return this.ba},function(a){this.G&&y.oa(this,a);y.Ba(a,Da,Da,"type");this.ba=a;this.start.Ce()&&(a===ug?this.start=$b:a===td&&(this.start=ec));this.end.Ce()&&(a===ug?this.end=hc:a===td&&(this.end=ec));this.bh=null});y.defineProperty(Da,{color:"color"},function(){return this.On},function(a){this.G&&y.oa(this,a);u&&!Ca(a)&&y.k('Color "'+a+'" is not a valid color string for Brush.color');this.On=a;this.bh=null}); -y.defineProperty(Da,{start:"start"},function(){return this.Ro},function(a){this.G&&y.oa(this,a);y.l(a,Q,Da,"start");this.Ro=a.U();this.bh=null});y.defineProperty(Da,{end:"end"},function(){return this.ho},function(a){this.G&&y.oa(this,a);y.l(a,Q,Da,"end");this.ho=a.U();this.bh=null});y.defineProperty(Da,{vu:"startRadius"},function(){return this.qw},function(a){this.G&&y.oa(this,a);y.p(a,Da,"startRadius");0>a&&y.ka(a,">= zero",Da,"startRadius");this.qw=a;this.bh=null}); -y.defineProperty(Da,{wt:"endRadius"},function(){return this.kv},function(a){this.G&&y.oa(this,a);y.p(a,Da,"endRadius");0>a&&y.ka(a,">= zero",Da,"endRadius");this.kv=a;this.bh=null});y.defineProperty(Da,{rt:"colorStops"},function(){return this.ah},function(a){this.G&&y.oa(this,a);u&&y.l(a,na,Da,"colorStops");this.ah=a;this.bh=null});y.defineProperty(Da,{pattern:"pattern"},function(){return this.Zv},function(a){this.G&&y.oa(this,a);this.Zv=a;this.bh=null}); -Da.randomColor=function(a,b){void 0===a&&(a=128);u&&(y.p(a,Da,"randomColor:min"),(0>a||255d.length&&(d="0"+d);2>e.length&&(e="0"+e);2>c.length&&(c="0"+c);return"#"+ -d+e+c};var ym=(new la(null)).xl,Ca;Da.isValidColor=Ca=function(a){if("black"===a)return!0;if(""===a)return!1;u&&y.g(a,"string",Da,"isValidColor");ym.fillStyle="#000000";var b=ym.fillStyle;ym.fillStyle=a;if(ym.fillStyle!==b)return!0;ym.fillStyle="#FFFFFF";b=ym.fillStyle;ym.fillStyle=a;return ym.fillStyle!==b}; -function O(){y.lc(this);this.ja=30723;this.Xc=1;this.mh=null;this.Ub="";this.uc=this.Nb=null;this.sb=(new N(NaN,NaN)).freeze();this.tf=Xd;this.Sj=Md;this.Qj=Vd;this.Ld=new Fa;this.zk=new Fa;this.el=new Fa;this.bc=this.hv=1;this.bm=0;this.fi=zm;this.Er=Hd;this.ud=(new w(NaN,NaN,NaN,NaN)).freeze();this.Wb=(new w(NaN,NaN,NaN,NaN)).freeze();this.Wc=(new w(0,0,NaN,NaN)).freeze();this.Us=this.$q=this.la=this.fs=this.Dm=null;this.Vs=this.ar=Infinity;this.pq=this.Je=Kc;this.ts=0;this.Vi=1;this.xq=0;this.yi= -1;this.Ns=null;this.ys=-Infinity;this.xs=0;this.zs=Fd;this.As=Ki;this.Iq="";this.Ac=this.ma=null;this.Ln=-1;this.Cm=this.Is=this.xi=this.Pk=this.Qo=null}y.ki(O);y.ia("GraphObject",O); -O.prototype.cloneProtected=function(a){a.ja=this.ja|6144;a.Xc=this.Xc;a.Ub=this.Ub;a.Nb=this.Nb;a.uc=this.uc;a.sb.assign(this.sb);a.tf=this.tf.U();a.Sj=this.Sj.U();a.Qj=this.Qj.U();a.el=this.el.copy();a.bc=this.bc;a.bm=this.bm;a.fi=this.fi;a.Er=this.Er.U();a.ud.assign(this.ud);a.Wb.assign(this.Wb);a.Wc.assign(this.Wc);a.fs=this.fs;null!==this.la&&(a.la=this.la.copy());a.$q=this.$q;a.Us=this.Us;a.ar=this.ar;a.Vs=this.Vs;a.Je=this.Je.U();a.pq=this.pq.U();a.ts=this.ts;a.Vi=this.Vi;a.xq=this.xq;a.yi= -this.yi;a.Ns=this.Ns;a.ys=this.ys;a.xs=this.xs;a.zs=this.zs.U();a.As=this.As;a.Iq=this.Iq;null!==this.ma&&(a.ma=this.ma.copy());a.Ac=this.Ac;a.Ln=this.Ln;null!==this.Pk&&(a.Pk=y.yl(this.Pk));null!==this.xi&&(a.xi=this.xi.copy());a.Is=this.Is};O.prototype.addCopyProperty=O.prototype.JG=function(a){var b=this.Pk;if(y.isArray(b))for(var c=0;c=d.top&&0>=d.left&&0>=d.right&&0>=d.bottom)return c;var e=a.xb,g=a.scale,e=z.yk(0,0,e.width*g,e.height*g),h=z.Tb(0,0);if(b.x>=e.x&&b.xe.x+e.width-d.right&&(k=Math.max(a.nu,1),k|=0,h.x+=k,b.x>e.x+e.width-d.right/2&&(h.x+=k),b.x>e.x+e.width-d.right/4&&(h.x+=4*k));b.y>=e.y&&b.ye.y+e.height-d.bottom&&(k=Math.max(a.ou,1),k|=0,h.y+=k,b.y>e.y+e.height-d.bottom/2&&(h.y+=k),b.y>e.y+e.height-d.bottom/4&&(h.y+=4*k));h.Mc(Gd)||(c=new N(c.x+h.x/g,c.y+h.y/g));z.dc(e);z.A(h);return c}C.prototype.makeSVG=C.prototype.makeSvg=function(a){void 0===a&&(a=new ma);a.context="svg";a=pm(this,a);return null!==a?a.Ul:null}; +C.prototype.makeImage=function(a){void 0===a&&(a=new ma);var b=(a.document||document).createElement("img");b.src=this.xI(a);return b};C.prototype.makeImageData=C.prototype.xI=function(a){void 0===a&&(a=new ma);var b=pm(this,a);return null!==b?b.toDataURL(a.type,a.details):""};var qm=!1; +function pm(a,b){a.Ua.oi();a.cg();if(null===a.Fb)return null;"object"!==typeof b&&z.k("properties argument must be an Object.");var c=!1,d=b.size||null,e=b.scale||null;void 0!==b.scale&&isNaN(b.scale)&&(e="NaN");var g=b.maxSize;void 0===b.maxSize&&(c=!0,g="svg"===b.context?new Ea(Infinity,Infinity):new Ea(2E3,2E3));var h=b.position||null,k=b.parts||null,l=void 0===b.padding?1:b.padding,m=b.background||null,n=b.omitTemporary;void 0===n&&(n=!0);var p=b.document||document,q=b.elementFinished||null,r= +b.showTemporary;void 0===r&&(r=!n);n=b.showGrid;void 0===n&&(n=r);null!==d&&isNaN(d.width)&&isNaN(d.height)&&(d=null);"number"===typeof l?l=new Eb(l):l instanceof Eb||(l=new Eb(0));l.left=Math.max(l.left,0);l.right=Math.max(l.right,0);l.top=Math.max(l.top,0);l.bottom=Math.max(l.bottom,0);a.eo=!1;ca(a.hd,!0);var s=new la(null,p),t=s.xl,v=s;if(!(d||e||k||h))return s.width=a.Jb+Math.ceil(l.left+l.right),s.height=a.Ob+Math.ceil(l.top+l.bottom),"svg"===b.context&&(t=v=new cd(s.Ld,p,q),t instanceof cd&& +(a.eo=!0)),rl(a,t,l,new Ea(s.width,s.height),a.bc,a.sb,k,m,r,n),a.eo=!0,v;var x=a.wb.Rw,y=new N(0,0),A=a.ad.copy();A.rJ(a.padding);if(r)for(var B=!0,B=a.Yb.o,L=B.length,H=0;Hx?(e=x,h=A.width,ba=A.height):(h=g.width,ba=g.height)):(h=A.width*e,ba=A.height*e):(e=x,h=A.width,ba=A.height);null!==l?(h+=ea,ba+=B):l=new Eb(0);null!==g&&(d=g.width,g=g.height,"svg"!==b.context&&c&&!qm&&(h>d||ba>g)&&(z.trace("Diagram.makeImage(data): Diagram width or height is larger than the default max size. ("+Math.ceil(h)+"x"+Math.ceil(ba)+" vs 2000x2000) Consider increasing the max size."), +qm=!0),isNaN(d)&&(d=2E3),isNaN(g)&&(g=2E3),isFinite(d)&&(h=Math.min(h,d)),isFinite(g)&&(ba=Math.min(ba,g)));s.width=Math.ceil(h);s.height=Math.ceil(ba);"svg"===b.context&&(t=v=new cd(s.Ld,p,q),t instanceof cd&&(a.eo=!0));rl(a,t,l,new Ea(Math.ceil(h),Math.ceil(ba)),e,y,k,m,r,n);a.eo=!0;return v}C.inherit=function(a,b){z.g(a,"function",C,"inherit");z.g(b,"function",C,"inherit");b.AG&&z.k("Cannot inherit from "+z.jf(b));z.Qa(a,b)}; +function yk(){this.DG="63ad05bbe23a1786468a4c741b6d2";this.pg=this.DG===this._tk?!0:null} +yk.prototype.Yl=function(a){a.hd.setTransform(a.kd,0,0,a.kd,0,0);if(null===this.pg)a:{var b="f",c=window[z.Fg("76a715b2f73f148a")][z.Fg("72ba13b5")];a=z.Fg;if(window[a("7da7")]&&window[a("7da7")][a("76a115b6ed251eaf4692")]){this.pg=!0;var d=window[a("7da7")][a("76a115b6ed251eaf4692")],d=a(d).split(a("39e9")),e=a(d[1]).split("."),g=z[a("6cae19")].split(".");if(e[0]>g[0]||e[0]===g[0]&&e[1]>=g[1]){e=c[a("76ad18b4f73e")];for(g=c[a("73a612b6fb191d")](a("35e7"))+2;gc&&a(d[2])!==a("7da71ca0ad381e90")&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));0>c&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));this.pg=!(0<=c&&cc&&a(z.adym)!==a("7da71ca0ad381e90")&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));if(this.pg=!(0<=c&&cb.timeStamp-a.pm?b.preventDefault():a.Zk?b.preventDefault():(a.Zc=a.Qb,a.Qb=c,Pk(a,a,b,c,!0),c.Dl=!0,c.df=b.detail,a.Ei=c,!0===c.Zq.simulated?(b.preventDefault(),b.simulated=!0):(u&&u.dF&&(window.dF=a.op(c.ga)), +Dh=null,a.doMouseDown(),a.Ei=a.Ei.copy(),1===b.button?b.preventDefault():ia(a,c,b)))}};a.Np=function(b){if(a.isEnabled)if(a.Zk&&2===b.button)b.preventDefault();else if(a.Zk&&0===b.button&&(a.Zk=!1),a.Ss)b.preventDefault();else{a.jm=!0;var c=a.Zc;if(z.ln){if(400>b.timeStamp-a.pm){b.preventDefault();return}a.pm=b.timeStamp}if(z.ln&&null!==a.Ks)a.Ks=null,b.preventDefault();else{a.Zc=a.Qb;a.Qb=c;Pk(a,a,b,c,!0);c.up=!0;c.df=b.detail;if(z.eI||z.fI)b.timeStamp-a.pma.aw)){var c=a.Uf;c[0].pointerId=== +b.pointerId&&(c[0]=b);c[1].pointerId===b.pointerId&&(c[1]=b);a.isEnabled&&(c=a.Zc,a.Zc=a.Qb,a.Qb=c,Sk(a,b,b,c,!0),a.Px(b,null,c.Sg)||(a.doMouseMove(),ia(a,c,b)))}};a.RI=function(b){if("touch"===b.pointerType){var c=a.TC;void 0!==c[b.pointerId]&&(a.aw--,delete c[b.pointerId],c=a.Uf,null!==c[0]&&c[0].pointerId===b.pointerId&&(c[0]=null),null!==c[1]&&c[1].pointerId===b.pointerId&&(c[1]=null))}};ca(d,!0);Ck(a)} +function rm(a){1a)&&z.ka(a,"0 <= loc <= 1",Da,"addColorStop:loc");z.g(b,"string",Da,"addColorStop:color");u&&!Ca(b)&&z.k('Color "'+b+'" is not a valid color string for Brush.addColorStop');null===this.$g&&(this.$g=new na("number","string"));this.$g.add(a,b);this.ba===tg&&(this.type=ug);this.ah=null}; +z.defineProperty(Da,{type:"type"},function(){return this.ba},function(a){this.G&&z.oa(this,a);z.Ba(a,Da,Da,"type");this.ba=a;this.start.Be()&&(a===ug?this.start=$b:a===wd&&(this.start=ec));this.end.Be()&&(a===ug?this.end=hc:a===wd&&(this.end=ec));this.ah=null});z.defineProperty(Da,{color:"color"},function(){return this.On},function(a){this.G&&z.oa(this,a);u&&!Ca(a)&&z.k('Color "'+a+'" is not a valid color string for Brush.color');this.On=a;this.ah=null}); +z.defineProperty(Da,{start:"start"},function(){return this.Ro},function(a){this.G&&z.oa(this,a);z.l(a,Q,Da,"start");this.Ro=a.V();this.ah=null});z.defineProperty(Da,{end:"end"},function(){return this.ho},function(a){this.G&&z.oa(this,a);z.l(a,Q,Da,"end");this.ho=a.V();this.ah=null});z.defineProperty(Da,{wu:"startRadius"},function(){return this.rw},function(a){this.G&&z.oa(this,a);z.p(a,Da,"startRadius");0>a&&z.ka(a,">= zero",Da,"startRadius");this.rw=a;this.ah=null}); +z.defineProperty(Da,{xt:"endRadius"},function(){return this.lv},function(a){this.G&&z.oa(this,a);z.p(a,Da,"endRadius");0>a&&z.ka(a,">= zero",Da,"endRadius");this.lv=a;this.ah=null});z.defineProperty(Da,{st:"colorStops"},function(){return this.$g},function(a){this.G&&z.oa(this,a);u&&z.l(a,na,Da,"colorStops");this.$g=a;this.ah=null});z.defineProperty(Da,{pattern:"pattern"},function(){return this.$v},function(a){this.G&&z.oa(this,a);this.$v=a;this.ah=null}); +Da.randomColor=function(a,b){void 0===a&&(a=128);u&&(z.p(a,Da,"randomColor:min"),(0>a||255d.length&&(d="0"+d);2>e.length&&(e="0"+e);2>c.length&&(c="0"+c);return"#"+ +d+e+c};var ym=(new la(null)).xl,Ca;Da.isValidColor=Ca=function(a){if("black"===a)return!0;if(""===a)return!1;u&&z.g(a,"string",Da,"isValidColor");ym.fillStyle="#000000";var b=ym.fillStyle;ym.fillStyle=a;if(ym.fillStyle!==b)return!0;ym.fillStyle="#FFFFFF";b=ym.fillStyle;ym.fillStyle=a;return ym.fillStyle!==b}; +function O(){z.lc(this);this.ja=30723;this.Xc=1;this.lh=null;this.Ub="";this.uc=this.Nb=null;this.sb=(new N(NaN,NaN)).freeze();this.sf=Yd;this.Sj=Nd;this.Qj=Wd;this.Jd=new Fa;this.zk=new Fa;this.el=new Fa;this.bc=this.iv=1;this.am=0;this.di=zm;this.Fr=Id;this.ud=(new w(NaN,NaN,NaN,NaN)).freeze();this.Xb=(new w(NaN,NaN,NaN,NaN)).freeze();this.Wc=(new w(0,0,NaN,NaN)).freeze();this.Vs=this.$q=this.la=this.gs=this.Cm=null;this.Ws=this.ar=Infinity;this.pq=this.Ie=Lc;this.us=0;this.Ti=1;this.xq=0;this.wi= +1;this.Os=null;this.zs=-Infinity;this.ys=0;this.As=Gd;this.Bs=Ki;this.Iq="";this.Ac=this.ma=null;this.Ln=-1;this.Bm=this.Js=this.vi=this.Pk=this.Qo=null}z.ii(O);z.ia("GraphObject",O); +O.prototype.cloneProtected=function(a){a.ja=this.ja|6144;a.Xc=this.Xc;a.Ub=this.Ub;a.Nb=this.Nb;a.uc=this.uc;a.sb.assign(this.sb);a.sf=this.sf.V();a.Sj=this.Sj.V();a.Qj=this.Qj.V();a.el=this.el.copy();a.bc=this.bc;a.am=this.am;a.di=this.di;a.Fr=this.Fr.V();a.ud.assign(this.ud);a.Xb.assign(this.Xb);a.Wc.assign(this.Wc);a.gs=this.gs;null!==this.la&&(a.la=this.la.copy());a.$q=this.$q;a.Vs=this.Vs;a.ar=this.ar;a.Ws=this.Ws;a.Ie=this.Ie.V();a.pq=this.pq.V();a.us=this.us;a.Ti=this.Ti;a.xq=this.xq;a.wi= +this.wi;a.Os=this.Os;a.zs=this.zs;a.ys=this.ys;a.As=this.As.V();a.Bs=this.Bs;a.Iq=this.Iq;null!==this.ma&&(a.ma=this.ma.copy());a.Ac=this.Ac;a.Ln=this.Ln;null!==this.Pk&&(a.Pk=z.yl(this.Pk));null!==this.vi&&(a.vi=this.vi.copy());a.Js=this.Js};O.prototype.addCopyProperty=O.prototype.LG=function(a){var b=this.Pk;if(z.isArray(b))for(var c=0;ck;)k+=g[n++%l],p=!p;q=!1}else k=g[n++%l];k>m&&(k=m);var r=Math.sqrt(k*k/(1+e*e));0>d&&(r=-r);b+=r;c+=e*r;p?a.lineTo(b,c):a.moveTo(b,c);m-=k;p=!p}}O.prototype.raiseChangedEvent=O.prototype.Rc=function(a,b,c,d,e,g,h){var k=this.ca;null!==k&&(k.vn(a,b,c,d,e,g,h),0!==(this.ja&1024)&&c===this&&a===Tf&&Hm(this,k,b))}; -function Hm(a,b,c){var d=a.qp();if(null!==d)for(var e=a.Ac.i;e.next();){var g=e.value,h=null;if(null!==g.An){h=ah(g,d,a);if(null===h)continue;g.Qx(a,h,c,null)}else if(g.Rt){var k=b.h;null===k||k.Fe||g.Qx(a,k.ha.tk,c,k)}else{var l=d.data;if(null===l)continue;k=b.h;null===k||k.Fe||g.Qx(a,l,c,k)}null!==h&&(k=d.Ww(g.Wl),null!==k&&g.aG(k,h,c))}}O.prototype.Ww=function(a){return this.Ln===a?this:null};O.prototype.raiseChanged=O.prototype.j=function(a,b,c){this.Rc(Tf,a,this,b,c)}; -function Im(a,b,c,d,e){var g=a.ud,h=a.el;h.reset();Jm(a,h,b,c,d,e);a.el=h;g.x=b;g.y=c;g.width=d;g.height=e;h.Ot()||h.XF(g)}function Km(a,b,c,d){if(!1===a.kg)return!1;d.multiply(a.transform);return c?a.Jg(b,d):a.Zm(b,d)} -O.prototype.pE=function(a,b,c){if(!1===this.kg)return!1;var d=this.Fa;b=a.Bf(b);var e=!1;c&&(e=wb(a.x,a.y,0,0,0,d.height)a&&(a+=360));return a};O.prototype.getDocumentScale=O.prototype.hj=function(){if(0!==(this.ja&4096)===!1)return this.hv;var a=this.bc;return null!==this.V?a*this.V.hj():a};O.prototype.getLocalPoint=O.prototype.uE=function(a,b){void 0===b&&(b=new N);b.assign(a);this.qh.mi(b);return b}; -O.prototype.getNearestIntersectionPoint=O.prototype.vE=function(a,b,c){return this.wp(a.x,a.y,b.x,b.y,c)};f=O.prototype;f.wp=function(a,b,c,d,e){var g=this.transform,h=1/(g.m11*g.m22-g.m12*g.m21),k=g.m22*h,l=-g.m12*h,m=-g.m21*h,n=g.m11*h,p=h*(g.m21*g.dy-g.m22*g.dx),q=h*(g.m12*g.dx-g.m11*g.dy);if(null!==this.ul)return g=this.W,Ke(g.left,g.top,g.right,g.bottom,a,b,c,d,e);h=a*k+b*m+p;a=a*l+b*n+q;b=c*k+d*m+p;c=c*l+d*n+q;e.n(0,0);d=this.Fa;c=Ke(0,0,d.width,d.height,h,a,b,c,e);e.transform(g);return c}; +function Hm(a,b,c){var d=a.qp();if(null!==d)for(var e=a.Ac.i;e.next();){var g=e.value,h=null;if(null!==g.An){h=ah(g,d,a);if(null===h)continue;g.Rx(a,h,c,null)}else if(g.St){var k=b.h;null===k||k.Ee||g.Rx(a,k.ha.tk,c,k)}else{var l=d.data;if(null===l)continue;k=b.h;null===k||k.Ee||g.Rx(a,l,c,k)}null!==h&&(k=d.Xw(g.Vl),null!==k&&g.dG(k,h,c))}}O.prototype.Xw=function(a){return this.Ln===a?this:null};O.prototype.raiseChanged=O.prototype.j=function(a,b,c){this.Rc(Tf,a,this,b,c)}; +function Im(a,b,c,d,e){var g=a.ud,h=a.el;h.reset();Jm(a,h,b,c,d,e);a.el=h;g.x=b;g.y=c;g.width=d;g.height=e;h.Pt()||h.$F(g)}function Km(a,b,c,d){if(!1===a.jg)return!1;d.multiply(a.transform);return c?a.Ig(b,d):a.Zm(b,d)} +O.prototype.sE=function(a,b,c){if(!1===this.jg)return!1;var d=this.Ga;b=a.Af(b);var e=!1;c&&(e=wb(a.x,a.y,0,0,0,d.height)a&&(a+=360));return a};O.prototype.getDocumentScale=O.prototype.fj=function(){if(0!==(this.ja&4096)===!1)return this.iv;var a=this.bc;return null!==this.U?a*this.U.fj():a};O.prototype.getLocalPoint=O.prototype.xE=function(a,b){void 0===b&&(b=new N);b.assign(a);this.ph.ki(b);return b}; +O.prototype.getNearestIntersectionPoint=O.prototype.yE=function(a,b,c){return this.wp(a.x,a.y,b.x,b.y,c)};f=O.prototype;f.wp=function(a,b,c,d,e){var g=this.transform,h=1/(g.m11*g.m22-g.m12*g.m21),k=g.m22*h,l=-g.m12*h,m=-g.m21*h,n=g.m11*h,p=h*(g.m21*g.dy-g.m22*g.dx),q=h*(g.m12*g.dx-g.m11*g.dy);if(null!==this.ul)return g=this.W,Ke(g.left,g.top,g.right,g.bottom,a,b,c,d,e);h=a*k+b*m+p;a=a*l+b*n+q;b=c*k+d*m+p;c=c*l+d*n+q;e.n(0,0);d=this.Ga;c=Ke(0,0,d.width,d.height,h,a,b,c,e);e.transform(g);return c}; function oj(a,b,c,d,e){if(!1!==ll(a)){var g=a.margin,h=g.right+g.left,g=g.top+g.bottom;b=Math.max(b-h,0);c=Math.max(c-g,0);e=e||0;d=Math.max((d||0)-h,0);e=Math.max(e-g,0);var h=a.angle,g=0,g=a.Aa,k=0;a.ub&&(k=a.ub);90===h||270===h?(b=isFinite(g.height)?g.height+k:b,c=isFinite(g.width)?g.width+k:c):(b=isFinite(g.width)?g.width+k:b,c=isFinite(g.height)?g.height+k:c);var g=d||0,k=e||0,l=a instanceof I;switch(Lm(a,!0)){case Xi:k=g=0;l&&(c=b=Infinity);break;case mf:isFinite(b)&&b>d&&(g=b);isFinite(c)&& -c>e&&(k=c);break;case Bm:isFinite(b)&&b>d&&(g=b);k=0;l&&(c=Infinity);break;case Am:isFinite(c)&&c>e&&(k=c),g=0,l&&(b=Infinity)}var l=a.We,m=a.eg;g>l.width&&m.widthl.height&&m.heighta.height||this.Mj.bf>a.width))&&(c=!0);this.ja=c?this.ja|256:this.ja&-257;this.Wb.F()|| -y.k("Non-real actualBounds has been set. Object "+this+", actualBounds: "+this.Wb.toString());this.ux(g,this.Wb);y.dc(g)};f.aj=function(){}; +c>e&&(k=c);break;case Bm:isFinite(b)&&b>d&&(g=b);k=0;l&&(c=Infinity);break;case Am:isFinite(c)&&c>e&&(k=c),g=0,l&&(b=Infinity)}var l=a.Ve,m=a.dg;g>l.width&&m.widthl.height&&m.heighta.height||this.Mj.af>a.width))&&(c=!0);this.ja=c?this.ja|256:this.ja&-257;this.Xb.F()|| +z.k("Non-real actualBounds has been set. Object "+this+", actualBounds: "+this.Xb.toString());this.vx(g,this.Xb);z.dc(g)};f.Zi=function(){}; function Mm(a,b,c,d,e){var g=a.W;g.x=b;g.y=c;g.width=d;g.height=e;if(!a.Aa.F()){g=a.ud;c=a.margin;b=c.right+c.left;var h=c.top+c.bottom;c=g.width+b;g=g.height+h;d+=b;e+=h;b=Lm(a,!0);c===d&&g===e&&(b=Xi);switch(b){case Xi:if(c>d||g>e)Yk(a,!0),oj(a,c>d?d:c,g>e?e:g);break;case mf:Yk(a,!0);oj(a,d,e,0,0);break;case Bm:Yk(a,!0);oj(a,d,g,0,0);break;case Am:Yk(a,!0),oj(a,c,e,0,0)}}} -f.ux=function(a,b){Nm(this,!1);var c=this.ca;if(null!==c&&null!==c.h){var d=this.ca;null!==d&&(d.xn!==this&&d.qF!==this&&d.uF!==this||Om(d,!0));this.ta();a.N(b)||(c.Ml(),this.Rv(c))}};f.Rv=function(a){null!==this.zd&&Om(a,!0)};y.defineProperty(O,{cq:"shadowVisible"},function(){return this.Is},function(a){var b=this.Is;b!==a&&(u&&null!==a&&y.g(a,"boolean",O,"shadowVisible"),this.Is=a,this.j("shadowVisible",b,a))}); -O.prototype.ff=function(a,b){if(this.visible){var c=this.Wb;if(0!==c.width&&0!==c.height&&!isNaN(c.x)&&!isNaN(c.y)){var d=this.opacity,e=1;if(1!==d){if(0===d)return;e=a.globalAlpha;a.globalAlpha=e*d}if(a instanceof bd)a:{if(this.visible){var g=null,h=a.mx;if(this instanceof I&&(this.type===Pm||this.type===Qm))Rm(this,a,b);else{var k=this.Wb;if(0!==k.width&&0!==k.height&&!isNaN(k.x)&&!isNaN(k.y)){var l=this.transform,m=this.V;0!==(this.ja&4096)===!0&&Sm(this);var c=0!==(this.ja&256),n=!1;this instanceof -qa&&(a.font=this.font);if(c){n=m.Wg()?m.Fa:m.W;if(null!==this.xi)var p=this.xi,q=p.x,r=p.y,s=p.width,p=p.height;else q=Math.max(k.x,n.x),r=Math.max(k.y,n.y),s=Math.min(k.right,n.right)-q,p=Math.min(k.bottom,n.bottom)-r;if(q>k.width+k.x||k.x>n.width+n.x||r>k.height+k.y||k.y>n.height+n.y)break a;n=!0;ld(a,1,0,0,1,0,0);a.save();a.beginPath();a.rect(q,r,s,p);a.clip()}q=!1;if(this instanceof D){var t=this,q=!0;if(!t.isVisible())break a}a.fj.pf=[1,0,0,1,0,0];r=!1;q&&this.sk&&b.ij("drawShadows")&&(s=this.Lm, -a.PA(s.x*b.scale*b.kd,s.y*b.scale*b.kd,t.Bg),a.zn(),a.shadowColor=t.Km);t=!1;this.ca&&b.ij("drawShadows")&&(t=this.ca.sk);!0===this.cq?(a.zn(),!1===r&&t&&(ld(a,1,0,0,1,0,0),a.fb(),r=!0)):!1===this.cq&&a.yn();null!==this.uc&&(Tm(this,a,this.uc,!0,!0),!1===r&&t&&(ld(a,1,0,0,1,0,0),a.fb(),r=!0),this.uc instanceof Da&&this.uc.type===td?(a.beginPath(),a.rect(k.x,k.y,k.width,k.height),a.Hg(this.uc)):a.fillRect(k.x,k.y,k.width,k.height));this instanceof I?ld(a,l.m11,l.m12,l.m21,l.m22,l.dx,l.dy):a.fj.pf= -[l.m11,l.m12,l.m21,l.m22,l.dx,l.dy];if(null!==this.Nb){!1===r&&t&&(ld(a,1,0,0,1,0,0),a.fb(),r=!0);var p=this.Fa,l=k=0,s=p.width,p=p.height,v=0;this instanceof X&&(p=this.$a.vb,k=p.x,l=p.y,s=p.width,p=p.height,v=this.Pe);Tm(this,a,this.Nb,!0,!1);this.Nb instanceof Da&&this.Nb.type===td?(a.beginPath(),a.rect(k-v/2,l-v/2,s+v,p+v),a.Hg(this.Nb)):a.fillRect(k-v/2,l-v/2,s+v,p+v)}t&&(null!==this.Nb||null!==this.uc||null!==m&&0!==(m.ja&512)||null!==m&&(m.type===Bk||m.type===Vi)&&m.gf()!==this)?(Um(this,!0), -null===this.cq&&a.yn()):Um(this,!1);this.nk(a,b);t&&0!==(this.ja&512)===!0&&a.zn();q&&t&&a.yn();c&&(a.restore(),n&&a.Df.pop());this instanceof I&&(g=a.Df.pop());!0===r&&a.Df.pop();null!==a.kE&&(null===g&&(h===a.mx?(ld(a,1,0,0,1,0,0),g=a.Df.pop()):g=a.mx),a.kE(this,g))}}}}else{if(this instanceof I&&(this.type===Pm||this.type===Qm)){Rm(this,a,b);1!==d&&(a.globalAlpha=e);return}this instanceof G&&this.qn(!1);u&&u.cj&&u.tH(a,this);g=this.transform;h=this.V;0!==(this.ja&4096)===!0&&Sm(this);m=0!==(this.ja& -256);this instanceof qa&&(a.font=this.font);if(m){u&&u.jE&&y.trace("clip"+this.toString());n=h.Wg()?h.Fa:h.W;null!==this.xi?(t=this.xi,k=t.x,l=t.y,q=t.width,t=t.height):(k=Math.max(c.x,n.x),l=Math.max(c.y,n.y),q=Math.min(c.right,n.right)-k,t=Math.min(c.bottom,n.bottom)-l);if(k>c.width+c.x||c.x>n.width+n.x||l>c.height+c.y||c.y>n.height+n.y){1!==d&&(a.globalAlpha=e);return}u&&u.jE&&u.vH(a,k,l,q,t);a.save();a.beginPath();a.rect(k,l,q,t);a.clip()}n=!1;if(this instanceof D){n=!0;if(!this.isVisible()){1!== -d&&(a.globalAlpha=e);return}this.sk&&b.ij("drawShadows")&&(k=this.Lm,a.PA(k.x*b.scale*b.kd,k.y*b.scale*b.kd,this.Bg),a.zn(),a.shadowColor=this.Km)}k=!1;this.ca&&b.ij("drawShadows")&&(k=this.ca.sk);!0===this.cq?a.zn():!1===this.cq&&a.yn();null!==this.uc&&(Tm(this,a,this.uc,!0,!0),this.uc instanceof Da&&this.uc.type===td?(a.beginPath(),a.rect(c.x,c.y,c.width,c.height),a.Hg(this.uc)):a.fillRect(c.x,c.y,c.width,c.height));g.Ot()||a.transform(g.m11,g.m12,g.m21,g.m22,g.dx,g.dy);null!==this.Nb&&(t=this.Fa, -l=c=0,q=t.width,t=t.height,r=0,this instanceof X&&(t=this.$a.vb,c=t.x,l=t.y,q=t.width,t=t.height,r=this.Pe),Tm(this,a,this.Nb,!0,!1),this.Nb instanceof Da&&this.Nb.type===td?(a.beginPath(),a.rect(c-r/2,l-r/2,q+r,t+r),a.Hg(this.Nb)):a.fillRect(c-r/2,l-r/2,q+r,t+r));u&&u.cj&&u.uH(a,this);k&&(null!==this.Nb||null!==this.uc||null!==h&&0!==(h.ja&512)||null!==h&&(h.type===Bk||h.type===Vi)&&h.gf()!==this)?(Um(this,!0),null===this.cq&&a.yn()):Um(this,!1);this.nk(a,b);k&&0!==(this.ja&512)===!0&&a.zn();n&& -k&&a.yn();m?(a.restore(),this instanceof I?ca(a,!0):ca(a,!1)):g.Ot()||(h=1/(g.m11*g.m22-g.m12*g.m21),a.transform(g.m22*h,-g.m12*h,-g.m21*h,g.m11*h,h*(g.m21*g.dy-g.m22*g.dx),h*(g.m12*g.dx-g.m11*g.dy)))}1!==d&&(a.globalAlpha=e)}}}; -function Rm(a,b,c){var d=a.Wb;0===d.width||0===d.height||isNaN(d.x)||isNaN(d.y)||(null!==a.uc&&(Tm(a,b,a.uc,!0,!0),a.uc instanceof Da&&a.uc.type===td?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.Hg(a.uc)):b.fillRect(d.x,d.y,d.width,d.height)),null!==a.Nb&&(Tm(a,b,a.Nb,!0,!1),a.Nb instanceof Da&&a.Nb.type===td?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.Hg(a.Nb)):b.fillRect(d.x,d.y,d.width,d.height)),a.nk(b,c))}O.prototype.nk=function(){}; -function Tm(a,b,c,d,e){if(null!==c){var g=1,h=1;if("string"===typeof c)d?b.fillStyle=c:b.strokeStyle=c;else if(c.type===tg)d?b.fillStyle=c.color:b.strokeStyle=c.color;else{var k,h=a.Fa,g=h.width,h=h.height;if(e)var l=a.W,g=l.width,h=l.height;var m=b instanceof sd;if(m&&c.bh&&(c.type===xm||c.Qn===g&&c.sy===h))k=c.bh;else{var n=l=0,p=0,q=0,r=0,s=0,s=r=0;e&&(l=a.W,g=l.width,h=l.height,r=l.x,s=l.y);l=c.start.x*g+c.start.offsetX;n=c.start.y*h+c.start.offsetY;p=c.end.x*g+c.end.offsetX;q=c.end.y*h+c.end.offsetY; -l+=r;p+=r;n+=s;q+=s;if(c.type===ug)k=b.createLinearGradient(l,n,p,q);else if(c.type===td)s=isNaN(c.wt)?Math.max(g,h)/2:c.wt,isNaN(c.vu)?(r=0,s=Math.max(g,h)/2):r=c.vu,k=b.createRadialGradient(l,n,r,p,q,s);else if(c.type===xm)try{k=b.createPattern(c.pattern,"repeat")}catch(t){k=null}else y.jc(c.type,"Brush type");if(c.type!==xm&&(e=c.rt,null!==e))for(e=e.i;e.next();)k.addColorStop(e.key,e.value);if(m&&(c.bh=k,null!==k&&(c.Qn=g,c.sy=h),null===k&&c.type===xm&&-1!==c.Qn)){c.Qn=-1;var v=a.h;null!==v&& --1===c.Qn&&y.setTimeout(function(){v.Tp()},600)}}d?b.fillStyle=k:b.strokeStyle=k}}}O.prototype.isContainedBy=O.prototype.Ol=function(a){if(a instanceof I)a:{if(this!==a&&null!==a)for(var b=this.V;null!==b;){if(b===a){a=!0;break a}b=b.V}a=!1}else a=!1;return a};O.prototype.isVisibleObject=O.prototype.Ql=function(){if(!this.visible)return!1;var a=this.V;return null!==a?a.Ql():!0}; -function Sm(a){if(0!==(a.ja&2048)===!0){var b=a.Ld;b.reset();if(!a.Wb.F()||!a.ud.F()){Vm(a,!1);return}b.translate(a.Wb.x,a.Wb.y);b.translate(-a.Ia.x,-a.Ia.y);var c=a.Fa;Jm(a,b,c.x,c.y,c.width,c.height);Vm(a,!1);Wm(a,!0)}0!==(a.ja&4096)===!0&&(b=a.V,null===b?(a.zk.set(a.Ld),a.hv=a.scale,Wm(a,!1)):null!==b.qh&&(c=a.zk,c.reset(),b.Wg()?c.multiply(b.zk):null!==b.V&&c.multiply(b.V.zk),c.multiply(a.Ld),a.hv=a.scale*b.hv,Wm(a,!1)))} -function Jm(a,b,c,d,e,g){1!==a.scale&&b.scale(a.scale);if(0!==a.angle){var h=ec;a.of&&a.of.dd()&&(h=a.of);var k=y.O();if(a instanceof D&&a.Yb!==a)for(c=a.Yb,d=c.Fa,k.su(d.x,d.y,d.width,d.height,h),c.el.Cb(k),k.offset(-c.Ia.x,-c.Ia.y),h=c.V;null!==h&&h!==a;)h.el.Cb(k),k.offset(-h.Ia.x,-h.Ia.y),h=h.V;else k.su(c,d,e,g,h);b.rotate(a.angle,k.x,k.y);y.A(k)}}f=O.prototype; -f.S=function(a){void 0===a&&(a=!1);if(!0!==ll(this)){Yk(this,!0);Nm(this,!0);var b=this.V;null!==b?a||b.S():(a=this.h,null!==a&&(a.sg.add(this),this instanceof E&&(a.pa.qb||this.mf(),null!==this.Sd&&Xm(this.Sd)),a.De(!0)));if(this instanceof I){if(this.ba===Bk||this.ba===Hi)a=this.gf(),null!==a&&a.S(!0);a=this.va.o;for(var b=a.length,c=0;ck.width+k.x||k.x>n.width+n.x||r>k.height+k.y||k.y>n.height+n.y)break a;n=!0;od(a,1,0,0,1,0,0);a.save();a.beginPath();a.rect(q,r,s,p);a.clip()}q=!1;if(this instanceof D){var t=this,q=!0;if(!t.isVisible())break a}a.dj.of=[1,0,0,1,0,0];r=!1;q&&this.sk&&b.gj("drawShadows")&&(s=this.Km, +a.TA(s.x*b.scale*b.kd,s.y*b.scale*b.kd,t.Ag),a.zn(),a.shadowColor=t.Jm);t=!1;this.ca&&b.gj("drawShadows")&&(t=this.ca.sk);!0===this.cq?(a.zn(),!1===r&&t&&(od(a,1,0,0,1,0,0),a.fb(),r=!0)):!1===this.cq&&a.yn();null!==this.uc&&(Tm(this,a,this.uc,!0,!0),!1===r&&t&&(od(a,1,0,0,1,0,0),a.fb(),r=!0),this.uc instanceof Da&&this.uc.type===wd?(a.beginPath(),a.rect(k.x,k.y,k.width,k.height),a.Gg(this.uc)):a.fillRect(k.x,k.y,k.width,k.height));this instanceof I?od(a,l.m11,l.m12,l.m21,l.m22,l.dx,l.dy):a.dj.of= +[l.m11,l.m12,l.m21,l.m22,l.dx,l.dy];if(null!==this.Nb){!1===r&&t&&(od(a,1,0,0,1,0,0),a.fb(),r=!0);var p=this.Ga,l=k=0,s=p.width,p=p.height,v=0;this instanceof X&&(p=this.$a.vb,k=p.x,l=p.y,s=p.width,p=p.height,v=this.Oe);Tm(this,a,this.Nb,!0,!1);this.Nb instanceof Da&&this.Nb.type===wd?(a.beginPath(),a.rect(k-v/2,l-v/2,s+v,p+v),a.Gg(this.Nb)):a.fillRect(k-v/2,l-v/2,s+v,p+v)}t&&(null!==this.Nb||null!==this.uc||null!==m&&0!==(m.ja&512)||null!==m&&(m.type===Bk||m.type===Vi)&&m.ff()!==this)?(Um(this,!0), +null===this.cq&&a.yn()):Um(this,!1);this.nk(a,b);t&&0!==(this.ja&512)===!0&&a.zn();q&&t&&a.yn();c&&(a.restore(),n&&a.Cf.pop());this instanceof I&&(g=a.Cf.pop());!0===r&&a.Cf.pop();null!==a.nE&&(null===g&&(h===a.nx?(od(a,1,0,0,1,0,0),g=a.Cf.pop()):g=a.nx),a.nE(this,g))}}}}else{if(this instanceof I&&(this.type===Pm||this.type===Qm)){Rm(this,a,b);1!==d&&(a.globalAlpha=e);return}this instanceof G&&this.qn(!1);u&&u.aj&&u.vH(a,this);g=this.transform;h=this.U;0!==(this.ja&4096)===!0&&Sm(this);m=0!==(this.ja& +256);this instanceof qa&&(a.font=this.font);if(m){u&&u.mE&&z.trace("clip"+this.toString());n=h.Vg()?h.Ga:h.W;null!==this.vi?(t=this.vi,k=t.x,l=t.y,q=t.width,t=t.height):(k=Math.max(c.x,n.x),l=Math.max(c.y,n.y),q=Math.min(c.right,n.right)-k,t=Math.min(c.bottom,n.bottom)-l);if(k>c.width+c.x||c.x>n.width+n.x||l>c.height+c.y||c.y>n.height+n.y){1!==d&&(a.globalAlpha=e);return}u&&u.mE&&u.xH(a,k,l,q,t);a.save();a.beginPath();a.rect(k,l,q,t);a.clip()}n=!1;if(this instanceof D){n=!0;if(!this.isVisible()){1!== +d&&(a.globalAlpha=e);return}this.sk&&b.gj("drawShadows")&&(k=this.Km,a.TA(k.x*b.scale*b.kd,k.y*b.scale*b.kd,this.Ag),a.zn(),a.shadowColor=this.Jm)}k=!1;this.ca&&b.gj("drawShadows")&&(k=this.ca.sk);!0===this.cq?a.zn():!1===this.cq&&a.yn();null!==this.uc&&(Tm(this,a,this.uc,!0,!0),this.uc instanceof Da&&this.uc.type===wd?(a.beginPath(),a.rect(c.x,c.y,c.width,c.height),a.Gg(this.uc)):a.fillRect(c.x,c.y,c.width,c.height));g.Pt()||a.transform(g.m11,g.m12,g.m21,g.m22,g.dx,g.dy);null!==this.Nb&&(t=this.Ga, +l=c=0,q=t.width,t=t.height,r=0,this instanceof X&&(t=this.$a.vb,c=t.x,l=t.y,q=t.width,t=t.height,r=this.Oe),Tm(this,a,this.Nb,!0,!1),this.Nb instanceof Da&&this.Nb.type===wd?(a.beginPath(),a.rect(c-r/2,l-r/2,q+r,t+r),a.Gg(this.Nb)):a.fillRect(c-r/2,l-r/2,q+r,t+r));u&&u.aj&&u.wH(a,this);k&&(null!==this.Nb||null!==this.uc||null!==h&&0!==(h.ja&512)||null!==h&&(h.type===Bk||h.type===Vi)&&h.ff()!==this)?(Um(this,!0),null===this.cq&&a.yn()):Um(this,!1);this.nk(a,b);k&&0!==(this.ja&512)===!0&&a.zn();n&& +k&&a.yn();m?(a.restore(),this instanceof I?ca(a,!0):ca(a,!1)):g.Pt()||(h=1/(g.m11*g.m22-g.m12*g.m21),a.transform(g.m22*h,-g.m12*h,-g.m21*h,g.m11*h,h*(g.m21*g.dy-g.m22*g.dx),h*(g.m12*g.dx-g.m11*g.dy)))}1!==d&&(a.globalAlpha=e)}}}; +function Rm(a,b,c){var d=a.Xb;0===d.width||0===d.height||isNaN(d.x)||isNaN(d.y)||(null!==a.uc&&(Tm(a,b,a.uc,!0,!0),a.uc instanceof Da&&a.uc.type===wd?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.Gg(a.uc)):b.fillRect(d.x,d.y,d.width,d.height)),null!==a.Nb&&(Tm(a,b,a.Nb,!0,!1),a.Nb instanceof Da&&a.Nb.type===wd?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.Gg(a.Nb)):b.fillRect(d.x,d.y,d.width,d.height)),a.nk(b,c))}O.prototype.nk=function(){}; +function Tm(a,b,c,d,e){if(null!==c){var g=1,h=1;if("string"===typeof c)d?b.fillStyle=c:b.strokeStyle=c;else if(c.type===tg)d?b.fillStyle=c.color:b.strokeStyle=c.color;else{var k,h=a.Ga,g=h.width,h=h.height;if(e)var l=a.W,g=l.width,h=l.height;var m=b instanceof vd;if(m&&c.ah&&(c.type===xm||c.Qn===g&&c.ty===h))k=c.ah;else{var n=l=0,p=0,q=0,r=0,s=0,s=r=0;e&&(l=a.W,g=l.width,h=l.height,r=l.x,s=l.y);l=c.start.x*g+c.start.offsetX;n=c.start.y*h+c.start.offsetY;p=c.end.x*g+c.end.offsetX;q=c.end.y*h+c.end.offsetY; +l+=r;p+=r;n+=s;q+=s;if(c.type===ug)k=b.createLinearGradient(l,n,p,q);else if(c.type===wd)s=isNaN(c.xt)?Math.max(g,h)/2:c.xt,isNaN(c.wu)?(r=0,s=Math.max(g,h)/2):r=c.wu,k=b.createRadialGradient(l,n,r,p,q,s);else if(c.type===xm)try{k=b.createPattern(c.pattern,"repeat")}catch(t){k=null}else z.jc(c.type,"Brush type");if(c.type!==xm&&(e=c.st,null!==e))for(e=e.i;e.next();)k.addColorStop(e.key,e.value);if(m&&(c.ah=k,null!==k&&(c.Qn=g,c.ty=h),null===k&&c.type===xm&&-1!==c.Qn)){c.Qn=-1;var v=a.h;null!==v&& +-1===c.Qn&&z.setTimeout(function(){v.Tp()},600)}}d?b.fillStyle=k:b.strokeStyle=k}}}O.prototype.isContainedBy=O.prototype.Ol=function(a){if(a instanceof I)a:{if(this!==a&&null!==a)for(var b=this.U;null!==b;){if(b===a){a=!0;break a}b=b.U}a=!1}else a=!1;return a};O.prototype.isVisibleObject=O.prototype.mj=function(){if(!this.visible)return!1;var a=this.U;return null!==a?a.mj():!0}; +function Sm(a){if(0!==(a.ja&2048)===!0){var b=a.Jd;b.reset();if(!a.Xb.F()||!a.ud.F()){Vm(a,!1);return}b.translate(a.Xb.x,a.Xb.y);b.translate(-a.Ia.x,-a.Ia.y);var c=a.Ga;Jm(a,b,c.x,c.y,c.width,c.height);Vm(a,!1);Wm(a,!0)}0!==(a.ja&4096)===!0&&(b=a.U,null===b?(a.zk.set(a.Jd),a.iv=a.scale,Wm(a,!1)):null!==b.ph&&(c=a.zk,c.reset(),b.Vg()?c.multiply(b.zk):null!==b.U&&c.multiply(b.U.zk),c.multiply(a.Jd),a.iv=a.scale*b.iv,Wm(a,!1)))} +function Jm(a,b,c,d,e,g){1!==a.scale&&b.scale(a.scale);if(0!==a.angle){var h=ec;a.nf&&a.nf.dd()&&(h=a.nf);var k=z.O();if(a instanceof D&&a.Zb!==a)for(c=a.Zb,d=c.Ga,k.tu(d.x,d.y,d.width,d.height,h),c.el.Cb(k),k.offset(-c.Ia.x,-c.Ia.y),h=c.U;null!==h&&h!==a;)h.el.Cb(k),k.offset(-h.Ia.x,-h.Ia.y),h=h.U;else k.tu(c,d,e,g,h);b.rotate(a.angle,k.x,k.y);z.A(k)}}f=O.prototype; +f.S=function(a){void 0===a&&(a=!1);if(!0!==ll(this)){Yk(this,!0);Nm(this,!0);var b=this.U;null!==b?a||b.S():(a=this.h,null!==a&&(a.rg.add(this),this instanceof E&&(a.pa.qb||this.lf(),null!==this.Qd&&Xm(this.Qd)),a.Ce(!0)));if(this instanceof I){if(this.ba===Bk||this.ba===Hi)a=this.ff(),null!==a&&a.S(!0);a=this.va.o;for(var b=a.length,c=0;ca?a=0:1a||1a?a=0:1a||1=a&&y.k("GraphObject.scale for "+this+" must be greater than zero, not: "+a),this.bc=a,this.Hi(),this.S(),this.j("scale",b,a))});y.defineProperty(O,{angle:"angle"},function(){return this.bm},function(a){var b=this.bm;b!==a&&(u&&y.p(a,O,"angle"),a%=360,0>a&&(a+=360),b!==a&&(this.bm=a,this.S(),this.Hi(),this.j("angle",b,a)))}); -y.defineProperty(O,{Aa:"desiredSize"},function(){return this.tf},function(a){var b=this.tf;b.N(a)||(u&&y.l(a,Ea,O,"desiredSize"),this.tf=a=a.U(),this.S(),this instanceof X&&this.Be(),this.j("desiredSize",b,a),a=this.ca,null!==a&&0!==(this.ja&1024)&&(Hm(this,a,"width"),Hm(this,a,"height")))}); -y.defineProperty(O,{width:"width"},function(){return this.tf.width},function(a){if(this.tf.width!==a){u&&y.g(a,"number",O,"width");var b=this.tf;this.tf=a=(new Ea(a,this.tf.height)).freeze();this.S();this instanceof X&&this.Be();this.j("desiredSize",b,a);b=this.ca;null!==b&&0!==(this.ja&1024)&&Hm(this,b,"width")}}); -y.defineProperty(O,{height:"height"},function(){return this.tf.height},function(a){if(this.tf.height!==a){u&&y.g(a,"number",O,"height");var b=this.tf;this.tf=a=(new Ea(this.tf.width,a)).freeze();this.S();this instanceof X&&this.Be();this.j("desiredSize",b,a);b=this.ca;null!==b&&0!==(this.ja&1024)&&Hm(this,b,"height")}}); -y.defineProperty(O,{eg:"minSize"},function(){return this.Sj},function(a){var b=this.Sj;b.N(a)||(u&&y.l(a,Ea,O,"minSize"),a=a.copy(),isNaN(a.width)&&(a.width=0),isNaN(a.height)&&(a.height=0),a.freeze(),this.Sj=a,this.S(),this.j("minSize",b,a))});y.defineProperty(O,{We:"maxSize"},function(){return this.Qj},function(a){var b=this.Qj;b.N(a)||(u&&y.l(a,Ea,O,"maxSize"),a=a.copy(),isNaN(a.width)&&(a.width=Infinity),isNaN(a.height)&&(a.height=Infinity),a.freeze(),this.Qj=a,this.S(),this.j("maxSize",b,a))}); -y.w(O,{Ia:"measuredBounds"},function(){return this.ud});y.w(O,{Fa:"naturalBounds"},function(){return this.Wc},{configurable:!0});y.defineProperty(O,{margin:"margin"},function(){return this.Er},function(a){"number"===typeof a?a=new Eb(a):u&&y.l(a,Eb,O,"margin");var b=this.Er;b.N(a)||(this.Er=a=a.U(),this.S(),this.j("margin",b,a))});y.w(O,{transform:null},function(){0!==(this.ja&2048)===!0&&Sm(this);return this.Ld});y.w(O,{qh:null},function(){0!==(this.ja&4096)===!0&&Sm(this);return this.zk}); -y.defineProperty(O,{alignment:"alignment"},function(){return this.Je},function(a){var b=this.Je;b.N(a)||(u&&y.l(a,Q,O,"alignment"),a.Ce()&&!a.cd()&&y.k("GraphObject.alignment for "+this+" must be a real Spot or Spot.Default, not: "+a),this.Je=a=a.U(),Xm(this),this.j("alignment",b,a))});y.defineProperty(O,{column:"column"},function(){return this.xq},function(a){u&&y.p(a,O,"column");a=Math.round(a);var b=this.xq;b!==a&&(0>a&&y.ka(a,">= 0",O,"column"),this.xq=a,this.S(),this.j("column",b,a))}); -y.defineProperty(O,{aH:"columnSpan"},function(){return this.yi},function(a){u&&y.g(a,"number",O,"columnSpan");a=Math.round(a);var b=this.yi;b!==a&&(1>a&&y.ka(a,">= 1",O,"columnSpan"),this.yi=a,this.S(),this.j("columnSpan",b,a))});y.defineProperty(O,{Zb:"row"},function(){return this.ts},function(a){u&&y.p(a,O,"row");a=Math.round(a);var b=this.ts;b!==a&&(0>a&&y.ka(a,">= 0",O,"row"),this.ts=a,this.S(),this.j("row",b,a))}); -y.defineProperty(O,{rowSpan:"rowSpan"},function(){return this.Vi},function(a){u&&y.g(a,"number",O,"rowSpan");a=Math.round(a);var b=this.Vi;b!==a&&(1>a&&y.ka(a,">= 1",O,"rowSpan"),this.Vi=a,this.S(),this.j("rowSpan",b,a))});y.defineProperty(O,{Px:"spanAllocation"},function(){return this.Ns},function(a){var b=this.Ns;b!==a&&(null!==a&&y.g(a,"function",O,"spanAllocation"),this.Ns=a,this.j("spanAllocation",b,a))}); -y.defineProperty(O,{jk:"alignmentFocus"},function(){return this.pq},function(a){var b=this.pq;b.N(a)||(u&&y.l(a,Q,O,"alignmentFocus"),!a.Ce()||a.cd()||a.N(Vb)&&this instanceof E||y.k("GraphObject.alignmentFocus must be a real Spot or Spot.Default, not: "+a),this.pq=a=a.U(),this.S(),this.j("alignmentFocus",b,a))}); -y.defineProperty(O,{zd:"portId"},function(){return this.fs},function(a){var b=this.fs;if(b!==a){u&&null!==a&&y.g(a,"string",O,"portId");var c=this.ca;null===c||c instanceof E||(y.k("Cannot set portID on a Link: "+a),c=null);null!==b&&null!==c&&cn(c,this);this.fs=a;if(null!==a&&c){c.Rh=!0;null===c.Fd&&dn(c);var d=this.zd;null!==d&&c.Fd.add(d,this)}this.j("portId",b,a)}});function $m(a){var b=a.ca;b instanceof E&&(a=a.h,null===a||a.pa.qb||b.mf())} -y.defineProperty(O,{Eb:"toSpot"},function(){return null!==this.la?this.la.gk:Vb},function(a){this.Te();var b=this.la.gk;b.N(a)||(u&&y.l(a,Q,O,"toSpot"),a=a.U(),this.la.gk=a,this.j("toSpot",b,a),$m(this))});y.defineProperty(O,{Yl:"toEndSegmentLength"},function(){return null!==this.la?this.la.ek:10},function(a){this.Te();var b=this.la.ek;b!==a&&(u&&y.g(a,"number",O,"toEndSegmentLength"),0>a&&y.ka(a,">= 0",O,"toEndSegmentLength"),this.la.ek=a,this.j("toEndSegmentLength",b,a),$m(this))}); -y.defineProperty(O,{yu:"toEndSegmentDirection"},function(){return null!==this.la?this.la.dk:Fm},function(a){this.Te();var b=this.la.dk;b!==a&&(u&&y.Ba(a,E,O,"toEndSegmentDirection"),this.la.dk=a,this.j("toEndSegmentDirection",b,a),$m(this))});y.defineProperty(O,{zu:"toShortLength"},function(){return null!==this.la?this.la.fk:0},function(a){this.Te();var b=this.la.fk;b!==a&&(u&&y.g(a,"number",O,"toShortLength"),this.la.fk=a,this.j("toShortLength",b,a),$m(this))}); -y.defineProperty(O,{OF:"toLinkable"},function(){return this.Us},function(a){var b=this.Us;b!==a&&(u&&null!==a&&y.g(a,"boolean",O,"toLinkable"),this.Us=a,this.j("toLinkable",b,a))});y.defineProperty(O,{uJ:"toMaxLinks"},function(){return this.Vs},function(a){var b=this.Vs;b!==a&&(u&&y.g(a,"number",O,"toMaxLinks"),0>a&&y.ka(a,">= 0",O,"toMaxLinks"),this.Vs=a,this.j("toMaxLinks",b,a))}); -y.defineProperty(O,{Db:"fromSpot"},function(){return null!==this.la?this.la.Fj:Vb},function(a){this.Te();var b=this.la.Fj;b.N(a)||(u&&y.l(a,Q,O,"fromSpot"),a=a.U(),this.la.Fj=a,this.j("fromSpot",b,a),$m(this))});y.defineProperty(O,{Hl:"fromEndSegmentLength"},function(){return null!==this.la?this.la.Dj:10},function(a){this.Te();var b=this.la.Dj;b!==a&&(u&&y.g(a,"number",O,"fromEndSegmentLength"),0>a&&y.ka(a,">= 0",O,"fromEndSegmentLength"),this.la.Dj=a,this.j("fromEndSegmentLength",b,a),$m(this))}); -y.defineProperty(O,{Dt:"fromEndSegmentDirection"},function(){return null!==this.la?this.la.Cj:Fm},function(a){this.Te();var b=this.la.Cj;b!==a&&(u&&y.Ba(a,E,O,"fromEndSegmentDirection"),this.la.Cj=a,this.j("fromEndSegmentDirection",b,a),$m(this))});y.defineProperty(O,{Et:"fromShortLength"},function(){return null!==this.la?this.la.Ej:0},function(a){this.Te();var b=this.la.Ej;b!==a&&(u&&y.g(a,"number",O,"fromShortLength"),this.la.Ej=a,this.j("fromShortLength",b,a),$m(this))}); -y.defineProperty(O,{sE:"fromLinkable"},function(){return this.$q},function(a){var b=this.$q;b!==a&&(u&&null!==a&&y.g(a,"boolean",O,"fromLinkable"),this.$q=a,this.j("fromLinkable",b,a))});y.defineProperty(O,{Uz:"fromMaxLinks"},function(){return this.ar},function(a){var b=this.ar;b!==a&&(u&&y.g(a,"number",O,"fromMaxLinks"),0>a&&y.ka(a,">= 0",O,"fromMaxLinks"),this.ar=a,this.j("fromMaxLinks",b,a))}); -y.defineProperty(O,{cursor:"cursor"},function(){return this.Iq},function(a){var b=this.Iq;b!==a&&(y.g(a,"string",O,"cursor"),this.Iq=a,this.j("cursor",b,a))});y.defineProperty(O,{click:"click"},function(){return null!==this.ma?this.ma.wi:null},function(a){Cm(this);var b=this.ma.wi;b!==a&&(null!==a&&y.g(a,"function",O,"click"),this.ma.wi=a,this.j("click",b,a))}); -y.defineProperty(O,{vt:"doubleClick"},function(){return null!==this.ma?this.ma.Ei:null},function(a){Cm(this);var b=this.ma.Ei;b!==a&&(null!==a&&y.g(a,"function",O,"doubleClick"),this.ma.Ei=a,this.j("doubleClick",b,a))});y.defineProperty(O,{Ez:"contextClick"},function(){return null!==this.ma?this.ma.zi:null},function(a){Cm(this);var b=this.ma.zi;b!==a&&(null!==a&&y.g(a,"function",O,"contextClick"),this.ma.zi=a,this.j("contextClick",b,a))}); -y.defineProperty(O,{$t:"mouseEnter"},function(){return null!==this.ma?this.ma.Rr:null},function(a){Cm(this);var b=this.ma.Rr;b!==a&&(null!==a&&y.g(a,"function",O,"mouseEnter"),this.ma.Rr=a,this.j("mouseEnter",b,a))});y.defineProperty(O,{au:"mouseLeave"},function(){return null!==this.ma?this.ma.Sr:null},function(a){Cm(this);var b=this.ma.Sr;b!==a&&(null!==a&&y.g(a,"function",O,"mouseLeave"),this.ma.Sr=a,this.j("mouseLeave",b,a))}); -y.defineProperty(O,{qA:"mouseOver"},function(){return null!==this.ma?this.ma.Ri:null},function(a){Cm(this);var b=this.ma.Ri;b!==a&&(null!==a&&y.g(a,"function",O,"mouseOver"),this.ma.Ri=a,this.j("mouseOver",b,a))});y.defineProperty(O,{pA:"mouseHover"},function(){return null!==this.ma?this.ma.Qi:null},function(a){Cm(this);var b=this.ma.Qi;b!==a&&(null!==a&&y.g(a,"function",O,"mouseHover"),this.ma.Qi=a,this.j("mouseHover",b,a))}); -y.defineProperty(O,{oA:"mouseHold"},function(){return null!==this.ma?this.ma.Pi:null},function(a){Cm(this);var b=this.ma.Pi;b!==a&&(null!==a&&y.g(a,"function",O,"mouseHold"),this.ma.Pi=a,this.j("mouseHold",b,a))});y.defineProperty(O,{GI:"mouseDragEnter"},function(){return null!==this.ma?this.ma.Pr:null},function(a){Cm(this);var b=this.ma.Pr;b!==a&&(null!==a&&y.g(a,"function",O,"mouseDragEnter"),this.ma.Pr=a,this.j("mouseDragEnter",b,a))}); -y.defineProperty(O,{HI:"mouseDragLeave"},function(){return null!==this.ma?this.ma.Qr:null},function(a){Cm(this);var b=this.ma.Qr;b!==a&&(null!==a&&y.g(a,"function",O,"mouseDragLeave"),this.ma.Qr=a,this.j("mouseDragLeave",b,a))});y.defineProperty(O,{nA:"mouseDrop"},function(){return null!==this.ma?this.ma.Oi:null},function(a){Cm(this);var b=this.ma.Oi;b!==a&&(null!==a&&y.g(a,"function",O,"mouseDrop"),this.ma.Oi=a,this.j("mouseDrop",b,a))}); -y.defineProperty(O,{xD:"actionDown"},function(){return null!==this.ma?this.ma.jq:null},function(a){Cm(this);var b=this.ma.jq;b!==a&&(null!==a&&y.g(a,"function",O,"actionDown"),this.ma.jq=a,this.j("actionDown",b,a))});y.defineProperty(O,{yD:"actionMove"},function(){return null!==this.ma?this.ma.kq:null},function(a){Cm(this);var b=this.ma.kq;b!==a&&(null!==a&&y.g(a,"function",O,"actionMove"),this.ma.kq=a,this.j("actionMove",b,a))}); -y.defineProperty(O,{zD:"actionUp"},function(){return null!==this.ma?this.ma.lq:null},function(a){Cm(this);var b=this.ma.lq;b!==a&&(null!==a&&y.g(a,"function",O,"actionUp"),this.ma.lq=a,this.j("actionUp",b,a))});y.defineProperty(O,{wD:"actionCancel"},function(){return null!==this.ma?this.ma.iq:null},function(a){Cm(this);var b=this.ma.iq;b!==a&&(null!==a&&y.g(a,"function",O,"actionCancel"),this.ma.iq=a,this.j("actionCancel",b,a))}); -y.defineProperty(O,{WA:"toolTip"},function(){return null!==this.ma?this.ma.Xi:null},function(a){Cm(this);var b=this.ma.Xi;b!==a&&(null!==a&&y.l(a,da,O,"toolTip"),this.ma.Xi=a,this.j("toolTip",b,a))});y.defineProperty(O,{contextMenu:"contextMenu"},function(){return null!==this.ma?this.ma.Ai:null},function(a){Cm(this);var b=this.ma.Ai;b!==a&&(null!==a&&y.l(a,da,O,"contextMenu"),this.ma.Ai=a,this.j("contextMenu",b,a))}); -O.prototype.bind=O.prototype.bind=function(a){a.Cg=this;var b=this.qp();null!==b&&en(b)&&y.k("Cannot add a Binding to a template that has already been copied: "+a);null===this.Ac&&(this.Ac=new J(Yg));this.Ac.add(a)};O.prototype.findTemplateBinder=O.prototype.qp=function(){for(var a=this instanceof I?this:this.V;null!==a;){if(null!==a.Nk)return a;a=a.V}return null};O.prototype.setProperties=function(a){y.pu(this,a)};var fn; -O.make=fn=function(a,b){var c=arguments,d=null,e=null;if("function"===typeof a)e=a;else if("string"===typeof a){var g=gn.na(a);"function"===typeof g?(c=y.yl(arguments),d=g(c)):e=aa[a]}null===d&&(void 0===e&&(d=window.$,void 0!==d&&void 0!==d.noop&&y.k("GraphObject.make failed to complete. Is it conflicting with another $ var? (such as jQuery)"),y.k("GraphObject.make failed to complete, it may be conflicting with another var.")),null!==e&&e.constructor||y.k("GraphObject.make requires a class function or class name, not: "+ -a),d=new e);g=1;if(d instanceof C&&1e)&&y.k("Must specify non-negative integer row for RowColumnDefinition "+b+", not: "+e),a.se=!0,a.index=e):void 0!==b.column&&(e=b.column,(void 0===e||null===e||Infinity===e||isNaN(e)||0>e)&&y.k("Must specify non-negative integer column for RowColumnDefinition "+b+", not: "+e),a.se=!1,a.index=e);e=new ma;for(c in b)"row"!==c&&"column"!==c&&(e[c]=b[c]);y.pu(a,e)}else y.pu(a,b);else y.k('Unknown initializer "'+b+'" for object being constructed by GraphObject.make: '+a)} -var gn=new na("string","function");O.getBuilders=function(){var a=new na("string","function"),b;for(b in gn)if(b!==b.toLowerCase()){var c=gn[b];"function"===typeof c&&a.add(b,c)}a.freeze();return a};var Rn;O.defineBuilder=Rn=function(a,b){y.g(a,"string",O,"defineBuilder:name");y.g(b,"function",O,"defineBuilder:func");var c=a.toLowerCase();""!==a&&"none"!==c&&a!==c||y.k("Shape.defineFigureGenerator name must not be empty or None or all-lower-case: "+a);gn.add(a,b)};var Sn; +z.w(O,{ca:"part"},function(){if(this instanceof D)return this;if(null!==this.Bm)return this.Bm;var a;for(a=this.U;a;){if(a instanceof D)return this.Bm=a;a=a.U}return null});z.w(O,{U:"panel"},function(){return this.lh});O.prototype.Sl=function(a){this.lh=a};z.w(O,{layer:"layer"},function(){var a=this.ca;return null!==a?a.layer:null},{configurable:!0});z.w(O,{h:"diagram"},function(){var a=this.ca;return null!==a?a.h:null},{configurable:!0}); +z.defineProperty(O,{position:"position"},function(){return this.sb},function(a){var b=this.sb;b.N(a)||(u&&z.l(a,N,O,"position"),a=a.V(),this.RA(a,b)&&this.j("position",b,a))});O.prototype.RA=function(a){this.sb=a;Xm(this);this.Fi();return!0};O.prototype.Nx=function(a,b){this.sb.n(a,b);bn(this);this.Fi()};z.w(O,{W:"actualBounds"},function(){return this.Xb}); +z.defineProperty(O,{scale:"scale"},function(){return this.bc},function(a){var b=this.bc;b!==a&&(u&&z.p(a,O,"scale"),0>=a&&z.k("GraphObject.scale for "+this+" must be greater than zero, not: "+a),this.bc=a,this.Fi(),this.S(),this.j("scale",b,a))});z.defineProperty(O,{angle:"angle"},function(){return this.am},function(a){var b=this.am;b!==a&&(u&&z.p(a,O,"angle"),a%=360,0>a&&(a+=360),b!==a&&(this.am=a,this.S(),this.Fi(),this.j("angle",b,a)))}); +z.defineProperty(O,{Aa:"desiredSize"},function(){return this.sf},function(a){var b=this.sf;b.N(a)||(u&&z.l(a,Ea,O,"desiredSize"),this.sf=a=a.V(),this.S(),this instanceof X&&this.Ae(),this.j("desiredSize",b,a),a=this.ca,null!==a&&0!==(this.ja&1024)&&(Hm(this,a,"width"),Hm(this,a,"height")))}); +z.defineProperty(O,{width:"width"},function(){return this.sf.width},function(a){if(this.sf.width!==a){u&&z.g(a,"number",O,"width");var b=this.sf;this.sf=a=(new Ea(a,this.sf.height)).freeze();this.S();this instanceof X&&this.Ae();this.j("desiredSize",b,a);b=this.ca;null!==b&&0!==(this.ja&1024)&&Hm(this,b,"width")}}); +z.defineProperty(O,{height:"height"},function(){return this.sf.height},function(a){if(this.sf.height!==a){u&&z.g(a,"number",O,"height");var b=this.sf;this.sf=a=(new Ea(this.sf.width,a)).freeze();this.S();this instanceof X&&this.Ae();this.j("desiredSize",b,a);b=this.ca;null!==b&&0!==(this.ja&1024)&&Hm(this,b,"height")}}); +z.defineProperty(O,{dg:"minSize"},function(){return this.Sj},function(a){var b=this.Sj;b.N(a)||(u&&z.l(a,Ea,O,"minSize"),a=a.copy(),isNaN(a.width)&&(a.width=0),isNaN(a.height)&&(a.height=0),a.freeze(),this.Sj=a,this.S(),this.j("minSize",b,a))});z.defineProperty(O,{Ve:"maxSize"},function(){return this.Qj},function(a){var b=this.Qj;b.N(a)||(u&&z.l(a,Ea,O,"maxSize"),a=a.copy(),isNaN(a.width)&&(a.width=Infinity),isNaN(a.height)&&(a.height=Infinity),a.freeze(),this.Qj=a,this.S(),this.j("maxSize",b,a))}); +z.w(O,{Ia:"measuredBounds"},function(){return this.ud});z.w(O,{Ga:"naturalBounds"},function(){return this.Wc},{configurable:!0});z.defineProperty(O,{margin:"margin"},function(){return this.Fr},function(a){"number"===typeof a?a=new Eb(a):u&&z.l(a,Eb,O,"margin");var b=this.Fr;b.N(a)||(this.Fr=a=a.V(),this.S(),this.j("margin",b,a))});z.w(O,{transform:null},function(){0!==(this.ja&2048)===!0&&Sm(this);return this.Jd});z.w(O,{ph:null},function(){0!==(this.ja&4096)===!0&&Sm(this);return this.zk}); +z.defineProperty(O,{alignment:"alignment"},function(){return this.Ie},function(a){var b=this.Ie;b.N(a)||(u&&z.l(a,Q,O,"alignment"),a.Be()&&!a.cd()&&z.k("GraphObject.alignment for "+this+" must be a real Spot or Spot.Default, not: "+a),this.Ie=a=a.V(),Xm(this),this.j("alignment",b,a))});z.defineProperty(O,{column:"column"},function(){return this.xq},function(a){u&&z.p(a,O,"column");a=Math.round(a);var b=this.xq;b!==a&&(0>a&&z.ka(a,">= 0",O,"column"),this.xq=a,this.S(),this.j("column",b,a))}); +z.defineProperty(O,{cH:"columnSpan"},function(){return this.wi},function(a){u&&z.g(a,"number",O,"columnSpan");a=Math.round(a);var b=this.wi;b!==a&&(1>a&&z.ka(a,">= 1",O,"columnSpan"),this.wi=a,this.S(),this.j("columnSpan",b,a))});z.defineProperty(O,{Vb:"row"},function(){return this.us},function(a){u&&z.p(a,O,"row");a=Math.round(a);var b=this.us;b!==a&&(0>a&&z.ka(a,">= 0",O,"row"),this.us=a,this.S(),this.j("row",b,a))}); +z.defineProperty(O,{rowSpan:"rowSpan"},function(){return this.Ti},function(a){u&&z.g(a,"number",O,"rowSpan");a=Math.round(a);var b=this.Ti;b!==a&&(1>a&&z.ka(a,">= 1",O,"rowSpan"),this.Ti=a,this.S(),this.j("rowSpan",b,a))});z.defineProperty(O,{Qx:"spanAllocation"},function(){return this.Os},function(a){var b=this.Os;b!==a&&(null!==a&&z.g(a,"function",O,"spanAllocation"),this.Os=a,this.j("spanAllocation",b,a))}); +z.defineProperty(O,{jk:"alignmentFocus"},function(){return this.pq},function(a){var b=this.pq;b.N(a)||(u&&z.l(a,Q,O,"alignmentFocus"),!a.Be()||a.cd()||a.N(Yb)&&this instanceof E||z.k("GraphObject.alignmentFocus must be a real Spot or Spot.Default, not: "+a),this.pq=a=a.V(),this.S(),this.j("alignmentFocus",b,a))}); +z.defineProperty(O,{yd:"portId"},function(){return this.gs},function(a){var b=this.gs;if(b!==a){u&&null!==a&&z.g(a,"string",O,"portId");var c=this.ca;null===c||c instanceof E||(z.k("Cannot set portID on a Link: "+a),c=null);null!==b&&null!==c&&cn(c,this);this.gs=a;if(null!==a&&c){c.Ph=!0;null===c.Ed&&dn(c);var d=this.yd;null!==d&&c.Ed.add(d,this)}this.j("portId",b,a)}});function $m(a){var b=a.ca;b instanceof E&&(a=a.h,null===a||a.pa.qb||b.lf())} +z.defineProperty(O,{Eb:"toSpot"},function(){return null!==this.la?this.la.gk:Yb},function(a){this.Se();var b=this.la.gk;b.N(a)||(u&&z.l(a,Q,O,"toSpot"),a=a.V(),this.la.gk=a,this.j("toSpot",b,a),$m(this))});z.defineProperty(O,{Xl:"toEndSegmentLength"},function(){return null!==this.la?this.la.ek:10},function(a){this.Se();var b=this.la.ek;b!==a&&(u&&z.g(a,"number",O,"toEndSegmentLength"),0>a&&z.ka(a,">= 0",O,"toEndSegmentLength"),this.la.ek=a,this.j("toEndSegmentLength",b,a),$m(this))}); +z.defineProperty(O,{zu:"toEndSegmentDirection"},function(){return null!==this.la?this.la.dk:Fm},function(a){this.Se();var b=this.la.dk;b!==a&&(u&&z.Ba(a,E,O,"toEndSegmentDirection"),this.la.dk=a,this.j("toEndSegmentDirection",b,a),$m(this))});z.defineProperty(O,{Au:"toShortLength"},function(){return null!==this.la?this.la.fk:0},function(a){this.Se();var b=this.la.fk;b!==a&&(u&&z.g(a,"number",O,"toShortLength"),this.la.fk=a,this.j("toShortLength",b,a),$m(this))}); +z.defineProperty(O,{RF:"toLinkable"},function(){return this.Vs},function(a){var b=this.Vs;b!==a&&(u&&null!==a&&z.g(a,"boolean",O,"toLinkable"),this.Vs=a,this.j("toLinkable",b,a))});z.defineProperty(O,{wJ:"toMaxLinks"},function(){return this.Ws},function(a){var b=this.Ws;b!==a&&(u&&z.g(a,"number",O,"toMaxLinks"),0>a&&z.ka(a,">= 0",O,"toMaxLinks"),this.Ws=a,this.j("toMaxLinks",b,a))}); +z.defineProperty(O,{Db:"fromSpot"},function(){return null!==this.la?this.la.Fj:Yb},function(a){this.Se();var b=this.la.Fj;b.N(a)||(u&&z.l(a,Q,O,"fromSpot"),a=a.V(),this.la.Fj=a,this.j("fromSpot",b,a),$m(this))});z.defineProperty(O,{Hl:"fromEndSegmentLength"},function(){return null!==this.la?this.la.Dj:10},function(a){this.Se();var b=this.la.Dj;b!==a&&(u&&z.g(a,"number",O,"fromEndSegmentLength"),0>a&&z.ka(a,">= 0",O,"fromEndSegmentLength"),this.la.Dj=a,this.j("fromEndSegmentLength",b,a),$m(this))}); +z.defineProperty(O,{Et:"fromEndSegmentDirection"},function(){return null!==this.la?this.la.Cj:Fm},function(a){this.Se();var b=this.la.Cj;b!==a&&(u&&z.Ba(a,E,O,"fromEndSegmentDirection"),this.la.Cj=a,this.j("fromEndSegmentDirection",b,a),$m(this))});z.defineProperty(O,{Ft:"fromShortLength"},function(){return null!==this.la?this.la.Ej:0},function(a){this.Se();var b=this.la.Ej;b!==a&&(u&&z.g(a,"number",O,"fromShortLength"),this.la.Ej=a,this.j("fromShortLength",b,a),$m(this))}); +z.defineProperty(O,{vE:"fromLinkable"},function(){return this.$q},function(a){var b=this.$q;b!==a&&(u&&null!==a&&z.g(a,"boolean",O,"fromLinkable"),this.$q=a,this.j("fromLinkable",b,a))});z.defineProperty(O,{Yz:"fromMaxLinks"},function(){return this.ar},function(a){var b=this.ar;b!==a&&(u&&z.g(a,"number",O,"fromMaxLinks"),0>a&&z.ka(a,">= 0",O,"fromMaxLinks"),this.ar=a,this.j("fromMaxLinks",b,a))}); +z.defineProperty(O,{cursor:"cursor"},function(){return this.Iq},function(a){var b=this.Iq;b!==a&&(z.g(a,"string",O,"cursor"),this.Iq=a,this.j("cursor",b,a))});z.defineProperty(O,{click:"click"},function(){return null!==this.ma?this.ma.ui:null},function(a){Cm(this);var b=this.ma.ui;b!==a&&(null!==a&&z.g(a,"function",O,"click"),this.ma.ui=a,this.j("click",b,a))}); +z.defineProperty(O,{wt:"doubleClick"},function(){return null!==this.ma?this.ma.Ci:null},function(a){Cm(this);var b=this.ma.Ci;b!==a&&(null!==a&&z.g(a,"function",O,"doubleClick"),this.ma.Ci=a,this.j("doubleClick",b,a))});z.defineProperty(O,{Gz:"contextClick"},function(){return null!==this.ma?this.ma.xi:null},function(a){Cm(this);var b=this.ma.xi;b!==a&&(null!==a&&z.g(a,"function",O,"contextClick"),this.ma.xi=a,this.j("contextClick",b,a))}); +z.defineProperty(O,{au:"mouseEnter"},function(){return null!==this.ma?this.ma.Sr:null},function(a){Cm(this);var b=this.ma.Sr;b!==a&&(null!==a&&z.g(a,"function",O,"mouseEnter"),this.ma.Sr=a,this.j("mouseEnter",b,a))});z.defineProperty(O,{bu:"mouseLeave"},function(){return null!==this.ma?this.ma.Tr:null},function(a){Cm(this);var b=this.ma.Tr;b!==a&&(null!==a&&z.g(a,"function",O,"mouseLeave"),this.ma.Tr=a,this.j("mouseLeave",b,a))}); +z.defineProperty(O,{uA:"mouseOver"},function(){return null!==this.ma?this.ma.Pi:null},function(a){Cm(this);var b=this.ma.Pi;b!==a&&(null!==a&&z.g(a,"function",O,"mouseOver"),this.ma.Pi=a,this.j("mouseOver",b,a))});z.defineProperty(O,{tA:"mouseHover"},function(){return null!==this.ma?this.ma.Oi:null},function(a){Cm(this);var b=this.ma.Oi;b!==a&&(null!==a&&z.g(a,"function",O,"mouseHover"),this.ma.Oi=a,this.j("mouseHover",b,a))}); +z.defineProperty(O,{sA:"mouseHold"},function(){return null!==this.ma?this.ma.Ni:null},function(a){Cm(this);var b=this.ma.Ni;b!==a&&(null!==a&&z.g(a,"function",O,"mouseHold"),this.ma.Ni=a,this.j("mouseHold",b,a))});z.defineProperty(O,{II:"mouseDragEnter"},function(){return null!==this.ma?this.ma.Qr:null},function(a){Cm(this);var b=this.ma.Qr;b!==a&&(null!==a&&z.g(a,"function",O,"mouseDragEnter"),this.ma.Qr=a,this.j("mouseDragEnter",b,a))}); +z.defineProperty(O,{JI:"mouseDragLeave"},function(){return null!==this.ma?this.ma.Rr:null},function(a){Cm(this);var b=this.ma.Rr;b!==a&&(null!==a&&z.g(a,"function",O,"mouseDragLeave"),this.ma.Rr=a,this.j("mouseDragLeave",b,a))});z.defineProperty(O,{rA:"mouseDrop"},function(){return null!==this.ma?this.ma.Mi:null},function(a){Cm(this);var b=this.ma.Mi;b!==a&&(null!==a&&z.g(a,"function",O,"mouseDrop"),this.ma.Mi=a,this.j("mouseDrop",b,a))}); +z.defineProperty(O,{AD:"actionDown"},function(){return null!==this.ma?this.ma.jq:null},function(a){Cm(this);var b=this.ma.jq;b!==a&&(null!==a&&z.g(a,"function",O,"actionDown"),this.ma.jq=a,this.j("actionDown",b,a))});z.defineProperty(O,{BD:"actionMove"},function(){return null!==this.ma?this.ma.kq:null},function(a){Cm(this);var b=this.ma.kq;b!==a&&(null!==a&&z.g(a,"function",O,"actionMove"),this.ma.kq=a,this.j("actionMove",b,a))}); +z.defineProperty(O,{CD:"actionUp"},function(){return null!==this.ma?this.ma.lq:null},function(a){Cm(this);var b=this.ma.lq;b!==a&&(null!==a&&z.g(a,"function",O,"actionUp"),this.ma.lq=a,this.j("actionUp",b,a))});z.defineProperty(O,{zD:"actionCancel"},function(){return null!==this.ma?this.ma.iq:null},function(a){Cm(this);var b=this.ma.iq;b!==a&&(null!==a&&z.g(a,"function",O,"actionCancel"),this.ma.iq=a,this.j("actionCancel",b,a))}); +z.defineProperty(O,{$A:"toolTip"},function(){return null!==this.ma?this.ma.Vi:null},function(a){Cm(this);var b=this.ma.Vi;b!==a&&(null!==a&&z.l(a,da,O,"toolTip"),this.ma.Vi=a,this.j("toolTip",b,a))});z.defineProperty(O,{contextMenu:"contextMenu"},function(){return null!==this.ma?this.ma.yi:null},function(a){Cm(this);var b=this.ma.yi;b!==a&&(null!==a&&z.l(a,da,O,"contextMenu"),this.ma.yi=a,this.j("contextMenu",b,a))}); +O.prototype.bind=O.prototype.bind=function(a){a.Bg=this;var b=this.qp();null!==b&&en(b)&&z.k("Cannot add a Binding to a template that has already been copied: "+a);null===this.Ac&&(this.Ac=new J(Yg));this.Ac.add(a)};O.prototype.findTemplateBinder=O.prototype.qp=function(){for(var a=this instanceof I?this:this.U;null!==a;){if(null!==a.Nk)return a;a=a.U}return null};O.prototype.setProperties=function(a){z.qu(this,a)};var fn; +O.make=fn=function(a,b){var c=arguments,d=null,e=null;if("function"===typeof a)e=a;else if("string"===typeof a){var g=gn.na(a);"function"===typeof g?(c=z.yl(arguments),d=g(c)):e=aa[a]}null===d&&(void 0===e&&(d=window.$,void 0!==d&&void 0!==d.noop&&z.k("GraphObject.make failed to complete. Is it conflicting with another $ var? (such as jQuery)"),z.k("GraphObject.make failed to complete, it may be conflicting with another var.")),null!==e&&e.constructor||z.k("GraphObject.make requires a class function or class name, not: "+ +a),d=new e);g=1;if(d instanceof C&&1e)&&z.k("Must specify non-negative integer row for RowColumnDefinition "+b+", not: "+e),a.qe=!0,a.index=e):void 0!==b.column&&(e=b.column,(void 0===e||null===e||Infinity===e||isNaN(e)||0>e)&&z.k("Must specify non-negative integer column for RowColumnDefinition "+b+", not: "+e),a.qe=!1,a.index=e);e=new ma;for(c in b)"row"!==c&&"column"!==c&&(e[c]=b[c]);z.qu(a,e)}else z.qu(a,b);else z.k('Unknown initializer "'+b+'" for object being constructed by GraphObject.make: '+a)} +var gn=new na("string","function");O.getBuilders=function(){var a=new na("string","function"),b;for(b in gn)if(b!==b.toLowerCase()){var c=gn[b];"function"===typeof c&&a.add(b,c)}a.freeze();return a};var Rn;O.defineBuilder=Rn=function(a,b){z.g(a,"string",O,"defineBuilder:name");z.g(b,"function",O,"defineBuilder:func");var c=a.toLowerCase();""!==a&&"none"!==c&&a!==c||z.k("Shape.defineFigureGenerator name must not be empty or None or all-lower-case: "+a);gn.add(a,b)};var Sn; O.takeBuilderArgument=Sn=function(a,b,c){void 0===c&&(c=null);var d=a[1];if("function"===typeof c?c(d):"string"===typeof d)return a.splice(1,1),d;if(void 0===b)throw Error("no "+("function"===typeof c?"satisfactory":"string")+" argument for GraphObject builder "+a[0]);return b}; -Rn("Button",function(){var a=new Da(ug);a.addColorStop(0,"white");a.addColorStop(1,"lightgray");var b=new Da(ug);b.addColorStop(0,"white");b.addColorStop(1,"dodgerblue");a=fn(I,Bk,{Lt:!0},{_buttonFillNormal:a,_buttonStrokeNormal:"gray",_buttonFillOver:b,_buttonStrokeOver:"blue"},fn(X,{name:"ButtonBorder",Hb:"Rectangle",C:new Q(0,0,2.761423749153968,2.761423749153968),D:new Q(1,1,-2.761423749153968,-2.761423749153968),fill:a,stroke:"gray"}));a.$t=function(a,b){var e=b.qe("ButtonBorder");if(e instanceof -X){var g=b._buttonFillOver;b._buttonFillNormal=e.fill;e.fill=g;g=b._buttonStrokeOver;b._buttonStrokeNormal=e.stroke;e.stroke=g}};a.au=function(a,b){var e=b.qe("ButtonBorder");e instanceof X&&(e.fill=b._buttonFillNormal,e.stroke=b._buttonStrokeNormal)};return a}); -Rn("TreeExpanderButton",function(){var a=fn("Button",{_treeExpandedFigure:"MinusLine",_treeCollapsedFigure:"PlusLine"},fn(X,{name:"ButtonIcon",Hb:"MinusLine",Aa:Sd},(new Yg("figure","isTreeExpanded",function(a,c){var d=c.V;return a?d._treeExpandedFigure:d._treeCollapsedFigure})).tx()),{visible:!1},(new Yg("visible","isTreeLeaf",function(a){return!a})).tx());a.click=function(a,c){var d=c.ca;d instanceof da&&(d=d.Yf);if(d instanceof E){var e=d.h;if(null!==e){e=e.wb;if(d.wd){if(!e.canCollapseTree(d))return}else if(!e.canExpandTree(d))return; -a.Gc=!0;d.wd?e.collapseTree(d):e.expandTree(d)}}};return a}); -Rn("SubGraphExpanderButton",function(){var a=fn("Button",{_subGraphExpandedFigure:"MinusLine",_subGraphCollapsedFigure:"PlusLine"},fn(X,{name:"ButtonIcon",Hb:"MinusLine",Aa:Sd},(new Yg("figure","isSubGraphExpanded",function(a,c){var d=c.V;return a?d._subGraphExpandedFigure:d._subGraphCollapsedFigure})).tx()));a.click=function(a,c){var d=c.ca;d instanceof da&&(d=d.Yf);if(d instanceof F){var e=d.h;if(null!==e){e=e.wb;if(d.te){if(!e.canCollapseSubGraph(d))return}else if(!e.canExpandSubGraph(d))return;a.Gc= -!0;d.te?e.collapseSubGraph(d):e.expandSubGraph(d)}}};return a});Rn("ContextMenuButton",function(){var a=fn("Button");a.stretch=Bm;var b=a.qe("ButtonBorder");b instanceof X&&(b.Hb="Rectangle",b.C=new Q(0,0,2,3),b.D=new Q(1,1,-2,-2));return a}); -Rn("PanelExpanderButton",function(a){var b=Sn(a,"COLLAPSIBLE");a=fn("Button",fn(X,"TriangleUp",{Aa:new Ea(6,4)},(new Yg("figure","visible",function(a){return a?"TriangleUp":"TriangleDown"})).tx(b)));var c=a.qe("ButtonBorder");c instanceof X&&(c.stroke=null,c.fill="transparent");a.click=function(a,c){var g=c.h;if(null!==g&&!g.ib){var h=c.ca.qe(b);null!==h&&(g.Vb("Collapse/Expand Panel"),h.visible=!h.visible,g.Md("Collapse/Expand Panel"))}};return a}); -Rn("CheckBoxButton",function(a){var b=Sn(a);a=fn("Button",{"ButtonBorder.fill":"white","ButtonBorder.stroke":"gray",width:14,height:14},fn(X,{name:"ButtonIcon",HH:"M0 4 L3 9 9 0",ub:2,stretch:mf,Vz:Zi,visible:!1},""!==b?(new Yg("visible",b)).wI():[]));a.click=function(a,d){if(!(a.h.ib||""!==b&&a.h.ha.ib)){a.Gc=!0;var e=d.qe("ButtonIcon");e.h.Vb("checkbox");e.visible=!e.visible;"function"===typeof d._doClick&&d._doClick(a,d);e.h.Md("checkbox")}};return a}); -Rn("CheckBox",function(a){a=Sn(a);a=fn("CheckBoxButton",a,{name:"Button",margin:new Eb(0,1,0,0)});var b=fn(I,"Horizontal",a,{Lt:!0,margin:1,_buttonFillNormal:a._buttonFillNormal,_buttonStrokeNormal:a._buttonStrokeNormal,_buttonFillOver:a._buttonFillOver,_buttonStrokeOver:a._buttonStrokeOver,$t:a.$t,au:a.au,click:a.click,_buttonClick:a.click});a.$t=null;a.au=null;a.click=null;return b}); -function Dm(){this.Ai=this.Xi=this.iq=this.lq=this.kq=this.jq=this.Oi=this.Qr=this.Pr=this.Pi=this.Qi=this.Ri=this.Sr=this.Rr=this.zi=this.Ei=this.wi=null}Dm.prototype.copy=function(){var a=new Dm;a.wi=this.wi;a.Ei=this.Ei;a.zi=this.zi;a.Rr=this.Rr;a.Sr=this.Sr;a.Ri=this.Ri;a.Qi=this.Qi;a.Pi=this.Pi;a.Pr=this.Pr;a.Qr=this.Qr;a.Oi=this.Oi;a.jq=this.jq;a.kq=this.kq;a.lq=this.lq;a.iq=this.iq;a.Xi=this.Xi;a.Ai=this.Ai;return a}; -function I(a){O.call(this);void 0===a?0===arguments.length?this.ba=bj:y.k("invalid argument to Panel constructor: undefined"):(y.Ba(a,I,I,"type"),this.ba=a);this.va=new J(O);this.cf=Hd;this.eh=!1;this.ba===Ek&&(this.eh=!0);this.ir=!1;this.Mq=Kc;this.Di=zm;this.ba===fa&&Tn(this);this.ap=Zi;this.dr=Ud;this.er=Fd;this.Nk=this.he=null;this.vr=NaN;this.ug=this.Ki=null;this.xo="category";this.tg=null;this.Zi=new w(NaN,NaN,NaN,NaN);this.Nm=null;this.Rh=!1;this.us=null}y.Pa(I,O);y.ki(I);y.ia("Panel",I); -function Tn(a){a.zj=Hd;a.Oh=1;a.Ci=null;a.hm=null;a.Nh=1;a.Mh=null;a.gm=null;a.$d=[];a.Wd=[];a.Im=Un;a.fm=Un;a.Yi=0;a.Li=0} -I.prototype.cloneProtected=function(a){O.prototype.cloneProtected.call(this,a);a.ba=this.ba;a.cf=this.cf.U();a.eh=this.eh;a.ir=this.ir;a.Mq=this.Mq.U();a.Di=this.Di;if(a.ba===fa){a.zj=this.zj.U();a.Oh=this.Oh;a.Ci=this.Ci;a.hm=this.hm;a.Nh=this.Nh;a.Mh=this.Mh;a.gm=this.gm;var b=[];if(0a&&y.ka(a,">= 0",I,"padding"),a=new Eb(a)):(y.l(a,Eb,I,"padding"),0>a.left&&y.ka(a.left,">= 0",I,"padding:value.left"),0>a.right&&y.ka(a.right,">= 0",I,"padding:value.right"),0>a.top&&y.ka(a.top,">= 0",I,"padding:value.top"),0>a.bottom&&y.ka(a.bottom,">= 0",I,"padding:value.bottom"));var b=this.cf;b.N(a)||(this.cf=a=a.U(),this.S(),this.j("padding",b,a))}); -y.defineProperty(I,{Al:"defaultAlignment"},function(){return this.Mq},function(a){var b=this.Mq;b.N(a)||(u&&y.l(a,Q,I,"defaultAlignment"),this.Mq=a=a.U(),this.S(),this.j("defaultAlignment",b,a))});y.defineProperty(I,{ae:"defaultStretch"},function(){return this.Di},function(a){var b=this.Di;b!==a&&(y.Ba(a,O,I,"defaultStretch"),this.Di=a,this.S(),this.j("defaultStretch",b,a))}); -y.defineProperty(I,{oK:"defaultSeparatorPadding"},function(){return void 0===this.zj?Hd:this.zj},function(a){if(void 0!==this.zj){"number"===typeof a?a=new Eb(a):u&&y.l(a,Eb,I,"defaultSeparatorPadding");var b=this.zj;b.N(a)||(this.zj=a=a.U(),this.j("defaultSeparatorPadding",b,a))}}); -y.defineProperty(I,{mK:"defaultRowSeparatorStroke"},function(){return void 0===this.Ci?null:this.Ci},function(a){var b=this.Ci;b!==a&&(null===a||"string"===typeof a||a instanceof Da)&&(a instanceof Da&&a.freeze(),this.Ci=a,this.j("defaultRowSeparatorStroke",b,a))});y.defineProperty(I,{nK:"defaultRowSeparatorStrokeWidth"},function(){return void 0===this.Oh?1:this.Oh},function(a){if(void 0!==this.Oh){var b=this.Oh;b!==a&&isFinite(a)&&0<=a&&(this.Oh=a,this.j("defaultRowSeparatorStrokeWidth",b,a))}}); -y.defineProperty(I,{lK:"defaultRowSeparatorDashArray"},function(){return void 0===this.hm?null:this.hm},function(a){if(void 0!==this.hm){var b=this.hm;if(b!==a){null===a||Array.isArray(a)||y.jc(a,"Array",I,"defaultRowSeparatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;e=c&&(c=1);var d=this.ax,e=d.width,d=d.height,g=this.Fa,h=g.width,g=g.height,k=Math.ceil(h/e),l=Math.ceil(g/d),m=this.xE;a.save();a.beginPath();a.rect(0,0,h,g);a.clip();for(var n=[],p=this.va.o,q=p.length,r=0;r -e*t*c))){var s=n[r],v=!1,A=!0,B=z.LF;null!==B&&(v=!0,void 0!==a.setLineDash?(a.setLineDash(B),a.lineDashOffset=z.vd):void 0!==a.webkitLineDash?(a.webkitLineDash=B,a.webkitLineDashOffset=z.vd):void 0!==a.mozDash?(a.mozDash=B,a.mozDashOffset=z.vd):A=!1);if("LineV"===z.Hb){a.lineWidth=z.ub;Tm(this,a,z.stroke,!1,!1);a.beginPath();for(var L=x=Math.floor(-m.x/e);L<=x+k;L++){var H=L*e+m.x;0<=H&&Hg.height)continue}else if(l.position>g.width)continue;var m=l.aq;isNaN(m)&&(m=c?a.Oh:a.Nh);var n=l.$p;null===n&&(n=c?a.Ci:a.Mh);if(0!==m&&null!==n){Tm(a,b,n,!1,!1);var n=!1,p=!0,q=l.gJ;null!==q&&(n=!0,void 0!==b.setLineDash?(b.setLineDash(q),b.lineDashOffset=a.vd):void 0!==b.webkitLineDash?(b.webkitLineDash=q,b.webkitLineDashOffset=a.vd):void 0!==b.mozDash? -(b.mozDash=q,b.mozDashOffset=a.vd):p=!1);b.beginPath();var r=l.position+m;c?r>g.height&&(m-=r-g.height):r>g.width&&(m-=r-g.width);l=l.position+m/2;b.lineWidth=m;r=a.padding;c?(l+=r.top,m=r.left,r=g.width-r.right,n&&!p?Gm(b,m,l,r,l,q,0):(b.moveTo(m,l),b.lineTo(r,l))):(l+=r.left,m=r.top,r=g.height-r.bottom,n&&!p?Gm(b,l,m,l,r,q,0):(b.moveTo(l,m),b.lineTo(l,r)));b.stroke();n&&(void 0!==b.setLineDash?(b.setLineDash(y.Ih),b.lineDashOffset=0):void 0!==b.webkitLineDash?(b.webkitLineDash=y.Ih,b.webkitLineDashOffset= +Rn("Button",function(){var a=new Da(ug);a.addColorStop(0,"white");a.addColorStop(1,"lightgray");var b=new Da(ug);b.addColorStop(0,"white");b.addColorStop(1,"dodgerblue");a=fn(I,Bk,{Mt:!0},{_buttonFillNormal:a,_buttonStrokeNormal:"gray",_buttonFillOver:b,_buttonStrokeOver:"blue"},fn(X,{name:"ButtonBorder",Hb:"Rectangle",C:new Q(0,0,2.761423749153968,2.761423749153968),D:new Q(1,1,-2.761423749153968,-2.761423749153968),fill:a,stroke:"gray"}));a.au=function(a,b){var e=b.oe("ButtonBorder");if(e instanceof +X){var g=b._buttonFillOver;b._buttonFillNormal=e.fill;e.fill=g;g=b._buttonStrokeOver;b._buttonStrokeNormal=e.stroke;e.stroke=g}};a.bu=function(a,b){var e=b.oe("ButtonBorder");e instanceof X&&(e.fill=b._buttonFillNormal,e.stroke=b._buttonStrokeNormal)};return a}); +Rn("TreeExpanderButton",function(){var a=fn("Button",{_treeExpandedFigure:"MinusLine",_treeCollapsedFigure:"PlusLine"},fn(X,{name:"ButtonIcon",Hb:"MinusLine",Aa:Td},(new Yg("figure","isTreeExpanded",function(a,c){var d=c.U;return a?d._treeExpandedFigure:d._treeCollapsedFigure})).ux()),{visible:!1},(new Yg("visible","isTreeLeaf",function(a){return!a})).ux());a.click=function(a,c){var d=c.ca;d instanceof da&&(d=d.Xf);if(d instanceof E){var e=d.h;if(null!==e){e=e.wb;if(d.vd){if(!e.canCollapseTree(d))return}else if(!e.canExpandTree(d))return; +a.Gc=!0;d.vd?e.collapseTree(d):e.expandTree(d)}}};return a}); +Rn("SubGraphExpanderButton",function(){var a=fn("Button",{_subGraphExpandedFigure:"MinusLine",_subGraphCollapsedFigure:"PlusLine"},fn(X,{name:"ButtonIcon",Hb:"MinusLine",Aa:Td},(new Yg("figure","isSubGraphExpanded",function(a,c){var d=c.U;return a?d._subGraphExpandedFigure:d._subGraphCollapsedFigure})).ux()));a.click=function(a,c){var d=c.ca;d instanceof da&&(d=d.Xf);if(d instanceof F){var e=d.h;if(null!==e){e=e.wb;if(d.re){if(!e.canCollapseSubGraph(d))return}else if(!e.canExpandSubGraph(d))return;a.Gc= +!0;d.re?e.collapseSubGraph(d):e.expandSubGraph(d)}}};return a});Rn("ContextMenuButton",function(){var a=fn("Button");a.stretch=Bm;var b=a.oe("ButtonBorder");b instanceof X&&(b.Hb="Rectangle",b.C=new Q(0,0,2,3),b.D=new Q(1,1,-2,-2));return a}); +Rn("PanelExpanderButton",function(a){var b=Sn(a,"COLLAPSIBLE");a=fn("Button",fn(X,"TriangleUp",{Aa:new Ea(6,4)},(new Yg("figure","visible",function(a){return a?"TriangleUp":"TriangleDown"})).ux(b)));var c=a.oe("ButtonBorder");c instanceof X&&(c.stroke=null,c.fill="transparent");a.click=function(a,c){var g=c.h;if(null!==g&&!g.ib){var h=c.ca.oe(b);null!==h&&(g.Wb("Collapse/Expand Panel"),h.visible=!h.visible,g.Kd("Collapse/Expand Panel"))}};return a}); +Rn("CheckBoxButton",function(a){var b=Sn(a);a=fn("Button",{"ButtonBorder.fill":"white","ButtonBorder.stroke":"gray",width:14,height:14},fn(X,{name:"ButtonIcon",JH:"M0 4 L3 9 9 0",ub:2,stretch:mf,Zz:Zi,visible:!1},""!==b?(new Yg("visible",b)).yI():[]));a.click=function(a,d){if(!(a.h.ib||""!==b&&a.h.ha.ib)){a.Gc=!0;var e=d.oe("ButtonIcon");e.h.Wb("checkbox");e.visible=!e.visible;"function"===typeof d._doClick&&d._doClick(a,d);e.h.Kd("checkbox")}};return a}); +Rn("CheckBox",function(a){a=Sn(a);a=fn("CheckBoxButton",a,{name:"Button",margin:new Eb(0,1,0,0)});var b=fn(I,"Horizontal",a,{Mt:!0,margin:1,_buttonFillNormal:a._buttonFillNormal,_buttonStrokeNormal:a._buttonStrokeNormal,_buttonFillOver:a._buttonFillOver,_buttonStrokeOver:a._buttonStrokeOver,au:a.au,bu:a.bu,click:a.click,_buttonClick:a.click});a.au=null;a.bu=null;a.click=null;return b}); +function Dm(){this.yi=this.Vi=this.iq=this.lq=this.kq=this.jq=this.Mi=this.Rr=this.Qr=this.Ni=this.Oi=this.Pi=this.Tr=this.Sr=this.xi=this.Ci=this.ui=null}Dm.prototype.copy=function(){var a=new Dm;a.ui=this.ui;a.Ci=this.Ci;a.xi=this.xi;a.Sr=this.Sr;a.Tr=this.Tr;a.Pi=this.Pi;a.Oi=this.Oi;a.Ni=this.Ni;a.Qr=this.Qr;a.Rr=this.Rr;a.Mi=this.Mi;a.jq=this.jq;a.kq=this.kq;a.lq=this.lq;a.iq=this.iq;a.Vi=this.Vi;a.yi=this.yi;return a}; +function I(a){O.call(this);void 0===a?0===arguments.length?this.ba=bj:z.k("invalid argument to Panel constructor: undefined"):(z.Ba(a,I,I,"type"),this.ba=a);this.va=new J(O);this.bf=Id;this.dh=!1;this.ba===Ek&&(this.dh=!0);this.ir=!1;this.Mq=Lc;this.Bi=zm;this.ba===ga&&Tn(this);this.ap=Zi;this.dr=Vd;this.er=Gd;this.Nk=this.fe=null;this.wr=NaN;this.tg=this.Ii=null;this.xo="category";this.sg=null;this.Xi=new w(NaN,NaN,NaN,NaN);this.Mm=null;this.Ph=!1;this.vs=null}z.Qa(I,O);z.ii(I);z.ia("Panel",I); +function Tn(a){a.zj=Id;a.Mh=1;a.Ai=null;a.gm=null;a.Lh=1;a.Kh=null;a.fm=null;a.Yd=[];a.Ud=[];a.Hm=Un;a.em=Un;a.Wi=0;a.Ji=0} +I.prototype.cloneProtected=function(a){O.prototype.cloneProtected.call(this,a);a.ba=this.ba;a.bf=this.bf.V();a.dh=this.dh;a.ir=this.ir;a.Mq=this.Mq.V();a.Bi=this.Bi;if(a.ba===ga){a.zj=this.zj.V();a.Mh=this.Mh;a.Ai=this.Ai;a.gm=this.gm;a.Lh=this.Lh;a.Kh=this.Kh;a.fm=this.fm;var b=[];if(0a&&z.ka(a,">= 0",I,"padding"),a=new Eb(a)):(z.l(a,Eb,I,"padding"),0>a.left&&z.ka(a.left,">= 0",I,"padding:value.left"),0>a.right&&z.ka(a.right,">= 0",I,"padding:value.right"),0>a.top&&z.ka(a.top,">= 0",I,"padding:value.top"),0>a.bottom&&z.ka(a.bottom,">= 0",I,"padding:value.bottom"));var b=this.bf;b.N(a)||(this.bf=a=a.V(),this.S(),this.j("padding",b,a))}); +z.defineProperty(I,{Al:"defaultAlignment"},function(){return this.Mq},function(a){var b=this.Mq;b.N(a)||(u&&z.l(a,Q,I,"defaultAlignment"),this.Mq=a=a.V(),this.S(),this.j("defaultAlignment",b,a))});z.defineProperty(I,{Zd:"defaultStretch"},function(){return this.Bi},function(a){var b=this.Bi;b!==a&&(z.Ba(a,O,I,"defaultStretch"),this.Bi=a,this.S(),this.j("defaultStretch",b,a))}); +z.defineProperty(I,{qK:"defaultSeparatorPadding"},function(){return void 0===this.zj?Id:this.zj},function(a){if(void 0!==this.zj){"number"===typeof a?a=new Eb(a):u&&z.l(a,Eb,I,"defaultSeparatorPadding");var b=this.zj;b.N(a)||(this.zj=a=a.V(),this.j("defaultSeparatorPadding",b,a))}}); +z.defineProperty(I,{oK:"defaultRowSeparatorStroke"},function(){return void 0===this.Ai?null:this.Ai},function(a){var b=this.Ai;b!==a&&(null===a||"string"===typeof a||a instanceof Da)&&(a instanceof Da&&a.freeze(),this.Ai=a,this.j("defaultRowSeparatorStroke",b,a))});z.defineProperty(I,{pK:"defaultRowSeparatorStrokeWidth"},function(){return void 0===this.Mh?1:this.Mh},function(a){if(void 0!==this.Mh){var b=this.Mh;b!==a&&isFinite(a)&&0<=a&&(this.Mh=a,this.j("defaultRowSeparatorStrokeWidth",b,a))}}); +z.defineProperty(I,{nK:"defaultRowSeparatorDashArray"},function(){return void 0===this.gm?null:this.gm},function(a){if(void 0!==this.gm){var b=this.gm;if(b!==a){null===a||Array.isArray(a)||z.jc(a,"Array",I,"defaultRowSeparatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;e=c&&(c=1);var d=this.bx,e=d.width,d=d.height,g=this.Ga,h=g.width,g=g.height,k=Math.ceil(h/e),l=Math.ceil(g/d),m=this.AE;a.save();a.beginPath();a.rect(0,0,h,g);a.clip();for(var n=[],p=this.va.o,q=p.length,r=0;r +e*t*c))){var s=n[r],v=!1,A=!0,B=y.OF;null!==B&&(v=!0,A=a.Tz(B,y.ve));if("LineV"===y.Hb){a.lineWidth=y.ub;Tm(this,a,y.stroke,!1,!1);a.beginPath();for(var L=x=Math.floor(-m.x/e);L<=x+k;L++){var H=L*e+m.x;0<=H&&Hg.height)continue}else if(l.position>g.width)continue;var m=l.aq;isNaN(m)&&(m=c?a.Mh:a.Lh);var n=l.$p;null===n&&(n=c?a.Ai:a.Kh);if(0!==m&&null!==n){Tm(a,b,n,!1,!1);var n=!1,p=!0,q=l.iJ;null!==q&&(n=!0,void 0!==b.setLineDash?(b.setLineDash(q),b.lineDashOffset=a.ve):void 0!==b.webkitLineDash?(b.webkitLineDash=q,b.webkitLineDashOffset=a.ve):void 0!==b.mozDash? +(b.mozDash=q,b.mozDashOffset=a.ve):p=!1);b.beginPath();var r=l.position+m;c?r>g.height&&(m-=r-g.height):r>g.width&&(m-=r-g.width);l=l.position+m/2;b.lineWidth=m;r=a.padding;c?(l+=r.top,m=r.left,r=g.width-r.right,n&&!p?Gm(b,m,l,r,l,q,0):(b.moveTo(m,l),b.lineTo(r,l))):(l+=r.left,m=r.top,r=g.height-r.bottom,n&&!p?Gm(b,l,m,l,r,q,0):(b.moveTo(l,m),b.lineTo(l,r)));b.stroke();n&&(void 0!==b.setLineDash?(b.setLineDash(z.wj),b.lineDashOffset=0):void 0!==b.webkitLineDash?(b.webkitLineDash=z.wj,b.webkitLineDashOffset= 0):void 0!==b.mozDash&&(b.mozDash=null,b.mozDashOffset=0))}}}} -function Wn(a,b,c,d,e){for(var g=d.length,h=a.W,k=0;km)){var n=l.yf(),p=l.aq;isNaN(p)&&(p=c?a.Oh:a.Nh);var q=l.$p;null===q&&(q=c?a.Ci:a.Mh);null===q&&(p=0);n-=p;p=l.position+p;n+=l.Ta;p+n>m&&(n=m-p);0>=n||(m=a.padding,Tm(a,b,l.background,!0,!1),c?b.fillRect(m.left,p+m.top,h.width-(m.left+m.right),n):b.fillRect(p+m.left,m.top,n,h.height-(m.top+m.bottom)))}}}} +function Wn(a,b,c,d,e){for(var g=d.length,h=a.W,k=0;km)){var n=l.xf(),p=l.aq;isNaN(p)&&(p=c?a.Mh:a.Lh);var q=l.$p;null===q&&(q=c?a.Ai:a.Kh);null===q&&(p=0);n-=p;p=l.position+p;n+=l.Oa;p+n>m&&(n=m-p);0>=n||(m=a.padding,Tm(a,b,l.background,!0,!1),c?b.fillRect(m.left,p+m.top,h.width-(m.left+m.right),n):b.fillRect(p+m.left,m.top,n,h.height-(m.top+m.bottom)))}}}} function Vn(a,b,c){if(0!==a%b)return!1;b=c.length;for(var d=0;dAd&&(Jc=Math.max(Ad-id,0));var rh=0===Z.Ta;Z.Ta+=Jc;Ad=Math.max(Ad-(Jc+(rh?id:0)),0)}1!==ha.yi||je!==Xi&&je!==Am||(Z=this.Od(wc),id=Z.yf(),Jc=Math.max(Te-Z.Ta,0),Jc+id>Ic&&(Jc=Math.max(Ic-id,0)),rh=0===Z.Ta,Z.Ta+=Jc,Ic=Math.max(Ic-(Jc+(rh?id:0)),0));Sg&&ha.Bp()}}}y.xa(qh);for(var Be=0,Ce=0,La= -this.ip,ga=0;ga=this.Zp);eb++)Z=this.Pd(ha.Zb+eb),Nf.height+=Math.max(Z.pj,isNaN(Z.df)?Z.qf:Math.min(Z.df,Z.qf));for(eb=1;eb=this.ip);eb++)Z=this.Od(ha.column+eb),Nf.width+=Math.max(Z.pj,isNaN(Z.df)?Z.qf:Math.min(Z.df,Z.qf));Ya.width+=Nf.width;Ya.height+=Nf.height;Xb=ha.margin;fg=Xb.right+Xb.left;gg=Xb.top+Xb.bottom;oj(ha,Ya.width,Ya.height,Qg,sj);for(var Se= -ha.Ia,Te=Math.max(Se.width+fg,0),Bd=Math.max(Se.height+gg,0),Ue=0,eb=0;eb=this.Zp);eb++)Z=this.Pd(ha.Zb+eb),Ue+=Z.total||0;if(Ue=xc)&&!(ha.Zb+eb>=this.Zp);eb++){var Z=this.Pd(ha.Zb+eb),jb=Z.kb||0,yc=ig(ha,Z,ri);u&&"number"!==typeof yc&&y.k(ha+" spanAllocation does not return a number: "+yc);Z.Ta=Math.min(Z.qf,jb+yc);Z.kb!==jb&&(xc-=Z.kb-jb)}for(;0jb&&(Z.Ta=Math.min(Z.qf, -jb+xc),Z.kb!==jb&&(xc-=Z.kb-jb));if(0===Z.index)break;Z=this.Pd(Z.index-1)}}for(var Fe=0,eb=0;eb=this.ip);eb++)Z=this.Od(ha.column+eb),Fe+=Z.total||0;if(Fe=xc)&&!(ha.column+eb>=this.ip);eb++)Z=this.Od(ha.column+eb),jb=Z.kb||0,yc=ig(ha,Z,ri),u&&"number"!==typeof yc&&y.k(ha+" spanAllocation does not return a number: "+yc),Z.Ta=Math.min(Z.qf,jb+yc),Z.kb!==jb&&(xc-=Z.kb-jb);for(;0jb&&(Z.Ta=Math.min(Z.qf,jb+xc),Z.kb!==jb&&(xc-=Z.kb-jb));if(0===Z.index)break;Z=this.Od(Z.index-1)}}}y.xa(hd);y.pk(Nf);y.pk(Ya);for(var ke=0,le=0,je=Lm(this,!0),sh=this.Aa,tj=this.We,Cd=Ce=Be=0,Ve=0,La=this.ip,ga=0;gaUg)oj(Yb,Infinity,Infinity),me=Yb.Ia,Ze.si(me),this.$g.add(me);else{var jd=Yb.Ee,er=Yb.JA,vn=Yb.jk;vn.Ce()&&(vn=ec);var yj=Yb.ou,jt=Yb.zF,zj=0,Aj=0,dl=0;if(jd<-Ug||jd>= -Ug){var fr=kg.XE,ti=kg.WE;yj!==Ki&&(dl=kg.computeAngle(Yb,yj,ti),Yb.bm=dl);zj=fr.x-lg.x;Aj=fr.y-lg.y}else{var Dd,$e;if(0<=jd)Dd=mg.ea(jd),$e=jdhr+10?0<=jd?vh.Ec(Dd):Dd.Ec(vh):hr>gr+10?0<=jd?$e.Ec(wh):wh.Ec($e):0<=jd?vh.Ec(wh):wh.Ec(vh)}else ti=0<=jd?Dd.Ec($e): -$e.Ec(Dd);yj!==Ki&&(dl=kg.computeAngle(Yb,yj,ti),Yb.bm=dl);zj=Dd.x+($e.x-Dd.x)*er-lg.x;Aj=Dd.y+($e.y-Dd.y)*er-lg.y}oj(Yb,Infinity,Infinity);var me=Yb.Ia,bl=Yb.Fa,Bj=0;Yb instanceof X&&(Bj=Yb.ub);var el=bl.width+Bj,wn=bl.height+Bj;si.reset();si.translate(-me.x,-me.y);si.scale(Yb.scale,Yb.scale);si.rotate(yj===Ki?Yb.angle:ti,el/2,wn/2);var ui=new w(0,0,el,wn);xj.qu(ui,vn);si.Cb(xj);var kt=-xj.x+Bj/2,lt=-xj.y+Bj/2;ng.assign(jt);isNaN(ng.x)&&(ng.x=0<=jd?el/2+3:-(el/2+3));isNaN(ng.y)&&(ng.y=-(wn/2+3)); -ng.rotate(ti);zj+=ng.x;Aj+=ng.y;ui.set(me);ui.x=zj+kt;ui.y=Aj+lt;this.$g.add(ui);Ze.si(ui)}}if(this.Le)for(var ir=this.If;ir.next();)oj(ir.value,Infinity,Infinity);this.Zi=Ze;var xn=this.Mi;xn.n(xn.x+Ze.x,xn.y+Ze.y);zb(e,Ze.width||0,Ze.height||0);y.jf(si);y.A(xj);y.A(ng)}break;case "Grid":break;case "TableRow":case "TableColumn":y.k(this.toString()+" is not an element of a Table Panel. TableRow and TableColumn Panels can only be elements of a Table Panel.");break;default:y.k("Unknown panel type: "+ -n)}}var af=e.width,bf=e.height,fl=this.padding,mt=fl.top+fl.bottom,af=af+(fl.left+fl.right),bf=bf+mt;isFinite(g.width)&&(af=g.width);isFinite(g.height)&&(bf=g.height);af=Math.min(k.width,af);bf=Math.min(k.height,bf);af=Math.max(h.width,af);bf=Math.max(h.height,bf);af=Math.max(c,af);bf=Math.max(d,bf);e.width=af;e.height=bf;zb(this.Wc,af,bf);Im(this,0,0,af,bf)}; -I.prototype.findMainElement=I.prototype.gf=function(){if(null===this.Nm){var a=this.va.o,b=a.length;if(0===b)return null;for(var c=0;cc||p>d)this.S(),oj(this,n>c?c:n,p>d?d:p);break;case mf:this.S(!0);oj(this,c+r,d+s,0,0);break;case Bm:this.S(!0);oj(this,c+r,p+s,0,0);break;case Am:this.S(!0),oj(this,n+r,d+s,0,0)}}k=this.W;k.x=a;k.y=b; -k.width=c;k.height=d;var t=this.ba.Ub;switch(t){case "Position":for(var v=g.length,x=e.x-this.padding.left,z=e.y-this.padding.top,A=0;A=this.Zp);ga++){var ha=this.Pd(Db+ga);nb.height+=ha.total}for(ga=1;ga=this.ip);ga++){var gd=this.Od(Rd+ga);nb.width+=gd.total}var ph=he.kb+nb.width,mi=Sc.kb+nb.height;h.x=fd;h.y=vf;h.width=ph;h.height=mi;var wc=fd,ni=vf,bc=ph,qh=mi;fd+ph>e.width&&(bc=Math.max(e.width-fd,0));vf+mi>e.height&&(qh=Math.max(e.height-vf,0));var hd=La.alignment,ye=0,Tc=0,zd=0,Ic=0;if(hd.cd()){hd= -this.Al;hd.dd()||(hd=ec);var ye=hd.x,Tc=hd.y,zd=hd.offsetX,Ic=hd.offsetY,Ad=he.alignment,dg=Sc.alignment;Ad.dd()&&(ye=Ad.x,zd=Ad.offsetX);dg.dd()&&(Tc=dg.y,Ic=dg.offsetY)}else ye=hd.x,Tc=hd.y,zd=hd.offsetX,Ic=hd.offsetY;if(isNaN(ye)||isNaN(Tc))Tc=ye=.5,Ic=zd=0;var Z=Qe.width,ze=Qe.height,Re=La.margin,oi=Re.left+Re.right,pi=Re.top+Re.bottom,Jc=Ym(La,Sc,he,!1);!isNaN(La.Aa.width)||Jc!==mf&&Jc!==Bm||(Z=Math.max(ph-oi,0));!isNaN(La.Aa.height)||Jc!==mf&&Jc!==Am||(ze=Math.max(mi-pi,0));var tb=La.We,ub= -La.eg,Z=Math.min(tb.width,Z),ze=Math.min(tb.height,ze),Z=Math.max(ub.width,Z),ze=Math.max(ub.height,ze),Vk=ze+pi;h.x+=h.width*ye-(Z+oi)*ye+zd+Re.left;h.y+=h.height*Tc-Vk*Tc+Ic+Re.top;La.visible&&(Kb(wc,ni,bc,qh,h.x,h.y,Qe.width,Qe.height)?La.Lc(h.x,h.y,Z,ze):La.Lc(h.x,h.y,Z,ze,new w(wc,ni,bc,qh)))}else{La.Hi();La.Wb.Wa();var eg=La.Wb;eg.x=ie.type===Pm?nh:fd;eg.y=ie.type===Qm?oh:vf;eg.width=Qe.width;eg.height=Qe.height;La.Wb.freeze();Nm(La,!1)}}y.pk(nb);for(Db=0;Db=xf){var ri=this.XE,ig=this.WE;hg!==Ki&&(xc=this.computeAngle(Uc,hg,ig),Uc.angle=xc);eb=ri.x;Ue=ri.y}else{var jb=void 0,yc=void 0;if(0<=Ya)jb=De.o[Ya],yc=Yatj+10?0<=Ya?ke.Ec(jb):jb.Ec(ke):tj>sh+10?0<=Ya?yc.Ec(le): -le.Ec(yc):0<=Ya?ke.Ec(le):le.Ec(ke)}else ig=0<=Ya?jb.Ec(yc):yc.Ec(jb);hg!==Ki&&(xc=this.computeAngle(Uc,hg,ig),Uc.angle=xc);eb=jb.x+(yc.x-jb.x)*yf;Ue=jb.y+(yc.y-jb.y)*yf}if(Ee.N(Vb))Uc.location=new N(eb,Ue);else{Ee.Ce()&&(Ee=ec);var Cd=y.Gh();Cd.reset();Cd.scale(Uc.scale,Uc.scale);Cd.rotate(Uc.angle,0,0);var Ve=Uc.Fa,jg=y.yk(0,0,Ve.width,Ve.height),We=y.O();We.qu(jg,Ee);Cd.Cb(We);var Vc=-We.x,Tg=-We.y,Xe=Nf.copy();isNaN(Xe.x)&&(Xe.x=0<=Ya?We.x+3:-(We.x+3));isNaN(Xe.y)&&(Xe.y=-(We.y+3));Xe.rotate(ig); -eb+=Xe.x;Ue+=Xe.y;Cd.XF(jg);var Vc=Vc+jg.x,Tg=Tg+jg.y,uj=y.Tb(eb+Vc,Ue+Tg);Uc.move(uj);y.A(uj);y.A(We);y.dc(jg);y.jf(Cd)}}this instanceof da?this.qn(!1):qi.qn(!1)}break;case "Grid":break;case "TableRow":case "TableColumn":y.k(this.toString()+" is not an element of a Table Panel.TableRow and TableColumn panels can only be elements of a Table Panel.");break;default:y.k("Unknown panel type: "+t)}y.dc(h)}}; -I.prototype.lk=function(a){var b=this.Fa;if(Kb(0,0,b.width,b.height,a.x,a.y)){for(var b=this.va.o,c=b.length,d=y.Tb(0,0);c--;){var e=b[c];if(e.visible||e===this.Yb)if(vb(d.set(a),e.transform),e.Ma(d))return y.A(d),!0}y.A(d);return null===this.Nb&&null===this.uc?!1:!0}return!1};I.prototype.Ww=function(a){if(this.Ln===a)return this;for(var b=this.va.o,c=b.length,d=0;dp.width||n.y>p.height||0>n.x+n.width||0>n.y+n.height)){n=m;m=m instanceof I?m:null;p=y.Gh();p.set(h);if(null!==m?m.ok(a,b,c,d,e,p):Km(n,a,d,p))null!== -b&&(n=b(n)),null===n||null!==c&&!c(n)||e.add(n);y.jf(p)}}}void 0===g&&y.jf(h);return d}void 0===g&&y.jf(h);return!1};function jo(a,b,c,d){for(var e=a.va.o,g=e.length;g--;){var h=e[g];if(h.visible){var k=h.W,l=a.Fa;k.x>l.width||k.y>l.height||0>k.x+k.width||0>k.y+k.height||(h instanceof I&&jo(h,b,c,d),null!==b&&(h=b(h)),null===h||null!==c&&!c(h)||d.add(h))}}} -f.en=function(a,b,c,d,e,g){if(!1===this.kg)return!1;void 0===c&&(c=null);void 0===d&&(d=null);var h=this.Fa,k=this.Wg(),l=k?a:vb(y.Tb(a.x,a.y),this.transform),m=k?b:vb(y.Tb(b.x,b.y),this.transform),n=l.Bf(m),p=0s.width||r.y>s.height||0>r.x+r.width||0>r.y+r.height||(q.Wg()?(r=q.transform,vb(k.set(a),r),vb(l.set(b),r)):(k.set(a),l.set(b)),r=q,q=q instanceof I?q:null,null!==q?!q.en(k,l,c,d,e,g):!r.pE(k,l,e))||(null!==c&&(r=c(r)),null===r||null!==d&&!d(r)||g.add(r))}}y.A(k);y.A(l)}return e? -p:h}return!1};function Yn(a){var b=a.C;if(void 0===b||b===Kc)b=null;null===b&&a instanceof X&&(a=a.$a,null!==a&&(b=a.C));null===b&&(b=Zb);return b}function Zn(a){var b=a.D;if(void 0===b||b===Kc)b=null;null===b&&a instanceof X&&(a=a.$a,null!==a&&(b=a.D));null===b&&(b=mc);return b}I.prototype.add=I.prototype.add=function(a){y.l(a,O,I,"add:element");this.Qd(this.va.count,a)};I.prototype.elt=I.prototype.ea=function(a){return this.va.ea(a)}; -I.prototype.insertAt=I.prototype.Qd=function(a,b){b instanceof D&&y.k("Cannot add a Part to a Panel: "+b);if(this===b||this.Ol(b))this===b&&y.k("Cannot make a Panel contain itself: "+this.toString()),y.k("Cannot make a Panel indirectly contain itself: "+this.toString()+" already contains "+b.toString());var c=b.V;null!==c&&c!==this&&y.k("Cannot add a GraphObject that already belongs to another Panel to this Panel: "+b.toString()+", already contained by "+c.toString()+", cannot be shared by this Panel: "+ -this.toString());this.ba!==Ek||b instanceof X||y.k("Can only add Shapes to a Grid Panel, not: "+b);b.Tl(this);b.Cm=null;if(null!==this.St){var d=b.data;null!==d&&"object"===typeof d&&(null===this.tg&&(this.tg=new na(Object,I)),this.tg.add(d,b))}var e=this.va,d=-1;if(c===this){for(var g=-1,h=this.va.o,k=h.length,l=0;l=e.count&&a>=e.count)return;e.ed(g);d=g}else y.k("element "+b.toString()+" has panel "+c.toString()+" but is not contained by it.")}if(0> -a||a>e.count)a=e.count;e.Qd(a,b);this.S();b.S();null!==b.zd?this.Rh=!0:b instanceof I&&!0===b.Rh&&(this.Rh=!0);c=this.ca;null!==c&&(c.hl=null,c.Pj=NaN,this.Rh&&c instanceof E&&(c.Rh=!0),c.Rh&&(c.Fd=null),e=this.h,null!==e&&e.pa.qb||(-1!==d&&c.Rc(Wf,"elements",this,b,null,d,null),c.Rc(Vf,"elements",this,null,b,null,a)))};I.prototype.remove=I.prototype.remove=function(a){y.l(a,O,I,"remove:element");for(var b=this.va.o,c=b.length,d=-1,e=0;ea&&y.ka(a,">= 0",I,"getRowDefinition:idx");a=Math.round(a);var b=this.$d;if(void 0===b[a]){var c=new Hg;c.Tl(this);c.se=!0;c.index=a;b[a]=c}return b[a]};I.prototype.removeRowDefinition=I.prototype.kF=function(a){u&&y.p(a,I,"removeRowDefinition:idx");0>a&&y.ka(a,">= 0",I,"removeRowDefinition:idx");a=Math.round(a);var b=this.$d;this.Rc(Wf,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.S()}; -y.w(I,{ip:"columnCount"},function(){return void 0===this.Wd?0:this.Wd.length});I.prototype.getColumnDefinition=I.prototype.Od=function(a){u&&y.p(a,I,"getColumnDefinition:idx");0>a&&y.ka(a,">= 0",I,"getColumnDefinition:idx");a=Math.round(a);var b=this.Wd;if(void 0===b[a]){var c=new Hg;c.Tl(this);c.se=!1;c.index=a;b[a]=c}return b[a]}; -I.prototype.removeColumnDefinition=I.prototype.gF=function(a){u&&y.p(a,I,"removeColumnDefinition:idx");0>a&&y.ka(a,">= 0",I,"removeColumnDefinition:idx");a=Math.round(a);var b=this.Wd;this.Rc(Wf,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.S()}; -y.defineProperty(I,{cJ:"rowSizing"},function(){return void 0===this.Im?Un:this.Im},function(a){if(void 0!==this.Im){var b=this.Im;b!==a&&(a!==Un&&a!==ao&&y.k("Panel.rowSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.Im=a,this.S(),this.j("rowSizing",b,a))}}); -y.defineProperty(I,{$G:"columnSizing"},function(){return void 0===this.fm?Un:this.fm},function(a){if(void 0!==this.fm){var b=this.fm;b!==a&&(a!==Un&&a!==ao&&y.k("Panel.columnSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.fm=a,this.S(),this.j("columnSizing",b,a))}}); -y.defineProperty(I,{RF:"topIndex"},function(){return void 0===this.Yi?0:this.Yi},function(a){if(void 0!==this.Yi){var b=this.Yi;b!==a&&((!isFinite(a)||0>a)&&y.k("Panel.topIndex must be greater than zero and a real number, not: "+a),this.Yi=a,this.S(),this.j("topIndex",b,a))}}); -y.defineProperty(I,{SE:"leftIndex"},function(){return void 0===this.Li?0:this.Li},function(a){if(void 0!==this.Li){var b=this.Li;b!==a&&((!isFinite(a)||0>a)&&y.k("Panel.leftIndex must be greater than zero and a real number, not: "+a),this.Li=a,this.S(),this.j("leftIndex",b,a))}});I.prototype.findRowForLocalY=function(a){if(0>a)return-1;if(this.type!==fa)return NaN;for(var b=0,c=this.$d,d=c.length,e=this.Yi;ea)return-1;if(this.type!==fa)return NaN;for(var b=0,c=this.Wd,d=c.length,e=this.Li;e=c.elements.count&&!(c instanceof D)){if(1===c.elements.count){var d=null!==c.St;if(!d)for(var e=b.i;e.next();)if("itemArray"===e.value.xu){d=!0;break}}d||(y.trace("Auto or Spot Panel should not have zero or one elements: "+ -c.toString()+" in "+a.toString()),ko=!0)}}))}var ko=!1;I.prototype.copyTemplate=function(){var a=this.copy();a.BJ(function(a){a instanceof I&&(a.Nk=null,a.he=null);var c=a.Ac;null!==c&&(a.Ac=null,c.each(function(c){a.bind(c.copy())}))});return a}; -I.prototype.updateTargetBindings=I.prototype.Mb=function(a){var b=this.Nk;if(null!==b)for(void 0===a&&(a=""),b=b.i;b.next();){var c=b.value,d=c.JF;if(""===a||""===d||d===a)if(d=c.xu,null!==c.dH||""!==d){var d=this.data,e=c.An;if(null!==e)d=""===e?this:"."===e?this:".."===e?this:this.qe(e);else{var g=this.h;null!==g&&c.Rt&&(d=g.ha.tk)}if(null===d)u&&y.trace("Binding error: missing GraphObject named "+e+" in "+this.toString());else{var g=this,h=c.Wl;if(-1!==h){if(g=this.Ww(h),null===g)continue}else null!== -c.Cg&&(g=c.Cg);"."===e?d=g:".."===e&&(d=g.V);e=c.Ss;if(0!==e){if(!(g instanceof I))continue;h=g;1===e?g=h.Od(c.Yo):2===e&&(g=h.Pd(c.Yo))}void 0!==g&&c.aG(g,d)}}}};y.defineProperty(I,{St:"itemArray"},function(){return this.Ki},function(a){var b=this.Ki;if(b!==a){u&&null!==a&&!y.isArray(a)&&y.k("Panel.itemArray must be an Array-like object or null, not: "+a);var c=this.h;null!==c&&null!==b&&Bl(c,this);this.Ki=a;null!==c&&null!==a&&xl(c,this);this.j("itemArray",b,a);null!==c&&c.pa.qb||this.CA()}}); -function Ql(a){return a.type===Vi||a.type===Bk||a.type===Hi||a.type===fa&&0a;)this.Ue(this.va.length-1);a=this.St;if(null!==a)for(var b=y.ab(a),c=0;cc)){var d;d=lo(a,b);var e=a.lI,g=null;null!==e&&(g=e.na(d));null===g&&(mo||(mo=!0,y.trace('No item template Panel found for category "'+d+'" on '+a),y.trace(" Using default item template."),d=new I,e=new qa,e.bind(new Yg("text","",ka)),d.add(e),no=d),g=no);d=g;null!==d&&(hh(d),d=d.copy(),"object"===typeof b&&(null===a.tg&&(a.tg=new na(Object,I)),a.tg.add(b,d)),e=c,Ql(a)&&e++,a.Qd(e,d),Rl(a,e,c),d.he=null,d.data=b)}} -function Rl(a,b,c){for(a=a.va;ba&&y.ka(a,">= 0",Hg,"height"),this.df=a,this.Ta=this.kb,null!==this.V&&this.V.S(),this.ld("height",b,a))});y.defineProperty(Hg,{width:"width"},function(){return this.df},function(a){var b=this.df;b!==a&&(u&&y.g(a,"number",Hg,"width"),0>a&&y.ka(a,">= 0",Hg,"width"),this.df=a,this.Ta=this.kb,null!==this.V&&this.V.S(),this.ld("width",b,a))}); -y.defineProperty(Hg,{pj:"minimum"},function(){return this.Tj},function(a){var b=this.Tj;b!==a&&(u&&y.g(a,"number",Hg,"minimum"),(0>a||!isFinite(a))&&y.ka(a,">= 0",Hg,"minimum"),this.Tj=a,this.Ta=this.kb,null!==this.V&&this.V.S(),this.ld("minimum",b,a))});y.defineProperty(Hg,{qf:"maximum"},function(){return this.Rj},function(a){var b=this.Rj;b!==a&&(u&&y.g(a,"number",Hg,"maximum"),0>a&&y.ka(a,">= 0",Hg,"maximum"),this.Rj=a,this.Ta=this.kb,null!==this.V&&this.V.S(),this.ld("maximum",b,a))}); -y.defineProperty(Hg,{alignment:"alignment"},function(){return this.Je},function(a){var b=this.Je;b.N(a)||(u&&y.l(a,Q,Hg,"alignment"),this.Je=a.U(),null!==this.V&&this.V.S(),this.ld("alignment",b,a))});y.defineProperty(Hg,{stretch:"stretch"},function(){return this.fi},function(a){var b=this.fi;b!==a&&(u&&y.Ba(a,O,Hg,"stretch"),this.fi=a,null!==this.V&&this.V.S(),this.ld("stretch",b,a))}); -y.defineProperty(Hg,{CF:"separatorPadding"},function(){return this.Yj},function(a){"number"===typeof a?a=new Eb(a):null!==a&&u&&y.l(a,Eb,Hg,"separatorPadding");var b=this.Yj;null!==a&&null!==b&&b.N(a)||(null!==a&&(a=a.U()),this.Yj=a,null!==this.V&&this.V.S(),this.ld("separatorPadding",b,a))}); -y.defineProperty(Hg,{$p:"separatorStroke"},function(){return this.Es},function(a){var b=this.Es;b!==a&&(null===a||"string"===typeof a||a instanceof Da)&&(a instanceof Da&&a.freeze(),this.Es=a,null!==this.V&&this.V.S(),this.ld("separatorStroke",b,a))});y.defineProperty(Hg,{aq:"separatorStrokeWidth"},function(){return this.Fs},function(a){var b=this.Fs;b!==a&&(this.Fs=a,null!==this.V&&this.V.S(),this.ld("separatorStrokeWidth",b,a))}); -y.defineProperty(Hg,{gJ:"separatorDashArray"},function(){return this.Yh},function(a){var b=this.Yh;if(b!==a){null===a||Array.isArray(a)||y.jc(a,"Array",Hg,"separatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;ee)){for(var g=d.Ia,h=Math.max(1,g.width),g=g.height,k=c[0],l=c[1],m=0,n=0,p=0,q=0,r=0,s=0,t=q=0,v=y.rb(),x=2;xp&&(p=1);c=p;for(var e=0,m=c,n=h/2,x=0===n?!1:!0,z=0,q=v[z],p=q[0],s=q[1],r=q[2],q=q[3],A=0;.1<=t;){0===A&&(x?(m=c,e++,m-=n,t-=n,x=!1):(m=c,e++),0===m&&(m=1));if(m>t){y.xa(v); -return}m>q?(A=m-q,m=q):A=0;var B=Math.sqrt(m*m/(1+r*r));0>p&&(B=-B);k+=B;l+=r*B;a.translate(k,l);a.rotate(s);a.translate(-(h/2),-(g/2));0===A&&d.nk(a,b);a.translate(h/2,g/2);a.rotate(-s);a.translate(-k,-l);t-=m;q-=m;if(0!==A){z++;if(z===v.length){y.xa(v);return}q=v[z];p=q[0];s=q[1];r=q[2];q=q[3];m=A}}y.xa(v)}} -X.prototype.nk=function(a,b){if(null!==this.Kc||null!==this.Cd){null!==this.Cd&&Tm(this,a,this.Cd,!0,!1);null!==this.Kc&&Tm(this,a,this.Kc,!1,!1);var c=this.Pe;if(0===c){var d=this.ca;d instanceof da&&d.type===Hi&&"Selection"===d.oc&&d.fc instanceof X&&d.Yf.gf()===d.fc&&(c=d.fc.ub)}a.lineWidth=c;a.lineJoin=this.Wo;a.lineCap=this.Uo;a.miterLimit=this.Mm;var e=!1;this.ca&&b.ij("drawShadows")&&(e=this.ca.sk);var g=!0;null!==this.Kc&&null===this.Cd&&(g=!1);var d=!1,h=!0,k=this.LF;null!==k&&(d=!0,void 0!== -a.setLineDash?(a.setLineDash(k),a.lineDashOffset=this.vd):void 0!==a.webkitLineDash?(a.webkitLineDash=k,a.webkitLineDashOffset=this.vd):void 0!==a.mozDash?(a.mozDash=k,a.mozDashOffset=this.vd):h=!1);var l=this.$a;if(null!==l){if(l.ba===nf)a.beginPath(),d&&!h?Gm(a,l.xc,l.Cc,l.zb,l.Gb,k,this.vd):(a.moveTo(l.xc,l.Cc),a.lineTo(l.zb,l.Gb)),null!==this.Cd&&a.Hg(this.Cd),0!==c&&null!==this.Kc&&a.tj();else if(l.ba===of){var m=l.xc,n=l.Cc,p=l.zb,q=l.Gb,l=Math.min(m,p),r=Math.min(n,q),m=Math.abs(p-m),n=Math.abs(q- -n);null!==this.Cd&&(a.beginPath(),a.rect(l,r,m,n),a.Hg(this.Cd));if(null!==this.Kc){var s=p=0,t=0;g&&e&&(p=a.shadowOffsetX,s=a.shadowOffsetY,t=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY=0,a.shadowBlur=0);d&&!h?(h=y.rb(),h.push(l),h.push(r),h.push(l+m),h.push(r),h.push(l+m),h.push(r+n),h.push(l),h.push(r+n),h.push(l),h.push(r),a.beginPath(),qo(a,h,k,this.vd),a.tj(),y.xa(h)):0!==c&&(a.beginPath(),a.rect(l,r,m,n),a.tj());g&&e&&(a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=t)}}else if(l.ba=== -pf)m=l.xc,n=l.Cc,p=l.zb,q=l.Gb,l=Math.abs(p-m)/2,r=Math.abs(q-n)/2,m=Math.min(m,p)+l,n=Math.min(n,q)+r,a.beginPath(),a.moveTo(m,n-r),a.bezierCurveTo(m+Ed*l,n-r,m+l,n-Ed*r,m+l,n),a.bezierCurveTo(m+l,n+Ed*r,m+Ed*l,n+r,m,n+r),a.bezierCurveTo(m-Ed*l,n+r,m-l,n+Ed*r,m-l,n),a.bezierCurveTo(m-l,n-Ed*r,m-Ed*l,n-r,m,n-r),a.closePath(),null!==this.Cd&&a.Hg(this.Cd),d&&!h&&(h=y.rb(),re(m,n-r,m+Ed*l,n-r,m+l,n-Ed*r,m+l,n,.5,h),re(m+l,n,m+l,n+Ed*r,m+Ed*l,n+r,m,n+r,.5,h),re(m,n+r,m-Ed*l,n+r,m-l,n+Ed*r,m-l,n,.5,h), -re(m-l,n,m-l,n-Ed*r,m-Ed*l,n-r,m,n-r,.5,h),a.beginPath(),qo(a,h,k,this.vd),y.xa(h)),0!==c&&null!==this.Kc&&(g&&e?(p=a.shadowOffsetX,s=a.shadowOffsetY,t=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY=0,a.shadowBlur=0,a.tj(),a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=t):a.tj());else if(l.ba===kf){r=l.Bj;n=r.length;for(q=0;qx.Mf);else{var v=Jf(x,m),z=v.length;if(0===z){a.lineTo(x.ra,x.za);break}for(var A=0;Ae)){var g=.001,h=c.length,k=b[0],l=b[1];if(4===e)Gm(a,k,l,b[2],b[3],c,d);else{a.moveTo(k,l);for(var m=g=0,n=0,p=0,q=0,r=p=0,s=y.rb(),t=2;tr&&(g=r);g>p?(v=g-p,g=p):v=0;var x=Math.sqrt(g*g/(1+q*q));0>n&&(x=-x);k+=x;l+= -q*x;e?a.lineTo(k,l):a.moveTo(k,l);r-=g;p-=g;if(0!==v){t++;if(t===s.length){y.xa(s);return}p=s[t];n=p[0];q=p[1];p=p[2];g=v}else e=!e}y.xa(s)}}}X.prototype.getDocumentPoint=X.prototype.eb=function(a,b){void 0===b&&(b=new N);a.Ce()&&y.k("getDocumentPoint Spot must be a real, specific Spot, not: "+a.toString());var c=this.Fa,d=this.ub;b.n(a.x*(c.width+d)-d/2+c.x+a.offsetX,a.y*(c.height+d)-d/2+c.y+a.offsetY);this.qh.Cb(b);return b}; -X.prototype.lk=function(a,b){var c=this.$a;if(null===c||null===this.fill&&null===this.stroke)return!1;var d=c.vb,e=this.ub/2;c.type!==nf||b||(e+=2);var g=y.mg();g.assign(d);g.cg(e+2,e+2);if(!g.Ma(a))return y.dc(g),!1;d=e+1E-4;if(c.type===nf){if(null===this.stroke)return!1;d=(c.L-c.Ga)*(a.x-c.Ga)+(c.M-c.Ca)*(a.y-c.Ca);if(0>(c.Ga-c.L)*(a.x-c.L)+(c.Ca-c.M)*(a.y-c.M)||0>d)return!1;y.dc(g);return oe(c.Ga,c.Ca,c.L,c.M,e,a.x,a.y)}if(c.type===of){var h=c.Ga,k=c.Ca,l=c.L,m=c.M;g.x=Math.min(h,l);g.y=Math.min(k, -m);g.width=Math.abs(l-h);g.height=Math.abs(m-k);if(null===this.fill){g.cg(-d,-d);if(g.Ma(a))return y.dc(g),!1;g.cg(d,d)}null!==this.stroke&&g.cg(e,e);e=g.Ma(a);y.dc(g);return e}if(c.type===pf){var h=c.Ga,k=c.Ca,l=c.L,m=c.M,c=Math.min(h,l),n=Math.min(k,m),h=Math.abs(l-h)/2,k=Math.abs(m-k)/2,c=a.x-(c+h),n=a.y-(n+k);if(null===this.fill){h-=d;k-=d;if(0>=h||0>=k||1>=c*c/(h*h)+n*n/(k*k))return y.dc(g),!1;h+=d;k+=d}null!==this.stroke&&(h+=e,k+=e);y.dc(g);return 0>=h||0>=k?!1:1>=c*c/(h*h)+n*n/(k*k)}if(c.type=== -kf)return y.dc(g),null===this.fill?Of(c,a.x,a.y,e):c.Ma(a,e,1kd&&(Kc=Math.max(kd-ld,0));var rh=0===Z.Oa;Z.Oa+=Kc;kd=Math.max(kd-(Kc+(rh?ld:0)),0)}1!==fa.wi||Uc!==Xi&&Uc!==Am||(Z=this.Md(wc),ld=Z.xf(),Kc=Math.max(Te-Z.Oa,0),Kc+ld>xc&&(Kc=Math.max(xc-ld,0)),rh=0===Z.Oa,Z.Oa+=Kc,xc=Math.max(xc-(Kc+(rh?ld:0)),0));Sg&& +fa.Bp()}}}z.xa(qh);for(var Be=0,Ce=0,La=this.ip,ha=0;ha=this.Zp);eb++)Z=this.Nd(fa.Vb+eb),Nf.height+=Math.max(Z.oj,isNaN(Z.cf)?Z.pf:Math.min(Z.cf,Z.pf));for(eb=1;eb=this.ip);eb++)Z=this.Md(fa.column+eb),Nf.width+=Math.max(Z.oj,isNaN(Z.cf)?Z.pf:Math.min(Z.cf,Z.pf));Wa.width+= +Nf.width;Wa.height+=Nf.height;Wb=fa.margin;fg=Wb.right+Wb.left;gg=Wb.top+Wb.bottom;oj(fa,Wa.width,Wa.height,Qg,sj);for(var Se=fa.Ia,Te=Math.max(Se.width+fg,0),Cd=Math.max(Se.height+gg,0),Ue=0,eb=0;eb=this.Zp);eb++)Z=this.Nd(fa.Vb+eb),Ue+=Z.total||0;if(Ue=yc)&&!(fa.Vb+eb>=this.Zp);eb++){var Z=this.Nd(fa.Vb+eb),jb=Z.kb||0,zc=ig(fa,Z,ri);u&&"number"!==typeof zc&&z.k(fa+" spanAllocation does not return a number: "+ +zc);Z.Oa=Math.min(Z.pf,jb+zc);Z.kb!==jb&&(yc-=Z.kb-jb)}for(;0jb&&(Z.Oa=Math.min(Z.pf,jb+yc),Z.kb!==jb&&(yc-=Z.kb-jb));if(0===Z.index)break;Z=this.Nd(Z.index-1)}}for(var Fe=0,eb=0;eb=this.ip);eb++)Z=this.Md(fa.column+eb),Fe+=Z.total||0;if(Fe=yc)&&!(fa.column+eb>=this.ip);eb++)Z=this.Md(fa.column+eb),jb=Z.kb||0,zc=ig(fa,Z,ri),u&&"number"!==typeof zc&&z.k(fa+" spanAllocation does not return a number: "+ +zc),Z.Oa=Math.min(Z.pf,jb+zc),Z.kb!==jb&&(yc-=Z.kb-jb);for(;0jb&&(Z.Oa=Math.min(Z.pf,jb+yc),Z.kb!==jb&&(yc-=Z.kb-jb));if(0===Z.index)break;Z=this.Md(Z.index-1)}}}z.xa(id);z.pk(Nf);z.pk(Wa);for(var ke=0,le=0,Uc=Lm(this,!0),sh=this.Aa,tj=this.Ve,Dd=Ce=Be=0,Ve=0,La=this.ip,ha=0;haUg)oj(Xb,Infinity,Infinity),me=Xb.Ia,Ze.qi(me),this.Zg.add(me); +else{var md=Xb.De,er=Xb.NA,vn=Xb.jk;vn.Be()&&(vn=ec);var yj=Xb.pu,jt=Xb.CF,zj=0,Aj=0,dl=0;if(md<-Ug||md>=Ug){var fr=kg.$E,ti=kg.ZE;yj!==Ki&&(dl=kg.computeAngle(Xb,yj,ti),Xb.am=dl);zj=fr.x-lg.x;Aj=fr.y-lg.y}else{var Ed,$e;if(0<=md)Ed=mg.ea(md),$e=mdhr+10?0<=md? +vh.Ec(Ed):Ed.Ec(vh):hr>gr+10?0<=md?$e.Ec(wh):wh.Ec($e):0<=md?vh.Ec(wh):wh.Ec(vh)}else ti=0<=md?Ed.Ec($e):$e.Ec(Ed);yj!==Ki&&(dl=kg.computeAngle(Xb,yj,ti),Xb.am=dl);zj=Ed.x+($e.x-Ed.x)*er-lg.x;Aj=Ed.y+($e.y-Ed.y)*er-lg.y}oj(Xb,Infinity,Infinity);var me=Xb.Ia,bl=Xb.Ga,Bj=0;Xb instanceof X&&(Bj=Xb.ub);var el=bl.width+Bj,wn=bl.height+Bj;si.reset();si.translate(-me.x,-me.y);si.scale(Xb.scale,Xb.scale);si.rotate(yj===Ki?Xb.angle:ti,el/2,wn/2);var ui=new w(0,0,el,wn);xj.ru(ui,vn);si.Cb(xj);var kt=-xj.x+ +Bj/2,lt=-xj.y+Bj/2;ng.assign(jt);isNaN(ng.x)&&(ng.x=0<=md?el/2+3:-(el/2+3));isNaN(ng.y)&&(ng.y=-(wn/2+3));ng.rotate(ti);zj+=ng.x;Aj+=ng.y;ui.set(me);ui.x=zj+kt;ui.y=Aj+lt;this.Zg.add(ui);Ze.qi(ui)}}if(this.Ke)for(var ir=this.Hf;ir.next();)oj(ir.value,Infinity,Infinity);this.Xi=Ze;var xn=this.Ki;xn.n(xn.x+Ze.x,xn.y+Ze.y);zb(e,Ze.width||0,Ze.height||0);z.hf(si);z.A(xj);z.A(ng)}break;case "Grid":break;case "TableRow":case "TableColumn":z.k(this.toString()+" is not an element of a Table Panel. TableRow and TableColumn Panels can only be elements of a Table Panel."); +break;default:z.k("Unknown panel type: "+n)}}var af=e.width,bf=e.height,fl=this.padding,mt=fl.top+fl.bottom,af=af+(fl.left+fl.right),bf=bf+mt;isFinite(g.width)&&(af=g.width);isFinite(g.height)&&(bf=g.height);af=Math.min(k.width,af);bf=Math.min(k.height,bf);af=Math.max(h.width,af);bf=Math.max(h.height,bf);af=Math.max(c,af);bf=Math.max(d,bf);e.width=af;e.height=bf;zb(this.Wc,af,bf);Im(this,0,0,af,bf)}; +I.prototype.findMainElement=I.prototype.ff=function(){if(null===this.Mm){var a=this.va.o,b=a.length;if(0===b)return null;for(var c=0;cc||p>d)this.S(),oj(this,n>c?c:n,p>d?d:p);break;case mf:this.S(!0);oj(this,c+r,d+s,0,0);break;case Bm:this.S(!0);oj(this,c+r,p+s,0,0);break;case Am:this.S(!0),oj(this,n+r,d+s,0,0)}}k=this.W;k.x=a;k.y=b; +k.width=c;k.height=d;var t=this.ba.Ub;switch(t){case "Position":for(var v=g.length,x=e.x-this.padding.left,y=e.y-this.padding.top,A=0;A=this.Zp);ha++){var fa=this.Nd(Db+ha);ob.height+=fa.total}for(ha=1;ha=this.ip);ha++){var hd=this.Md(Sd+ha);ob.width+=hd.total}var ph=ie.kb+ob.width,mi=Tc.kb+ob.height;h.x=gd;h.y=vf;h.width=ph;h.height=mi;var wc=gd,ni=vf,bc=ph,qh=mi;gd+ph>e.width&&(bc=Math.max(e.width-gd,0));vf+mi>e.height&&(qh=Math.max(e.height-vf,0));var id=La.alignment,ye=0,Jc=0,jd=0,xc=0;if(id.cd()){id= +this.Al;id.dd()||(id=ec);var ye=id.x,Jc=id.y,jd=id.offsetX,xc=id.offsetY,kd=ie.alignment,dg=Tc.alignment;kd.dd()&&(ye=kd.x,jd=kd.offsetX);dg.dd()&&(Jc=dg.y,xc=dg.offsetY)}else ye=id.x,Jc=id.y,jd=id.offsetX,xc=id.offsetY;if(isNaN(ye)||isNaN(Jc))Jc=ye=.5,xc=jd=0;var Z=Qe.width,ze=Qe.height,Re=La.margin,oi=Re.left+Re.right,pi=Re.top+Re.bottom,Kc=Ym(La,Tc,ie,!1);!isNaN(La.Aa.width)||Kc!==mf&&Kc!==Bm||(Z=Math.max(ph-oi,0));!isNaN(La.Aa.height)||Kc!==mf&&Kc!==Am||(ze=Math.max(mi-pi,0));var rb=La.Ve,sb= +La.dg,Z=Math.min(rb.width,Z),ze=Math.min(rb.height,ze),Z=Math.max(sb.width,Z),ze=Math.max(sb.height,ze),Vk=ze+pi;h.x+=h.width*ye-(Z+oi)*ye+jd+Re.left;h.y+=h.height*Jc-Vk*Jc+xc+Re.top;La.visible&&(Kb(wc,ni,bc,qh,h.x,h.y,Qe.width,Qe.height)?La.Lc(h.x,h.y,Z,ze):La.Lc(h.x,h.y,Z,ze,new w(wc,ni,bc,qh)))}else{La.Fi();La.Xb.Wa();var eg=La.Xb;eg.x=je.type===Pm?nh:gd;eg.y=je.type===Qm?oh:vf;eg.width=Qe.width;eg.height=Qe.height;La.Xb.freeze();Nm(La,!1)}}z.pk(ob);for(Db=0;Db=xf){var ri=this.$E,ig=this.ZE;hg!==Ki&&(yc=this.computeAngle(Vc,hg,ig),Vc.angle=yc);eb=ri.x;Ue=ri.y}else{var jb=void 0,zc=void 0;if(0<=Wa)jb=De.o[Wa],zc=Watj+10?0<=Wa?ke.Ec(jb):jb.Ec(ke):tj>sh+10?0<=Wa?zc.Ec(le): +le.Ec(zc):0<=Wa?ke.Ec(le):le.Ec(ke)}else ig=0<=Wa?jb.Ec(zc):zc.Ec(jb);hg!==Ki&&(yc=this.computeAngle(Vc,hg,ig),Vc.angle=yc);eb=jb.x+(zc.x-jb.x)*yf;Ue=jb.y+(zc.y-jb.y)*yf}if(Ee.N(Yb))Vc.location=new N(eb,Ue);else{Ee.Be()&&(Ee=ec);var Dd=z.Fh();Dd.reset();Dd.scale(Vc.scale,Vc.scale);Dd.rotate(Vc.angle,0,0);var Ve=Vc.Ga,jg=z.yk(0,0,Ve.width,Ve.height),We=z.O();We.ru(jg,Ee);Dd.Cb(We);var Wc=-We.x,Tg=-We.y,Xe=Nf.copy();isNaN(Xe.x)&&(Xe.x=0<=Wa?We.x+3:-(We.x+3));isNaN(Xe.y)&&(Xe.y=-(We.y+3));Xe.rotate(ig); +eb+=Xe.x;Ue+=Xe.y;Dd.$F(jg);var Wc=Wc+jg.x,Tg=Tg+jg.y,uj=z.Tb(eb+Wc,Ue+Tg);Vc.move(uj);z.A(uj);z.A(We);z.dc(jg);z.hf(Dd)}}this instanceof da?this.qn(!1):qi.qn(!1)}break;case "Grid":break;case "TableRow":case "TableColumn":z.k(this.toString()+" is not an element of a Table Panel.TableRow and TableColumn panels can only be elements of a Table Panel.");break;default:z.k("Unknown panel type: "+t)}z.dc(h)}}; +I.prototype.lk=function(a){var b=this.Ga;if(Kb(0,0,b.width,b.height,a.x,a.y)){for(var b=this.va.o,c=b.length,d=z.Tb(0,0);c--;){var e=b[c];if(e.visible||e===this.Zb)if(vb(d.set(a),e.transform),e.Ma(d))return z.A(d),!0}z.A(d);return null===this.Nb&&null===this.uc?!1:!0}return!1};I.prototype.Xw=function(a){if(this.Ln===a)return this;for(var b=this.va.o,c=b.length,d=0;dp.width||n.y>p.height||0>n.x+n.width||0>n.y+n.height)){n=m;m=m instanceof I?m:null;p=z.Fh();p.set(h);if(null!==m?m.ok(a,b,c,d,e,p):Km(n,a,d,p))null!== +b&&(n=b(n)),null===n||null!==c&&!c(n)||e.add(n);z.hf(p)}}}void 0===g&&z.hf(h);return d}void 0===g&&z.hf(h);return!1};function jo(a,b,c,d){for(var e=a.va.o,g=e.length;g--;){var h=e[g];if(h.visible){var k=h.W,l=a.Ga;k.x>l.width||k.y>l.height||0>k.x+k.width||0>k.y+k.height||(h instanceof I&&jo(h,b,c,d),null!==b&&(h=b(h)),null===h||null!==c&&!c(h)||d.add(h))}}} +f.en=function(a,b,c,d,e,g){if(!1===this.jg)return!1;void 0===c&&(c=null);void 0===d&&(d=null);var h=this.Ga,k=this.Vg(),l=k?a:vb(z.Tb(a.x,a.y),this.transform),m=k?b:vb(z.Tb(b.x,b.y),this.transform),n=l.Af(m),p=0s.width||r.y>s.height||0>r.x+r.width||0>r.y+r.height||(q.Vg()?(r=q.transform,vb(k.set(a),r),vb(l.set(b),r)):(k.set(a),l.set(b)),r=q,q=q instanceof I?q:null,null!==q?!q.en(k,l,c,d,e,g):!r.sE(k,l,e))||(null!==c&&(r=c(r)),null===r||null!==d&&!d(r)||g.add(r))}}z.A(k);z.A(l)}return e? +p:h}return!1};function Yn(a){var b=a.C;if(void 0===b||b===Lc)b=null;null===b&&a instanceof X&&(a=a.$a,null!==a&&(b=a.C));null===b&&(b=Zb);return b}function Zn(a){var b=a.D;if(void 0===b||b===Lc)b=null;null===b&&a instanceof X&&(a=a.$a,null!==a&&(b=a.D));null===b&&(b=ic);return b}I.prototype.add=I.prototype.add=function(a){z.l(a,O,I,"add:element");this.Od(this.va.count,a)};I.prototype.elt=I.prototype.ea=function(a){return this.va.ea(a)}; +I.prototype.insertAt=I.prototype.Od=function(a,b){b instanceof D&&z.k("Cannot add a Part to a Panel: "+b);if(this===b||this.Ol(b))this===b&&z.k("Cannot make a Panel contain itself: "+this.toString()),z.k("Cannot make a Panel indirectly contain itself: "+this.toString()+" already contains "+b.toString());var c=b.U;null!==c&&c!==this&&z.k("Cannot add a GraphObject that already belongs to another Panel to this Panel: "+b.toString()+", already contained by "+c.toString()+", cannot be shared by this Panel: "+ +this.toString());this.ba!==Ek||b instanceof X||z.k("Can only add Shapes to a Grid Panel, not: "+b);b.Sl(this);b.Bm=null;if(null!==this.Tt){var d=b.data;null!==d&&"object"===typeof d&&(null===this.sg&&(this.sg=new na(Object,I)),this.sg.add(d,b))}var e=this.va,d=-1;if(c===this){for(var g=-1,h=this.va.o,k=h.length,l=0;l=e.count&&a>=e.count)return;e.ed(g);d=g}else z.k("element "+b.toString()+" has panel "+c.toString()+" but is not contained by it.")}if(0> +a||a>e.count)a=e.count;e.Od(a,b);this.S();b.S();null!==b.yd?this.Ph=!0:b instanceof I&&!0===b.Ph&&(this.Ph=!0);c=this.ca;null!==c&&(c.hl=null,c.Pj=NaN,this.Ph&&c instanceof E&&(c.Ph=!0),c.Ph&&(c.Ed=null),e=this.h,null!==e&&e.pa.qb||(-1!==d&&c.Rc(Wf,"elements",this,b,null,d,null),c.Rc(Vf,"elements",this,null,b,null,a)))};I.prototype.remove=I.prototype.remove=function(a){z.l(a,O,I,"remove:element");for(var b=this.va.o,c=b.length,d=-1,e=0;ea&&z.ka(a,">= 0",I,"getRowDefinition:idx");a=Math.round(a);var b=this.Yd;if(void 0===b[a]){var c=new Hg;c.Sl(this);c.qe=!0;c.index=a;b[a]=c}return b[a]};I.prototype.removeRowDefinition=I.prototype.nF=function(a){u&&z.p(a,I,"removeRowDefinition:idx");0>a&&z.ka(a,">= 0",I,"removeRowDefinition:idx");a=Math.round(a);var b=this.Yd;this.Rc(Wf,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.S()}; +z.w(I,{ip:"columnCount"},function(){return void 0===this.Ud?0:this.Ud.length});I.prototype.getColumnDefinition=I.prototype.Md=function(a){u&&z.p(a,I,"getColumnDefinition:idx");0>a&&z.ka(a,">= 0",I,"getColumnDefinition:idx");a=Math.round(a);var b=this.Ud;if(void 0===b[a]){var c=new Hg;c.Sl(this);c.qe=!1;c.index=a;b[a]=c}return b[a]}; +I.prototype.removeColumnDefinition=I.prototype.jF=function(a){u&&z.p(a,I,"removeColumnDefinition:idx");0>a&&z.ka(a,">= 0",I,"removeColumnDefinition:idx");a=Math.round(a);var b=this.Ud;this.Rc(Wf,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.S()}; +z.defineProperty(I,{eJ:"rowSizing"},function(){return void 0===this.Hm?Un:this.Hm},function(a){if(void 0!==this.Hm){var b=this.Hm;b!==a&&(a!==Un&&a!==ao&&z.k("Panel.rowSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.Hm=a,this.S(),this.j("rowSizing",b,a))}}); +z.defineProperty(I,{bH:"columnSizing"},function(){return void 0===this.em?Un:this.em},function(a){if(void 0!==this.em){var b=this.em;b!==a&&(a!==Un&&a!==ao&&z.k("Panel.columnSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.em=a,this.S(),this.j("columnSizing",b,a))}}); +z.defineProperty(I,{UF:"topIndex"},function(){return void 0===this.Wi?0:this.Wi},function(a){if(void 0!==this.Wi){var b=this.Wi;b!==a&&((!isFinite(a)||0>a)&&z.k("Panel.topIndex must be greater than zero and a real number, not: "+a),this.Wi=a,this.S(),this.j("topIndex",b,a))}}); +z.defineProperty(I,{VE:"leftIndex"},function(){return void 0===this.Ji?0:this.Ji},function(a){if(void 0!==this.Ji){var b=this.Ji;b!==a&&((!isFinite(a)||0>a)&&z.k("Panel.leftIndex must be greater than zero and a real number, not: "+a),this.Ji=a,this.S(),this.j("leftIndex",b,a))}});I.prototype.findRowForLocalY=function(a){if(0>a)return-1;if(this.type!==ga)return NaN;for(var b=0,c=this.Yd,d=c.length,e=this.Wi;ea)return-1;if(this.type!==ga)return NaN;for(var b=0,c=this.Ud,d=c.length,e=this.Ji;e=c.elements.count&&!(c instanceof D)){if(1===c.elements.count){var d=null!==c.Tt;if(!d)for(var e=b.i;e.next();)if("itemArray"===e.value.yu){d=!0;break}}d||(z.trace("Auto or Spot Panel should not have zero or one elements: "+ +c.toString()+" in "+a.toString()),ko=!0)}}))}var ko=!1;I.prototype.copyTemplate=function(){var a=this.copy();a.DJ(function(a){a instanceof I&&(a.Nk=null,a.fe=null);var c=a.Ac;null!==c&&(a.Ac=null,c.each(function(c){a.bind(c.copy())}))});return a}; +I.prototype.updateTargetBindings=I.prototype.Mb=function(a){var b=this.Nk;if(null!==b)for(void 0===a&&(a=""),b=b.i;b.next();){var c=b.value,d=c.MF;if(""===a||""===d||d===a)if(d=c.yu,null!==c.fH||""!==d){var d=this.data,e=c.An;if(null!==e)d=""===e?this:"."===e?this:".."===e?this:this.oe(e);else{var g=this.h;null!==g&&c.St&&(d=g.ha.tk)}if(null===d)u&&z.trace("Binding error: missing GraphObject named "+e+" in "+this.toString());else{var g=this,h=c.Vl;if(-1!==h){if(g=this.Xw(h),null===g)continue}else null!== +c.Bg&&(g=c.Bg);"."===e?d=g:".."===e&&(d=g.U);e=c.Ts;if(0!==e){if(!(g instanceof I))continue;h=g;1===e?g=h.Md(c.Yo):2===e&&(g=h.Nd(c.Yo))}void 0!==g&&c.dG(g,d)}}}};z.defineProperty(I,{Tt:"itemArray"},function(){return this.Ii},function(a){var b=this.Ii;if(b!==a){u&&null!==a&&!z.isArray(a)&&z.k("Panel.itemArray must be an Array-like object or null, not: "+a);var c=this.h;null!==c&&null!==b&&Bl(c,this);this.Ii=a;null!==c&&null!==a&&xl(c,this);this.j("itemArray",b,a);null!==c&&c.pa.qb||this.GA()}}); +function Ql(a){return a.type===Vi||a.type===Bk||a.type===Hi||a.type===ga&&0a;)this.Te(this.va.length-1);a=this.Tt;if(null!==a)for(var b=z.ab(a),c=0;cc)){var d;d=lo(a,b);var e=a.nI,g=null;null!==e&&(g=e.na(d));null===g&&(mo||(mo=!0,z.trace('No item template Panel found for category "'+d+'" on '+a),z.trace(" Using default item template."),d=new I,e=new qa,e.bind(new Yg("text","",ka)),d.add(e),no=d),g=no);d=g;null!==d&&(hh(d),d=d.copy(),"object"===typeof b&&(null===a.sg&&(a.sg=new na(Object,I)),a.sg.add(b,d)),e=c,Ql(a)&&e++,a.Od(e,d),Rl(a,e,c),d.fe=null,d.data=b)}} +function Rl(a,b,c){for(a=a.va;ba&&z.ka(a,">= 0",Hg,"height"),this.cf=a,this.Oa=this.kb,null!==this.U&&this.U.S(),this.ld("height",b,a))});z.defineProperty(Hg,{width:"width"},function(){return this.cf},function(a){var b=this.cf;b!==a&&(u&&z.g(a,"number",Hg,"width"),0>a&&z.ka(a,">= 0",Hg,"width"),this.cf=a,this.Oa=this.kb,null!==this.U&&this.U.S(),this.ld("width",b,a))}); +z.defineProperty(Hg,{oj:"minimum"},function(){return this.Tj},function(a){var b=this.Tj;b!==a&&(u&&z.g(a,"number",Hg,"minimum"),(0>a||!isFinite(a))&&z.ka(a,">= 0",Hg,"minimum"),this.Tj=a,this.Oa=this.kb,null!==this.U&&this.U.S(),this.ld("minimum",b,a))});z.defineProperty(Hg,{pf:"maximum"},function(){return this.Rj},function(a){var b=this.Rj;b!==a&&(u&&z.g(a,"number",Hg,"maximum"),0>a&&z.ka(a,">= 0",Hg,"maximum"),this.Rj=a,this.Oa=this.kb,null!==this.U&&this.U.S(),this.ld("maximum",b,a))}); +z.defineProperty(Hg,{alignment:"alignment"},function(){return this.Ie},function(a){var b=this.Ie;b.N(a)||(u&&z.l(a,Q,Hg,"alignment"),this.Ie=a.V(),null!==this.U&&this.U.S(),this.ld("alignment",b,a))});z.defineProperty(Hg,{stretch:"stretch"},function(){return this.di},function(a){var b=this.di;b!==a&&(u&&z.Ba(a,O,Hg,"stretch"),this.di=a,null!==this.U&&this.U.S(),this.ld("stretch",b,a))}); +z.defineProperty(Hg,{FF:"separatorPadding"},function(){return this.Yj},function(a){"number"===typeof a?a=new Eb(a):null!==a&&u&&z.l(a,Eb,Hg,"separatorPadding");var b=this.Yj;null!==a&&null!==b&&b.N(a)||(null!==a&&(a=a.V()),this.Yj=a,null!==this.U&&this.U.S(),this.ld("separatorPadding",b,a))}); +z.defineProperty(Hg,{$p:"separatorStroke"},function(){return this.Fs},function(a){var b=this.Fs;b!==a&&(null===a||"string"===typeof a||a instanceof Da)&&(a instanceof Da&&a.freeze(),this.Fs=a,null!==this.U&&this.U.S(),this.ld("separatorStroke",b,a))});z.defineProperty(Hg,{aq:"separatorStrokeWidth"},function(){return this.Gs},function(a){var b=this.Gs;b!==a&&(this.Gs=a,null!==this.U&&this.U.S(),this.ld("separatorStrokeWidth",b,a))}); +z.defineProperty(Hg,{iJ:"separatorDashArray"},function(){return this.Wh},function(a){var b=this.Wh;if(b!==a){null===a||Array.isArray(a)||z.jc(a,"Array",Hg,"separatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;ee)){for(var g=d.Ia,h=Math.max(1,g.width),g=g.height,k=c[0],l=c[1],m=0,n=0,p=0,q=0,r=0,s=0,t=q=0,v=z.rb(),x=2;xp&&(p=1);c=p;for(var e=0,m=c,n=h/2,x=0===n?!1:!0,y=0,q=v[y],p=q[0],s=q[1],r=q[2],q=q[3],A=0;.1<=t;){0===A&&(x?(m=c,e++,m-=n,t-=n,x=!1):(m=c,e++),0===m&&(m=1));if(m>t){z.xa(v); +return}m>q?(A=m-q,m=q):A=0;var B=Math.sqrt(m*m/(1+r*r));0>p&&(B=-B);k+=B;l+=r*B;a.translate(k,l);a.rotate(s);a.translate(-(h/2),-(g/2));0===A&&d.nk(a,b);a.translate(h/2,g/2);a.rotate(-s);a.translate(-k,-l);t-=m;q-=m;if(0!==A){y++;if(y===v.length){z.xa(v);return}q=v[y];p=q[0];s=q[1];r=q[2];q=q[3];m=A}}z.xa(v)}} +X.prototype.nk=function(a,b){if(null!==this.Kc||null!==this.Bd){null!==this.Bd&&Tm(this,a,this.Bd,!0,!1);null!==this.Kc&&Tm(this,a,this.Kc,!1,!1);var c=this.Oe;if(0===c){var d=this.ca;d instanceof da&&d.type===Hi&&"Selection"===d.oc&&d.fc instanceof X&&d.Xf.ff()===d.fc&&(c=d.fc.ub)}a.lineWidth=c;a.lineJoin=this.Wo;a.lineCap=this.Uo;a.miterLimit=this.Lm;var e=!1;this.ca&&b.gj("drawShadows")&&(e=this.ca.sk);var g=!0;null!==this.Kc&&null===this.Bd&&(g=!1);var d=!1,h=!0,k=this.OF;null!==k&&(d=!0,h=a.Tz(k, +this.ve));var l=this.$a;if(null!==l){if(l.ba===nf)a.beginPath(),d&&!h?Gm(a,l.xc,l.Cc,l.zb,l.Gb,k,this.ve):(a.moveTo(l.xc,l.Cc),a.lineTo(l.zb,l.Gb)),null!==this.Bd&&a.Gg(this.Bd),0!==c&&null!==this.Kc&&a.sj();else if(l.ba===of){var m=l.xc,n=l.Cc,p=l.zb,q=l.Gb,l=Math.min(m,p),r=Math.min(n,q),m=Math.abs(p-m),n=Math.abs(q-n);null!==this.Bd&&(a.beginPath(),a.rect(l,r,m,n),a.Gg(this.Bd));if(null!==this.Kc){var s=p=0,t=0;g&&e&&(p=a.shadowOffsetX,s=a.shadowOffsetY,t=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY= +0,a.shadowBlur=0);d&&!h?(h=z.rb(),h.push(l),h.push(r),h.push(l+m),h.push(r),h.push(l+m),h.push(r+n),h.push(l),h.push(r+n),h.push(l),h.push(r),a.beginPath(),qo(a,h,k,this.ve),a.sj(),z.xa(h)):0!==c&&(a.beginPath(),a.rect(l,r,m,n),a.sj());g&&e&&(a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=t)}}else if(l.ba===pf)m=l.xc,n=l.Cc,p=l.zb,q=l.Gb,l=Math.abs(p-m)/2,r=Math.abs(q-n)/2,m=Math.min(m,p)+l,n=Math.min(n,q)+r,a.beginPath(),a.moveTo(m,n-r),a.bezierCurveTo(m+Fd*l,n-r,m+l,n-Fd*r,m+l,n),a.bezierCurveTo(m+ +l,n+Fd*r,m+Fd*l,n+r,m,n+r),a.bezierCurveTo(m-Fd*l,n+r,m-l,n+Fd*r,m-l,n),a.bezierCurveTo(m-l,n-Fd*r,m-Fd*l,n-r,m,n-r),a.closePath(),null!==this.Bd&&a.Gg(this.Bd),d&&!h&&(h=z.rb(),re(m,n-r,m+Fd*l,n-r,m+l,n-Fd*r,m+l,n,.5,h),re(m+l,n,m+l,n+Fd*r,m+Fd*l,n+r,m,n+r,.5,h),re(m,n+r,m-Fd*l,n+r,m-l,n+Fd*r,m-l,n,.5,h),re(m-l,n,m-l,n-Fd*r,m-Fd*l,n-r,m,n-r,.5,h),a.beginPath(),qo(a,h,k,this.ve),z.xa(h)),0!==c&&null!==this.Kc&&(g&&e?(p=a.shadowOffsetX,s=a.shadowOffsetY,t=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY= +0,a.shadowBlur=0,a.sj(),a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=t):a.sj());else if(l.ba===kf){r=l.Bj;n=r.length;for(q=0;qx.Lf);else{var v=Jf(x,m),y=v.length;if(0===y){a.lineTo(x.ra,x.za);break}for(var A=0;Ae)){var g=.001,h=c.length,k=b[0],l=b[1];if(4===e)Gm(a,k,l,b[2],b[3],c,d);else{a.moveTo(k,l);for(var m=g=0,n=0,p=0,q=0,r=p=0,s=z.rb(),t=2;tr&&(g=r);g>p?(v=g-p,g=p):v=0;var x=Math.sqrt(g*g/(1+q*q));0>n&&(x=-x);k+=x;l+= +q*x;e?a.lineTo(k,l):a.moveTo(k,l);r-=g;p-=g;if(0!==v){t++;if(t===s.length){z.xa(s);return}p=s[t];n=p[0];q=p[1];p=p[2];g=v}else e=!e}z.xa(s)}}}X.prototype.getDocumentPoint=X.prototype.eb=function(a,b){void 0===b&&(b=new N);a.Be()&&z.k("getDocumentPoint Spot must be a real, specific Spot, not: "+a.toString());var c=this.Ga,d=this.ub;b.n(a.x*(c.width+d)-d/2+c.x+a.offsetX,a.y*(c.height+d)-d/2+c.y+a.offsetY);this.ph.Cb(b);return b}; +X.prototype.lk=function(a,b){var c=this.$a;if(null===c||null===this.fill&&null===this.stroke)return!1;var d=c.vb,e=this.ub/2;c.type!==nf||b||(e+=2);var g=z.lg();g.assign(d);g.bg(e+2,e+2);if(!g.Ma(a))return z.dc(g),!1;d=e+1E-4;if(c.type===nf){if(null===this.stroke)return!1;d=(c.L-c.Ha)*(a.x-c.Ha)+(c.M-c.Da)*(a.y-c.Da);if(0>(c.Ha-c.L)*(a.x-c.L)+(c.Da-c.M)*(a.y-c.M)||0>d)return!1;z.dc(g);return oe(c.Ha,c.Da,c.L,c.M,e,a.x,a.y)}if(c.type===of){var h=c.Ha,k=c.Da,l=c.L,m=c.M;g.x=Math.min(h,l);g.y=Math.min(k, +m);g.width=Math.abs(l-h);g.height=Math.abs(m-k);if(null===this.fill){g.bg(-d,-d);if(g.Ma(a))return z.dc(g),!1;g.bg(d,d)}null!==this.stroke&&g.bg(e,e);e=g.Ma(a);z.dc(g);return e}if(c.type===pf){var h=c.Ha,k=c.Da,l=c.L,m=c.M,c=Math.min(h,l),n=Math.min(k,m),h=Math.abs(l-h)/2,k=Math.abs(m-k)/2,c=a.x-(c+h),n=a.y-(n+k);if(null===this.fill){h-=d;k-=d;if(0>=h||0>=k||1>=c*c/(h*h)+n*n/(k*k))return z.dc(g),!1;h+=d;k+=d}null!==this.stroke&&(h+=e,k+=e);z.dc(g);return 0>=h||0>=k?!1:1>=c*c/(h*h)+n*n/(k*k)}if(c.type=== +kf)return z.dc(g),null===this.fill?Of(c,a.x,a.y,e):c.Ma(a,e,1=this.ub)n=Je(p.xc,p.Cc,p.zb,p.Gb,g,h,k,l,e);else{var r=0,s=0;p.xc===p.zb?(r=m,s=0):(b=(p.Gb-p.Cc)/(p.zb-p.xc),s=m/Math.sqrt(1+b*b),r=s*b);d=y.rb();b=new N;Je(p.xc+ -r,p.Cc+s,p.zb+r,p.Gb+s,g,h,k,l,b)&&d.push(b);b=new N;Je(p.xc-r,p.Cc-s,p.zb-r,p.Gb-s,g,h,k,l,b)&&d.push(b);b=new N;Je(p.xc+r,p.Cc+s,p.xc-r,p.Cc-s,g,h,k,l,b)&&d.push(b);b=new N;Je(p.zb+r,p.Gb+s,p.zb-r,p.Gb-s,g,h,k,l,b)&&d.push(b);b=d.length;if(0===b)return y.xa(d),!1;n=!0;s=Infinity;for(r=0;r=this.ub)n=Je(p.xc,p.Cc,p.zb,p.Gb,g,h,k,l,e);else{var r=0,s=0;p.xc===p.zb?(r=m,s=0):(b=(p.Gb-p.Cc)/(p.zb-p.xc),s=m/Math.sqrt(1+b*b),r=s*b);d=z.rb();b=new N;Je(p.xc+ +r,p.Cc+s,p.zb+r,p.Gb+s,g,h,k,l,b)&&d.push(b);b=new N;Je(p.xc-r,p.Cc-s,p.zb-r,p.Gb-s,g,h,k,l,b)&&d.push(b);b=new N;Je(p.xc+r,p.Cc+s,p.xc-r,p.Cc-s,g,h,k,l,b)&&d.push(b);b=new N;Je(p.zb+r,p.Gb+s,p.zb-r,p.Gb-s,g,h,k,l,b)&&d.push(b);b=d.length;if(0===b)return z.xa(d),!1;n=!0;s=Infinity;for(r=0;rMath.abs(c)){n=h-b-c*(g-d);if(0>a*a*c*c+v*v-n*n){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(a*a*c*c+v*v-n*n);k=(-(a*a*c*n)+a*v*m)/(v*v+a*a*c*c)+d;a=(-(a*a*c*n)-a*v*m)/(v*v+a*a*c*c)+d;l=c*(k-d)+n+b;b=c*(a-d)+n+b;d=Math.abs((g-k)*(g-k))+Math.abs((h-l)*(h-l));h=Math.abs((g-a)*(g-a))+Math.abs((h-b)*(h- -b));dk){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(k);l=b+m;b-=m;d=Math.abs(l-h);h=Math.abs(b-h);dc?a-c:c-a)<(b>d?b-d:d-b)?(e=be||od(l.y,e))&&(l.ye||od(l.x,e))&&(l.x=h&&d<=a}a=h&&g<=a} -X.prototype.pE=function(a,b,c){function d(a,b){for(var c=a.length,d=0;de)return!0;return!1}if(c&&null!==this.fill&&this.lk(a,!0))return!0;var e=a.Bf(b);b=e;1.5k){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(k);l=b+m;b-=m;d=Math.abs(l-h);h=Math.abs(b-h);dc?a-c:c-a)<(b>d?b-d:d-b)?(e=be||rd(l.y,e))&&(l.ye||rd(l.x,e))&&(l.x=h&&d<=a}a=h&&g<=a} +X.prototype.sE=function(a,b,c){function d(a,b){for(var c=a.length,d=0;de)return!0;return!1}if(c&&null!==this.fill&&this.lk(a,!0))return!0;var e=a.Af(b);b=e;1.5=e||xb(b,g,0,-p)>=e||xb(b,g,0,p)>=e||xb(b,g,n,0)>= -e?!1:!0}else if(g.type===kf){h=g.vb;k=h.x;l=h.y;m=h.x+h.width;h=h.y+h.height;if(a.x>m&&a.xh&&a.ye&&wb(a.x,a.y,k,l,m,l)>e&&wb(a.x,a.y,m,h,k,h)>e&&wb(a.x,a.y,m,h,m,l)>e)return!1;b=Math.sqrt(e);if(c){if(null===this.fill?Of(g,a.x,a.y,b):g.Ma(a,b,!0))return!0}else{c=g.cc;for(b=0;be)return!1;l=k.Ab.o;m=l.length;for(h=0;he)return!1;break;case Ff:g=y.rb(); -re(n,p,q.zc,q.Qc,q.Bh,q.Ch,q.L,q.M,.8,g);n=d(g,a);y.xa(g);if(n)return!1;n=q.L;p=q.M;if(a.mp(n,p)>e)return!1;break;case Gf:g=y.rb();Ge(n,p,q.zc,q.Qc,q.L,q.M,.8,g);n=d(g,a);y.xa(g);if(n)return!1;n=q.L;p=q.M;if(a.mp(n,p)>e)return!1;break;case Hf:case If:var r=q.type===Hf?Jf(q,k):Kf(q,k,n,p),s=r.length;if(0===s){n=q.ra;p=q.za;if(a.mp(n,p)>e)return!1;break}q=null;g=y.rb();for(b=0;b= 0",X,"strokeWidth:value")}); -y.defineProperty(X,{uL:"strokeCap"},function(){return this.Uo},function(a){var b=this.Uo;b!==a&&("string"!==typeof a||"butt"!==a&&"round"!==a&&"square"!==a?y.ka(a,'"butt", "round", or "square"',X,"strokeCap"):(this.Uo=a,this.ta(),this.j("strokeCap",b,a)))}); -y.defineProperty(X,{wL:"strokeJoin"},function(){return this.Wo},function(a){var b=this.Wo;b!==a&&("string"!==typeof a||"miter"!==a&&"bevel"!==a&&"round"!==a?y.ka(a,'"miter", "bevel", or "round"',X,"strokeJoin"):(this.Wo=a,this.ta(),this.j("strokeJoin",b,a)))}); -y.defineProperty(X,{xL:"strokeMiterLimit"},function(){return this.Mm},function(a){var b=this.Mm;if(b!==a)if(u&&y.p(a,X,"strokeMiterLimit"),1<=a){this.Mm=a;this.ta();var c=this.ca;null!==c&&(c.Pj=NaN);this.j("strokeMiterLimit",b,a)}else y.ka(a,"value >= 1",X,"strokeWidth:value")}); -y.defineProperty(X,{LF:"strokeDashArray"},function(){return this.Vo},function(a){var b=this.Vo;if(b!==a){null===a||Array.isArray(a)||y.jc(a,"Array",X,"strokeDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;em&&a.xh&&a.ye&&wb(a.x,a.y,k,l,m,l)>e&&wb(a.x,a.y,m,h,k,h)>e&&wb(a.x,a.y,m,h,m,l)>e)return!1;b=Math.sqrt(e);if(c){if(null===this.fill?Of(g,a.x,a.y,b):g.Ma(a,b,!0))return!0}else{c=g.cc;for(b=0;be)return!1;l=k.Ab.o;m=l.length;for(h=0;he)return!1;break;case Ff:g=z.rb(); +re(n,p,q.zc,q.Qc,q.Ah,q.Bh,q.L,q.M,.8,g);n=d(g,a);z.xa(g);if(n)return!1;n=q.L;p=q.M;if(a.mp(n,p)>e)return!1;break;case Gf:g=z.rb();Ge(n,p,q.zc,q.Qc,q.L,q.M,.8,g);n=d(g,a);z.xa(g);if(n)return!1;n=q.L;p=q.M;if(a.mp(n,p)>e)return!1;break;case Hf:case If:var r=q.type===Hf?Jf(q,k):Kf(q,k,n,p),s=r.length;if(0===s){n=q.ra;p=q.za;if(a.mp(n,p)>e)return!1;break}q=null;g=z.rb();for(b=0;b= 0",X,"strokeWidth:value")}); +z.defineProperty(X,{wL:"strokeCap"},function(){return this.Uo},function(a){var b=this.Uo;b!==a&&("string"!==typeof a||"butt"!==a&&"round"!==a&&"square"!==a?z.ka(a,'"butt", "round", or "square"',X,"strokeCap"):(this.Uo=a,this.ta(),this.j("strokeCap",b,a)))}); +z.defineProperty(X,{yL:"strokeJoin"},function(){return this.Wo},function(a){var b=this.Wo;b!==a&&("string"!==typeof a||"miter"!==a&&"bevel"!==a&&"round"!==a?z.ka(a,'"miter", "bevel", or "round"',X,"strokeJoin"):(this.Wo=a,this.ta(),this.j("strokeJoin",b,a)))}); +z.defineProperty(X,{zL:"strokeMiterLimit"},function(){return this.Lm},function(a){var b=this.Lm;if(b!==a)if(u&&z.p(a,X,"strokeMiterLimit"),1<=a){this.Lm=a;this.ta();var c=this.ca;null!==c&&(c.Pj=NaN);this.j("strokeMiterLimit",b,a)}else z.ka(a,"value >= 1",X,"strokeWidth:value")}); +z.defineProperty(X,{OF:"strokeDashArray"},function(){return this.Vo},function(a){var b=this.Vo;if(b!==a){null===a||Array.isArray(a)||z.jc(a,"Array",X,"strokeDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;em*k*k&&(h=!0);b.hd!==a&&(h=!1);!1===b.ij("textGreeking")&&(h=!1);for(var m=this.$j,k=this.ak,l=this.Me,n=0;nc&&(p=c);var g=g+m,r=q,q=a,s=g,t=c, -v=d,x=0;h?("start"===this.Kd||"left"===this.Kd?x=0:"end"===this.Kd||"right"===this.Kd?x=t-p:"center"===this.Kd?x=(t-p)/2:y.k("textAlign must be start, end, left, right, or center: "+this.Kd),q.fillRect(0+x,s+.25*v,p,1)):("start"===this.Kd||"left"===this.Kd?x=0:"end"===this.Kd||"right"===this.Kd?x=t:"center"===this.Kd?x=t/2:y.k("textAlign must be start, end, left, right, or center: "+this.Kd),q.fillText(r,0+x,s+v-.25*v),r=v/20|0,0===r&&(r=1),"end"===this.Kd||"right"===this.Kd?x-=p:"center"===this.Kd&& -(x-=p/2),this.mm&&(q.beginPath(),q.lineWidth=r,q.moveTo(0+x,s+v-.2*v),q.lineTo(0+x+p,s+v-.2*v),q.stroke()),this.lm&&(q.beginPath(),q.lineWidth=r,s=s+v-v/2.2|0,0!==r%2&&(s+=.5),q.moveTo(0+x,s),q.lineTo(0+x+p,s),q.stroke()));g+=d+k}}}; -qa.prototype.Jp=function(a,b,c,d){this.Dv=a;var e=this.Mj;e.reset();var g=0,h=0;if(isNaN(this.Aa.width)){g=this.xe.replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(0===g.length)g=0;else if(this.kx){for(var k=h=0,l=!1;!l;){var m=g.indexOf("\n",k);-1===m&&(m=g.length,l=!0);k=Po(g.substr(k,m-k).replace(/^\s+|\s+$/g,""),this.Ph);k>h&&(h=k);k=m+1}g=h}else h=g.indexOf("\n",0),0<=h&&(g=g.substr(0,h)),g=k=Po(g,this.Ph);g=Math.min(g,a/this.scale);g=Math.max(8,g)}else g=this.Aa.width;null!==this.V&&(g=Math.min(g, -this.V.We.width),g=Math.max(g,this.V.eg.width));h=No(this,g,e);m=h=isNaN(this.Aa.height)?Math.min(h,b/this.scale):this.Aa.height;if(0!==e.bf&&1!==e.Ke.length&&this.kl===Ko&&(b=this.Ph,l=this.kl===Ko?Qo(b):0,k=this.$j+this.ak,k=Math.max(0,Oo(this)+k),m=Math.min(this.yI-1,Math.max(Math.floor(m/k+.01)-1,0)),!(m+1>=e.Ke.length))){k=e.Ke[m];for(a=Math.max(1,a-l);Po(k,b)>a&&1=a.Ni)return new Ea(0,l);if(a.Rm===Io){c.$i=1;g=Po(b,k);if(0===h||g<=d)return c.bf=g,c.sf.push(c.bf),c.Ke.push(b),new Ea(g,l);var m=Ro(b);b=b.substr(m.length);for(var n=Ro(b),g=Po(m+n,k);0d&&1d;){n=1;g=Po(m.substr(0,n),k);for(h=0;g<=d;)n++,h=g,g=Po(m.substr(0,n),k);1===n?(c.sf[a.Me+p]=g,e=Math.max(e,g)):(c.sf[a.Me+p]=h,e=Math.max(e,h));n--;1>n&&(n=1);c.Ke[a.Me+p]=m.substr(0,n);p++;m=m.substr(n);if(a.Me+p>a.Ni)break}n=Ro(b);for(g=Po(m+n,k);0a.Ni))break}c.$i=Math.min(a.Ni,p);c.bf=Math.max(c.bf,e);return new Ea(c.bf,l*c.$i)}function Ro(a){for(var b=a.length,c=0;c=b?a:a.substr(0,c)}function Po(a,b){Go!==b&&(Go=Ho.font=b);return Ho.measureText(a).width} -function Oo(a){if(null!==a.lo)return a.lo;var b=a.Ph;Go!==b&&(Go=Ho.font=b);var c=0;void 0!==Bo[b]&&5E3>Co?c=Bo[b]:(c=1.3*Ho.measureText("M").width,Bo[b]=c,Co++);return a.lo=c}function Qo(a){Go!==a&&(Go=Ho.font=a);var b=0;void 0!==Do[a]&&5E3>Eo?b=Do[a]:(b=Ho.measureText(Fo).width,Do[a]=b,Eo++);return b} -function No(a,b,c){var d=a.xe.replace(/\r\n/g,"\n").replace(/\r/g,"\n"),e=a.$j+a.ak,e=Math.max(0,Oo(a)+e);if(0===d.length)return c.bf=0,a.Me=1,e;if(!a.kx){var g=d.indexOf("\n",0);0<=g&&(d=d.substr(0,g))}for(var g=0,h=a.Me=0,k=-1,l=!1;!l;)k=d.indexOf("\n",h),-1===k&&(k=d.length,l=!0),h<=k&&(h=d.substr(h,k-h),a.Rm!==Io?(c.$i=0,h=Mo(a,h,c,b),g+=h.height,a.Me+=c.$i):(Mo(a,h,c,b),g+=e,a.Me++),a.Me===a.Ni&&(l=!0)),h=k+1;return a.Iv=g} -y.defineProperty(qa,{UA:"textValidation"},function(){return this.ml},function(a){var b=this.ml;b!==a&&(null!==a&&y.g(a,"function",qa,"textValidation"),this.ml=a,this.j("textValidation",b,a))});y.defineProperty(qa,{rL:"spacingAbove"},function(){return this.$j},function(a){var b=this.$j;b!==a&&(u&&y.g(a,"number",qa,"spacingAbove"),this.$j=a,this.j("spacingAbove",b,a))}); -y.defineProperty(qa,{sL:"spacingBelow"},function(){return this.ak},function(a){var b=this.ak;b!==a&&(u&&y.g(a,"number",qa,"spacingBelow"),this.ak=a,this.j("spacingBelow",b,a))});y.defineProperty(qa,{yI:"maxLines"},function(){return this.Ni},function(a){var b=this.Ni;b!==a&&(u&&y.g(a,"number",qa,"maxLines"),a=Math.floor(a),0>=a&&y.ka(a,"> 0",qa,"maxLines"),this.Ni=a,this.j("maxLines",b,a),this.S())});y.w(qa,{SK:"metrics"},function(){return this.Mj}); -function Ao(){this.bf=this.$i=0;this.sf=[];this.Ke=[]}Ao.prototype.reset=function(){this.bf=this.$i=0;this.sf=[];this.Ke=[]};Ao.prototype.st=function(a){this.$i=a.$i;this.bf=a.bf;this.sf=y.yl(a.sf);this.Ke=y.yl(a.Ke)};y.w(Ao,{aK:"arrSize"},function(){return this.sf});y.w(Ao,{bK:"arrText"},function(){return this.Ke});y.w(Ao,{RK:"maxLineWidth"},function(){return this.bf}); -function tk(){O.call(this);this.Ze=null;this.Ms="";this.Zj=Yd;this.oo=mf;this.Xo=this.bk=this.uf=null;this.Qy=!1;this.jo=!0;this.Oo=null}y.Pa(tk,O);y.ia("Picture",tk);tk.prototype.cloneProtected=function(a){O.prototype.cloneProtected.call(this,a);a.element=this.Ze;a.Ms=this.Ms;a.Zj=this.Zj.U();a.oo=this.oo;a.uf=this.uf;a.bk=this.bk;a.jo=this.jo;a.Oo=this.Oo};var So=new ma,To=0,nk=[]; -function Uo(){var a=nk;if(0===a.length)for(var b=window.document.getElementsByTagName("canvas"),c=b.length,d=0;dr.dp.length&& -(Zo(r,4,l,m),Zo(r,16,l,m));for(var l=r.dp,m=l.length,q=l[0],t=0;te;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.2,.22);b.D=new Q(.8, -.9);y.u(a);return b},DataTransmission:"Hexagon",Hexagon:function(a,b,c){var d=cp(6);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;6>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.07,.25);b.D=new Q(.93,.75);y.u(a);return b},Heptagon:function(a,b,c){var d=cp(7);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;7>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.2,.15);b.D=new Q(.8,.85);y.u(a);return b},Octagon:function(a,b,c){var d=cp(8);a=y.v();R(a,d[0].x*b,d[0].y*c,!0); -for(var e=1;8>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.15,.15);b.D=new Q(.85,.85);y.u(a);return b},Nonagon:function(a,b,c){var d=cp(9);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;9>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.17,.13);b.D=new Q(.82,.82);y.u(a);return b},Decagon:function(a,b,c){var d=cp(10);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;10>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.16,.16);b.D=new Q(.84,.84);y.u(a);return b}, -Dodecagon:function(a,b,c){var d=cp(12);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;12>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.16,.16);b.D=new Q(.84,.84);y.u(a);return b},FivePointedStar:function(a,b,c){var d=bp(5);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;10>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.312,.383);b.D=new Q(.693,.765);y.u(a);return b},SixPointedStar:function(a,b,c){var d=bp(6);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;12>e;e++)a.lineTo(d[e].x* -b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.17,.251);b.D=new Q(.833,.755);y.u(a);return b},SevenPointedStar:function(a,b,c){var d=bp(7);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;14>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.363,.361);b.D=new Q(.641,.709);y.u(a);return b},EightPointedStar:function(a,b,c){var d=bp(8);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;16>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.252,.255);b.D=new Q(.75,.75);y.u(a);return b},NinePointedStar:function(a, -b,c){var d=bp(9);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;18>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.355,.361);b.D=new Q(.645,.651);y.u(a);return b},TenPointedStar:function(a,b,c){var d=bp(10);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;20>e;e++)a.lineTo(d[e].x*b,d[e].y*c);y.xa(d);T(a);b=a.q;b.C=new Q(.281,.261);b.D=new Q(.723,.748);y.u(a);return b},FivePointedBurst:function(a,b,c){var d=ap(5);a=y.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;em*k*k&&(h=!0);b.hd!==a&&(h=!1);!1===b.gj("textGreeking")&&(h=!1);for(var m=b.nr,k=this.$j,l=this.ak,n=this.Le,p=0;pc&&(q=c);var g=g+k,s=r,r=a, +t=g,v=c,x=d,y=0,A=this.Nm;"start"===A&&(A=m?"right":"left");"end"===A&&(A=m?"left":"right");h?("left"===A?y=0:"right"===A?y=v-q:"center"===A&&(y=(v-q)/2),r.fillRect(0+y,t+.25*x,q,1)):("left"===A?y=0:"right"===A?y=v:"center"===A&&(y=v/2),r.fillText(s,0+y,t+x-.25*x),s=x/20|0,0===s&&(s=1),"right"===A?y-=q:"center"===A&&(y-=q/2),this.lm&&(r.beginPath(),r.lineWidth=s,r.moveTo(0+y,t+x-.2*x),r.lineTo(0+y+q,t+x-.2*x),r.stroke()),this.km&&(r.beginPath(),r.lineWidth=s,t=t+x-x/2.2|0,0!==s%2&&(t+=.5),r.moveTo(0+ +y,t),r.lineTo(0+y+q,t),r.stroke()));g+=d+l}}}; +qa.prototype.Jp=function(a,b,c,d){this.Ev=a;var e=this.Mj;e.reset();var g=0,h=0;if(isNaN(this.Aa.width)){g=this.we.replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(0===g.length)g=0;else if(this.lx){for(var k=h=0,l=!1;!l;){var m=g.indexOf("\n",k);-1===m&&(m=g.length,l=!0);k=Po(g.substr(k,m-k).replace(/^\s+|\s+$/g,""),this.Nh);k>h&&(h=k);k=m+1}g=h}else h=g.indexOf("\n",0),0<=h&&(g=g.substr(0,h)),g=k=Po(g,this.Nh);g=Math.min(g,a/this.scale);g=Math.max(8,g)}else g=this.Aa.width;null!==this.U&&(g=Math.min(g, +this.U.Ve.width),g=Math.max(g,this.U.dg.width));h=No(this,g,e);m=h=isNaN(this.Aa.height)?Math.min(h,b/this.scale):this.Aa.height;if(0!==e.af&&1!==e.Je.length&&this.kl===Ko&&(b=this.Nh,l=this.kl===Ko?Qo(b):0,k=this.$j+this.ak,k=Math.max(0,Oo(this)+k),m=Math.min(this.AI-1,Math.max(Math.floor(m/k+.01)-1,0)),!(m+1>=e.Je.length))){k=e.Je[m];for(a=Math.max(1,a-l);Po(k,b)>a&&1=a.Li)return new Ea(0,l);if(a.Rm===Io){c.Yi=1;g=Po(b,k);if(0===h||g<=d)return c.af=g,c.rf.push(c.af),c.Je.push(b),new Ea(g,l);var m=Ro(b);b=b.substr(m.length);for(var n=Ro(b),g=Po(m+n,k);0d&&1d;){n=1;g=Po(m.substr(0,n),k);for(h=0;g<=d;)n++,h=g,g=Po(m.substr(0,n),k);1===n?(c.rf[a.Le+p]=g,e=Math.max(e,g)):(c.rf[a.Le+p]=h,e=Math.max(e,h));n--;1>n&&(n=1);c.Je[a.Le+p]=m.substr(0,n);p++;m=m.substr(n);if(a.Le+p>a.Li)break}n=Ro(b);for(g=Po(m+n,k);0a.Li))break}c.Yi=Math.min(a.Li,p);c.af=Math.max(c.af,e);return new Ea(c.af,l*c.Yi)}function Ro(a){for(var b=a.length,c=0;c=b?a:a.substr(0,c)}function Po(a,b){Go!==b&&(Go=Ho.font=b);return Ho.measureText(a).width} +function Oo(a){if(null!==a.lo)return a.lo;var b=a.Nh;Go!==b&&(Go=Ho.font=b);var c=0;void 0!==Bo[b]&&5E3>Co?c=Bo[b]:(c=1.3*Ho.measureText("M").width,Bo[b]=c,Co++);return a.lo=c}function Qo(a){Go!==a&&(Go=Ho.font=a);var b=0;void 0!==Do[a]&&5E3>Eo?b=Do[a]:(b=Ho.measureText(Fo).width,Do[a]=b,Eo++);return b} +function No(a,b,c){var d=a.we.replace(/\r\n/g,"\n").replace(/\r/g,"\n"),e=a.$j+a.ak,e=Math.max(0,Oo(a)+e);if(0===d.length)return c.af=0,a.Le=1,e;if(!a.lx){var g=d.indexOf("\n",0);0<=g&&(d=d.substr(0,g))}for(var g=0,h=a.Le=0,k=-1,l=!1;!l;)k=d.indexOf("\n",h),-1===k&&(k=d.length,l=!0),h<=k&&(h=d.substr(h,k-h),a.Rm!==Io?(c.Yi=0,h=Mo(a,h,c,b),g+=h.height,a.Le+=c.Yi):(Mo(a,h,c,b),g+=e,a.Le++),a.Le===a.Li&&(l=!0)),h=k+1;return a.Jv=g} +z.defineProperty(qa,{YA:"textValidation"},function(){return this.ml},function(a){var b=this.ml;b!==a&&(null!==a&&z.g(a,"function",qa,"textValidation"),this.ml=a,this.j("textValidation",b,a))});z.defineProperty(qa,{tL:"spacingAbove"},function(){return this.$j},function(a){var b=this.$j;b!==a&&(u&&z.g(a,"number",qa,"spacingAbove"),this.$j=a,this.j("spacingAbove",b,a))}); +z.defineProperty(qa,{uL:"spacingBelow"},function(){return this.ak},function(a){var b=this.ak;b!==a&&(u&&z.g(a,"number",qa,"spacingBelow"),this.ak=a,this.j("spacingBelow",b,a))});z.defineProperty(qa,{AI:"maxLines"},function(){return this.Li},function(a){var b=this.Li;b!==a&&(u&&z.g(a,"number",qa,"maxLines"),a=Math.floor(a),0>=a&&z.ka(a,"> 0",qa,"maxLines"),this.Li=a,this.j("maxLines",b,a),this.S())});z.w(qa,{UK:"metrics"},function(){return this.Mj}); +function Ao(){this.af=this.Yi=0;this.rf=[];this.Je=[]}Ao.prototype.reset=function(){this.af=this.Yi=0;this.rf=[];this.Je=[]};Ao.prototype.tt=function(a){this.Yi=a.Yi;this.af=a.af;this.rf=z.yl(a.rf);this.Je=z.yl(a.Je)};z.w(Ao,{cK:"arrSize"},function(){return this.rf});z.w(Ao,{dK:"arrText"},function(){return this.Je});z.w(Ao,{TK:"maxLineWidth"},function(){return this.af}); +function tk(){O.call(this);this.Ye=null;this.Ns="";this.Zj=Zd;this.oo=mf;this.Xo=this.bk=this.tf=null;this.Ry=!1;this.jo=!0;this.Oo=null}z.Qa(tk,O);z.ia("Picture",tk);tk.prototype.cloneProtected=function(a){O.prototype.cloneProtected.call(this,a);a.element=this.Ye;a.Ns=this.Ns;a.Zj=this.Zj.V();a.oo=this.oo;a.tf=this.tf;a.bk=this.bk;a.jo=this.jo;a.Oo=this.Oo};var So=new ma,To=0,nk=[]; +function Uo(){var a=nk;if(0===a.length)for(var b=window.document.getElementsByTagName("canvas"),c=b.length,d=0;dr.dp.length&& +(Zo(r,4,l,m),Zo(r,16,l,m));for(var l=r.dp,m=l.length,q=l[0],t=0;te;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.2,.22);b.D=new Q(.8, +.9);z.u(a);return b},DataTransmission:"Hexagon",Hexagon:function(a,b,c){var d=cp(6);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;6>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.07,.25);b.D=new Q(.93,.75);z.u(a);return b},Heptagon:function(a,b,c){var d=cp(7);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;7>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.2,.15);b.D=new Q(.8,.85);z.u(a);return b},Octagon:function(a,b,c){var d=cp(8);a=z.v();R(a,d[0].x*b,d[0].y*c,!0); +for(var e=1;8>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.15,.15);b.D=new Q(.85,.85);z.u(a);return b},Nonagon:function(a,b,c){var d=cp(9);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;9>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.17,.13);b.D=new Q(.82,.82);z.u(a);return b},Decagon:function(a,b,c){var d=cp(10);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;10>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.16,.16);b.D=new Q(.84,.84);z.u(a);return b}, +Dodecagon:function(a,b,c){var d=cp(12);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;12>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.16,.16);b.D=new Q(.84,.84);z.u(a);return b},FivePointedStar:function(a,b,c){var d=bp(5);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;10>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.312,.383);b.D=new Q(.693,.765);z.u(a);return b},SixPointedStar:function(a,b,c){var d=bp(6);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;12>e;e++)a.lineTo(d[e].x* +b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.17,.251);b.D=new Q(.833,.755);z.u(a);return b},SevenPointedStar:function(a,b,c){var d=bp(7);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;14>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.363,.361);b.D=new Q(.641,.709);z.u(a);return b},EightPointedStar:function(a,b,c){var d=bp(8);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;16>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.252,.255);b.D=new Q(.75,.75);z.u(a);return b},NinePointedStar:function(a, +b,c){var d=bp(9);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;18>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.355,.361);b.D=new Q(.645,.651);z.u(a);return b},TenPointedStar:function(a,b,c){var d=bp(10);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;20>e;e++)a.lineTo(d[e].x*b,d[e].y*c);z.xa(d);T(a);b=a.q;b.C=new Q(.281,.261);b.D=new Q(.723,.748);z.u(a);return b},FivePointedBurst:function(a,b,c){var d=ap(5);a=z.v();R(a,d[0].x*b,d[0].y*c,!0);for(var e=1;ea&&(a=.15);var d=y.v(),e=.2*Ed;R(d,0,.2*c,!0);S(d,0,(.2-e)*c,(.2-e)*b,0,.2*b,0);d.lineTo(.8*b,0);S(d,(.8+e)*b,0,1*b,(.2-e)*c,1*b,.2*c);d.lineTo(1*b,.8*c);S(d,1*b,(.8+e)*c,(.8+e)*b,1*c,.8*b,1*c);d.lineTo(.2*b,1*c);S(d,(.2-e)*b,1*c,0,(.8+e)*c,0,.8*c);d.lineTo(0,.2*c); -R(d,0,a*c,!1);d.lineTo(1*b,a*c);d.fb(!1);b=d.q;b.C=new Q(0,a);b.D=new Q(1,1-a);y.u(d);return b},DividedProcess:function(a,b,c){a=a?a.Ic:NaN;if(isNaN(a)||.1>a)a=.1;var d=y.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);T(d);R(d,0,a*c,!1);d.lineTo(1*b,a*c);d.fb(!1);b=d.q;b.C=new Q(0,a);b.D=mc;y.u(d);return b},Document:function(a,b,c){c/=.8;a=y.v();R(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);S(a,.5*b,.4*c,.5*b,1*c,0,.7*c);T(a);b=a.q;b.C=Zb;b.D=new Q(1,.6);y.u(a); -return b},ExternalOrganization:function(a,b,c){a=a?a.Ic:NaN;if(isNaN(a)||.2>a)a=.2;var d=y.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);T(d);R(d,a*b,0,!1);d.lineTo(0,a*c);d.moveTo(1*b,a*c);d.lineTo((1-a)*b,0);d.moveTo(0,(1-a)*c);d.lineTo(a*b,1*c);d.moveTo((1-a)*b,1*c);d.lineTo(1*b,(1-a)*c);d.fb(!1);b=d.q;b.C=new Q(a/2,a/2);b.D=new Q(1-a/2,1-a/2);y.u(d);return b},ExternalProcess:function(a,b,c){a=y.v();R(a,.5*b,0,!0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,.5*c);T(a); -R(a,.1*b,.4*c,!1);a.lineTo(.1*b,.6*c);a.moveTo(.9*b,.6*c);a.lineTo(.9*b,.4*c);a.moveTo(.6*b,.1*c);a.lineTo(.4*b,.1*c);a.moveTo(.4*b,.9*c);a.lineTo(.6*b,.9*c);a.fb(!1);b=a.q;b.C=new Q(.25,.25);b.D=new Q(.75,.75);y.u(a);return b},File:function(a,b,c){a=y.v();R(a,0,0,!0);a.lineTo(.75*b,0);a.lineTo(1*b,.25*c);a.lineTo(1*b,1*c);a.lineTo(0,1*c);T(a);R(a,.75*b,0,!1);a.lineTo(.75*b,.25*c);a.lineTo(1*b,.25*c);a.fb(!1);b=a.q;b.C=new Q(0,.25);b.D=mc;y.u(a);return b},Interrupt:function(a,b,c){a=y.v();R(a,1*b, -.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);R(a,1*b,.5*c,!1);a.lineTo(1*b,1*c);R(a,1*b,.5*c,!1);a.lineTo(1*b,0);b=a.q;b.C=new Q(0,.25);b.D=new Q(.5,.75);y.u(a);return b},InternalStorage:function(a,b,c){var d=a?a.Ic:NaN;a=a?a.fu:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.1);var e=y.v();R(e,0,0,!0);e.lineTo(1*b,0);e.lineTo(1*b,1*c);e.lineTo(0,1*c);T(e);R(e,d*b,0,!1);e.lineTo(d*b,1*c);e.moveTo(0,a*c);e.lineTo(1*b,a*c);e.fb(!1);b=e.q;b.C=new Q(d,a);b.D=mc;y.u(e);return b},Junction:function(a,b, -c){a=y.v();var d=1/Math.SQRT2,e=(1-1/Math.SQRT2)/2,g=.5*Ed;R(a,1*b,.5*c,!0);S(a,1*b,(.5+g)*c,(.5+g)*b,1*c,.5*b,1*c);S(a,(.5-g)*b,1*c,0,(.5+g)*c,0,.5*c);S(a,0,(.5-g)*c,(.5-g)*b,0,.5*b,0);S(a,(.5+g)*b,0,1*b,(.5-g)*c,1*b,.5*c);R(a,(e+d)*b,(e+d)*c,!1);a.lineTo(e*b,e*c);a.moveTo(e*b,(e+d)*c);a.lineTo((e+d)*b,e*c);a.fb(!1);b=a.q;b.ae=Zi;y.u(a);return b},LinedDocument:function(a,b,c){c/=.8;a=y.v();R(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);S(a,.5*b,.4*c,.5*b,1*c,0,.7*c);T(a);R(a,.1* -b,0,!1);a.lineTo(.1*b,.75*c);a.fb(!1);b=a.q;b.C=new Q(.1,0);b.D=new Q(1,.6);y.u(a);return b},LoopLimit:function(a,b,c){a=y.v();R(a,0,1*c,!0);a.lineTo(0,.25*c);a.lineTo(.25*b,0);a.lineTo(.75*b,0);a.lineTo(1*b,.25*c);a.lineTo(1*b,1*c);T(a);b=a.q;b.C=new Q(0,.25);b.D=mc;y.u(a);return b},SequentialData:"MagneticTape",MagneticTape:function(a,b,c){a=y.v();var d=.5*Ed;R(a,.5*b,1*c,!0);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,(.5+ -d)*c,(.5+d)*b,.9*c,.6*b,.9*c);a.lineTo(1*b,.9*c);a.lineTo(1*b,1*c);a.lineTo(.5*b,1*c);b=a.q;b.C=new Q(.15,.15);b.D=new Q(.85,.8);y.u(a);return b},ManualInput:function(a,b,c){a=y.v();R(a,1*b,0,!0);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.25*c);T(a);b=a.q;b.C=new Q(0,.25);b.D=mc;y.u(a);return b},MessageFromUser:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.7);var d=y.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(a*b,.5*c);d.lineTo(1*b,1*c);d.lineTo(0,1*c);T(d);b=d.q;b.C=Zb;b.D=new Q(a,1);y.u(d);return b}, -MicroformProcessing:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.25);var d=y.v();R(d,0,0,!0);d.lineTo(.5*b,a*c);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(.5*b,(1-a)*c);d.lineTo(0,1*c);T(d);b=d.q;b.C=new Q(0,a);b.D=new Q(1,1-a);y.u(d);return b},MicroformRecording:function(a,b,c){a=y.v();R(a,0,0,!0);a.lineTo(.75*b,.25*c);a.lineTo(1*b,.15*c);a.lineTo(1*b,.85*c);a.lineTo(.75*b,.75*c);a.lineTo(0,1*c);T(a);b=a.q;b.C=new Q(0,.25);b.D=new Q(1,.75);y.u(a);return b},MultiDocument:function(a,b,c){c/=.8;a=y.v(); -R(a,b,0,!0);a.lineTo(b,.5*c);S(a,.96*b,.47*c,.93*b,.45*c,.9*b,.44*c);a.lineTo(.9*b,.6*c);S(a,.86*b,.57*c,.83*b,.55*c,.8*b,.54*c);a.lineTo(.8*b,.7*c);S(a,.4*b,.4*c,.4*b,1*c,0,.7*c);a.lineTo(0,.2*c);a.lineTo(.1*b,.2*c);a.lineTo(.1*b,.1*c);a.lineTo(.2*b,.1*c);a.lineTo(.2*b,0);T(a);R(a,.1*b,.2*c,!1);a.lineTo(.8*b,.2*c);a.lineTo(.8*b,.54*c);a.moveTo(.2*b,.1*c);a.lineTo(.9*b,.1*c);a.lineTo(.9*b,.44*c);a.fb(!1);b=a.q;b.C=new Q(0,.25);b.D=new Q(.8,.77);y.u(a);return b},MultiProcess:function(a,b,c){a=y.v(); -R(a,.1*b,.1*c,!0);a.lineTo(.2*b,.1*c);a.lineTo(.2*b,0);a.lineTo(1*b,0);a.lineTo(1*b,.8*c);a.lineTo(.9*b,.8*c);a.lineTo(.9*b,.9*c);a.lineTo(.8*b,.9*c);a.lineTo(.8*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.2*c);a.lineTo(.1*b,.2*c);T(a);R(a,.2*b,.1*c,!1);a.lineTo(.9*b,.1*c);a.lineTo(.9*b,.8*c);a.moveTo(.1*b,.2*c);a.lineTo(.8*b,.2*c);a.lineTo(.8*b,.9*c);a.fb(!1);b=a.q;b.C=new Q(0,.2);b.D=new Q(.8,1);y.u(a);return b},OfflineStorage:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.1);var d=1-a,e=y.v();R(e,0,0,!0);e.lineTo(1* -b,0);e.lineTo(.5*b,1*c);T(e);R(e,.5*a*b,a*c,!1);e.lineTo((1-.5*a)*b,a*c);e.fb(!1);b=e.q;b.C=new Q(d/4+.5*a,a);b.D=new Q(3*d/4+.5*a,a+.5*d);y.u(e);return b},OffPageConnector:function(a,b,c){a=y.v();R(a,0,0,!0);a.lineTo(.75*b,0);a.lineTo(1*b,.5*c);a.lineTo(.75*b,1*c);a.lineTo(0,1*c);T(a);b=a.q;b.C=Zb;b.D=new Q(.75,1);y.u(a);return b},Or:function(a,b,c){a=y.v();var d=.5*Ed;R(a,1*b,.5*c,!0);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a, -(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);R(a,1*b,.5*c,!1);a.lineTo(0,.5*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,0);a.fb(!1);b=a.q;b.ae=Zi;y.u(a);return b},PaperTape:function(a,b,c){c/=.8;a=y.v();R(a,0,.7*c,!0);a.lineTo(0,.3*c);S(a,.5*b,.6*c,.5*b,0,1*b,.3*c);a.lineTo(1*b,.7*c);S(a,.5*b,.4*c,.5*b,1*c,0,.7*c);T(a);b=a.q;b.C=new Q(0,.49);b.D=new Q(1,.75);y.u(a);return b},PrimitiveFromCall:function(a,b,c){var d=a?a.Ic:NaN;a=a?a.fu:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=y.v();R(e,0,0,!0);e.lineTo(1*b,0);e.lineTo((1- -a)*b,.5*c);e.lineTo(1*b,1*c);e.lineTo(0,1*c);T(e);b=e.q;b.C=new Q(d,0);b.D=new Q(1-a,1);y.u(e);return b},PrimitiveToCall:function(a,b,c){var d=a?a.Ic:NaN;a=a?a.fu:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=y.v();R(e,0,0,!0);e.lineTo((1-a)*b,0);e.lineTo(1*b,.5*c);e.lineTo((1-a)*b,1*c);e.lineTo(0,1*c);T(e);b=e.q;b.C=new Q(d,0);b.D=new Q(1-a,1);y.u(e);return b},Subroutine:"Procedure",Procedure:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.1);var d=y.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0, -1*c);T(d);R(d,(1-a)*b,0,!1);d.lineTo((1-a)*b,1*c);d.moveTo(a*b,0);d.lineTo(a*b,1*c);d.fb(!1);b=d.q;b.C=new Q(a,0);b.D=new Q(1-a,1);y.u(d);return b},Process:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.1);var d=y.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);T(d);R(d,a*b,0,!1);d.lineTo(a*b,1*c);d.fb(!1);b=d.q;b.C=new Q(a,0);b.D=mc;y.u(d);return b},Sort:function(a,b,c){a=y.v();R(a,.5*b,0,!0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,.5*c);T(a);R(a,0,.5*c,!1);a.lineTo(1*b,.5* -c);a.fb(!1);b=a.q;b.C=new Q(.25,.25);b.D=new Q(.75,.5);y.u(a);return b},Start:function(a,b,c){a=y.v();R(a,.25*b,0,!0);R(a,.25*b,0,!0);a.arcTo(270,180,.75*b,.5*c,.25*b,.5*c);a.arcTo(90,180,.25*b,.5*c,.25*b,.5*c);R(a,.25*b,0,!1);a.lineTo(.25*b,1*c);a.moveTo(.75*b,0);a.lineTo(.75*b,1*c);a.fb(!1);b=a.q;b.C=new Q(.25,0);b.D=new Q(.75,1);y.u(a);return b},Terminator:function(a,b,c){a=y.v();R(a,.25*b,0,!0);a.arcTo(270,180,.75*b,.5*c,.25*b,.5*c);a.arcTo(90,180,.25*b,.5*c,.25*b,.5*c);b=a.q;b.C=new Q(.23,0); -b.D=new Q(.77,1);y.u(a);return b},TransmittalTape:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.1);var d=y.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(.75*b,(1-a)*c);d.lineTo(0,(1-a)*c);T(d);b=d.q;b.C=Zb;b.D=new Q(1,1-a);y.u(d);return b},AndGate:function(a,b,c){a=y.v();var d=.5*Ed;R(a,0,0,!0);a.lineTo(.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);a.lineTo(0,1*c);T(a);b=a.q;b.C=Zb;b.D=new Q(.55,1);y.u(a);return b},Buffer:function(a,b,c){a=y.v();R(a, -0,0,!0);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);T(a);b=a.q;b.C=new Q(0,.25);b.D=new Q(.5,.75);y.u(a);return b},Clock:function(a,b,c){a=y.v();var d=.5*Ed;R(a,1*b,.5*c,!0);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);R(a,1*b,.5*c,!1);a.lineTo(1*b,.5*c);R(a,.8*b,.75*c,!1);a.lineTo(.8*b,.25*c);a.lineTo(.6*b,.25*c);a.lineTo(.6*b,.75*c);a.lineTo(.4*b,.75*c);a.lineTo(.4*b,.25*c);a.lineTo(.2*b,.25*c);a.lineTo(.2* -b,.75*c);a.fb(!1);b=a.q;b.ae=Zi;y.u(a);return b},Ground:function(a,b,c){a=y.v();R(a,.5*b,0,!1);a.lineTo(.5*b,.4*c);a.moveTo(.2*b,.6*c);a.lineTo(.8*b,.6*c);a.moveTo(.3*b,.8*c);a.lineTo(.7*b,.8*c);a.moveTo(.4*b,1*c);a.lineTo(.6*b,1*c);b=a.q;y.u(a);return b},Inverter:function(a,b,c){a=y.v();var d=.1*Ed;R(a,.8*b,.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.8*b,.5*c);R(a,1*b,.5*c,!0);S(a,1*b,(.5+d)*c,(.9+d)*b,.6*c,.9*b,.6*c);S(a,(.9-d)*b,.6*c,.8*b,(.5+d)*c,.8*b,.5*c);S(a,.8*b,(.5-d)*c,(.9-d)*b,.4* -c,.9*b,.4*c);S(a,(.9+d)*b,.4*c,1*b,(.5-d)*c,1*b,.5*c);b=a.q;b.C=new Q(0,.25);b.D=new Q(.4,.75);y.u(a);return b},NandGate:function(a,b,c){a=y.v();var d=.5*Ed,e=.4*Ed,g=.1*Ed;R(a,.8*b,.5*c,!0);S(a,.8*b,(.5+e)*c,(.4+d)*b,1*c,.4*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.4*b,0);S(a,(.4+d)*b,0,.8*b,(.5-e)*c,.8*b,.5*c);R(a,1*b,.5*c,!0);S(a,1*b,(.5+g)*c,(.9+g)*b,.6*c,.9*b,.6*c);S(a,(.9-g)*b,.6*c,.8*b,(.5+g)*c,.8*b,.5*c);S(a,.8*b,(.5-g)*c,(.9-g)*b,.4*c,.9*b,.4*c);S(a,(.9+g)*b,.4*c,1*b,(.5-g)*c,1*b,.5* -c);b=a.q;b.C=new Q(0,.05);b.D=new Q(.55,.95);y.u(a);return b},NorGate:function(a,b,c){a=y.v();var d=.5,e=Ed*d,g=0,h=.5;R(a,.8*b,.5*c,!0);S(a,.7*b,(h+e)*c,(g+e)*b,(h+d)*c,0,1*c);S(a,.25*b,.75*c,.25*b,.25*c,0,0);S(a,(g+e)*b,(h-d)*c,.7*b,(h-e)*c,.8*b,.5*c);d=.1;e=.1*Ed;g=.9;h=.5;R(a,(g-d)*b,h*c,!0);S(a,(g-d)*b,(h-e)*c,(g-e)*b,(h-d)*c,g*b,(h-d)*c);S(a,(g+e)*b,(h-d)*c,(g+d)*b,(h-e)*c,(g+d)*b,h*c);S(a,(g+d)*b,(h+e)*c,(g+e)*b,(h+d)*c,g*b,(h+d)*c);S(a,(g-e)*b,(h+d)*c,(g-d)*b,(h+e)*c,(g-d)*b,h*c);b=a.q;b.C= -new Q(.2,.25);b.D=new Q(.6,.75);y.u(a);return b},OrGate:function(a,b,c){a=y.v();var d=.5*Ed;R(a,0,0,!0);S(a,(0+d+d)*b,0*c,.8*b,(.5-d)*c,1*b,.5*c);S(a,.8*b,(.5+d)*c,(0+d+d)*b,1*c,0,1*c);S(a,.25*b,.75*c,.25*b,.25*c,0,0);T(a);b=a.q;b.C=new Q(.2,.25);b.D=new Q(.75,.75);y.u(a);return b},XnorGate:function(a,b,c){a=y.v();var d=.5,e=Ed*d,g=.2,h=.5;R(a,.1*b,0,!1);S(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);R(a,.8*b,.5*c,!0);S(a,.7*b,(h+e)*c,(g+e)*b,(h+d)*c,.2*b,1*c);S(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);S(a,(g+e)* -b,(h-d)*c,.7*b,(h-e)*c,.8*b,.5*c);d=.1;e=.1*Ed;g=.9;h=.5;R(a,(g-d)*b,h*c,!0);S(a,(g-d)*b,(h-e)*c,(g-e)*b,(h-d)*c,g*b,(h-d)*c);S(a,(g+e)*b,(h-d)*c,(g+d)*b,(h-e)*c,(g+d)*b,h*c);S(a,(g+d)*b,(h+e)*c,(g+e)*b,(h+d)*c,g*b,(h+d)*c);S(a,(g-e)*b,(h+d)*c,(g-d)*b,(h+e)*c,(g-d)*b,h*c);b=a.q;b.C=new Q(.4,.25);b.D=new Q(.65,.75);y.u(a);return b},XorGate:function(a,b,c){a=y.v();var d=.5*Ed;R(a,.1*b,0,!1);S(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);R(a,.2*b,0,!0);S(a,(.2+d)*b,0*c,.9*b,(.5-d)*c,1*b,.5*c);S(a,.9*b,(.5+d)* -c,(.2+d)*b,1*c,.2*b,1*c);S(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);T(a);b=a.q;b.C=new Q(.4,.25);b.D=new Q(.8,.75);y.u(a);return b},Capacitor:function(a,b,c){a=y.v();R(a,0,0,!1);a.lineTo(0,1*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.q;y.u(a);return b},Resistor:function(a,b,c){a=y.v();R(a,0,.5*c,!1);a.lineTo(.1*b,0);a.lineTo(.2*b,1*c);a.lineTo(.3*b,0);a.lineTo(.4*b,1*c);a.lineTo(.5*b,0);a.lineTo(.6*b,1*c);a.lineTo(.7*b,.5*c);b=a.q;y.u(a);return b},Inductor:function(a,b,c){a=y.v();var d=.1*Ed,e=.1;R(a,(e-.5* -d)*b,c,!1);S(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.3;S(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);S(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.5;S(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);S(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.7;S(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);S(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.9;S(a,(e+.1)*b,0,(e+d)*b,c,(e+.5*d)*b,c);b=a.q;y.u(a);return b},ACvoltageSource:function(a,b,c){a=y.v();var d=.5*Ed;R(a,0*b,.5*c,!1);S(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);S(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,(.5+d)* -c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b,.5*c);a.moveTo(.1*b,.5*c);S(a,.5*b,0*c,.5*b,1*c,.9*b,.5*c);b=a.q;b.ae=Zi;y.u(a);return b},DCvoltageSource:function(a,b,c){a=y.v();R(a,0,.75*c,!1);a.lineTo(0,.25*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.q;y.u(a);return b},Diode:function(a,b,c){a=y.v();R(a,1*b,0,!1);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);a.lineTo(1*b,1*c);b=a.q;b.C=new Q(0,.25);b.D=new Q(.5,.75);y.u(a);return b},Wifi:function(a,b,c){var d=b,e=c; -b*=.38;c*=.6;a=y.v();var g=.8*Ed,h=.8,k=0,l=.5,d=(d-b)/2,e=(e-c)/2;R(a,k*b+d,(l+h)*c+e,!0);S(a,(k-g)*b+d,(l+h)*c+e,(k-h)*b+d,(l+g)*c+e,(k-h)*b+d,l*c+e);S(a,(k-h)*b+d,(l-g)*c+e,(k-g)*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);S(a,k*b+d,(l-h)*c+e,(k-h+.5*g)*b+d,(l-g)*c+e,(k-h+.5*g)*b+d,l*c+e);S(a,(k-h+.5*g)*b+d,(l+g)*c+e,k*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);T(a);g=.4*Ed;h=.4;k=.2;l=.5;R(a,k*b+d,(l+h)*c+e,!0);S(a,(k-g)*b+d,(l+h)*c+e,(k-h)*b+d,(l+g)*c+e,(k-h)*b+d,l*c+e);S(a,(k-h)*b+d,(l-g)*c+e,(k-g)*b+d,(l-h)*c+e,k* -b+d,(l-h)*c+e);S(a,k*b+d,(l-h)*c+e,(k-h+.5*g)*b+d,(l-g)*c+e,(k-h+.5*g)*b+d,l*c+e);S(a,(k-h+.5*g)*b+d,(l+g)*c+e,k*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);T(a);g=.2*Ed;h=.2;l=k=.5;R(a,(k-h)*b+d,l*c+e,!0);S(a,(k-h)*b+d,(l-g)*c+e,(k-g)*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);S(a,(k+g)*b+d,(l-h)*c+e,(k+h)*b+d,(l-g)*c+e,(k+h)*b+d,l*c+e);S(a,(k+h)*b+d,(l+g)*c+e,(k+g)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);S(a,(k-g)*b+d,(l+h)*c+e,(k-h)*b+d,(l+g)*c+e,(k-h)*b+d,l*c+e);g=.4*Ed;h=.4;k=.8;l=.5;R(a,k*b+d,(l-h)*c+e,!0);S(a,(k+g)*b+d,(l- -h)*c+e,(k+h)*b+d,(l-g)*c+e,(k+h)*b+d,l*c+e);S(a,(k+h)*b+d,(l+g)*c+e,(k+g)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);S(a,k*b+d,(l+h)*c+e,(k+h-.5*g)*b+d,(l+g)*c+e,(k+h-.5*g)*b+d,l*c+e);S(a,(k+h-.5*g)*b+d,(l-g)*c+e,k*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);T(a);g=.8*Ed;h=.8;k=1;l=.5;R(a,k*b+d,(l-h)*c+e,!0);S(a,(k+g)*b+d,(l-h)*c+e,(k+h)*b+d,(l-g)*c+e,(k+h)*b+d,l*c+e);S(a,(k+h)*b+d,(l+g)*c+e,(k+g)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);S(a,k*b+d,(l+h)*c+e,(k+h-.5*g)*b+d,(l+g)*c+e,(k+h-.5*g)*b+d,l*c+e);S(a,(k+h-.5*g)*b+d,(l-g)*c+ -e,k*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);T(a);b=a.q;y.u(a);return b},Email:function(a,b,c){a=y.v();R(a,0,0,!0);a.lineTo(1*b,0);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);T(a);R(a,0,0,!1);a.lineTo(.5*b,.6*c);a.lineTo(1*b,0);a.moveTo(0,1*c);a.lineTo(.45*b,.54*c);a.moveTo(1*b,1*c);a.lineTo(.55*b,.54*c);a.fb(!1);b=a.q;y.u(a);return b},Ethernet:function(a,b,c){a=y.v();R(a,.35*b,0,!0);a.lineTo(.65*b,0);a.lineTo(.65*b,.4*c);a.lineTo(.35*b,.4*c);a.lineTo(.35*b,0);T(a);R(a,.1*b,1*c,!0,!0);a.lineTo(.4*b,1*c); -a.lineTo(.4*b,.6*c);a.lineTo(.1*b,.6*c);a.lineTo(.1*b,1*c);T(a);R(a,.6*b,1*c,!0,!0);a.lineTo(.9*b,1*c);a.lineTo(.9*b,.6*c);a.lineTo(.6*b,.6*c);a.lineTo(.6*b,1*c);T(a);R(a,0,.5*c,!1);a.lineTo(1*b,.5*c);a.moveTo(.5*b,.5*c);a.lineTo(.5*b,.4*c);a.moveTo(.75*b,.5*c);a.lineTo(.75*b,.6*c);a.moveTo(.25*b,.5*c);a.lineTo(.25*b,.6*c);a.fb(!1);b=a.q;y.u(a);return b},Power:function(a,b,c){a=y.v();var d=.4*Ed,e=.4,g=y.O(),h=y.O(),k=y.O(),l=y.O();se(.5,.5-e,.5+d,.5-e,.5+e,.5-d,.5+e,.5,.5,g,g,h,k,l);var m=y.Tb(h.x, -h.y);R(a,h.x*b,h.y*c,!0);S(a,k.x*b,k.y*c,l.x*b,l.y*c,(.5+e)*b,.5*c);S(a,(.5+e)*b,(.5+d)*c,(.5+d)*b,(.5+e)*c,.5*b,(.5+e)*c);S(a,(.5-d)*b,(.5+e)*c,(.5-e)*b,(.5+d)*c,(.5-e)*b,.5*c);se(.5-e,.5,.5-e,.5-d,.5-d,.5-e,.5,.5-e,.5,k,l,h,g,g);S(a,k.x*b,k.y*c,l.x*b,l.y*c,h.x*b,h.y*c);d=.3*Ed;e=.3;se(.5-e,.5,.5-e,.5-d,.5-d,.5-e,.5,.5-e,.5,k,l,h,g,g);a.lineTo(h.x*b,h.y*c);S(a,l.x*b,l.y*c,k.x*b,k.y*c,(.5-e)*b,.5*c);S(a,(.5-e)*b,(.5+d)*c,(.5-d)*b,(.5+e)*c,.5*b,(.5+e)*c);S(a,(.5+d)*b,(.5+e)*c,(.5+e)*b,(.5+d)*c,(.5+ -e)*b,.5*c);se(.5,.5-e,.5+d,.5-e,.5+e,.5-d,.5+e,.5,.5,g,g,h,k,l);S(a,l.x*b,l.y*c,k.x*b,k.y*c,h.x*b,h.y*c);T(a);R(a,.45*b,0,!0);a.lineTo(.45*b,.5*c);a.lineTo(.55*b,.5*c);a.lineTo(.55*b,0);T(a);y.A(g);y.A(h);y.A(k);y.A(l);y.A(m);b=a.q;b.C=new Q(.25,.55);b.D=new Q(.75,.8);y.u(a);return b},Fallout:function(a,b,c){a=y.v();var d=.5*Ed;R(a,0*b,.5*c,!0);S(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);S(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b, -.5*c);var e=d=0;R(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);d=.4;e=0;T(a);R(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);d=.2;e=-.3;T(a);R(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);T(a);b=a.q;b.ae=Zi;y.u(a);return b},IrritationHazard:function(a,b,c){a=y.v();R(a,.2*b,0*c,!0);a.lineTo(.5*b,.3*c);a.lineTo(.8* -b,0*c);a.lineTo(1*b,.2*c);a.lineTo(.7*b,.5*c);a.lineTo(1*b,.8*c);a.lineTo(.8*b,1*c);a.lineTo(.5*b,.7*c);a.lineTo(.2*b,1*c);a.lineTo(0*b,.8*c);a.lineTo(.3*b,.5*c);a.lineTo(0*b,.2*c);T(a);b=a.q;b.C=new Q(.3,.3);b.D=new Q(.7,.7);y.u(a);return b},ElectricalHazard:function(a,b,c){a=y.v();R(a,.37*b,0*c,!0);a.lineTo(.5*b,.11*c);a.lineTo(.77*b,.04*c);a.lineTo(.33*b,.49*c);a.lineTo(1*b,.37*c);a.lineTo(.63*b,.86*c);a.lineTo(.77*b,.91*c);a.lineTo(.34*b,1*c);a.lineTo(.34*b,.78*c);a.lineTo(.44*b,.8*c);a.lineTo(.65* -b,.56*c);a.lineTo(0*b,.68*c);T(a);b=a.q;y.u(a);return b},FireHazard:function(a,b,c){a=y.v();R(a,.1*b,1*c,!0);S(a,-.25*b,.63*c,.45*b,.44*c,.29*b,0*c);S(a,.48*b,.17*c,.54*b,.35*c,.51*b,.42*c);S(a,.59*b,.29*c,.58*b,.28*c,.59*b,.18*c);S(a,.8*b,.34*c,.88*b,.43*c,.75*b,.6*c);S(a,.87*b,.48*c,.88*b,.43*c,.88*b,.31*c);S(a,1.17*b,.76*c,.82*b,.8*c,.9*b,1*c);T(a);b=a.q;b.C=new Q(.05,.645);b.D=new Q(.884,.908);y.u(a);return b},BpmnActivityLoop:function(a,b,c){a=y.v();var d=4*(Math.SQRT2-1)/3*.5;R(a,.65*b,1*c, -!1);S(a,(1-d+0)*b,1*c,1*b,(.5+d+0)*c,1*b,.5*c);S(a,1*b,(.5-d+0)*c,(.5+d+0)*b,0*c,.5*b,0*c);S(a,(.5-d+0)*b,0*c,0*b,(.5-d+0)*c,0*b,.5*c);S(a,0*b,(.5+d+0)*c,(.5-d+0)*b,1*c,.35*b,.98*c);a.moveTo(.25*b,.8*c);a.lineTo(.35*b,1*c);a.lineTo(.1*b,1*c);b=a.q;y.u(a);return b},BpmnActivityParallel:function(a,b,c){a=y.v();R(a,0,0,!1);a.lineTo(0,1*c);a.moveTo(.5*b,0);a.lineTo(.5*b,1*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.q;y.u(a);return b},BpmnActivitySequential:function(a,b,c){a=y.v();R(a,0,0,!1);a.lineTo(1* -b,0);a.moveTo(0,.5*c);a.lineTo(1*b,.5*c);a.moveTo(0,1*c);a.lineTo(1*b,1*c);b=a.q;y.u(a);return b},BpmnActivityAdHoc:function(a,b,c){a=y.v();R(a,0,0,!1);R(a,1*b,1*c,!1);R(a,0,.5*c,!1);S(a,.2*b,.35*c,.3*b,.35*c,.5*b,.5*c);S(a,.7*b,.65*c,.8*b,.65*c,1*b,.5*c);b=a.q;y.u(a);return b},BpmnActivityCompensation:function(a,b,c){a=y.v();R(a,0,.5*c,!0);a.lineTo(.5*b,0);a.lineTo(.5*b,.5*c);a.lineTo(1*b,1*c);a.lineTo(1*b,0);a.lineTo(.5*b,.5*c);a.lineTo(.5*b,1*c);T(a);b=a.q;y.u(a);return b},BpmnTaskMessage:function(a, -b,c){a=y.v();R(a,0,.2*c,!0);a.lineTo(1*b,.2*c);a.lineTo(1*b,.8*c);a.lineTo(0,.8*c);a.lineTo(0,.8*c);T(a);R(a,0,.2*c,!1);a.lineTo(.5*b,.5*c);a.lineTo(1*b,.2*c);a.fb(!1);b=a.q;y.u(a);return b},BpmnTaskScript:function(a,b,c){a=y.v();R(a,.7*b,1*c,!0);a.lineTo(.3*b,1*c);S(a,.6*b,.5*c,0,.5*c,.3*b,0);a.lineTo(.7*b,0);S(a,.4*b,.5*c,1*b,.5*c,.7*b,1*c);T(a);R(a,.45*b,.73*c,!1);a.lineTo(.7*b,.73*c);a.moveTo(.38*b,.5*c);a.lineTo(.63*b,.5*c);a.moveTo(.31*b,.27*c);a.lineTo(.56*b,.27*c);a.fb(!1);b=a.q;y.u(a);return b}, -BpmnTaskUser:function(a,b,c){a=y.v();R(a,0,0,!1);R(a,.335*b,(1-.555)*c,!0);a.lineTo(.335*b,.595*c);a.lineTo(.665*b,.595*c);a.lineTo(.665*b,(1-.555)*c);S(a,.88*b,.46*c,.98*b,.54*c,1*b,.68*c);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.68*c);S(a,.02*b,.54*c,.12*b,.46*c,.335*b,(1-.555)*c);a.lineTo(.365*b,.405*c);var d=.5-.285,e=Math.PI/4,g=4*(1-Math.cos(e))/(3*Math.sin(e)),e=g*d,g=g*d;S(a,(.5-(e+d)/2)*b,(d+(d+g)/2)*c,(.5-d)*b,(d+g)*c,(.5-d)*b,d*c);S(a,(.5-d)*b,(d-g)*c,(.5-e)*b,(d-d)*c,.5*b,(d-d)*c); -S(a,(.5+e)*b,(d-d)*c,(.5+d)*b,(d-g)*c,(.5+d)*b,d*c);S(a,(.5+d)*b,(d+g)*c,(.5+(e+d)/2)*b,(d+(d+g)/2)*c,.635*b,.405*c);a.lineTo(.635*b,.405*c);a.lineTo(.665*b,(1-.555)*c);a.lineTo(.665*b,.595*c);a.lineTo(.335*b,.595*c);R(a,.2*b,1*c,!1);a.lineTo(.2*b,.8*c);R(a,.8*b,1*c,!1);a.lineTo(.8*b,.8*c);b=a.q;y.u(a);return b},BpmnEventConditional:function(a,b,c){a=y.v();R(a,.1*b,0,!0);a.lineTo(.9*b,0);a.lineTo(.9*b,1*c);a.lineTo(.1*b,1*c);T(a);R(a,.2*b,.2*c,!1);a.lineTo(.8*b,.2*c);a.moveTo(.2*b,.4*c);a.lineTo(.8* -b,.4*c);a.moveTo(.2*b,.6*c);a.lineTo(.8*b,.6*c);a.moveTo(.2*b,.8*c);a.lineTo(.8*b,.8*c);a.fb(!1);b=a.q;y.u(a);return b},BpmnEventError:function(a,b,c){a=y.v();R(a,0,1*c,!0);a.lineTo(.33*b,0);a.lineTo(.66*b,.5*c);a.lineTo(1*b,0);a.lineTo(.66*b,1*c);a.lineTo(.33*b,.5*c);T(a);b=a.q;y.u(a);return b},BpmnEventEscalation:function(a,b,c){a=y.v();R(a,0,0,!1);R(a,1*b,1*c,!1);R(a,.1*b,1*c,!0);a.lineTo(.5*b,0);a.lineTo(.9*b,1*c);a.lineTo(.5*b,.5*c);T(a);b=a.q;y.u(a);return b},BpmnEventTimer:function(a,b,c){a= -y.v();var d=.5*Ed;R(a,1*b,.5*c,!0);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);R(a,.5*b,0,!1);a.lineTo(.5*b,.15*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,.85*c);a.moveTo(0,.5*c);a.lineTo(.15*b,.5*c);a.moveTo(1*b,.5*c);a.lineTo(.85*b,.5*c);a.moveTo(.5*b,.5*c);a.lineTo(.58*b,.1*c);a.moveTo(.5*b,.5*c);a.lineTo(.78*b,.54*c);a.fb(!1);b=a.q;b.ae=Zi;y.u(a);return b}},dp;for(dp in ro)ro[dp.toLowerCase()]=dp; +d+e)*b,(.5-h+g)*c,(.5-h+e)*b,(.5-d+g)*c,(.5+e)*b,(.5-d+g)*c);S(a,(.5+h+e)*b,(.5-d+g)*c,(.5+d+e)*b,(.5-h+g)*c,(.5+d+e)*b,(.5+g)*c);R(a,(.525+e)*b,(.5+d+g)*c,!0);b=a.q;b.C=new Q(.232,.136);b.D=new Q(.782,.611);b.Zd=Zi;z.u(a);return b},PlusLine:function(a,b,c){a=z.v();R(a,0,.5*c,!1);a.lineTo(1*b,.5*c);a.moveTo(.5*b,0);a.lineTo(.5*b,1*c);b=a.q;z.u(a);return b},XLine:function(a,b,c){a=z.v();R(a,0,1*c,!1);a.lineTo(1*b,0);a.moveTo(0,0);a.lineTo(1*b,1*c);b=a.q;z.u(a);return b},AsteriskLine:function(a,b,c){a= +z.v();var d=.2/Math.SQRT2;R(a,d*b,(1-d)*c,!1);a.lineTo((1-d)*b,d*c);a.moveTo(d*b,d*c);a.lineTo((1-d)*b,(1-d)*c);a.moveTo(0*b,.5*c);a.lineTo(1*b,.5*c);a.moveTo(.5*b,0*c);a.lineTo(.5*b,1*c);b=a.q;z.u(a);return b},CircleLine:function(a,b,c){var d=.5*Fd;a=z.v();R(a,1*b,.5*c,!1);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);b=a.q;b.C=new Q(.146,.146);b.D=new Q(.853,.853);b.Zd=Zi;z.u(a);return b},Pie:function(a, +b,c){a=z.v();var d=4*(Math.SQRT2-1)/3*.5;R(a,(.5*Math.SQRT2/2+.5)*b,(.5-.5*Math.SQRT2/2)*c,!0);S(a,.7*b,0*c,.5*b,0*c,.5*b,0*c);S(a,(.5-d+0)*b,0*c,0*b,(.5-d+0)*c,0*b,.5*c);S(a,0*b,(.5+d+0)*c,(.5-d+0)*b,1*c,.5*b,1*c);S(a,(.5+d+0)*b,1*c,1*b,(.5+d+0)*c,1*b,.5*c);a.lineTo(.5*b,.5*c);T(a);b=a.q;z.u(a);return b},PiePiece:function(a,b,c){var d=Fd/Math.SQRT2*.5,e=Math.SQRT2/2,g=1-Math.SQRT2/2;a=z.v();R(a,b,c,!0);S(a,b,(1-d)*c,(e+d)*b,(g+d)*c,e*b,g*c);a.lineTo(0,c);T(a);b=a.q;z.u(a);return b},StopSign:function(a, +b,c){a=1/(Math.SQRT2+2);var d=z.v();R(d,a*b,0,!0);d.lineTo((1-a)*b,0);d.lineTo(1*b,a*c);d.lineTo(1*b,(1-a)*c);d.lineTo((1-a)*b,1*c);d.lineTo(a*b,1*c);d.lineTo(0,(1-a)*c);d.lineTo(0,a*c);T(d);b=d.q;b.C=new Q(a/2,a/2);b.D=new Q(1-a/2,1-a/2);z.u(d);return b},LogicImplies:function(a,b,c){var d=a?a.Ic:NaN;isNaN(d)&&(d=.2);a=z.v();R(a,(1-d)*b,0*c,!1);a.lineTo(1*b,.5*c);a.lineTo((1-d)*b,c);a.moveTo(0,.5*c);a.lineTo(b,.5*c);b=a.q;b.C=Zb;b.D=new Q(.8,.5);z.u(a);return b},LogicIff:function(a,b,c){var d=a?a.Ic: +NaN;isNaN(d)&&(d=.2);a=z.v();R(a,(1-d)*b,0*c,!1);a.lineTo(1*b,.5*c);a.lineTo((1-d)*b,c);a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.moveTo(d*b,0);a.lineTo(0,.5*c);a.lineTo(d*b,c);b=a.q;b.C=new Q(.2,0);b.D=new Q(.8,.5);z.u(a);return b},LogicNot:function(a,b,c){a=z.v();R(a,0,0,!1);a.lineTo(1*b,0);a.lineTo(1*b,1*c);b=a.q;z.u(a);return b},LogicAnd:function(a,b,c){a=z.v();R(a,0,1*c,!1);a.lineTo(.5*b,0);a.lineTo(1*b,1*c);b=a.q;b.C=new Q(.25,.5);b.D=new Q(.75,1);z.u(a);return b},LogicOr:function(a,b,c){a=z.v(); +R(a,0,0,!1);a.lineTo(.5*b,1*c);a.lineTo(1*b,0);b=a.q;b.C=new Q(.219,0);b.D=new Q(.78,.409);z.u(a);return b},LogicXor:function(a,b,c){a=z.v();R(a,.5*b,0,!1);a.lineTo(.5*b,1*c);a.moveTo(0,.5*c);a.lineTo(1*b,.5*c);var d=.5*Fd;S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);b=a.q;b.Zd=Zi;z.u(a);return b},LogicTruth:function(a,b,c){a=z.v();R(a,0,0,!1);a.lineTo(1*b,0);a.moveTo(.5*b,0);a.lineTo(.5*b,1*c); +b=a.q;z.u(a);return b},LogicFalsity:function(a,b,c){a=z.v();R(a,0,1*c,!1);a.lineTo(1*b,1*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,0);b=a.q;z.u(a);return b},LogicThereExists:function(a,b,c){a=z.v();R(a,0,0,!1);a.lineTo(1*b,0);a.lineTo(1*b,.5*c);a.lineTo(0,.5*c);a.moveTo(1*b,.5*c);a.lineTo(1*b,1*c);a.lineTo(0,1*c);b=a.q;z.u(a);return b},LogicForAll:function(a,b,c){a=z.v();R(a,0,0,!1);a.lineTo(.5*b,1*c);a.lineTo(1*b,0);a.moveTo(.25*b,.5*c);a.lineTo(.75*b,.5*c);b=a.q;b.C=new Q(.25,0);b.D=new Q(.75,.5);z.u(a); +return b},LogicIsDefinedAs:function(a,b,c){a=z.v();R(a,0,0,!1);a.lineTo(b,0);a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.moveTo(0,c);a.lineTo(b,c);b=a.q;b.C=new Q(.01,.01);b.D=new Q(.99,.49);z.u(a);return b},LogicIntersect:function(a,b,c){var d=.5*Fd;a=z.v();R(a,0,1*c,!1);a.lineTo(0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);a.lineTo(1*b,1*c);b=a.q;b.C=new Q(0,.5);b.D=ic;z.u(a);return b},LogicUnion:function(a,b,c){var d=.5*Fd;a=z.v();R(a,1*b,0,!1);a.lineTo(1*b,.5*c);S(a, +1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);a.lineTo(0,0);b=a.q;b.C=Zb;b.D=new Q(1,.5);z.u(a);return b},Arrow:function(a,b,c){var d=a?a.Ic:NaN,e=a?a.gu:NaN;isNaN(d)&&(d=.3);isNaN(e)&&(e=.3);a=z.v();R(a,0,(.5-e/2)*c,!0);a.lineTo((1-d)*b,(.5-e/2)*c);a.lineTo((1-d)*b,0);a.lineTo(1*b,.5*c);a.lineTo((1-d)*b,1*c);a.lineTo((1-d)*b,(.5+e/2)*c);a.lineTo(0,(.5+e/2)*c);T(a);b=a.q;b.C=new Q(0,.5-e/2);d=Le(0,.5+e/2,1,.5+e/2,1-d,1,1,.5,z.O());b.D=new Q(d.x,d.y);z.A(d);z.u(a);return b}, +ISOProcess:"Chevron",Chevron:function(a,b,c){a=z.v();R(a,0,0,!0);a.lineTo(.5*b,0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,1*c);a.lineTo(.5*b,.5*c);T(a);b=a.q;z.u(a);return b},DoubleArrow:function(a,b,c){a=z.v();R(a,0,0,!0);a.lineTo(.3*b,.214*c);a.lineTo(.3*b,0);a.lineTo(1*b,.5*c);a.lineTo(.3*b,1*c);a.lineTo(.3*b,.786*c);a.lineTo(0,1*c);T(a);R(a,.3*b,.214*c,!1);a.lineTo(.3*b,.786*c);a.fb(!1);b=a.q;z.u(a);return b},DoubleEndArrow:function(a,b,c){a=z.v();R(a,1*b,.5*c,!0);a.lineTo(.7*b,1*c); +a.lineTo(.7*b,.7*c);a.lineTo(.3*b,.7*c);a.lineTo(.3*b,1*c);a.lineTo(0,.5*c);a.lineTo(.3*b,0);a.lineTo(.3*b,.3*c);a.lineTo(.7*b,.3*c);a.lineTo(.7*b,0);T(a);b=a.q;c=Le(0,.5,.3,0,0,.3,.3,.3,z.O());b.C=new Q(c.x,c.y);c=Le(.7,1,1,.5,.7,.7,1,.7,c);b.D=new Q(c.x,c.y);z.A(c);z.u(a);return b},IBeamArrow:function(a,b,c){a=z.v();R(a,1*b,.5*c,!0);a.lineTo(.7*b,1*c);a.lineTo(.7*b,.7*c);a.lineTo(.2*b,.7*c);a.lineTo(.2*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.2*b,0);a.lineTo(.2*b,.3*c);a.lineTo(.7*b,.3*c); +a.lineTo(.7*b,0);T(a);b=a.q;b.C=new Q(0,.3);c=Le(.7,1,1,.5,.7,.7,1,.7,z.O());b.D=new Q(c.x,c.y);z.A(c);z.u(a);return b},Pointer:function(a,b,c){a=z.v();R(a,1*b,.5*c,!0);a.lineTo(0,1*c);a.lineTo(.2*b,.5*c);a.lineTo(0,0);T(a);b=a.q;b.C=new Q(.2,.35);c=Le(.2,.65,1,.65,0,1,1,.5,z.O());b.D=new Q(c.x,c.y);z.A(c);z.u(a);return b},RoundedPointer:function(a,b,c){a=z.v();R(a,1*b,.5*c,!0);a.lineTo(0,1*c);S(a,.5*b,.75*c,.5*b,.25*c,0,0);T(a);b=a.q;b.C=new Q(.4,.35);c=Le(.2,.65,1,.65,0,1,1,.5,z.O());b.D=new Q(c.x, +c.y);z.A(c);z.u(a);return b},SplitEndArrow:function(a,b,c){a=z.v();R(a,1*b,.5*c,!0);a.lineTo(.7*b,1*c);a.lineTo(.7*b,.7*c);a.lineTo(0,.7*c);a.lineTo(.2*b,.5*c);a.lineTo(0,.3*c);a.lineTo(.7*b,.3*c);a.lineTo(.7*b,0);T(a);b=a.q;b.C=new Q(.2,.3);c=Le(.7,1,1,.5,.7,.7,1,.7,z.O());b.D=new Q(c.x,c.y);z.A(c);z.u(a);return b},MessageToUser:"SquareArrow",SquareArrow:function(a,b,c){a=z.v();R(a,1*b,.5*c,!0);a.lineTo(.7*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.7*b,0);T(a);b=a.q;b.C=Zb;b.D=new Q(.7,1);z.u(a); +return b},Cone1:function(a,b,c){var d=.5*Fd,e=.1*Fd;a=z.v();R(a,0,.9*c,!0);a.lineTo(.5*b,0);a.lineTo(1*b,.9*c);S(a,1*b,(.9+e)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.9+e)*c,0,.9*c);T(a);b=a.q;b.C=new Q(.25,.5);b.D=new Q(.75,.97);z.u(a);return b},Cone2:function(a,b,c){a=z.v();R(a,0,.9*c,!0);S(a,(1-.85/.9)*b,1*c,.85/.9*b,1*c,1*b,.9*c);a.lineTo(.5*b,0);a.lineTo(0,.9*c);T(a);R(a,0,.9*c,!1);S(a,(1-.85/.9)*b,.8*c,.85/.9*b,.8*c,1*b,.9*c);a.fb(!1);b=a.q;b.C=new Q(.25,.5);b.D=new Q(.75,.82);z.u(a);return b}, +Cube1:function(a,b,c){a=z.v();R(a,.5*b,1*c,!0);a.lineTo(1*b,.85*c);a.lineTo(1*b,.15*c);a.lineTo(.5*b,0*c);a.lineTo(0*b,.15*c);a.lineTo(0*b,.85*c);T(a);R(a,.5*b,1*c,!1);a.lineTo(.5*b,.3*c);a.lineTo(0,.15*c);a.moveTo(.5*b,.3*c);a.lineTo(1*b,.15*c);a.fb(!1);b=a.q;b.C=new Q(0,.3);b.D=new Q(.5,.85);z.u(a);return b},Cube2:function(a,b,c){a=z.v();R(a,0,.3*c,!0);a.lineTo(0*b,1*c);a.lineTo(.7*b,c);a.lineTo(1*b,.7*c);a.lineTo(1*b,0*c);a.lineTo(.3*b,0*c);T(a);R(a,0,.3*c,!1);a.lineTo(.7*b,.3*c);a.lineTo(1*b, +0*c);a.moveTo(.7*b,.3*c);a.lineTo(.7*b,1*c);a.fb(!1);b=a.q;b.C=new Q(0,.3);b.D=new Q(.7,1);z.u(a);return b},MagneticData:"Cylinder1",Cylinder1:function(a,b,c){var d=.5*Fd,e=.1*Fd;a=z.v();R(a,0,.1*c,!0);S(a,0,(.1-e)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.1-e)*c,1*b,.1*c);a.lineTo(b,.9*c);S(a,1*b,(.9+e)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.9+e)*c,0,.9*c);a.lineTo(0,.1*c);R(a,0,.1*c,!1);S(a,0,(.1+e)*c,(.5-d)*b,.2*c,.5*b,.2*c);S(a,(.5+d)*b,.2*c,1*b,(.1+e)*c,1*b,.1*c);a.fb(!1);b=a.q;b.C=new Q(0, +.2);b.D=new Q(1,.9);z.u(a);return b},Cylinder2:function(a,b,c){var d=.5*Fd,e=.1*Fd;a=z.v();R(a,0,.9*c,!0);a.lineTo(0,.1*c);S(a,0,(.1-e)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.1-e)*c,1*b,.1*c);a.lineTo(1*b,.9*c);S(a,1*b,(.9+e)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.9+e)*c,0,.9*c);R(a,0,.9*c,!1);S(a,0,(.9-e)*c,(.5-d)*b,.8*c,.5*b,.8*c);S(a,(.5+d)*b,.8*c,1*b,(.9-e)*c,1*b,.9*c);a.fb(!1);b=a.q;b.C=new Q(0,.1);b.D=new Q(1,.8);z.u(a);return b},Cylinder3:function(a,b,c){var d=.1*Fd,e=.5*Fd;a=z.v(); +R(a,.1*b,0,!0);a.lineTo(.9*b,0);S(a,(.9+d)*b,0,1*b,(.5-e)*c,1*b,.5*c);S(a,1*b,(.5+e)*c,(.9+d)*b,1*c,.9*b,1*c);a.lineTo(.1*b,1*c);S(a,(.1-d)*b,1*c,0,(.5+e)*c,0,.5*c);S(a,0,(.5-e)*c,(.1-d)*b,0,.1*b,0);R(a,.1*b,0,!1);S(a,(.1+d)*b,0,.2*b,(.5-e)*c,.2*b,.5*c);S(a,.2*b,(.5+e)*c,(.1+d)*b,1*c,.1*b,1*c);a.fb(!1);b=a.q;b.C=new Q(.2,0);b.D=new Q(.9,1);z.u(a);return b},DirectData:"Cylinder4",Cylinder4:function(a,b,c){var d=.1*Fd,e=.5*Fd;a=z.v();R(a,.9*b,0,!0);S(a,(.9+d)*b,0,1*b,(.5-e)*c,1*b,.5*c);S(a,1*b,(.5+ +e)*c,(.9+d)*b,1*c,.9*b,1*c);a.lineTo(.1*b,1*c);S(a,(.1-d)*b,1*c,0,(.5+e)*c,0,.5*c);S(a,0,(.5-e)*c,(.1-d)*b,0,.1*b,0);a.lineTo(.9*b,0);R(a,.9*b,0,!1);S(a,(.9-d)*b,0,.8*b,(.5-e)*c,.8*b,.5*c);S(a,.8*b,(.5+e)*c,(.9-d)*b,1*c,.9*b,1*c);a.fb(!1);b=a.q;b.C=new Q(.1,0);b.D=new Q(.8,1);z.u(a);return b},Prism1:function(a,b,c){a=z.v();R(a,.25*b,.25*c,!0);a.lineTo(.75*b,0);a.lineTo(b,.5*c);a.lineTo(.5*b,c);a.lineTo(0,c);T(a);R(a,.25*b,.25*c,!1);a.lineTo(.5*b,c);a.fb(!1);b=a.q;b.C=new Q(.408,.172);b.D=new Q(.833, +.662);z.u(a);return b},Prism2:function(a,b,c){a=z.v();R(a,0,.25*c,!0);a.lineTo(.75*b,0);a.lineTo(1*b,.25*c);a.lineTo(.75*b,.75*c);a.lineTo(0,1*c);T(a);R(a,0,c,!1);a.lineTo(.25*b,.5*c);a.lineTo(b,.25*c);a.moveTo(0,.25*c);a.lineTo(.25*b,.5*c);a.fb(!1);b=a.q;b.C=new Q(.25,.5);b.D=new Q(.75,.75);z.u(a);return b},Pyramid1:function(a,b,c){a=z.v();R(a,.5*b,0,!0);a.lineTo(b,.75*c);a.lineTo(.5*b,1*c);a.lineTo(0,.75*c);T(a);R(a,.5*b,0,!1);a.lineTo(.5*b,1*c);a.fb(!1);b=a.q;b.C=new Q(.25,.367);b.D=new Q(.75, +.875);z.u(a);return b},Pyramid2:function(a,b,c){a=z.v();R(a,.5*b,0,!0);a.lineTo(b,.85*c);a.lineTo(.5*b,1*c);a.lineTo(0,.85*c);T(a);R(a,.5*b,0,!1);a.lineTo(.5*b,.7*c);a.lineTo(0,.85*c);a.moveTo(.5*b,.7*c);a.lineTo(1*b,.85*c);a.fb(!1);b=a.q;b.C=new Q(.25,.367);b.D=new Q(.75,.875);z.u(a);return b},Actor:function(a,b,c){var d=.2*Fd,e=.1*Fd,g=.5,h=.1;a=z.v();R(a,g*b,(h+.1)*c,!0);S(a,(g-d)*b,(h+.1)*c,(g-.2)*b,(h+e)*c,(g-.2)*b,h*c);S(a,(g-.2)*b,(h-e)*c,(g-d)*b,(h-.1)*c,g*b,(h-.1)*c);S(a,(g+d)*b,(h-.1)*c, +(g+.2)*b,(h-e)*c,(g+.2)*b,h*c);S(a,(g+.2)*b,(h+e)*c,(g+d)*b,(h+.1)*c,g*b,(h+.1)*c);d=.05;e=Fd*d;R(a,.5*b,.2*c,!0);a.lineTo(.95*b,.2*c);g=.95;h=.25;S(a,(g+e)*b,(h-d)*c,(g+d)*b,(h-e)*c,(g+d)*b,h*c);a.lineTo(1*b,.6*c);a.lineTo(.85*b,.6*c);a.lineTo(.85*b,.35*c);d=.025;e=Fd*d;g=.825;h=.35;S(a,(g+d)*b,(h-e)*c,(g+e)*b,(h-d)*c,g*b,(h-d)*c);S(a,(g-e)*b,(h-d)*c,(g-d)*b,(h-e)*c,(g-d)*b,h*c);a.lineTo(.8*b,1*c);a.lineTo(.55*b,1*c);a.lineTo(.55*b,.7*c);d=.05;e=Fd*d;g=.5;h=.7;S(a,(g+d)*b,(h-e)*c,(g+e)*b,(h-d)*c, +g*b,(h-d)*c);S(a,(g-e)*b,(h-d)*c,(g-d)*b,(h-e)*c,(g-d)*b,h*c);a.lineTo(.45*b,1*c);a.lineTo(.2*b,1*c);a.lineTo(.2*b,.35*c);d=.025;e=Fd*d;g=.175;h=.35;S(a,(g+d)*b,(h-e)*c,(g+e)*b,(h-d)*c,g*b,(h-d)*c);S(a,(g-e)*b,(h-d)*c,(g-d)*b,(h-e)*c,(g-d)*b,h*c);a.lineTo(.15*b,.6*c);a.lineTo(0*b,.6*c);a.lineTo(0*b,.25*c);d=.05;e=Fd*d;g=.05;h=.25;S(a,(g-d)*b,(h-e)*c,(g-e)*b,(h-d)*c,g*b,(h-d)*c);a.lineTo(.5*b,.2*c);b=a.q;b.C=new Q(.2,.2);b.D=new Q(.8,.65);z.u(a);return b},Card:function(a,b,c){a=z.v();R(a,1*b,0*c,!0); +a.lineTo(1*b,1*c);a.lineTo(0*b,1*c);a.lineTo(0*b,.2*c);a.lineTo(.2*b,0*c);T(a);b=a.q;b.C=new Q(0,.2);b.D=ic;z.u(a);return b},Collate:function(a,b,c){a=z.v();R(a,.5*b,.5*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(.5*b,.5*c);R(a,.5*b,.5*c,!0);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(.5*b,.5*c);b=a.q;b.C=new Q(.25,0);b.D=new Q(.75,.25);z.u(a);return b},CreateRequest:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.1);var d=z.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);T(d);R(d,0, +a*c,!1);d.lineTo(1*b,a*c);d.moveTo(0,(1-a)*c);d.lineTo(1*b,(1-a)*c);d.fb(!1);b=d.q;b.C=new Q(0,a);b.D=new Q(1,1-a);z.u(d);return b},Database:function(a,b,c){a=z.v();var d=.5*Fd,e=.1*Fd;R(a,1*b,.1*c,!0);a.lineTo(1*b,.9*c);S(a,1*b,(.9+e)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.9+e)*c,0,.9*c);a.lineTo(0,.1*c);S(a,0,(.1-e)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.1-e)*c,1*b,.1*c);R(a,1*b,.1*c,!1);S(a,1*b,(.1+e)*c,(.5+d)*b,.2*c,.5*b,.2*c);S(a,(.5-d)*b,.2*c,0,(.1+e)*c,0,.1*c);a.moveTo(1*b,.2*c); +S(a,1*b,(.2+e)*c,(.5+d)*b,.3*c,.5*b,.3*c);S(a,(.5-d)*b,.3*c,0,(.2+e)*c,0,.2*c);a.moveTo(1*b,.3*c);S(a,1*b,(.3+e)*c,(.5+d)*b,.4*c,.5*b,.4*c);S(a,(.5-d)*b,.4*c,0,(.3+e)*c,0,.3*c);a.fb(!1);b=a.q;b.C=new Q(0,.4);b.D=new Q(1,.9);z.u(a);return b},StoredData:"DataStorage",DataStorage:function(a,b,c){a=z.v();R(a,0,0,!0);a.lineTo(.75*b,0);S(a,1*b,0,1*b,1*c,.75*b,1*c);a.lineTo(0,1*c);S(a,.25*b,.9*c,.25*b,.1*c,0,0);T(a);b=a.q;b.C=new Q(.226,0);b.D=new Q(.81,1);z.u(a);return b},DiskStorage:function(a,b,c){a= +z.v();var d=.5*Fd,e=.1*Fd;R(a,1*b,.1*c,!0);a.lineTo(1*b,.9*c);S(a,1*b,(.9+e)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.9+e)*c,0,.9*c);a.lineTo(0,.1*c);S(a,0,(.1-e)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.1-e)*c,1*b,.1*c);R(a,1*b,.1*c,!1);S(a,1*b,(.1+e)*c,(.5+d)*b,.2*c,.5*b,.2*c);S(a,(.5-d)*b,.2*c,0,(.1+e)*c,0,.1*c);a.moveTo(1*b,.2*c);S(a,1*b,(.2+e)*c,(.5+d)*b,.3*c,.5*b,.3*c);S(a,(.5-d)*b,.3*c,0,(.2+e)*c,0,.2*c);a.fb(!1);b=a.q;b.C=new Q(0,.3);b.D=new Q(1,.9);z.u(a);return b},Display:function(a, +b,c){a=z.v();R(a,.25*b,0,!0);a.lineTo(.75*b,0);S(a,1*b,0,1*b,1*c,.75*b,1*c);a.lineTo(.25*b,1*c);a.lineTo(0,.5*c);T(a);b=a.q;b.C=new Q(.25,0);b.D=new Q(.75,1);z.u(a);return b},DividedEvent:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)?a=.2:.15>a&&(a=.15);var d=z.v(),e=.2*Fd;R(d,0,.2*c,!0);S(d,0,(.2-e)*c,(.2-e)*b,0,.2*b,0);d.lineTo(.8*b,0);S(d,(.8+e)*b,0,1*b,(.2-e)*c,1*b,.2*c);d.lineTo(1*b,.8*c);S(d,1*b,(.8+e)*c,(.8+e)*b,1*c,.8*b,1*c);d.lineTo(.2*b,1*c);S(d,(.2-e)*b,1*c,0,(.8+e)*c,0,.8*c);d.lineTo(0,.2*c); +R(d,0,a*c,!1);d.lineTo(1*b,a*c);d.fb(!1);b=d.q;b.C=new Q(0,a);b.D=new Q(1,1-a);z.u(d);return b},DividedProcess:function(a,b,c){a=a?a.Ic:NaN;if(isNaN(a)||.1>a)a=.1;var d=z.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);T(d);R(d,0,a*c,!1);d.lineTo(1*b,a*c);d.fb(!1);b=d.q;b.C=new Q(0,a);b.D=ic;z.u(d);return b},Document:function(a,b,c){c/=.8;a=z.v();R(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);S(a,.5*b,.4*c,.5*b,1*c,0,.7*c);T(a);b=a.q;b.C=Zb;b.D=new Q(1,.6);z.u(a); +return b},ExternalOrganization:function(a,b,c){a=a?a.Ic:NaN;if(isNaN(a)||.2>a)a=.2;var d=z.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);T(d);R(d,a*b,0,!1);d.lineTo(0,a*c);d.moveTo(1*b,a*c);d.lineTo((1-a)*b,0);d.moveTo(0,(1-a)*c);d.lineTo(a*b,1*c);d.moveTo((1-a)*b,1*c);d.lineTo(1*b,(1-a)*c);d.fb(!1);b=d.q;b.C=new Q(a/2,a/2);b.D=new Q(1-a/2,1-a/2);z.u(d);return b},ExternalProcess:function(a,b,c){a=z.v();R(a,.5*b,0,!0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,.5*c);T(a); +R(a,.1*b,.4*c,!1);a.lineTo(.1*b,.6*c);a.moveTo(.9*b,.6*c);a.lineTo(.9*b,.4*c);a.moveTo(.6*b,.1*c);a.lineTo(.4*b,.1*c);a.moveTo(.4*b,.9*c);a.lineTo(.6*b,.9*c);a.fb(!1);b=a.q;b.C=new Q(.25,.25);b.D=new Q(.75,.75);z.u(a);return b},File:function(a,b,c){a=z.v();R(a,0,0,!0);a.lineTo(.75*b,0);a.lineTo(1*b,.25*c);a.lineTo(1*b,1*c);a.lineTo(0,1*c);T(a);R(a,.75*b,0,!1);a.lineTo(.75*b,.25*c);a.lineTo(1*b,.25*c);a.fb(!1);b=a.q;b.C=new Q(0,.25);b.D=ic;z.u(a);return b},Interrupt:function(a,b,c){a=z.v();R(a,1*b, +.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);R(a,1*b,.5*c,!1);a.lineTo(1*b,1*c);R(a,1*b,.5*c,!1);a.lineTo(1*b,0);b=a.q;b.C=new Q(0,.25);b.D=new Q(.5,.75);z.u(a);return b},InternalStorage:function(a,b,c){var d=a?a.Ic:NaN;a=a?a.gu:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.1);var e=z.v();R(e,0,0,!0);e.lineTo(1*b,0);e.lineTo(1*b,1*c);e.lineTo(0,1*c);T(e);R(e,d*b,0,!1);e.lineTo(d*b,1*c);e.moveTo(0,a*c);e.lineTo(1*b,a*c);e.fb(!1);b=e.q;b.C=new Q(d,a);b.D=ic;z.u(e);return b},Junction:function(a,b, +c){a=z.v();var d=1/Math.SQRT2,e=(1-1/Math.SQRT2)/2,g=.5*Fd;R(a,1*b,.5*c,!0);S(a,1*b,(.5+g)*c,(.5+g)*b,1*c,.5*b,1*c);S(a,(.5-g)*b,1*c,0,(.5+g)*c,0,.5*c);S(a,0,(.5-g)*c,(.5-g)*b,0,.5*b,0);S(a,(.5+g)*b,0,1*b,(.5-g)*c,1*b,.5*c);R(a,(e+d)*b,(e+d)*c,!1);a.lineTo(e*b,e*c);a.moveTo(e*b,(e+d)*c);a.lineTo((e+d)*b,e*c);a.fb(!1);b=a.q;b.Zd=Zi;z.u(a);return b},LinedDocument:function(a,b,c){c/=.8;a=z.v();R(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);S(a,.5*b,.4*c,.5*b,1*c,0,.7*c);T(a);R(a,.1* +b,0,!1);a.lineTo(.1*b,.75*c);a.fb(!1);b=a.q;b.C=new Q(.1,0);b.D=new Q(1,.6);z.u(a);return b},LoopLimit:function(a,b,c){a=z.v();R(a,0,1*c,!0);a.lineTo(0,.25*c);a.lineTo(.25*b,0);a.lineTo(.75*b,0);a.lineTo(1*b,.25*c);a.lineTo(1*b,1*c);T(a);b=a.q;b.C=new Q(0,.25);b.D=ic;z.u(a);return b},SequentialData:"MagneticTape",MagneticTape:function(a,b,c){a=z.v();var d=.5*Fd;R(a,.5*b,1*c,!0);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,(.5+ +d)*c,(.5+d)*b,.9*c,.6*b,.9*c);a.lineTo(1*b,.9*c);a.lineTo(1*b,1*c);a.lineTo(.5*b,1*c);b=a.q;b.C=new Q(.15,.15);b.D=new Q(.85,.8);z.u(a);return b},ManualInput:function(a,b,c){a=z.v();R(a,1*b,0,!0);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.25*c);T(a);b=a.q;b.C=new Q(0,.25);b.D=ic;z.u(a);return b},MessageFromUser:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.7);var d=z.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(a*b,.5*c);d.lineTo(1*b,1*c);d.lineTo(0,1*c);T(d);b=d.q;b.C=Zb;b.D=new Q(a,1);z.u(d);return b}, +MicroformProcessing:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.25);var d=z.v();R(d,0,0,!0);d.lineTo(.5*b,a*c);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(.5*b,(1-a)*c);d.lineTo(0,1*c);T(d);b=d.q;b.C=new Q(0,a);b.D=new Q(1,1-a);z.u(d);return b},MicroformRecording:function(a,b,c){a=z.v();R(a,0,0,!0);a.lineTo(.75*b,.25*c);a.lineTo(1*b,.15*c);a.lineTo(1*b,.85*c);a.lineTo(.75*b,.75*c);a.lineTo(0,1*c);T(a);b=a.q;b.C=new Q(0,.25);b.D=new Q(1,.75);z.u(a);return b},MultiDocument:function(a,b,c){c/=.8;a=z.v(); +R(a,b,0,!0);a.lineTo(b,.5*c);S(a,.96*b,.47*c,.93*b,.45*c,.9*b,.44*c);a.lineTo(.9*b,.6*c);S(a,.86*b,.57*c,.83*b,.55*c,.8*b,.54*c);a.lineTo(.8*b,.7*c);S(a,.4*b,.4*c,.4*b,1*c,0,.7*c);a.lineTo(0,.2*c);a.lineTo(.1*b,.2*c);a.lineTo(.1*b,.1*c);a.lineTo(.2*b,.1*c);a.lineTo(.2*b,0);T(a);R(a,.1*b,.2*c,!1);a.lineTo(.8*b,.2*c);a.lineTo(.8*b,.54*c);a.moveTo(.2*b,.1*c);a.lineTo(.9*b,.1*c);a.lineTo(.9*b,.44*c);a.fb(!1);b=a.q;b.C=new Q(0,.25);b.D=new Q(.8,.77);z.u(a);return b},MultiProcess:function(a,b,c){a=z.v(); +R(a,.1*b,.1*c,!0);a.lineTo(.2*b,.1*c);a.lineTo(.2*b,0);a.lineTo(1*b,0);a.lineTo(1*b,.8*c);a.lineTo(.9*b,.8*c);a.lineTo(.9*b,.9*c);a.lineTo(.8*b,.9*c);a.lineTo(.8*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.2*c);a.lineTo(.1*b,.2*c);T(a);R(a,.2*b,.1*c,!1);a.lineTo(.9*b,.1*c);a.lineTo(.9*b,.8*c);a.moveTo(.1*b,.2*c);a.lineTo(.8*b,.2*c);a.lineTo(.8*b,.9*c);a.fb(!1);b=a.q;b.C=new Q(0,.2);b.D=new Q(.8,1);z.u(a);return b},OfflineStorage:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.1);var d=1-a,e=z.v();R(e,0,0,!0);e.lineTo(1* +b,0);e.lineTo(.5*b,1*c);T(e);R(e,.5*a*b,a*c,!1);e.lineTo((1-.5*a)*b,a*c);e.fb(!1);b=e.q;b.C=new Q(d/4+.5*a,a);b.D=new Q(3*d/4+.5*a,a+.5*d);z.u(e);return b},OffPageConnector:function(a,b,c){a=z.v();R(a,0,0,!0);a.lineTo(.75*b,0);a.lineTo(1*b,.5*c);a.lineTo(.75*b,1*c);a.lineTo(0,1*c);T(a);b=a.q;b.C=Zb;b.D=new Q(.75,1);z.u(a);return b},Or:function(a,b,c){a=z.v();var d=.5*Fd;R(a,1*b,.5*c,!0);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a, +(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);R(a,1*b,.5*c,!1);a.lineTo(0,.5*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,0);a.fb(!1);b=a.q;b.Zd=Zi;z.u(a);return b},PaperTape:function(a,b,c){c/=.8;a=z.v();R(a,0,.7*c,!0);a.lineTo(0,.3*c);S(a,.5*b,.6*c,.5*b,0,1*b,.3*c);a.lineTo(1*b,.7*c);S(a,.5*b,.4*c,.5*b,1*c,0,.7*c);T(a);b=a.q;b.C=new Q(0,.49);b.D=new Q(1,.75);z.u(a);return b},PrimitiveFromCall:function(a,b,c){var d=a?a.Ic:NaN;a=a?a.gu:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=z.v();R(e,0,0,!0);e.lineTo(1*b,0);e.lineTo((1- +a)*b,.5*c);e.lineTo(1*b,1*c);e.lineTo(0,1*c);T(e);b=e.q;b.C=new Q(d,0);b.D=new Q(1-a,1);z.u(e);return b},PrimitiveToCall:function(a,b,c){var d=a?a.Ic:NaN;a=a?a.gu:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=z.v();R(e,0,0,!0);e.lineTo((1-a)*b,0);e.lineTo(1*b,.5*c);e.lineTo((1-a)*b,1*c);e.lineTo(0,1*c);T(e);b=e.q;b.C=new Q(d,0);b.D=new Q(1-a,1);z.u(e);return b},Subroutine:"Procedure",Procedure:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.1);var d=z.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0, +1*c);T(d);R(d,(1-a)*b,0,!1);d.lineTo((1-a)*b,1*c);d.moveTo(a*b,0);d.lineTo(a*b,1*c);d.fb(!1);b=d.q;b.C=new Q(a,0);b.D=new Q(1-a,1);z.u(d);return b},Process:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.1);var d=z.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);T(d);R(d,a*b,0,!1);d.lineTo(a*b,1*c);d.fb(!1);b=d.q;b.C=new Q(a,0);b.D=ic;z.u(d);return b},Sort:function(a,b,c){a=z.v();R(a,.5*b,0,!0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,.5*c);T(a);R(a,0,.5*c,!1);a.lineTo(1*b,.5* +c);a.fb(!1);b=a.q;b.C=new Q(.25,.25);b.D=new Q(.75,.5);z.u(a);return b},Start:function(a,b,c){a=z.v();R(a,.25*b,0,!0);R(a,.25*b,0,!0);a.arcTo(270,180,.75*b,.5*c,.25*b,.5*c);a.arcTo(90,180,.25*b,.5*c,.25*b,.5*c);R(a,.25*b,0,!1);a.lineTo(.25*b,1*c);a.moveTo(.75*b,0);a.lineTo(.75*b,1*c);a.fb(!1);b=a.q;b.C=new Q(.25,0);b.D=new Q(.75,1);z.u(a);return b},Terminator:function(a,b,c){a=z.v();R(a,.25*b,0,!0);a.arcTo(270,180,.75*b,.5*c,.25*b,.5*c);a.arcTo(90,180,.25*b,.5*c,.25*b,.5*c);b=a.q;b.C=new Q(.23,0); +b.D=new Q(.77,1);z.u(a);return b},TransmittalTape:function(a,b,c){a=a?a.Ic:NaN;isNaN(a)&&(a=.1);var d=z.v();R(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(.75*b,(1-a)*c);d.lineTo(0,(1-a)*c);T(d);b=d.q;b.C=Zb;b.D=new Q(1,1-a);z.u(d);return b},AndGate:function(a,b,c){a=z.v();var d=.5*Fd;R(a,0,0,!0);a.lineTo(.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);a.lineTo(0,1*c);T(a);b=a.q;b.C=Zb;b.D=new Q(.55,1);z.u(a);return b},Buffer:function(a,b,c){a=z.v();R(a, +0,0,!0);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);T(a);b=a.q;b.C=new Q(0,.25);b.D=new Q(.5,.75);z.u(a);return b},Clock:function(a,b,c){a=z.v();var d=.5*Fd;R(a,1*b,.5*c,!0);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);R(a,1*b,.5*c,!1);a.lineTo(1*b,.5*c);R(a,.8*b,.75*c,!1);a.lineTo(.8*b,.25*c);a.lineTo(.6*b,.25*c);a.lineTo(.6*b,.75*c);a.lineTo(.4*b,.75*c);a.lineTo(.4*b,.25*c);a.lineTo(.2*b,.25*c);a.lineTo(.2* +b,.75*c);a.fb(!1);b=a.q;b.Zd=Zi;z.u(a);return b},Ground:function(a,b,c){a=z.v();R(a,.5*b,0,!1);a.lineTo(.5*b,.4*c);a.moveTo(.2*b,.6*c);a.lineTo(.8*b,.6*c);a.moveTo(.3*b,.8*c);a.lineTo(.7*b,.8*c);a.moveTo(.4*b,1*c);a.lineTo(.6*b,1*c);b=a.q;z.u(a);return b},Inverter:function(a,b,c){a=z.v();var d=.1*Fd;R(a,.8*b,.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.8*b,.5*c);R(a,1*b,.5*c,!0);S(a,1*b,(.5+d)*c,(.9+d)*b,.6*c,.9*b,.6*c);S(a,(.9-d)*b,.6*c,.8*b,(.5+d)*c,.8*b,.5*c);S(a,.8*b,(.5-d)*c,(.9-d)*b,.4* +c,.9*b,.4*c);S(a,(.9+d)*b,.4*c,1*b,(.5-d)*c,1*b,.5*c);b=a.q;b.C=new Q(0,.25);b.D=new Q(.4,.75);z.u(a);return b},NandGate:function(a,b,c){a=z.v();var d=.5*Fd,e=.4*Fd,g=.1*Fd;R(a,.8*b,.5*c,!0);S(a,.8*b,(.5+e)*c,(.4+d)*b,1*c,.4*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.4*b,0);S(a,(.4+d)*b,0,.8*b,(.5-e)*c,.8*b,.5*c);R(a,1*b,.5*c,!0);S(a,1*b,(.5+g)*c,(.9+g)*b,.6*c,.9*b,.6*c);S(a,(.9-g)*b,.6*c,.8*b,(.5+g)*c,.8*b,.5*c);S(a,.8*b,(.5-g)*c,(.9-g)*b,.4*c,.9*b,.4*c);S(a,(.9+g)*b,.4*c,1*b,(.5-g)*c,1*b,.5* +c);b=a.q;b.C=new Q(0,.05);b.D=new Q(.55,.95);z.u(a);return b},NorGate:function(a,b,c){a=z.v();var d=.5,e=Fd*d,g=0,h=.5;R(a,.8*b,.5*c,!0);S(a,.7*b,(h+e)*c,(g+e)*b,(h+d)*c,0,1*c);S(a,.25*b,.75*c,.25*b,.25*c,0,0);S(a,(g+e)*b,(h-d)*c,.7*b,(h-e)*c,.8*b,.5*c);d=.1;e=.1*Fd;g=.9;h=.5;R(a,(g-d)*b,h*c,!0);S(a,(g-d)*b,(h-e)*c,(g-e)*b,(h-d)*c,g*b,(h-d)*c);S(a,(g+e)*b,(h-d)*c,(g+d)*b,(h-e)*c,(g+d)*b,h*c);S(a,(g+d)*b,(h+e)*c,(g+e)*b,(h+d)*c,g*b,(h+d)*c);S(a,(g-e)*b,(h+d)*c,(g-d)*b,(h+e)*c,(g-d)*b,h*c);b=a.q;b.C= +new Q(.2,.25);b.D=new Q(.6,.75);z.u(a);return b},OrGate:function(a,b,c){a=z.v();var d=.5*Fd;R(a,0,0,!0);S(a,(0+d+d)*b,0*c,.8*b,(.5-d)*c,1*b,.5*c);S(a,.8*b,(.5+d)*c,(0+d+d)*b,1*c,0,1*c);S(a,.25*b,.75*c,.25*b,.25*c,0,0);T(a);b=a.q;b.C=new Q(.2,.25);b.D=new Q(.75,.75);z.u(a);return b},XnorGate:function(a,b,c){a=z.v();var d=.5,e=Fd*d,g=.2,h=.5;R(a,.1*b,0,!1);S(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);R(a,.8*b,.5*c,!0);S(a,.7*b,(h+e)*c,(g+e)*b,(h+d)*c,.2*b,1*c);S(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);S(a,(g+e)* +b,(h-d)*c,.7*b,(h-e)*c,.8*b,.5*c);d=.1;e=.1*Fd;g=.9;h=.5;R(a,(g-d)*b,h*c,!0);S(a,(g-d)*b,(h-e)*c,(g-e)*b,(h-d)*c,g*b,(h-d)*c);S(a,(g+e)*b,(h-d)*c,(g+d)*b,(h-e)*c,(g+d)*b,h*c);S(a,(g+d)*b,(h+e)*c,(g+e)*b,(h+d)*c,g*b,(h+d)*c);S(a,(g-e)*b,(h+d)*c,(g-d)*b,(h+e)*c,(g-d)*b,h*c);b=a.q;b.C=new Q(.4,.25);b.D=new Q(.65,.75);z.u(a);return b},XorGate:function(a,b,c){a=z.v();var d=.5*Fd;R(a,.1*b,0,!1);S(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);R(a,.2*b,0,!0);S(a,(.2+d)*b,0*c,.9*b,(.5-d)*c,1*b,.5*c);S(a,.9*b,(.5+d)* +c,(.2+d)*b,1*c,.2*b,1*c);S(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);T(a);b=a.q;b.C=new Q(.4,.25);b.D=new Q(.8,.75);z.u(a);return b},Capacitor:function(a,b,c){a=z.v();R(a,0,0,!1);a.lineTo(0,1*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.q;z.u(a);return b},Resistor:function(a,b,c){a=z.v();R(a,0,.5*c,!1);a.lineTo(.1*b,0);a.lineTo(.2*b,1*c);a.lineTo(.3*b,0);a.lineTo(.4*b,1*c);a.lineTo(.5*b,0);a.lineTo(.6*b,1*c);a.lineTo(.7*b,.5*c);b=a.q;z.u(a);return b},Inductor:function(a,b,c){a=z.v();var d=.1*Fd,e=.1;R(a,(e-.5* +d)*b,c,!1);S(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.3;S(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);S(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.5;S(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);S(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.7;S(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);S(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.9;S(a,(e+.1)*b,0,(e+d)*b,c,(e+.5*d)*b,c);b=a.q;z.u(a);return b},ACvoltageSource:function(a,b,c){a=z.v();var d=.5*Fd;R(a,0*b,.5*c,!1);S(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);S(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,(.5+d)* +c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b,.5*c);a.moveTo(.1*b,.5*c);S(a,.5*b,0*c,.5*b,1*c,.9*b,.5*c);b=a.q;b.Zd=Zi;z.u(a);return b},DCvoltageSource:function(a,b,c){a=z.v();R(a,0,.75*c,!1);a.lineTo(0,.25*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.q;z.u(a);return b},Diode:function(a,b,c){a=z.v();R(a,1*b,0,!1);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);a.lineTo(1*b,1*c);b=a.q;b.C=new Q(0,.25);b.D=new Q(.5,.75);z.u(a);return b},Wifi:function(a,b,c){var d=b,e=c; +b*=.38;c*=.6;a=z.v();var g=.8*Fd,h=.8,k=0,l=.5,d=(d-b)/2,e=(e-c)/2;R(a,k*b+d,(l+h)*c+e,!0);S(a,(k-g)*b+d,(l+h)*c+e,(k-h)*b+d,(l+g)*c+e,(k-h)*b+d,l*c+e);S(a,(k-h)*b+d,(l-g)*c+e,(k-g)*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);S(a,k*b+d,(l-h)*c+e,(k-h+.5*g)*b+d,(l-g)*c+e,(k-h+.5*g)*b+d,l*c+e);S(a,(k-h+.5*g)*b+d,(l+g)*c+e,k*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);T(a);g=.4*Fd;h=.4;k=.2;l=.5;R(a,k*b+d,(l+h)*c+e,!0);S(a,(k-g)*b+d,(l+h)*c+e,(k-h)*b+d,(l+g)*c+e,(k-h)*b+d,l*c+e);S(a,(k-h)*b+d,(l-g)*c+e,(k-g)*b+d,(l-h)*c+e,k* +b+d,(l-h)*c+e);S(a,k*b+d,(l-h)*c+e,(k-h+.5*g)*b+d,(l-g)*c+e,(k-h+.5*g)*b+d,l*c+e);S(a,(k-h+.5*g)*b+d,(l+g)*c+e,k*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);T(a);g=.2*Fd;h=.2;l=k=.5;R(a,(k-h)*b+d,l*c+e,!0);S(a,(k-h)*b+d,(l-g)*c+e,(k-g)*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);S(a,(k+g)*b+d,(l-h)*c+e,(k+h)*b+d,(l-g)*c+e,(k+h)*b+d,l*c+e);S(a,(k+h)*b+d,(l+g)*c+e,(k+g)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);S(a,(k-g)*b+d,(l+h)*c+e,(k-h)*b+d,(l+g)*c+e,(k-h)*b+d,l*c+e);g=.4*Fd;h=.4;k=.8;l=.5;R(a,k*b+d,(l-h)*c+e,!0);S(a,(k+g)*b+d,(l- +h)*c+e,(k+h)*b+d,(l-g)*c+e,(k+h)*b+d,l*c+e);S(a,(k+h)*b+d,(l+g)*c+e,(k+g)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);S(a,k*b+d,(l+h)*c+e,(k+h-.5*g)*b+d,(l+g)*c+e,(k+h-.5*g)*b+d,l*c+e);S(a,(k+h-.5*g)*b+d,(l-g)*c+e,k*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);T(a);g=.8*Fd;h=.8;k=1;l=.5;R(a,k*b+d,(l-h)*c+e,!0);S(a,(k+g)*b+d,(l-h)*c+e,(k+h)*b+d,(l-g)*c+e,(k+h)*b+d,l*c+e);S(a,(k+h)*b+d,(l+g)*c+e,(k+g)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);S(a,k*b+d,(l+h)*c+e,(k+h-.5*g)*b+d,(l+g)*c+e,(k+h-.5*g)*b+d,l*c+e);S(a,(k+h-.5*g)*b+d,(l-g)*c+ +e,k*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);T(a);b=a.q;z.u(a);return b},Email:function(a,b,c){a=z.v();R(a,0,0,!0);a.lineTo(1*b,0);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);T(a);R(a,0,0,!1);a.lineTo(.5*b,.6*c);a.lineTo(1*b,0);a.moveTo(0,1*c);a.lineTo(.45*b,.54*c);a.moveTo(1*b,1*c);a.lineTo(.55*b,.54*c);a.fb(!1);b=a.q;z.u(a);return b},Ethernet:function(a,b,c){a=z.v();R(a,.35*b,0,!0);a.lineTo(.65*b,0);a.lineTo(.65*b,.4*c);a.lineTo(.35*b,.4*c);a.lineTo(.35*b,0);T(a);R(a,.1*b,1*c,!0,!0);a.lineTo(.4*b,1*c); +a.lineTo(.4*b,.6*c);a.lineTo(.1*b,.6*c);a.lineTo(.1*b,1*c);T(a);R(a,.6*b,1*c,!0,!0);a.lineTo(.9*b,1*c);a.lineTo(.9*b,.6*c);a.lineTo(.6*b,.6*c);a.lineTo(.6*b,1*c);T(a);R(a,0,.5*c,!1);a.lineTo(1*b,.5*c);a.moveTo(.5*b,.5*c);a.lineTo(.5*b,.4*c);a.moveTo(.75*b,.5*c);a.lineTo(.75*b,.6*c);a.moveTo(.25*b,.5*c);a.lineTo(.25*b,.6*c);a.fb(!1);b=a.q;z.u(a);return b},Power:function(a,b,c){a=z.v();var d=.4*Fd,e=.4,g=z.O(),h=z.O(),k=z.O(),l=z.O();se(.5,.5-e,.5+d,.5-e,.5+e,.5-d,.5+e,.5,.5,g,g,h,k,l);var m=z.Tb(h.x, +h.y);R(a,h.x*b,h.y*c,!0);S(a,k.x*b,k.y*c,l.x*b,l.y*c,(.5+e)*b,.5*c);S(a,(.5+e)*b,(.5+d)*c,(.5+d)*b,(.5+e)*c,.5*b,(.5+e)*c);S(a,(.5-d)*b,(.5+e)*c,(.5-e)*b,(.5+d)*c,(.5-e)*b,.5*c);se(.5-e,.5,.5-e,.5-d,.5-d,.5-e,.5,.5-e,.5,k,l,h,g,g);S(a,k.x*b,k.y*c,l.x*b,l.y*c,h.x*b,h.y*c);d=.3*Fd;e=.3;se(.5-e,.5,.5-e,.5-d,.5-d,.5-e,.5,.5-e,.5,k,l,h,g,g);a.lineTo(h.x*b,h.y*c);S(a,l.x*b,l.y*c,k.x*b,k.y*c,(.5-e)*b,.5*c);S(a,(.5-e)*b,(.5+d)*c,(.5-d)*b,(.5+e)*c,.5*b,(.5+e)*c);S(a,(.5+d)*b,(.5+e)*c,(.5+e)*b,(.5+d)*c,(.5+ +e)*b,.5*c);se(.5,.5-e,.5+d,.5-e,.5+e,.5-d,.5+e,.5,.5,g,g,h,k,l);S(a,l.x*b,l.y*c,k.x*b,k.y*c,h.x*b,h.y*c);T(a);R(a,.45*b,0,!0);a.lineTo(.45*b,.5*c);a.lineTo(.55*b,.5*c);a.lineTo(.55*b,0);T(a);z.A(g);z.A(h);z.A(k);z.A(l);z.A(m);b=a.q;b.C=new Q(.25,.55);b.D=new Q(.75,.8);z.u(a);return b},Fallout:function(a,b,c){a=z.v();var d=.5*Fd;R(a,0*b,.5*c,!0);S(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);S(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b, +.5*c);var e=d=0;R(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);d=.4;e=0;T(a);R(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);d=.2;e=-.3;T(a);R(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);T(a);b=a.q;b.Zd=Zi;z.u(a);return b},IrritationHazard:function(a,b,c){a=z.v();R(a,.2*b,0*c,!0);a.lineTo(.5*b,.3*c);a.lineTo(.8* +b,0*c);a.lineTo(1*b,.2*c);a.lineTo(.7*b,.5*c);a.lineTo(1*b,.8*c);a.lineTo(.8*b,1*c);a.lineTo(.5*b,.7*c);a.lineTo(.2*b,1*c);a.lineTo(0*b,.8*c);a.lineTo(.3*b,.5*c);a.lineTo(0*b,.2*c);T(a);b=a.q;b.C=new Q(.3,.3);b.D=new Q(.7,.7);z.u(a);return b},ElectricalHazard:function(a,b,c){a=z.v();R(a,.37*b,0*c,!0);a.lineTo(.5*b,.11*c);a.lineTo(.77*b,.04*c);a.lineTo(.33*b,.49*c);a.lineTo(1*b,.37*c);a.lineTo(.63*b,.86*c);a.lineTo(.77*b,.91*c);a.lineTo(.34*b,1*c);a.lineTo(.34*b,.78*c);a.lineTo(.44*b,.8*c);a.lineTo(.65* +b,.56*c);a.lineTo(0*b,.68*c);T(a);b=a.q;z.u(a);return b},FireHazard:function(a,b,c){a=z.v();R(a,.1*b,1*c,!0);S(a,-.25*b,.63*c,.45*b,.44*c,.29*b,0*c);S(a,.48*b,.17*c,.54*b,.35*c,.51*b,.42*c);S(a,.59*b,.29*c,.58*b,.28*c,.59*b,.18*c);S(a,.8*b,.34*c,.88*b,.43*c,.75*b,.6*c);S(a,.87*b,.48*c,.88*b,.43*c,.88*b,.31*c);S(a,1.17*b,.76*c,.82*b,.8*c,.9*b,1*c);T(a);b=a.q;b.C=new Q(.05,.645);b.D=new Q(.884,.908);z.u(a);return b},BpmnActivityLoop:function(a,b,c){a=z.v();var d=4*(Math.SQRT2-1)/3*.5;R(a,.65*b,1*c, +!1);S(a,(1-d+0)*b,1*c,1*b,(.5+d+0)*c,1*b,.5*c);S(a,1*b,(.5-d+0)*c,(.5+d+0)*b,0*c,.5*b,0*c);S(a,(.5-d+0)*b,0*c,0*b,(.5-d+0)*c,0*b,.5*c);S(a,0*b,(.5+d+0)*c,(.5-d+0)*b,1*c,.35*b,.98*c);a.moveTo(.25*b,.8*c);a.lineTo(.35*b,1*c);a.lineTo(.1*b,1*c);b=a.q;z.u(a);return b},BpmnActivityParallel:function(a,b,c){a=z.v();R(a,0,0,!1);a.lineTo(0,1*c);a.moveTo(.5*b,0);a.lineTo(.5*b,1*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.q;z.u(a);return b},BpmnActivitySequential:function(a,b,c){a=z.v();R(a,0,0,!1);a.lineTo(1* +b,0);a.moveTo(0,.5*c);a.lineTo(1*b,.5*c);a.moveTo(0,1*c);a.lineTo(1*b,1*c);b=a.q;z.u(a);return b},BpmnActivityAdHoc:function(a,b,c){a=z.v();R(a,0,0,!1);R(a,1*b,1*c,!1);R(a,0,.5*c,!1);S(a,.2*b,.35*c,.3*b,.35*c,.5*b,.5*c);S(a,.7*b,.65*c,.8*b,.65*c,1*b,.5*c);b=a.q;z.u(a);return b},BpmnActivityCompensation:function(a,b,c){a=z.v();R(a,0,.5*c,!0);a.lineTo(.5*b,0);a.lineTo(.5*b,.5*c);a.lineTo(1*b,1*c);a.lineTo(1*b,0);a.lineTo(.5*b,.5*c);a.lineTo(.5*b,1*c);T(a);b=a.q;z.u(a);return b},BpmnTaskMessage:function(a, +b,c){a=z.v();R(a,0,.2*c,!0);a.lineTo(1*b,.2*c);a.lineTo(1*b,.8*c);a.lineTo(0,.8*c);a.lineTo(0,.8*c);T(a);R(a,0,.2*c,!1);a.lineTo(.5*b,.5*c);a.lineTo(1*b,.2*c);a.fb(!1);b=a.q;z.u(a);return b},BpmnTaskScript:function(a,b,c){a=z.v();R(a,.7*b,1*c,!0);a.lineTo(.3*b,1*c);S(a,.6*b,.5*c,0,.5*c,.3*b,0);a.lineTo(.7*b,0);S(a,.4*b,.5*c,1*b,.5*c,.7*b,1*c);T(a);R(a,.45*b,.73*c,!1);a.lineTo(.7*b,.73*c);a.moveTo(.38*b,.5*c);a.lineTo(.63*b,.5*c);a.moveTo(.31*b,.27*c);a.lineTo(.56*b,.27*c);a.fb(!1);b=a.q;z.u(a);return b}, +BpmnTaskUser:function(a,b,c){a=z.v();R(a,0,0,!1);R(a,.335*b,(1-.555)*c,!0);a.lineTo(.335*b,.595*c);a.lineTo(.665*b,.595*c);a.lineTo(.665*b,(1-.555)*c);S(a,.88*b,.46*c,.98*b,.54*c,1*b,.68*c);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.68*c);S(a,.02*b,.54*c,.12*b,.46*c,.335*b,(1-.555)*c);a.lineTo(.365*b,.405*c);var d=.5-.285,e=Math.PI/4,g=4*(1-Math.cos(e))/(3*Math.sin(e)),e=g*d,g=g*d;S(a,(.5-(e+d)/2)*b,(d+(d+g)/2)*c,(.5-d)*b,(d+g)*c,(.5-d)*b,d*c);S(a,(.5-d)*b,(d-g)*c,(.5-e)*b,(d-d)*c,.5*b,(d-d)*c); +S(a,(.5+e)*b,(d-d)*c,(.5+d)*b,(d-g)*c,(.5+d)*b,d*c);S(a,(.5+d)*b,(d+g)*c,(.5+(e+d)/2)*b,(d+(d+g)/2)*c,.635*b,.405*c);a.lineTo(.635*b,.405*c);a.lineTo(.665*b,(1-.555)*c);a.lineTo(.665*b,.595*c);a.lineTo(.335*b,.595*c);R(a,.2*b,1*c,!1);a.lineTo(.2*b,.8*c);R(a,.8*b,1*c,!1);a.lineTo(.8*b,.8*c);b=a.q;z.u(a);return b},BpmnEventConditional:function(a,b,c){a=z.v();R(a,.1*b,0,!0);a.lineTo(.9*b,0);a.lineTo(.9*b,1*c);a.lineTo(.1*b,1*c);T(a);R(a,.2*b,.2*c,!1);a.lineTo(.8*b,.2*c);a.moveTo(.2*b,.4*c);a.lineTo(.8* +b,.4*c);a.moveTo(.2*b,.6*c);a.lineTo(.8*b,.6*c);a.moveTo(.2*b,.8*c);a.lineTo(.8*b,.8*c);a.fb(!1);b=a.q;z.u(a);return b},BpmnEventError:function(a,b,c){a=z.v();R(a,0,1*c,!0);a.lineTo(.33*b,0);a.lineTo(.66*b,.5*c);a.lineTo(1*b,0);a.lineTo(.66*b,1*c);a.lineTo(.33*b,.5*c);T(a);b=a.q;z.u(a);return b},BpmnEventEscalation:function(a,b,c){a=z.v();R(a,0,0,!1);R(a,1*b,1*c,!1);R(a,.1*b,1*c,!0);a.lineTo(.5*b,0);a.lineTo(.9*b,1*c);a.lineTo(.5*b,.5*c);T(a);b=a.q;z.u(a);return b},BpmnEventTimer:function(a,b,c){a= +z.v();var d=.5*Fd;R(a,1*b,.5*c,!0);S(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);S(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);S(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);S(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);R(a,.5*b,0,!1);a.lineTo(.5*b,.15*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,.85*c);a.moveTo(0,.5*c);a.lineTo(.15*b,.5*c);a.moveTo(1*b,.5*c);a.lineTo(.85*b,.5*c);a.moveTo(.5*b,.5*c);a.lineTo(.58*b,.1*c);a.moveTo(.5*b,.5*c);a.lineTo(.78*b,.54*c);a.fb(!1);b=a.q;b.Zd=Zi;z.u(a);return b}},dp;for(dp in ro)ro[dp.toLowerCase()]=dp; var ep={"":"",Standard:"F1 m 0,0 l 8,4 -8,4 2,-4 z",Backward:"F1 m 8,0 l -2,4 2,4 -8,-4 z",Triangle:"F1 m 0,0 l 8,4.62 -8,4.62 z",BackwardTriangle:"F1 m 8,4 l 0,4 -8,-4 8,-4 0,4 z",Boomerang:"F1 m 0,0 l 8,4 -8,4 4,-4 -4,-4 z",BackwardBoomerang:"F1 m 8,0 l -8,4 8,4 -4,-4 4,-4 z",SidewaysV:"m 0,0 l 8,4 -8,4 0,-1 6,-3 -6,-3 0,-1 z",BackwardV:"m 8,0 l -8,4 8,4 0,-1 -6,-3 6,-3 0,-1 z",OpenTriangle:"m 0,0 l 8,4 -8,4",BackwardOpenTriangle:"m 8,0 l -8,4 8,4",OpenTriangleLine:"m 0,0 l 8,4 -8,4 m 8.5,0 l 0,-8", BackwardOpenTriangleLine:"m 8,0 l -8,4 8,4 m -8.5,0 l 0,-8",OpenTriangleTop:"m 0,0 l 8,4 m 0,4",BackwardOpenTriangleTop:"m 8,0 l -8,4 m 0,4",OpenTriangleBottom:"m 0,8 l 8,-4",BackwardOpenTriangleBottom:"m 0,4 l 8,4",HalfTriangleTop:"F1 m 0,0 l 0,4 8,0 z m 0,8",BackwardHalfTriangleTop:"F1 m 8,0 l 0,4 -8,0 z m 0,8",HalfTriangleBottom:"F1 m 0,4 l 0,4 8,-4 z",BackwardHalfTriangleBottom:"F1 m 8,4 l 0,4 -8,-4 z",ForwardSemiCircle:"m 4,0 b 270 180 0 4 4",BackwardSemiCircle:"m 4,8 b 90 180 0 -4 4",Feather:"m 0,0 l 3,4 -3,4", BackwardFeather:"m 3,0 l -3,4 3,4",DoubleFeathers:"m 0,0 l 3,4 -3,4 m 3,-8 l 3,4 -3,4",BackwardDoubleFeathers:"m 3,0 l -3,4 3,4 m 3,-8 l -3,4 3,4",TripleFeathers:"m 0,0 l 3,4 -3,4 m 3,-8 l 3,4 -3,4 m 3,-8 l 3,4 -3,4",BackwardTripleFeathers:"m 3,0 l -3,4 3,4 m 3,-8 l -3,4 3,4 m 3,-8 l -3,4 3,4",ForwardSlash:"m 0,8 l 5,-8",BackSlash:"m 0,0 l 5,8",DoubleForwardSlash:"m 0,8 l 4,-8 m -2,8 l 4,-8",DoubleBackSlash:"m 0,0 l 4,8 m -2,-8 l 4,8",TripleForwardSlash:"m 0,8 l 4,-8 m -2,8 l 4,-8 m -2,8 l 4,-8", @@ -1473,181 +1475,181 @@ DoubleTriangle:"F1 m 0,0 l 4,4 -4,4 0,-8 z m 4,0 l 4,4 -4,4 0,-8 z",BigEndArrow TriangleLine:"F1 m 8,4 l -8,-4 0,8 8,-4 z m 0.5,4 l 0,-8",CircleEndedArrow:"F1 m 10,4 l -2,-3 0,2 -2,0 0,2 2,0 0,2 2,-3 z m -4,0 b 0 360 -3 0 3 z",DynamicWidthArrow:"F1 m 0,3 l 2,0 2,-1 2,-2 2,4 -2,4 -2,-2 -2,-1 -2,0 0,-2 z",EquilibriumArrow:"m 0,3 l 8,0 -3,-3 m 3,5 l -8,0 3,3",FastForward:"F1 m 0,0 l 3.5,4 0,-4 3.5,4 0,-4 1,0 0,8 -1,0 0,-4 -3.5,4 0,-4 -3.5,4 0,-8 z",Kite:"F1 m 0,4 l 2,-4 6,4 -6,4 -2,-4 z",HalfArrowTop:"F1 m 0,0 l 4,4 4,0 -8,-4 z m 0,8",HalfArrowBottom:"F1 m 0,8 l 4,-4 4,0 -8,4 z", OpposingDirectionDoubleArrow:"F1 m 0,4 l 2,-4 0,2 4,0 0,-2 2,4 -2,4 0,-2 -4,0 0,2 -2,-4 z",PartialDoubleTriangle:"F1 m 0,0 4,3 0,-3 4,4 -4,4 0,-3 -4,3 0,-8 z",LineCircle:"F1 m 0,0 l 0,8 m 7 -4 b 0 360 -3 0 3 z",DoubleLineCircle:"F1 m 0,0 l 0,8 m 2,-8 l 0,8 m 7 -4 b 0 360 -3 0 3 z",TripleLineCircle:"F1 m 0,0 l 0,8 m 2,-8 l 0,8 m 2,-8 l 0,8 m 7 -4 b 0 360 -3 0 3 z",CircleLine:"F1 m 6 4 b 0 360 -3 0 3 z m 1,-4 l 0,8",DiamondCircle:"F1 m 8,4 l -4,4 -4,-4 4,-4 4,4 m 8,0 b 0 360 -4 0 4 z",PlusCircle:"F1 m 8,4 b 0 360 -4 0 4 l -8 0 z m -4 -4 l 0 8", OpenRightTriangleTop:"m 8,0 l 0,4 -8,0 m 0,4",OpenRightTriangleBottom:"m 8,8 l 0,-4 -8,0",Line:"m 0,0 l 0,8",DoubleLine:"m 0,0 l 0,8 m 2,0 l 0,-8",TripleLine:"m 0,0 l 0,8 m 2,0 l 0,-8 m 2,0 l 0,8",PentagonArrow:"F1 m 8,4 l -4,-4 -4,0 0,8 4,0 4,-4 z"}; -function vo(a){if(null!==ep){for(var b in ep){var c=tf(ep[b],!1);be[b]=c;b.toLowerCase()!==b&&(be[b.toLowerCase()]=b)}ep=null}b=be[a];if(void 0===b){b=a.toLowerCase();if("none"===b)return"None";b=be[b]}return"string"===typeof b?b:b instanceof jf?a:null} -function D(a){0===arguments.length?I.call(this):I.call(this,a);this.T=311807;this.bl=this.ui="";this.rs=this.os=this.Bs=this.xr=null;this.Ds="";this.Xg=this.Cs=this.Jm=null;this.qs="";this.Ko=null;this.ps=Xd;this.ss="";this.Lo=null;this.xe="";this.Ev=this.Bq=this.Ok=null;this.Mi=(new N(NaN,NaN)).freeze();this.Cr="";this.fl=null;this.Dr=Zb;this.Mr=Kd;this.Fr=Ld;this.Uq=null;this.yr=fp;this.Lm=Jd;this.Km="gray";this.Bg=4;this.xC=-1;this.dt=NaN;this.jG=new w;this.hl=null;this.Pj=NaN}y.Pa(D,I); -y.ia("Part",D);D.prototype.cloneProtected=function(a){I.prototype.cloneProtected.call(this,a);a.T=this.T&-4097|49152;a.ui=this.ui;a.bl=this.bl;a.xr=this.xr;a.Bs=this.Bs;a.os=this.os;a.rs=this.rs;a.Ds=this.Ds;a.Cs=this.Cs;a.Xg=null;a.qs=this.qs;a.ps=this.ps.U();a.ss=this.ss;a.xe=this.xe;a.Bq=this.Bq;a.Mi.assign(this.Mi);a.Cr=this.Cr;a.Dr=this.Dr.U();a.Mr=this.Mr.U();a.Fr=this.Fr.U();a.Uq=this.Uq;a.yr=this.yr;a.Lm=this.Lm.U();a.Km=this.Km;a.Bg=this.Bg;a.dt=this.dt}; -D.prototype.li=function(a){I.prototype.li.call(this,a);a.Ml();a.Jm=null;a.Ko=null;a.Lo=null;a.fl=null;a.hl=null};D.prototype.toString=function(){var a=y.kf(Object.getPrototypeOf(this))+"#"+y.nd(this);null!==this.data&&(a+="("+ka(this.data)+")");return a};D.LayoutNone=0;var ul;D.LayoutAdded=ul=1;var Cl;D.LayoutRemoved=Cl=2;D.LayoutShown=4;D.LayoutHidden=8;D.LayoutNodeSized=16;var fm;D.LayoutGroupLayout=fm=32;D.LayoutNodeReplaced=64;var fp;D.LayoutStandard=fp=ul|Cl|28|fm|64;D.LayoutAll=16777215; +function vo(a){if(null!==ep){for(var b in ep){var c=tf(ep[b],!1);ce[b]=c;b.toLowerCase()!==b&&(ce[b.toLowerCase()]=b)}ep=null}b=ce[a];if(void 0===b){b=a.toLowerCase();if("none"===b)return"None";b=ce[b]}return"string"===typeof b?b:b instanceof jf?a:null} +function D(a){0===arguments.length?I.call(this):I.call(this,a);this.T=311807;this.bl=this.si="";this.ss=this.ps=this.Cs=this.yr=null;this.Es="";this.Wg=this.Ds=this.Im=null;this.rs="";this.Ko=null;this.qs=Yd;this.ts="";this.Lo=null;this.we="";this.Fv=this.Bq=this.Ok=null;this.Ki=(new N(NaN,NaN)).freeze();this.Dr="";this.fl=null;this.Er=Zb;this.Nr=Ld;this.Gr=Md;this.Uq=null;this.zr=fp;this.Km=Kd;this.Jm="gray";this.Ag=4;this.AC=-1;this.et=NaN;this.mG=new w;this.hl=null;this.Pj=NaN}z.Qa(D,I); +z.ia("Part",D);D.prototype.cloneProtected=function(a){I.prototype.cloneProtected.call(this,a);a.T=this.T&-4097|49152;a.si=this.si;a.bl=this.bl;a.yr=this.yr;a.Cs=this.Cs;a.ps=this.ps;a.ss=this.ss;a.Es=this.Es;a.Ds=this.Ds;a.Wg=null;a.rs=this.rs;a.qs=this.qs.V();a.ts=this.ts;a.we=this.we;a.Bq=this.Bq;a.Ki.assign(this.Ki);a.Dr=this.Dr;a.Er=this.Er.V();a.Nr=this.Nr.V();a.Gr=this.Gr.V();a.Uq=this.Uq;a.zr=this.zr;a.Km=this.Km.V();a.Jm=this.Jm;a.Ag=this.Ag;a.et=this.et}; +D.prototype.ji=function(a){I.prototype.ji.call(this,a);a.Ml();a.Im=null;a.Ko=null;a.Lo=null;a.fl=null;a.hl=null};D.prototype.toString=function(){var a=z.jf(Object.getPrototypeOf(this))+"#"+z.nd(this);null!==this.data&&(a+="("+ka(this.data)+")");return a};D.LayoutNone=0;var ul;D.LayoutAdded=ul=1;var Cl;D.LayoutRemoved=Cl=2;D.LayoutShown=4;D.LayoutHidden=8;D.LayoutNodeSized=16;var fm;D.LayoutGroupLayout=fm=32;D.LayoutNodeReplaced=64;var fp;D.LayoutStandard=fp=ul|Cl|28|fm|64;D.LayoutAll=16777215; D.prototype.vn=function(a,b,c,d,e,g,h){var k=this.h;null!==k&&(a===Vf&&"elements"===b?e instanceof I?vl(e,function(a){xl(k,a);wl(k,a)}):e instanceof tk&&Sl(k,e):a===Wf&&"elements"===b&&(e instanceof I?vl(e,function(a){Bl(k,a);Al(k,a)}):e instanceof tk&&Tl(k,e)),k.Rc(a,b,c,d,e,g,h))};D.prototype.updateTargetBindings=D.prototype.Mb=function(a){I.prototype.Mb.call(this,a);if(null!==this.data){a=this.va.o;for(var b=a.length,c=0;ch&&a.y>k&&a.righth&&b.y>k&&b.right=c.AI)){this.T^=4096;var d=!1;if(null!==c){d=c.Bb;c.Bb=!0;var e=c.selection;e.Wa();a?e.add(this):e.remove(this);e.freeze()}this.j("isSelected",b,a);this.ce();a=this.fJ;null!==a&&a(this);null!==c&&(c.De(),c.Bb=d)}}}); -y.defineProperty(D,{xh:"isHighlighted"},function(){return 0!==(this.T&524288)},function(a){var b=0!==(this.T&524288);if(b!==a){u&&y.g(a,"boolean",D,"isHighlighted");this.T^=524288;var c=this.h;null!==c&&(c=c.jn,c.Wa(),a?c.add(this):c.remove(this),c.freeze());this.j("isHighlighted",b,a);this.ta()}});y.defineProperty(D,{sk:"isShadowed"},function(){return 0!==(this.T&8192)},function(a){var b=0!==(this.T&8192);b!==a&&(u&&y.g(a,"boolean",D,"isShadowed"),this.T^=8192,this.j("isShadowed",b,a),this.ta())}); -function nl(a){return 0!==(a.T&32768)}function hp(a,b){a.T=b?a.T|32768:a.T&-32769}function Om(a,b){a.T=b?a.T|65536:a.T&-65537}function fk(a){return 0!==(a.T&131072)}D.prototype.Kf=function(a){this.T=a?this.T|131072:this.T&-131073};function op(a,b){a.T=b?a.T|1048576:a.T&-1048577}y.defineProperty(D,{FE:"isAnimated"},function(){return 0!==(this.T&262144)},function(a){var b=0!==(this.T&262144);b!==a&&(u&&y.g(a,"boolean",D,"isAnimated"),this.T^=262144,this.j("isAnimated",b,a))}); -y.defineProperty(D,{Hx:"selectionObjectName"},function(){return this.Ds},function(a){var b=this.Ds;b!==a&&(u&&y.g(a,"string",D,"selectionObjectName"),this.Ds=a,this.Jm=null,this.j("selectionObjectName",b,a))});y.defineProperty(D,{eJ:"selectionAdornmentTemplate"},function(){return this.Bs},function(a){var b=this.Bs;b!==a&&(u&&y.l(a,da,D,"selectionAdornmentTemplate"),this instanceof G&&(a.type=Hi),this.Bs=a,this.j("selectionAdornmentTemplate",b,a))}); -y.w(D,{xn:"selectionObject"},function(){if(null===this.Jm){var a=this.Hx;null!==a&&""!==a?(a=this.qe(a),this.Jm=null!==a?a:this):this instanceof G?(a=this.path,this.Jm=null!==a?a:this):this.Jm=this}return this.Jm});y.defineProperty(D,{fJ:"selectionChanged"},function(){return this.Cs},function(a){var b=this.Cs;b!==a&&(null!==a&&y.g(a,"function",D,"selectionChanged"),this.Cs=a,this.j("selectionChanged",b,a))}); -y.defineProperty(D,{pF:"resizeAdornmentTemplate"},function(){return this.os},function(a){var b=this.os;b!==a&&(u&&y.l(a,da,D,"resizeAdornmentTemplate"),this.os=a,this.j("resizeAdornmentTemplate",b,a))});y.defineProperty(D,{rF:"resizeObjectName"},function(){return this.qs},function(a){var b=this.qs;b!==a&&(u&&y.g(a,"string",D,"resizeObjectName"),this.qs=a,this.Ko=null,this.j("resizeObjectName",b,a))}); -y.w(D,{qF:"resizeObject"},function(){if(null===this.Ko){var a=this.rF;null!==a&&""!==a?(a=this.qe(a),this.Ko=null!==a?a:this):this.Ko=this}return this.Ko});y.defineProperty(D,{XI:"resizeCellSize"},function(){return this.ps},function(a){var b=this.ps;b.N(a)||(u&&y.l(a,Ea,D,"resizeCellSize"),this.ps=a=a.U(),this.j("resizeCellSize",b,a))}); -y.defineProperty(D,{ZI:"rotateAdornmentTemplate"},function(){return this.rs},function(a){var b=this.rs;b!==a&&(u&&y.l(a,da,D,"rotateAdornmentTemplate"),this.rs=a,this.j("rotateAdornmentTemplate",b,a))});y.defineProperty(D,{$I:"rotateObjectName"},function(){return this.ss},function(a){var b=this.ss;b!==a&&(u&&y.g(a,"string",D,"rotateObjectName"),this.ss=a,this.Lo=null,this.j("rotateObjectName",b,a))}); -y.w(D,{uF:"rotateObject"},function(){if(null===this.Lo){var a=this.$I;null!==a&&""!==a?(a=this.qe(a),this.Lo=null!==a?a:this):this.Lo=this}return this.Lo});y.defineProperty(D,{text:"text"},function(){return this.xe},function(a){var b=this.xe;b!==a&&(u&&y.g(a,"string",D,"text"),this.xe=a,this.j("text",b,a))}); -y.defineProperty(D,{Va:"containingGroup"},function(){return this.Ok},function(a){if(this.de()){var b=this.Ok;if(b!==a){u&&null!==a&&y.l(a,F,D,"containingGroup");null===a||this!==a&&!a.ni(this)||(this===a&&y.k("Cannot make a Group a member of itself: "+this.toString()),y.k("Cannot make a Group indirectly contain itself: "+this.toString()+" already contains "+a.toString()));this.I(Cl);var c=this.h;null!==b?pp(b,this):this instanceof F&&null!==c&&c.nl.remove(this);this.Ok=a;null!==a?qp(a,this):this instanceof -F&&null!==c&&c.nl.add(this);this.I(ul);if(null!==c){var d=this.data,e=c.ha;null!==d&&e instanceof V&&e.Kx(d,e.pb(null!==a?a.data:null))}d=this.TD;null!==d&&(e=!0,null!==c&&(e=c.Za,c.Za=!0),d(this,b,a),null!==c&&(c.Za=e));if(this instanceof F)for(c=new K(D),fh(c,this,!0,0,!0),c=c.i;c.next();)if(d=c.value,d instanceof E)for(d=d.ge;d.next();)Vl(d.value);if(this instanceof E)for(d=this.ge;d.next();)Vl(d.value);this.j("containingGroup",b,a);null!==a&&(b=a.layer,null!==b&&kk(b,-1,a))}}else y.k("cannot set the Part.containingGroup of a Link or Adornment")}); -f=D.prototype;f.Ml=function(){var a=this.Va;null!==a&&(a.S(),null!==a.Lb&&a.Lb.S(),a.mf())};f.ta=function(){var a=this.h;null!==a&&!ml(this)&&!nl(this)&&this.isVisible()&&this.Wb.F()&&a.ta(jk(this,this.Wb))};f.Jt=function(a){a||(a=this.Ok,null!==a&&qp(a,this))};f.Kt=function(a){a||(a=this.Ok,null!==a&&pp(a,this))};f.dn=function(){var a=this.data;if(null!==a){var b=this.h;null!==b&&(b=b.ha,null!==b&&b.Dx(a))}}; -y.defineProperty(D,{TD:"containingGroupChanged"},function(){return this.Bq},function(a){var b=this.Bq;b!==a&&(null!==a&&y.g(a,"function",D,"containingGroupChanged"),this.Bq=a,this.j("containingGroupChanged",b,a))});D.prototype.findSubGraphLevel=function(){return rp(this,this)};function rp(a,b){var c=b.Va;return null!==c?1+rp(a,c):b instanceof E&&(c=b.Sd,null!==c)?rp(a,c):0}D.prototype.findTopLevelPart=function(){return sp(this,this)}; -function sp(a,b){var c=b.Va;return null!==c?sp(a,c):b instanceof E&&(c=b.Sd,null!==c)?sp(a,c):b}y.w(D,{Cp:"isTopLevel"},function(){return null!==this.Va||this instanceof E&&this.Ef?!1:!0});D.prototype.isMemberOf=D.prototype.ni=function(a){return a instanceof F?tp(this,this,a):!1};function tp(a,b,c){if(b===c||null===c)return!1;var d=b.Va;return null===d||d!==c&&!tp(a,d,c)?b instanceof E&&(b=b.Sd,null!==b)?tp(a,b,c):!1:!0} -D.prototype.findCommonContainingGroup=D.prototype.zH=function(a){if(null===a)return null;u&&y.l(a,D,D,"findCommonContainingGroup:other");if(this===a)return this.Va;for(var b=this;null!==b;)b instanceof F&&op(b,!0),b=b.Va;for(var c=null,b=a;null!==b;){if(0!==(b.T&1048576)){c=b;break}b=b.Va}for(b=this;null!==b;)b instanceof F&&op(b,!1),b=b.Va;return c}; -y.defineProperty(D,{pI:"layoutConditions"},function(){return this.yr},function(a){var b=this.yr;b!==a&&(u&&y.g(a,"number",D,"layoutConditions"),this.yr=a,this.j("layoutConditions",b,a))});D.prototype.canLayout=function(){if(!this.fA||!this.isVisible())return!1;var a=this.layer;return null!==a&&a.Nc||this instanceof E&&this.Ef?!1:!0}; -D.prototype.invalidateLayout=D.prototype.I=function(a){void 0===a&&(a=16777215);var b;this.fA&&0!==(a&this.pI)?(b=this.layer,null!==b&&b.Nc||this instanceof E&&this.Ef?b=!1:(b=this.h,b=null!==b&&b.pa.qb?!1:!0)):b=!1;if(b)if(b=this.Ok,null!==b){var c=b.Sb;null!==c?c.I():b.I(a)}else a=this.h,null!==a&&(c=a.Sb,null!==c&&c.I())};function zl(a){if(!a.isVisible())return!1;a=a.layer;return null!==a&&a.Nc?!1:!0} -y.defineProperty(D,{fE:"dragComputation"},function(){return this.Uq},function(a){var b=this.Uq;b!==a&&(null!==a&&y.g(a,"function",D,"dragComputation"),this.Uq=a,this.j("dragComputation",b,a))});y.defineProperty(D,{jJ:"shadowOffset"},function(){return this.Lm},function(a){var b=this.Lm;b.N(a)||(u&&y.l(a,N,D,"shadowOffset"),this.Lm=a=a.U(),this.ta(),this.j("shadowOffset",b,a))}); -y.defineProperty(D,{shadowColor:"shadowColor"},function(){return this.Km},function(a){var b=this.Km;b!==a&&(u&&y.g(a,"string",D,"shadowColor"),this.Km=a,this.ta(),this.j("shadowColor",b,a))});y.defineProperty(D,{shadowBlur:"shadowBlur"},function(){return this.Bg},function(a){var b=this.Bg;b!==a&&(u&&y.g(a,"number",D,"shadowBlur"),this.Bg=a,this.ta(),this.j("shadowBlur",b,a))}); -function da(a){0===arguments.length?D.call(this,bj):D.call(this,a);this.T&=-257;this.bl="Adornment";this.Lb=this.$g=this.Ib=null}y.Pa(da,D);y.ia("Adornment",da);da.prototype.toString=function(){var a=this.Yf;return"Adornment("+this.oc+")"+(null!==a?a.toString():"")};da.prototype.updateRelationshipsFromData=function(){}; -da.prototype.qn=function(a){var b=this.fc.ca,c=this.fc;if(b instanceof G&&c instanceof X){var d=b.path,c=d.$a;b.qn(a);c=d.$a;a=this.va.o;b=a.length;for(d=0;da&&(a=1);var b=this.h;if(null!==b&&!b.wh){b.wh=!0;var c=new K(E);c.add(this);Fp(this,c,b.ee,a,b.Ua,this,b.YA===qk);b.wh=!1}}; -function Fp(a,b,c,d,e,g,h){if(1a&&(a=2);var b=this.h;if(null!==b&&!b.wh){b.wh=!0;var c=new K(E);c.add(this);Hp(this,c,b.ee,a,b.Ua,this,b.YA===qk);b.wh=!1}};function Hp(a,b,c,d,e,g,h){for(var k=g===a?!1:a.wd,l=c?a.Xw():a.Ig();l.next();){var m=l.value;m.Oc&&(k||m.Xf||m.qc(),m=m.Xz(a),null!==m&&m!==a&&!b.contains(m)&&(b.add(m),k||(m.xd(!0),m.Ml(),h&&bk(e,m,g)),2h&&a.y>k&&a.righth&&b.y>k&&b.right=c.CI)){this.T^=4096;var d=!1;if(null!==c){d=c.Bb;c.Bb=!0;var e=c.selection;e.Wa();a?e.add(this):e.remove(this);e.freeze()}this.j("isSelected",b,a);this.ae();a=this.hJ;null!==a&&a(this);null!==c&&(c.Ce(),c.Bb=d)}}}); +z.defineProperty(D,{wh:"isHighlighted"},function(){return 0!==(this.T&524288)},function(a){var b=0!==(this.T&524288);if(b!==a){u&&z.g(a,"boolean",D,"isHighlighted");this.T^=524288;var c=this.h;null!==c&&(c=c.jn,c.Wa(),a?c.add(this):c.remove(this),c.freeze());this.j("isHighlighted",b,a);this.ta()}});z.defineProperty(D,{sk:"isShadowed"},function(){return 0!==(this.T&8192)},function(a){var b=0!==(this.T&8192);b!==a&&(u&&z.g(a,"boolean",D,"isShadowed"),this.T^=8192,this.j("isShadowed",b,a),this.ta())}); +function nl(a){return 0!==(a.T&32768)}function hp(a,b){a.T=b?a.T|32768:a.T&-32769}function Om(a,b){a.T=b?a.T|65536:a.T&-65537}function fk(a){return 0!==(a.T&131072)}D.prototype.Jf=function(a){this.T=a?this.T|131072:this.T&-131073};function op(a,b){a.T=b?a.T|1048576:a.T&-1048577}z.defineProperty(D,{IE:"isAnimated"},function(){return 0!==(this.T&262144)},function(a){var b=0!==(this.T&262144);b!==a&&(u&&z.g(a,"boolean",D,"isAnimated"),this.T^=262144,this.j("isAnimated",b,a))}); +z.defineProperty(D,{Ix:"selectionObjectName"},function(){return this.Es},function(a){var b=this.Es;b!==a&&(u&&z.g(a,"string",D,"selectionObjectName"),this.Es=a,this.Im=null,this.j("selectionObjectName",b,a))});z.defineProperty(D,{gJ:"selectionAdornmentTemplate"},function(){return this.Cs},function(a){var b=this.Cs;b!==a&&(u&&z.l(a,da,D,"selectionAdornmentTemplate"),this instanceof G&&(a.type=Hi),this.Cs=a,this.j("selectionAdornmentTemplate",b,a))}); +z.w(D,{xn:"selectionObject"},function(){if(null===this.Im){var a=this.Ix;null!==a&&""!==a?(a=this.oe(a),this.Im=null!==a?a:this):this instanceof G?(a=this.path,this.Im=null!==a?a:this):this.Im=this}return this.Im});z.defineProperty(D,{hJ:"selectionChanged"},function(){return this.Ds},function(a){var b=this.Ds;b!==a&&(null!==a&&z.g(a,"function",D,"selectionChanged"),this.Ds=a,this.j("selectionChanged",b,a))}); +z.defineProperty(D,{sF:"resizeAdornmentTemplate"},function(){return this.ps},function(a){var b=this.ps;b!==a&&(u&&z.l(a,da,D,"resizeAdornmentTemplate"),this.ps=a,this.j("resizeAdornmentTemplate",b,a))});z.defineProperty(D,{uF:"resizeObjectName"},function(){return this.rs},function(a){var b=this.rs;b!==a&&(u&&z.g(a,"string",D,"resizeObjectName"),this.rs=a,this.Ko=null,this.j("resizeObjectName",b,a))}); +z.w(D,{tF:"resizeObject"},function(){if(null===this.Ko){var a=this.uF;null!==a&&""!==a?(a=this.oe(a),this.Ko=null!==a?a:this):this.Ko=this}return this.Ko});z.defineProperty(D,{ZI:"resizeCellSize"},function(){return this.qs},function(a){var b=this.qs;b.N(a)||(u&&z.l(a,Ea,D,"resizeCellSize"),this.qs=a=a.V(),this.j("resizeCellSize",b,a))}); +z.defineProperty(D,{aJ:"rotateAdornmentTemplate"},function(){return this.ss},function(a){var b=this.ss;b!==a&&(u&&z.l(a,da,D,"rotateAdornmentTemplate"),this.ss=a,this.j("rotateAdornmentTemplate",b,a))});z.defineProperty(D,{bJ:"rotateObjectName"},function(){return this.ts},function(a){var b=this.ts;b!==a&&(u&&z.g(a,"string",D,"rotateObjectName"),this.ts=a,this.Lo=null,this.j("rotateObjectName",b,a))}); +z.w(D,{xF:"rotateObject"},function(){if(null===this.Lo){var a=this.bJ;null!==a&&""!==a?(a=this.oe(a),this.Lo=null!==a?a:this):this.Lo=this}return this.Lo});z.defineProperty(D,{text:"text"},function(){return this.we},function(a){var b=this.we;b!==a&&(u&&z.g(a,"string",D,"text"),this.we=a,this.j("text",b,a))}); +z.defineProperty(D,{Va:"containingGroup"},function(){return this.Ok},function(a){if(this.be()){var b=this.Ok;if(b!==a){u&&null!==a&&z.l(a,F,D,"containingGroup");null===a||this!==a&&!a.li(this)||(this===a&&z.k("Cannot make a Group a member of itself: "+this.toString()),z.k("Cannot make a Group indirectly contain itself: "+this.toString()+" already contains "+a.toString()));this.I(Cl);var c=this.h;null!==b?pp(b,this):this instanceof F&&null!==c&&c.nl.remove(this);this.Ok=a;null!==a?qp(a,this):this instanceof +F&&null!==c&&c.nl.add(this);this.I(ul);if(null!==c){var d=this.data,e=c.ha;null!==d&&e instanceof V&&e.Lx(d,e.pb(null!==a?a.data:null))}d=this.WD;null!==d&&(e=!0,null!==c&&(e=c.Za,c.Za=!0),d(this,b,a),null!==c&&(c.Za=e));if(this instanceof F)for(c=new K(D),fh(c,this,!0,0,!0),c=c.i;c.next();)if(d=c.value,d instanceof E)for(d=d.ee;d.next();)Vl(d.value);if(this instanceof E)for(d=this.ee;d.next();)Vl(d.value);this.j("containingGroup",b,a);null!==a&&(b=a.layer,null!==b&&kk(b,-1,a))}}else z.k("cannot set the Part.containingGroup of a Link or Adornment")}); +f=D.prototype;f.Ml=function(){var a=this.Va;null!==a&&(a.S(),null!==a.Lb&&a.Lb.S(),a.lf())};f.ta=function(){var a=this.h;null!==a&&!ml(this)&&!nl(this)&&this.isVisible()&&this.Xb.F()&&a.ta(jk(this,this.Xb))};f.Kt=function(a){a||(a=this.Ok,null!==a&&qp(a,this))};f.Lt=function(a){a||(a=this.Ok,null!==a&&pp(a,this))};f.dn=function(){var a=this.data;if(null!==a){var b=this.h;null!==b&&(b=b.ha,null!==b&&b.Ex(a))}}; +z.defineProperty(D,{WD:"containingGroupChanged"},function(){return this.Bq},function(a){var b=this.Bq;b!==a&&(null!==a&&z.g(a,"function",D,"containingGroupChanged"),this.Bq=a,this.j("containingGroupChanged",b,a))});D.prototype.findSubGraphLevel=function(){return rp(this,this)};function rp(a,b){var c=b.Va;return null!==c?1+rp(a,c):b instanceof E&&(c=b.Qd,null!==c)?rp(a,c):0}D.prototype.findTopLevelPart=function(){return sp(this,this)}; +function sp(a,b){var c=b.Va;return null!==c?sp(a,c):b instanceof E&&(c=b.Qd,null!==c)?sp(a,c):b}z.w(D,{Cp:"isTopLevel"},function(){return null!==this.Va||this instanceof E&&this.Df?!1:!0});D.prototype.isMemberOf=D.prototype.li=function(a){return a instanceof F?tp(this,this,a):!1};function tp(a,b,c){if(b===c||null===c)return!1;var d=b.Va;return null===d||d!==c&&!tp(a,d,c)?b instanceof E&&(b=b.Qd,null!==b)?tp(a,b,c):!1:!0} +D.prototype.findCommonContainingGroup=D.prototype.BH=function(a){if(null===a)return null;u&&z.l(a,D,D,"findCommonContainingGroup:other");if(this===a)return this.Va;for(var b=this;null!==b;)b instanceof F&&op(b,!0),b=b.Va;for(var c=null,b=a;null!==b;){if(0!==(b.T&1048576)){c=b;break}b=b.Va}for(b=this;null!==b;)b instanceof F&&op(b,!1),b=b.Va;return c}; +z.defineProperty(D,{rI:"layoutConditions"},function(){return this.zr},function(a){var b=this.zr;b!==a&&(u&&z.g(a,"number",D,"layoutConditions"),this.zr=a,this.j("layoutConditions",b,a))});D.prototype.canLayout=function(){if(!this.jA||!this.isVisible())return!1;var a=this.layer;return null!==a&&a.Nc||this instanceof E&&this.Df?!1:!0}; +D.prototype.invalidateLayout=D.prototype.I=function(a){void 0===a&&(a=16777215);var b;this.jA&&0!==(a&this.rI)?(b=this.layer,null!==b&&b.Nc||this instanceof E&&this.Df?b=!1:(b=this.h,b=null!==b&&b.pa.qb?!1:!0)):b=!1;if(b)if(b=this.Ok,null!==b){var c=b.Sb;null!==c?c.I():b.I(a)}else a=this.h,null!==a&&(c=a.Sb,null!==c&&c.I())};function zl(a){if(!a.isVisible())return!1;a=a.layer;return null!==a&&a.Nc?!1:!0} +z.defineProperty(D,{iE:"dragComputation"},function(){return this.Uq},function(a){var b=this.Uq;b!==a&&(null!==a&&z.g(a,"function",D,"dragComputation"),this.Uq=a,this.j("dragComputation",b,a))});z.defineProperty(D,{lJ:"shadowOffset"},function(){return this.Km},function(a){var b=this.Km;b.N(a)||(u&&z.l(a,N,D,"shadowOffset"),this.Km=a=a.V(),this.ta(),this.j("shadowOffset",b,a))}); +z.defineProperty(D,{shadowColor:"shadowColor"},function(){return this.Jm},function(a){var b=this.Jm;b!==a&&(u&&z.g(a,"string",D,"shadowColor"),this.Jm=a,this.ta(),this.j("shadowColor",b,a))});z.defineProperty(D,{shadowBlur:"shadowBlur"},function(){return this.Ag},function(a){var b=this.Ag;b!==a&&(u&&z.g(a,"number",D,"shadowBlur"),this.Ag=a,this.ta(),this.j("shadowBlur",b,a))}); +function da(a){0===arguments.length?D.call(this,bj):D.call(this,a);this.T&=-257;this.bl="Adornment";this.Lb=this.Zg=this.Ib=null}z.Qa(da,D);z.ia("Adornment",da);da.prototype.toString=function(){var a=this.Xf;return"Adornment("+this.oc+")"+(null!==a?a.toString():"")};da.prototype.updateRelationshipsFromData=function(){}; +da.prototype.qn=function(a){var b=this.fc.ca,c=this.fc;if(b instanceof G&&c instanceof X){var d=b.path,c=d.$a;b.qn(a);c=d.$a;a=this.va.o;b=a.length;for(d=0;da&&(a=1);var b=this.h;if(null!==b&&!b.vh){b.vh=!0;var c=new K(E);c.add(this);Fp(this,c,b.ce,a,b.Ua,this,b.bB===qk);b.vh=!1}}; +function Fp(a,b,c,d,e,g,h){if(1a&&(a=2);var b=this.h;if(null!==b&&!b.vh){b.vh=!0;var c=new K(E);c.add(this);Hp(this,c,b.ce,a,b.Ua,this,b.bB===qk);b.vh=!1}};function Hp(a,b,c,d,e,g,h){for(var k=g===a?!1:a.vd,l=c?a.Yw():a.Hg();l.next();){var m=l.value;m.Oc&&(k||m.Wf||m.qc(),m=m.aA(a),null!==m&&m!==a&&!b.contains(m)&&(b.add(m),k||(m.wd(!0),m.Ml(),h&&bk(e,m,g)),2a&&(a-=180);break;case Np:a=ef(c+90);90a&&(a-=180);break;case Op:a=ef(c-90);90a&&(a-=180);break;case Pp:a=ef(c);if(45a||225a)return 0;90a&&(a-=180)}return ef(a)}; -y.defineProperty(G,{Y:"fromNode"},function(){return this.rg},function(a){var b=this.rg;if(b!==a){u&&null!==a&&y.l(a,E,G,"fromNode");var c=this.bd;null!==b&&(this.Dg!==b&&Cp(b,this,c),Qp(this),this.I(Cl));this.rg=a;null!==a&&this.xd(a.isVisible());this.Fi=null;this.qc();var d=this.h;if(null!==d){var e=this.data,g=d.ha;if(null!==e)if(g instanceof V){var h=null!==a?a.data:null;g.Jx(e,g.pb(h))}else g instanceof pg&&(h=null!==a?a.data:null,d.ee?g.Fh(e,g.pb(h)):(null!==b&&g.Fh(b.data,void 0),g.Fh(h,g.pb(null!== -this.Dg?this.Dg.data:null))))}e=this.bd;g=this.tE;null!==g&&(h=!0,null!==d&&(h=d.Za,d.Za=!0),g(this,c,e),null!==d&&(d.Za=h));null!==a&&(this.Dg!==a&&Bp(a,this,e),Rp(this),this.I(ul));this.j("fromNode",b,a);Vl(this)}}); -y.defineProperty(G,{bg:"fromPortId"},function(){return this.Qh},function(a){var b=this.Qh;if(b!==a){u&&y.g(a,"string",G,"fromPortId");var c=this.bd;null!==c&&Ap(this.Y,c);Qp(this);this.Qh=a;var d=this.bd;null!==d&&Ap(this.Y,d);var e=this.h;if(null!==e){var g=this.data,h=e.ha;null!==g&&h instanceof V&&h.LA(g,a)}c!==d&&(this.Fi=null,this.qc(),g=this.tE,null!==g&&(h=!0,null!==e&&(h=e.Za,e.Za=!0),g(this,c,d),null!==e&&(e.Za=h)));Rp(this);this.j("fromPortId",b,a)}}); -y.w(G,{bd:"fromPort"},function(){var a=this.rg;return null===a?null:a.Fl(this.Qh)});y.defineProperty(G,{tE:"fromPortChanged"},function(){return this.br},function(a){var b=this.br;b!==a&&(null!==a&&y.g(a,"function",G,"fromPortChanged"),this.br=a,this.j("fromPortChanged",b,a))}); -y.defineProperty(G,{da:"toNode"},function(){return this.Dg},function(a){var b=this.Dg;if(b!==a){u&&null!==a&&y.l(a,E,G,"toNode");var c=this.Ad;null!==b&&(this.rg!==b&&Cp(b,this,c),Qp(this),this.I(Cl));this.Dg=a;null!==a&&this.xd(a.isVisible());this.Fi=null;this.qc();var d=this.h;if(null!==d){var e=this.data,g=d.ha;if(null!==e)if(g instanceof V){var h=null!==a?a.data:null;g.Nx(e,g.pb(h))}else g instanceof pg&&(h=null!==a?a.data:null,d.ee?(null!==b&&g.Fh(b.data,void 0),g.Fh(h,g.pb(null!==this.rg?this.rg.data: -null))):g.Fh(e,g.pb(h)))}e=this.Ad;g=this.PF;null!==g&&(h=!0,null!==d&&(h=d.Za,d.Za=!0),g(this,c,e),null!==d&&(d.Za=h));null!==a&&(this.rg!==a&&Bp(a,this,e),Rp(this),this.I(ul));this.j("toNode",b,a);Vl(this)}}); -y.defineProperty(G,{Vg:"toPortId"},function(){return this.gi},function(a){var b=this.gi;if(b!==a){u&&y.g(a,"string",G,"toPortId");var c=this.Ad;null!==c&&Ap(this.da,c);Qp(this);this.gi=a;var d=this.Ad;null!==d&&Ap(this.da,d);var e=this.h;if(null!==e){var g=this.data,h=e.ha;null!==g&&h instanceof V&&h.OA(g,a)}c!==d&&(this.Fi=null,this.qc(),g=this.PF,null!==g&&(h=!0,null!==e&&(h=e.Za,e.Za=!0),g(this,c,d),null!==e&&(e.Za=h)));Rp(this);this.j("toPortId",b,a)}}); -y.w(G,{Ad:"toPort"},function(){var a=this.Dg;return null===a?null:a.Fl(this.gi)});y.defineProperty(G,{PF:"toPortChanged"},function(){return this.Ws},function(a){var b=this.Ws;b!==a&&(null!==a&&y.g(a,"function",G,"toPortChanged"),this.Ws=a,this.j("toPortChanged",b,a))});y.defineProperty(G,{Db:"fromSpot"},function(){return null!==this.la?this.la.Fj:Kc},function(a){this.Te();var b=this.la.Fj;b.N(a)||(u&&y.l(a,Q,G,"fromSpot"),a=a.U(),this.la.Fj=a,this.j("fromSpot",b,a),this.qc())}); -y.defineProperty(G,{Hl:"fromEndSegmentLength"},function(){return null!==this.la?this.la.Dj:NaN},function(a){this.Te();var b=this.la.Dj;b!==a&&(u&&y.g(a,"number",G,"fromEndSegmentLength"),0>a&&y.ka(a,">= 0",G,"fromEndSegmentLength"),this.la.Dj=a,this.j("fromEndSegmentLength",b,a),this.qc())}); -y.defineProperty(G,{Dt:"fromEndSegmentDirection"},function(){return null!==this.la?this.la.Cj:vp},function(a){this.Te();var b=this.la.Cj;b!==a&&(u&&y.Ba(a,E,G,"fromEndSegmentDirection"),this.la.Cj=a,this.j("fromEndSegmentDirection",b,a),this.qc())});y.defineProperty(G,{Et:"fromShortLength"},function(){return null!==this.la?this.la.Ej:NaN},function(a){this.Te();var b=this.la.Ej;b!==a&&(u&&y.g(a,"number",G,"fromShortLength"),this.la.Ej=a,this.j("fromShortLength",b,a),this.qc())}); -y.defineProperty(G,{Eb:"toSpot"},function(){return null!==this.la?this.la.gk:Kc},function(a){this.Te();var b=this.la.gk;b.N(a)||(u&&y.l(a,Q,G,"toSpot"),a=a.U(),this.la.gk=a,this.j("toSpot",b,a),this.qc())});y.defineProperty(G,{Yl:"toEndSegmentLength"},function(){return null!==this.la?this.la.ek:NaN},function(a){this.Te();var b=this.la.ek;b!==a&&(u&&y.g(a,"number",G,"toEndSegmentLength"),0>a&&y.ka(a,">= 0",G,"toEndSegmentLength"),this.la.ek=a,this.j("toEndSegmentLength",b,a),this.qc())}); -y.defineProperty(G,{yu:"toEndSegmentDirection"},function(){return null!==this.la?this.la.dk:vp},function(a){this.Te();var b=this.la.dk;b!==a&&(u&&y.Ba(a,E,G,"toEndSegmentDirection"),this.la.dk=a,this.j("toEndSegmentDirection",b,a),this.qc())});y.defineProperty(G,{zu:"toShortLength"},function(){return null!==this.la?this.la.fk:NaN},function(a){this.Te();var b=this.la.fk;b!==a&&(u&&y.g(a,"number",G,"toShortLength"),this.la.fk=a,this.j("toShortLength",b,a),this.qc())}); -function Vl(a){var b=a.Y,c=a.da;null!==b?null!==c?Sp(a,b.zH(c)):Sp(a,null):Sp(a,null)}function Sp(a,b){var c=a.Ok;if(c!==b){null!==c&&pp(c,a);a.Ok=b;null!==b&&qp(b,a);var d=a.TD;if(null!==d){var e=!0,g=a.h;null!==g&&(e=g.Za,g.Za=!0);d(a,c,b);null!==g&&(g.Za=e)}!a.Xf||a.eD!==c&&a.gD!==c||a.qc()}}G.prototype.Ml=function(){var a=this.Va;null!==a&&this.Y!==a&&this.da!==a&&a.Nw&&D.prototype.Ml.call(this)}; -G.prototype.getOtherNode=G.prototype.Xz=function(a){u&&y.l(a,E,G,"getOtherNode:node");var b=this.Y;return a===b?this.da:b};G.prototype.getOtherPort=function(a){u&&y.l(a,O,G,"getOtherPort:port");var b=this.bd;return a===b?this.Ad:b};y.w(G,{FK:"isLabeledLink"},function(){return null===this.Le?!1:0=d&&(h=d-1);var l=this.m(h-1),g=this.m(h);qe(e.x,e.y,k.x,k.y,l.x,l.y,g.x,g.y,.5,a);b=Math.min(g.x,b);c=Math.min(g.y,c);e=g}else for(e=this.m(0),g=this.m(1),b=Math.min(e.x,g.x),c=Math.min(e.y,g.y),a.n(e.x,e.y,0,0),a.vj(g),h=2;hc&&(c=-c)):od(c.y,d.y)?(c=d.x-c.x,0>c&&(c=-c)):c=Math.sqrt(c.Bf(d)),g.push(c),e+=c;for(d=h=c=0;ce/2)break;c+=d;h++}y.xa(g);b=this.m(h);g=this.m(h+1);b.x===g.x?b.y>g.y?a.n(b.x,b.y-(e/2-c)):a.n(b.x,b.y+(e/2-c)):b.y===g.y?b.x>g.x?a.n(b.x-(e/2-c),b.y):a.n(b.x+(e/2-c),b.y):(c=(e/2-c)/d,a.n(b.x+c*(g.x-b.x),b.y+c*(g.y-b.y)));return a};y.w(G,{WE:"midAngle"},function(){this.Dn();return this.computeMidAngle()}); +z.defineProperty(G,{Y:"fromNode"},function(){return this.qg},function(a){var b=this.qg;if(b!==a){u&&null!==a&&z.l(a,E,G,"fromNode");var c=this.bd;null!==b&&(this.Cg!==b&&Cp(b,this,c),Qp(this),this.I(Cl));this.qg=a;null!==a&&this.wd(a.isVisible());this.Di=null;this.qc();var d=this.h;if(null!==d){var e=this.data,g=d.ha;if(null!==e)if(g instanceof V){var h=null!==a?a.data:null;g.Kx(e,g.pb(h))}else g instanceof pg&&(h=null!==a?a.data:null,d.ce?g.Eh(e,g.pb(h)):(null!==b&&g.Eh(b.data,void 0),g.Eh(h,g.pb(null!== +this.Cg?this.Cg.data:null))))}e=this.bd;g=this.wE;null!==g&&(h=!0,null!==d&&(h=d.Za,d.Za=!0),g(this,c,e),null!==d&&(d.Za=h));null!==a&&(this.Cg!==a&&Bp(a,this,e),Rp(this),this.I(ul));this.j("fromNode",b,a);Vl(this)}}); +z.defineProperty(G,{ag:"fromPortId"},function(){return this.Oh},function(a){var b=this.Oh;if(b!==a){u&&z.g(a,"string",G,"fromPortId");var c=this.bd;null!==c&&Ap(this.Y,c);Qp(this);this.Oh=a;var d=this.bd;null!==d&&Ap(this.Y,d);var e=this.h;if(null!==e){var g=this.data,h=e.ha;null!==g&&h instanceof V&&h.PA(g,a)}c!==d&&(this.Di=null,this.qc(),g=this.wE,null!==g&&(h=!0,null!==e&&(h=e.Za,e.Za=!0),g(this,c,d),null!==e&&(e.Za=h)));Rp(this);this.j("fromPortId",b,a)}}); +z.w(G,{bd:"fromPort"},function(){var a=this.qg;return null===a?null:a.Fl(this.Oh)});z.defineProperty(G,{wE:"fromPortChanged"},function(){return this.br},function(a){var b=this.br;b!==a&&(null!==a&&z.g(a,"function",G,"fromPortChanged"),this.br=a,this.j("fromPortChanged",b,a))}); +z.defineProperty(G,{da:"toNode"},function(){return this.Cg},function(a){var b=this.Cg;if(b!==a){u&&null!==a&&z.l(a,E,G,"toNode");var c=this.zd;null!==b&&(this.qg!==b&&Cp(b,this,c),Qp(this),this.I(Cl));this.Cg=a;null!==a&&this.wd(a.isVisible());this.Di=null;this.qc();var d=this.h;if(null!==d){var e=this.data,g=d.ha;if(null!==e)if(g instanceof V){var h=null!==a?a.data:null;g.Ox(e,g.pb(h))}else g instanceof pg&&(h=null!==a?a.data:null,d.ce?(null!==b&&g.Eh(b.data,void 0),g.Eh(h,g.pb(null!==this.qg?this.qg.data: +null))):g.Eh(e,g.pb(h)))}e=this.zd;g=this.SF;null!==g&&(h=!0,null!==d&&(h=d.Za,d.Za=!0),g(this,c,e),null!==d&&(d.Za=h));null!==a&&(this.qg!==a&&Bp(a,this,e),Rp(this),this.I(ul));this.j("toNode",b,a);Vl(this)}}); +z.defineProperty(G,{Ug:"toPortId"},function(){return this.ei},function(a){var b=this.ei;if(b!==a){u&&z.g(a,"string",G,"toPortId");var c=this.zd;null!==c&&Ap(this.da,c);Qp(this);this.ei=a;var d=this.zd;null!==d&&Ap(this.da,d);var e=this.h;if(null!==e){var g=this.data,h=e.ha;null!==g&&h instanceof V&&h.SA(g,a)}c!==d&&(this.Di=null,this.qc(),g=this.SF,null!==g&&(h=!0,null!==e&&(h=e.Za,e.Za=!0),g(this,c,d),null!==e&&(e.Za=h)));Rp(this);this.j("toPortId",b,a)}}); +z.w(G,{zd:"toPort"},function(){var a=this.Cg;return null===a?null:a.Fl(this.ei)});z.defineProperty(G,{SF:"toPortChanged"},function(){return this.Xs},function(a){var b=this.Xs;b!==a&&(null!==a&&z.g(a,"function",G,"toPortChanged"),this.Xs=a,this.j("toPortChanged",b,a))});z.defineProperty(G,{Db:"fromSpot"},function(){return null!==this.la?this.la.Fj:Lc},function(a){this.Se();var b=this.la.Fj;b.N(a)||(u&&z.l(a,Q,G,"fromSpot"),a=a.V(),this.la.Fj=a,this.j("fromSpot",b,a),this.qc())}); +z.defineProperty(G,{Hl:"fromEndSegmentLength"},function(){return null!==this.la?this.la.Dj:NaN},function(a){this.Se();var b=this.la.Dj;b!==a&&(u&&z.g(a,"number",G,"fromEndSegmentLength"),0>a&&z.ka(a,">= 0",G,"fromEndSegmentLength"),this.la.Dj=a,this.j("fromEndSegmentLength",b,a),this.qc())}); +z.defineProperty(G,{Et:"fromEndSegmentDirection"},function(){return null!==this.la?this.la.Cj:vp},function(a){this.Se();var b=this.la.Cj;b!==a&&(u&&z.Ba(a,E,G,"fromEndSegmentDirection"),this.la.Cj=a,this.j("fromEndSegmentDirection",b,a),this.qc())});z.defineProperty(G,{Ft:"fromShortLength"},function(){return null!==this.la?this.la.Ej:NaN},function(a){this.Se();var b=this.la.Ej;b!==a&&(u&&z.g(a,"number",G,"fromShortLength"),this.la.Ej=a,this.j("fromShortLength",b,a),this.qc())}); +z.defineProperty(G,{Eb:"toSpot"},function(){return null!==this.la?this.la.gk:Lc},function(a){this.Se();var b=this.la.gk;b.N(a)||(u&&z.l(a,Q,G,"toSpot"),a=a.V(),this.la.gk=a,this.j("toSpot",b,a),this.qc())});z.defineProperty(G,{Xl:"toEndSegmentLength"},function(){return null!==this.la?this.la.ek:NaN},function(a){this.Se();var b=this.la.ek;b!==a&&(u&&z.g(a,"number",G,"toEndSegmentLength"),0>a&&z.ka(a,">= 0",G,"toEndSegmentLength"),this.la.ek=a,this.j("toEndSegmentLength",b,a),this.qc())}); +z.defineProperty(G,{zu:"toEndSegmentDirection"},function(){return null!==this.la?this.la.dk:vp},function(a){this.Se();var b=this.la.dk;b!==a&&(u&&z.Ba(a,E,G,"toEndSegmentDirection"),this.la.dk=a,this.j("toEndSegmentDirection",b,a),this.qc())});z.defineProperty(G,{Au:"toShortLength"},function(){return null!==this.la?this.la.fk:NaN},function(a){this.Se();var b=this.la.fk;b!==a&&(u&&z.g(a,"number",G,"toShortLength"),this.la.fk=a,this.j("toShortLength",b,a),this.qc())}); +function Vl(a){var b=a.Y,c=a.da;null!==b?null!==c?Sp(a,b.BH(c)):Sp(a,null):Sp(a,null)}function Sp(a,b){var c=a.Ok;if(c!==b){null!==c&&pp(c,a);a.Ok=b;null!==b&&qp(b,a);var d=a.WD;if(null!==d){var e=!0,g=a.h;null!==g&&(e=g.Za,g.Za=!0);d(a,c,b);null!==g&&(g.Za=e)}!a.Wf||a.hD!==c&&a.jD!==c||a.qc()}}G.prototype.Ml=function(){var a=this.Va;null!==a&&this.Y!==a&&this.da!==a&&a.Ow&&D.prototype.Ml.call(this)}; +G.prototype.getOtherNode=G.prototype.aA=function(a){u&&z.l(a,E,G,"getOtherNode:node");var b=this.Y;return a===b?this.da:b};G.prototype.getOtherPort=function(a){u&&z.l(a,O,G,"getOtherPort:port");var b=this.bd;return a===b?this.zd:b};z.w(G,{HK:"isLabeledLink"},function(){return null===this.Ke?!1:0=d&&(h=d-1);var l=this.m(h-1),g=this.m(h);qe(e.x,e.y,k.x,k.y,l.x,l.y,g.x,g.y,.5,a);b=Math.min(g.x,b);c=Math.min(g.y,c);e=g}else for(e=this.m(0),g=this.m(1),b=Math.min(e.x,g.x),c=Math.min(e.y,g.y),a.n(e.x,e.y,0,0),a.uj(g),h=2;hc&&(c=-c)):rd(c.y,d.y)?(c=d.x-c.x,0>c&&(c=-c)):c=Math.sqrt(c.Af(d)),g.push(c),e+=c;for(d=h=c=0;ce/2)break;c+=d;h++}z.xa(g);b=this.m(h);g=this.m(h+1);b.x===g.x?b.y>g.y?a.n(b.x,b.y-(e/2-c)):a.n(b.x,b.y+(e/2-c)):b.y===g.y?b.x>g.x?a.n(b.x-(e/2-c),b.y):a.n(b.x+(e/2-c),b.y):(c=(e/2-c)/d,a.n(b.x+c*(g.x-b.x),b.y+c*(g.y-b.y)));return a};z.w(G,{ZE:"midAngle"},function(){this.Dn();return this.computeMidAngle()}); G.prototype.computeMidAngle=function(){var a=this.sa;if(2>a)return NaN;if(this.computeCurve()===Ri&&4<=a&&!this.rc){var b=(a-1)/3|0,c=3*(b/2|0);if(1===b%2){var c=Math.floor(c),b=this.m(c),d=this.m(c+1),a=this.m(c+2),c=this.m(c+3),e=d.x,d=d.y,g=a.x,a=a.y,h=(e+g)/2,k=(d+a)/2;return yb(((b.x+e)/2+h)/2,((b.y+d)/2+k)/2,(h+(g+c.x)/2)/2,(k+(a+c.y)/2)/2)}if(0e+10))?e>c+10?d.Ec(a):b.Ec(a):b.Ec(d);b=this.m(c-1);d=this.m(c);a=this.m(c+1);c=b.Bf(d);e=d.Bf(a);return c>e+10?b.Ec(d):e>c+10?d.Ec(a):b.Ec(a)}; -y.defineProperty(G,{points:"points"},function(){return this.Yc},function(a){var b=this.Yc;if(b!==a){var c=null;if(Array.isArray(a)){var d=0===a.length%2;if(d)for(var e=0;ep&&(t-=180));0>t?t+=360:360<=t&&(t-=360);k&&(v+=Math.abs(p));0===t?r=v:90===t?s=v:180===t?r=-v:270===t?s=-v:(r=v*Math.cos(t*Math.PI/180),s=v*Math.sin(t*Math.PI/180));if(g.Ce()&&k){var x=c.eb(ec,y.O()),z= -y.Tb(x.x+1E3*r,x.y+1E3*s);this.getLinkPointFromPoint(b,c,x,z,!0,q);y.A(x);y.A(z)}}var v=this.getLinkPoint(d,e,h,!1,l,b,c),A=0,B=0,L=0;if(l||h!==Vb||k)x=this.computeEndSegmentLength(d,e,h,!1),L=this.getLinkDirection(d,e,v,h,!1,l,b,c),k&&(L+=l?0:30,0>p&&(L+=180)),0>L?L+=360:360<=L&&(L-=360),k&&(x+=Math.abs(p)),0===L?A=x:90===L?B=x:180===L?A=-x:270===L?B=-x:(A=x*Math.cos(L*Math.PI/180),B=x*Math.sin(L*Math.PI/180)),h.Ce()&&k&&(x=e.eb(ec,y.O()),z=y.Tb(x.x+1E3*A,x.y+1E3*B),this.getLinkPointFromPoint(d, -e,x,z,!1,v),y.A(x),y.A(z));e=q;if(l||g!==Vb||k)e=new N(q.x+r,q.y+s);c=v;if(l||h!==Vb||k)c=new N(v.x+A,v.y+B);!n&&!l&&g===Vb&&3k&&(m=-m),r=(0>h?-1:1)*m+q,s=l*(r-q)+t),q= -a.x+2*g/3,t=a.y+2*h/3,v=q,A=t,gb(h,0)?A=0h?-1:1)*m+q,A=l*(v-q)+t),this.hp(),this.ii(a),this.rl(r,s),this.rl(v,A),this.ii(n),this.Lf(0,this.getLinkPoint(b,c,Vb,!0,!1,d,e)),this.Lf(3,this.getLinkPoint(d,e,Vb,!1,!1,b,c))):(a=d,d=this.getLinkPoint(b,c,Vb,!0,!1,a,e),e=this.getLinkPoint(a,e,Vb,!1,!1,b,c),this.hasCurviness()?(h=e.x-d.x,b=e.y-d.y,c=this.computeCurviness(),a=d.x+h/2,n=d.y+b/2,g=a,k=n,gb(b,0)?k=0c&&(g=-g),g=(0>b?-1:1)*g+a,k=h*(g- -a)+n),this.ii(d),this.rl(g,k)):this.ii(d),this.ii(e)));return!0};function Yp(a,b){Math.abs(b.x-a.x)>Math.abs(b.y-a.y)?(b.x=b.x>=a.x?a.x+9E9:a.x-9E9,b.y=a.y):(b.y=b.y>=a.y?a.y+9E9:a.y-9E9,b.x=a.x);return b} -G.prototype.getLinkPointFromPoint=function(a,b,c,d,e,g){void 0===g&&(g=new N);if(null===a||null===b)return g.assign(c),g;a.isVisible()||(e=a.findVisibleNode(),null!==e&&e!==a&&(b=e.port));var h=e=0,k=0,l=0;a=null;e=b.V;null===e||e.Wg()||(e=e.V);if(null===e)e=d.x,h=d.y,k=c.x,l=c.y;else{a=e.qh;e=1/(a.m11*a.m22-a.m12*a.m21);var k=a.m22*e,l=-a.m12*e,m=-a.m21*e,n=a.m11*e,p=e*(a.m21*a.dy-a.m22*a.dx),q=e*(a.m12*a.dx-a.m11*a.dy);e=d.x*k+d.y*m+p;h=d.x*l+d.y*n+q;k=c.x*k+c.y*m+p;l=c.x*l+c.y*n+q}b.wp(e,h,k,l, -g);null!==a&&g.transform(a);return g};function Zp(a,b){var c=b.Dm;null===c&&(c=new $p,c.port=b,c.Pc=b.ca,b.Dm=c);return aq(c,a)} -G.prototype.getLinkPoint=function(a,b,c,d,e,g,h,k){void 0===k&&(k=new N);if(c.dd())return b.eb(c,k),k;if(c.lj()&&(c=Zp(this,b),null!==c)){k.assign(c.Gp);if(e&&this.Fx===Ip){var l=Zp(this,h);if(null!==l&&c.bn=m.x&&a.x<=m.x+m.width?k.x=a.x:a.y>=m.y&&a.y<=m.y+m.height&&(k.y=a.y);y.A(c);y.A(l)}}return k}g=b.eb(ec,y.O());l=c=null;this.sa>(e?6:2)?(l=d?this.m(1):this.m(this.sa-2),e&& -(l=Yp(g,l.copy()))):(c=y.O(),l=h.eb(ec,c),e&&(l=Yp(g,l)),y.A(c));this.getLinkPointFromPoint(a,b,g,l,d,k);y.A(g);return k}; -G.prototype.getLinkDirection=function(a,b,c,d,e,g,h,k){a:if(d.dd())c=d.x>d.y?d.x>1-d.y?0:d.x<1-d.y?270:315:d.x1-d.y?90:d.x<1-d.y?180:135:.5>d.x?225:.5(g?6:2)?(n=e?this.m(1):this.m(this.sa-2),n=g?Yp(l,n.copy()):c):(m=y.O(),n=k.eb(ec,m),y.A(m));c=0;c=Math.abs(n.x-l.x)>Math.abs(n.y- -l.y)?n.x>=l.x?0:180:n.y>=l.y?90:270;y.A(l)}d.Ce()&&h.ni(a)&&(c+=180,360<=c&&(c-=360));a=vp;a=e?this.Dt:this.yu;a===vp&&(a=e?b.Dt:b.yu);switch(a){case wp:b=b.Jl();c+=b;360<=c&&(c-=360);break;case vp:case Fm:b=b.Jl();if(0===b)break;45<=b&&135>b?c+=90:135<=b&&225>b?c+=180:225<=b&&315>b&&(c+=270);360<=c&&(c-=360)}return c}; -G.prototype.computeEndSegmentLength=function(a,b,c,d){if(null!==b&&c.lj()&&(a=Zp(this,b),null!==a))return a.Tw;a=NaN;a=d?this.Hl:this.Yl;null!==b&&isNaN(a)&&(a=d?b.Hl:b.Yl);isNaN(a)&&(a=10);return a};G.prototype.computeSpot=function(a){return a?Wp(this,this.bd):Xp(this,this.Ad)};function Wp(a,b){if(null===b)return ec;var c=a.Db;c.cd()&&(void 0===b&&(b=a.bd),null!==b&&(c=b.Db));return c===Kc?Vb:c} -function Xp(a,b){if(null===b)return ec;var c=a.Eb;c.cd()&&(void 0===b&&(b=a.Ad),null!==b&&(c=b.Eb));return c===Kc?Vb:c}G.prototype.computeOtherPoint=function(a,b){var c=b.eb(ec),d;d=b.Dm;d=null!==d?aq(d,this):null;null!==d&&(c=d.Gp);return c};G.prototype.computeShortLength=function(a){return a?bq(this):cq(this)};function bq(a){var b=a.Et;isNaN(b)&&(a=a.bd,null!==a&&(b=a.Et));return isNaN(b)?0:b}function cq(a){var b=a.zu;isNaN(b)&&(a=a.Ad,null!==a&&(b=a.zu));return isNaN(b)?0:b} -G.prototype.ok=function(a,b,c,d,e,g){if(!1===this.kg)return!1;void 0===b&&(b=null);void 0===c&&(c=null);var h=g;void 0===g&&(h=y.Gh(),h.reset());h.multiply(this.transform);if(this.Zm(a,h))return jo(this,b,c,e),void 0===g&&y.jf(h),!0;if(this.Jg(a,h)){var k=!1;if(!this.eh)for(var l=this.va.o,m=l.length;m--;){var n=l[m];if(n.visible||n===this.Yb){var p=n.W,q=this.Fa;if(!(p.x>q.width||p.y>q.height||0>p.x+p.width||0>p.y+p.height)){p=y.Gh();p.set(h);if(n instanceof I)k=n.ok(a,b,c,d,e,p);else if(this.path=== -n){var k=n,r=a,s=d,q=p;if(!1===k.kg)k=!1;else if(q.multiply(k.transform),s)b:{var t=r,v=q;if(k.Zm(t,v))k=!0;else{if(void 0===v&&(v=k.transform,t.mk(k.W))){k=!0;break b}var q=t.left,r=t.right,s=t.top,t=t.bottom,x=y.O(),z=y.O(),A=y.O(),B=y.Gh();B.set(v);B.rA(k.transform);B.bA();z.x=r;z.y=s;z.transform(B);x.x=q;x.y=s;x.transform(B);v=!1;uo(k,x,z,A)?v=!0:(x.x=r,x.y=t,x.transform(B),uo(k,x,z,A)?v=!0:(z.x=q,z.y=t,z.transform(B),uo(k,x,z,A)?v=!0:(x.x=q,x.y=s,x.transform(B),uo(k,x,z,A)&&(v=!0))));y.jf(B); -y.A(x);y.A(z);y.A(A);k=v}}else k=k.Zm(r,q)}else k=Km(n,a,d,p);k&&(null!==b&&(n=b(n)),n&&(null===c||c(n))&&e.add(n));y.jf(p)}}}void 0===g&&y.jf(h);return k||null!==this.background||null!==this.ul}void 0===g&&y.jf(h);return!1};y.w(G,{rc:"isOrthogonal"},function(){return 2===(this.Fm.value&2)});y.w(G,{kj:"isAvoiding"},function(){return 4===(this.Fm.value&4)});G.prototype.computeCurve=function(){if(null===this.Fi){var a=this.bd,b=this.rc;this.Fi=null!==a&&a===this.Ad&&!b}return this.Fi?Ri:this.Re}; -G.prototype.computeCorner=function(){if(this.Re===Ri)return 0;var a=this.Iz;if(isNaN(a)||0>a)a=10;return a};G.prototype.findMidLabel=function(){for(var a=this.path,b=this.va.o,c=b.length,d=0;dl?-Math.PI/2:Math.PI/2:(n=Math.atan(l/Math.abs(k)),0>k&&(n=Math.PI-n));var h=b.x,p=b.y,l=d.x-h,q=d.y-p,r=Math.sqrt(l*l+q*q),k=0;od(l,0)?k=0>q?-Math.PI/2:Math.PI/2:(k=Math.atan(q/Math.abs(l)),0>l&&(k=Math.PI-k));m=r/m;n=k-n;this.Lf(a,b);for(a+= -1;al?-Math.PI/2:Math.PI/2:(q=Math.atan(l/Math.abs(k)),0>k&&(q=Math.PI-q)),k=q+n,b*=m,this.aa(a,h+b*Math.cos(k),p+b*Math.sin(k)));this.Lf(c,d)}}return!0;case ln:g=this.m(a);p=this.m(c);if(!g.Mc(b)||!p.Mc(d)){var e=g.x,g=g.y,h=p.x,p=p.y,m=(h-e)*(h-e)+(p-g)*(p-g),k=b.x,n=b.y,l=d.x,q=d.y,r=0,s=1;0!==l-k?(r=(q-n)/(l-k),s=Math.sqrt(1+1/(r*r))):r=9E9;this.Lf(a,b);for(a+=1;ab?0:45<=b&&135>b?90:135<=b&&225>b?180:270;d=-45<=d&&45>d?0:45<=d&&135>d?90:135<=d&&225>d?180:270;var h=e.W.copy(),k=g.W.copy();if(h.F()&&k.F()){h.cg(8,8);k.cg(8,8);h.vj(a);k.vj(c);var l,m;if(0===b)if(c.x>a.x||270===d&&c.ya.x||90===d&&c.y>a.y&&k.right>a.x)l=new N(c.x,a.y),m=new N(c.x,(a.y+c.y)/2),180===d?(l.x=this.computeMidOrthoPosition(a.x,c.x,!1),m.x=l.x,m.y=c.y):270===d&&c.ya.y?(l.x=a.xe+10))?e>c+10?d.Ec(a):b.Ec(a):b.Ec(d);b=this.m(c-1);d=this.m(c);a=this.m(c+1);c=b.Af(d);e=d.Af(a);return c>e+10?b.Ec(d):e>c+10?d.Ec(a):b.Ec(a)}; +z.defineProperty(G,{points:"points"},function(){return this.Yc},function(a){var b=this.Yc;if(b!==a){var c=null;if(Array.isArray(a)){var d=0===a.length%2;if(d)for(var e=0;ep&&(t-=180));0>t?t+=360:360<=t&&(t-=360);k&&(v+=Math.abs(p));0===t?r=v:90===t?s=v:180===t?r=-v:270===t?s=-v:(r=v*Math.cos(t*Math.PI/180),s=v*Math.sin(t*Math.PI/180));if(g.Be()&&k){var x=c.eb(ec,z.O()),y=z.Tb(x.x+1E3*r,x.y+1E3*s);this.getLinkPointFromPoint(b,c,x,y,!0,q);z.A(x); +z.A(y)}}var v=this.getLinkPoint(d,e,h,!1,l,b,c),A=0,B=0,L=0;if(l||h!==Yb||k)x=this.computeEndSegmentLength(d,e,h,!1),L=this.getLinkDirection(d,e,v,h,!1,l,b,c),k&&(L+=l?0:30,0>p&&(L+=180)),0>L?L+=360:360<=L&&(L-=360),k&&(x+=Math.abs(p)),0===L?A=x:90===L?B=x:180===L?A=-x:270===L?B=-x:(A=x*Math.cos(L*Math.PI/180),B=x*Math.sin(L*Math.PI/180)),h.Be()&&k&&(x=e.eb(ec,z.O()),y=z.Tb(x.x+1E3*A,x.y+1E3*B),this.getLinkPointFromPoint(d,e,x,y,!1,v),z.A(x),z.A(y));e=q;if(l||g!==Yb||k)e=new N(q.x+r,q.y+s);c=v;if(l|| +h!==Yb||k)c=new N(v.x+A,v.y+B);!n&&!l&&g===Yb&&3k&&(m=-m),r=(0>h?-1:1)*m+q,s=l*(r-q)+t),q=a.x+2*g/3,t=a.y+2*h/3,v=q,A=t,gb(h,0)?A=0h?-1:1)*m+q,A=l* +(v-q)+t),this.hp(),this.gi(a),this.rl(r,s),this.rl(v,A),this.gi(n),this.Kf(0,this.getLinkPoint(b,c,Yb,!0,!1,d,e)),this.Kf(3,this.getLinkPoint(d,e,Yb,!1,!1,b,c))):(a=d,d=this.getLinkPoint(b,c,Yb,!0,!1,a,e),e=this.getLinkPoint(a,e,Yb,!1,!1,b,c),this.hasCurviness()?(h=e.x-d.x,b=e.y-d.y,c=this.computeCurviness(),a=d.x+h/2,n=d.y+b/2,g=a,k=n,gb(b,0)?k=0c&&(g=-g),g=(0>b?-1:1)*g+a,k=h*(g-a)+n),this.gi(d),this.rl(g,k)):this.gi(d),this.gi(e)));return!0}; +function Yp(a,b){Math.abs(b.x-a.x)>Math.abs(b.y-a.y)?(b.x=b.x>=a.x?a.x+9E9:a.x-9E9,b.y=a.y):(b.y=b.y>=a.y?a.y+9E9:a.y-9E9,b.x=a.x);return b} +G.prototype.getLinkPointFromPoint=function(a,b,c,d,e,g){void 0===g&&(g=new N);if(null===a||null===b)return g.assign(c),g;a.isVisible()||(e=a.findVisibleNode(),null!==e&&e!==a&&(b=e.port));var h=e=0,k=0,l=0;a=null;e=b.U;null===e||e.Vg()||(e=e.U);if(null===e)e=d.x,h=d.y,k=c.x,l=c.y;else{a=e.ph;e=1/(a.m11*a.m22-a.m12*a.m21);var k=a.m22*e,l=-a.m12*e,m=-a.m21*e,n=a.m11*e,p=e*(a.m21*a.dy-a.m22*a.dx),q=e*(a.m12*a.dx-a.m11*a.dy);e=d.x*k+d.y*m+p;h=d.x*l+d.y*n+q;k=c.x*k+c.y*m+p;l=c.x*l+c.y*n+q}b.wp(e,h,k,l, +g);null!==a&&g.transform(a);return g};function Zp(a,b){var c=b.Cm;null===c&&(c=new $p,c.port=b,c.Pc=b.ca,b.Cm=c);return aq(c,a)} +G.prototype.getLinkPoint=function(a,b,c,d,e,g,h,k){void 0===k&&(k=new N);if(c.dd())return b.eb(c,k),k;if(c.jj()&&(c=Zp(this,b),null!==c)){k.assign(c.Gp);if(e&&this.Gx===Ip){var l=Zp(this,h);if(null!==l&&c.bn=m.x&&a.x<=m.x+m.width?k.x=a.x:a.y>=m.y&&a.y<=m.y+m.height&&(k.y=a.y);z.A(c);z.A(l)}}return k}g=b.eb(ec,z.O());l=c=null;this.sa>(e?6:2)?(l=d?this.m(1):this.m(this.sa-2),e&& +(l=Yp(g,l.copy()))):(c=z.O(),l=h.eb(ec,c),e&&(l=Yp(g,l)),z.A(c));this.getLinkPointFromPoint(a,b,g,l,d,k);z.A(g);return k}; +G.prototype.getLinkDirection=function(a,b,c,d,e,g,h,k){a:if(d.dd())c=d.x>d.y?d.x>1-d.y?0:d.x<1-d.y?270:315:d.x1-d.y?90:d.x<1-d.y?180:135:.5>d.x?225:.5(g?6:2)?(n=e?this.m(1):this.m(this.sa-2),n=g?Yp(l,n.copy()):c):(m=z.O(),n=k.eb(ec,m),z.A(m));c=0;c=Math.abs(n.x-l.x)>Math.abs(n.y- +l.y)?n.x>=l.x?0:180:n.y>=l.y?90:270;z.A(l)}d.Be()&&h.li(a)&&(c+=180,360<=c&&(c-=360));a=vp;a=e?this.Et:this.zu;a===vp&&(a=e?b.Et:b.zu);switch(a){case wp:b=b.Jl();c+=b;360<=c&&(c-=360);break;case vp:case Fm:b=b.Jl();if(0===b)break;45<=b&&135>b?c+=90:135<=b&&225>b?c+=180:225<=b&&315>b&&(c+=270);360<=c&&(c-=360)}return c}; +G.prototype.computeEndSegmentLength=function(a,b,c,d){if(null!==b&&c.jj()&&(a=Zp(this,b),null!==a))return a.Uw;a=NaN;a=d?this.Hl:this.Xl;null!==b&&isNaN(a)&&(a=d?b.Hl:b.Xl);isNaN(a)&&(a=10);return a};G.prototype.computeSpot=function(a){return a?Wp(this,this.bd):Xp(this,this.zd)};function Wp(a,b){if(null===b)return ec;var c=a.Db;c.cd()&&(void 0===b&&(b=a.bd),null!==b&&(c=b.Db));return c===Lc?Yb:c} +function Xp(a,b){if(null===b)return ec;var c=a.Eb;c.cd()&&(void 0===b&&(b=a.zd),null!==b&&(c=b.Eb));return c===Lc?Yb:c}G.prototype.computeOtherPoint=function(a,b){var c=b.eb(ec),d;d=b.Cm;d=null!==d?aq(d,this):null;null!==d&&(c=d.Gp);return c};G.prototype.computeShortLength=function(a){return a?bq(this):cq(this)};function bq(a){var b=a.Ft;isNaN(b)&&(a=a.bd,null!==a&&(b=a.Ft));return isNaN(b)?0:b}function cq(a){var b=a.Au;isNaN(b)&&(a=a.zd,null!==a&&(b=a.Au));return isNaN(b)?0:b} +G.prototype.ok=function(a,b,c,d,e,g){if(!1===this.jg)return!1;void 0===b&&(b=null);void 0===c&&(c=null);var h=g;void 0===g&&(h=z.Fh(),h.reset());h.multiply(this.transform);if(this.Zm(a,h))return jo(this,b,c,e),void 0===g&&z.hf(h),!0;if(this.Ig(a,h)){var k=!1;if(!this.dh)for(var l=this.va.o,m=l.length;m--;){var n=l[m];if(n.visible||n===this.Zb){var p=n.W,q=this.Ga;if(!(p.x>q.width||p.y>q.height||0>p.x+p.width||0>p.y+p.height)){p=z.Fh();p.set(h);if(n instanceof I)k=n.ok(a,b,c,d,e,p);else if(this.path=== +n){var k=n,r=a,s=d,q=p;if(!1===k.jg)k=!1;else if(q.multiply(k.transform),s)b:{var t=r,v=q;if(k.Zm(t,v))k=!0;else{if(void 0===v&&(v=k.transform,t.mk(k.W))){k=!0;break b}var q=t.left,r=t.right,s=t.top,t=t.bottom,x=z.O(),y=z.O(),A=z.O(),B=z.Fh();B.set(v);B.vA(k.transform);B.fA();y.x=r;y.y=s;y.transform(B);x.x=q;x.y=s;x.transform(B);v=!1;uo(k,x,y,A)?v=!0:(x.x=r,x.y=t,x.transform(B),uo(k,x,y,A)?v=!0:(y.x=q,y.y=t,y.transform(B),uo(k,x,y,A)?v=!0:(x.x=q,x.y=s,x.transform(B),uo(k,x,y,A)&&(v=!0))));z.hf(B); +z.A(x);z.A(y);z.A(A);k=v}}else k=k.Zm(r,q)}else k=Km(n,a,d,p);k&&(null!==b&&(n=b(n)),n&&(null===c||c(n))&&e.add(n));z.hf(p)}}}void 0===g&&z.hf(h);return k||null!==this.background||null!==this.ul}void 0===g&&z.hf(h);return!1};z.w(G,{rc:"isOrthogonal"},function(){return 2===(this.Em.value&2)});z.w(G,{ij:"isAvoiding"},function(){return 4===(this.Em.value&4)});G.prototype.computeCurve=function(){if(null===this.Di){var a=this.bd,b=this.rc;this.Di=null!==a&&a===this.zd&&!b}return this.Di?Ri:this.Qe}; +G.prototype.computeCorner=function(){if(this.Qe===Ri)return 0;var a=this.Kz;if(isNaN(a)||0>a)a=10;return a};G.prototype.findMidLabel=function(){for(var a=this.path,b=this.va.o,c=b.length,d=0;dl?-Math.PI/2:Math.PI/2:(n=Math.atan(l/Math.abs(k)),0>k&&(n=Math.PI-n));var h=b.x,p=b.y,l=d.x-h,q=d.y-p,r=Math.sqrt(l*l+q*q),k=0;rd(l,0)?k=0>q?-Math.PI/2:Math.PI/2:(k=Math.atan(q/Math.abs(l)),0>l&&(k=Math.PI-k));m=r/m;n=k-n;this.Kf(a,b);for(a+= +1;al?-Math.PI/2:Math.PI/2:(q=Math.atan(l/Math.abs(k)),0>k&&(q=Math.PI-q)),k=q+n,b*=m,this.aa(a,h+b*Math.cos(k),p+b*Math.sin(k)));this.Kf(c,d)}}return!0;case ln:g=this.m(a);p=this.m(c);if(!g.Mc(b)||!p.Mc(d)){var e=g.x,g=g.y,h=p.x,p=p.y,m=(h-e)*(h-e)+(p-g)*(p-g),k=b.x,n=b.y,l=d.x,q=d.y,r=0,s=1;0!==l-k?(r=(q-n)/(l-k),s=Math.sqrt(1+1/(r*r))):r=9E9;this.Kf(a,b);for(a+=1;ab?0:45<=b&&135>b?90:135<=b&&225>b?180:270;d=-45<=d&&45>d?0:45<=d&&135>d?90:135<=d&&225>d?180:270;var h=e.W.copy(),k=g.W.copy();if(h.F()&&k.F()){h.bg(8,8);k.bg(8,8);h.uj(a);k.uj(c);var l,m;if(0===b)if(c.x>a.x||270===d&&c.ya.x||90===d&&c.y>a.y&&k.right>a.x)l=new N(c.x,a.y),m=new N(c.x,(a.y+c.y)/2),180===d?(l.x=this.computeMidOrthoPosition(a.x,c.x,!1),m.x=l.x,m.y=c.y):270===d&&c.ya.y?(l.x=a.xk.bottom)?this.computeMidOrthoPosition(a.x,c.x,!1):k.right,m.x=l.x,m.y=c.y):0===d&&a.xk.top&&a.yh.bottom)180===d&&(k.Ma(a)||h.Ma(c))?l.y=this.computeMidOrthoPosition(a.y,c.y,!0):c.ya.y&&(180===d||270===d)&&(l.y=this.computeMidOrthoPosition(h.bottom,Math.min(c.y,k.top),!0)),m.x=c.x,m.y=l.y;if(l.y>h.top&&l.y=h.left&&c.x<=a.x||a.x<=k.right&&a.x>=c.x){if(90===d||270===d)l=new N(Math.max((a.x+c.x)/2,a.x),a.y),m=new N(l.x,c.y)}else l.y=270===d||(0===d||180===d)&&c.ya.y&&k.lefta.y?(l.x=a.x>k.right?this.computeMidOrthoPosition(a.x,k.right,!1):a.x>k.left&&(270===d&&a.yk.bottom)?this.computeMidOrthoPosition(a.x,c.x,!1):k.left,m.x=l.x,m.y=c.y):180===d&&a.x>k.right&&a.y>k.top&&a.yh.left&&l.x=h.top&&c.y<=a.y||a.y<=k.bottom&&a.y>=c.y){if(0===d||180===d)l=new N(a.x,Math.max((a.y+c.y)/2,a.y)),m=new N(c.x,l.y)}else l.x=180===d||(90===d||270===d)&&c.xa.x&&k.top=a.x?(l.y=a.y>k.bottom?this.computeMidOrthoPosition(a.y,k.bottom,!0):a.y>k.top&&(180===d&&a.xk.right)?this.computeMidOrthoPosition(a.y,c.y,!0):k.top,m.x=c.x,m.y=l.y):270===d&&a.y>k.bottom&&a.x>k.left&&a.xh.right)90===d&&(k.Ma(a)||h.Ma(c))?l.x=this.computeMidOrthoPosition(a.x, c.x,!1):c.xa.x&&(90===d||180===d)&&(l.x=this.computeMidOrthoPosition(h.right,Math.min(c.x,k.left),!1)),m.x=l.x,m.y=c.y;if(l.x>h.left&&l.x=a.y||a.y>=k.top&&a.y<=c.y){if(0===d||180===d)l=new N(a.x,Math.min((a.y+c.y)/2,a.y)),m=new N(c.x,l.y)}else l.x=180===d||(90===d||270===d)&&c.xk&&0!==eq(e,c.x,c.y)){fq(this,e,c.x,c.y,d,!0);d=this.m(2);if(4>this.sa)0===b||180===b?(d.x=a.x,d.y=c.y):(d.x=c.x,d.y=a.y),this.aa(2,d.x,d.y),this.B(3,d.x,d.y);else if(c=this.m(3),0===b|| -180===b)gb(d.x,c.x)?(b=0===b?Math.max(d.x,a.x):Math.min(d.x,a.x),this.aa(2,b,a.y),this.aa(3,b,c.y)):gb(d.y,c.y)?(Math.abs(a.y-d.y)<=e.ep/2&&(this.aa(2,d.x,a.y),this.aa(3,c.x,a.y)),this.B(2,d.x,a.y)):this.aa(2,a.x,d.y);else if(90===b||270===b)gb(d.y,c.y)?(b=90===b?Math.max(d.y,a.y):Math.min(d.y,a.y),this.aa(2,a.x,b),this.aa(3,c.x,b)):gb(d.x,c.x)?(Math.abs(a.x-d.x)<=e.gp/2&&(this.aa(2,a.x,d.y),this.aa(3,a.x,c.y)),this.B(2,a.x,d.y)):this.aa(2,d.x,a.y);a=!0}else a=!1}else a=!1;a||(this.ii(l),this.ii(m))}}; -G.prototype.computeMidOrthoPosition=function(a,b){if(this.hasCurviness()){var c=this.computeCurviness();return(a+b)/2+c}return(a+b)/2};function Sh(a){if(null===a.h||!a.kj)return!1;var b=a.points.o,c=b.length;if(4>c)return!1;a=ja(a.h,!0,a.Va,null);for(var d=1;dk&&0!==eq(e,c.x,c.y)){fq(this,e,c.x,c.y,d,!0);d=this.m(2);if(4>this.sa)0===b||180===b?(d.x=a.x,d.y=c.y):(d.x=c.x,d.y=a.y),this.aa(2,d.x,d.y),this.B(3,d.x,d.y);else if(c=this.m(3),0===b|| +180===b)gb(d.x,c.x)?(b=0===b?Math.max(d.x,a.x):Math.min(d.x,a.x),this.aa(2,b,a.y),this.aa(3,b,c.y)):gb(d.y,c.y)?(Math.abs(a.y-d.y)<=e.ep/2&&(this.aa(2,d.x,a.y),this.aa(3,c.x,a.y)),this.B(2,d.x,a.y)):this.aa(2,a.x,d.y);else if(90===b||270===b)gb(d.y,c.y)?(b=90===b?Math.max(d.y,a.y):Math.min(d.y,a.y),this.aa(2,a.x,b),this.aa(3,c.x,b)):gb(d.x,c.x)?(Math.abs(a.x-d.x)<=e.gp/2&&(this.aa(2,a.x,d.y),this.aa(3,a.x,c.y)),this.B(2,a.x,d.y)):this.aa(2,d.x,a.y);a=!0}else a=!1}else a=!1;a||(this.gi(l),this.gi(m))}}; +G.prototype.computeMidOrthoPosition=function(a,b){if(this.hasCurviness()){var c=this.computeCurviness();return(a+b)/2+c}return(a+b)/2};function Sh(a){if(null===a.h||!a.ij)return!1;var b=a.points.o,c=b.length;if(4>c)return!1;a=ja(a.h,!0,a.Va,null);for(var d=1;da){var b=new jf(kf),c=new lf(0,0);b.cc.add(c);return b}var d=!1,b=this.h;null!==b&&Tp(this)&&b.Rk.contains(this)&&null!==this.bw&&(d=!0);var c=b=0,e=this.m(0).copy(),g=e.copy(),b=this.Yc.o,h=this.computeCurve();if(h===Ri&&3<=a&&!od(this.dq,0))if(3===a)var k=this.m(1),b=Math.min(e.x,k.x),c=Math.min(e.y,k.y),k=this.m(2),b=Math.min(b,k.x),c=Math.min(c,k.y);else{if(this.rc)for(k=0;k=a&&(k=a-1),b=this.m(k),g.x=Math.min(b.x,g.x),g.y=Math.min(b.y,g.y);b=g.x;c=g.y}else{for(k=0;kx?r>q?(t.x=z-B,t.y=q-B,v.x=z+s,v.y=q+ -s):(t.x=z-B,t.y=q+B,v.x=z+s,v.y=q-s):r>q?(t.x=z+B,t.y=q-B,v.x=z-s,v.y=q+s):(t.x=z+B,t.y=q+B,v.x=z-s,v.y=q-s));od(x,z)&&od(q,r)&&(q>p?(A>z?(t.x=z-B,t.y=q-B,v.x=z+s):(t.x=z+B,t.y=q-B,v.x=z-s),v.y=q+s):(A>z?(t.x=z-B,t.y=q+B,v.x=z+s):(t.x=z+B,t.y=q+B,v.x=z-s),v.y=q-s));if(od(x,z)&&od(z,A)||od(p,q)&&od(q,r))x=.5*(x+A),p=.5*(p+r),t.x=x,t.y=p,v.x=x,v.y=p;1===k?(e.x=.5*(d.x+m.x),e.y=.5*(d.y+m.y)):2===k&&od(d.x,this.m(0).x)&&od(d.y,this.m(0).y)&&(e.x=.5*(d.x+m.x),e.y=.5*(d.y+m.y));S(l,e.x-b,e.y-c,h.x-b,h.y- -c,m.x-b,m.y-c);g.set(h);e.set(a);d=m}}k=d.x;d=d.y;g=this.m(this.sa-1);k=.5*(k+g.x);d=.5*(d+g.y);S(l,a.x-b,a.y-c,k-b,d-c,g.x-b,g.y-c)}else for(k=3;k=a&&(k=a-1),g=this.m(k-1),e=this.m(k),k===a-1&&0!==cq(this)&&(e=e.copy(),gq(this,e,!1,Fd)),S(l,d.x-b,d.y-c,g.x-b,g.y-c,e.x-b,e.y-c);else{g=y.O();g.assign(this.m(0));for(k=1;k=a-1){g!==t&&(0!==cq(this)&&(t=t.copy(),gq(this,t,!1,Fd)),jq(this,l,-b,-c,g,t,d));break}k=hq(this,t,k+1,kn.x?t.x-s:t.x+s,B=v.y>t.y?t.y+z:t.y-z,jq(this,e,h,m,n,new N(q,A),p),zf(e,t.x+h,t.y+m,r+h,B+m),x.n(r,B))):gb(n.x,t.x)&&gb(t.y,v.y)?(s=this.computeCorner(),z=Math.min(s,Math.abs(t.y-n.y)/2),z=s=Math.min(z,Math.abs(v.x-t.x)/2),gb(s,0)?(jq(this,e,h,m,n,t,p),x.assign(t)):(q=t.x,B= -A=t.y,A=t.y>n.y?t.y-z:t.y+z,r=v.x>t.x?t.x+s:t.x-s,jq(this,e,h,m,n,new N(q,A),p),zf(e,t.x+h,t.y+m,r+h,B+m),x.n(r,B))):(jq(this,e,h,m,n,t,p),x.assign(t))}y.A(g)}b=l.q;y.u(l)}return b};function iq(a,b,c,d){a=c-a;if(isNaN(a)||Infinity===a||-Infinity===a)return NaN;0>a&&(a=-a);b=d-b;if(isNaN(b)||Infinity===b||-Infinity===b)return NaN;0>b&&(b=-b);return od(a,0)?b:od(b,0)?a:Math.sqrt(a*a+b*b)} +e?(g=0,m+=h):180===e?(g=90,n+=k):270===e&&(g=180,m-=h),eq(b,m,n)===l-1&&fq(a,b,m,n,g,!1)));a.rl(c,d)}G.prototype.findClosestSegment=function(a){u&&z.l(a,N,G,"findClosestSegment:p");var b=a.x;a=a.y;for(var c=this.m(0),d=this.m(1),e=wb(b,a,c.x,c.y,d.x,d.y),g=0,h=1;ha){var b=new jf(kf),c=new lf(0,0);b.cc.add(c);return b}var d=!1,b=this.h;null!==b&&Tp(this)&&b.Rk.contains(this)&&null!==this.cw&&(d=!0);var c=b=0,e=this.m(0).copy(),g=e.copy(),b=this.Yc.o,h=this.computeCurve();if(h===Ri&&3<=a&&!rd(this.dq,0))if(3===a)var k=this.m(1),b=Math.min(e.x,k.x),c=Math.min(e.y,k.y),k=this.m(2),b=Math.min(b,k.x),c=Math.min(c,k.y);else{if(this.rc)for(k=0;k=a&&(k=a-1),b=this.m(k),g.x=Math.min(b.x,g.x),g.y=Math.min(b.y,g.y);b=g.x;c=g.y}else{for(k=0;kx?r>q?(t.x=y-B,t.y=q-B,v.x=y+s,v.y=q+ +s):(t.x=y-B,t.y=q+B,v.x=y+s,v.y=q-s):r>q?(t.x=y+B,t.y=q-B,v.x=y-s,v.y=q+s):(t.x=y+B,t.y=q+B,v.x=y-s,v.y=q-s));rd(x,y)&&rd(q,r)&&(q>p?(A>y?(t.x=y-B,t.y=q-B,v.x=y+s):(t.x=y+B,t.y=q-B,v.x=y-s),v.y=q+s):(A>y?(t.x=y-B,t.y=q+B,v.x=y+s):(t.x=y+B,t.y=q+B,v.x=y-s),v.y=q-s));if(rd(x,y)&&rd(y,A)||rd(p,q)&&rd(q,r))x=.5*(x+A),p=.5*(p+r),t.x=x,t.y=p,v.x=x,v.y=p;1===k?(e.x=.5*(d.x+m.x),e.y=.5*(d.y+m.y)):2===k&&rd(d.x,this.m(0).x)&&rd(d.y,this.m(0).y)&&(e.x=.5*(d.x+m.x),e.y=.5*(d.y+m.y));S(l,e.x-b,e.y-c,h.x-b,h.y- +c,m.x-b,m.y-c);g.set(h);e.set(a);d=m}}k=d.x;d=d.y;g=this.m(this.sa-1);k=.5*(k+g.x);d=.5*(d+g.y);S(l,a.x-b,a.y-c,k-b,d-c,g.x-b,g.y-c)}else for(k=3;k=a&&(k=a-1),g=this.m(k-1),e=this.m(k),k===a-1&&0!==cq(this)&&(e=e.copy(),gq(this,e,!1,Gd)),S(l,d.x-b,d.y-c,g.x-b,g.y-c,e.x-b,e.y-c);else{g=z.O();g.assign(this.m(0));for(k=1;k=a-1){g!==t&&(0!==cq(this)&&(t=t.copy(),gq(this,t,!1,Gd)),jq(this,l,-b,-c,g,t,d));break}k=hq(this,t,k+1,kn.x?t.x-s:t.x+s,B=v.y>t.y?t.y+y:t.y-y,jq(this,e,h,m,n,new N(q,A),p),zf(e,t.x+h,t.y+m,r+h,B+m),x.n(r,B))):gb(n.x,t.x)&&gb(t.y,v.y)?(s=this.computeCorner(),y=Math.min(s,Math.abs(t.y-n.y)/2),y=s=Math.min(y,Math.abs(v.x-t.x)/2),gb(s,0)?(jq(this,e,h,m,n,t,p),x.assign(t)):(q=t.x,B= +A=t.y,A=t.y>n.y?t.y-y:t.y+y,r=v.x>t.x?t.x+s:t.x-s,jq(this,e,h,m,n,new N(q,A),p),zf(e,t.x+h,t.y+m,r+h,B+m),x.n(r,B))):(jq(this,e,h,m,n,t,p),x.assign(t))}z.A(g)}b=l.q;z.u(l)}return b};function iq(a,b,c,d){a=c-a;if(isNaN(a)||Infinity===a||-Infinity===a)return NaN;0>a&&(a=-a);b=d-b;if(isNaN(b)||Infinity===b||-Infinity===b)return NaN;0>b&&(b=-b);return rd(a,0)?b:rd(b,0)?a:Math.sqrt(a*a+b*b)} function gq(a,b,c,d){var e=a.sa;if(!(2>e))if(c){var g=a.m(1);c=g.x-d.x;d=g.y-d.y;g=iq(b.x,b.y,c,d);0!==g&&(e=2===e?.5*g:g,a=bq(a),a>e&&(a=e),c=a*(c-b.x)/g,a=a*(d-b.y)/g,b.x+=c,b.y+=a)}else g=a.m(e-2),c=g.x-d.x,d=g.y-d.y,g=iq(b.x,b.y,c,d),0!==g&&(e=2===e?.5*g:g,a=cq(a),a>e&&(a=e),c=a*(b.x-c)/g,a=a*(b.y-d)/g,b.x-=c,b.y-=a)} -function hq(a,b,c,d){for(var e=a.sa,g=b;od(b.x,g.x)&&od(b.y,g.y);){if(c>=e)return e-1;g=a.m(c++)}if(!od(b.x,g.x)&&!od(b.y,g.y))return c-1;for(var h=g;od(b.x,g.x)&&od(g.x,h.x)&&(!d||(b.y>=g.y?g.y>=h.y:g.y<=h.y))||od(b.y,g.y)&&od(g.y,h.y)&&(!d||(b.x>=g.x?g.x>=h.x:g.x<=h.x));){if(c>=e)return e-1;h=a.m(c++)}return c-2} -function jq(a,b,c,d,e,g,h){if(!h&&Tp(a)){h=[];var k=0;a.isVisible()&&(k=kq(a,e,g,h));var l=e.x,l=e.y;if(0p-10)m--,p=Math.max(q-5,g.x);else break;q=g.y-10+d;n=p+c;p=g.y+d;a.Re===Ji?R(b,n,p,!1,!1):S(b,l,q,n,q,n,p)}else if(gb(e.x,g.x))if(e.yp-10)m--,p=Math.max(q-5,g.y);else break;q=g.x-10+c;n=g.x+c;p+=d;a.Re===Ji?R(b,n,p,!1,!1):S(b,q,l,q,p,n,p)}}b.lineTo(g.x+c,g.y+d)} -function kq(a,b,c,d){var e=a.h;if(null===e||b.N(c))return 0;for(e=e.on;e.next();){var g=e.value;if(null!==g&&g.visible)for(var g=g.mb.o,h=g.length,k=0;kh.x&&n.x>m.x||m.xh.y&&n.y>m.y||m.yt&&Math.min(h,x)q&&!gb(h,x)){n.x=t;n.y=q;n=!0;break a}}else if(!gb(q,s)&&gb(h,x)&&Math.min(q,s)< -h&&Math.max(q,s)>h&&Math.min(t,v)p&&!gb(t,v)){n.x=p;n.y=h;n=!0;break a}n.x=0;n.y=0;n=!1}n&&(e?c.push(k.x):c.push(k.y));h=m}y.A(k)}y.w(G,{At:"firstPickIndex"},function(){return 2>=this.sa?0:this.rc||Wp(this)!==Vb?1:0});y.w(G,{nx:"lastPickIndex"},function(){var a=this.sa;return 0===a?0:2>=a?a-1:this.rc||Xp(this)!==Vb?a-2:a-1});function Tp(a){a=a.Re;return a===Ii||a===Ji}function Vp(a,b){if(b||Tp(a)){var c=a.h;null===c||c.Rk.contains(a)||null===a.bw||c.Rk.add(a,a.bw)}} -function Li(a,b){var c=a.layer;if(null!==c&&c.visible&&!c.Nc){var d=c.h;if(null!==d)for(var e=!1,d=d.on;d.next();){var g=d.value;if(g.visible)if(g===c)for(var e=!0,h=!1,g=g.mb.o,k=g.length,l=0;l=e)return e-1;g=a.m(c++)}if(!rd(b.x,g.x)&&!rd(b.y,g.y))return c-1;for(var h=g;rd(b.x,g.x)&&rd(g.x,h.x)&&(!d||(b.y>=g.y?g.y>=h.y:g.y<=h.y))||rd(b.y,g.y)&&rd(g.y,h.y)&&(!d||(b.x>=g.x?g.x>=h.x:g.x<=h.x));){if(c>=e)return e-1;h=a.m(c++)}return c-2} +function jq(a,b,c,d,e,g,h){if(!h&&Tp(a)){h=[];var k=0;a.isVisible()&&(k=kq(a,e,g,h));var l=e.x,l=e.y;if(0p-10)m--,p=Math.max(q-5,g.x);else break;q=g.y-10+d;n=p+c;p=g.y+d;a.Qe===Ji?R(b,n,p,!1,!1):S(b,l,q,n,q,n,p)}else if(gb(e.x,g.x))if(e.yp-10)m--,p=Math.max(q-5,g.y);else break;q=g.x-10+c;n=g.x+c;p+=d;a.Qe===Ji?R(b,n,p,!1,!1):S(b,q,l,q,p,n,p)}}b.lineTo(g.x+c,g.y+d)} +function kq(a,b,c,d){var e=a.h;if(null===e||b.N(c))return 0;for(e=e.on;e.next();){var g=e.value;if(null!==g&&g.visible)for(var g=g.mb.o,h=g.length,k=0;kh.x&&n.x>m.x||m.xh.y&&n.y>m.y||m.yt&&Math.min(h,x)q&&!gb(h,x)){n.x=t;n.y=q;n=!0;break a}}else if(!gb(q,s)&&gb(h,x)&&Math.min(q,s)< +h&&Math.max(q,s)>h&&Math.min(t,v)p&&!gb(t,v)){n.x=p;n.y=h;n=!0;break a}n.x=0;n.y=0;n=!1}n&&(e?c.push(k.x):c.push(k.y));h=m}z.A(k)}z.w(G,{Bt:"firstPickIndex"},function(){return 2>=this.sa?0:this.rc||Wp(this)!==Yb?1:0});z.w(G,{ox:"lastPickIndex"},function(){var a=this.sa;return 0===a?0:2>=a?a-1:this.rc||Xp(this)!==Yb?a-2:a-1});function Tp(a){a=a.Qe;return a===Ii||a===Ji}function Vp(a,b){if(b||Tp(a)){var c=a.h;null===c||c.Rk.contains(a)||null===a.cw||c.Rk.add(a,a.cw)}} +function Li(a,b){var c=a.layer;if(null!==c&&c.visible&&!c.Nc){var d=c.h;if(null!==d)for(var e=!1,d=d.on;d.next();){var g=d.value;if(g.visible)if(g===c)for(var e=!0,h=!1,g=g.mb.o,k=g.length,l=0;l=a.width||0>=a.height)){var b=a.y,c=a.x+a.width,d=a.y+a.height;this.Tf=Math.floor((a.x-this.Vd)/this.Vd)*this.Vd;this.Uf=Math.floor((b-this.Bd)/this.Bd)*this.Bd;this.Gr=Math.ceil((c+2*this.Vd)/this.Vd)*this.Vd;this.Hr=Math.ceil((d+2*this.Bd)/this.Bd)*this.Bd;a=1+(Math.ceil((this.Gr-this.Tf)/this.Vd)|0);b=1+(Math.ceil((this.Hr-this.Uf)/this.Bd)|0);if(null===this.mc||this.Pmthis.Gr||a+cthis.Hr||b+da&&(c+=a,a=0);0>b&&(e+=b,b=0);if(0>c||0>e)return!0;d=Math.min(a+c-1,this.Pm)|0;for(c=Math.min(b+e-1,this.Qm)|0;a<=d;a++)for(e=b;e<=c;e++)if(0===this.mc[a][e])return!1;return!0}; +G.prototype.isVisible=function(){if(!D.prototype.isVisible.call(this))return!1;var a=this.Va,b=!0,c=this.h;null!==c&&(b=c.ce);c=this.Y;if(null!==c){if(this.Oc&&b&&!c.vd)return!1;if(c===a)return!0;c=c.findVisibleNode();if(null===c||c===a)return!1}c=this.da;if(null!==c){if(this.Oc&&!b&&!c.vd)return!1;if(c===a)return!0;b=c.findVisibleNode();if(null===b||b===a)return!1}return!0};G.prototype.wd=function(a){D.prototype.wd.call(this,a);null!==this.ri&&this.ri.kn();if(null!==this.Ke)for(var b=this.Ke.i;b.next();)b.value.wd(a)}; +z.defineProperty(G,{it:"adjusting"},function(){return this.nq},function(a){var b=this.nq;b!==a&&(u&&z.Ba(a,G,G,"adjusting"),this.nq=a,this.j("adjusting",b,a))});z.defineProperty(G,{Kz:"corner"},function(){return this.Gq},function(a){var b=this.Gq;b!==a&&(u&&z.g(a,"number",G,"corner"),this.Gq=a,this.Ae(),this.j("corner",b,a))}); +z.defineProperty(G,{Qe:"curve"},function(){return this.Jq},function(a){var b=this.Jq;b!==a&&(u&&z.Ba(a,G,G,"curve"),this.Jq=a,this.qc(),this.Ae(),Vp(this,b===Ji||b===Ii||a===Ji||a===Ii),this.j("curve",b,a))});z.defineProperty(G,{Qw:"curviness"},function(){return this.Kq},function(a){var b=this.Kq;b!==a&&(u&&z.g(a,"number",G,"curviness"),this.Kq=a,this.qc(),this.Ae(),this.j("curviness",b,a))}); +z.defineProperty(G,{Gx:"routing"},function(){return this.Em},function(a){var b=this.Em;b!==a&&(u&&z.Ba(a,G,G,"routing"),this.Em=a,this.Di=null,this.qc(),Vp(this,2===(b.value&2)||2===(a.value&2)),this.j("routing",b,a))});z.defineProperty(G,{dq:"smoothness"},function(){return this.Ms},function(a){var b=this.Ms;b!==a&&(u&&z.g(a,"number",G,"smoothness"),this.Ms=a,this.Ae(),this.j("smoothness",b,a))}); +function Rp(a){var b=a.qg;if(null!==b){var c=a.Cg;if(null!==c){var d=a.Oh;a=a.ei;for(var e=null,g=null,h=b.nc.o,k=h.length,l=0;l=a.width||0>=a.height)){var b=a.y,c=a.x+a.width,d=a.y+a.height;this.Sf=Math.floor((a.x-this.Td)/this.Td)*this.Td;this.Tf=Math.floor((b-this.Ad)/this.Ad)*this.Ad;this.Hr=Math.ceil((c+2*this.Td)/this.Td)*this.Td;this.Ir=Math.ceil((d+2*this.Ad)/this.Ad)*this.Ad;a=1+(Math.ceil((this.Hr-this.Sf)/this.Td)|0);b=1+(Math.ceil((this.Ir-this.Tf)/this.Ad)|0);if(null===this.mc||this.Pmthis.Hr||a+cthis.Ir||b+da&&(c+=a,a=0);0>b&&(e+=b,b=0);if(0>c||0>e)return!0;d=Math.min(a+c-1,this.Pm)|0;for(c=Math.min(b+e-1,this.Qm)|0;a<=d;a++)for(e=b;e<=c;e++)if(0===this.mc[a][e])return!1;return!0}; function oq(a,b,c,d,e,g,h,k,l){if(!(bh||cl)){var m,n;m=b|0;n=c|0;var p=a.mc[m][n];if(1<=p&&999999>p)for(e?n+=d:m+=d,p+=1;g<=m&&m<=h&&k<=n&&n<=l&&!(p>=a.mc[m][n]);)a.mc[m][n]=p,p+=1,e?n+=d:m+=d;m=e?n:m;if(e)if(0m;c+=d)oq(a,b,c,1,!e,g,h,k,l),oq(a,b,c,-1,!e,g,h,k,l);else if(0m;b+=d)oq(a,b,c,1,!e,g,h,k,l),oq(a,b,c,-1,!e,g,h, k,l)}}function pq(a,b,c,d,e,g,h,k,l,m,n){for(var p=b|0,q=c|0,r=a.mc[p][q];0===r&&p>k&&pm&&q=Math.abs(p-d)&&1>=Math.abs(q-e))return a.abort=!0,0;p=b|0;q=c|0;r=a.mc[p][q];b=1;for(a.mc[p][q]=b;0===r&&p>k&&pm&&q=Math.abs(h-l)&&1>=Math.abs(k-m))a.abort=!0;else{var n=g.x;b=g.y;d=g.x+g.width;var p=g.y+g.height,n=n-a.Tf,n=n/a.Vd;b-=a.Uf;b/=a.Bd;d-=a.Tf;d/=a.Vd;p-=a.Uf;p/=a.Bd;g=Math.max(0,Math.min(a.Pm,n|0));d=Math.min(a.Pm,Math.max(0,d|0));b=Math.max(0,Math.min(a.Qm,b|0));var p=Math.min(a.Qm,Math.max(0,p|0)),h=h|0,k=k|0,l=l|0, +function dq(a,b,c,d,e,g){if(null!==a.mc){a.abort=!1;var h=b.x,k=b.y;if(nq(a,h,k)){var h=h-a.Sf,h=h/a.Td,k=k-a.Tf,k=k/a.Ad,l=d.x,m=d.y;if(nq(a,l,m))if(l-=a.Sf,l/=a.Td,m-=a.Tf,m/=a.Ad,1>=Math.abs(h-l)&&1>=Math.abs(k-m))a.abort=!0;else{var n=g.x;b=g.y;d=g.x+g.width;var p=g.y+g.height,n=n-a.Sf,n=n/a.Td;b-=a.Tf;b/=a.Ad;d-=a.Sf;d/=a.Td;p-=a.Tf;p/=a.Ad;g=Math.max(0,Math.min(a.Pm,n|0));d=Math.min(a.Pm,Math.max(0,d|0));b=Math.max(0,Math.min(a.Qm,b|0));var p=Math.min(a.Qm,Math.max(0,p|0)),h=h|0,k=k|0,l=l|0, m=m|0,n=h,q=k,r=0===c||90===c?1:-1;(c=90===c||270===c)?q=pq(a,h,k,l,m,r,c,g,d,b,p):n=pq(a,h,k,l,m,r,c,g,d,b,p);if(!a.abort){a:{c=0===e||90===e?1:-1;e=90===e||270===e;for(var r=l|0,s=m|0,t=a.mc[r][s];0===t&&r>g&&rb&&s=Math.abs(r-h)&&1>=Math.abs(s-k)){a.abort=!0;break a}r=l|0;s=m|0;t=a.mc[r][s];for(a.mc[r][s]=999999;0===t&&r>g&&rb&&s=c?180:0}a=180*Math.atan2(a.height,a.width)/Math.PI;switch(b){case y.Tc|y.pd:return c>a&&c<=180+a?180:270;case y.pd|y.gd:return c>180-a&&c<=360-a?270:0;case y.gd|y.fd:return c>a&&c<=180+a?90:0;case y.fd|y.Tc:return c>180-a&&c<=360-a?180:90;case y.Tc|y.pd|y.gd:return 90180+a&&c<=360- -a?270:0;case y.pd|y.gd|y.fd:return 180a&&180>=c?90:0;case y.gd|y.fd|y.Tc:return c>a&&c<=180-a?90:c>180-a&&270>=c?180:0;case y.fd|y.Tc|y.pd:return c>180-a&&c<=180+a?180:c>180+a?270:90}d&&b!==(y.Tc|y.pd|y.gd|y.fd)&&(c-=15,0>c&&(c+=360));return c>a&&c<180-a?90:c>=180-a&&c<=180+a?180:c>180+a&&c<360-a?270:0}$p.prototype.kn=function(){this.hg.length=0}; -function aq(a,b){var c=a.hg;if(0===c.length){a:if(!a.Op){c=a.Op;a.Op=!0;var d,e=null,g=a.Pc,g=g instanceof F?g:null;if(null===g||g.te)d=a.Pc.nE(a.port.zd);else{if(!g.W.F()){a.Op=c;break a}e=g;d=e.mE()}var h=a.hg.length=0,k=a.port.eb(Zb,y.O()),l=a.port.eb(mc,y.O()),g=y.yk(k.x,k.y,0,0);g.vj(l);y.A(k);y.A(l);k=y.Tb(g.x+g.width/2,g.y+g.height/2);for(d=d.i;d.next();)if(l=d.value,l.isVisible()){var m=Vb,n=l.bd===a.port||l.Y.ni(e),m=n?Wp(l,a.port):Xp(l,a.port);if(m.lj()&&(n=n?l.Ad:l.bd,null!==n)){var p= -n.ca;if(null!==p){var n=l.computeOtherPoint(p,n),p=k.Ec(n),m=qq(g,m,p,l.rc),q=0;0===m?(q=y.gd,180 -Math.abs(H)?(A=Math.abs(H)/q,q=Math.abs(H)):A=1;break;case y.Tc:r>Math.abs(L)?(A=Math.abs(L)/r,r=Math.abs(L)):A=1;break;case y.pd:n>Math.abs(H)?(A=Math.abs(H)/n,n=Math.abs(H)):A=1;break;default:case y.gd:p>Math.abs(L)?(A=Math.abs(L)/p,p=Math.abs(L)):A=1}z=0}var U=t.Gp;if(e===xp){v=t.link.computeThickness();v*=A;U.set(B);switch(x){case y.fd:U.x=B.x+H/2+q/2-z-v/2;break;case y.Tc:U.y=B.y+L/2+r/2-z-v/2;break;case y.pd:U.x=B.x+H/2-n/2+z+v/2;break;default:case y.gd:U.y=B.y+L/2-p/2+z+v/2}z+=v}else v=.5, -e===up&&(v=(t.yp+1)/(t.bn+1)),U.x=B.x+H*v,U.y=B.y+L*v}y.A(k);y.A(d);y.A(l);y.A(m);B=a.hg;for(H=0;Hb.ue?1:a.angleb.angle?1:0}; -$p.prototype.computeEndSegmentLength=function(a){var b=a.link,c=b.computeEndSegmentLength(this.Pc,this.port,Vb,b.bd===this.port),d=a.yp;if(0>d)return c;var e=a.bn;if(1>=e||!b.rc)return c;var b=a.vx,g=a.Gp;if(a.ue===y.Tc||a.ue===y.fd)d=e-1-d;return((a=a.ue===y.Tc||a.ue===y.gd)?b.ye&&(e=k.right);k.bottom>g&&(g=k.bottom)}}isFinite(c)&&isFinite(d)?a.n(c,d,e-c,g-d):(b=b.location,c=this.padding,a.n(b.x+c.left,b.y+c.top,0,0));return a}; -y.defineProperty(Wi,{padding:"padding"},function(){return this.cf},function(a){"number"===typeof a?((isNaN(a)||0>a)&&y.ka(a,">= 0",Wi,"padding"),a=new Eb(a)):(y.l(a,Eb,Wi,"padding"),(isNaN(a.left)||0>a.left)&&y.ka(a.left,">= 0",Wi,"padding:value.left"),(isNaN(a.right)||0>a.right)&&y.ka(a.right,">= 0",Wi,"padding:value.right"),(isNaN(a.top)||0>a.top)&&y.ka(a.top,">= 0",Wi,"padding:value.top"),(isNaN(a.bottom)||0>a.bottom)&&y.ka(a.bottom,">= 0",Wi,"padding:value.bottom"));var b=this.cf;b.N(a)||(this.cf= -a=a.U(),this.j("padding",b,a))});function xg(){0=c-1?(h=0,e=d,g+=k+20,k=0):h++}null!==a&&a.Md("Layout")}this.Hf=!0};xg.prototype.sA=function(a){return!a.location.F()||a instanceof F&&a.cz?!0:!1}; -function uq(a,b,c,d,e,g,h,k){for(c=c.i;c.next();){var l=c.value;d&&!l.Cp||null!==e&&!e(l)||!l.canLayout()||(g&&l instanceof E?l.Ef||(l instanceof F?null===l.Sb?uq(a,b,l.Hc,!1,e,g,h,k):b.add(l):b.add(l)):h&&l instanceof G?b.add(l):!k||!l.de()||l instanceof E||b.add(l))}} -xg.prototype.collectParts=xg.prototype.XG=function(a){var b=new K(D);a instanceof C?(uq(this,b,a.Mg,!0,null,!0,!0,!0),uq(this,b,a.links,!0,null,!0,!0,!0),uq(this,b,a.pi,!0,null,!0,!0,!0)):a instanceof F?uq(this,b,a.Hc,!1,null,!0,!0,!0):uq(this,b,a.i,!1,null,!0,!0,!0);return b};y.defineProperty(xg,{le:"arrangementOrigin"},function(){return this.qq},function(a){y.l(a,N,xg,"arrangementOrigin");this.qq.N(a)||(this.qq.assign(a),this.I())}); -xg.prototype.initialOrigin=function(a){var b=this.group;if(null!==b){var c=b.position.copy();(isNaN(c.x)||isNaN(c.y))&&c.set(a);b=b.placeholder;null!==b&&(c=b.eb(Zb),(isNaN(c.x)||isNaN(c.y))&&c.set(a),c.x+=b.padding.left,c.y+=b.padding.top);return c}return a};function wa(){y.lc(this);this.je=null;this.clear()}y.ia("LayoutNetwork",wa); -wa.prototype.clear=function(){if(this.vertexes)for(var a=this.vertexes.i;a.next();){var b=a.value;b.clear();b.network=null}if(this.edges)for(a=this.edges.i;a.next();)b=a.value,b.clear(),b.network=null;this.vertexes=new K(xa);this.edges=new K(ya);this.wA=new na(E,xa);this.iA=new na(G,ya)}; -wa.prototype.toString=function(a){void 0===a&&(a=0);var b="LayoutNetwork"+(null!==this.Sb?"("+this.Sb.toString()+")":"");if(0>=a)return b;b+=" vertexes: "+this.vertexes.count+" edges: "+this.edges.count;if(1=c?180:0}a=180*Math.atan2(a.height,a.width)/Math.PI;switch(b){case z.Tc|z.pd:return c>a&&c<=180+a?180:270;case z.pd|z.gd:return c>180-a&&c<=360-a?270:0;case z.gd|z.fd:return c>a&&c<=180+a?90:0;case z.fd|z.Tc:return c>180-a&&c<=360-a?180:90;case z.Tc|z.pd|z.gd:return 90180+a&&c<=360- +a?270:0;case z.pd|z.gd|z.fd:return 180a&&180>=c?90:0;case z.gd|z.fd|z.Tc:return c>a&&c<=180-a?90:c>180-a&&270>=c?180:0;case z.fd|z.Tc|z.pd:return c>180-a&&c<=180+a?180:c>180+a?270:90}d&&b!==(z.Tc|z.pd|z.gd|z.fd)&&(c-=15,0>c&&(c+=360));return c>a&&c<180-a?90:c>=180-a&&c<=180+a?180:c>180+a&&c<360-a?270:0}$p.prototype.kn=function(){this.gg.length=0}; +function aq(a,b){var c=a.gg;if(0===c.length){a:if(!a.Op){c=a.Op;a.Op=!0;var d,e=null,g=a.Pc,g=g instanceof F?g:null;if(null===g||g.re)d=a.Pc.qE(a.port.yd);else{if(!g.W.F()){a.Op=c;break a}e=g;d=e.pE()}var h=a.gg.length=0,k=a.port.eb(Zb,z.O()),l=a.port.eb(ic,z.O()),g=z.yk(k.x,k.y,0,0);g.uj(l);z.A(k);z.A(l);k=z.Tb(g.x+g.width/2,g.y+g.height/2);for(d=d.i;d.next();)if(l=d.value,l.isVisible()){var m=Yb,n=l.bd===a.port||l.Y.li(e),m=n?Wp(l,a.port):Xp(l,a.port);if(m.jj()&&(n=n?l.zd:l.bd,null!==n)){var p= +n.ca;if(null!==p){var n=l.computeOtherPoint(p,n),p=k.Ec(n),m=qq(g,m,p,l.rc),q=0;0===m?(q=z.gd,180 +Math.abs(H)?(A=Math.abs(H)/q,q=Math.abs(H)):A=1;break;case z.Tc:r>Math.abs(L)?(A=Math.abs(L)/r,r=Math.abs(L)):A=1;break;case z.pd:n>Math.abs(H)?(A=Math.abs(H)/n,n=Math.abs(H)):A=1;break;default:case z.gd:p>Math.abs(L)?(A=Math.abs(L)/p,p=Math.abs(L)):A=1}y=0}var U=t.Gp;if(e===xp){v=t.link.computeThickness();v*=A;U.set(B);switch(x){case z.fd:U.x=B.x+H/2+q/2-y-v/2;break;case z.Tc:U.y=B.y+L/2+r/2-y-v/2;break;case z.pd:U.x=B.x+H/2-n/2+y+v/2;break;default:case z.gd:U.y=B.y+L/2-p/2+y+v/2}y+=v}else v=.5, +e===up&&(v=(t.yp+1)/(t.bn+1)),U.x=B.x+H*v,U.y=B.y+L*v}z.A(k);z.A(d);z.A(l);z.A(m);B=a.gg;for(H=0;Hb.se?1:a.angleb.angle?1:0}; +$p.prototype.computeEndSegmentLength=function(a){var b=a.link,c=b.computeEndSegmentLength(this.Pc,this.port,Yb,b.bd===this.port),d=a.yp;if(0>d)return c;var e=a.bn;if(1>=e||!b.rc)return c;var b=a.wx,g=a.Gp;if(a.se===z.Tc||a.se===z.fd)d=e-1-d;return((a=a.se===z.Tc||a.se===z.gd)?b.ye&&(e=k.right);k.bottom>g&&(g=k.bottom)}}isFinite(c)&&isFinite(d)?a.n(c,d,e-c,g-d):(b=b.location,c=this.padding,a.n(b.x+c.left,b.y+c.top,0,0));return a}; +z.defineProperty(Wi,{padding:"padding"},function(){return this.bf},function(a){"number"===typeof a?((isNaN(a)||0>a)&&z.ka(a,">= 0",Wi,"padding"),a=new Eb(a)):(z.l(a,Eb,Wi,"padding"),(isNaN(a.left)||0>a.left)&&z.ka(a.left,">= 0",Wi,"padding:value.left"),(isNaN(a.right)||0>a.right)&&z.ka(a.right,">= 0",Wi,"padding:value.right"),(isNaN(a.top)||0>a.top)&&z.ka(a.top,">= 0",Wi,"padding:value.top"),(isNaN(a.bottom)||0>a.bottom)&&z.ka(a.bottom,">= 0",Wi,"padding:value.bottom"));var b=this.bf;b.N(a)||(this.bf= +a=a.V(),this.j("padding",b,a))});function xg(){0=c-1?(h=0,e=d,g+=k+20,k=0):h++}null!==a&&a.Kd("Layout")}this.Gf=!0};xg.prototype.wA=function(a){return!a.location.F()||a instanceof F&&a.dz?!0:!1}; +function uq(a,b,c,d,e,g,h,k){for(c=c.i;c.next();){var l=c.value;d&&!l.Cp||null!==e&&!e(l)||!l.canLayout()||(g&&l instanceof E?l.Df||(l instanceof F?null===l.Sb?uq(a,b,l.Hc,!1,e,g,h,k):b.add(l):b.add(l)):h&&l instanceof G?b.add(l):!k||!l.be()||l instanceof E||b.add(l))}} +xg.prototype.collectParts=xg.prototype.ZG=function(a){var b=new K(D);a instanceof C?(uq(this,b,a.Lg,!0,null,!0,!0,!0),uq(this,b,a.links,!0,null,!0,!0,!0),uq(this,b,a.ni,!0,null,!0,!0,!0)):a instanceof F?uq(this,b,a.Hc,!1,null,!0,!0,!0):uq(this,b,a.i,!1,null,!0,!0,!0);return b};z.defineProperty(xg,{je:"arrangementOrigin"},function(){return this.qq},function(a){z.l(a,N,xg,"arrangementOrigin");this.qq.N(a)||(this.qq.assign(a),this.I())}); +xg.prototype.initialOrigin=function(a){var b=this.group;if(null!==b){var c=b.position.copy();(isNaN(c.x)||isNaN(c.y))&&c.set(a);b=b.placeholder;null!==b&&(c=b.eb(Zb),(isNaN(c.x)||isNaN(c.y))&&c.set(a),c.x+=b.padding.left,c.y+=b.padding.top);return c}return a};function wa(){z.lc(this);this.he=null;this.clear()}z.ia("LayoutNetwork",wa); +wa.prototype.clear=function(){if(this.vertexes)for(var a=this.vertexes.i;a.next();){var b=a.value;b.clear();b.network=null}if(this.edges)for(a=this.edges.i;a.next();)b=a.value,b.clear(),b.network=null;this.vertexes=new K(xa);this.edges=new K(ya);this.AA=new na(E,xa);this.mA=new na(G,ya)}; +wa.prototype.toString=function(a){void 0===a&&(a=0);var b="LayoutNetwork"+(null!==this.Sb?"("+this.Sb.toString()+")":"");if(0>=a)return b;b+=" vertexes: "+this.vertexes.count+" edges: "+this.edges.count;if(1d?1:0):1:null!==d?-1:0}; -xa.smartComparer=function(a,b){u&&y.l(a,xa,xa,"smartComparer:m");u&&y.l(b,xa,xa,"smartComparer:n");if(null!==a){if(null!==b){var c=a.Dd,d=b.Dd;if(null!==c){if(null!==d){for(var c=c.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),d=d.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),e=0;e=g&&0>=h&&(g=1);a=this.spacing.width;isFinite(a)||(a=0);c=this.spacing.height;isFinite(c)||(c=0);null!==b&&b.Vb("Layout");d=[];switch(this.alignment){case An:var k=a,l=c,m=Math.max(this.fp.width,1);if(!isFinite(m))for(var n=m=0;ng-1||0h)d.push(new w(0,x,h+k,A)),z=0,v=t,x+=A,A=0;A=Math.max(A,L);L=0;switch(s){case yn:L=-q.width;break;default:L=0}p.moveTo(v+L,x);switch(s){case yn:v-=B;break; -default:v+=B}z++}d.push(new w(0,x,h+k,A));break;case zn:k=g;l=a;m=c;n=Math.max(this.fp.width,1);p=x=B=0;q=y.O();for(g=0;g=B&&(h-=B);for(var B=L=0,H=Math.max(this.fp.height,1),ea=p=0,W=!0,P=y.O(),g=0;gk-1||0h){d.push(new w(0,W?z-p:z,h+l,ea+p+m));for(U=0;UB&&(e.width+=e.x-B,e.x=B)}for(k=g=h=e=0;kd?1:0}; -sm.smartComparer=function(a,b){u&&y.l(a,D,sm,"standardComparer:a");u&&y.l(b,D,sm,"standardComparer:b");if(null!==a){if(null!==b){for(var c=a.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),d=b.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),e=0;e=a.count)1===a.count&&(a=a.first(),a.ra=0,a.za=0);else{var b=new J(Dq);b.$c(a.i);a=new J(Dq);var c=new J(Dq),d;d=this.sort(b);var e=this.Ey,g=this.ZB,h=this.Yd,k=this.fo,l=this.Fy,m=this.Wq,b=this.Sk,n=this.pD,p=this.Fg,q=this.Xu,e=this.Zf,g=this.sx,h=this.SI;if(!isFinite(h)|| -0>=h)h=NaN;k=this.RG;if(!isFinite(k)||0>=k)k=1;l=this.Ge;isFinite(l)||(l=0);m=this.Mf;if(!isFinite(m)||360m)m=360;b=this.spacing;isFinite(b)||(b=NaN);e===On&&g===Pn?e=Nn:e===On&&g!==Pn&&(g=Pn,e=this.Zf);if((this.direction===Hn||this.direction===In)&&this.sorting!==Gn){for(var r=0;!(r>=d.length);r+=2){a.add(d.ea(r));if(r+1>=d.length)break;c.add(d.ea(r+1))}this.direction===Hn?(this.Zf===On&&a.reverse(),d=new J(Dq),d.$c(a),d.$c(c)):(this.Zf===On&&c.reverse(),d=new J(Dq),d.$c(c),d.$c(a))}for(var s= +function xa(){z.lc(this);this.network=null;this.P=(new w(0,0,10,10)).freeze();this.R=(new N(5,5)).freeze();this.clear()}z.ia("LayoutVertex",xa);xa.prototype.clear=function(){this.Cd=this.fe=null;this.Xe=new J(ya);this.Re=new J(ya)}; +xa.prototype.toString=function(a){void 0===a&&(a=0);var b="LayoutVertex#"+z.nd(this);if(0d?1:0):1:null!==d?-1:0}; +xa.smartComparer=function(a,b){u&&z.l(a,xa,xa,"smartComparer:m");u&&z.l(b,xa,xa,"smartComparer:n");if(null!==a){if(null!==b){var c=a.Cd,d=b.Cd;if(null!==c){if(null!==d){for(var c=c.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),d=d.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),e=0;e=g&&0>=h&&(g=1);a=this.spacing.width;isFinite(a)||(a=0);c=this.spacing.height;isFinite(c)||(c=0);null!==b&&b.Wb("Layout");d=[];switch(this.alignment){case An:var k=a,l=c,m=Math.max(this.fp.width,1);if(!isFinite(m))for(var n=m=0;ng-1||0h)d.push(new w(0,x,h+k,A)),y=0,v=t,x+=A,A=0;A=Math.max(A,L);L=0;switch(s){case yn:L=-q.width;break;default:L=0}p.moveTo(v+L,x);switch(s){case yn:v-=B;break; +default:v+=B}y++}d.push(new w(0,x,h+k,A));break;case zn:k=g;l=a;m=c;n=Math.max(this.fp.width,1);p=x=B=0;q=z.O();for(g=0;g=B&&(h-=B);for(var B=L=0,H=Math.max(this.fp.height,1),ea=p=0,W=!0,P=z.O(),g=0;gk-1||0h){d.push(new w(0,W?y-p:y,h+l,ea+p+m));for(U=0;UB&&(e.width+=e.x-B,e.x=B)}for(k=g=h=e=0;kd?1:0}; +sm.smartComparer=function(a,b){u&&z.l(a,D,sm,"standardComparer:a");u&&z.l(b,D,sm,"standardComparer:b");if(null!==a){if(null!==b){for(var c=a.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),d=b.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),e=0;e=a.count)1===a.count&&(a=a.first(),a.ra=0,a.za=0);else{var b=new J(Dq);b.$c(a.i);a=new J(Dq);var c=new J(Dq),d;d=this.sort(b);var e=this.Fy,g=this.cC,h=this.Wd,k=this.fo,l=this.Gy,m=this.Wq,b=this.Sk,n=this.sD,p=this.Eg,q=this.Yu,e=this.Yf,g=this.tx,h=this.UI;if(!isFinite(h)|| +0>=h)h=NaN;k=this.TG;if(!isFinite(k)||0>=k)k=1;l=this.Fe;isFinite(l)||(l=0);m=this.Lf;if(!isFinite(m)||360m)m=360;b=this.spacing;isFinite(b)||(b=NaN);e===On&&g===Pn?e=Nn:e===On&&g!==Pn&&(g=Pn,e=this.Yf);if((this.direction===Hn||this.direction===In)&&this.sorting!==Gn){for(var r=0;!(r>=d.length);r+=2){a.add(d.ea(r));if(r+1>=d.length)break;c.add(d.ea(r+1))}this.direction===Hn?(this.Yf===On&&a.reverse(),d=new J(Dq),d.$c(a),d.$c(c)):(this.Yf===On&&c.reverse(),d=new J(Dq),d.$c(c),d.$c(a))}for(var s= d.length,t=n=0,r=0;rm&&(0===r||r===d.length-1)&&(v/=2);n+=v;t++}if(isNaN(h)||e===On){isNaN(b)&&(b=6);if(e!==Nn&&e!==On){v=-Infinity;for(r=0;rh?(h=r,p=h*k):q=t/(360<=m?s:s-1)}this.Ey=e;this.ZB=g;this.Yd=h;this.fo=k;this.Fy=l;this.Wq=m;this.Sk=b;this.pD=n;this.Fg=p;this.Xu=q;b=d;d=this.Ey;e=this.Yd;g=this.Fy;k=this.Wq;l=this.Sk;m=this.Fg;n=this.Xu;if(this.direction!==Hn&&this.direction!==In||d!==On)if(this.direction===Hn||this.direction===In){h=0;switch(d){case Mn:h=180*Hq(this,e,m,g,n)/Math.PI;break;case Nn:n=b=0;h=a.first();null!==h&&(b=Eq(h,Math.PI/2));h=c.first();null!==h&&(n=Eq(h,Math.PI/2));h=180*Hq(this,e,m,g,l+(b+ +m*Math.PI/180);r>h?(h=r,p=h*k):q=t/(360<=m?s:s-1)}this.Fy=e;this.cC=g;this.Wd=h;this.fo=k;this.Gy=l;this.Wq=m;this.Sk=b;this.sD=n;this.Eg=p;this.Yu=q;b=d;d=this.Fy;e=this.Wd;g=this.Gy;k=this.Wq;l=this.Sk;m=this.Eg;n=this.Yu;if(this.direction!==Hn&&this.direction!==In||d!==On)if(this.direction===Hn||this.direction===In){h=0;switch(d){case Mn:h=180*Hq(this,e,m,g,n)/Math.PI;break;case Nn:n=b=0;h=a.first();null!==h&&(b=Eq(h,Math.PI/2));h=c.first();null!==h&&(n=Eq(h,Math.PI/2));h=180*Hq(this,e,m,g,l+(b+ n)/2)/Math.PI;break;case Ln:h=k/b.length}if(this.direction===Hn){switch(d){case Mn:Iq(this,a,g,Kn);break;case Nn:Jq(this,a,g,Kn);break;case Ln:Kq(this,a,k/2,g,Kn)}switch(d){case Mn:Iq(this,c,g+h,Jn);break;case Nn:Jq(this,c,g+h,Jn);break;case Ln:Kq(this,c,k/2,g+h,Jn)}}else{switch(d){case Mn:Iq(this,c,g,Kn);break;case Nn:Jq(this,c,g,Kn);break;case Ln:Kq(this,c,k/2,g,Kn)}switch(d){case Mn:Iq(this,a,g+h,Jn);break;case Nn:Jq(this,a,g+h,Jn);break;case Ln:Kq(this,a,k/2,g+h,Jn)}}}else switch(d){case Mn:Iq(this, -b,g,this.direction);break;case Nn:Jq(this,b,g,this.direction);break;case Ln:Kq(this,b,k,g,this.direction);break;case On:Lq(this,b,k,g,this.direction)}else Lq(this,b,k,g-k/2,Jn)}this.updateParts();this.network=null;this.Hf=!0}; -function Kq(a,b,c,d,e){var g=a.Wq,h=a.Yd;a=a.Fg;d=d*Math.PI/180;c=c*Math.PI/180;for(var k=b.length,l=0;lc){for(g=d+(e===Jn?g:-g);0>g;)g+=360;g%=360;180=n.length-1)break;Oq(a,l,m,n,p,e,g)||Pq(a,l,m,n,p,e,g);l=g.x;m=g.y}y.A(g);a.Am++;if(!(23Math.abs(r)?Math.abs(l-g)<(n[0].width+n[n.length-1].width)/2&&(h=0):h=0Math.abs(q)?0:q;q=!1;q=Math.abs(g)>Math.abs(p)?0p:0a.Am?a.Yd-h/(2*Math.PI):5>n.length&&10=p.length-1)break;Oq(a,l,m,p,q,e,n)||Pq(a,l,m,p,q,e,n);l=n.x;m=n.y}y.A(n);a.Am++;if(!(23a.Am?a.Yd-g/(2*Math.PI):a.Yd-(0k){m=b-a;if(m<-k)return h.x=m,h.y=n,!1;p=!0}}else if(m=b-a,m<-k){m=b+a;if(m>k)return h.x=m,h.y=n,!1;p=!0}n=Math.sqrt(1-Math.min(1,m*m/(k*k)))*l;0>c!==p&&(n=-n);if(Math.abs(c-n)>(d[e].height+d[e+1].height)/2)return h.x=m,h.y=n,!1;h.x=m;h.y=n;return!0} -function Pq(a,b,c,d,e,g,h){var k=a.Yd,l=a.Fg,m=0,n=0;a=(d[e].height+d[e+1].height)/2+a.Sk;d=!1;if(0<=b!==(g===Jn)){if(n=c-a,n<-l){n=c+a;if(n>l){h.x=m;h.y=n;return}d=!0}}else if(n=c+a,n>l){n=c-a;if(n<-l){h.x=m;h.y=n;return}d=!0}m=Math.sqrt(1-Math.min(1,n*n/(l*l)))*k;0>b!==d&&(m=-m);h.x=m;h.y=n}Bn.prototype.commitLayout=function(){this.commitNodes();this.Qt&&this.commitLinks()}; -Bn.prototype.commitNodes=function(){for(var a=this.GG,b=this.network.vertexes.i;b.next();){var c=b.value;c.x+=a.x;c.y+=a.y;c.commit()}};Bn.prototype.commitLinks=function(){for(var a=this.network.edges.i;a.next();)a.value.commit()}; -function Gq(a,b,c,d,e){var g=a.uG;if(.001>Math.abs(a.fo-1))return void 0!==d&&void 0!==e?e*b:2*Math.PI*b;a=b>c?Math.sqrt(b*b-c*c)/b:Math.sqrt(c*c-b*b)/c;for(var h=0,k=0,k=void 0!==d&&void 0!==e?e/(g+1):Math.PI/(2*(g+1)),l=0,m=0;m<=g;m++)l=void 0!==d&&void 0!==e?d+m*e/g:m*Math.PI/(2*g),l=Math.sin(l),h+=Math.sqrt(1-a*a*l*l)*k;return void 0!==d&&void 0!==e?(b>c?b:c)*h:4*(b>c?b:c)*h}function Fq(a,b,c,d,e){var g=0,g=void 0!==d&&void 0!==e?Gq(a,1,c,d,e):Gq(a,1,c);return b/g} +b,g,this.direction);break;case Nn:Jq(this,b,g,this.direction);break;case Ln:Kq(this,b,k,g,this.direction);break;case On:Lq(this,b,k,g,this.direction)}else Lq(this,b,k,g-k/2,Jn)}this.updateParts();this.network=null;this.Gf=!0}; +function Kq(a,b,c,d,e){var g=a.Wq,h=a.Wd;a=a.Eg;d=d*Math.PI/180;c=c*Math.PI/180;for(var k=b.length,l=0;lc){for(g=d+(e===Jn?g:-g);0>g;)g+=360;g%=360;180=n.length-1)break;Oq(a,l,m,n,p,e,g)||Pq(a,l,m,n,p,e,g);l=g.x;m=g.y}z.A(g);a.zm++;if(!(23Math.abs(r)?Math.abs(l-g)<(n[0].width+n[n.length-1].width)/2&&(h=0):h=0Math.abs(q)?0:q;q=!1;q=Math.abs(g)>Math.abs(p)?0p:0a.zm?a.Wd-h/(2*Math.PI):5>n.length&&10=p.length-1)break;Oq(a,l,m,p,q,e,n)||Pq(a,l,m,p,q,e,n);l=n.x;m=n.y}z.A(n);a.zm++;if(!(23a.zm?a.Wd-g/(2*Math.PI):a.Wd-(0k){m=b-a;if(m<-k)return h.x=m,h.y=n,!1;p=!0}}else if(m=b-a,m<-k){m=b+a;if(m>k)return h.x=m,h.y=n,!1;p=!0}n=Math.sqrt(1-Math.min(1,m*m/(k*k)))*l;0>c!==p&&(n=-n);if(Math.abs(c-n)>(d[e].height+d[e+1].height)/2)return h.x=m,h.y=n,!1;h.x=m;h.y=n;return!0} +function Pq(a,b,c,d,e,g,h){var k=a.Wd,l=a.Eg,m=0,n=0;a=(d[e].height+d[e+1].height)/2+a.Sk;d=!1;if(0<=b!==(g===Jn)){if(n=c-a,n<-l){n=c+a;if(n>l){h.x=m;h.y=n;return}d=!0}}else if(n=c+a,n>l){n=c-a;if(n<-l){h.x=m;h.y=n;return}d=!0}m=Math.sqrt(1-Math.min(1,n*n/(l*l)))*k;0>b!==d&&(m=-m);h.x=m;h.y=n}Bn.prototype.commitLayout=function(){this.commitNodes();this.Rt&&this.commitLinks()}; +Bn.prototype.commitNodes=function(){for(var a=this.IG,b=this.network.vertexes.i;b.next();){var c=b.value;c.x+=a.x;c.y+=a.y;c.commit()}};Bn.prototype.commitLinks=function(){for(var a=this.network.edges.i;a.next();)a.value.commit()}; +function Gq(a,b,c,d,e){var g=a.xG;if(.001>Math.abs(a.fo-1))return void 0!==d&&void 0!==e?e*b:2*Math.PI*b;a=b>c?Math.sqrt(b*b-c*c)/b:Math.sqrt(c*c-b*b)/c;for(var h=0,k=0,k=void 0!==d&&void 0!==e?e/(g+1):Math.PI/(2*(g+1)),l=0,m=0;m<=g;m++)l=void 0!==d&&void 0!==e?d+m*e/g:m*Math.PI/(2*g),l=Math.sin(l),h+=Math.sqrt(1-a*a*l*l)*k;return void 0!==d&&void 0!==e?(b>c?b:c)*h:4*(b>c?b:c)*h}function Fq(a,b,c,d,e){var g=0,g=void 0!==d&&void 0!==e?Gq(a,1,c,d,e):Gq(a,1,c);return b/g} function Hq(a,b,c,d,e){if(.001>Math.abs(a.fo-1))return e/b;var g=b>c?Math.sqrt(b*b-c*c)/b:Math.sqrt(c*c-b*b)/c,h=0;a=2*Math.PI/(700*a.network.vertexes.count);b>c&&(d+=Math.PI/2);for(var k=0;;k++){var l=Math.sin(d+k*a),h=h+(b>c?b:c)*Math.sqrt(1-g*g*l*l)*a;if(h>=e)return k*a}} -Bn.prototype.sort=function(a){switch(this.sorting){case En:break;case Fn:a.reverse();break;case Cn:a.sort(this.comparer);break;case Dn:a.sort(this.comparer);a.reverse();break;case Gn:for(var b=[],c=0;ce&&(e=k,g=h)}else for(h=0;he&&(e=k,g=h);d.add(a.ea(g));b[g]=-1;g=a.ea(g);e=0;for(h=g.tc;h.next();)e=a.indexOf(h.value.fromVertex),0>e||0<=b[e]&& +Bn.prototype.sort=function(a){switch(this.sorting){case En:break;case Fn:a.reverse();break;case Cn:a.sort(this.comparer);break;case Dn:a.sort(this.comparer);a.reverse();break;case Gn:for(var b=[],c=0;ce&&(e=k,g=h)}else for(h=0;he&&(e=k,g=h);d.add(a.ea(g));b[g]=-1;g=a.ea(g);e=0;for(h=g.tc;h.next();)e=a.indexOf(h.value.fromVertex),0>e||0<=b[e]&& b[e]++;for(g=g.hc;g.next();)e=a.indexOf(g.value.toVertex),0>e||0<=b[e]&&b[e]++}a=[];for(b=0;ba[b].indexOf(l)&&a[b].push(l);for(c=h.tc;c.next();)l=d.indexOf(c.value.fromVertex),l!==b&&0>a[b].indexOf(l)&&a[b].push(l)}h=[];for(b=0;ba[c[p]].indexOf(c[p===c.length-1?0:p+1])&&t.push(p===c.length-1?0:p+1);if(0===t.length)for(p=0;pL.indexOf(W)||PL.indexOf(W)|| -P=v?l+1:l)),z+=l=v&&l++,B>=v&&B++,l>B&&(L=B,B=l,l=L),B-l<(c.length+2)/2===(lq||q===l||(s=q>l?q-l:l-q,p+=qm-s?1:-1);c.splice(0>p?l:l+1,0,b);e.splice(h,1);h--}else k=!1;if(k)break;else c.push(e[0]),e.splice(0,1)}for(b=0;b=a?a:360,this.I())}); -y.defineProperty(Bn,{Zf:"arrangement"},function(){return this.qd},function(a){this.qd!==a&&(y.Ba(a,Bn,Bn,"arrangement"),a===On||a===Nn||a===Mn||a===Ln)&&(this.qd=a,this.I())});y.defineProperty(Bn,{direction:"direction"},function(){return this.fa},function(a){this.fa!==a&&(y.Ba(a,Bn,Bn,"direction"),a===Jn||a===Kn||a===Hn||a===In)&&(this.fa=a,this.I())}); -y.defineProperty(Bn,{sorting:"sorting"},function(){return this.bi},function(a){this.bi!==a&&(y.Ba(a,Bn,Bn,"sorting"),a===En||a===Fn||a===Cn||Dn||a===Gn)&&(this.bi=a,this.I())});y.defineProperty(Bn,{comparer:"comparer"},function(){return this.Lh},function(a){this.Lh!==a&&(y.g(a,"function",Bn,"comparer"),this.Lh=a,this.I())});y.defineProperty(Bn,{spacing:"spacing"},function(){return this.ci},function(a){this.ci!==a&&(y.g(a,"number",Bn,"spacing"),this.ci=a,this.I())}); -y.defineProperty(Bn,{sx:"nodeDiameterFormula"},function(){return this.Yr},function(a){this.Yr!==a&&(y.Ba(a,Bn,Bn,"nodeDiameterFormula"),a===Qn||a===Pn)&&(this.Yr=a,this.I())});y.w(Bn,{HG:"actualXRadius"},function(){return this.Yd});y.w(Bn,{IG:"actualYRadius"},function(){return this.Fg});y.w(Bn,{FJ:"actualSpacing"},function(){return this.Sk});y.w(Bn,{GG:"actualCenter"},function(){return isNaN(this.le.x)||isNaN(this.le.y)?new N(0,0):new N(this.le.x+this.HG,this.le.y+this.IG)});var Nn; -Bn.ConstantSpacing=Nn=y.s(Bn,"ConstantSpacing",0);var Mn;Bn.ConstantDistance=Mn=y.s(Bn,"ConstantDistance",1);var Ln;Bn.ConstantAngle=Ln=y.s(Bn,"ConstantAngle",2);var On;Bn.Packed=On=y.s(Bn,"Packed",3);var Jn;Bn.Clockwise=Jn=y.s(Bn,"Clockwise",4);var Kn;Bn.Counterclockwise=Kn=y.s(Bn,"Counterclockwise",5);var Hn;Bn.BidirectionalLeft=Hn=y.s(Bn,"BidirectionalLeft",6);var In;Bn.BidirectionalRight=In=y.s(Bn,"BidirectionalRight",7);var En;Bn.Forwards=En=y.s(Bn,"Forwards",8);var Fn; -Bn.Reverse=Fn=y.s(Bn,"Reverse",9);var Cn;Bn.Ascending=Cn=y.s(Bn,"Ascending",10);var Dn;Bn.Descending=Dn=y.s(Bn,"Descending",11);var Gn;Bn.Optimized=Gn=y.s(Bn,"Optimized",12);var Qn;Bn.Pythagorean=Qn=y.s(Bn,"Pythagorean",13);var Pn;Bn.Circular=Pn=y.s(Bn,"Circular",14);function Bq(){this.sp=-Infinity;this.hq=this.Fn=null} -Bq.prototype.compare=function(a,b){if(0this.sp||Math.abs(a)a&&0g?(e=n.x+n.width/2,k=n.y+n.height/2,l[0]=new N(n.x+n.width+d.width,n.y),l[1]=new N(n.x,n.y+n.height+d.height),g=2):(p=Uq(l,g, -e,k,n.width,n.height,d),q=l[p],r=new N(q.x+n.width+d.width,q.y),s=new N(q.x,q.y+n.height+d.height),p+1this.network.vertexes.count)return!1;for(var a=0,b=0,c=this.network.vertexes.first().vb,d=this.network.vertexes.i;d.next();){if(d.value.vb.Jg(c)&&(a++,2a.network.vertexes.count)return!1;null===a.Eg?a.Eg=new J(mr):a.Eg.clear();a.Eg.$c(a.network.vertexes);var c=a.Eg;c.sort(function(a,b){return null===a||null===b||a===b?0:b.jg-a.jg});for(var d=c.count-1;0<=d&&1>=c.ea(d).jg;)d--;return 1=h))){for(var m=0,n=0,p=l.count-h;ps&&(s=1);m=ne((m+s+n*n*4/(h*h))/s);h=(m-1)*p/2;m=(m-1)*q/2;g.vb=new w(l-r.x-h,k-r.y-m,p+2*h,q+2*m);g.focus=new N(r.x+h,r.y+m)}a.network=d;return c} -function lr(a,b,c){u&&(y.l(b,Sq,Rq,"popNetwork:oldnet"),y.p(c,Rq,"popNetwork:level"));for(c=a.network.vertexes.i;c.next();){var d=c.value;d.network=b;if(null!==d.Eh){var e=d.Eh.ea(d.HA);d.jg=e.Vx;var g=e.fB,h=e.gB;d.vb=new w(d.ra-g,d.za-h,e.Wx,e.Ux);d.focus=new N(g,h);d.HA--}}for(c=a.network.edges.i;c.next();)c.value.network=b;a.network=b} -function nr(a,b,c){u&&(y.l(b,mr,Rq,"surroundNode:oldnet"),y.p(c,Rq,"surroundNode:level"));var d=b.Ym;if(null!==d&&0!==d.count){c=b.ra;var e=b.za,g=b.width,h=b.height;null!==b.Eh&&0=p.jg?l++:(k=!0,m++,h+=Math.atan2(b.za-p.za,b.ra-p.ra))}if(0!==l)for(0>1)+m)*(0===k%2?1:-1);l.ra=c+n*Math.cos(p);l.za=e+n*Math.sin(p);k++}}} -function Uq(a,b,c,d,e,g,h){var k=9E19,l=-1,m=0;a:for(;mn.y&&a[q].x-n.xn.x&&a[q].y-n.yl+h?(d=d+g-k,e=e-l-h,ne(d*d+e*e)):e+ck+m?e>l+h?(d=d-k-m,e=e-l-h,ne(d*d+e*e)):e+cl+h?e-(l+h):e+c=b.length)return!1;var c=b[0];c.forceX=0;c.forceY=0;for(var d=c.ra,e=d,g=c.za,h=g,c=1;ch-g)?b.sort(function(a,b){return null===a||null===b||a===b?0:a.ra-b.ra}):b.sort(function(a,b){return null===a||null===b||a===b?0:a.za-b.za});for(var h=a.Sh,m=0,n=0,p=0,c=0;ch||p-d>h){if(g)break}else if(l-r>h||r-l>h){if(!g)break}else{var s=pr(k,e);1>s?(n=a.Ax,null===n&&(a.Ax=n=new Ka(0)),m=n.random(),s=n.random(),d>p?(n=Math.abs(e.P.right-k.P.x),n=(1+n)*m):dr?(p=Math.abs(e.P.bottom-k.P.y),p=(1+p)*s):ds?(n=a.Ax,null===n&&(a.Ax=n=new Ka(0)),m=n.random(),s= -n.random(),n=(d>p?1:-1)*(1+(e.width>k.width)?e.width:k.width)*m,p=(l>r?1:-1)*(1+(e.height>k.height)?e.height:k.height)*s):(m=g.stiffness*(s-g.length),n=(p-d)/s*m,p=(r-l)/s*m),k.forceX+=n,k.forceY+=p,e.forceX-=n,e.forceY-=p;c=0;d=Math.max(a.Sh/20,50);for(e=0;ed&&(g=d),h<-d?h=-d:h>d&&(h=d),k.ra+=g,k.za+=h,c=Math.max(c,g*g+h*h));return c>a.lE*a.lE}Rq.prototype.moveFixedVertex=function(){}; -Rq.prototype.commitLayout=function(){this.MA();this.commitNodes();this.Qt&&this.commitLinks()};Rq.prototype.MA=function(){if(this.bq)for(var a=this.network.edges.i;a.next();){var b=a.value.link;null!==b&&(b.Db=Kc,b.Eb=Kc)}};Rq.prototype.commitNodes=function(){var a=0,b=0;if(this.QG){var c=y.mg();this.sh(this.network,c);b=this.le;a=b.x-c.x;b=b.y-c.y;y.dc(c)}for(var c=y.mg(),d=this.network.vertexes.i;d.next();){var e=d.value;if(0!==a||0!==b)c.assign(e.vb),c.x+=a,c.y+=b,e.vb=c;e.commit()}y.dc(c)}; +else{for(var q=Infinity,r=Infinity,s=-1,t=[],p=0;pa[c[p]].indexOf(c[p===c.length-1?0:p+1])&&t.push(p===c.length-1?0:p+1);if(0===t.length)for(p=0;pL.indexOf(W)||PL.indexOf(W)|| +P=v?l+1:l)),y+=l=v&&l++,B>=v&&B++,l>B&&(L=B,B=l,l=L),B-l<(c.length+2)/2===(lq||q===l||(s=q>l?q-l:l-q,p+=qm-s?1:-1);c.splice(0>p?l:l+1,0,b);e.splice(h,1);h--}else k=!1;if(k)break;else c.push(e[0]),e.splice(0,1)}for(b=0;b=a?a:360,this.I())}); +z.defineProperty(Bn,{Yf:"arrangement"},function(){return this.qd},function(a){this.qd!==a&&(z.Ba(a,Bn,Bn,"arrangement"),a===On||a===Nn||a===Mn||a===Ln)&&(this.qd=a,this.I())});z.defineProperty(Bn,{direction:"direction"},function(){return this.fa},function(a){this.fa!==a&&(z.Ba(a,Bn,Bn,"direction"),a===Jn||a===Kn||a===Hn||a===In)&&(this.fa=a,this.I())}); +z.defineProperty(Bn,{sorting:"sorting"},function(){return this.$h},function(a){this.$h!==a&&(z.Ba(a,Bn,Bn,"sorting"),a===En||a===Fn||a===Cn||Dn||a===Gn)&&(this.$h=a,this.I())});z.defineProperty(Bn,{comparer:"comparer"},function(){return this.Jh},function(a){this.Jh!==a&&(z.g(a,"function",Bn,"comparer"),this.Jh=a,this.I())});z.defineProperty(Bn,{spacing:"spacing"},function(){return this.ai},function(a){this.ai!==a&&(z.g(a,"number",Bn,"spacing"),this.ai=a,this.I())}); +z.defineProperty(Bn,{tx:"nodeDiameterFormula"},function(){return this.Zr},function(a){this.Zr!==a&&(z.Ba(a,Bn,Bn,"nodeDiameterFormula"),a===Qn||a===Pn)&&(this.Zr=a,this.I())});z.w(Bn,{JG:"actualXRadius"},function(){return this.Wd});z.w(Bn,{KG:"actualYRadius"},function(){return this.Eg});z.w(Bn,{HJ:"actualSpacing"},function(){return this.Sk});z.w(Bn,{IG:"actualCenter"},function(){return isNaN(this.je.x)||isNaN(this.je.y)?new N(0,0):new N(this.je.x+this.JG,this.je.y+this.KG)});var Nn; +Bn.ConstantSpacing=Nn=z.s(Bn,"ConstantSpacing",0);var Mn;Bn.ConstantDistance=Mn=z.s(Bn,"ConstantDistance",1);var Ln;Bn.ConstantAngle=Ln=z.s(Bn,"ConstantAngle",2);var On;Bn.Packed=On=z.s(Bn,"Packed",3);var Jn;Bn.Clockwise=Jn=z.s(Bn,"Clockwise",4);var Kn;Bn.Counterclockwise=Kn=z.s(Bn,"Counterclockwise",5);var Hn;Bn.BidirectionalLeft=Hn=z.s(Bn,"BidirectionalLeft",6);var In;Bn.BidirectionalRight=In=z.s(Bn,"BidirectionalRight",7);var En;Bn.Forwards=En=z.s(Bn,"Forwards",8);var Fn; +Bn.Reverse=Fn=z.s(Bn,"Reverse",9);var Cn;Bn.Ascending=Cn=z.s(Bn,"Ascending",10);var Dn;Bn.Descending=Dn=z.s(Bn,"Descending",11);var Gn;Bn.Optimized=Gn=z.s(Bn,"Optimized",12);var Qn;Bn.Pythagorean=Qn=z.s(Bn,"Pythagorean",13);var Pn;Bn.Circular=Pn=z.s(Bn,"Circular",14);function Bq(){this.sp=-Infinity;this.hq=this.Fn=null} +Bq.prototype.compare=function(a,b){if(0this.sp||Math.abs(a)a&&0g?(e=n.x+n.width/2,k=n.y+n.height/2,l[0]=new N(n.x+n.width+d.width,n.y),l[1]=new N(n.x,n.y+n.height+d.height),g=2):(p=Uq(l,g, +e,k,n.width,n.height,d),q=l[p],r=new N(q.x+n.width+d.width,q.y),s=new N(q.x,q.y+n.height+d.height),p+1this.network.vertexes.count)return!1;for(var a=0,b=0,c=this.network.vertexes.first().vb,d=this.network.vertexes.i;d.next();){if(d.value.vb.Ig(c)&&(a++,2a.network.vertexes.count)return!1;null===a.Dg?a.Dg=new J(mr):a.Dg.clear();a.Dg.$c(a.network.vertexes);var c=a.Dg;c.sort(function(a,b){return null===a||null===b||a===b?0:b.ig-a.ig});for(var d=c.count-1;0<=d&&1>=c.ea(d).ig;)d--;return 1=h))){for(var m=0,n=0,p=l.count-h;ps&&(s=1);m=ne((m+s+n*n*4/(h*h))/s);h=(m-1)*p/2;m=(m-1)*q/2;g.vb=new w(l-r.x-h,k-r.y-m,p+2*h,q+2*m);g.focus=new N(r.x+h,r.y+m)}a.network=d;return c} +function lr(a,b,c){u&&(z.l(b,Sq,Rq,"popNetwork:oldnet"),z.p(c,Rq,"popNetwork:level"));for(c=a.network.vertexes.i;c.next();){var d=c.value;d.network=b;if(null!==d.Dh){var e=d.Dh.ea(d.LA);d.ig=e.Wx;var g=e.jB,h=e.kB;d.vb=new w(d.ra-g,d.za-h,e.Xx,e.Vx);d.focus=new N(g,h);d.LA--}}for(c=a.network.edges.i;c.next();)c.value.network=b;a.network=b} +function nr(a,b,c){u&&(z.l(b,mr,Rq,"surroundNode:oldnet"),z.p(c,Rq,"surroundNode:level"));var d=b.Ym;if(null!==d&&0!==d.count){c=b.ra;var e=b.za,g=b.width,h=b.height;null!==b.Dh&&0=p.ig?l++:(k=!0,m++,h+=Math.atan2(b.za-p.za,b.ra-p.ra))}if(0!==l)for(0>1)+m)*(0===k%2?1:-1);l.ra=c+n*Math.cos(p);l.za=e+n*Math.sin(p);k++}}} +function Uq(a,b,c,d,e,g,h){var k=9E19,l=-1,m=0;a:for(;mn.y&&a[q].x-n.xn.x&&a[q].y-n.yl+h?(d=d+g-k,e=e-l-h,ne(d*d+e*e)):e+ck+m?e>l+h?(d=d-k-m,e=e-l-h,ne(d*d+e*e)):e+cl+h?e-(l+h):e+c=b.length)return!1;var c=b[0];c.forceX=0;c.forceY=0;for(var d=c.ra,e=d,g=c.za,h=g,c=1;ch-g)?b.sort(function(a,b){return null===a||null===b||a===b?0:a.ra-b.ra}):b.sort(function(a,b){return null===a||null===b||a===b?0:a.za-b.za});for(var h=a.Qh,m=0,n=0,p=0,c=0;ch||p-d>h){if(g)break}else if(l-r>h||r-l>h){if(!g)break}else{var s=pr(k,e);1>s?(n=a.Bx,null===n&&(a.Bx=n=new Ka(0)),m=n.random(),s=n.random(),d>p?(n=Math.abs(e.P.right-k.P.x),n=(1+n)*m):dr?(p=Math.abs(e.P.bottom-k.P.y),p=(1+p)*s):ds?(n=a.Bx,null===n&&(a.Bx=n=new Ka(0)),m=n.random(),s= +n.random(),n=(d>p?1:-1)*(1+(e.width>k.width)?e.width:k.width)*m,p=(l>r?1:-1)*(1+(e.height>k.height)?e.height:k.height)*s):(m=g.stiffness*(s-g.length),n=(p-d)/s*m,p=(r-l)/s*m),k.forceX+=n,k.forceY+=p,e.forceX-=n,e.forceY-=p;c=0;d=Math.max(a.Qh/20,50);for(e=0;ed&&(g=d),h<-d?h=-d:h>d&&(h=d),k.ra+=g,k.za+=h,c=Math.max(c,g*g+h*h));return c>a.oE*a.oE}Rq.prototype.moveFixedVertex=function(){}; +Rq.prototype.commitLayout=function(){this.QA();this.commitNodes();this.Rt&&this.commitLinks()};Rq.prototype.QA=function(){if(this.bq)for(var a=this.network.edges.i;a.next();){var b=a.value.link;null!==b&&(b.Db=Lc,b.Eb=Lc)}};Rq.prototype.commitNodes=function(){var a=0,b=0;if(this.SG){var c=z.lg();this.rh(this.network,c);b=this.je;a=b.x-c.x;b=b.y-c.y;z.dc(c)}for(var c=z.lg(),d=this.network.vertexes.i;d.next();){var e=d.value;if(0!==a||0!==b)c.assign(e.vb),c.x+=a,c.y+=b,e.vb=c;e.commit()}z.dc(c)}; Rq.prototype.commitLinks=function(){for(var a=this.network.edges.i;a.next();)a.value.commit()};Rq.prototype.springStiffness=function(a){a=a.stiffness;return isNaN(a)?this.$n:a};Rq.prototype.springLength=function(a){a=a.length;return isNaN(a)?this.Zn:a};Rq.prototype.electricalCharge=function(a){a=a.charge;return isNaN(a)?this.Wn:a};Rq.prototype.electricalFieldX=function(){return 0};Rq.prototype.electricalFieldY=function(){return 0}; -Rq.prototype.gravitationalMass=function(a){a=a.mass;return isNaN(a)?this.Yn:a};Rq.prototype.gravitationalFieldX=function(){return 0};Rq.prototype.gravitationalFieldY=function(){return 0};Rq.prototype.isFixed=function(a){return a.isFixed};y.w(Rq,{eK:"currentIteration"},function(){return this.wr});y.defineProperty(Rq,{GD:"arrangementSpacing"},function(){return this.ng},function(a){y.l(a,Ea,Rq,"arrangementSpacing");this.ng.N(a)||(this.ng.assign(a),this.I())}); -y.defineProperty(Rq,{QG:"arrangesToOrigin"},function(){return this.rq},function(a){this.rq!==a&&(y.g(a,"boolean",Rq,"arrangesToOrigin"),this.rq=a,this.I())});y.defineProperty(Rq,{bq:"setsPortSpots"},function(){return this.ai},function(a){this.ai!==a&&(y.g(a,"boolean",Rq,"setsPortSpots"),this.ai=a,this.I())});y.defineProperty(Rq,{comments:"comments"},function(){return this.Kh},function(a){this.Kh!==a&&(y.g(a,"boolean",Rq,"comments"),this.Kh=a,this.I())}); -y.defineProperty(Rq,{lA:"maxIterations"},function(){return this.Eo},function(a){this.Eo!==a&&(y.g(a,"number",Rq,"maxIterations"),0<=a&&(this.Eo=a,this.I()))});y.defineProperty(Rq,{lE:"epsilonDistance"},function(){return this.Yq},function(a){this.Yq!==a&&(y.g(a,"number",Rq,"epsilonDistance"),0b.toVertex.index&&(this.network.Ex(b),b.rev=!0);break;case sr:for(b=this.network.vertexes.i;b.next();)a=b.value,a.lp=-1,a.finish=-1;for(a=this.network.edges.i;a.next();)a.value.forest=!1;this.Ur=0;for(b.reset();b.next();)c=b.value,0===c.tc.count&&Cr(this,c);for(b.reset();b.next();)c=b.value,-1===c.lp&&Cr(this,c);for(a.reset();a.next();)b=a.value,b.forest||(c=b.fromVertex, -d=c.finish,e=b.toVertex,g=e.finish,e.lps&&0s&&0b[this.Sf]&&(this.Hv=b[c]-1,this.Sf=c),b[c]b.toVertex.index&&(this.network.Fx(b),b.rev=!0);break;case sr:for(b=this.network.vertexes.i;b.next();)a=b.value,a.lp=-1,a.finish=-1;for(a=this.network.edges.i;a.next();)a.value.forest=!1;this.Vr=0;for(b.reset();b.next();)c=b.value,0===c.tc.count&&Cr(this,c);for(b.reset();b.next();)c=b.value,-1===c.lp&&Cr(this,c);for(a.reset();a.next();)b=a.value,b.forest||(c=b.fromVertex, +d=c.finish,e=b.toVertex,g=e.finish,e.lps&&0s&&0b[this.Rf]&&(this.Iv=b[c]-1,this.Rf=c),b[c]h)for(var p=h+1;pn;p--)l=d[p],l.near===m&&l.Vm===m.Vm||k++;var m=0,q,r=q=p=l=0,s,t=0,v=0;s=0;var x;if(0<=c)for(n=d[h].Ye,m=0;mt||l===t&&q>s)&&k++,vl||t===l&&s>q)&&k++);if(0>=c)for(n=d[h].Se,m=0;mt||l===t&&p>v)&&k++, -sl||t===l&&v>p)&&k++);g[h*e+h]=k;for(n=h+1;n=c)for(k=d[h].Se,x=d[n].Se,m=0;mh)for(var p=h+1;pn;p--)l=d[p],l.near===m&&l.Vm===m.Vm||k++;var m=0,q,r=q=p=l=0,s,t=0,v=0;s=0;var x;if(0<=c)for(n=d[h].Xe,m=0;mt||l===t&&q>s)&&k++,vl||t===l&&s>q)&&k++);if(0>=c)for(n=d[h].Re,m=0;mt||l===t&&p>v)&&k++, +sl||t===l&&v>p)&&k++);g[h*e+h]=k;for(n=h+1;n=c)for(k=d[h].Re,x=d[n].Re,m=0;m=c&&(l=k.Ye);var m=null;0<=c&&(m=k.Se);var n=0,p=0,q=k.near;null!==q&&q.layer===k.layer&&(n+=q.column-1,p++);if(null!==l)for(q=0;q=c&&(l=k.Xe);var m=null;0<=c&&(m=k.Re);var n=0,p=0,q=k.near;null!==q&&q.layer===k.layer&&(n+=q.column-1,p++);if(null!==l)for(q=0;q=c&&(l=k.Ye);var m=null;0<=c&&(m=k.Se);var n=0,p=[],q=k.near;null!==q&&q.layer===k.layer&&(p[n]=q.column-1,n++);if(null!==l)for(q=0;q=c&&(l=k.Xe);var m=null;0<=c&&(m=k.Re);var n=0,p=[],q=k.near;null!==q&&q.layer===k.layer&&(p[n]=q.column-1,n++);if(null!==l)for(q=0;q>1,g[h]=n&1?p[m]:p[m-1]+p[m]>>1)}Gr(a,b,d);return g}function Or(a,b,c,d,e,g){if(b.component===d){b.component=c;var h=0,k=0;if(e)for(var l=b.hc;l.next();){var k=l.value,m=k.toVertex,h=b.layer-m.layer,k=a.linkMinLength(k);h===k&&Or(a,m,c,d,e,g)}if(g)for(l=b.tc;l.next();)k=l.value,m=k.fromVertex,h=m.layer-b.layer,k=a.linkMinLength(k),h===k&&Or(a,m,c,d,e,g)}} function Pr(a,b,c,d,e,g){if(b.component===d){b.component=c;if(e)for(var h=b.hc;h.next();)Pr(a,h.value.toVertex,c,d,e,g);if(g)for(b=b.tc;b.next();)Pr(a,b.value.fromVertex,c,d,e,g)}}function zr(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid)return b}return null}function Ar(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.hc;d.next();)if(d.value.toVertex.valid){c=!1;break}if(c)return b}}return null} -function Br(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.tc;d.next();)if(d.value.fromVertex.valid){c=!1;break}if(c)return b}}return null}function Cr(a,b){b.lp=a.Ur;a.Ur++;for(var c=b.hc;c.next();){var d=c.value,e=d.toVertex;-1===e.lp&&(d.forest=!0,Cr(a,e))}b.finish=a.Ur;a.Ur++} +function Br(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.tc;d.next();)if(d.value.fromVertex.valid){c=!1;break}if(c)return b}}return null}function Cr(a,b){b.lp=a.Vr;a.Vr++;for(var c=b.hc;c.next();){var d=c.value,e=d.toVertex;-1===e.lp&&(d.forest=!0,Cr(a,e))}b.finish=a.Vr;a.Vr++} nn.prototype.assignLayers=function(){switch(this.Ao){case Qr:Rr(this);break;case Sr:for(var a=0,b=this.network.vertexes.i;b.next();)a=Tr(this,b.value),this.yb=Math.max(a,this.yb);for(b.reset();b.next();)a=b.value,a.layer=this.yb-a.layer;break;default:case tr:Rr(this);for(b=this.network.vertexes.i;b.next();)b.value.valid=!1;for(b.reset();b.next();)a=b.value,0===a.tc.count&&Ur(this,a);a=Infinity;for(b.reset();b.next();)a=Math.min(a,b.value.layer);this.yb=-1;for(b.reset();b.next();){var c=b.value;c.layer-= a;this.yb=Math.max(this.yb,c.layer)}}};function Rr(a){for(var b=a.network.vertexes.i;b.next();){var c=Vr(a,b.value);a.yb=Math.max(c,a.yb)}}function Vr(a,b){var c=0;if(-1===b.layer){for(var d=b.hc;d.next();)var e=d.value,g=e.toVertex,e=a.linkMinLength(e),c=Math.max(c,Vr(a,g)+e);b.layer=c}else c=b.layer;return c}function Tr(a,b){var c=0;if(-1===b.layer){for(var d=b.tc;d.next();)var e=d.value,g=e.fromVertex,e=a.linkMinLength(e),c=Math.max(c,Tr(a,g)+e);b.layer=c}else c=b.layer;return c} -function Ur(a,b){if(!b.valid){b.valid=!0;for(var c=b.hc;c.next();)Ur(a,c.value.toVertex);for(c=a.network.vertexes.i;c.next();)c.value.component=-1;for(var d=b.Ye.o,e=d.length,g=0;gk&&Or(a,h.fromVertex,0,-1,!0,!1)}for(Or(a,b,1,-1,!0,!0);0!==b.component;){for(var k=0,d=Infinity,l=0,m=null,n=a.network.vertexes.i;n.next();){var p=n.value;if(1===p.component){for(var q=0,r=!1,s=p.Ye.o,e=s.length,g=0;gd)&&!p&&(k=m,d=n)}if(0>g){for(c.reset();c.next();)g=c.value,1===g.component&&(g.layer-=e);b.component=0}else k.component=0}}} +function Ur(a,b){if(!b.valid){b.valid=!0;for(var c=b.hc;c.next();)Ur(a,c.value.toVertex);for(c=a.network.vertexes.i;c.next();)c.value.component=-1;for(var d=b.Xe.o,e=d.length,g=0;gk&&Or(a,h.fromVertex,0,-1,!0,!1)}for(Or(a,b,1,-1,!0,!0);0!==b.component;){for(var k=0,d=Infinity,l=0,m=null,n=a.network.vertexes.i;n.next();){var p=n.value;if(1===p.component){for(var q=0,r=!1,s=p.Xe.o,e=s.length,g=0;gd)&&!p&&(k=m,d=n)}if(0>g){for(c.reset();c.next();)g=c.value,1===g.component&&(g.layer-=e);b.component=0}else k.component=0}}} function Er(a,b,c){return 90===a.fa?c&&!b.rev||!c&&b.rev?270:90:180===a.fa?c&&!b.rev||!c&&b.rev?0:180:270===a.fa?c&&!b.rev||!c&&b.rev?90:270:c&&!b.rev||!c&&b.rev?180:0} -nn.prototype.initializeIndices=function(){switch(this.qo){default:case Wr:for(var a=this.network.vertexes.i;a.next();){var b=a.value,c=b.layer;b.index=this.ie[c];this.ie[c]++}break;case ur:a=this.network.vertexes.i;for(b=this.yb;0<=b;b--)for(a.reset();a.next();)c=a.value,c.layer===b&&-1===c.index&&Xr(this,c);break;case Yr:for(a=this.network.vertexes.i,b=0;b<=this.yb;b++)for(a.reset();a.next();)c=a.value,c.layer===b&&-1===c.index&&Zr(this,c)}}; -function Xr(a,b){var c=b.layer;b.index=a.ie[c];a.ie[c]++;for(var c=b.Se.kc(),d=!0;d;)for(var d=!1,e=0;eh.portFromColOffset&&(d=!0,c[e]=h,c[e+1]=g)}for(e=0;eh.portToColOffset&&(d=!0,c[e]=h,c[e+1]=g)}for(e=0;eh.portFromColOffset&&(d=!0,c[e]=h,c[e+1]=g)}for(e=0;eh.portToColOffset&&(d=!0,c[e]=h,c[e+1]=g)}for(e=0;e=h;d--)g=as(this,d,-1)||g;e=this.countCrossings();e>=a?Jr(this,b):(a=e,b=Ir(this));for(g=!0;g;)for(g=!1,d=c;d>=h;d--)g=as(this,d,1)||g;e=this.countCrossings();e>=a?Jr(this,b):(a=e,b=Ir(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=as(this,d,1)||g;e>=a?Jr(this,b):(a=e,b=Ir(this));for(g=!0;g;)for(g=!1, d=h;d<=c;d++)g=as(this,d,-1)||g;e>=a?Jr(this,b):(a=e,b=Ir(this));for(g=!0;g;)for(g=!1,d=c;d>=h;d--)g=as(this,d,0)||g;e>=a?Jr(this,b):(a=e,b=Ir(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=as(this,d,0)||g;e>=a?Jr(this,b):(a=e,b=Ir(this))}break;default:case vr:for(c=this.yb,h=0,k=a+1;(d=this.countCrossings())=h;d--)g=as(this,d,-1)||g;e=this.countCrossings();e>=a?Jr(this,b):(a=e,b=Ir(this));for(g=!0;g;)for(g=!1,d=c;d>=h;d--)g=as(this,d,1)||g;e=this.countCrossings(); e>=a?Jr(this,b):(a=e,b=Ir(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=as(this,d,1)||g;e>=a?Jr(this,b):(a=e,b=Ir(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=as(this,d,-1)||g;e>=a?Jr(this,b):(a=e,b=Ir(this));for(g=!0;g;)for(g=!1,d=c;d>=h;d--)g=as(this,d,0)||g;e>=a?Jr(this,b):(a=e,b=Ir(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=as(this,d,0)||g;e>=a?Jr(this,b):(a=e,b=Ir(this))}}Jr(this,b)}; -function $r(a,b,c){u&&(y.p(b,nn,"medianBarycenterCrossingReduction:unfixedLayer"),y.p(c,nn,"medianBarycenterCrossingReduction:direction"));var d=0,e=Fr(a,b),g=a.ie[b],h=Nr(a,b,c);c=Mr(a,b,c);for(d=0;dg+1&&(q+=4*(z-g),r+=4*(z-(g+1)))}B=d[g].hc.i;for(B.reset();B.next();)if(A=B.value,A.valid&&A.toVertex.layer===b){A=A.toVertex;for(z=0;d[z]!==A;)z++;z===g+1&&(r+=1)}B=d[g+1].tc.i;for(B.reset();B.next();)if(A=B.value,A.valid&&A.fromVertex.layer===b){A=A.fromVertex;for(z=0;d[z]!==A;)z++;zg+1&&(q+=4*(z-(g+1)),r+=4*(z-g))}B=d[g+1].hc.i;for(B.reset();B.next();)if(A=B.value, -A.valid&&A.toVertex.layer===b){A=A.toVertex;for(z=0;d[z]!==A;)z++;z===g&&(q+=1)}var z=A=0,B=h[d[g].index],L=k[d[g].index],H=h[d[g+1].index],U=k[d[g+1].index];-1!==B&&(A+=Math.abs(B-s),z+=Math.abs(B-x));-1!==L&&(A+=Math.abs(L-s),z+=Math.abs(L-x));-1!==H&&(A+=Math.abs(H-t),z+=Math.abs(H-v));-1!==U&&(A+=Math.abs(U-t),z+=Math.abs(U-v));if(r>1)+8*d;this.Kb*=8}if(0!==(this.Ti&es))for(b=!0;b;){b=!1;for(a=this.Sf+1;a<=this.yb;a++)b=fs(this,a,1)||b; -for(a=this.Sf-1;0<=a;a--)b=fs(this,a,-1)||b;b=fs(this,this.Sf,0)||b}if(0!==(this.Ti&gs)){for(a=this.Sf+1;a<=this.yb;a++)hs(this,a,1);for(a=this.Sf-1;0<=a;a--)hs(this,a,-1);hs(this,this.Sf,0)}c&&(is(this,-1),is(this,1));if(0!==(this.Ti&es))for(b=!0;b;){b=!1;b=fs(this,this.Sf,0)||b;for(a=this.Sf+1;a<=this.yb;a++)b=fs(this,a,0)||b;for(a=this.Sf-1;0<=a;a--)b=fs(this,a,0)||b}}; -function fs(a,b,c){u&&(y.p(b,nn,"bendStraighten:unfixedLayer"),y.p(c,nn,"bendStraighten:direction"));for(var d=!1;js(a,b,c);)d=!0;return d} -function js(a,b,c){u&&(y.p(b,nn,"shiftbendStraighten:unfixedLayer"),y.p(c,nn,"shiftbendStraighten:direction"));var d=0,e=Fr(a,b),g=a.ie[b],h=Mr(a,b,-1);if(0c)for(d=0;dd-1||n-e[d-1].column-1>p+a.nodeMinColumnSpace(e[d-1],!1)?n-1:n,p=0,p=d+1>=g||e[d+1].column-n-1>q+a.nodeMinColumnSpace(e[d+1],!0)?n+1:n,s=q= -0,t=0,v=0,x=0,z=0;if(0>=c)for(var A=e[d].tc.i;A.next();){var B=A.value;B.valid&&B.fromVertex.layer!==b&&(v=Hr(B),x=B.portFromColOffset,z=B.portToColOffset,B=B.fromVertex.column,q+=(Math.abs(n+z-(B+x))+1)*v,s+=(Math.abs(r+z-(B+x))+1)*v,t+=(Math.abs(p+z-(B+x))+1)*v)}if(0<=c)for(A=e[d].hc.i;A.next();)B=A.value,B.valid&&B.toVertex.layer!==b&&(v=Hr(B),x=B.portFromColOffset,z=B.portToColOffset,B=B.toVertex.column,q+=(Math.abs(n+x-(B+z))+1)*v,s+=(Math.abs(r+x-(B+z))+1)*v,t+=(Math.abs(p+x-(B+z))+1)*v);z= -x=v=0;A=h[e[d].index];B=k[e[d].index];-1!==A&&(v+=Math.abs(A-n),x+=Math.abs(A-r),z+=Math.abs(A-p));-1!==B&&(v+=Math.abs(B-n),x+=Math.abs(B-r),z+=Math.abs(B-p));if(sg+1&&(q+=4*(y-g),r+=4*(y-(g+1)))}B=d[g].hc.i;for(B.reset();B.next();)if(A=B.value,A.valid&&A.toVertex.layer===b){A=A.toVertex;for(y=0;d[y]!==A;)y++;y===g+1&&(r+=1)}B=d[g+1].tc.i;for(B.reset();B.next();)if(A=B.value,A.valid&&A.fromVertex.layer===b){A=A.fromVertex;for(y=0;d[y]!==A;)y++;yg+1&&(q+=4*(y-(g+1)),r+=4*(y-g))}B=d[g+1].hc.i;for(B.reset();B.next();)if(A=B.value, +A.valid&&A.toVertex.layer===b){A=A.toVertex;for(y=0;d[y]!==A;)y++;y===g&&(q+=1)}var y=A=0,B=h[d[g].index],L=k[d[g].index],H=h[d[g+1].index],U=k[d[g+1].index];-1!==B&&(A+=Math.abs(B-s),y+=Math.abs(B-x));-1!==L&&(A+=Math.abs(L-s),y+=Math.abs(L-x));-1!==H&&(A+=Math.abs(H-t),y+=Math.abs(H-v));-1!==U&&(A+=Math.abs(U-t),y+=Math.abs(U-v));if(r>1)+8*d;this.Kb*=8}if(0!==(this.Ri&es))for(b=!0;b;){b=!1;for(a=this.Rf+1;a<=this.yb;a++)b=fs(this,a,1)||b; +for(a=this.Rf-1;0<=a;a--)b=fs(this,a,-1)||b;b=fs(this,this.Rf,0)||b}if(0!==(this.Ri&gs)){for(a=this.Rf+1;a<=this.yb;a++)hs(this,a,1);for(a=this.Rf-1;0<=a;a--)hs(this,a,-1);hs(this,this.Rf,0)}c&&(is(this,-1),is(this,1));if(0!==(this.Ri&es))for(b=!0;b;){b=!1;b=fs(this,this.Rf,0)||b;for(a=this.Rf+1;a<=this.yb;a++)b=fs(this,a,0)||b;for(a=this.Rf-1;0<=a;a--)b=fs(this,a,0)||b}}; +function fs(a,b,c){u&&(z.p(b,nn,"bendStraighten:unfixedLayer"),z.p(c,nn,"bendStraighten:direction"));for(var d=!1;js(a,b,c);)d=!0;return d} +function js(a,b,c){u&&(z.p(b,nn,"shiftbendStraighten:unfixedLayer"),z.p(c,nn,"shiftbendStraighten:direction"));var d=0,e=Fr(a,b),g=a.ge[b],h=Mr(a,b,-1);if(0c)for(d=0;dd-1||n-e[d-1].column-1>p+a.nodeMinColumnSpace(e[d-1],!1)?n-1:n,p=0,p=d+1>=g||e[d+1].column-n-1>q+a.nodeMinColumnSpace(e[d+1],!0)?n+1:n,s=q= +0,t=0,v=0,x=0,y=0;if(0>=c)for(var A=e[d].tc.i;A.next();){var B=A.value;B.valid&&B.fromVertex.layer!==b&&(v=Hr(B),x=B.portFromColOffset,y=B.portToColOffset,B=B.fromVertex.column,q+=(Math.abs(n+y-(B+x))+1)*v,s+=(Math.abs(r+y-(B+x))+1)*v,t+=(Math.abs(p+y-(B+x))+1)*v)}if(0<=c)for(A=e[d].hc.i;A.next();)B=A.value,B.valid&&B.toVertex.layer!==b&&(v=Hr(B),x=B.portFromColOffset,y=B.portToColOffset,B=B.toVertex.column,q+=(Math.abs(n+x-(B+y))+1)*v,s+=(Math.abs(r+x-(B+y))+1)*v,t+=(Math.abs(p+x-(B+y))+1)*v);y= +x=v=0;A=h[e[d].index];B=k[e[d].index];-1!==A&&(v+=Math.abs(A-n),x+=Math.abs(A-r),y+=Math.abs(A-p));-1!==B&&(v+=Math.abs(B-n),x+=Math.abs(B-r),y+=Math.abs(B-p));if(s=c[d]?n=q:p<=c[d]&&(n=p));n!==k&&(h=!0,e[d].column=n)}Gr(a,b,e);a.normalize()} -function ks(a,b){u&&(y.p(b,nn,"packAux:column"),y.p(1,nn,"packAux:direction"));for(var c=!0,d=a.network.vertexes.i;d.next();){var e=d.value,g=a.nodeMinColumnSpace(e,!0),h=a.nodeMinColumnSpace(e,!1);if(e.column-g<=b&&e.column+h>=b){c=!1;break}}e=!1;if(c)for(d.reset();d.next();)c=d.value,c.column>b&&(c.column-=1,e=!0);return e} -function ls(a,b){u&&(y.p(b,nn,"tightPackAux:column"),y.p(1,nn,"tightPackAux:direction"));for(var c=b,c=b+1,d=0,e=[],g=[],d=0;d<=a.yb;d++)e[d]=!1,g[d]=!1;for(var h=a.network.vertexes.i;h.next();){var d=h.value,k=d.column-a.nodeMinColumnSpace(d,!0),l=d.column+a.nodeMinColumnSpace(d,!1);k<=b&&l>=b&&(e[d.layer]=!0);k<=c&&l>=c&&(g[d.layer]=!0)}k=!0;c=!1;for(d=0;d<=a.yb;d++)k=k&&!(e[d]&&g[d]);if(k)for(h.reset();h.next();)e=h.value,e.column>b&&(e.column-=1,c=!0);return c} -function is(a,b){u&&y.p(b,nn,"componentPack:direction");for(var c=0;c<=a.Kb;c++)for(;ks(a,c););a.normalize();for(c=0;ce?Jr(a,d):hb)for(c=a.Kb;0<=c;c--)for(d=Ir(a),e=Lr(a),g=e+1;ee?Jr(a,d):hc)for(d.reset();d.next();)e=d.value,e.column+a.nodeMinColumnSpace(e,!1)>=b&&(e.component=a.xg);a.xg++;for(d.reset();d.next();)b=d.value,-1===b.component&&(Pr(a,b,a.xg,-1,!0,!0),a.xg++);var g=0;b=[];for(g=0;gc)for(k=a.Kb;0c)for(d.reset();d.next();)c=d.value,e[c.component]&&(c.column+=1)} -nn.prototype.commitLayout=function(){if(this.bq)for(var a=Dr(this,!0),b=Dr(this,!1),c=this.network.edges.i;c.next();){var d=c.value.link;null!==d&&(d.Db=a,d.Eb=b)}this.commitNodes();this.Dz();this.Qt&&this.commitLinks()};function Dr(a,b){return 270===a.fa?b?Wc:Zc:90===a.fa?b?Zc:Wc:180===a.fa?b?Xc:Yc:b?Yc:Xc} -nn.prototype.commitNodes=function(){this.vg=[];this.Rf=[];this.Qf=[];this.Rb=[];for(var a=0;a<=this.yb;a++)this.vg[a]=0,this.Rf[a]=0,this.Qf[a]=0,this.Rb[a]=0;for(a=this.network.vertexes.i;a.next();){var b=a.value,c=b.layer;this.vg[c]=Math.max(this.vg[c],this.nodeMinLayerSpace(b,!0));this.Rf[c]=Math.max(this.Rf[c],this.nodeMinLayerSpace(b,!1))}for(var b=0,d=this.rm,c=0;c<=this.yb;c++){var e=d;0>=this.vg[c]+this.Rf[c]&&(e=0);0=Na.P.bottom?(Aa=Na.P.y+Na.P.height,b.B(P++,oa,Aa+Va),b.B(P++,oa,Aa),b.B(P++, -oa,Aa-Xa)):(b.B(P++,oa,pa+Va),b.B(P++,oa,pa),b.B(P++,oa,pa-Xa)):270===this.fa?pa<=Na.P.y?(Aa=Na.P.y,b.B(P++,oa,Aa-Xa),b.B(P++,oa,Aa),b.B(P++,oa,Aa+Va)):(b.B(P++,oa,pa-Xa),b.B(P++,oa,pa),b.B(P++,oa,pa+Va)):0===this.fa&&(oa>=Na.P.right?(Aa=Na.P.x+Na.P.width,b.B(P++,Aa+Va,pa),b.B(P++,Aa,pa),b.B(P++,Aa-Xa,pa)):(b.B(P++,oa+Va,pa),b.B(P++,oa,pa),b.B(P++,oa-Xa,pa)));else{b.B(P++,rb,ib);var vd=0;if(180===this.fa||0===this.fa){if(180===this.fa?oa>=Na.P.right:oa<=Na.P.x)vd=(0===this.fa?-Xa:Va)/2;b.B(P++,rb+ -vd,pa)}else{if(270===this.fa?pa>=Na.P.bottom:pa<=Na.P.y)vd=(90===this.fa?-Xa:Va)/2;b.B(P++,oa,ib+vd)}b.B(P++,oa,pa)}else Xa=Math.max(10,this.vg[ua.layer]),Va=Math.max(10,this.Rf[ua.layer]),180===this.fa?(U&&b.B(P++,oa-Xa,pa),b.B(P++,oa,pa),U&&b.B(P++,oa+Va,pa)):90===this.fa?(U&&b.B(P++,oa,pa+Va),b.B(P++,oa,pa),U&&b.B(P++,oa,pa-Xa)):270===this.fa?(U&&b.B(P++,oa,pa-Xa),b.B(P++,oa,pa),U&&b.B(P++,oa,pa+Va)):(U&&b.B(P++,oa+Va,pa),b.B(P++,oa,pa),U&&b.B(P++,oa-Xa,pa));Na=ua}if(null===k||b.computeSpot(!1)!== -Vb||ea)if(rb=b.m(P-1).x,ib=b.m(P-1).y,oa=b.m(P).x,pa=b.m(P).y,ea){var Ne=this.Rf[sa.layer],ac=0;180===this.fa||0===this.fa?(ac=ib,ac>=sa.P.y&&ac<=sa.P.bottom&&(180===this.fa?oa>=sa.P.x:oa<=sa.P.right)&&(Aa=sa.ra+(180===this.fa?-Ne:Ne),ac=ac=sa.P.x&&ac<=sa.P.right&&(270===this.fa?pa>=sa.P.y:pa<=sa.P.bottom)&&(Aa=sa.za+(270===this.fa?-Ne:Ne),ac=ac=sa.P.x?(Aa=sa.P.x+sa.P.width,b.aa(P-2,Aa,ib),b.aa(P-1,Aa+Va,ib)):90===this.fa&&pa<=sa.P.bottom?(Aa=sa.P.y,b.aa(P-2,rb,Aa),b.aa(P-1,rb,Aa-Xa)):270===this.fa&&pa>=sa.P.y?(Aa=sa.P.y+sa.P.height,b.aa(P-2,rb,Aa),b.aa(P-1,rb,Aa+Va)):0===this.fa&&oa<=sa.P.right&&(Aa=sa.P.x,b.aa(P-2,Aa,ib),b.aa(P-1,Aa-Xa,ib));else{Xa=Math.max(10, -this.vg[sa.layer]);Va=Math.max(10,this.Rf[sa.layer]);vd=0;if(180===this.fa||0===this.fa){if(180===this.fa?oa<=sa.P.x:oa>=sa.P.right)vd=(0===this.fa?Va:-Xa)/2;b.B(P++,oa+vd,ib)}else{if(270===this.fa?pa<=sa.P.y:pa>=sa.P.bottom)vd=(90===this.fa?Va:-Xa)/2;b.B(P++,rb,pa+vd)}b.B(P++,oa,pa)}}else{for(;null!==sa&&sa!==Na;){Ha=ua=null;for(var Kg=sa.hc.i;Kg.next();){var wd=Kg.value;if(wd.link===c.link&&(ua=wd.toVertex,Ha=wd.fromVertex,null!==Ha.Dd&&(Ha=null),null===ua.Dd))break}var rb=0,ib=0,oa=0,pa=0,sb=0, -Xa=0,Va=0;if(ua!==Na)if(rb=b.m(P-1).x,ib=b.m(P-1).y,oa=ua.ra,pa=ua.za,ea)if(180===this.fa||0===this.fa){var ve=null!==Ha?Ha.za:ib;ve!==pa&&(sb=this.Rb[ua.layer],2===P&&(sb=0===this.fa?Math.max(sb,rb):Math.min(sb,rb)),b.B(P++,sb,ib),b.B(P++,sb,pa))}else{var xd=null!==Ha?Ha.ra:rb;xd!==oa&&(sb=this.Rb[ua.layer],2===P&&(sb=90===this.fa?Math.max(sb,ib):Math.min(sb,ib)),b.B(P++,rb,sb),b.B(P++,oa,sb))}else Xa=Math.max(10,this.vg[ua.layer]),Va=Math.max(10,this.Rf[ua.layer]),180===this.fa?(b.B(P++,oa+Va,pa), -U&&b.B(P++,oa,pa),b.B(P++,oa-Xa,pa)):90===this.fa?(b.B(P++,oa,pa-Xa),U&&b.B(P++,oa,pa),b.B(P++,oa,pa+Va)):270===this.fa?(b.B(P++,oa,pa+Va),U&&b.B(P++,oa,pa),b.B(P++,oa,pa-Xa)):(b.B(P++,oa-Xa,pa),U&&b.B(P++,oa,pa),b.B(P++,oa+Va,pa));sa=ua}ea&&(rb=b.m(P-1).x,ib=b.m(P-1).y,oa=b.m(P).x,pa=b.m(P).y,180===this.fa||0===this.fa?ib!==pa&&(sb=0===this.fa?Math.min(Math.max((oa+rb)/2,this.Rb[Na.layer]),oa):Math.max(Math.min((oa+rb)/2,this.Rb[Na.layer]),oa),b.B(P++,sb,ib),b.B(P++,sb,pa)):rb!==oa&&(sb=90===this.fa? -Math.min(Math.max((pa+ib)/2,this.Rb[Na.layer]),pa):Math.max(Math.min((pa+ib)/2,this.Rb[Na.layer]),pa),b.B(P++,rb,sb),b.B(P++,oa,sb)))}if(null!==d&&U){if(null!==h){if(b.computeSpot(!0)===Vb){var de=b.m(0),Od=b.m(2);de.N(Od)||b.aa(1,(de.x+Od.x)/2,(de.y+Od.y)/2)}H=b.getLinkPoint(e,h,Vb,!0,!1,g,k);H.F()||H.set(e.W.wl);b.aa(0,H.x,H.y)}null!==k&&(b.computeSpot(!1)===Vb&&(de=b.m(b.sa-1),Od=b.m(b.sa-3),de.N(Od)||b.aa(b.sa-2,(de.x+Od.x)/2,(de.y+Od.y)/2)),H=b.getLinkPoint(g,k,Vb,!1,!1,e,h),H.F()||H.set(g.W.wl), -b.aa(b.sa-1,H.x,H.y))}b.dj();c.commit()}}}for(var ee=new J(G),Lg=this.network.edges.i;Lg.next();){var cd=Lg.value.link;null!==cd&&cd.rc&&!ee.contains(cd)&&ee.add(cd)}if(0Rb.y&&(jc=Ng.y>Rb.y?0:dd.xWb.x&&(xe=oh.x>Wb.x?0:Ob.yb.layer?1:a.Qeb.Qe?1:a.meb.me?1:0:0};nn.prototype.xF=function(a,b){return a instanceof ns&&b instanceof ns&&a!==b?a.firstb.first||a.rib.ri||a.Qeb.Qe?1:a.meb.me?1:0:0}; -nn.prototype.Gx=function(a,b){return a instanceof ns&&b instanceof ns&&a!==b?a.feb.fe||a.rib.ri||a.Qeb.Qe?1:a.meb.me?1:0:0};function os(a,b){u&&(y.p(a,nn,"isApprox:a"),y.p(b,nn,"isApprox:b"));var c=a-b;return-1c}function ps(a,b,c,d){u&&(y.p(a,nn,"isUnoccupied2:px"),y.p(b,nn,"isUnoccupied2:py"),y.p(c,nn,"isUnoccupied2:qx"),y.p(d,nn,"isUnoccupied2:qy"));return!0} -function Fr(a,b){var c,d=a.ie[b];if(d>=a.ih.length){c=[];for(var e=0;ea&&(this.Ti=a,this.I()))});y.defineProperty(nn,{bq:"setsPortSpots"},function(){return this.ai},function(a){this.ai!==a&&(y.g(a,"boolean",nn,"setsPortSpots"),this.ai=a,this.I())});y.defineProperty(nn,{TE:"linkSpacing"},function(){return this.Br},function(a){this.Br!==a&&(y.g(a,"number",nn,"linkSpacing"),0<=a&&(this.Br=a,this.I()))});y.w(nn,{xI:"maxLayer"},function(){return this.yb}); -y.w(nn,{PK:"maxIndex"},function(){return this.Hv});y.w(nn,{OK:"maxColumn"},function(){return this.Kb});y.w(nn,{UK:"minIndexLayer"},function(){return this.Lr});y.w(nn,{QK:"maxIndexLayer"},function(){return this.Sf});var sr;nn.CycleDepthFirst=sr=y.s(nn,"CycleDepthFirst",0);var yr;nn.CycleGreedy=yr=y.s(nn,"CycleGreedy",1);var tr;nn.LayerOptimalLinkLength=tr=y.s(nn,"LayerOptimalLinkLength",0);var Qr;nn.LayerLongestPathSink=Qr=y.s(nn,"LayerLongestPathSink",1);var Sr; -nn.LayerLongestPathSource=Sr=y.s(nn,"LayerLongestPathSource",2);var ur;nn.InitDepthFirstOut=ur=y.s(nn,"InitDepthFirstOut",0);var Yr;nn.InitDepthFirstIn=Yr=y.s(nn,"InitDepthFirstIn",1);var Wr;nn.InitNaive=Wr=y.s(nn,"InitNaive",2);var bs;nn.AggressiveNone=bs=y.s(nn,"AggressiveNone",0);var vr;nn.AggressiveLess=vr=y.s(nn,"AggressiveLess",1);var cs;nn.AggressiveMore=cs=y.s(nn,"AggressiveMore",2);nn.PackNone=0;var ds;nn.PackExpand=ds=1;var es;nn.PackStraighten=es=2;var gs;nn.PackMedian=gs=4;var wr; -nn.PackAll=wr=7;function ns(){this.index=this.me=this.Qe=this.fe=this.first=this.layer=0;this.link=null;this.ri=0}y.be(ns,{layer:!0,first:!0,fe:!0,Qe:!0,me:!0,index:!0,link:!0,ri:!0});function xr(){wa.call(this)}y.Pa(xr,wa);y.ia("LayeredDigraphNetwork",xr);xr.prototype.createVertex=function(){return new qs};xr.prototype.createEdge=function(){return new rs}; -function qs(){xa.call(this);this.index=this.column=this.layer=-1;this.component=NaN;this.near=null;this.valid=!1;this.finish=this.lp=NaN;this.Vm=0;this.tA=this.uA=null}y.Pa(qs,xa);y.ia("LayeredDigraphVertex",qs);function rs(){ya.call(this);this.forest=this.rev=this.valid=!1;this.portToPos=this.portFromPos=NaN;this.portToColOffset=this.portFromColOffset=0}y.Pa(rs,ya);y.ia("LayeredDigraphEdge",rs); -function Y(){0b.level)return!1;a.removeChild(c.parent,c)}return!0} -Y.prototype.removeChild=function(a,b){if(null!==a&&null!==b){u&&y.l(a,xs,Y,"removeChild:p");u&&y.l(b,xs,Y,"removeChild:c");for(var c=a.children,d=0,e=0;e=b){c=!1;break}}e=!1;if(c)for(d.reset();d.next();)c=d.value,c.column>b&&(c.column-=1,e=!0);return e} +function ls(a,b){u&&(z.p(b,nn,"tightPackAux:column"),z.p(1,nn,"tightPackAux:direction"));for(var c=b,c=b+1,d=0,e=[],g=[],d=0;d<=a.yb;d++)e[d]=!1,g[d]=!1;for(var h=a.network.vertexes.i;h.next();){var d=h.value,k=d.column-a.nodeMinColumnSpace(d,!0),l=d.column+a.nodeMinColumnSpace(d,!1);k<=b&&l>=b&&(e[d.layer]=!0);k<=c&&l>=c&&(g[d.layer]=!0)}k=!0;c=!1;for(d=0;d<=a.yb;d++)k=k&&!(e[d]&&g[d]);if(k)for(h.reset();h.next();)e=h.value,e.column>b&&(e.column-=1,c=!0);return c} +function is(a,b){u&&z.p(b,nn,"componentPack:direction");for(var c=0;c<=a.Kb;c++)for(;ks(a,c););a.normalize();for(c=0;ce?Jr(a,d):hb)for(c=a.Kb;0<=c;c--)for(d=Ir(a),e=Lr(a),g=e+1;ee?Jr(a,d):hc)for(d.reset();d.next();)e=d.value,e.column+a.nodeMinColumnSpace(e,!1)>=b&&(e.component=a.wg);a.wg++;for(d.reset();d.next();)b=d.value,-1===b.component&&(Pr(a,b,a.wg,-1,!0,!0),a.wg++);var g=0;b=[];for(g=0;gc)for(k=a.Kb;0c)for(d.reset();d.next();)c=d.value,e[c.component]&&(c.column+=1)} +nn.prototype.commitLayout=function(){if(this.bq)for(var a=Dr(this,!0),b=Dr(this,!1),c=this.network.edges.i;c.next();){var d=c.value.link;null!==d&&(d.Db=a,d.Eb=b)}this.commitNodes();this.Fz();this.Rt&&this.commitLinks()};function Dr(a,b){return 270===a.fa?b?Xc:$c:90===a.fa?b?$c:Xc:180===a.fa?b?Yc:Zc:b?Zc:Yc} +nn.prototype.commitNodes=function(){this.ug=[];this.Qf=[];this.Pf=[];this.Rb=[];for(var a=0;a<=this.yb;a++)this.ug[a]=0,this.Qf[a]=0,this.Pf[a]=0,this.Rb[a]=0;for(a=this.network.vertexes.i;a.next();){var b=a.value,c=b.layer;this.ug[c]=Math.max(this.ug[c],this.nodeMinLayerSpace(b,!0));this.Qf[c]=Math.max(this.Qf[c],this.nodeMinLayerSpace(b,!1))}for(var b=0,d=this.qm,c=0;c<=this.yb;c++){var e=d;0>=this.ug[c]+this.Qf[c]&&(e=0);0=Na.P.bottom?(Aa=Na.P.y+Na.P.height,b.B(P++,oa,Aa+Va),b.B(P++,oa,Aa),b.B(P++, +oa,Aa-Ya)):(b.B(P++,oa,pa+Va),b.B(P++,oa,pa),b.B(P++,oa,pa-Ya)):270===this.fa?pa<=Na.P.y?(Aa=Na.P.y,b.B(P++,oa,Aa-Ya),b.B(P++,oa,Aa),b.B(P++,oa,Aa+Va)):(b.B(P++,oa,pa-Ya),b.B(P++,oa,pa),b.B(P++,oa,pa+Va)):0===this.fa&&(oa>=Na.P.right?(Aa=Na.P.x+Na.P.width,b.B(P++,Aa+Va,pa),b.B(P++,Aa,pa),b.B(P++,Aa-Ya,pa)):(b.B(P++,oa+Va,pa),b.B(P++,oa,pa),b.B(P++,oa-Ya,pa)));else{b.B(P++,tb,ib);var yd=0;if(180===this.fa||0===this.fa){if(180===this.fa?oa>=Na.P.right:oa<=Na.P.x)yd=(0===this.fa?-Ya:Va)/2;b.B(P++,tb+ +yd,pa)}else{if(270===this.fa?pa>=Na.P.bottom:pa<=Na.P.y)yd=(90===this.fa?-Ya:Va)/2;b.B(P++,oa,ib+yd)}b.B(P++,oa,pa)}else Ya=Math.max(10,this.ug[ua.layer]),Va=Math.max(10,this.Qf[ua.layer]),180===this.fa?(U&&b.B(P++,oa-Ya,pa),b.B(P++,oa,pa),U&&b.B(P++,oa+Va,pa)):90===this.fa?(U&&b.B(P++,oa,pa+Va),b.B(P++,oa,pa),U&&b.B(P++,oa,pa-Ya)):270===this.fa?(U&&b.B(P++,oa,pa-Ya),b.B(P++,oa,pa),U&&b.B(P++,oa,pa+Va)):(U&&b.B(P++,oa+Va,pa),b.B(P++,oa,pa),U&&b.B(P++,oa-Ya,pa));Na=ua}if(null===k||b.computeSpot(!1)!== +Yb||ea)if(tb=b.m(P-1).x,ib=b.m(P-1).y,oa=b.m(P).x,pa=b.m(P).y,ea){var Ne=this.Qf[sa.layer],ac=0;180===this.fa||0===this.fa?(ac=ib,ac>=sa.P.y&&ac<=sa.P.bottom&&(180===this.fa?oa>=sa.P.x:oa<=sa.P.right)&&(Aa=sa.ra+(180===this.fa?-Ne:Ne),ac=ac=sa.P.x&&ac<=sa.P.right&&(270===this.fa?pa>=sa.P.y:pa<=sa.P.bottom)&&(Aa=sa.za+(270===this.fa?-Ne:Ne),ac=ac=sa.P.x?(Aa=sa.P.x+sa.P.width,b.aa(P-2,Aa,ib),b.aa(P-1,Aa+Va,ib)):90===this.fa&&pa<=sa.P.bottom?(Aa=sa.P.y,b.aa(P-2,tb,Aa),b.aa(P-1,tb,Aa-Ya)):270===this.fa&&pa>=sa.P.y?(Aa=sa.P.y+sa.P.height,b.aa(P-2,tb,Aa),b.aa(P-1,tb,Aa+Va)):0===this.fa&&oa<=sa.P.right&&(Aa=sa.P.x,b.aa(P-2,Aa,ib),b.aa(P-1,Aa-Ya,ib));else{Ya=Math.max(10, +this.ug[sa.layer]);Va=Math.max(10,this.Qf[sa.layer]);yd=0;if(180===this.fa||0===this.fa){if(180===this.fa?oa<=sa.P.x:oa>=sa.P.right)yd=(0===this.fa?Va:-Ya)/2;b.B(P++,oa+yd,ib)}else{if(270===this.fa?pa<=sa.P.y:pa>=sa.P.bottom)yd=(90===this.fa?Va:-Ya)/2;b.B(P++,tb,pa+yd)}b.B(P++,oa,pa)}}else{for(;null!==sa&&sa!==Na;){Ha=ua=null;for(var Kg=sa.hc.i;Kg.next();){var zd=Kg.value;if(zd.link===c.link&&(ua=zd.toVertex,Ha=zd.fromVertex,null!==Ha.Cd&&(Ha=null),null===ua.Cd))break}var tb=0,ib=0,oa=0,pa=0,ub=0, +Ya=0,Va=0;if(ua!==Na)if(tb=b.m(P-1).x,ib=b.m(P-1).y,oa=ua.ra,pa=ua.za,ea)if(180===this.fa||0===this.fa){var ve=null!==Ha?Ha.za:ib;ve!==pa&&(ub=this.Rb[ua.layer],2===P&&(ub=0===this.fa?Math.max(ub,tb):Math.min(ub,tb)),b.B(P++,ub,ib),b.B(P++,ub,pa))}else{var Ad=null!==Ha?Ha.ra:tb;Ad!==oa&&(ub=this.Rb[ua.layer],2===P&&(ub=90===this.fa?Math.max(ub,ib):Math.min(ub,ib)),b.B(P++,tb,ub),b.B(P++,oa,ub))}else Ya=Math.max(10,this.ug[ua.layer]),Va=Math.max(10,this.Qf[ua.layer]),180===this.fa?(b.B(P++,oa+Va,pa), +U&&b.B(P++,oa,pa),b.B(P++,oa-Ya,pa)):90===this.fa?(b.B(P++,oa,pa-Ya),U&&b.B(P++,oa,pa),b.B(P++,oa,pa+Va)):270===this.fa?(b.B(P++,oa,pa+Va),U&&b.B(P++,oa,pa),b.B(P++,oa,pa-Ya)):(b.B(P++,oa-Ya,pa),U&&b.B(P++,oa,pa),b.B(P++,oa+Va,pa));sa=ua}ea&&(tb=b.m(P-1).x,ib=b.m(P-1).y,oa=b.m(P).x,pa=b.m(P).y,180===this.fa||0===this.fa?ib!==pa&&(ub=0===this.fa?Math.min(Math.max((oa+tb)/2,this.Rb[Na.layer]),oa):Math.max(Math.min((oa+tb)/2,this.Rb[Na.layer]),oa),b.B(P++,ub,ib),b.B(P++,ub,pa)):tb!==oa&&(ub=90===this.fa? +Math.min(Math.max((pa+ib)/2,this.Rb[Na.layer]),pa):Math.max(Math.min((pa+ib)/2,this.Rb[Na.layer]),pa),b.B(P++,tb,ub),b.B(P++,oa,ub)))}if(null!==d&&U){if(null!==h){if(b.computeSpot(!0)===Yb){var ee=b.m(0),Pd=b.m(2);ee.N(Pd)||b.aa(1,(ee.x+Pd.x)/2,(ee.y+Pd.y)/2)}H=b.getLinkPoint(e,h,Yb,!0,!1,g,k);H.F()||H.set(e.W.wl);b.aa(0,H.x,H.y)}null!==k&&(b.computeSpot(!1)===Yb&&(ee=b.m(b.sa-1),Pd=b.m(b.sa-3),ee.N(Pd)||b.aa(b.sa-2,(ee.x+Pd.x)/2,(ee.y+Pd.y)/2)),H=b.getLinkPoint(g,k,Yb,!1,!1,e,h),H.F()||H.set(g.W.wl), +b.aa(b.sa-1,H.x,H.y))}b.bj();c.commit()}}}for(var fe=new J(G),Lg=this.network.edges.i;Lg.next();){var dd=Lg.value.link;null!==dd&&dd.rc&&!fe.contains(dd)&&fe.add(dd)}if(0Rb.y&&(kc=Ng.y>Rb.y?0:ed.xVb.x&&(xe=oh.x>Vb.x?0:Ob.yb.layer?1:a.Peb.Pe?1:a.keb.ke?1:0:0};nn.prototype.AF=function(a,b){return a instanceof ns&&b instanceof ns&&a!==b?a.firstb.first||a.pib.pi||a.Peb.Pe?1:a.keb.ke?1:0:0}; +nn.prototype.Hx=function(a,b){return a instanceof ns&&b instanceof ns&&a!==b?a.deb.de||a.pib.pi||a.Peb.Pe?1:a.keb.ke?1:0:0};function os(a,b){u&&(z.p(a,nn,"isApprox:a"),z.p(b,nn,"isApprox:b"));var c=a-b;return-1c}function ps(a,b,c,d){u&&(z.p(a,nn,"isUnoccupied2:px"),z.p(b,nn,"isUnoccupied2:py"),z.p(c,nn,"isUnoccupied2:qx"),z.p(d,nn,"isUnoccupied2:qy"));return!0} +function Fr(a,b){var c,d=a.ge[b];if(d>=a.hh.length){c=[];for(var e=0;ea&&(this.Ri=a,this.I()))});z.defineProperty(nn,{bq:"setsPortSpots"},function(){return this.Zh},function(a){this.Zh!==a&&(z.g(a,"boolean",nn,"setsPortSpots"),this.Zh=a,this.I())});z.defineProperty(nn,{WE:"linkSpacing"},function(){return this.Cr},function(a){this.Cr!==a&&(z.g(a,"number",nn,"linkSpacing"),0<=a&&(this.Cr=a,this.I()))});z.w(nn,{zI:"maxLayer"},function(){return this.yb}); +z.w(nn,{RK:"maxIndex"},function(){return this.Iv});z.w(nn,{QK:"maxColumn"},function(){return this.Kb});z.w(nn,{WK:"minIndexLayer"},function(){return this.Mr});z.w(nn,{SK:"maxIndexLayer"},function(){return this.Rf});var sr;nn.CycleDepthFirst=sr=z.s(nn,"CycleDepthFirst",0);var yr;nn.CycleGreedy=yr=z.s(nn,"CycleGreedy",1);var tr;nn.LayerOptimalLinkLength=tr=z.s(nn,"LayerOptimalLinkLength",0);var Qr;nn.LayerLongestPathSink=Qr=z.s(nn,"LayerLongestPathSink",1);var Sr; +nn.LayerLongestPathSource=Sr=z.s(nn,"LayerLongestPathSource",2);var ur;nn.InitDepthFirstOut=ur=z.s(nn,"InitDepthFirstOut",0);var Yr;nn.InitDepthFirstIn=Yr=z.s(nn,"InitDepthFirstIn",1);var Wr;nn.InitNaive=Wr=z.s(nn,"InitNaive",2);var bs;nn.AggressiveNone=bs=z.s(nn,"AggressiveNone",0);var vr;nn.AggressiveLess=vr=z.s(nn,"AggressiveLess",1);var cs;nn.AggressiveMore=cs=z.s(nn,"AggressiveMore",2);nn.PackNone=0;var ds;nn.PackExpand=ds=1;var es;nn.PackStraighten=es=2;var gs;nn.PackMedian=gs=4;var wr; +nn.PackAll=wr=7;function ns(){this.index=this.ke=this.Pe=this.de=this.first=this.layer=0;this.link=null;this.pi=0}z.$d(ns,{layer:!0,first:!0,de:!0,Pe:!0,ke:!0,index:!0,link:!0,pi:!0});function xr(){wa.call(this)}z.Qa(xr,wa);z.ia("LayeredDigraphNetwork",xr);xr.prototype.createVertex=function(){return new qs};xr.prototype.createEdge=function(){return new rs}; +function qs(){xa.call(this);this.index=this.column=this.layer=-1;this.component=NaN;this.near=null;this.valid=!1;this.finish=this.lp=NaN;this.Vm=0;this.xA=this.yA=null}z.Qa(qs,xa);z.ia("LayeredDigraphVertex",qs);function rs(){ya.call(this);this.forest=this.rev=this.valid=!1;this.portToPos=this.portFromPos=NaN;this.portToColOffset=this.portFromColOffset=0}z.Qa(rs,ya);z.ia("LayeredDigraphEdge",rs); +function Y(){0b.level)return!1;a.removeChild(c.parent,c)}return!0} +Y.prototype.removeChild=function(a,b){if(null!==a&&null!==b){u&&z.l(a,xs,Y,"removeChild:p");u&&z.l(b,xs,Y,"removeChild:c");for(var c=a.children,d=0,e=0;eg?ft(a,k,ua,A,B):gt(a,k,ua,A,B);ua=W.x;A=W.width;B=W.height;break;case Us:for(m=0;ms&&(PAa&&(qt(a,-Aa,0,Na,m-1),rt(H,-Aa,0),rt(U,-Aa,0),Aa=0)}n.qa.n(Aa,ba);A=Math.max(A,ea);B=Math.max(B,L+(0===Oa?0:x)+Ha.height);P=ea}else{0s&&(baAa&&(qt(a,0,-Aa,Na,m-1),rt(H,0,-Aa),rt(U,0,-Aa),Aa=0);n.qa.n(P,Aa);B=Math.max(B,W);A=Math.max(A,L+(0===Oa?0:x)+Ha.width);ba=W}sa++}0< -Oa&&(b?(B+=Math.max(0,c),PAa&&(qt(a,-Aa,0,Na,m-1),rt(H,-Aa,0),rt(U,-Aa,0),Aa=0)}n.qa.n(Aa,ba);A=Math.max(A,ea);B=Math.max(B,L+(0===Oa?0:x)+Ha.height);P=ea}else{0s&&(baAa&&(qt(a,0,-Aa,Na,m-1),rt(H,0,-Aa),rt(U,0,-Aa),Aa=0);n.qa.n(P,Aa);B=Math.max(B,W);A=Math.max(A,L+(0===Oa?0:x)+Ha.width);ba=W}sa++}0< +Oa&&(b?(B+=Math.max(0,c),Ph&&(h=0),135q&&(q=0),p===Vs&&(l+=t/2+a.R.y),k+=d+c):b?(null===a.comments?d>A&&(p=vt(p,d-A,0),k=p.x,l=p.y,A=d,h=0):A=tt(a,A,h),0>h&&(k-=h,h=0),135B&&(p=vt(p,0,e-B),k=p.x,l=p.y,B=e,q=0):B=ut(a,B,q),0>q&&(l-=q,q=0),k+=d+c);if(0g[0].x?g[2].assign(g[1]):g[1].assign(g[2])),g[3].yg[0].x?g[3].assign(g[2]):g[2].assign(g[3])),p[0].n(h+d,0),p[1].n(p[0].x,e),p[2].yg[0].y?g[2].assign(g[1]):g[1].assign(g[2])),g[3].xg[0].y?g[3].assign(g[2]):g[2].assign(g[3])),p[0].n(0,q+e),p[1].n(d,p[0].y),p[2].xc?ft(b,e,sa,L,H):gt(b,e,sa,L,H);sa=H.x;L=H.width;H=H.height;break;case Us:for(k=0;kr&&(ear&&(Wp&&(p=0),135A&&(A=0));b.Sa.n(p,A);b.ob.n(L,H)}} -function ft(a,b,c,d,e){u&&y.l(a,xs,Y,"layoutBusChildrenPosDir:v");var g=b.length;if(0===g)return new w(c,0,d,e);if(1===g){var h=b[0];d=h.ob.width;e=h.ob.height;return new w(c,0,d,e)}for(var k=a.nodeSpacing,l=a.rowSpacing,m=90===at(a),n=0,p=0,q=0,r=0;rm&&(d-=m),e=Math.max(e,Math.max(z,q)+b+s.height),0>h.qa.x&&(c=zt(a,h.qa.x,!1,c,k))):(h.qa.n(d+b,c+k/2-h.R.y-h.Sa.y),d=Math.max(d,Math.max(x,p)+b+s.width),m=c+k/2-h.R.y-h.Sa.y,e=Math.max(e,m+s.height),0>m&&(e-=m),0>h.qa.y&&(c=zt(a,h.qa.y,!0,c,k))));return new w(c,0,d,e)} -function gt(a,b,c,d,e){u&&y.l(a,xs,Y,"layoutBusChildrenNegDir:v");var g=b.length;if(0===g)return new w(c,0,d,e);if(1===g){var h=b[0];d=h.ob.width;e=h.ob.height;return new w(c,0,d,e)}for(var k=a.nodeSpacing,l=a.rowSpacing,m=270===at(a),n=0,p=0,q=0,r=0;rp&&(d-=p),e=Math.max(e,Math.abs(Math.min(z,q))+l+s.height),0>h.qa.x&&(c=zt(a,h.qa.x,!1,c,k))):(h.qa.n(-d-s.width-l,c+k/2-h.R.y-h.Sa.y),d=Math.max(d,Math.abs(Math.min(x,p))+l+s.width),p=c+k/2-h.R.y-h.Sa.y,e=Math.max(e,p+s.height),0>p&&(e-=p),0>h.qa.y&&(c=zt(a,h.qa.y,!0,c,k))));for(r=0;rd&&(d=c+a.width);0>c&&(d-=c);return d;case bt:return a.width>b?a.width:b;case ct:return 2*a.R.x>b?a.width:b+a.width-2*a.R.x;case Ts:case Is:return d=Math.min(0,c),c=Math.max(b,c+a.width),Math.max(a.width,c-d);case Us:return a.width-a.R.x+a.nodeSpacing/2+b;case Vs:return Math.max(a.width,a.R.x+a.nodeSpacing/2+b);default:return b}} -function ut(a,b,c){u&&y.l(a,xs,Y,"calculateSubheight:v");switch(a.alignment){case Rs:case st:var d=b;c+a.height>d&&(d=c+a.height);0>c&&(d-=c);return d;case bt:return a.height>b?a.height:b;case ct:return 2*a.R.y>b?a.height:b+a.height-2*a.R.y;case Ts:case Is:return d=Math.min(0,c),c=Math.max(b,c+a.height),Math.max(a.height,c-d);case Us:return a.height-a.R.y+a.nodeSpacing/2+b;case Vs:return Math.max(a.height,a.R.y+a.nodeSpacing/2+b);default:return b}} -function vt(a,b,c){u&&y.l(a,Ba,Y,"alignOffset:align");switch(a){case st:b/=2;c/=2;break;case Rs:b/=2;c/=2;break;case bt:c=b=0;break;case ct:break;default:y.k("Unhandled alignment value "+a.toString())}return new N(b,c)}function nt(a,b,c,d,e,g){u&&y.l(a,xs,Y,"shiftRelPosAlign:v");u&&y.l(b,Ba,Y,"shiftRelPosAlign:align");b=vt(b,c,d);qt(a,b.x,b.y,e,g)}function qt(a,b,c,d,e){u&&y.l(a,xs,Y,"shiftRelPos:v");if(0!==b||0!==c)for(a=a.children;d<=e;d++){var g=a[d].qa;g.x+=b;g.y+=c}} -function ot(a,b,c,d){u&&(y.l(b,xs,Y,"recordMidPoints:v"),y.g(c,"number",Y,"recordMidPoints:x"),y.g(d,"number",Y,"recordMidPoints:y"));var e=b.parent;switch(a.Pf){case ts:for(a=b.tc;a.next();)b=a.value,b.fromVertex===e&&b.ks.n(c,d);break;case As:for(a=b.hc;a.next();)b=a.value,b.toVertex===e&&b.ks.n(c,d);break;default:y.k("Unhandled path value "+a.Pf.toString())}}function rt(a,b,c){for(var d=0;dp.length||null===q||2>q.length))for(m= -l=0;lv&&e.ye.y&&vb.length||null===l||2>l.length)d=null;else{n=ht(a,b.length+l.length);for(d=g=e=0;gg[0].y?g[2].assign(g[1]):g[1].assign(g[2])),g[3].xg[0].y?g[3].assign(g[2]):g[2].assign(g[3])),p[0].n(0,q+e),p[1].n(d,p[0].y),p[2].xc?ft(b,e,sa,L,H):gt(b,e,sa,L,H);sa=H.x;L=H.width;H=H.height;break;case Us:for(k=0;kr&&(ear&&(Wp&&(p=0),135A&&(A=0));b.Ta.n(p,A);b.ob.n(L,H)}} +function ft(a,b,c,d,e){u&&z.l(a,xs,Y,"layoutBusChildrenPosDir:v");var g=b.length;if(0===g)return new w(c,0,d,e);if(1===g){var h=b[0];d=h.ob.width;e=h.ob.height;return new w(c,0,d,e)}for(var k=a.nodeSpacing,l=a.rowSpacing,m=90===at(a),n=0,p=0,q=0,r=0;rm&&(d-=m),e=Math.max(e,Math.max(y,q)+b+s.height),0>h.qa.x&&(c=zt(a,h.qa.x,!1,c,k))):(h.qa.n(d+b,c+k/2-h.R.y-h.Ta.y),d=Math.max(d,Math.max(x,p)+b+s.width),m=c+k/2-h.R.y-h.Ta.y,e=Math.max(e,m+s.height),0>m&&(e-=m),0>h.qa.y&&(c=zt(a,h.qa.y,!0,c,k))));return new w(c,0,d,e)} +function gt(a,b,c,d,e){u&&z.l(a,xs,Y,"layoutBusChildrenNegDir:v");var g=b.length;if(0===g)return new w(c,0,d,e);if(1===g){var h=b[0];d=h.ob.width;e=h.ob.height;return new w(c,0,d,e)}for(var k=a.nodeSpacing,l=a.rowSpacing,m=270===at(a),n=0,p=0,q=0,r=0;rp&&(d-=p),e=Math.max(e,Math.abs(Math.min(y,q))+l+s.height),0>h.qa.x&&(c=zt(a,h.qa.x,!1,c,k))):(h.qa.n(-d-s.width-l,c+k/2-h.R.y-h.Ta.y),d=Math.max(d,Math.abs(Math.min(x,p))+l+s.width),p=c+k/2-h.R.y-h.Ta.y,e=Math.max(e,p+s.height),0>p&&(e-=p),0>h.qa.y&&(c=zt(a,h.qa.y,!0,c,k))));for(r=0;rd&&(d=c+a.width);0>c&&(d-=c);return d;case bt:return a.width>b?a.width:b;case ct:return 2*a.R.x>b?a.width:b+a.width-2*a.R.x;case Ts:case Is:return d=Math.min(0,c),c=Math.max(b,c+a.width),Math.max(a.width,c-d);case Us:return a.width-a.R.x+a.nodeSpacing/2+b;case Vs:return Math.max(a.width,a.R.x+a.nodeSpacing/2+b);default:return b}} +function ut(a,b,c){u&&z.l(a,xs,Y,"calculateSubheight:v");switch(a.alignment){case Rs:case st:var d=b;c+a.height>d&&(d=c+a.height);0>c&&(d-=c);return d;case bt:return a.height>b?a.height:b;case ct:return 2*a.R.y>b?a.height:b+a.height-2*a.R.y;case Ts:case Is:return d=Math.min(0,c),c=Math.max(b,c+a.height),Math.max(a.height,c-d);case Us:return a.height-a.R.y+a.nodeSpacing/2+b;case Vs:return Math.max(a.height,a.R.y+a.nodeSpacing/2+b);default:return b}} +function vt(a,b,c){u&&z.l(a,Ba,Y,"alignOffset:align");switch(a){case st:b/=2;c/=2;break;case Rs:b/=2;c/=2;break;case bt:c=b=0;break;case ct:break;default:z.k("Unhandled alignment value "+a.toString())}return new N(b,c)}function nt(a,b,c,d,e,g){u&&z.l(a,xs,Y,"shiftRelPosAlign:v");u&&z.l(b,Ba,Y,"shiftRelPosAlign:align");b=vt(b,c,d);qt(a,b.x,b.y,e,g)}function qt(a,b,c,d,e){u&&z.l(a,xs,Y,"shiftRelPos:v");if(0!==b||0!==c)for(a=a.children;d<=e;d++){var g=a[d].qa;g.x+=b;g.y+=c}} +function ot(a,b,c,d){u&&(z.l(b,xs,Y,"recordMidPoints:v"),z.g(c,"number",Y,"recordMidPoints:x"),z.g(d,"number",Y,"recordMidPoints:y"));var e=b.parent;switch(a.Of){case ts:for(a=b.tc;a.next();)b=a.value,b.fromVertex===e&&b.ls.n(c,d);break;case As:for(a=b.hc;a.next();)b=a.value,b.toVertex===e&&b.ls.n(c,d);break;default:z.k("Unhandled path value "+a.Of.toString())}}function rt(a,b,c){for(var d=0;dp.length||null===q||2>q.length))for(m= +l=0;lv&&e.ye.y&&vb.length||null===l||2>l.length)d=null;else{n=ht(a,b.length+l.length);for(d=g=e=0;ge;)v=l[g++],n[d++].n(v.x+m,v.y);l=ht(a,d);for(e=0;ep.length||null===g||2>g.length)e=null;else{n=ht(a,p.length+g.length);for(m=x=l=0;lg;)e=p[l++], -n[m++].n(e.x,e.y);e=ht(a,m);for(l=0;lp.length||null===q||2>q.length))for(m=l=0;lg&&e.xe.x&&gp.length||null===q||2>q.length))for(m=l=0;lg&&e.xe.x&&gb.length||null===l||2>l.length)d=null;else{n=ht(a,b.length+l.length);for(d=g=e=0;ge;)v=l[g++],n[d++].n(v.x,v.y+m);l=ht(a,d);for(e=0;ep.length||null===g||2>g.length)e=null;else{n=ht(a,p.length+g.length);for(m=x=l=0;lg;)e=p[l++],n[m++].n(e.x,e.y);e=ht(a,m);for(l=0;lg;)e=p[l++],n[m++].n(e.x,e.y);e=ht(a,m);for(l=0;l=a?0:135>=a?90:225>=a?180:315>=a?270:0} -function dt(a){u&&y.l(a,xs,Y,"computeLayerSpacing:v");var b=at(a),b=90===b||270===b,c=a.layerSpacing;if(0=a&&(this.wa.nodeIndentPastParent=a,this.I()))}); -y.defineProperty(Y,{nodeSpacing:"nodeSpacing"},function(){return this.wa.nodeSpacing},function(a){this.wa.nodeSpacing!==a&&(y.g(a,"number",Y,"nodeSpacing"),this.wa.nodeSpacing=a,this.I())});y.defineProperty(Y,{layerSpacing:"layerSpacing"},function(){return this.wa.layerSpacing},function(a){this.wa.layerSpacing!==a&&(y.g(a,"number",Y,"layerSpacing"),this.wa.layerSpacing=a,this.I())}); -y.defineProperty(Y,{layerSpacingParentOverlap:"layerSpacingParentOverlap"},function(){return this.wa.layerSpacingParentOverlap},function(a){this.wa.layerSpacingParentOverlap!==a&&(y.g(a,"number",Y,"layerSpacingParentOverlap"),0<=a&&1>=a&&(this.wa.layerSpacingParentOverlap=a,this.I()))});y.defineProperty(Y,{compaction:"compaction"},function(){return this.wa.compaction},function(a){this.wa.compaction!==a&&(y.Ba(a,Y,Y,"compaction"),a===Ys||a===$s)&&(this.wa.compaction=a,this.I())}); -y.defineProperty(Y,{breadthLimit:"breadthLimit"},function(){return this.wa.breadthLimit},function(a){this.wa.breadthLimit!==a&&(y.g(a,"number",Y,"breadthLimit"),0<=a&&(this.wa.breadthLimit=a,this.I()))});y.defineProperty(Y,{rowSpacing:"rowSpacing"},function(){return this.wa.rowSpacing},function(a){this.wa.rowSpacing!==a&&(y.g(a,"number",Y,"rowSpacing"),this.wa.rowSpacing=a,this.I())}); -y.defineProperty(Y,{rowIndent:"rowIndent"},function(){return this.wa.rowIndent},function(a){this.wa.rowIndent!==a&&(y.g(a,"number",Y,"rowIndent"),0<=a&&(this.wa.rowIndent=a,this.I()))});y.defineProperty(Y,{commentSpacing:"commentSpacing"},function(){return this.wa.commentSpacing},function(a){this.wa.commentSpacing!==a&&(y.g(a,"number",Y,"commentSpacing"),this.wa.commentSpacing=a,this.I())}); -y.defineProperty(Y,{commentMargin:"commentMargin"},function(){return this.wa.commentMargin},function(a){this.wa.commentMargin!==a&&(y.g(a,"number",Y,"commentMargin"),this.wa.commentMargin=a,this.I())});y.defineProperty(Y,{setsPortSpot:"setsPortSpot"},function(){return this.wa.setsPortSpot},function(a){this.wa.setsPortSpot!==a&&(y.g(a,"boolean",Y,"setsPortSpot"),this.wa.setsPortSpot=a,this.I())}); -y.defineProperty(Y,{portSpot:"portSpot"},function(){return this.wa.portSpot},function(a){y.l(a,Q,Y,"portSpot");this.wa.portSpot.N(a)||(this.wa.portSpot=a,this.I())});y.defineProperty(Y,{setsChildPortSpot:"setsChildPortSpot"},function(){return this.wa.setsChildPortSpot},function(a){this.wa.setsChildPortSpot!==a&&(y.g(a,"boolean",Y,"setsChildPortSpot"),this.wa.setsChildPortSpot=a,this.I())}); -y.defineProperty(Y,{childPortSpot:"childPortSpot"},function(){return this.wa.childPortSpot},function(a){y.l(a,Q,Y,"childPortSpot");this.wa.childPortSpot.N(a)||(this.wa.childPortSpot=a,this.I())});y.defineProperty(Y,{ZJ:"alternateSorting"},function(){return this.ya.sorting},function(a){this.ya.sorting!==a&&(y.Ba(a,Y,Y,"alternateSorting"),a===Ns||a===Os||a===Ps||Qs)&&(this.ya.sorting=a,this.I())}); -y.defineProperty(Y,{NJ:"alternateComparer"},function(){return this.ya.comparer},function(a){this.ya.comparer!==a&&(y.g(a,"function",Y,"alternateComparer"),this.ya.comparer=a,this.I())});y.defineProperty(Y,{HJ:"alternateAngle"},function(){return this.ya.angle},function(a){this.ya.angle!==a&&(y.g(a,"number",Y,"alternateAngle"),0===a||90===a||180===a||270===a)&&(this.ya.angle=a,this.I())}); -y.defineProperty(Y,{GJ:"alternateAlignment"},function(){return this.ya.alignment},function(a){this.ya.alignment!==a&&(y.Ba(a,Y,Y,"alternateAlignment"),this.ya.alignment=a,this.I())});y.defineProperty(Y,{RJ:"alternateNodeIndent"},function(){return this.ya.nodeIndent},function(a){this.ya.nodeIndent!==a&&(y.g(a,"number",Y,"alternateNodeIndent"),0<=a&&(this.ya.nodeIndent=a,this.I()))}); -y.defineProperty(Y,{SJ:"alternateNodeIndentPastParent"},function(){return this.ya.nodeIndentPastParent},function(a){this.ya.nodeIndentPastParent!==a&&(y.g(a,"number",Y,"alternateNodeIndentPastParent"),0<=a&&1>=a&&(this.ya.nodeIndentPastParent=a,this.I()))});y.defineProperty(Y,{TJ:"alternateNodeSpacing"},function(){return this.ya.nodeSpacing},function(a){this.ya.nodeSpacing!==a&&(y.g(a,"number",Y,"alternateNodeSpacing"),this.ya.nodeSpacing=a,this.I())}); -y.defineProperty(Y,{PJ:"alternateLayerSpacing"},function(){return this.ya.layerSpacing},function(a){this.ya.layerSpacing!==a&&(y.g(a,"number",Y,"alternateLayerSpacing"),this.ya.layerSpacing=a,this.I())});y.defineProperty(Y,{QJ:"alternateLayerSpacingParentOverlap"},function(){return this.ya.layerSpacingParentOverlap},function(a){this.ya.layerSpacingParentOverlap!==a&&(y.g(a,"number",Y,"alternateLayerSpacingParentOverlap"),0<=a&&1>=a&&(this.ya.layerSpacingParentOverlap=a,this.I()))}); -y.defineProperty(Y,{MJ:"alternateCompaction"},function(){return this.ya.compaction},function(a){this.ya.compaction!==a&&(y.Ba(a,Y,Y,"alternateCompaction"),a===Ys||a===$s)&&(this.ya.compaction=a,this.I())});y.defineProperty(Y,{IJ:"alternateBreadthLimit"},function(){return this.ya.breadthLimit},function(a){this.ya.breadthLimit!==a&&(y.g(a,"number",Y,"alternateBreadthLimit"),0<=a&&(this.ya.breadthLimit=a,this.I()))}); -y.defineProperty(Y,{WJ:"alternateRowSpacing"},function(){return this.ya.rowSpacing},function(a){this.ya.rowSpacing!==a&&(y.g(a,"number",Y,"alternateRowSpacing"),this.ya.rowSpacing=a,this.I())});y.defineProperty(Y,{VJ:"alternateRowIndent"},function(){return this.ya.rowIndent},function(a){this.ya.rowIndent!==a&&(y.g(a,"number",Y,"alternateRowIndent"),0<=a&&(this.ya.rowIndent=a,this.I()))}); -y.defineProperty(Y,{LJ:"alternateCommentSpacing"},function(){return this.ya.commentSpacing},function(a){this.ya.commentSpacing!==a&&(y.g(a,"number",Y,"alternateCommentSpacing"),this.ya.commentSpacing=a,this.I())});y.defineProperty(Y,{KJ:"alternateCommentMargin"},function(){return this.ya.commentMargin},function(a){this.ya.commentMargin!==a&&(y.g(a,"number",Y,"alternateCommentMargin"),this.ya.commentMargin=a,this.I())}); -y.defineProperty(Y,{YJ:"alternateSetsPortSpot"},function(){return this.ya.setsPortSpot},function(a){this.ya.setsPortSpot!==a&&(y.g(a,"boolean",Y,"alternateSetsPortSpot"),this.ya.setsPortSpot=a,this.I())});y.defineProperty(Y,{UJ:"alternatePortSpot"},function(){return this.ya.portSpot},function(a){y.l(a,Q,Y,"alternatePortSpot");this.ya.portSpot.N(a)||(this.ya.portSpot=a,this.I())}); -y.defineProperty(Y,{XJ:"alternateSetsChildPortSpot"},function(){return this.ya.setsChildPortSpot},function(a){this.ya.setsChildPortSpot!==a&&(y.g(a,"boolean",Y,"alternateSetsChildPortSpot"),this.ya.setsChildPortSpot=a,this.I())});y.defineProperty(Y,{JJ:"alternateChildPortSpot"},function(){return this.ya.childPortSpot},function(a){y.l(a,Q,Y,"alternateChildPortSpot");this.ya.childPortSpot.N(a)||(this.ya.childPortSpot=a,this.I())});var ss;Y.PathDefault=ss=y.s(Y,"PathDefault",-1);var ts; -Y.PathDestination=ts=y.s(Y,"PathDestination",0);var As;Y.PathSource=As=y.s(Y,"PathSource",1);var Ns;Y.SortingForwards=Ns=y.s(Y,"SortingForwards",10);var Os;Y.SortingReverse=Os=y.s(Y,"SortingReverse",11);var Ps;Y.SortingAscending=Ps=y.s(Y,"SortingAscending",12);var Qs;Y.SortingDescending=Qs=y.s(Y,"SortingDescending",13);var st;Y.AlignmentCenterSubtrees=st=y.s(Y,"AlignmentCenterSubtrees",20);var Rs;Y.AlignmentCenterChildren=Rs=y.s(Y,"AlignmentCenterChildren",21);var bt; -Y.AlignmentStart=bt=y.s(Y,"AlignmentStart",22);var ct;Y.AlignmentEnd=ct=y.s(Y,"AlignmentEnd",23);var Ts;Y.AlignmentBus=Ts=y.s(Y,"AlignmentBus",24);var Is;Y.AlignmentBusBranching=Is=y.s(Y,"AlignmentBusBranching",25);var Us;Y.AlignmentTopLeftBus=Us=y.s(Y,"AlignmentTopLeftBus",26);var Vs;Y.AlignmentBottomRightBus=Vs=y.s(Y,"AlignmentBottomRightBus",27);var Ys;Y.CompactionNone=Ys=y.s(Y,"CompactionNone",30);var $s;Y.CompactionBlock=$s=y.s(Y,"CompactionBlock",31);var us; -Y.StyleLayered=us=y.s(Y,"StyleLayered",40);var Ms;Y.StyleLastParents=Ms=y.s(Y,"StyleLastParents",41);var Ls;Y.StyleAlternating=Ls=y.s(Y,"StyleAlternating",42);var Ks;Y.StyleRootOnly=Ks=y.s(Y,"StyleRootOnly",43);var ws;Y.ArrangementVertical=ws=y.s(Y,"ArrangementVertical",50);var Bt;Y.ArrangementHorizontal=Bt=y.s(Y,"ArrangementHorizontal",51);var zs;Y.ArrangementFixedRoots=zs=y.s(Y,"ArrangementFixedRoots",52);var vs;Y.LayerIndividual=vs=y.s(Y,"LayerIndividual",60);var Gs; -Y.LayerSiblings=Gs=y.s(Y,"LayerSiblings",61);var Fs;Y.LayerUniform=Fs=y.s(Y,"LayerUniform",62);function ys(){wa.call(this)}y.Pa(ys,wa);y.ia("TreeNetwork",ys);ys.prototype.createVertex=function(){return new xs};ys.prototype.createEdge=function(){return new Dt}; -function xs(){xa.call(this);this.initialized=!1;this.parent=null;this.children=[];this.maxGenerationCount=this.maxChildrenCount=this.descendantCount=this.level=0;this.comments=null;this.qa=new N(0,0);this.ob=new Ea(0,0);this.Sa=new N(0,0);this.Yp=this.Xp=this.bJ=!1;this.lu=this.Ut=null;this.sorting=Ns;this.comparer=zq;this.angle=0;this.alignment=Rs;this.nodeIndentPastParent=this.nodeIndent=0;this.nodeSpacing=20;this.layerSpacing=50;this.layerSpacingParentOverlap=0;this.compaction=$s;this.breadthLimit= -0;this.rowSpacing=25;this.commentSpacing=this.rowIndent=10;this.commentMargin=20;this.setsPortSpot=!0;this.portSpot=Kc;this.setsChildPortSpot=!0;this.childPortSpot=Kc}y.Pa(xs,xa);y.ia("TreeVertex",xs); +Y.prototype.QA=function(){for(var a=this.Gd.i;a.next();){var b=a.value;b instanceof xs&&Ct(this,b)}};function Ct(a,b){if(null!==b){u&&z.l(b,xs,Y,"setPortSpotsTree:v");a.setPortSpots(b);for(var c=b.children,d=c.length,e=0;e=a?0:135>=a?90:225>=a?180:315>=a?270:0} +function dt(a){u&&z.l(a,xs,Y,"computeLayerSpacing:v");var b=at(a),b=90===b||270===b,c=a.layerSpacing;if(0=a&&(this.wa.nodeIndentPastParent=a,this.I()))}); +z.defineProperty(Y,{nodeSpacing:"nodeSpacing"},function(){return this.wa.nodeSpacing},function(a){this.wa.nodeSpacing!==a&&(z.g(a,"number",Y,"nodeSpacing"),this.wa.nodeSpacing=a,this.I())});z.defineProperty(Y,{layerSpacing:"layerSpacing"},function(){return this.wa.layerSpacing},function(a){this.wa.layerSpacing!==a&&(z.g(a,"number",Y,"layerSpacing"),this.wa.layerSpacing=a,this.I())}); +z.defineProperty(Y,{layerSpacingParentOverlap:"layerSpacingParentOverlap"},function(){return this.wa.layerSpacingParentOverlap},function(a){this.wa.layerSpacingParentOverlap!==a&&(z.g(a,"number",Y,"layerSpacingParentOverlap"),0<=a&&1>=a&&(this.wa.layerSpacingParentOverlap=a,this.I()))});z.defineProperty(Y,{compaction:"compaction"},function(){return this.wa.compaction},function(a){this.wa.compaction!==a&&(z.Ba(a,Y,Y,"compaction"),a===Ys||a===$s)&&(this.wa.compaction=a,this.I())}); +z.defineProperty(Y,{breadthLimit:"breadthLimit"},function(){return this.wa.breadthLimit},function(a){this.wa.breadthLimit!==a&&(z.g(a,"number",Y,"breadthLimit"),0<=a&&(this.wa.breadthLimit=a,this.I()))});z.defineProperty(Y,{rowSpacing:"rowSpacing"},function(){return this.wa.rowSpacing},function(a){this.wa.rowSpacing!==a&&(z.g(a,"number",Y,"rowSpacing"),this.wa.rowSpacing=a,this.I())}); +z.defineProperty(Y,{rowIndent:"rowIndent"},function(){return this.wa.rowIndent},function(a){this.wa.rowIndent!==a&&(z.g(a,"number",Y,"rowIndent"),0<=a&&(this.wa.rowIndent=a,this.I()))});z.defineProperty(Y,{commentSpacing:"commentSpacing"},function(){return this.wa.commentSpacing},function(a){this.wa.commentSpacing!==a&&(z.g(a,"number",Y,"commentSpacing"),this.wa.commentSpacing=a,this.I())}); +z.defineProperty(Y,{commentMargin:"commentMargin"},function(){return this.wa.commentMargin},function(a){this.wa.commentMargin!==a&&(z.g(a,"number",Y,"commentMargin"),this.wa.commentMargin=a,this.I())});z.defineProperty(Y,{setsPortSpot:"setsPortSpot"},function(){return this.wa.setsPortSpot},function(a){this.wa.setsPortSpot!==a&&(z.g(a,"boolean",Y,"setsPortSpot"),this.wa.setsPortSpot=a,this.I())}); +z.defineProperty(Y,{portSpot:"portSpot"},function(){return this.wa.portSpot},function(a){z.l(a,Q,Y,"portSpot");this.wa.portSpot.N(a)||(this.wa.portSpot=a,this.I())});z.defineProperty(Y,{setsChildPortSpot:"setsChildPortSpot"},function(){return this.wa.setsChildPortSpot},function(a){this.wa.setsChildPortSpot!==a&&(z.g(a,"boolean",Y,"setsChildPortSpot"),this.wa.setsChildPortSpot=a,this.I())}); +z.defineProperty(Y,{childPortSpot:"childPortSpot"},function(){return this.wa.childPortSpot},function(a){z.l(a,Q,Y,"childPortSpot");this.wa.childPortSpot.N(a)||(this.wa.childPortSpot=a,this.I())});z.defineProperty(Y,{aK:"alternateSorting"},function(){return this.ya.sorting},function(a){this.ya.sorting!==a&&(z.Ba(a,Y,Y,"alternateSorting"),a===Ns||a===Os||a===Ps||Qs)&&(this.ya.sorting=a,this.I())}); +z.defineProperty(Y,{PJ:"alternateComparer"},function(){return this.ya.comparer},function(a){this.ya.comparer!==a&&(z.g(a,"function",Y,"alternateComparer"),this.ya.comparer=a,this.I())});z.defineProperty(Y,{JJ:"alternateAngle"},function(){return this.ya.angle},function(a){this.ya.angle!==a&&(z.g(a,"number",Y,"alternateAngle"),0===a||90===a||180===a||270===a)&&(this.ya.angle=a,this.I())}); +z.defineProperty(Y,{IJ:"alternateAlignment"},function(){return this.ya.alignment},function(a){this.ya.alignment!==a&&(z.Ba(a,Y,Y,"alternateAlignment"),this.ya.alignment=a,this.I())});z.defineProperty(Y,{TJ:"alternateNodeIndent"},function(){return this.ya.nodeIndent},function(a){this.ya.nodeIndent!==a&&(z.g(a,"number",Y,"alternateNodeIndent"),0<=a&&(this.ya.nodeIndent=a,this.I()))}); +z.defineProperty(Y,{UJ:"alternateNodeIndentPastParent"},function(){return this.ya.nodeIndentPastParent},function(a){this.ya.nodeIndentPastParent!==a&&(z.g(a,"number",Y,"alternateNodeIndentPastParent"),0<=a&&1>=a&&(this.ya.nodeIndentPastParent=a,this.I()))});z.defineProperty(Y,{VJ:"alternateNodeSpacing"},function(){return this.ya.nodeSpacing},function(a){this.ya.nodeSpacing!==a&&(z.g(a,"number",Y,"alternateNodeSpacing"),this.ya.nodeSpacing=a,this.I())}); +z.defineProperty(Y,{RJ:"alternateLayerSpacing"},function(){return this.ya.layerSpacing},function(a){this.ya.layerSpacing!==a&&(z.g(a,"number",Y,"alternateLayerSpacing"),this.ya.layerSpacing=a,this.I())});z.defineProperty(Y,{SJ:"alternateLayerSpacingParentOverlap"},function(){return this.ya.layerSpacingParentOverlap},function(a){this.ya.layerSpacingParentOverlap!==a&&(z.g(a,"number",Y,"alternateLayerSpacingParentOverlap"),0<=a&&1>=a&&(this.ya.layerSpacingParentOverlap=a,this.I()))}); +z.defineProperty(Y,{OJ:"alternateCompaction"},function(){return this.ya.compaction},function(a){this.ya.compaction!==a&&(z.Ba(a,Y,Y,"alternateCompaction"),a===Ys||a===$s)&&(this.ya.compaction=a,this.I())});z.defineProperty(Y,{KJ:"alternateBreadthLimit"},function(){return this.ya.breadthLimit},function(a){this.ya.breadthLimit!==a&&(z.g(a,"number",Y,"alternateBreadthLimit"),0<=a&&(this.ya.breadthLimit=a,this.I()))}); +z.defineProperty(Y,{YJ:"alternateRowSpacing"},function(){return this.ya.rowSpacing},function(a){this.ya.rowSpacing!==a&&(z.g(a,"number",Y,"alternateRowSpacing"),this.ya.rowSpacing=a,this.I())});z.defineProperty(Y,{XJ:"alternateRowIndent"},function(){return this.ya.rowIndent},function(a){this.ya.rowIndent!==a&&(z.g(a,"number",Y,"alternateRowIndent"),0<=a&&(this.ya.rowIndent=a,this.I()))}); +z.defineProperty(Y,{NJ:"alternateCommentSpacing"},function(){return this.ya.commentSpacing},function(a){this.ya.commentSpacing!==a&&(z.g(a,"number",Y,"alternateCommentSpacing"),this.ya.commentSpacing=a,this.I())});z.defineProperty(Y,{MJ:"alternateCommentMargin"},function(){return this.ya.commentMargin},function(a){this.ya.commentMargin!==a&&(z.g(a,"number",Y,"alternateCommentMargin"),this.ya.commentMargin=a,this.I())}); +z.defineProperty(Y,{$J:"alternateSetsPortSpot"},function(){return this.ya.setsPortSpot},function(a){this.ya.setsPortSpot!==a&&(z.g(a,"boolean",Y,"alternateSetsPortSpot"),this.ya.setsPortSpot=a,this.I())});z.defineProperty(Y,{WJ:"alternatePortSpot"},function(){return this.ya.portSpot},function(a){z.l(a,Q,Y,"alternatePortSpot");this.ya.portSpot.N(a)||(this.ya.portSpot=a,this.I())}); +z.defineProperty(Y,{ZJ:"alternateSetsChildPortSpot"},function(){return this.ya.setsChildPortSpot},function(a){this.ya.setsChildPortSpot!==a&&(z.g(a,"boolean",Y,"alternateSetsChildPortSpot"),this.ya.setsChildPortSpot=a,this.I())});z.defineProperty(Y,{LJ:"alternateChildPortSpot"},function(){return this.ya.childPortSpot},function(a){z.l(a,Q,Y,"alternateChildPortSpot");this.ya.childPortSpot.N(a)||(this.ya.childPortSpot=a,this.I())});var ss;Y.PathDefault=ss=z.s(Y,"PathDefault",-1);var ts; +Y.PathDestination=ts=z.s(Y,"PathDestination",0);var As;Y.PathSource=As=z.s(Y,"PathSource",1);var Ns;Y.SortingForwards=Ns=z.s(Y,"SortingForwards",10);var Os;Y.SortingReverse=Os=z.s(Y,"SortingReverse",11);var Ps;Y.SortingAscending=Ps=z.s(Y,"SortingAscending",12);var Qs;Y.SortingDescending=Qs=z.s(Y,"SortingDescending",13);var st;Y.AlignmentCenterSubtrees=st=z.s(Y,"AlignmentCenterSubtrees",20);var Rs;Y.AlignmentCenterChildren=Rs=z.s(Y,"AlignmentCenterChildren",21);var bt; +Y.AlignmentStart=bt=z.s(Y,"AlignmentStart",22);var ct;Y.AlignmentEnd=ct=z.s(Y,"AlignmentEnd",23);var Ts;Y.AlignmentBus=Ts=z.s(Y,"AlignmentBus",24);var Is;Y.AlignmentBusBranching=Is=z.s(Y,"AlignmentBusBranching",25);var Us;Y.AlignmentTopLeftBus=Us=z.s(Y,"AlignmentTopLeftBus",26);var Vs;Y.AlignmentBottomRightBus=Vs=z.s(Y,"AlignmentBottomRightBus",27);var Ys;Y.CompactionNone=Ys=z.s(Y,"CompactionNone",30);var $s;Y.CompactionBlock=$s=z.s(Y,"CompactionBlock",31);var us; +Y.StyleLayered=us=z.s(Y,"StyleLayered",40);var Ms;Y.StyleLastParents=Ms=z.s(Y,"StyleLastParents",41);var Ls;Y.StyleAlternating=Ls=z.s(Y,"StyleAlternating",42);var Ks;Y.StyleRootOnly=Ks=z.s(Y,"StyleRootOnly",43);var ws;Y.ArrangementVertical=ws=z.s(Y,"ArrangementVertical",50);var Bt;Y.ArrangementHorizontal=Bt=z.s(Y,"ArrangementHorizontal",51);var zs;Y.ArrangementFixedRoots=zs=z.s(Y,"ArrangementFixedRoots",52);var vs;Y.LayerIndividual=vs=z.s(Y,"LayerIndividual",60);var Gs; +Y.LayerSiblings=Gs=z.s(Y,"LayerSiblings",61);var Fs;Y.LayerUniform=Fs=z.s(Y,"LayerUniform",62);function ys(){wa.call(this)}z.Qa(ys,wa);z.ia("TreeNetwork",ys);ys.prototype.createVertex=function(){return new xs};ys.prototype.createEdge=function(){return new Dt}; +function xs(){xa.call(this);this.initialized=!1;this.parent=null;this.children=[];this.maxGenerationCount=this.maxChildrenCount=this.descendantCount=this.level=0;this.comments=null;this.qa=new N(0,0);this.ob=new Ea(0,0);this.Ta=new N(0,0);this.Yp=this.Xp=this.dJ=!1;this.mu=this.Vt=null;this.sorting=Ns;this.comparer=zq;this.angle=0;this.alignment=Rs;this.nodeIndentPastParent=this.nodeIndent=0;this.nodeSpacing=20;this.layerSpacing=50;this.layerSpacingParentOverlap=0;this.compaction=$s;this.breadthLimit= +0;this.rowSpacing=25;this.commentSpacing=this.rowIndent=10;this.commentMargin=20;this.setsPortSpot=!0;this.portSpot=Lc;this.setsChildPortSpot=!0;this.childPortSpot=Lc}z.Qa(xs,xa);z.ia("TreeVertex",xs); xs.prototype.copyInheritedPropertiesFrom=function(a){null!==a&&(this.sorting=a.sorting,this.comparer=a.comparer,this.angle=a.angle,this.alignment=a.alignment,this.nodeIndent=a.nodeIndent,this.nodeIndentPastParent=a.nodeIndentPastParent,this.nodeSpacing=a.nodeSpacing,this.layerSpacing=a.layerSpacing,this.layerSpacingParentOverlap=a.layerSpacingParentOverlap,this.compaction=a.compaction,this.breadthLimit=a.breadthLimit,this.rowSpacing=a.rowSpacing,this.rowIndent=a.rowIndent,this.commentSpacing=a.commentSpacing, -this.commentMargin=a.commentMargin,this.setsPortSpot=a.setsPortSpot,this.portSpot=a.portSpot,this.setsChildPortSpot=a.setsChildPortSpot,this.childPortSpot=a.childPortSpot)};y.w(xs,{Xm:"childrenCount"},function(){return this.children.length});y.defineProperty(xs,{nL:"relativePosition"},function(){return this.qa},function(a){this.qa.set(a)});y.defineProperty(xs,{zL:"subtreeSize"},function(){return this.ob},function(a){this.ob.set(a)}); -y.defineProperty(xs,{yL:"subtreeOffset"},function(){return this.Sa},function(a){this.Sa.set(a)});function Dt(){ya.call(this);this.ks=new N(0,0)}y.Pa(Dt,ya);y.ia("TreeEdge",Dt); -Dt.prototype.commit=function(){var a=this.link;if(null!==a&&!a.kj){var b=this.network.Sb,c=null,d=null;switch(b.Pf){case ts:c=this.fromVertex;d=this.toVertex;break;case As:c=this.toVertex;d=this.fromVertex;break;default:y.k("Unhandled path value "+b.Pf.toString())}if(null!==c&&null!==d)if(b=this.ks,0!==b.x||0!==b.y||c.bJ){var d=c.vb,e=at(c),g=dt(c),h=c.rowSpacing;a.Dn();var k=a.Re===Ri,l=a.rc,m=0,n,p;a.Ul();if(l||k){for(m=2;4q.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-et(c))))):c.alignment===bt?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-et(c))))):c.alignment===bt?(r=d.left+b.x,0===b.x&&n.xq.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-et(c))))):c.alignment===bt?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-et(c))))):c.alignment===bt?(r=d.left+b.x,0===b.x&&n.xq.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-et(c))))):c.alignment===bt?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-et(c))))):c.alignment===bt?(r=d.left+b.x,0===b.x&&n.xq.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-et(c))))):c.alignment===bt?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-et(c))))):c.alignment===bt?(r=d.left+b.x,0===b.x&&n.x=a.length?a.push(c):a.splice(b,0,c):v.k("Cannot insert an object into an HTMLCollection or NodeList: "+c+" at "+b)},Vh:function(a,b){Array.isArray(a)?b>=a.length?a.pop():a.splice(b,1):v.k("Cannot remove an object from an HTMLCollection or NodeList at "+b)},zx:[],L:function(){var a=v.zx.pop();return void 0===a?new y:a},Mb:function(a,b){var c=v.zx.pop();if(void 0===c)return new y(a,b);c.x=a;c.y=b;return c},v:function(a){v.zx.push(a)}, -HA:[],Fl:function(){var a=v.HA.pop();return void 0===a?new ia:a},Zj:function(a){v.HA.push(a)},Ax:[],bg:function(){var a=v.Ax.pop();return void 0===a?new B:a},gk:function(a,b,c,d){var e=v.Ax.pop();if(void 0===e)return new B(a,b,c,d);e.x=a;e.y=b;e.width=c;e.height=d;return e},Vb:function(a){v.Ax.push(a)},IA:[],qh:function(){var a=v.IA.pop();return void 0===a?new ja:a},$e:function(a){v.IA.push(a)},Bx:null,s:function(){var a=v.Bx;return null!==a?(v.Bx=null,a):new ma},q:function(a){a.reset();v.Bx=a},GA:[], -jb:function(){var a=v.GA.pop();return void 0===a?[]:a},sa:function(a){a.length=0;v.GA.push(a)},th:Object.freeze([]),Jl:1,ec:function(a){a.__gohashid=v.Jl++},nt:function(a){var b=a.__gohashid;void 0===b&&(b=v.Jl++,a.__gohashid=b);return b},md:function(a){return a.__gohashid},ea:function(a,b){b.Kx=a;ea[a]=b},Ia:function(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a},Wh:function(a){a.MF=!0},defineProperty:function(a,b,c,d,e){v.j(a,"function","Util.defineProperty:classfunc"); -v.j(b,"object","Util.defineProperty:propobj");v.j(c,"function","Util.defineProperty:getter");v.j(d,"function","Util.defineProperty:setter");for(var f in b){b=b[f];c={get:c,set:d,enumerable:!0};if(void 0!==e)for(var h in e)c[h]=e[h];Object.defineProperty(a.prototype,f,c);e=Object.getOwnPropertyDescriptor(a.prototype,f);b&&e&&Object.defineProperty(a.prototype,b,e);break}},VI:!1,u:function(a,b,c,d){v.j(a,"function","Util.defineReadOnlyProperty:classfunc");v.j(b,"object","Util.defineReadOnlyProperty:propobj"); -v.j(c,"function","Util.defineReadOnlyProperty:getter");for(var e in b){var f=b[e];b={get:c,set:function(a){v.k('The property "'+f+'" is read-only and cannot be set to '+a)},enumerable:!0};if(void 0!==d)for(var h in d)b[h]=d[h];Object.defineProperty(a.prototype,e,b);d=Object.getOwnPropertyDescriptor(a.prototype,e);f&&d&&Object.defineProperty(a.prototype,f,d);break}},Pd:function(a,b){for(var c in b)b[c]=!0;a.prototype.IF=b},getTypeName:function(a){return void 0===a?"":"string"===typeof a?a:"function"=== -typeof a?v.af(a):null===a?"*":""},af:function(a){if("function"===typeof a){if(a.Kx)return a.Kx;if(a.name)return a.name;var b=a.toString(),c=b.indexOf("("),b=b.substring(9,c).trim();if(""!==b)return a.Kx=b}else if("object"===typeof a&&a.constructor)return v.af(a.constructor);return typeof a},p:function(a,b,c){v.j(a,"function","Util.defineEnumValue:classfunc");v.j(b,"string","Util.defineEnumValue:name");v.j(c,"number","Util.defineEnumValue:num");c=new fa(a,b,c);Object.freeze(c);a[b]=c;var d=a.ju;d instanceof -na||(d=new na("string",fa),a.ju=d);d.add(b,c);return c},qb:function(a,b){if(!a||!b)return null;var c=void 0;try{"function"===typeof b?c=b(a):"function"===typeof a.getAttribute?(c=a.getAttribute(b),null===c&&(c=void 0)):c=a[b]}catch(d){}return c},Ja:function(a,b,c){if(a&&b)try{"function"===typeof b?b(a,c):"function"===typeof a.setAttribute?a.setAttribute(b,c):a[b]=c}catch(d){}},Wt:function(a,b){v.j(a,"object","Setting properties requires Objects as arguments");v.j(b,"object","Setting properties requires Objects as arguments"); -var c=a instanceof D,d=a instanceof E,e;for(e in b){""===e&&v.k("Setting properties requires non-empty property names");var f=a,h=e;if(c||d){var k=e.indexOf(".");if(0c;c++)b[c]=c;for(var d= -0,e=0,c=0;256>c;c++)d=(d+b[c]+119)%256,e=b[c],b[c]=b[d],b[d]=e;for(var d=c=0,f="",h=0;hc;c++)b["0123456789abcdef".charAt(c>>4)+"0123456789abcdef".charAt(c&15)]=String.fromCharCode(c);a.length%2&&(a="0"+a);for(var d=[],e=0,c=0;cd;d++)b[v.ug("7ca11abfd7330390")](v.ug(c[d-1]),10,15*d+0);b[v.ug("7ca11abfd022028846")]=v.ug("39f046ebb36e4b");for(d=1;5>d;d++)b[v.ug("7ca11abfd7330390")](v.ug(c[d- -1]),10,15*d+0);if(4!==c.length||"5"!==c[0][0]||"7"!==c[3][0])v.p=function(a,b){var c=new fa(a,b,2);Object.freeze(c);a[b]=c;var d=a.ju;d instanceof na||(d=new na("string",fa),a.ju=d);d.add(b,c);return c};return a}();function fa(a,b,c){v.ec(this);this.VA=a;this.Ob=b;this.RF=c}v.ea("EnumValue",fa);fa.prototype.toString=function(){return v.af(this.VA)+"."+this.Ob};v.u(fa,{qe:"classType"},function(){return this.VA});v.u(fa,{name:"name"},function(){return this.Ob});v.u(fa,{value:"value"},function(){return this.RF}); -var ra;fa.findName=ra=function(a,b){if(void 0===b||null===b||""===b)return null;v.j(a,"function","findName:classfunc");v.j(b,"string","EnumValue.findName:name");var c=a.ju;return c instanceof na?c.ja(b):null};function sa(){this.TA=[]}sa.prototype.toString=function(){return this.TA.join("")};sa.prototype.add=function(a){""!==a&&this.TA.push(a)};function ta(){} -function va(a){void 0===a&&(a=42);this.seed=a;this.vx=48271;this.iu=2147483647;this.FA=this.iu/this.vx;this.uF=this.iu%this.vx;this.tF=1/this.iu;this.random()}va.prototype.random=function(){var a=this.seed%this.FA*this.vx-this.seed/this.FA*this.uF;this.seed=0=a.length?a.push(c):a.splice(b,0,c):v.k("Cannot insert an object into an HTMLCollection or NodeList: "+c+" at "+b)},Th:function(a,b){Array.isArray(a)?b>=a.length?a.pop():a.splice(b,1):v.k("Cannot remove an object from an HTMLCollection or NodeList at "+b)},Ax:[],L:function(){var a=v.Ax.pop();return void 0===a?new z:a},Mb:function(a,b){var c=v.Ax.pop();if(void 0===c)return new z(a,b);c.x=a;c.y=b;return c},v:function(a){v.Ax.push(a)}, +LA:[],El:function(){var a=v.LA.pop();return void 0===a?new ia:a},Zj:function(a){v.LA.push(a)},Bx:[],ag:function(){var a=v.Bx.pop();return void 0===a?new B:a},gk:function(a,b,c,d){var e=v.Bx.pop();if(void 0===e)return new B(a,b,c,d);e.x=a;e.y=b;e.width=c;e.height=d;return e},Vb:function(a){v.Bx.push(a)},MA:[],ph:function(){var a=v.MA.pop();return void 0===a?new ja:a},Ze:function(a){v.MA.push(a)},Cx:null,s:function(){var a=v.Cx;return null!==a?(v.Cx=null,a):new ma},q:function(a){a.reset();v.Cx=a},KA:[], +jb:function(){var a=v.KA.pop();return void 0===a?[]:a},sa:function(a){a.length=0;v.KA.push(a)},fj:Object.freeze([]),Il:1,ec:function(a){a.__gohashid=v.Il++},ot:function(a){var b=a.__gohashid;void 0===b&&(b=v.Il++,a.__gohashid=b);return b},ld:function(a){return a.__gohashid},ea:function(a,b){b.Lx=a;ea[a]=b},Ja:function(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a},Uh:function(a){a.PF=!0},defineProperty:function(a,b,c,d,e){v.j(a,"function","Util.defineProperty:classfunc"); +v.j(b,"object","Util.defineProperty:propobj");v.j(c,"function","Util.defineProperty:getter");v.j(d,"function","Util.defineProperty:setter");for(var f in b){b=b[f];c={get:c,set:d,enumerable:!0};if(void 0!==e)for(var h in e)c[h]=e[h];Object.defineProperty(a.prototype,f,c);e=Object.getOwnPropertyDescriptor(a.prototype,f);b&&e&&Object.defineProperty(a.prototype,b,e);break}},XI:!1,u:function(a,b,c,d){v.j(a,"function","Util.defineReadOnlyProperty:classfunc");v.j(b,"object","Util.defineReadOnlyProperty:propobj"); +v.j(c,"function","Util.defineReadOnlyProperty:getter");for(var e in b){var f=b[e];b={get:c,set:function(a){v.k('The property "'+f+'" is read-only and cannot be set to '+a)},enumerable:!0};if(void 0!==d)for(var h in d)b[h]=d[h];Object.defineProperty(a.prototype,e,b);d=Object.getOwnPropertyDescriptor(a.prototype,e);f&&d&&Object.defineProperty(a.prototype,f,d);break}},Nd:function(a,b){for(var c in b)b[c]=!0;a.prototype.LF=b},getTypeName:function(a){return void 0===a?"":"string"===typeof a?a:"function"=== +typeof a?v.$e(a):null===a?"*":""},$e:function(a){if("function"===typeof a){if(a.Lx)return a.Lx;if(a.name)return a.name;var b=a.toString(),c=b.indexOf("("),b=b.substring(9,c).trim();if(""!==b)return a.Lx=b}else if("object"===typeof a&&a.constructor)return v.$e(a.constructor);return typeof a},p:function(a,b,c){v.j(a,"function","Util.defineEnumValue:classfunc");v.j(b,"string","Util.defineEnumValue:name");v.j(c,"number","Util.defineEnumValue:num");c=new fa(a,b,c);Object.freeze(c);a[b]=c;var d=a.ku;d instanceof +na||(d=new na("string",fa),a.ku=d);d.add(b,c);return c},qb:function(a,b){if(!a||!b)return null;var c=void 0;try{"function"===typeof b?c=b(a):"function"===typeof a.getAttribute?(c=a.getAttribute(b),null===c&&(c=void 0)):c=a[b]}catch(d){}return c},Ka:function(a,b,c){if(a&&b)try{"function"===typeof b?b(a,c):"function"===typeof a.setAttribute?a.setAttribute(b,c):a[b]=c}catch(d){}},Xt:function(a,b){v.j(a,"object","Setting properties requires Objects as arguments");v.j(b,"object","Setting properties requires Objects as arguments"); +var c=a instanceof D,d=a instanceof E,e;for(e in b){""===e&&v.k("Setting properties requires non-empty property names");var f=a,h=e;if(c||d){var k=e.indexOf(".");if(0c;c++)b[c]=c;for(var d= +0,e=0,c=0;256>c;c++)d=(d+b[c]+119)%256,e=b[c],b[c]=b[d],b[d]=e;for(var d=c=0,f="",h=0;hc;c++)b["0123456789abcdef".charAt(c>>4)+"0123456789abcdef".charAt(c&15)]=String.fromCharCode(c);a.length%2&&(a="0"+a);for(var d=[],e=0,c=0;cd;d++)b[v.tg("7ca11abfd7330390")](v.tg(c[d-1]),10,15*d+0);b[v.tg("7ca11abfd022028846")]=v.tg("39f046ebb36e4b");for(d=1;5>d;d++)b[v.tg("7ca11abfd7330390")](v.tg(c[d- +1]),10,15*d+0);if(4!==c.length||"5"!==c[0][0]||"7"!==c[3][0])v.p=function(a,b){var c=new fa(a,b,2);Object.freeze(c);a[b]=c;var d=a.ku;d instanceof na||(d=new na("string",fa),a.ku=d);d.add(b,c);return c};return a}();function fa(a,b,c){v.ec(this);this.ZA=a;this.Ob=b;this.UF=c}v.ea("EnumValue",fa);fa.prototype.toString=function(){return v.$e(this.ZA)+"."+this.Ob};v.u(fa,{pe:"classType"},function(){return this.ZA});v.u(fa,{name:"name"},function(){return this.Ob});v.u(fa,{value:"value"},function(){return this.UF}); +var ra;fa.findName=ra=function(a,b){if(void 0===b||null===b||""===b)return null;v.j(a,"function","findName:classfunc");v.j(b,"string","EnumValue.findName:name");var c=a.ku;return c instanceof na?c.ja(b):null};function sa(){this.XA=[]}sa.prototype.toString=function(){return this.XA.join("")};sa.prototype.add=function(a){""!==a&&this.XA.push(a)};function ta(){} +function va(a){void 0===a&&(a=42);this.seed=a;this.wx=48271;this.ju=2147483647;this.JA=this.ju/this.wx;this.xF=this.ju%this.wx;this.wF=1/this.ju;this.random()}va.prototype.random=function(){var a=this.seed%this.JA*this.wx-this.seed/this.JA*this.xF;this.seed=0this.key)return!1;v.Ka(a)}var a=a.n,b=a.length,c=++this.Oc,d=this.Ih;if(null!==d)for(;cthis.key)return!1;v.Ka(a)}var b=--this.Oc;if(0<=b)return this.key=b,this.value=a.n[b],!0;this.Df();return!1};Ba.prototype.first=Ba.prototype.first=function(){var a=this.tc;this.eb=a.F;var b=a.n;this.Oc=a=b.length-1;return 0<=a?(b=b[a],this.key=a,this.value=b):null}; -Ba.prototype.any=function(a){var b=this.tc;b.uj=null;var c=b.F,d=b.n,e=d.length;this.Oc=e;for(e-=1;0<=e;e--){if(a(d[e]))return!0;b.F!==c&&v.Ka(b)}return!1};Ba.prototype.all=function(a){var b=this.tc;b.uj=null;var c=b.F,d=b.n,e=d.length;this.Oc=e;for(e-=1;0<=e;e--){if(!a(d[e]))return!1;b.F!==c&&v.Ka(b)}return!0};Ba.prototype.each=function(a){var b=this.tc;b.uj=null;var c=b.F,d=b.n,e=d.length;this.Oc=e;for(e-=1;0<=e;e--)a(d[e]),b.F!==c&&v.Ka(b);return this}; -Ba.prototype.map=function(a){var b=this.tc;b.uj=null;var c=b.F,d=[],e=b.n,f=e.length;this.Oc=f;for(f-=1;0<=f;f--)d.push(a(e[f])),b.F!==c&&v.Ka(b);a=new I;a.n=d;a.Bc();return a.i};Ba.prototype.filter=function(a){var b=this.tc;b.uj=null;var c=b.F,d=[],e=b.n,f=e.length;this.Oc=f;for(f-=1;0<=f;f--){var h=e[f];a(h)&&d.push(h);b.F!==c&&v.Ka(b)}a=new I(b.ia);a.n=d;a.Bc();return a.i};Ba.prototype.concat=function(a){this.tc.uj=null;return new za(this,a.i)};v.u(Ba,{count:"count"},function(){return this.tc.n.length}); -Ba.prototype.Df=function(){this.key=-1;this.value=null;this.eb=-1;this.tc.uj=this};Ba.prototype.toString=function(){return"ListIteratorBackwards("+this.Oc+"/"+this.tc.count+")"}; -function I(a){v.ec(this);this.D=!1;this.n=[];this.F=0;this.uj=this.Wb=null;void 0===a||null===a?this.ia=null:"string"===typeof a?"object"===a||"string"===a||"number"===a||"boolean"===a||"function"===a?this.ia=a:v.va(a,"the string 'object', 'number', 'string', 'boolean', or 'function'","List constructor: type"):"function"===typeof a?this.ia=a===Object?"object":a===String?"string":a===Number?"number":a===Boolean?"boolean":a===Function?"function":a:v.va(a,"null, a primitive type name, or a class type", -"List constructor: type")}v.ea("List",I);I.prototype.Bc=function(){var a=this.F;a++;999999999this.key)return!1;v.La(a)}var a=a.n,b=a.length,c=++this.Oc,d=this.Gh;if(null!==d)for(;cthis.key)return!1;v.La(a)}var b=--this.Oc;if(0<=b)return this.key=b,this.value=a.n[b],!0;this.Cf();return!1};Ba.prototype.first=Ba.prototype.first=function(){var a=this.tc;this.eb=a.F;var b=a.n;this.Oc=a=b.length-1;return 0<=a?(b=b[a],this.key=a,this.value=b):null}; +Ba.prototype.any=function(a){var b=this.tc;b.uj=null;var c=b.F,d=b.n,e=d.length;this.Oc=e;for(e-=1;0<=e;e--){if(a(d[e]))return!0;b.F!==c&&v.La(b)}return!1};Ba.prototype.all=function(a){var b=this.tc;b.uj=null;var c=b.F,d=b.n,e=d.length;this.Oc=e;for(e-=1;0<=e;e--){if(!a(d[e]))return!1;b.F!==c&&v.La(b)}return!0};Ba.prototype.each=function(a){var b=this.tc;b.uj=null;var c=b.F,d=b.n,e=d.length;this.Oc=e;for(e-=1;0<=e;e--)a(d[e]),b.F!==c&&v.La(b);return this}; +Ba.prototype.map=function(a){var b=this.tc;b.uj=null;var c=b.F,d=[],e=b.n,f=e.length;this.Oc=f;for(f-=1;0<=f;f--)d.push(a(e[f])),b.F!==c&&v.La(b);a=new I;a.n=d;a.Bc();return a.i};Ba.prototype.filter=function(a){var b=this.tc;b.uj=null;var c=b.F,d=[],e=b.n,f=e.length;this.Oc=f;for(f-=1;0<=f;f--){var h=e[f];a(h)&&d.push(h);b.F!==c&&v.La(b)}a=new I(b.ia);a.n=d;a.Bc();return a.i};Ba.prototype.concat=function(a){this.tc.uj=null;return new za(this,a.i)};v.u(Ba,{count:"count"},function(){return this.tc.n.length}); +Ba.prototype.Cf=function(){this.key=-1;this.value=null;this.eb=-1;this.tc.uj=this};Ba.prototype.toString=function(){return"ListIteratorBackwards("+this.Oc+"/"+this.tc.count+")"}; +function I(a){v.ec(this);this.D=!1;this.n=[];this.F=0;this.uj=this.Xb=null;void 0===a||null===a?this.ia=null:"string"===typeof a?"object"===a||"string"===a||"number"===a||"boolean"===a||"function"===a?this.ia=a:v.va(a,"the string 'object', 'number', 'string', 'boolean', or 'function'","List constructor: type"):"function"===typeof a?this.ia=a===Object?"object":a===String?"string":a===Number?"number":a===Boolean?"boolean":a===Function?"function":a:v.va(a,"null, a primitive type name, or a class type", +"List constructor: type")}v.ea("List",I);I.prototype.Bc=function(){var a=this.F;a++;999999999a||a>=b.length)&&v.va(a,"0 <= i < length",I,"elt:i");return b[a]};I.prototype.setElt=I.prototype.set=I.prototype.Ig=function(a,b){var c=this.n;(0>a||a>=c.length)&&v.va(a,"0 <= i < length",I,"setElt:i");this.D&&v.ka(this,a);c[a]=b};I.prototype.first=I.prototype.first=function(){var a=this.n;return 0===a.length?null:a[0]}; -I.prototype.last=I.prototype.Td=function(){var a=this.n,b=a.length;return 0a&&v.va(a,">= 0",I,"insertAt:i");this.D&&v.ka(this,a);var c=this.n;a>=c.length?c.push(b):c.splice(a,0,b);this.Bc();return!0};I.prototype.remove=I.prototype["delete"]=I.prototype.remove=function(a){if(null===a)return!1;this.D&&v.ka(this,a);var b=this.n;a=b.indexOf(a);if(-1===a)return!1;a===b.length-1?b.pop():b.splice(a,1);this.Bc();return!0}; +I.prototype.indexOf=I.prototype.indexOf=function(a){return null===a?-1:this.n.indexOf(a)};I.prototype.elt=I.prototype.get=I.prototype.da=function(a){var b=this.n;(0>a||a>=b.length)&&v.va(a,"0 <= i < length",I,"elt:i");return b[a]};I.prototype.setElt=I.prototype.set=I.prototype.Hg=function(a,b){var c=this.n;(0>a||a>=c.length)&&v.va(a,"0 <= i < length",I,"setElt:i");this.D&&v.ka(this,a);c[a]=b};I.prototype.first=I.prototype.first=function(){var a=this.n;return 0===a.length?null:a[0]}; +I.prototype.last=I.prototype.Rd=function(){var a=this.n,b=a.length;return 0a&&v.va(a,">= 0",I,"insertAt:i");this.D&&v.ka(this,a);var c=this.n;a>=c.length?c.push(b):c.splice(a,0,b);this.Bc();return!0};I.prototype.remove=I.prototype["delete"]=I.prototype.remove=function(a){if(null===a)return!1;this.D&&v.ka(this,a);var b=this.n;a=b.indexOf(a);if(-1===a)return!1;a===b.length-1?b.pop():b.splice(a,1);this.Bc();return!0}; I.prototype.removeAt=I.prototype.Vc=function(a){var b=this.n;(0>a||a>=b.length)&&v.va(a,"0 <= i < length",I,"removeAt:i");this.D&&v.ka(this,a);a===b.length-1?b.pop():b.splice(a,1);this.Bc()};I.prototype.removeRange=I.prototype.removeRange=function(a,b){var c=this.n;(0>a||a>=c.length)&&v.va(a,"0 <= from < length",I,"elt:from");(0>b||b>=c.length)&&v.va(b,"0 <= to < length",I,"elt:to");this.D&&v.ka(this,a);var d=c.slice((b||a)+1||c.length);c.length=0>a?c.length+a:a;c.push.apply(c,d);this.Bc()}; -I.prototype.copy=function(){var a=new I(this.ia),b=this.n;0=f)return this;(0>b||b>=e-1)&&v.va(b,"0 <= from < length",I,"sortRange:from");if(2===f)return c=d[b],e=d[b+1],0=e)d.sort(a);else for(f=d.slice(0,c),f.sort(a),a=0;a=e)for(f=d.slice(b),f.sort(a),a=b;a=this.n.length)return xa;var a=this.Wb;return null!==a?(a.reset(),a):new Aa(this)}); -v.u(I,{Um:"iteratorBackwards"},function(){if(0>=this.n.length)return xa;var a=this.uj;return null!==a?(a.reset(),a):new Ba(this)});function Da(a){this.Kh=a;this.reset()}v.Pd(Da,{key:!0,value:!0});v.u(Da,{i:"iterator"},function(){return this});Da.prototype.reset=Da.prototype.reset=function(){var a=this.Kh;a.Wb=null;this.eb=a.F;this.cb=null}; -Da.prototype.next=Da.prototype.hasNext=Da.prototype.next=function(){var a=this.Kh;if(a.F!==this.eb){if(null===this.key)return!1;v.Ka(a)}var b=this.cb,b=null===b?a.Da:b.Ua;if(null!==b)return this.cb=b,this.value=b.value,this.key=b.key,!0;this.Df();return!1};Da.prototype.first=Da.prototype.first=function(){var a=this.Kh;this.eb=a.F;a=a.Da;if(null!==a){this.cb=a;var b=a.value;this.key=a.key;return this.value=b}return null}; -Da.prototype.any=function(a){var b=this.Kh;b.Wb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(a(d.value))return!0;b.F!==c&&v.Ka(b);d=d.Ua}return!1};Da.prototype.all=function(a){var b=this.Kh;b.Wb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(!a(d.value))return!1;b.F!==c&&v.Ka(b);d=d.Ua}return!0};Da.prototype.each=function(a){var b=this.Kh;b.Wb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;)a(d.value),b.F!==c&&v.Ka(b),d=d.Ua;return this}; -Da.prototype.map=function(a){var b=this.Kh;b.Wb=null;for(var c=new I,d=b.F,e=b.Da;null!==e;)c.add(a(e.value)),b.F!==d&&v.Ka(b),e=e.Ua;return c.i};Da.prototype.filter=function(a){var b=this.Kh;b.Wb=null;for(var c=new I(b.ia),d=b.F,e=b.Da;null!==e;){var f=e.value;a(f)&&c.add(f);b.F!==d&&v.Ka(b);e=e.Ua}return c.i};Da.prototype.concat=function(a){this.Kh.Wb=null;return new za(this,a.i)};v.u(Da,{count:"count"},function(){return this.Kh.gd}); -Da.prototype.Df=function(){this.value=this.key=null;this.eb=-1;this.Kh.Wb=this};Da.prototype.toString=function(){return null!==this.cb?"SetIterator@"+this.cb.value:"SetIterator"}; -function J(a){v.ec(this);this.D=!1;void 0===a||null===a?this.ia=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.ia=a:v.va(a,"the string 'object', 'number' or 'string'","Set constructor: type"):"function"===typeof a?this.ia=a===Object?"object":a===String?"string":a===Number?"number":a:v.va(a,"null, a primitive type name, or a class type","Set constructor: type");this.hd={};this.gd=0;this.Wb=null;this.F=0;this.Fh=this.Da=null}v.ea("Set",J); -J.prototype.Bc=function(){var a=this.F;a++;999999999=this.gd)return xa;var a=this.Wb;return null!==a?(a.reset(),a):new Da(this)});function Ha(a){this.Ga=a;this.reset()}v.Pd(Ha,{key:!0,value:!0});v.u(Ha,{i:"iterator"},function(){return this});Ha.prototype.reset=Ha.prototype.reset=function(){this.eb=this.Ga.F;this.cb=null}; -Ha.prototype.next=Ha.prototype.hasNext=Ha.prototype.next=function(){var a=this.Ga;if(a.F!==this.eb){if(null===this.key)return!1;v.Ka(a)}var b=this.cb,b=null===b?a.Da:b.Ua;if(null!==b)return this.cb=b,this.value=this.key=a=b.key,!0;this.Df();return!1};Ha.prototype.first=Ha.prototype.first=function(){var a=this.Ga;this.eb=a.F;a=a.Da;return null!==a?(this.cb=a,this.value=this.key=a=a.key):null}; -Ha.prototype.any=function(a){var b=this.Ga,c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(a(d.key))return!0;b.F!==c&&v.Ka(b);d=d.Ua}return!1};Ha.prototype.all=function(a){var b=this.Ga,c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(!a(d.key))return!1;b.F!==c&&v.Ka(b);d=d.Ua}return!0};Ha.prototype.each=function(a){var b=this.Ga,c=b.F;this.cb=null;for(var d=b.Da;null!==d;)a(d.key),b.F!==c&&v.Ka(b),d=d.Ua;return this}; -Ha.prototype.map=function(a){var b=this.Ga,c=b.F;this.cb=null;for(var d=new I,e=b.Da;null!==e;)d.add(a(e.key)),b.F!==c&&v.Ka(b),e=e.Ua;return d.i};Ha.prototype.filter=function(a){var b=this.Ga,c=b.F;this.cb=null;for(var d=new I(b.wi),e=b.Da;null!==e;){var f=e.key;a(f)&&d.add(f);b.F!==c&&v.Ka(b);e=e.Ua}return d.i};Ha.prototype.concat=function(a){return new za(this,a.i)};v.u(Ha,{count:"count"},function(){return this.Ga.gd});Ha.prototype.Df=function(){this.value=this.key=null;this.eb=-1}; -Ha.prototype.toString=function(){return null!==this.cb?"MapKeySetIterator@"+this.cb.value:"MapKeySetIterator"};function Ja(a){v.ec(this);this.D=!0;this.Ga=a}v.Ia(Ja,J);Ja.prototype.freeze=function(){return this};Ja.prototype.Oa=function(){return this};Ja.prototype.toString=function(){return"MapKeySet("+this.Ga.toString()+")"};Ja.prototype.add=Ja.prototype.set=Ja.prototype.add=function(){v.k("This Set is read-only: "+this.toString());return!1}; +b];this.Bc();return this};I.prototype.reverse=I.prototype.reverse=function(){this.D&&v.ka(this);this.n.reverse();this.Bc();return this};v.u(I,{count:"count"},function(){return this.n.length});v.u(I,{size:"size"},function(){return this.n.length});v.u(I,{length:"length"},function(){return this.n.length});v.u(I,{i:"iterator"},function(){if(0>=this.n.length)return xa;var a=this.Xb;return null!==a?(a.reset(),a):new Aa(this)}); +v.u(I,{Um:"iteratorBackwards"},function(){if(0>=this.n.length)return xa;var a=this.uj;return null!==a?(a.reset(),a):new Ba(this)});function Da(a){this.Ih=a;this.reset()}v.Nd(Da,{key:!0,value:!0});v.u(Da,{i:"iterator"},function(){return this});Da.prototype.reset=Da.prototype.reset=function(){var a=this.Ih;a.Xb=null;this.eb=a.F;this.cb=null}; +Da.prototype.next=Da.prototype.hasNext=Da.prototype.next=function(){var a=this.Ih;if(a.F!==this.eb){if(null===this.key)return!1;v.La(a)}var b=this.cb,b=null===b?a.Da:b.Ua;if(null!==b)return this.cb=b,this.value=b.value,this.key=b.key,!0;this.Cf();return!1};Da.prototype.first=Da.prototype.first=function(){var a=this.Ih;this.eb=a.F;a=a.Da;if(null!==a){this.cb=a;var b=a.value;this.key=a.key;return this.value=b}return null}; +Da.prototype.any=function(a){var b=this.Ih;b.Xb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(a(d.value))return!0;b.F!==c&&v.La(b);d=d.Ua}return!1};Da.prototype.all=function(a){var b=this.Ih;b.Xb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(!a(d.value))return!1;b.F!==c&&v.La(b);d=d.Ua}return!0};Da.prototype.each=function(a){var b=this.Ih;b.Xb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;)a(d.value),b.F!==c&&v.La(b),d=d.Ua;return this}; +Da.prototype.map=function(a){var b=this.Ih;b.Xb=null;for(var c=new I,d=b.F,e=b.Da;null!==e;)c.add(a(e.value)),b.F!==d&&v.La(b),e=e.Ua;return c.i};Da.prototype.filter=function(a){var b=this.Ih;b.Xb=null;for(var c=new I(b.ia),d=b.F,e=b.Da;null!==e;){var f=e.value;a(f)&&c.add(f);b.F!==d&&v.La(b);e=e.Ua}return c.i};Da.prototype.concat=function(a){this.Ih.Xb=null;return new za(this,a.i)};v.u(Da,{count:"count"},function(){return this.Ih.gd}); +Da.prototype.Cf=function(){this.value=this.key=null;this.eb=-1;this.Ih.Xb=this};Da.prototype.toString=function(){return null!==this.cb?"SetIterator@"+this.cb.value:"SetIterator"}; +function J(a){v.ec(this);this.D=!1;void 0===a||null===a?this.ia=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.ia=a:v.va(a,"the string 'object', 'number' or 'string'","Set constructor: type"):"function"===typeof a?this.ia=a===Object?"object":a===String?"string":a===Number?"number":a:v.va(a,"null, a primitive type name, or a class type","Set constructor: type");this.hd={};this.gd=0;this.Xb=null;this.F=0;this.Dh=this.Da=null}v.ea("Set",J); +J.prototype.Bc=function(){var a=this.F;a++;999999999=this.gd)return xa;var a=this.Xb;return null!==a?(a.reset(),a):new Da(this)});function Ha(a){this.Ga=a;this.reset()}v.Nd(Ha,{key:!0,value:!0});v.u(Ha,{i:"iterator"},function(){return this});Ha.prototype.reset=Ha.prototype.reset=function(){this.eb=this.Ga.F;this.cb=null}; +Ha.prototype.next=Ha.prototype.hasNext=Ha.prototype.next=function(){var a=this.Ga;if(a.F!==this.eb){if(null===this.key)return!1;v.La(a)}var b=this.cb,b=null===b?a.Da:b.Ua;if(null!==b)return this.cb=b,this.value=this.key=a=b.key,!0;this.Cf();return!1};Ha.prototype.first=Ha.prototype.first=function(){var a=this.Ga;this.eb=a.F;a=a.Da;return null!==a?(this.cb=a,this.value=this.key=a=a.key):null}; +Ha.prototype.any=function(a){var b=this.Ga,c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(a(d.key))return!0;b.F!==c&&v.La(b);d=d.Ua}return!1};Ha.prototype.all=function(a){var b=this.Ga,c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(!a(d.key))return!1;b.F!==c&&v.La(b);d=d.Ua}return!0};Ha.prototype.each=function(a){var b=this.Ga,c=b.F;this.cb=null;for(var d=b.Da;null!==d;)a(d.key),b.F!==c&&v.La(b),d=d.Ua;return this}; +Ha.prototype.map=function(a){var b=this.Ga,c=b.F;this.cb=null;for(var d=new I,e=b.Da;null!==e;)d.add(a(e.key)),b.F!==c&&v.La(b),e=e.Ua;return d.i};Ha.prototype.filter=function(a){var b=this.Ga,c=b.F;this.cb=null;for(var d=new I(b.ui),e=b.Da;null!==e;){var f=e.key;a(f)&&d.add(f);b.F!==c&&v.La(b);e=e.Ua}return d.i};Ha.prototype.concat=function(a){return new za(this,a.i)};v.u(Ha,{count:"count"},function(){return this.Ga.gd});Ha.prototype.Cf=function(){this.value=this.key=null;this.eb=-1}; +Ha.prototype.toString=function(){return null!==this.cb?"MapKeySetIterator@"+this.cb.value:"MapKeySetIterator"};function Ja(a){v.ec(this);this.D=!0;this.Ga=a}v.Ja(Ja,J);Ja.prototype.freeze=function(){return this};Ja.prototype.Oa=function(){return this};Ja.prototype.toString=function(){return"MapKeySet("+this.Ga.toString()+")"};Ja.prototype.add=Ja.prototype.set=Ja.prototype.add=function(){v.k("This Set is read-only: "+this.toString());return!1}; Ja.prototype.contains=Ja.prototype.has=Ja.prototype.contains=function(a){return this.Ga.contains(a)};Ja.prototype.remove=Ja.prototype["delete"]=Ja.prototype.remove=function(){v.k("This Set is read-only: "+this.toString());return!1};Ja.prototype.clear=Ja.prototype.clear=function(){v.k("This Set is read-only: "+this.toString())};Ja.prototype.first=Ja.prototype.first=function(){var a=this.Ga.Da;return null!==a?a.key:null}; Ja.prototype.any=function(a){for(var b=this.Ga.Da;null!==b;){if(a(b.key))return!0;b=b.Ua}return!1};Ja.prototype.all=function(a){for(var b=this.Ga.Da;null!==b;){if(!a(b.key))return!1;b=b.Ua}return!0};Ja.prototype.each=function(a){for(var b=this.Ga.Da;null!==b;)a(b.key),b=b.Ua;return this};Ja.prototype.map=function(a){for(var b=new J,c=this.Ga.Da;null!==c;)b.add(a(c.key)),c=c.Ua;return b}; -Ja.prototype.filter=function(a){for(var b=new J(this.Ga.wi),c=this.Ga.Da;null!==c;){var d=c.key;a(d)&&b.add(d);c=c.Ua}return b};Ja.prototype.concat=function(a){return this.dF().Tc(a)};Ja.prototype.copy=function(){return new Ja(this.Ga)};Ja.prototype.toSet=Ja.prototype.dF=function(){var a=new J(this.Ga.wi),b=this.Ga.hd,c;for(c in b)a.add(b[c].key);return a};Ja.prototype.toArray=Ja.prototype.dc=function(){var a=this.Ga.hd,b=Array(this.Ga.gd),c=0,d;for(d in a)b[c]=a[d].key,c++;return b}; -Ja.prototype.toList=function(){var a=new I(this.ia),b=this.Ga.hd,c;for(c in b)a.add(b[c].key);return a};v.u(Ja,{count:"count"},function(){return this.Ga.gd});v.u(Ja,{size:"size"},function(){return this.Ga.gd});v.u(Ja,{i:"iterator"},function(){return 0>=this.Ga.gd?xa:new Ha(this.Ga)});function La(a){this.Ga=a;this.reset()}v.Pd(La,{key:!0,value:!0});v.u(La,{i:"iterator"},function(){return this});La.prototype.reset=La.prototype.reset=function(){var a=this.Ga;a.vj=null;this.eb=a.F;this.cb=null}; -La.prototype.next=La.prototype.hasNext=La.prototype.next=function(){var a=this.Ga;if(a.F!==this.eb){if(null===this.key)return!1;v.Ka(a)}var b=this.cb,b=null===b?a.Da:b.Ua;if(null!==b)return this.cb=b,this.value=b.value,this.key=b.key,!0;this.Df();return!1};La.prototype.first=La.prototype.first=function(){var a=this.Ga;this.eb=a.F;a=a.Da;if(null!==a){this.cb=a;var b=a.value;this.key=a.key;return this.value=b}return null}; -La.prototype.any=function(a){var b=this.Ga;b.vj=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(a(d.value))return!0;b.F!==c&&v.Ka(b);d=d.Ua}return!1};La.prototype.all=function(a){var b=this.Ga;b.vj=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(!a(d.value))return!1;b.F!==c&&v.Ka(b);d=d.Ua}return!0};La.prototype.each=function(a){var b=this.Ga;b.vj=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;)a(d.value),b.F!==c&&v.Ka(b),d=d.Ua;return this}; -La.prototype.map=function(a){var b=this.Ga;b.vj=null;var c=b.F;this.cb=null;for(var d=new I,e=b.Da;null!==e;)d.add(a(e.value)),b.F!==c&&v.Ka(b),e=e.Ua;return d.i};La.prototype.filter=function(a){var b=this.Ga;b.vj=null;var c=b.F;this.cb=null;for(var d=new I(b.wi),e=b.Da;null!==e;){var f=e.value;a(f)&&d.add(f);b.F!==c&&v.Ka(b);e=e.Ua}return d.i};La.prototype.concat=function(a){this.Ga.vj=null;return new za(this,a.i)};v.u(La,{count:"count"},function(){return this.Ga.gd}); -La.prototype.Df=function(){this.value=this.key=null;this.eb=-1;this.Ga.vj=this};La.prototype.toString=function(){return null!==this.cb?"MapValueSetIterator@"+this.cb.value:"MapValueSetIterator"};function Ea(a,b){this.key=a;this.value=b;this.oo=this.Ua=null}v.Pd(Ea,{key:!0,value:!0});Ea.prototype.toString=function(){return"{"+this.key+":"+this.value+"}"};function Ma(a){this.Ga=a;this.reset()}v.Pd(Ma,{key:!0,value:!0});v.u(Ma,{i:"iterator"},function(){return this}); -Ma.prototype.reset=Ma.prototype.reset=function(){var a=this.Ga;a.Wb=null;this.eb=a.F;this.cb=null};Ma.prototype.next=Ma.prototype.hasNext=Ma.prototype.next=function(){var a=this.Ga;if(a.F!==this.eb){if(null===this.key)return!1;v.Ka(a)}var b=this.cb,b=null===b?a.Da:b.Ua;if(null!==b)return this.cb=b,this.key=b.key,this.value=b.value,!0;this.Df();return!1}; -Ma.prototype.first=Ma.prototype.first=function(){var a=this.Ga;this.eb=a.F;a=a.Da;return null!==a?(this.cb=a,this.key=a.key,this.value=a.value,a):null};Ma.prototype.any=function(a){var b=this.Ga;b.Wb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(a(d))return!0;b.F!==c&&v.Ka(b);d=d.Ua}return!1};Ma.prototype.all=function(a){var b=this.Ga;b.Wb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(!a(d))return!1;b.F!==c&&v.Ka(b);d=d.Ua}return!0}; -Ma.prototype.each=function(a){var b=this.Ga;b.Wb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;)a(d),b.F!==c&&v.Ka(b),d=d.Ua;return this};Ma.prototype.map=function(a){var b=this.Ga;b.Wb=null;var c=b.F;this.cb=null;for(var d=new I,e=b.Da;null!==e;)d.add(a(e)),b.F!==c&&v.Ka(b),e=e.Ua;return d.i};Ma.prototype.filter=function(a){var b=this.Ga;b.Wb=null;var c=b.F;this.cb=null;for(var d=new I,e=b.Da;null!==e;)a(e)&&d.add(e),b.F!==c&&v.Ka(b),e=e.Ua;return d.i}; -Ma.prototype.concat=function(a){this.Ga.Wb=null;return new za(this,a.i)};v.u(Ma,{count:"count"},function(){return this.Ga.gd});Ma.prototype.Df=function(){this.value=this.key=null;this.eb=-1;this.Ga.Wb=this};Ma.prototype.toString=function(){return null!==this.cb?"MapIterator@"+this.cb:"MapIterator"}; -function na(a,b){v.ec(this);this.D=!1;void 0===a||null===a?this.wi=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.wi=a:v.va(a,"the string 'object', 'number' or 'string'","Map constructor: keytype"):"function"===typeof a?this.wi=a===Object?"object":a===String?"string":a===Number?"number":a:v.va(a,"null, a primitive type name, or a class type","Map constructor: keytype");void 0===b||null===b?this.Gs=null:"string"===typeof b?"object"===b||"string"===b||"boolean"===b||"number"=== -b||"function"===b?this.Gs=b:v.va(b,"the string 'object', 'number', 'string', 'boolean', or 'function'","Map constructor: valtype"):"function"===typeof b?this.Gs=b===Object?"object":b===String?"string":b===Number?"number":b===Boolean?"boolean":b===Function?"function":b:v.va(b,"null, a primitive type name, or a class type","Map constructor: valtype");this.hd={};this.gd=0;this.vj=this.Wb=null;this.F=0;this.Fh=this.Da=null}v.ea("Map",na); -na.prototype.Bc=function(){var a=this.F;a++;999999999=this.count)return xa;var a=this.Wb;return null!==a?(a.reset(),a):new Ma(this)});v.u(na,{jE:"iteratorKeys"},function(){return 0>=this.count?xa:new Ha(this)});v.u(na,{kE:"iteratorValues"},function(){if(0>=this.count)return xa;var a=this.vj;return null!==a?(a.reset(),a):new La(this)});function y(a,b){void 0===a?this.y=this.x=0:(this.x=a,this.y=b);this.D=!1}v.ea("Point",y);v.Wh(y);v.Pd(y,{x:!0,y:!0});y.prototype.assign=function(a){this.x=a.x;this.y=a.y}; -y.prototype.setTo=y.prototype.m=function(a,b){this.x=a;this.y=b;return this};y.prototype.set=y.prototype.set=function(a){this.Cb();this.x=a.x;this.y=a.y;return this};y.prototype.copy=function(){var a=new y;a.x=this.x;a.y=this.y;return a};g=y.prototype;g.Ea=function(){this.D=!0;Object.freeze(this);return this};g.R=function(){return Object.isFrozen(this)?this:this.copy().freeze()};g.freeze=function(){this.D=!0;return this}; -g.Oa=function(){Object.isFrozen(this)&&v.k("cannot thaw constant: "+this);this.D=!1;return this};g.Cb=function(a){if(this.D){var b="The Point is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);v.k(b)}};y.parse=function(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=0;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));for(var e=0;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));return new y(c,e)}return new y}; -y.stringify=function(a){return a instanceof y?a.x.toString()+" "+a.y.toString():a.toString()};y.prototype.toString=function(){return"Point("+this.x+","+this.y+")"};y.prototype.equals=y.prototype.K=function(a){return a instanceof y?this.x===a.x&&this.y===a.y:!1};y.prototype.equalTo=y.prototype.ww=function(a,b){return this.x===a&&this.y===b};y.prototype.equalsApprox=y.prototype.Fc=function(a){return K(this.x,a.x)&&K(this.y,a.y)}; -y.prototype.add=y.prototype.add=function(a){this.Cb();this.x+=a.x;this.y+=a.y;return this};y.prototype.subtract=y.prototype.cu=function(a){this.Cb();this.x-=a.x;this.y-=a.y;return this};y.prototype.offset=y.prototype.offset=function(a,b){this.Cb();this.x+=a;this.y+=b;return this}; -y.prototype.rotate=y.prototype.rotate=function(a){this.Cb();if(0===a)return this;var b=this.x,c=this.y;if(0===b&&0===c)return this;var d=0,e=0;360<=a?a-=360:0>a&&(a+=360);90===a?(d=0,e=1):180===a?(d=-1,e=0):270===a?(d=0,e=-1):(a=a*Math.PI/180,d=Math.cos(a),e=Math.sin(a));this.x=d*b-e*c;this.y=e*b+d*c;return this};y.prototype.scale=y.prototype.scale=function(a,b){this.x*=a;this.y*=b;return this}; -y.prototype.distanceSquaredPoint=y.prototype.sf=function(a){var b=a.x-this.x;a=a.y-this.y;return b*b+a*a};y.prototype.distanceSquared=y.prototype.Uo=function(a,b){var c=a-this.x,d=b-this.y;return c*c+d*d};y.prototype.normalize=y.prototype.normalize=function(){this.Cb();var a=this.x,b=this.y,c=Math.sqrt(a*a+b*b);0b?270:0;if(0===b)return 0a?c=0>b?c+180:180-c:0>b&&(c=360-c);return c}y.prototype.projectOntoLineSegment=function(a,b,c,d){Oa(a,b,c,d,this.x,this.y,this);return this};y.prototype.projectOntoLineSegmentPoint=function(a,b){Oa(a.x,a.y,b.x,b.y,this.x,this.y,this);return this}; -y.prototype.snapToGrid=function(a,b,c,d){Pa(this.x,this.y,a,b,c,d,this);return this};y.prototype.snapToGridPoint=function(a,b){Pa(this.x,this.y,a.x,a.y,b.width,b.height,this);return this};y.prototype.setRectSpot=y.prototype.Xt=function(a,b){this.Cb();this.x=a.x+b.x*a.width+b.offsetX;this.y=a.y+b.y*a.height+b.offsetY;return this};y.prototype.setSpot=y.prototype.Zt=function(a,b,c,d,e){this.Cb();this.x=a+e.x*c+e.offsetX;this.y=b+e.y*d+e.offsetY;return this}; -y.prototype.transform=function(a){a.ub(this);return this};function Qa(a,b){b.Yh(a);return a}var Sa;y.distanceLineSegmentSquared=Sa=function(a,b,c,d,e,f){var h=e-c,k=f-d,l=h*h+k*k;c-=a;d-=b;var m=-c*h-d*k;if(0>=m||m>=l)return h=e-a,k=f-b,Math.min(c*c+d*d,h*h+k*k);a=h*d-k*c;return a*a/l};var Ta;y.distanceSquared=Ta=function(a,b,c,d){a=c-a;b=d-b;return a*a+b*b};var Wa; -y.direction=Wa=function(a,b,c,d){a=c-a;b=d-b;if(0===a)return 0b?270:0;if(0===b)return 0a?d=0>b?d+180:180-d:0>b&&(d=360-d);return d};y.prototype.isReal=y.prototype.G=function(){return isFinite(this.x)&&isFinite(this.y)};function ia(a,b){void 0===a?this.height=this.width=0:(this.width=a,this.height=b);this.D=!1}v.ea("Size",ia);v.Wh(ia);v.Pd(ia,{width:!0,height:!0}); +Ja.prototype.filter=function(a){for(var b=new J(this.Ga.ui),c=this.Ga.Da;null!==c;){var d=c.key;a(d)&&b.add(d);c=c.Ua}return b};Ja.prototype.concat=function(a){return this.gF().Tc(a)};Ja.prototype.copy=function(){return new Ja(this.Ga)};Ja.prototype.toSet=Ja.prototype.gF=function(){var a=new J(this.Ga.ui),b=this.Ga.hd,c;for(c in b)a.add(b[c].key);return a};Ja.prototype.toArray=Ja.prototype.dc=function(){var a=this.Ga.hd,b=Array(this.Ga.gd),c=0,d;for(d in a)b[c]=a[d].key,c++;return b}; +Ja.prototype.toList=function(){var a=new I(this.ia),b=this.Ga.hd,c;for(c in b)a.add(b[c].key);return a};v.u(Ja,{count:"count"},function(){return this.Ga.gd});v.u(Ja,{size:"size"},function(){return this.Ga.gd});v.u(Ja,{i:"iterator"},function(){return 0>=this.Ga.gd?xa:new Ha(this.Ga)});function La(a){this.Ga=a;this.reset()}v.Nd(La,{key:!0,value:!0});v.u(La,{i:"iterator"},function(){return this});La.prototype.reset=La.prototype.reset=function(){var a=this.Ga;a.vj=null;this.eb=a.F;this.cb=null}; +La.prototype.next=La.prototype.hasNext=La.prototype.next=function(){var a=this.Ga;if(a.F!==this.eb){if(null===this.key)return!1;v.La(a)}var b=this.cb,b=null===b?a.Da:b.Ua;if(null!==b)return this.cb=b,this.value=b.value,this.key=b.key,!0;this.Cf();return!1};La.prototype.first=La.prototype.first=function(){var a=this.Ga;this.eb=a.F;a=a.Da;if(null!==a){this.cb=a;var b=a.value;this.key=a.key;return this.value=b}return null}; +La.prototype.any=function(a){var b=this.Ga;b.vj=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(a(d.value))return!0;b.F!==c&&v.La(b);d=d.Ua}return!1};La.prototype.all=function(a){var b=this.Ga;b.vj=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(!a(d.value))return!1;b.F!==c&&v.La(b);d=d.Ua}return!0};La.prototype.each=function(a){var b=this.Ga;b.vj=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;)a(d.value),b.F!==c&&v.La(b),d=d.Ua;return this}; +La.prototype.map=function(a){var b=this.Ga;b.vj=null;var c=b.F;this.cb=null;for(var d=new I,e=b.Da;null!==e;)d.add(a(e.value)),b.F!==c&&v.La(b),e=e.Ua;return d.i};La.prototype.filter=function(a){var b=this.Ga;b.vj=null;var c=b.F;this.cb=null;for(var d=new I(b.ui),e=b.Da;null!==e;){var f=e.value;a(f)&&d.add(f);b.F!==c&&v.La(b);e=e.Ua}return d.i};La.prototype.concat=function(a){this.Ga.vj=null;return new za(this,a.i)};v.u(La,{count:"count"},function(){return this.Ga.gd}); +La.prototype.Cf=function(){this.value=this.key=null;this.eb=-1;this.Ga.vj=this};La.prototype.toString=function(){return null!==this.cb?"MapValueSetIterator@"+this.cb.value:"MapValueSetIterator"};function Ea(a,b){this.key=a;this.value=b;this.oo=this.Ua=null}v.Nd(Ea,{key:!0,value:!0});Ea.prototype.toString=function(){return"{"+this.key+":"+this.value+"}"};function Ma(a){this.Ga=a;this.reset()}v.Nd(Ma,{key:!0,value:!0});v.u(Ma,{i:"iterator"},function(){return this}); +Ma.prototype.reset=Ma.prototype.reset=function(){var a=this.Ga;a.Xb=null;this.eb=a.F;this.cb=null};Ma.prototype.next=Ma.prototype.hasNext=Ma.prototype.next=function(){var a=this.Ga;if(a.F!==this.eb){if(null===this.key)return!1;v.La(a)}var b=this.cb,b=null===b?a.Da:b.Ua;if(null!==b)return this.cb=b,this.key=b.key,this.value=b.value,!0;this.Cf();return!1}; +Ma.prototype.first=Ma.prototype.first=function(){var a=this.Ga;this.eb=a.F;a=a.Da;return null!==a?(this.cb=a,this.key=a.key,this.value=a.value,a):null};Ma.prototype.any=function(a){var b=this.Ga;b.Xb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(a(d))return!0;b.F!==c&&v.La(b);d=d.Ua}return!1};Ma.prototype.all=function(a){var b=this.Ga;b.Xb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;){if(!a(d))return!1;b.F!==c&&v.La(b);d=d.Ua}return!0}; +Ma.prototype.each=function(a){var b=this.Ga;b.Xb=null;var c=b.F;this.cb=null;for(var d=b.Da;null!==d;)a(d),b.F!==c&&v.La(b),d=d.Ua;return this};Ma.prototype.map=function(a){var b=this.Ga;b.Xb=null;var c=b.F;this.cb=null;for(var d=new I,e=b.Da;null!==e;)d.add(a(e)),b.F!==c&&v.La(b),e=e.Ua;return d.i};Ma.prototype.filter=function(a){var b=this.Ga;b.Xb=null;var c=b.F;this.cb=null;for(var d=new I,e=b.Da;null!==e;)a(e)&&d.add(e),b.F!==c&&v.La(b),e=e.Ua;return d.i}; +Ma.prototype.concat=function(a){this.Ga.Xb=null;return new za(this,a.i)};v.u(Ma,{count:"count"},function(){return this.Ga.gd});Ma.prototype.Cf=function(){this.value=this.key=null;this.eb=-1;this.Ga.Xb=this};Ma.prototype.toString=function(){return null!==this.cb?"MapIterator@"+this.cb:"MapIterator"}; +function na(a,b){v.ec(this);this.D=!1;void 0===a||null===a?this.ui=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.ui=a:v.va(a,"the string 'object', 'number' or 'string'","Map constructor: keytype"):"function"===typeof a?this.ui=a===Object?"object":a===String?"string":a===Number?"number":a:v.va(a,"null, a primitive type name, or a class type","Map constructor: keytype");void 0===b||null===b?this.Hs=null:"string"===typeof b?"object"===b||"string"===b||"boolean"===b||"number"=== +b||"function"===b?this.Hs=b:v.va(b,"the string 'object', 'number', 'string', 'boolean', or 'function'","Map constructor: valtype"):"function"===typeof b?this.Hs=b===Object?"object":b===String?"string":b===Number?"number":b===Boolean?"boolean":b===Function?"function":b:v.va(b,"null, a primitive type name, or a class type","Map constructor: valtype");this.hd={};this.gd=0;this.vj=this.Xb=null;this.F=0;this.Dh=this.Da=null}v.ea("Map",na); +na.prototype.Bc=function(){var a=this.F;a++;999999999=this.count)return xa;var a=this.Xb;return null!==a?(a.reset(),a):new Ma(this)});v.u(na,{mE:"iteratorKeys"},function(){return 0>=this.count?xa:new Ha(this)});v.u(na,{nE:"iteratorValues"},function(){if(0>=this.count)return xa;var a=this.vj;return null!==a?(a.reset(),a):new La(this)});function z(a,b){void 0===a?this.y=this.x=0:(this.x=a,this.y=b);this.D=!1}v.ea("Point",z);v.Uh(z);v.Nd(z,{x:!0,y:!0});z.prototype.assign=function(a){this.x=a.x;this.y=a.y}; +z.prototype.setTo=z.prototype.m=function(a,b){this.x=a;this.y=b;return this};z.prototype.set=z.prototype.set=function(a){this.Cb();this.x=a.x;this.y=a.y;return this};z.prototype.copy=function(){var a=new z;a.x=this.x;a.y=this.y;return a};g=z.prototype;g.Ea=function(){this.D=!0;Object.freeze(this);return this};g.R=function(){return Object.isFrozen(this)?this:this.copy().freeze()};g.freeze=function(){this.D=!0;return this}; +g.Oa=function(){Object.isFrozen(this)&&v.k("cannot thaw constant: "+this);this.D=!1;return this};g.Cb=function(a){if(this.D){var b="The Point is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);v.k(b)}};z.parse=function(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=0;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));for(var e=0;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));return new z(c,e)}return new z}; +z.stringify=function(a){return a instanceof z?a.x.toString()+" "+a.y.toString():a.toString()};z.prototype.toString=function(){return"Point("+this.x+","+this.y+")"};z.prototype.equals=z.prototype.K=function(a){return a instanceof z?this.x===a.x&&this.y===a.y:!1};z.prototype.equalTo=z.prototype.xw=function(a,b){return this.x===a&&this.y===b};z.prototype.equalsApprox=z.prototype.Fc=function(a){return K(this.x,a.x)&&K(this.y,a.y)}; +z.prototype.add=z.prototype.add=function(a){this.Cb();this.x+=a.x;this.y+=a.y;return this};z.prototype.subtract=z.prototype.du=function(a){this.Cb();this.x-=a.x;this.y-=a.y;return this};z.prototype.offset=z.prototype.offset=function(a,b){this.Cb();this.x+=a;this.y+=b;return this}; +z.prototype.rotate=z.prototype.rotate=function(a){this.Cb();if(0===a)return this;var b=this.x,c=this.y;if(0===b&&0===c)return this;var d=0,e=0;360<=a?a-=360:0>a&&(a+=360);90===a?(d=0,e=1):180===a?(d=-1,e=0):270===a?(d=0,e=-1):(a=a*Math.PI/180,d=Math.cos(a),e=Math.sin(a));this.x=d*b-e*c;this.y=e*b+d*c;return this};z.prototype.scale=z.prototype.scale=function(a,b){this.x*=a;this.y*=b;return this}; +z.prototype.distanceSquaredPoint=z.prototype.rf=function(a){var b=a.x-this.x;a=a.y-this.y;return b*b+a*a};z.prototype.distanceSquared=z.prototype.Uo=function(a,b){var c=a-this.x,d=b-this.y;return c*c+d*d};z.prototype.normalize=z.prototype.normalize=function(){this.Cb();var a=this.x,b=this.y,c=Math.sqrt(a*a+b*b);0b?270:0;if(0===b)return 0a?c=0>b?c+180:180-c:0>b&&(c=360-c);return c}z.prototype.projectOntoLineSegment=function(a,b,c,d){Oa(a,b,c,d,this.x,this.y,this);return this};z.prototype.projectOntoLineSegmentPoint=function(a,b){Oa(a.x,a.y,b.x,b.y,this.x,this.y,this);return this}; +z.prototype.snapToGrid=function(a,b,c,d){Pa(this.x,this.y,a,b,c,d,this);return this};z.prototype.snapToGridPoint=function(a,b){Pa(this.x,this.y,a.x,a.y,b.width,b.height,this);return this};z.prototype.setRectSpot=z.prototype.Yt=function(a,b){this.Cb();this.x=a.x+b.x*a.width+b.offsetX;this.y=a.y+b.y*a.height+b.offsetY;return this};z.prototype.setSpot=z.prototype.$t=function(a,b,c,d,e){this.Cb();this.x=a+e.x*c+e.offsetX;this.y=b+e.y*d+e.offsetY;return this}; +z.prototype.transform=function(a){a.ub(this);return this};function Qa(a,b){b.Wh(a);return a}var Ta;z.distanceLineSegmentSquared=Ta=function(a,b,c,d,e,f){var h=e-c,k=f-d,l=h*h+k*k;c-=a;d-=b;var m=-c*h-d*k;if(0>=m||m>=l)return h=e-a,k=f-b,Math.min(c*c+d*d,h*h+k*k);a=h*d-k*c;return a*a/l};var Ua;z.distanceSquared=Ua=function(a,b,c,d){a=c-a;b=d-b;return a*a+b*b};var Wa; +z.direction=Wa=function(a,b,c,d){a=c-a;b=d-b;if(0===a)return 0b?270:0;if(0===b)return 0a?d=0>b?d+180:180-d:0>b&&(d=360-d);return d};z.prototype.isReal=z.prototype.G=function(){return isFinite(this.x)&&isFinite(this.y)};function ia(a,b){void 0===a?this.height=this.width=0:(this.width=a,this.height=b);this.D=!1}v.ea("Size",ia);v.Uh(ia);v.Nd(ia,{width:!0,height:!0}); ia.prototype.assign=function(a){this.width=a.width;this.height=a.height};ia.prototype.setTo=ia.prototype.m=function(a,b){this.width=a;this.height=b;return this};ia.prototype.set=ia.prototype.set=function(a){this.Cb();this.width=a.width;this.height=a.height;return this};ia.prototype.copy=function(){var a=new ia;a.width=this.width;a.height=this.height;return a};g=ia.prototype;g.Ea=function(){this.D=!0;Object.freeze(this);return this};g.R=function(){return Object.isFrozen(this)?this:this.copy().freeze()}; g.freeze=function(){this.D=!0;return this};g.Oa=function(){Object.isFrozen(this)&&v.k("cannot thaw constant: "+this);this.D=!1;return this};g.Cb=function(a){if(this.D){var b="The Size is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);v.k(b)}};ia.parse=function(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=0;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));for(var e=0;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));return new ia(c,e)}return new ia}; -ia.stringify=function(a){return a instanceof ia?a.width.toString()+" "+a.height.toString():a.toString()};ia.prototype.toString=function(){return"Size("+this.width+","+this.height+")"};ia.prototype.equals=ia.prototype.K=function(a){return a instanceof ia?this.width===a.width&&this.height===a.height:!1};ia.prototype.equalTo=ia.prototype.ww=function(a,b){return this.width===a&&this.height===b};ia.prototype.equalsApprox=ia.prototype.Fc=function(a){return K(this.width,a.width)&&K(this.height,a.height)}; +ia.stringify=function(a){return a instanceof ia?a.width.toString()+" "+a.height.toString():a.toString()};ia.prototype.toString=function(){return"Size("+this.width+","+this.height+")"};ia.prototype.equals=ia.prototype.K=function(a){return a instanceof ia?this.width===a.width&&this.height===a.height:!1};ia.prototype.equalTo=ia.prototype.xw=function(a,b){return this.width===a&&this.height===b};ia.prototype.equalsApprox=ia.prototype.Fc=function(a){return K(this.width,a.width)&&K(this.height,a.height)}; ia.prototype.isReal=ia.prototype.G=function(){return isFinite(this.width)&&isFinite(this.height)}; -function B(a,b,c,d){void 0===a?this.height=this.width=this.y=this.x=0:a instanceof y?b instanceof y?(this.x=Math.min(a.x,b.x),this.y=Math.min(a.y,b.y),this.width=Math.abs(a.x-b.x),this.height=Math.abs(a.y-b.y)):b instanceof ia?(this.x=a.x,this.y=a.y,this.width=b.width,this.height=b.height):v.k("Incorrect arguments supplied to Rect constructor"):(this.x=a,this.y=b,this.width=c,this.height=d);this.D=!1}v.ea("Rect",B);v.Wh(B);v.Pd(B,{x:!0,y:!0,width:!0,height:!0}); -B.prototype.assign=function(a){this.x=a.x;this.y=a.y;this.width=a.width;this.height=a.height};function Xa(a,b,c){a.width=b;a.height=c}B.prototype.setTo=B.prototype.m=function(a,b,c,d){this.x=a;this.y=b;this.width=c;this.height=d;return this};B.prototype.set=B.prototype.set=function(a){this.Cb();this.x=a.x;this.y=a.y;this.width=a.width;this.height=a.height;return this};B.prototype.setPoint=B.prototype.Af=function(a){this.Cb();this.x=a.x;this.y=a.y;return this}; +function B(a,b,c,d){void 0===a?this.height=this.width=this.y=this.x=0:a instanceof z?b instanceof z?(this.x=Math.min(a.x,b.x),this.y=Math.min(a.y,b.y),this.width=Math.abs(a.x-b.x),this.height=Math.abs(a.y-b.y)):b instanceof ia?(this.x=a.x,this.y=a.y,this.width=b.width,this.height=b.height):v.k("Incorrect arguments supplied to Rect constructor"):(this.x=a,this.y=b,this.width=c,this.height=d);this.D=!1}v.ea("Rect",B);v.Uh(B);v.Nd(B,{x:!0,y:!0,width:!0,height:!0}); +B.prototype.assign=function(a){this.x=a.x;this.y=a.y;this.width=a.width;this.height=a.height};function Xa(a,b,c){a.width=b;a.height=c}B.prototype.setTo=B.prototype.m=function(a,b,c,d){this.x=a;this.y=b;this.width=c;this.height=d;return this};B.prototype.set=B.prototype.set=function(a){this.Cb();this.x=a.x;this.y=a.y;this.width=a.width;this.height=a.height;return this};B.prototype.setPoint=B.prototype.zf=function(a){this.Cb();this.x=a.x;this.y=a.y;return this}; B.prototype.setSize=function(a){this.Cb();this.width=a.width;this.height=a.height;return this};B.prototype.copy=function(){var a=new B;a.x=this.x;a.y=this.y;a.width=this.width;a.height=this.height;return a};g=B.prototype;g.Ea=function(){this.D=!0;Object.freeze(this);return this};g.R=function(){return Object.isFrozen(this)?this:this.copy().freeze()};g.freeze=function(){this.D=!0;return this};g.Oa=function(){Object.isFrozen(this)&&v.k("cannot thaw constant: "+this);this.D=!1;return this}; g.Cb=function(a){if(this.D){var b="The Rect is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);v.k(b)}};B.parse=function(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=0;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));for(var e=0;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));for(var f=0;""===a[b];)b++;(d=a[b++])&&(f=parseFloat(d));for(var h=0;""===a[b];)b++;(d=a[b++])&&(h=parseFloat(d));return new B(c,e,f,h)}return new B}; -B.stringify=function(a){return a instanceof B?a.x.toString()+" "+a.y.toString()+" "+a.width.toString()+" "+a.height.toString():a.toString()};B.prototype.toString=function(){return"Rect("+this.x+","+this.y+","+this.width+","+this.height+")"};B.prototype.equals=B.prototype.K=function(a){return a instanceof B?this.x===a.x&&this.y===a.y&&this.width===a.width&&this.height===a.height:!1};B.prototype.equalTo=B.prototype.ww=function(a,b,c,d){return this.x===a&&this.y===b&&this.width===c&&this.height===d}; +B.stringify=function(a){return a instanceof B?a.x.toString()+" "+a.y.toString()+" "+a.width.toString()+" "+a.height.toString():a.toString()};B.prototype.toString=function(){return"Rect("+this.x+","+this.y+","+this.width+","+this.height+")"};B.prototype.equals=B.prototype.K=function(a){return a instanceof B?this.x===a.x&&this.y===a.y&&this.width===a.width&&this.height===a.height:!1};B.prototype.equalTo=B.prototype.xw=function(a,b,c,d){return this.x===a&&this.y===b&&this.width===c&&this.height===d}; B.prototype.equalsApprox=B.prototype.Fc=function(a){return K(this.x,a.x)&&K(this.y,a.y)&&K(this.width,a.width)&&K(this.height,a.height)};B.prototype.containsPoint=B.prototype.Fa=function(a){return this.x<=a.x&&this.x+this.width>=a.x&&this.y<=a.y&&this.y+this.height>=a.y};B.prototype.containsRect=B.prototype.Wj=function(a){return this.x<=a.x&&a.x+a.width<=this.x+this.width&&this.y<=a.y&&a.y+a.height<=this.y+this.height}; -B.prototype.contains=B.prototype.contains=function(a,b,c,d){void 0===c&&(c=0);void 0===d&&(d=0);return this.x<=a&&a+c<=this.x+this.width&&this.y<=b&&b+d<=this.y+this.height};B.prototype.reset=function(){this.Cb();this.height=this.width=this.y=this.x=0};B.prototype.offset=B.prototype.offset=function(a,b){this.Cb();this.x+=a;this.y+=b;return this};B.prototype.inflate=B.prototype.Rf=function(a,b){return Ya(this,b,a,b,a)}; -B.prototype.addMargin=B.prototype.ew=function(a){return Ya(this,a.top,a.right,a.bottom,a.left)};B.prototype.subtractMargin=B.prototype.EI=function(a){return Ya(this,-a.top,-a.right,-a.bottom,-a.left)};B.prototype.grow=function(a,b,c,d){return Ya(this,a,b,c,d)};function Ya(a,b,c,d,e){a.Cb();var f=a.width;c+e<=-f?(a.x+=f/2,a.width=0):(a.x-=e,a.width+=c+e);c=a.height;b+d<=-c?(a.y+=c/2,a.height=0):(a.y-=b,a.height+=b+d);return a}B.prototype.intersectRect=function(a){return Za(this,a.x,a.y,a.width,a.height)}; -B.prototype.intersect=function(a,b,c,d){return Za(this,a,b,c,d)};function Za(a,b,c,d,e){a.Cb();var f=Math.max(a.x,b),h=Math.max(a.y,c);b=Math.min(a.x+a.width,b+d);c=Math.min(a.y+a.height,c+e);a.x=f;a.y=h;a.width=Math.max(0,b-f);a.height=Math.max(0,c-h);return a}B.prototype.intersectsRect=B.prototype.yg=function(a){return this.WD(a.x,a.y,a.width,a.height)}; -B.prototype.intersects=B.prototype.WD=function(a,b,c,d){var e=this.width,f=this.x;if(Infinity!==e&&Infinity!==c&&(e+=f,c+=a,isNaN(c)||isNaN(e)||f>c||a>e))return!1;a=this.height;c=this.y;return Infinity!==a&&Infinity!==d&&(a+=c,d+=b,isNaN(d)||isNaN(a)||c>d||b>a)?!1:!0};function $a(a,b){var c=a.width,d=b.width+10+10,e=a.x,f=b.x-10;if(e>d+f||f>c+e)return!1;c=a.height;d=b.height+10+10;e=a.y;f=b.y-10;return e>d+f||f>c+e?!1:!0}B.prototype.unionPoint=B.prototype.ej=function(a){return ab(this,a.x,a.y,0,0)}; -B.prototype.unionRect=B.prototype.ci=function(a){return ab(this,a.x,a.y,a.width,a.height)};B.prototype.union=B.prototype.mF=function(a,b,c,d){this.Cb();void 0===c&&(c=0);void 0===d&&(d=0);return ab(this,a,b,c,d)};function ab(a,b,c,d,e){var f=Math.min(a.x,b),h=Math.min(a.y,c);b=Math.max(a.x+a.width,b+d);c=Math.max(a.y+a.height,c+e);a.x=f;a.y=h;a.width=b-f;a.height=c-h;return a} -B.prototype.setSpot=B.prototype.Zt=function(a,b,c){this.Cb();this.x=a-c.offsetX-c.x*this.width;this.y=b-c.offsetY-c.y*this.height;return this};var db;B.contains=db=function(a,b,c,d,e,f,h,k){void 0===h&&(h=0);void 0===k&&(k=0);return a<=e&&e+h<=a+c&&b<=f&&f+k<=b+d};B.intersects=function(a,b,c,d,e,f,h,k){c+=a;h+=e;if(a>h||e>c)return!1;a=d+b;k+=f;return b>k||f>a?!1:!0};v.defineProperty(B,{left:"left"},function(){return this.x},function(a){this.Cb(a);this.x=a}); -v.defineProperty(B,{top:"top"},function(){return this.y},function(a){this.Cb(a);this.y=a});v.defineProperty(B,{right:"right"},function(){return this.x+this.width},function(a){this.Cb(a);this.x+=a-(this.x+this.width)});v.defineProperty(B,{bottom:"bottom"},function(){return this.y+this.height},function(a){this.Cb(a);this.y+=a-(this.y+this.height)});v.defineProperty(B,{position:"position"},function(){return new y(this.x,this.y)},function(a){this.Cb(a);this.x=a.x;this.y=a.y}); -v.defineProperty(B,{size:"size"},function(){return new ia(this.width,this.height)},function(a){this.Cb(a);this.width=a.width;this.height=a.height});v.defineProperty(B,{bl:"center"},function(){return new y(this.x+this.width/2,this.y+this.height/2)},function(a){this.Cb(a);this.x=a.x-this.width/2;this.y=a.y-this.height/2});v.defineProperty(B,{na:"centerX"},function(){return this.x+this.width/2},function(a){this.Cb(a);this.x=a-this.width/2}); +B.prototype.contains=B.prototype.contains=function(a,b,c,d){void 0===c&&(c=0);void 0===d&&(d=0);return this.x<=a&&a+c<=this.x+this.width&&this.y<=b&&b+d<=this.y+this.height};B.prototype.reset=function(){this.Cb();this.height=this.width=this.y=this.x=0};B.prototype.offset=B.prototype.offset=function(a,b){this.Cb();this.x+=a;this.y+=b;return this};B.prototype.inflate=B.prototype.Qf=function(a,b){return Ya(this,b,a,b,a)}; +B.prototype.addMargin=B.prototype.fw=function(a){return Ya(this,a.top,a.right,a.bottom,a.left)};B.prototype.subtractMargin=B.prototype.GI=function(a){return Ya(this,-a.top,-a.right,-a.bottom,-a.left)};B.prototype.grow=function(a,b,c,d){return Ya(this,a,b,c,d)};function Ya(a,b,c,d,e){a.Cb();var f=a.width;c+e<=-f?(a.x+=f/2,a.width=0):(a.x-=e,a.width+=c+e);c=a.height;b+d<=-c?(a.y+=c/2,a.height=0):(a.y-=b,a.height+=b+d);return a}B.prototype.intersectRect=function(a){return Za(this,a.x,a.y,a.width,a.height)}; +B.prototype.intersect=function(a,b,c,d){return Za(this,a,b,c,d)};function Za(a,b,c,d,e){a.Cb();var f=Math.max(a.x,b),h=Math.max(a.y,c);b=Math.min(a.x+a.width,b+d);c=Math.min(a.y+a.height,c+e);a.x=f;a.y=h;a.width=Math.max(0,b-f);a.height=Math.max(0,c-h);return a}B.prototype.intersectsRect=B.prototype.xg=function(a){return this.ZD(a.x,a.y,a.width,a.height)}; +B.prototype.intersects=B.prototype.ZD=function(a,b,c,d){var e=this.width,f=this.x;if(Infinity!==e&&Infinity!==c&&(e+=f,c+=a,isNaN(c)||isNaN(e)||f>c||a>e))return!1;a=this.height;c=this.y;return Infinity!==a&&Infinity!==d&&(a+=c,d+=b,isNaN(d)||isNaN(a)||c>d||b>a)?!1:!0};function $a(a,b){var c=a.width,d=b.width+10+10,e=a.x,f=b.x-10;if(e>d+f||f>c+e)return!1;c=a.height;d=b.height+10+10;e=a.y;f=b.y-10;return e>d+f||f>c+e?!1:!0}B.prototype.unionPoint=B.prototype.dj=function(a){return ab(this,a.x,a.y,0,0)}; +B.prototype.unionRect=B.prototype.ai=function(a){return ab(this,a.x,a.y,a.width,a.height)};B.prototype.union=B.prototype.pF=function(a,b,c,d){this.Cb();void 0===c&&(c=0);void 0===d&&(d=0);return ab(this,a,b,c,d)};function ab(a,b,c,d,e){var f=Math.min(a.x,b),h=Math.min(a.y,c);b=Math.max(a.x+a.width,b+d);c=Math.max(a.y+a.height,c+e);a.x=f;a.y=h;a.width=b-f;a.height=c-h;return a} +B.prototype.setSpot=B.prototype.$t=function(a,b,c){this.Cb();this.x=a-c.offsetX-c.x*this.width;this.y=b-c.offsetY-c.y*this.height;return this};var db;B.contains=db=function(a,b,c,d,e,f,h,k){void 0===h&&(h=0);void 0===k&&(k=0);return a<=e&&e+h<=a+c&&b<=f&&f+k<=b+d};B.intersects=function(a,b,c,d,e,f,h,k){c+=a;h+=e;if(a>h||e>c)return!1;a=d+b;k+=f;return b>k||f>a?!1:!0};v.defineProperty(B,{left:"left"},function(){return this.x},function(a){this.Cb(a);this.x=a}); +v.defineProperty(B,{top:"top"},function(){return this.y},function(a){this.Cb(a);this.y=a});v.defineProperty(B,{right:"right"},function(){return this.x+this.width},function(a){this.Cb(a);this.x+=a-(this.x+this.width)});v.defineProperty(B,{bottom:"bottom"},function(){return this.y+this.height},function(a){this.Cb(a);this.y+=a-(this.y+this.height)});v.defineProperty(B,{position:"position"},function(){return new z(this.x,this.y)},function(a){this.Cb(a);this.x=a.x;this.y=a.y}); +v.defineProperty(B,{size:"size"},function(){return new ia(this.width,this.height)},function(a){this.Cb(a);this.width=a.width;this.height=a.height});v.defineProperty(B,{bl:"center"},function(){return new z(this.x+this.width/2,this.y+this.height/2)},function(a){this.Cb(a);this.x=a.x-this.width/2;this.y=a.y-this.height/2});v.defineProperty(B,{na:"centerX"},function(){return this.x+this.width/2},function(a){this.Cb(a);this.x=a-this.width/2}); v.defineProperty(B,{ua:"centerY"},function(){return this.y+this.height/2},function(a){this.Cb(a);this.y=a-this.height/2});B.prototype.isReal=B.prototype.G=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)};B.prototype.isEmpty=function(){return 0===this.width&&0===this.height}; -function eb(a,b,c,d){void 0===a?this.left=this.bottom=this.right=this.top=0:void 0===b?this.left=this.bottom=this.right=this.top=a:void 0===c?(d=b,this.top=a,this.right=b,this.bottom=a,this.left=d):void 0!==d?(this.top=a,this.right=b,this.bottom=c,this.left=d):v.k("Invalid arguments to Margin constructor");this.D=!1}v.ea("Margin",eb);v.Wh(eb);v.Pd(eb,{top:!0,right:!0,bottom:!0,left:!0});eb.prototype.assign=function(a){this.top=a.top;this.right=a.right;this.bottom=a.bottom;this.left=a.left}; +function eb(a,b,c,d){void 0===a?this.left=this.bottom=this.right=this.top=0:void 0===b?this.left=this.bottom=this.right=this.top=a:void 0===c?(d=b,this.top=a,this.right=b,this.bottom=a,this.left=d):void 0!==d?(this.top=a,this.right=b,this.bottom=c,this.left=d):v.k("Invalid arguments to Margin constructor");this.D=!1}v.ea("Margin",eb);v.Uh(eb);v.Nd(eb,{top:!0,right:!0,bottom:!0,left:!0});eb.prototype.assign=function(a){this.top=a.top;this.right=a.right;this.bottom=a.bottom;this.left=a.left}; eb.prototype.setTo=eb.prototype.m=function(a,b,c,d){this.Cb();this.top=a;this.right=b;this.bottom=c;this.left=d;return this};eb.prototype.set=eb.prototype.set=function(a){this.Cb();this.top=a.top;this.right=a.right;this.bottom=a.bottom;this.left=a.left;return this};eb.prototype.copy=function(){var a=new eb;a.top=this.top;a.right=this.right;a.bottom=this.bottom;a.left=this.left;return a};g=eb.prototype;g.Ea=function(){this.D=!0;Object.freeze(this);return this}; g.R=function(){return Object.isFrozen(this)?this:this.copy().freeze()};g.freeze=function(){this.D=!0;return this};g.Oa=function(){Object.isFrozen(this)&&v.k("cannot thaw constant: "+this);this.D=!1;return this};g.Cb=function(a){if(this.D){var b="The Margin is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);v.k(b)}}; eb.parse=function(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=NaN;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));if(isNaN(c))return new eb;for(var e=NaN;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));if(isNaN(e))return new eb(c);for(var f=NaN;""===a[b];)b++;(d=a[b++])&&(f=parseFloat(d));if(isNaN(f))return new eb(c,e);for(var h=NaN;""===a[b];)b++;(d=a[b++])&&(h=parseFloat(d));return isNaN(h)?new eb(c,e):new eb(c,e,f,h)}return new eb}; eb.stringify=function(a){return a instanceof eb?a.top.toString()+" "+a.right.toString()+" "+a.bottom.toString()+" "+a.left.toString():a.toString()};eb.prototype.toString=function(){return"Margin("+this.top+","+this.right+","+this.bottom+","+this.left+")"};eb.prototype.equals=eb.prototype.K=function(a){return a instanceof eb?this.top===a.top&&this.right===a.right&&this.bottom===a.bottom&&this.left===a.left:!1}; -eb.prototype.equalTo=eb.prototype.ww=function(a,b,c,d){return this.top===a&&this.right===b&&this.bottom===c&&this.left===d};eb.prototype.equalsApprox=eb.prototype.Fc=function(a){return K(this.top,a.top)&&K(this.right,a.right)&&K(this.bottom,a.bottom)&&K(this.left,a.left)};eb.prototype.isReal=eb.prototype.G=function(){return isFinite(this.top)&&isFinite(this.right)&&isFinite(this.bottom)&&isFinite(this.left)};function ja(){this.m11=1;this.m21=this.m12=0;this.m22=1;this.dy=this.dx=0}v.Wh(ja); -v.Pd(ja,{m11:!0,m12:!0,m21:!0,m22:!0,dx:!0,dy:!0});ja.prototype.set=ja.prototype.set=function(a){this.m11=a.m11;this.m12=a.m12;this.m21=a.m21;this.m22=a.m22;this.dx=a.dx;this.dy=a.dy;return this};ja.prototype.copy=function(){var a=new ja;a.m11=this.m11;a.m12=this.m12;a.m21=this.m21;a.m22=this.m22;a.dx=this.dx;a.dy=this.dy;return a};ja.prototype.toString=function(){return"Transform("+this.m11+","+this.m12+","+this.m21+","+this.m22+","+this.dx+","+this.dy+")"}; -ja.prototype.equals=ja.prototype.K=function(a){return a instanceof ja?this.m11===a.m11&&this.m12===a.m12&&this.m21===a.m21&&this.m22===a.m22&&this.dx===a.dx&&this.dy===a.dy:!1};ja.prototype.isIdentity=ja.prototype.ut=function(){return 1===this.m11&&0===this.m12&&0===this.m21&&1===this.m22&&0===this.dx&&0===this.dy};ja.prototype.reset=ja.prototype.reset=function(){this.m11=1;this.m21=this.m12=0;this.m22=1;this.dy=this.dx=0;return this}; +eb.prototype.equalTo=eb.prototype.xw=function(a,b,c,d){return this.top===a&&this.right===b&&this.bottom===c&&this.left===d};eb.prototype.equalsApprox=eb.prototype.Fc=function(a){return K(this.top,a.top)&&K(this.right,a.right)&&K(this.bottom,a.bottom)&&K(this.left,a.left)};eb.prototype.isReal=eb.prototype.G=function(){return isFinite(this.top)&&isFinite(this.right)&&isFinite(this.bottom)&&isFinite(this.left)};function ja(){this.m11=1;this.m21=this.m12=0;this.m22=1;this.dy=this.dx=0}v.Uh(ja); +v.Nd(ja,{m11:!0,m12:!0,m21:!0,m22:!0,dx:!0,dy:!0});ja.prototype.set=ja.prototype.set=function(a){this.m11=a.m11;this.m12=a.m12;this.m21=a.m21;this.m22=a.m22;this.dx=a.dx;this.dy=a.dy;return this};ja.prototype.copy=function(){var a=new ja;a.m11=this.m11;a.m12=this.m12;a.m21=this.m21;a.m22=this.m22;a.dx=this.dx;a.dy=this.dy;return a};ja.prototype.toString=function(){return"Transform("+this.m11+","+this.m12+","+this.m21+","+this.m22+","+this.dx+","+this.dy+")"}; +ja.prototype.equals=ja.prototype.K=function(a){return a instanceof ja?this.m11===a.m11&&this.m12===a.m12&&this.m21===a.m21&&this.m22===a.m22&&this.dx===a.dx&&this.dy===a.dy:!1};ja.prototype.isIdentity=ja.prototype.vt=function(){return 1===this.m11&&0===this.m12&&0===this.m21&&1===this.m22&&0===this.dx&&0===this.dy};ja.prototype.reset=ja.prototype.reset=function(){this.m11=1;this.m21=this.m12=0;this.m22=1;this.dy=this.dx=0;return this}; ja.prototype.multiply=ja.prototype.multiply=function(a){var b=this.m12*a.m11+this.m22*a.m12,c=this.m11*a.m21+this.m21*a.m22,d=this.m12*a.m21+this.m22*a.m22,e=this.m11*a.dx+this.m21*a.dy+this.dx,f=this.m12*a.dx+this.m22*a.dy+this.dy;this.m11=this.m11*a.m11+this.m21*a.m12;this.m12=b;this.m21=c;this.m22=d;this.dx=e;this.dy=f;return this}; -ja.prototype.multiplyInverted=ja.prototype.sE=function(a){var b=1/(a.m11*a.m22-a.m12*a.m21),c=a.m22*b,d=-a.m12*b,e=-a.m21*b,f=a.m11*b,h=b*(a.m21*a.dy-a.m22*a.dx),k=b*(a.m12*a.dx-a.m11*a.dy);a=this.m12*c+this.m22*d;b=this.m11*e+this.m21*f;e=this.m12*e+this.m22*f;f=this.m11*h+this.m21*k+this.dx;h=this.m12*h+this.m22*k+this.dy;this.m11=this.m11*c+this.m21*d;this.m12=a;this.m21=b;this.m22=e;this.dx=f;this.dy=h;return this}; -ja.prototype.invert=ja.prototype.zz=function(){var a=1/(this.m11*this.m22-this.m12*this.m21),b=-this.m12*a,c=-this.m21*a,d=this.m11*a,e=a*(this.m21*this.dy-this.m22*this.dx),f=a*(this.m12*this.dx-this.m11*this.dy);this.m11=this.m22*a;this.m12=b;this.m21=c;this.m22=d;this.dx=e;this.dy=f;return this}; +ja.prototype.multiplyInverted=ja.prototype.vE=function(a){var b=1/(a.m11*a.m22-a.m12*a.m21),c=a.m22*b,d=-a.m12*b,e=-a.m21*b,f=a.m11*b,h=b*(a.m21*a.dy-a.m22*a.dx),k=b*(a.m12*a.dx-a.m11*a.dy);a=this.m12*c+this.m22*d;b=this.m11*e+this.m21*f;e=this.m12*e+this.m22*f;f=this.m11*h+this.m21*k+this.dx;h=this.m12*h+this.m22*k+this.dy;this.m11=this.m11*c+this.m21*d;this.m12=a;this.m21=b;this.m22=e;this.dx=f;this.dy=h;return this}; +ja.prototype.invert=ja.prototype.Dz=function(){var a=1/(this.m11*this.m22-this.m12*this.m21),b=-this.m12*a,c=-this.m21*a,d=this.m11*a,e=a*(this.m21*this.dy-this.m22*this.dx),f=a*(this.m12*this.dx-this.m11*this.dy);this.m11=this.m22*a;this.m12=b;this.m21=c;this.m22=d;this.dx=e;this.dy=f;return this}; ja.prototype.rotate=ja.prototype.rotate=function(a,b,c){360<=a?a-=360:0>a&&(a+=360);if(0===a)return this;this.translate(b,c);var d=0,e=0;90===a?(d=0,e=1):180===a?(d=-1,e=0):270===a?(d=0,e=-1):(e=a*Math.PI/180,d=Math.cos(e),e=Math.sin(e));a=this.m12*d+this.m22*e;var f=this.m11*-e+this.m21*d,h=this.m12*-e+this.m22*d;this.m11=this.m11*d+this.m21*e;this.m12=a;this.m21=f;this.m22=h;this.translate(-b,-c);return this}; ja.prototype.translate=ja.prototype.translate=function(a,b){this.dx+=this.m11*a+this.m21*b;this.dy+=this.m12*a+this.m22*b;return this};ja.prototype.scale=ja.prototype.scale=function(a,b){void 0===b&&(b=a);this.m11*=a;this.m12*=a;this.m21*=b;this.m22*=b;return this};ja.prototype.transformPoint=ja.prototype.ub=function(a){var b=a.x,c=a.y;a.x=b*this.m11+c*this.m21+this.dx;a.y=b*this.m12+c*this.m22+this.dy;return a}; -ja.prototype.invertedTransformPoint=ja.prototype.Yh=function(a){var b=1/(this.m11*this.m22-this.m12*this.m21),c=-this.m12*b,d=this.m11*b,e=b*(this.m12*this.dx-this.m11*this.dy),f=a.x,h=a.y;a.x=f*this.m22*b+h*-this.m21*b+b*(this.m21*this.dy-this.m22*this.dx);a.y=f*c+h*d+e;return a}; -ja.prototype.transformRect=ja.prototype.kF=function(a){var b=a.x,c=a.y,d=b+a.width,e=c+a.height,f=this.m11,h=this.m12,k=this.m21,l=this.m22,m=this.dx,n=this.dy,p=b*f+c*k+m,q=b*h+c*l+n,r=d*f+c*k+m,c=d*h+c*l+n,s=b*f+e*k+m,b=b*h+e*l+n,f=d*f+e*k+m,d=d*h+e*l+n,e=p,h=q,p=Math.min(p,r),e=Math.max(e,r),h=Math.min(h,c),q=Math.max(q,c),p=Math.min(p,s),e=Math.max(e,s),h=Math.min(h,b),q=Math.max(q,b),p=Math.min(p,f),e=Math.max(e,f),h=Math.min(h,d),q=Math.max(q,d);a.x=p;a.y=h;a.width=e-p;a.height=q-h;return a}; -function L(a,b,c,d){void 0===a?this.offsetY=this.offsetX=this.y=this.x=0:(void 0===b&&(b=0),void 0===c&&(c=0),void 0===d&&(d=0),this.x=a,this.y=b,this.offsetX=c,this.offsetY=d);this.D=!1}v.ea("Spot",L);v.Wh(L);v.Pd(L,{x:!0,y:!0,offsetX:!0,offsetY:!0});L.prototype.assign=function(a){this.x=a.x;this.y=a.y;this.offsetX=a.offsetX;this.offsetY=a.offsetY};L.prototype.setTo=L.prototype.m=function(a,b,c,d){this.Cb();this.x=a;this.y=b;this.offsetX=c;this.offsetY=d;return this}; +ja.prototype.invertedTransformPoint=ja.prototype.Wh=function(a){var b=1/(this.m11*this.m22-this.m12*this.m21),c=-this.m12*b,d=this.m11*b,e=b*(this.m12*this.dx-this.m11*this.dy),f=a.x,h=a.y;a.x=f*this.m22*b+h*-this.m21*b+b*(this.m21*this.dy-this.m22*this.dx);a.y=f*c+h*d+e;return a}; +ja.prototype.transformRect=ja.prototype.nF=function(a){var b=a.x,c=a.y,d=b+a.width,e=c+a.height,f=this.m11,h=this.m12,k=this.m21,l=this.m22,m=this.dx,n=this.dy,p=b*f+c*k+m,q=b*h+c*l+n,r=d*f+c*k+m,c=d*h+c*l+n,s=b*f+e*k+m,b=b*h+e*l+n,f=d*f+e*k+m,d=d*h+e*l+n,e=p,h=q,p=Math.min(p,r),e=Math.max(e,r),h=Math.min(h,c),q=Math.max(q,c),p=Math.min(p,s),e=Math.max(e,s),h=Math.min(h,b),q=Math.max(q,b),p=Math.min(p,f),e=Math.max(e,f),h=Math.min(h,d),q=Math.max(q,d);a.x=p;a.y=h;a.width=e-p;a.height=q-h;return a}; +function L(a,b,c,d){void 0===a?this.offsetY=this.offsetX=this.y=this.x=0:(void 0===b&&(b=0),void 0===c&&(c=0),void 0===d&&(d=0),this.x=a,this.y=b,this.offsetX=c,this.offsetY=d);this.D=!1}v.ea("Spot",L);v.Uh(L);v.Nd(L,{x:!0,y:!0,offsetX:!0,offsetY:!0});L.prototype.assign=function(a){this.x=a.x;this.y=a.y;this.offsetX=a.offsetX;this.offsetY=a.offsetY};L.prototype.setTo=L.prototype.m=function(a,b,c,d){this.Cb();this.x=a;this.y=b;this.offsetX=c;this.offsetY=d;return this}; L.prototype.set=L.prototype.set=function(a){this.Cb();this.x=a.x;this.y=a.y;this.offsetX=a.offsetX;this.offsetY=a.offsetY;return this};L.prototype.copy=function(){var a=new L;a.x=this.x;a.y=this.y;a.offsetX=this.offsetX;a.offsetY=this.offsetY;return a};g=L.prototype;g.Ea=function(){this.D=!0;Object.freeze(this);return this};g.R=function(){return Object.isFrozen(this)?this:this.copy().freeze()};g.freeze=function(){this.D=!0;return this}; -g.Oa=function(){Object.isFrozen(this)&&v.k("cannot thaw constant: "+this);this.D=!1;return this};g.Cb=function(a){if(this.D){var b="The Spot is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);v.k(b)}};function fb(a,b){a.x=NaN;a.y=NaN;a.offsetX=b;return a}var nb; -L.parse=nb=function(a){if("string"===typeof a){a=a.trim();if("None"===a)return sb;if("TopLeft"===a)return tb;if("Top"===a||"TopCenter"===a||"MiddleTop"===a)return ub;if("TopRight"===a)return vb;if("Left"===a||"LeftCenter"===a||"MiddleLeft"===a)return wb;if("Center"===a)return Ab;if("Right"===a||"RightCenter"===a||"MiddleRight"===a)return Bb;if("BottomLeft"===a)return Db;if("Bottom"===a||"BottomCenter"===a||"MiddleBottom"===a)return Eb;if("BottomRight"===a)return Fb;if("TopSide"===a)return Gb;if("LeftSide"=== -a)return Hb;if("RightSide"===a)return Nb;if("BottomSide"===a)return Ob;if("TopBottomSides"===a)return Pb;if("LeftRightSides"===a)return Qb;if("TopLeftSides"===a)return Ub;if("TopRightSides"===a)return Vb;if("BottomLeftSides"===a)return Zb;if("BottomRightSides"===a)return $b;if("NotTopSide"===a)return ac;if("NotLeftSide"===a)return bc;if("NotRightSide"===a)return cc;if("NotBottomSide"===a)return dc;if("AllSides"===a)return ec;if("Default"===a)return kc;a=a.split(" ");for(var b=0,c=0;""===a[b];)b++; +g.Oa=function(){Object.isFrozen(this)&&v.k("cannot thaw constant: "+this);this.D=!1;return this};g.Cb=function(a){if(this.D){var b="The Spot is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);v.k(b)}};function fb(a,b){a.x=NaN;a.y=NaN;a.offsetX=b;return a}var ib; +L.parse=ib=function(a){if("string"===typeof a){a=a.trim();if("None"===a)return sb;if("TopLeft"===a)return tb;if("Top"===a||"TopCenter"===a||"MiddleTop"===a)return ub;if("TopRight"===a)return vb;if("Left"===a||"LeftCenter"===a||"MiddleLeft"===a)return wb;if("Center"===a)return Ab;if("Right"===a||"RightCenter"===a||"MiddleRight"===a)return Bb;if("BottomLeft"===a)return Db;if("Bottom"===a||"BottomCenter"===a||"MiddleBottom"===a)return Eb;if("BottomRight"===a)return Fb;if("TopSide"===a)return Gb;if("LeftSide"=== +a)return Hb;if("RightSide"===a)return Nb;if("BottomSide"===a)return Ob;if("TopBottomSides"===a)return Pb;if("LeftRightSides"===a)return Tb;if("TopLeftSides"===a)return Ub;if("TopRightSides"===a)return Vb;if("BottomLeftSides"===a)return Zb;if("BottomRightSides"===a)return $b;if("NotTopSide"===a)return ac;if("NotLeftSide"===a)return bc;if("NotRightSide"===a)return cc;if("NotBottomSide"===a)return dc;if("AllSides"===a)return ec;if("Default"===a)return fc;a=a.split(" ");for(var b=0,c=0;""===a[b];)b++; var d=a[b++];void 0!==d&&0b.offset?1:-1});for(k=0;k=2*Math.PI?(Bc(a,b,c,d,e,e+Math.PI,h),Bc(a,b,c,d,e+Math.PI,e+2*Math.PI,h),a.path.push(["M",l,f])):(b+=d*Math.cos(e),c+=d*Math.sin(e),k=180*k/Math.PI,e=h?0:1,h=180<=k===!!h?0:1,0!==a.path.length?a.path.push(["L",b,c]):a.path.push(["M",b,c]),a.path.push(["A",d,d,k,h,e,l,f]))}}function Ac(a,b,c,d,e,f,h){var k=new wc;k.ff=[b,c,d,e,f,h];b={};Ic(a,"g",b,k);k=a.addElement("g",b);a.uf.push(k)} -g.Ya=function(){if(0!==this.shadowOffsetX||0!==this.shadowOffsetY||0!==this.shadowBlur){var a="SHADOW"+v.Jl++,b=this.addElement("filter",{id:a,x:"-100%",y:"-100%",width:"300%",height:"300%"},null),c,d,e,f,h;c=zc(this,"feGaussianBlur",{"in":"SourceAlpha",result:"blur",EK:this.shadowBlur/2});d=zc(this,"feFlood",{"in":"blur",result:"flood","flood-color":this.shadowColor});e=zc(this,"feComposite",{"in":"flood",in2:"blur",operator:"in",result:"comp"});f=zc(this,"feOffset",{"in":"comp",result:"offsetBlur", -dx:this.shadowOffsetX,dy:this.shadowOffsetY});h=zc(this,"feMerge",{});h.appendChild(zc(this,"feMergeNode",{"in":"offsetBlur"}));h.appendChild(zc(this,"feMergeNode",{"in":"SourceGraphic"}));b.appendChild(c);b.appendChild(d);b.appendChild(e);b.appendChild(f);b.appendChild(h);0b?(this.scale(b/a,1),this.translate((a-b)/2,0)):b>a&&(this.scale(1,a/b),this.translate(0,(b-a)/2));this.rn?this.clip():this.fill();a>b?(this.translate(-(a-b)/2,0),this.scale(1/(b/a),1)):b>a&&(this.translate(0,-(b-a)/2),this.scale(1,1/(a/b)))}else this.rn?this.clip():this.fill()};g.cj=function(){this.rn||this.stroke()};v.defineProperty(Mc,{ow:"clipInsteadOfFill"},function(){return this.rn},function(a){this.rn=a}); -Mc.prototype.nA=function(a,b,c){this.ms=a;this.ns=b;this.pg=c};Mc.prototype.cn=function(){this.shadowBlur=this.shadowOffsetY=this.shadowOffsetX=0};Mc.prototype.dn=function(){this.shadowOffsetX=this.ms;this.shadowOffsetY=this.ns;this.shadowBlur=this.pg};function Vc(a,b){b&&(a.Ix="");a.Jx="";a.Hx=""} -var Wc=(Math.sqrt(2)-1)/3*4,Xc=(new y(0,0)).Ea(),Yc=(new B(0,0,0,0)).Ea(),Zc=(new eb(0,0,0,0)).Ea(),fd=(new eb(2,2,2,2)).Ea(),gd=(new y(6,6)).Ea(),hd=(new y(-Infinity,-Infinity)).Ea(),id=(new y(Infinity,Infinity)).Ea(),jd=(new ia(0,0)).Ea(),kd=(new ia(1,1)).Ea(),ld=(new ia(6,6)).Ea(),md=(new ia(8,8)).Ea(),nd=(new ia(10,10)).Ea(),zd=(new ia(Infinity,Infinity)).Ea(),Ad=(new y(NaN,NaN)).Ea(),Bd=(new ia(NaN,NaN)).Ea(),Cd=(new B(NaN,NaN,NaN,NaN)).Ea(),Dd=(new L(.156,.156)).Ea(),Ed=(new L(.844,.844)).Ea(), -Fd=new ta,Gd=new ta,Hd=null;function Id(a){if(0>=a)return 0;var b=Hd;if(null===b){for(var b=[],c=0;2E3>=c;c++)b[c]=Math.sqrt(c);Hd=b}return 1>a?(c=1/a,2E3>=c?1/b[c|0]:Math.sqrt(a)):2E3>=a?b[a|0]:Math.sqrt(a)}function K(a,b){var c=a-b;return.5>c&&-.5c&&-5E-8=e&&(e=1E-6);var k=0,l=0,m=0,n=0;am-n)if(a-c>e||c-a>e){if(f=(d-b)/(c-a)*(f-a)+b,f-e<=h&&h<=f+e)return!0}else return!0;else if(b-d>e||d-b>e){if(h=(c-a)/(d-b)*(h-b)+a,h-e<=f&&f<=h+e)return!0}else return!0;return!1} -function Pd(a,b,c,d,e,f,h,k,l,m,n,p){if(Jd(a,b,h,k,p,c,d)&&Jd(a,b,h,k,p,e,f))return Jd(a,b,h,k,p,m,n);var q=(a+c)/2,r=(b+d)/2,s=(c+e)/2,t=(d+f)/2;e=(e+h)/2;f=(f+k)/2;d=(q+s)/2;c=(r+t)/2;var s=(s+e)/2,t=(t+f)/2,u=(d+s)/2,w=(c+t)/2;return Pd(a,b,q,r,d,c,u,w,l,m,n,p)||Pd(u,w,s,t,e,f,h,k,l,m,n,p)} -function Qd(a,b,c,d,e,f,h,k,l,m){if(Jd(a,b,h,k,l,c,d)&&Jd(a,b,h,k,l,e,f))ab(m,a,b,0,0),ab(m,h,k,0,0);else{var n=(a+c)/2,p=(b+d)/2,q=(c+e)/2,r=(d+f)/2;e=(e+h)/2;f=(f+k)/2;d=(n+q)/2;c=(p+r)/2;var q=(q+e)/2,r=(r+f)/2,s=(d+q)/2,t=(c+r)/2;Qd(a,b,n,p,d,c,s,t,l,m);Qd(s,t,q,r,e,f,h,k,l,m)}} -function Rd(a,b,c,d,e,f,h,k,l,m){if(Jd(a,b,h,k,l,c,d)&&Jd(a,b,h,k,l,e,f))0===m.length&&(m.push(a),m.push(b)),m.push(h),m.push(k);else{var n=(a+c)/2,p=(b+d)/2,q=(c+e)/2,r=(d+f)/2;e=(e+h)/2;f=(f+k)/2;d=(n+q)/2;c=(p+r)/2;var q=(q+e)/2,r=(r+f)/2,s=(d+q)/2,t=(c+r)/2;Rd(a,b,n,p,d,c,s,t,l,m);Rd(s,t,q,r,e,f,h,k,l,m)}} -function Sd(a,b,c,d,e,f,h,k,l,m,n,p,q,r){var s=1-l;a=a*s+c*l;b=b*s+d*l;c=c*s+e*l;d=d*s+f*l;e=e*s+h*l;f=f*s+k*l;k=a*s+c*l;h=b*s+d*l;c=c*s+e*l;d=d*s+f*l;m.x=a;m.y=b;n.x=k;n.y=h;p.x=k*s+c*l;p.y=h*s+d*l;q.x=c;q.y=d;r.x=e;r.y=f}function Td(a,b,c,d,e,f,h,k,l,m){if(Jd(a,b,e,f,m,c,d))return Jd(a,b,e,f,m,k,l);var n=(a+c)/2,p=(b+d)/2;c=(c+e)/2;d=(d+f)/2;var q=(n+c)/2,r=(p+d)/2;return Td(a,b,n,p,q,r,h,k,l,m)||Td(q,r,c,d,e,f,h,k,l,m)} -function Ud(a,b,c,d,e,f,h,k){if(Jd(a,b,e,f,h,c,d))ab(k,a,b,0,0),ab(k,e,f,0,0);else{var l=(a+c)/2,m=(b+d)/2;c=(c+e)/2;d=(d+f)/2;var n=(l+c)/2,p=(m+d)/2;Ud(a,b,l,m,n,p,h,k);Ud(n,p,c,d,e,f,h,k)}}function Vd(a,b,c,d,e,f,h,k){if(Jd(a,b,e,f,h,c,d))0===k.length&&(k.push(a),k.push(b)),k.push(e),k.push(f);else{var l=(a+c)/2,m=(b+d)/2;c=(c+e)/2;d=(d+f)/2;var n=(l+c)/2,p=(m+d)/2;Vd(a,b,l,m,n,p,h,k);Vd(n,p,c,d,e,f,h,k)}} -function Wd(a,b,c,d,e,f,h,k,l,m,n,p,q,r){0>=q&&(q=1E-6);if(Jd(a,b,h,k,q,c,d)&&Jd(a,b,h,k,q,e,f)){var s=(a-h)*(m-p)-(b-k)*(l-n);if(0===s)return!1;q=((a*k-b*h)*(l-n)-(a-h)*(l*p-m*n))/s;s=((a*k-b*h)*(m-p)-(b-k)*(l*p-m*n))/s;if((l>n?l-n:n-l)<(m>p?m-p:p-m)){if(h=l=0,bh)return!1}else if(ah)return!1;r.x=q;r.y=s;return!0}var s=(a+c)/2,t=(b+d)/2;c=(c+e)/2;d=(d+f)/2;e=(e+h)/2;f=(f+k)/2;var u=(s+c)/2,w=(t+d)/2;c=(c+e)/2;d=(d+f)/2;var x=(u+c)/2,z=(w+d)/2, -A=(n-l)*(n-l)+(p-m)*(p-m),H=!1;Wd(a,b,s,t,u,w,x,z,l,m,n,p,q,r)&&(b=(r.x-l)*(r.x-l)+(r.y-m)*(r.y-m),b=q&&(q=1E-6);if(Jd(a,b,h,k,q,c,d)&&Jd(a,b,h,k,q,e,f)){q=(a-h)*(m-p)-(b-k)*(l-n);if(0===q)return r;var s=((a*k-b*h)*(l-n)-(a-h)*(l*p-m*n))/q,t=((a*k-b*h)*(m-p)-(b-k)*(l*p-m*n))/q;if(s>=n)return r;if((l>n?l-n:n-l)<(m>p?m-p:p-m)){if(a=l=0,ba)return r}else if(aa)return r;0q&&r--}else{var s=(a+c)/2,t=(b+d)/2,u=(c+e)/2,w=(d+f)/2;e=(e+h)/2;f=(f+k)/2;d=(s+u)/2;c=(t+w)/2;var u=(u+e)/2,w=(w+f)/2, -x=(d+u)/2,z=(c+w)/2,r=r+Xd(a,b,s,t,d,c,x,z,l,m,n,p,q),r=r+Xd(x,z,u,w,e,f,h,k,l,m,n,p,q)}return r} -function Oa(a,b,c,d,e,f,h){if(Dc(a,c)){var k=0;c=0;bc)return h.x=a,h.y=c,!1;h.x=a;h.y=d;return!0}if(Dc(b,d)){ac)return h.x=c,h.y=b,!1;h.x=d;h.y=b;return!0}k=((a-e)*(a-c)+(b-f)*(b-d))/((c-a)*(c-a)+(d-b)*(d-b));if(-5E-6>k)return h.x=a,h.y=b,!1;if(1.000005c)return l.x=a,l.y=c,!1;l.x=a;l.y=f;return!0}h=(d-b)/(c-a);if(Dc(k,h))return Oa(a,b,c,d,e,f,l),!1;e=(h*a-k*e+f-b)/(h-k);if(Dc(h,0)){ac)return l.x=c,l.y=b,!1;l.x=e;l.y=b;return!0}f= -h*(e-a)+b;return Oa(a,b,c,d,e,f,l)}function Zd(a,b,c,d,e,f,h,k,l){var m=1E21,n=a,p=b;if(Yd(a,b,a,d,e,f,h,k,l)){var q=(l.x-e)*(l.x-e)+(l.y-f)*(l.y-f);qm} -function $d(a,b,c,d,e,f,h,k,l){c=a-c;var m=e-h,n=h=0;0===c||0===m?0===c?(k=(f-k)/m,h=a,n=k*h+(f-k*e)):(d=(b-d)/c,h=e,n=d*h+(b-d*a)):(d=(b-d)/c,k=(f-k)/m,a=b-d*a,h=(f-k*e-a)/(d-k),n=d*h+a);l.m(h,n);return l} +L.LeftSide=Hb=fb(new L(0,0,1,v.Nc),1).Ea();var Nb;L.RightSide=Nb=fb(new L(0,0,1,v.Xc),1).Ea();var Ob;L.BottomSide=Ob=fb(new L(0,0,1,v.Wc),1).Ea();var Pb;L.TopBottomSides=Pb=fb(new L(0,0,1,v.ed|v.Wc),1).Ea();var Tb;L.LeftRightSides=Tb=fb(new L(0,0,1,v.Nc|v.Xc),1).Ea();var Ub;L.TopLeftSides=Ub=fb(new L(0,0,1,v.ed|v.Nc),1).Ea();var Vb;L.TopRightSides=Vb=fb(new L(0,0,1,v.ed|v.Xc),1).Ea();var Zb;L.BottomLeftSides=Zb=fb(new L(0,0,1,v.Wc|v.Nc),1).Ea();var $b; +L.BottomRightSides=$b=fb(new L(0,0,1,v.Wc|v.Xc),1).Ea();var ac;L.NotTopSide=ac=fb(new L(0,0,1,v.Nc|v.Xc|v.Wc),1).Ea();var bc;L.NotLeftSide=bc=fb(new L(0,0,1,v.ed|v.Xc|v.Wc),1).Ea();var cc;L.NotRightSide=cc=fb(new L(0,0,1,v.ed|v.Nc|v.Wc),1).Ea();var dc;L.NotBottomSide=dc=fb(new L(0,0,1,v.ed|v.Nc|v.Xc),1).Ea();var ec;L.AllSides=ec=fb(new L(0,0,1,v.ed|v.Nc|v.Xc|v.Wc),1).Ea();function xc(){this.ef=[1,0,0,1,0,0]} +xc.prototype.copy=function(){var a=new xc;a.ef[0]=this.ef[0];a.ef[1]=this.ef[1];a.ef[2]=this.ef[2];a.ef[3]=this.ef[3];a.ef[4]=this.ef[4];a.ef[5]=this.ef[5];return a};function yc(a){this.type=a;this.r2=this.y2=this.x2=this.r1=this.y1=this.x1=0;this.pD=[];this.pattern=null}yc.prototype.addColorStop=function(a,b){this.pD.push({offset:a,color:b})}; +function zc(a,b,c){this.fillStyle="#000000";this.font="10px sans-serif";this.globalAlpha=1;this.lineCap="butt";this.Vm=0;this.lineJoin="miter";this.lineWidth=1;this.miterLimit=10;this.shadowBlur=0;this.shadowColor="rgba(0, 0, 0, 0)";this.shadowOffsetY=this.shadowOffsetX=0;this.strokeStyle="#000000";this.textAlign="start";this.pw=!1;this.og=this.os=this.ns=0;this.document=b||document;this.GD=c;this.Mw=null;this.path=[];this.Pi=new xc;this.stack=[];this.tf=[];this.vw=a;this.ZH="http://www.w3.org/2000/svg"; +this.width=this.vw.width;this.height=this.vw.height;this.Cl=Ac(this,"svg",{width:this.width+"px",height:this.height+"px",QK:"0 0 "+this.vw.width+" "+this.vw.height});this.Cl.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns","http://www.w3.org/2000/svg");this.Cl.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink");Bc(this,1,0,0,1,0,0);a=v.Il++;b=Ac(this,"clipPath",{id:"mainClip"+a});b.appendChild(Ac(this,"rect",{x:0,y:0,width:this.width,height:this.height})); +this.Cl.appendChild(b);this.tf[0].setAttributeNS(null,"clip-path","url(#mainClip"+a+")")}g=zc.prototype;g.arc=function(a,b,c,d,e,f){Cc(this,a,b,c,d,e,f)};g.beginPath=function(){this.path=[]};g.bezierCurveTo=function(a,b,c,d,e,f){this.path.push(["C",a,b,c,d,e,f])};g.clearRect=function(){};g.clip=function(){Dc(this,"clipPath",this.path,new xc)};g.closePath=function(){this.path.push(["z"])};g.createLinearGradient=function(a,b,c,d){var e=new yc("linear");e.x1=a;e.y1=b;e.x2=c;e.y2=d;return e}; +g.createPattern=function(a){var b=new yc("pattern");b.pattern=a;return b};g.createRadialGradient=function(a,b,c,d,e,f){var h=new yc("radial");h.x1=a;h.y1=b;h.r1=c;h.x2=d;h.y2=e;h.r2=f;return h}; +g.drawImage=function(a,b,c,d,e,f,h,k,l){var m="";a instanceof HTMLCanvasElement&&(m=a.toDataURL());a instanceof HTMLImageElement&&(m=a.src);m={x:0,y:0,width:a.naturalWidth,height:a.naturalHeight,href:m};m.preserveAspectRatio=Ec(d,k)&&Ec(e,l)?"xMidYMid slice":"none";var n="";k/=d;l/=e;if(0!==f||0!==h)n+=" translate("+f+", "+h+")";if(1!==k||1!==l)n+=" scale("+k+", "+l+")";if(0!==b||0!==c)n+=" translate("+-b+", "+-c+")";if(0!==b||0!==c||d!==a.naturalWidth||e!==a.naturalHeight)a="CLIP"+v.Il++,f=Ac(this, +"clipPath",{id:a}),f.appendChild(Ac(this,"rect",{x:b,y:c,width:d,height:e})),this.Cl.appendChild(f),m["clip-path"]="url(#"+a+")";Jc(this,"image",m,this.Pi,n);this.addElement("image",m)};g.fill=function(){Dc(this,"fill",this.path,this.Pi)};g.ug=function(){this.pw?this.clip():this.fill()};g.fillRect=function(a,b,c,d){Kc(this,"fill",[a,b,c,d],this.Pi)}; +g.fillText=function(a,b,c){a=[a,b,c];b=this.textAlign;"left"===b?b="start":"right"===b?b="end":"center"===b&&(b="middle");b={x:a[1],y:a[2],style:"font: "+this.font,"text-anchor":b};Jc(this,"fill",b,this.Pi);this.addElement("text",b,a[0])};g.lineTo=function(a,b){this.path.push(["L",a,b])};g.moveTo=function(a,b){this.path.push(["M",a,b])};g.quadraticCurveTo=function(a,b,c,d){this.path.push(["Q",a,b,c,d])};g.rect=function(a,b,c,d){this.path.push(["M",a,b],["L",a+c,b],["L",a+c,b+d],["L",a,b+d],["z"])}; +g.restore=function(){this.Pi=this.stack.pop();this.path=this.stack.pop();var a=this.stack.pop();this.fillStyle=a.fillStyle;this.font=a.font;this.globalAlpha=a.globalAlpha;this.lineCap=a.lineCap;this.Vm=a.Vm;this.lineJoin=a.lineJoin;this.lineWidth=a.lineWidth;this.miterLimit=a.miterLimit;this.shadowBlur=a.shadowBlur;this.shadowColor=a.shadowColor;this.shadowOffsetX=a.shadowOffsetX;this.shadowOffsetY=a.shadowOffsetY;this.strokeStyle=a.strokeStyle;this.textAlign=a.textAlign}; +g.save=function(){this.stack.push({fillStyle:this.fillStyle,font:this.font,globalAlpha:this.globalAlpha,lineCap:this.lineCap,Vm:this.Vm,lineJoin:this.lineJoin,lineWidth:this.lineWidth,miterLimit:this.miterLimit,shadowBlur:this.shadowBlur,shadowColor:this.shadowColor,shadowOffsetX:this.shadowOffsetX,shadowOffsetY:this.shadowOffsetY,strokeStyle:this.strokeStyle,textAlign:this.textAlign});for(var a=[],b=0;bb.offset?1:-1});for(k=0;k=2*Math.PI?(Cc(a,b,c,d,e,e+Math.PI,h),Cc(a,b,c,d,e+Math.PI,e+2*Math.PI,h),a.path.push(["M",l,f])):(b+=d*Math.cos(e),c+=d*Math.sin(e),k=180*k/Math.PI,e=h?0:1,h=180<=k===!!h?0:1,0!==a.path.length?a.path.push(["L",b,c]):a.path.push(["M",b,c]),a.path.push(["A",d,d,k,h,e,l,f]))}}function Bc(a,b,c,d,e,f,h){var k=new xc;k.ef=[b,c,d,e,f,h];b={};Jc(a,"g",b,k);k=a.addElement("g",b);a.tf.push(k)} +g.Ya=function(){if(0!==this.shadowOffsetX||0!==this.shadowOffsetY||0!==this.shadowBlur){var a="SHADOW"+v.Il++,b=this.addElement("filter",{id:a,x:"-100%",y:"-100%",width:"300%",height:"300%"},null),c,d,e,f,h;c=Ac(this,"feGaussianBlur",{"in":"SourceAlpha",result:"blur",GK:this.shadowBlur/2});d=Ac(this,"feFlood",{"in":"blur",result:"flood","flood-color":this.shadowColor});e=Ac(this,"feComposite",{"in":"flood",in2:"blur",operator:"in",result:"comp"});f=Ac(this,"feOffset",{"in":"comp",result:"offsetBlur", +dx:this.shadowOffsetX,dy:this.shadowOffsetY});h=Ac(this,"feMerge",{});h.appendChild(Ac(this,"feMergeNode",{"in":"offsetBlur"}));h.appendChild(Ac(this,"feMergeNode",{"in":"SourceGraphic"}));b.appendChild(c);b.appendChild(d);b.appendChild(e);b.appendChild(f);b.appendChild(h);0b?(this.scale(b/a,1),this.translate((a-b)/2,0)):b>a&&(this.scale(1,a/b),this.translate(0,(b-a)/2));this.rn?this.clip():this.fill();a>b?(this.translate(-(a-b)/2,0),this.scale(1/(b/a),1)):b>a&&(this.translate(0,-(b-a)/2),this.scale(1,1/(a/b)))}else this.rn?this.clip():this.fill()};g.bj=function(){this.rn||this.stroke()};v.defineProperty(Nc,{pw:"clipInsteadOfFill"},function(){return this.rn},function(a){this.rn=a});g=Nc.prototype; +g.rA=function(a,b,c){this.ns=a;this.os=b;this.og=c};g.cn=function(){this.shadowBlur=this.shadowOffsetY=this.shadowOffsetX=0};g.dn=function(){this.shadowOffsetX=this.ns;this.shadowOffsetY=this.os;this.shadowBlur=this.og};g.pz=function(a,b){var c=this.wa;if(void 0!==c.setLineDash)c.setLineDash(a),c.lineDashOffset=b;else if(void 0!==c.webkitLineDash)c.webkitLineDash=a,c.webkitLineDashOffset=b;else if(void 0!==c.mozDash)c.mozDash=a,c.mozDashOffset=b;else return!1;return!0}; +g.nz=function(){var a=this.wa;void 0!==a.setLineDash?(a.setLineDash(v.fj),a.lineDashOffset=0):void 0!==a.webkitLineDash?(a.webkitLineDash=v.fj,a.webkitLineDashOffset=0):void 0!==a.mozDash&&(a.mozDash=null,a.mozDashOffset=0)};function Wc(a,b){b&&(a.Jx="");a.Kx="";a.Ix=""} +var Xc=(Math.sqrt(2)-1)/3*4,Yc=(new z(0,0)).Ea(),Zc=(new B(0,0,0,0)).Ea(),$c=(new eb(0,0,0,0)).Ea(),id=(new eb(2,2,2,2)).Ea(),jd=(new z(6,6)).Ea(),kd=(new z(-Infinity,-Infinity)).Ea(),ld=(new z(Infinity,Infinity)).Ea(),md=(new ia(0,0)).Ea(),nd=(new ia(1,1)).Ea(),od=(new ia(6,6)).Ea(),pd=(new ia(8,8)).Ea(),qd=(new ia(10,10)).Ea(),Ad=(new ia(Infinity,Infinity)).Ea(),Bd=(new z(NaN,NaN)).Ea(),Cd=(new ia(NaN,NaN)).Ea(),Dd=(new B(NaN,NaN,NaN,NaN)).Ea(),Ed=(new L(.156,.156)).Ea(),Fd=(new L(.844,.844)).Ea(), +Gd=new ta,Hd=new ta,Id=null;function Jd(a){if(0>=a)return 0;var b=Id;if(null===b){for(var b=[],c=0;2E3>=c;c++)b[c]=Math.sqrt(c);Id=b}return 1>a?(c=1/a,2E3>=c?1/b[c|0]:Math.sqrt(a)):2E3>=a?b[a|0]:Math.sqrt(a)}function K(a,b){var c=a-b;return.5>c&&-.5c&&-5E-8=e&&(e=1E-6);var k=0,l=0,m=0,n=0;am-n)if(a-c>e||c-a>e){if(f=(d-b)/(c-a)*(f-a)+b,f-e<=h&&h<=f+e)return!0}else return!0;else if(b-d>e||d-b>e){if(h=(c-a)/(d-b)*(h-b)+a,h-e<=f&&f<=h+e)return!0}else return!0;return!1} +function Qd(a,b,c,d,e,f,h,k,l,m,n,p){if(Kd(a,b,h,k,p,c,d)&&Kd(a,b,h,k,p,e,f))return Kd(a,b,h,k,p,m,n);var q=(a+c)/2,r=(b+d)/2,s=(c+e)/2,t=(d+f)/2;e=(e+h)/2;f=(f+k)/2;d=(q+s)/2;c=(r+t)/2;var s=(s+e)/2,t=(t+f)/2,u=(d+s)/2,y=(c+t)/2;return Qd(a,b,q,r,d,c,u,y,l,m,n,p)||Qd(u,y,s,t,e,f,h,k,l,m,n,p)} +function Rd(a,b,c,d,e,f,h,k,l,m){if(Kd(a,b,h,k,l,c,d)&&Kd(a,b,h,k,l,e,f))ab(m,a,b,0,0),ab(m,h,k,0,0);else{var n=(a+c)/2,p=(b+d)/2,q=(c+e)/2,r=(d+f)/2;e=(e+h)/2;f=(f+k)/2;d=(n+q)/2;c=(p+r)/2;var q=(q+e)/2,r=(r+f)/2,s=(d+q)/2,t=(c+r)/2;Rd(a,b,n,p,d,c,s,t,l,m);Rd(s,t,q,r,e,f,h,k,l,m)}} +function Sd(a,b,c,d,e,f,h,k,l,m){if(Kd(a,b,h,k,l,c,d)&&Kd(a,b,h,k,l,e,f))0===m.length&&(m.push(a),m.push(b)),m.push(h),m.push(k);else{var n=(a+c)/2,p=(b+d)/2,q=(c+e)/2,r=(d+f)/2;e=(e+h)/2;f=(f+k)/2;d=(n+q)/2;c=(p+r)/2;var q=(q+e)/2,r=(r+f)/2,s=(d+q)/2,t=(c+r)/2;Sd(a,b,n,p,d,c,s,t,l,m);Sd(s,t,q,r,e,f,h,k,l,m)}} +function Td(a,b,c,d,e,f,h,k,l,m,n,p,q,r){var s=1-l;a=a*s+c*l;b=b*s+d*l;c=c*s+e*l;d=d*s+f*l;e=e*s+h*l;f=f*s+k*l;k=a*s+c*l;h=b*s+d*l;c=c*s+e*l;d=d*s+f*l;m.x=a;m.y=b;n.x=k;n.y=h;p.x=k*s+c*l;p.y=h*s+d*l;q.x=c;q.y=d;r.x=e;r.y=f}function Ud(a,b,c,d,e,f,h,k,l,m){if(Kd(a,b,e,f,m,c,d))return Kd(a,b,e,f,m,k,l);var n=(a+c)/2,p=(b+d)/2;c=(c+e)/2;d=(d+f)/2;var q=(n+c)/2,r=(p+d)/2;return Ud(a,b,n,p,q,r,h,k,l,m)||Ud(q,r,c,d,e,f,h,k,l,m)} +function Vd(a,b,c,d,e,f,h,k){if(Kd(a,b,e,f,h,c,d))ab(k,a,b,0,0),ab(k,e,f,0,0);else{var l=(a+c)/2,m=(b+d)/2;c=(c+e)/2;d=(d+f)/2;var n=(l+c)/2,p=(m+d)/2;Vd(a,b,l,m,n,p,h,k);Vd(n,p,c,d,e,f,h,k)}}function Wd(a,b,c,d,e,f,h,k){if(Kd(a,b,e,f,h,c,d))0===k.length&&(k.push(a),k.push(b)),k.push(e),k.push(f);else{var l=(a+c)/2,m=(b+d)/2;c=(c+e)/2;d=(d+f)/2;var n=(l+c)/2,p=(m+d)/2;Wd(a,b,l,m,n,p,h,k);Wd(n,p,c,d,e,f,h,k)}} +function Xd(a,b,c,d,e,f,h,k,l,m,n,p,q,r){0>=q&&(q=1E-6);if(Kd(a,b,h,k,q,c,d)&&Kd(a,b,h,k,q,e,f)){var s=(a-h)*(m-p)-(b-k)*(l-n);if(0===s)return!1;q=((a*k-b*h)*(l-n)-(a-h)*(l*p-m*n))/s;s=((a*k-b*h)*(m-p)-(b-k)*(l*p-m*n))/s;if((l>n?l-n:n-l)<(m>p?m-p:p-m)){if(h=l=0,bh)return!1}else if(ah)return!1;r.x=q;r.y=s;return!0}var s=(a+c)/2,t=(b+d)/2;c=(c+e)/2;d=(d+f)/2;e=(e+h)/2;f=(f+k)/2;var u=(s+c)/2,y=(t+d)/2;c=(c+e)/2;d=(d+f)/2;var w=(u+c)/2,x=(y+d)/2, +A=(n-l)*(n-l)+(p-m)*(p-m),H=!1;Xd(a,b,s,t,u,y,w,x,l,m,n,p,q,r)&&(b=(r.x-l)*(r.x-l)+(r.y-m)*(r.y-m),b=q&&(q=1E-6);if(Kd(a,b,h,k,q,c,d)&&Kd(a,b,h,k,q,e,f)){q=(a-h)*(m-p)-(b-k)*(l-n);if(0===q)return r;var s=((a*k-b*h)*(l-n)-(a-h)*(l*p-m*n))/q,t=((a*k-b*h)*(m-p)-(b-k)*(l*p-m*n))/q;if(s>=n)return r;if((l>n?l-n:n-l)<(m>p?m-p:p-m)){if(a=l=0,ba)return r}else if(aa)return r;0q&&r--}else{var s=(a+c)/2,t=(b+d)/2,u=(c+e)/2,y=(d+f)/2;e=(e+h)/2;f=(f+k)/2;d=(s+u)/2;c=(t+y)/2;var u=(u+e)/2,y=(y+f)/2, +w=(d+u)/2,x=(c+y)/2,r=r+Yd(a,b,s,t,d,c,w,x,l,m,n,p,q),r=r+Yd(w,x,u,y,e,f,h,k,l,m,n,p,q)}return r} +function Oa(a,b,c,d,e,f,h){if(Ec(a,c)){var k=0;c=0;bc)return h.x=a,h.y=c,!1;h.x=a;h.y=d;return!0}if(Ec(b,d)){ac)return h.x=c,h.y=b,!1;h.x=d;h.y=b;return!0}k=((a-e)*(a-c)+(b-f)*(b-d))/((c-a)*(c-a)+(d-b)*(d-b));if(-5E-6>k)return h.x=a,h.y=b,!1;if(1.000005c)return l.x=a,l.y=c,!1;l.x=a;l.y=f;return!0}h=(d-b)/(c-a);if(Ec(k,h))return Oa(a,b,c,d,e,f,l),!1;e=(h*a-k*e+f-b)/(h-k);if(Ec(h,0)){ac)return l.x=c,l.y=b,!1;l.x=e;l.y=b;return!0}f= +h*(e-a)+b;return Oa(a,b,c,d,e,f,l)}function $d(a,b,c,d,e,f,h,k,l){var m=1E21,n=a,p=b;if(Zd(a,b,a,d,e,f,h,k,l)){var q=(l.x-e)*(l.x-e)+(l.y-f)*(l.y-f);qm} +function ae(a,b,c,d,e,f,h,k,l){c=a-c;var m=e-h,n=h=0;0===c||0===m?0===c?(k=(f-k)/m,h=a,n=k*h+(f-k*e)):(d=(b-d)/c,h=e,n=d*h+(b-d*a)):(d=(b-d)/c,k=(f-k)/m,a=b-d*a,h=(f-k*e-a)/(d-k),n=d*h+a);l.m(h,n);return l} function ke(a,b,c){var d=b.x,e=b.y,f=c.x,h=c.y,k=a.left,l=a.right,m=a.top,n=a.bottom;return d===f?(f=a=0,e=m):e===h?(d=k):a.Fa(b)||a.Fa(c)||le(k,m,l,m,d,e,f,h)||le(l,m,l,n,d,e,f,h)||le(l,n,k,n,d,e,f,h)||le(k,n,k,m,d,e,f,h)?!0:!1}function le(a,b,c,d,e,f,h,k){return 0>=me(a,b,c,d,e,f)*me(a,b,c,d,h,k)&&0>=me(e,f,h,k,a,b)*me(e,f,h,k,c,d)} function me(a,b,c,d,e,f){c-=a;d-=b;a=e-a;b=f-b;f=a*d-b*c;0===f&&(f=a*c+b*d,0f&&(f=0)));return 0>f?-1:0a&&(a+=360);360<=a&&(a-=360);return a} function oe(a,b,c,d){var e=Math.PI;d||(b*=e/180,c*=e/180);d=bc,f=0>d,h=0,k=h=0;af;++f){m=.5*(d+e);if(m===d||m===e)break;k=l/(m+b);h=c/(m+a);k=k*k+h*h-1;if(0k)e=m;else break}n=b*n/(m+b)-n;p=a*p/(m+a)-p;a=Math.sqrt(n*n+p*p)}else a=Math.abs(p-m);else p=l*l-m*m,a=l*n,aa?"M"+this.za.toString()+" "+this.xa.toString()+"L"+this.I.toString()+" "+this.J.toString():"M"+this.za.toFixed(a)+" "+this.xa.toFixed(a)+"L"+this.I.toFixed(a)+" "+this.J.toFixed(a);case He:var b=new B(this.za,this.xa,0,0);b.mF(this.I,this.J,0,0);return 0>a?"M"+b.x.toString()+" "+b.y.toString()+"H"+b.right.toString()+"V"+b.bottom.toString()+"H"+b.left.toString()+"z":"M"+b.x.toFixed(a)+" "+b.y.toFixed(a)+"H"+b.right.toFixed(a)+ -"V"+b.bottom.toFixed(a)+"H"+b.left.toFixed(a)+"z";case Ie:b=new B(this.za,this.xa,0,0);b.mF(this.I,this.J,0,0);if(0>a){var c=b.left.toString()+" "+(b.y+b.height/2).toString(),d=b.right.toString()+" "+(b.y+b.height/2).toString();return"M"+c+"A"+(b.width/2).toString()+" "+(b.height/2).toString()+" 0 0 1 "+d+"A"+(b.width/2).toString()+" "+(b.height/2).toString()+" 0 0 1 "+c}c=b.left.toFixed(a)+" "+(b.y+b.height/2).toFixed(a);d=b.right.toFixed(a)+" "+(b.y+b.height/2).toFixed(a);return"M"+c+"A"+(b.width/ -2).toFixed(a)+" "+(b.height/2).toFixed(a)+" 0 0 1 "+d+"A"+(b.width/2).toFixed(a)+" "+(b.height/2).toFixed(a)+" 0 0 1 "+c;case De:for(var b="",c=this.Ub.n,d=c.length,e=0;e=t-1?!0:null!==l[m+1].match(/[A-Za-z]/)}function d(){m++;return l[m]}function e(){var a=new y(parseFloat(d()),parseFloat(d()));n===n.toLowerCase()&&(a.x=s.x+a.x,a.y=s.y+a.y);return a}function f(){return s=e()}function h(){return r=e()}function k(){return"c"!==p.toLowerCase()&&"s"!==p.toLowerCase()?s:new y(2*s.x-r.x,2*s.y-r.y)}void 0===b&&(b=!1);"string"!==typeof a&&v.Gd(a,"string",re,"parse:str");a=a.replace(/,/gm," ");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm, -"$1 $2");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm,"$1 $2");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([^\s])/gm,"$1 $2");a=a.replace(/([^\s])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm,"$1 $2");a=a.replace(/([0-9])([+\-])/gm,"$1 $2");a=a.replace(/(\.[0-9]*)(\.)/gm,"$1 $2");a=a.replace(/([Aa](\s+[0-9]+){3})\s+([01])\s*([01])/gm,"$1 $3 $4 ");a=a.replace(/[\s\r\t\n]+/gm," ");a=a.replace(/^\s+|\s+$/g,"");for(var l=a.split(" "),m=-1,n="",p="",q=new y(0,0),r=new y(0,0),s=new y(0, -0),t=l.length,u=v.s(),w=!1,x=!1,z=!0;!(m>=t-1);)if(p=n,n=d(),""!==n)switch(n.toUpperCase()){case "X":z=!0;x=w=!1;break;case "M":var A=f();null===u.Rb||!0===z?(N(u,A.x,A.y,w,!1,!x),z=!1):u.moveTo(A.x,A.y);for(q=s;!c();)A=f(),u.lineTo(A.x,A.y);break;case "L":for(;!c();)A=f(),u.lineTo(A.x,A.y);break;case "H":for(;!c();)s=A=new y((n===n.toLowerCase()?s.x:0)+parseFloat(d()),s.y),u.lineTo(s.x,s.y);break;case "V":for(;!c();)s=A=new y(s.x,(n===n.toLowerCase()?s.y:0)+parseFloat(d())),u.lineTo(s.x,s.y);break; +re.prototype.equalsApprox=re.prototype.Fc=function(a){if(!(a instanceof re))return!1;if(this.type!==a.type)return this.type===Ge&&a.type===De?Ze(this,a):a.type===Ge&&this.type===De?Ze(a,this):!1;if(this.type===De){var b=this.Ub.n;a=a.Ub.n;var c=b.length;if(c!==a.length)return!1;for(var d=0;da?"M"+this.Aa.toString()+" "+this.ya.toString()+"L"+this.I.toString()+" "+this.J.toString():"M"+this.Aa.toFixed(a)+" "+this.ya.toFixed(a)+"L"+this.I.toFixed(a)+" "+this.J.toFixed(a);case He:var b=new B(this.Aa,this.ya,0,0);b.pF(this.I,this.J,0,0);return 0>a?"M"+b.x.toString()+" "+b.y.toString()+"H"+b.right.toString()+"V"+b.bottom.toString()+"H"+b.left.toString()+"z":"M"+b.x.toFixed(a)+" "+b.y.toFixed(a)+"H"+b.right.toFixed(a)+ +"V"+b.bottom.toFixed(a)+"H"+b.left.toFixed(a)+"z";case Ie:b=new B(this.Aa,this.ya,0,0);b.pF(this.I,this.J,0,0);if(0>a){var c=b.left.toString()+" "+(b.y+b.height/2).toString(),d=b.right.toString()+" "+(b.y+b.height/2).toString();return"M"+c+"A"+(b.width/2).toString()+" "+(b.height/2).toString()+" 0 0 1 "+d+"A"+(b.width/2).toString()+" "+(b.height/2).toString()+" 0 0 1 "+c}c=b.left.toFixed(a)+" "+(b.y+b.height/2).toFixed(a);d=b.right.toFixed(a)+" "+(b.y+b.height/2).toFixed(a);return"M"+c+"A"+(b.width/ +2).toFixed(a)+" "+(b.height/2).toFixed(a)+" 0 0 1 "+d+"A"+(b.width/2).toFixed(a)+" "+(b.height/2).toFixed(a)+" 0 0 1 "+c;case De:for(var b="",c=this.Ub.n,d=c.length,e=0;e=t-1?!0:null!==l[m+1].match(/[A-Za-z]/)}function d(){m++;return l[m]}function e(){var a=new z(parseFloat(d()),parseFloat(d()));n===n.toLowerCase()&&(a.x=s.x+a.x,a.y=s.y+a.y);return a}function f(){return s=e()}function h(){return r=e()}function k(){return"c"!==p.toLowerCase()&&"s"!==p.toLowerCase()?s:new z(2*s.x-r.x,2*s.y-r.y)}void 0===b&&(b=!1);"string"!==typeof a&&v.Ed(a,"string",re,"parse:str");a=a.replace(/,/gm," ");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm, +"$1 $2");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm,"$1 $2");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([^\s])/gm,"$1 $2");a=a.replace(/([^\s])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm,"$1 $2");a=a.replace(/([0-9])([+\-])/gm,"$1 $2");a=a.replace(/(\.[0-9]*)(\.)/gm,"$1 $2");a=a.replace(/([Aa](\s+[0-9]+){3})\s+([01])\s*([01])/gm,"$1 $3 $4 ");a=a.replace(/[\s\r\t\n]+/gm," ");a=a.replace(/^\s+|\s+$/g,"");for(var l=a.split(" "),m=-1,n="",p="",q=new z(0,0),r=new z(0,0),s=new z(0, +0),t=l.length,u=v.s(),y=!1,w=!1,x=!0;!(m>=t-1);)if(p=n,n=d(),""!==n)switch(n.toUpperCase()){case "X":x=!0;w=y=!1;break;case "M":var A=f();null===u.Rb||!0===x?(N(u,A.x,A.y,y,!1,!w),x=!1):u.moveTo(A.x,A.y);for(q=s;!c();)A=f(),u.lineTo(A.x,A.y);break;case "L":for(;!c();)A=f(),u.lineTo(A.x,A.y);break;case "H":for(;!c();)s=A=new z((n===n.toLowerCase()?s.x:0)+parseFloat(d()),s.y),u.lineTo(s.x,s.y);break;case "V":for(;!c();)s=A=new z(s.x,(n===n.toLowerCase()?s.y:0)+parseFloat(d())),u.lineTo(s.x,s.y);break; case "C":for(;!c();){var H=e(),C=h(),A=f();O(u,H.x,H.y,C.x,C.y,A.x,A.y)}break;case "S":for(;!c();)H=k(),C=h(),A=f(),O(u,H.x,H.y,C.x,C.y,A.x,A.y);break;case "Q":for(;!c();)C=h(),A=f(),cf(u,C.x,C.y,A.x,A.y);break;case "T":for(;!c();)r=C=k(),A=f(),cf(u,C.x,C.y,A.x,A.y);break;case "B":for(;!c();){var A=parseFloat(d()),H=parseFloat(d()),C=parseFloat(d()),T=parseFloat(d()),ba=parseFloat(d()),U=ba,M=!1;c()||(U=parseFloat(d()),c()||(M=0!==parseFloat(d())));n===n.toLowerCase()&&(C+=s.x,T+=s.y);u.arcTo(A,H, -C,T,ba,U,M)}break;case "A":for(;!c();)H=Math.abs(parseFloat(d())),C=Math.abs(parseFloat(d())),T=parseFloat(d()),ba=!!parseFloat(d()),U=!!parseFloat(d()),A=f(),df(u,H,C,T,ba,U,A.x,A.y);break;case "Z":A=u.o.Ub.n[u.o.Ub.length-1];P(u);s=q;break;case "F":A="";for(H=1;l[m+H];)if(null!==l[m+H].match(/[Uu]/))H++;else if(null===l[m+H].match(/[A-Za-z]/))H++;else{A=l[m+H];break}A.match(/[Mm]/)?w=!0:ef(u);break;case "U":A="";for(H=1;l[m+H];)if(null!==l[m+H].match(/[Ff]/))H++;else if(null===l[m+H].match(/[A-Za-z]/))H++; -else{A=l[m+H];break}A.match(/[Mm]/)?x=!0:u.Ya(!1)}q=u.o;v.q(u);if(b)for(u=q.Ub.i;u.next();)A=u.value,A.tt=!0;return q};function ff(a,b){for(var c=a.length,d=v.L(),e=0;eh&&(h+=360),s.ye+=h);0>a&&(s.ye=180-s.ye,s.Bf=-s.Bf);0>d&&(s.ye=-s.ye,s.Bf=-s.Bf);s.radiusX*=Math.sqrt(a*a+c*c);void 0!==s.radiusY&&(s.radiusY*=Math.sqrt(b*b+d*d));break;case mf:h=s.I;k=s.J;s.I=h* -a+k*c+e;s.J=h*b+k*d+f;0!==b&&(h=180*Math.atan2(b,a)/Math.PI,0>h&&(h+=360),s.fj+=h);0>a&&(s.fj=180-s.fj,s.sl=!s.sl);0>d&&(s.fj=-s.fj,s.sl=!s.sl);s.radiusX*=Math.sqrt(a*a+c*c);s.radiusY*=Math.sqrt(b*b+d*d);break;default:v.k("Unknown Segment type: "+s.type)}}}}this.$a=!0;return this}; -re.prototype.Fa=function(a,b,c,d){var e=a.x,f=a.y,h=this.mb.x-20;a=a.y;for(var k=0,l=0,m=0,n=0,p=0,q=0,r=this.Ub.n,s=r.length,t=0;t=a)return 0;if((e>h?e-h:h-e)<(f>k?f-k:k-f)){if(e=a=0,fe)return 0}else if(ee)return 0;return 0a||1a)return n=(a-q)/p,v.sa(c),new y(b+(e-b)*n,d+(f-d)*n);q+=p}b=e;d=f}v.sa(c);return null};v.defineProperty(re,{type:"type"},function(){return this.ia},function(a){this.ia!==a&&(this.D&&v.ka(this,a),this.ia=a,this.$a=!0)});v.defineProperty(re,{za:"startX"},function(){return this.vc},function(a){this.vc!==a&&(this.D&&v.ka(this,a),this.vc=a,this.$a=!0)}); -v.defineProperty(re,{xa:"startY"},function(){return this.Cc},function(a){this.Cc!==a&&(this.D&&v.ka(this,a),this.Cc=a,this.$a=!0)});v.defineProperty(re,{I:"endX"},function(){return this.vb},function(a){this.vb!==a&&(this.D&&v.ka(this,a),this.vb=a,this.$a=!0)});v.defineProperty(re,{J:"endY"},function(){return this.Bb},function(a){this.Bb!==a&&(this.D&&v.ka(this,a),this.Bb=a,this.$a=!0)}); -v.defineProperty(re,{Ub:"figures"},function(){return this.kj},function(a){this.kj!==a&&(this.D&&v.ka(this,a),this.kj=a,this.$a=!0)});re.prototype.add=re.prototype.add=function(a){this.kj.add(a);return this};re.prototype.setSpots=function(a,b,c,d,e,f,h,k){this.D&&v.ka(this);this.Ph=(new L(a,b,e,f)).freeze();this.Qh=(new L(c,d,h,k)).freeze();return this};v.defineProperty(re,{B:"spot1"},function(){return this.Ph},function(a){this.D&&v.ka(this,a);this.Ph=a.R()}); -v.defineProperty(re,{C:"spot2"},function(){return this.Qh},function(a){this.D&&v.ka(this,a);this.Qh=a.R()});v.defineProperty(re,{Od:"defaultStretch"},function(){return this.oi},function(a){this.D&&v.ka(this,a);this.oi=a});v.u(re,{mb:"bounds"},function(){this.Dz()&&(this.yA(),this.ah());return this.Bu});function Ee(a,b,c,d){v.ec(this);this.D=!1;void 0===c&&(c=!0);this.Tl=c;void 0===d&&(d=!0);this.Wn=d;this.vc=void 0!==a?a:0;this.Cc=void 0!==b?b:0;this.so=new I(wf);this.Qv=this.so.F;this.$a=!0} -v.ea("PathFigure",Ee);v.Wh(Ee);Ee.prototype.copy=function(){var a=new Ee;a.Tl=this.Tl;a.Wn=this.Wn;a.vc=this.vc;a.Cc=this.Cc;for(var b=this.so.n,c=b.length,d=a.so,e=0;ea?"M"+this.za.toString()+" "+this.xa.toString():"M"+this.za.toFixed(a)+" "+this.xa.toFixed(a),c=this.sb.n,d=c.length,e=0;ea&&(a+=360),this.td=a,this.Ge=0,this.Yg=Math.max(d,0),this.og=Math.max(e,0),this.ao="boolean"===typeof h?!!h:!1,this.sn=!!k):(this.td=d,this.Ge=e,a===lf&&(f=Math.max(f,0)),this.Yg=f,"number"===typeof h?(a===lf&&(h=Math.max(h,0)),this.og=h):this.og=0,this.sn=this.ao=!1);this.Eh=!1;this.$a= -!0;this.dg=null}v.ea("PathSegment",wf);v.Wh(wf);wf.prototype.copy=function(){var a=new wf;a.ia=this.ia;a.vb=this.vb;a.Bb=this.Bb;a.td=this.td;a.Ge=this.Ge;a.Yg=this.Yg;a.og=this.og;a.ao=this.ao;a.sn=this.sn;a.Eh=this.Eh;a.$a=this.$a;return a}; -wf.prototype.equalsApprox=wf.prototype.Fc=function(a){if(!(a instanceof wf)||this.type!==a.type||this.Fw!==a.Fw)return!1;switch(this.type){case hf:case $e:return K(this.I,a.I)&&K(this.J,a.J);case jf:return K(this.I,a.I)&&K(this.J,a.J)&&K(this.rc,a.rc)&&K(this.Kc,a.Kc)&&K(this.lh,a.lh)&&K(this.mh,a.mh);case kf:return K(this.I,a.I)&&K(this.J,a.J)&&K(this.rc,a.rc)&&K(this.Kc,a.Kc);case lf:return K(this.ye,a.ye)&&K(this.Bf,a.Bf)&&K(this.na,a.na)&&K(this.ua,a.ua)&&K(this.radiusX,a.radiusX)&&K(this.radiusY, -a.radiusY);case mf:return this.sl===a.sl&&this.Iw===a.Iw&&K(this.fj,a.fj)&&K(this.I,a.I)&&K(this.J,a.J)&&K(this.radiusX,a.radiusX)&&K(this.radiusY,a.radiusY);default:return!1}}; -wf.prototype.toString=function(a){void 0===a&&(a=-1);var b="";switch(this.type){case hf:b=0>a?"M"+this.I.toString()+" "+this.J.toString():"M"+this.I.toFixed(a)+" "+this.J.toFixed(a);break;case $e:b=0>a?"L"+this.I.toString()+" "+this.J.toString():"L"+this.I.toFixed(a)+" "+this.J.toFixed(a);break;case jf:b=0>a?"C"+this.rc.toString()+" "+this.Kc.toString()+" "+this.lh.toString()+" "+this.mh.toString()+" "+this.I.toString()+" "+this.J.toString():"C"+this.rc.toFixed(a)+" "+this.Kc.toFixed(a)+" "+this.lh.toFixed(a)+ -" "+this.mh.toFixed(a)+" "+this.I.toFixed(a)+" "+this.J.toFixed(a);break;case kf:b=0>a?"Q"+this.rc.toString()+" "+this.Kc.toString()+" "+this.I.toString()+" "+this.J.toString():"Q"+this.rc.toFixed(a)+" "+this.Kc.toFixed(a)+" "+this.I.toFixed(a)+" "+this.J.toFixed(a);break;case lf:b=0>a?"B"+this.ye.toString()+" "+this.Bf.toString()+" "+this.na.toString()+" "+this.ua.toString()+" "+this.radiusX:"B"+this.ye.toFixed(a)+" "+this.Bf.toFixed(a)+" "+this.na.toFixed(a)+" "+this.ua.toFixed(a)+" "+this.radiusX; -break;case mf:b=0>a?"A"+this.radiusX.toString()+" "+this.radiusY.toString()+" "+this.fj.toString()+" "+(this.Iw?1:0)+" "+(this.sl?1:0)+" "+this.I.toString()+" "+this.J.toString():"A"+this.radiusX.toFixed(a)+" "+this.radiusY.toFixed(a)+" "+this.fj.toFixed(a)+" "+(this.Iw?1:0)+" "+(this.sl?1:0)+" "+this.I.toFixed(a)+" "+this.J.toFixed(a);break;default:b=this.type.toString()}return b+(this.Eh?"z":"")};var hf;wf.Move=hf=v.p(wf,"Move",0);var $e;wf.Line=$e=v.p(wf,"Line",1);var jf; -wf.Bezier=jf=v.p(wf,"Bezier",2);var kf;wf.QuadraticBezier=kf=v.p(wf,"QuadraticBezier",3);var lf;wf.Arc=lf=v.p(wf,"Arc",4);var mf;wf.SvgArc=mf=v.p(wf,"SvgArc",4);wf.prototype.freeze=function(){this.D=!0;return this};wf.prototype.Oa=function(){this.D=!1;return this};wf.prototype.close=wf.prototype.close=function(){this.Eh=!0;return this}; -function nf(a,b){if(null!==a.dg&&!1===b.$a)return a.dg;var c=a.radiusX,d=a.radiusY;void 0===d&&(d=c);if(0===c||0===d)return a.dg=[],a.dg;var e=a.td,f=a.Ge,h=oe(c=r?h=Math.PI:1<=r&&(h=0);!l&&0h&&(h+=2*Math.PI);l=b>f?1:b/f;r=b>f?f/b:1;b=oe(b>f?b:f,n,n+h,!0);f=v.qh();f.reset();f.translate(c,d);f.rotate(a.td,0,0);f.scale(l,r);ff(b,f);v.$e(f);a.dg=b;return a.dg} -v.defineProperty(wf,{Fw:"isClosed"},function(){return this.Eh},function(a){this.Eh!==a&&(this.Eh=a,this.$a=!0)});v.defineProperty(wf,{type:"type"},function(){return this.ia},function(a){this.D&&v.ka(this,a);this.ia=a;this.$a=!0});v.defineProperty(wf,{I:"endX"},function(){return this.vb},function(a){this.D&&v.ka(this,a);this.vb=a;this.$a=!0});v.defineProperty(wf,{J:"endY"},function(){return this.Bb},function(a){this.D&&v.ka(this,a);this.Bb=a;this.$a=!0}); -v.defineProperty(wf,{rc:"point1X"},function(){return this.td},function(a){this.D&&v.ka(this,a);this.td=a;this.$a=!0});v.defineProperty(wf,{Kc:"point1Y"},function(){return this.Ge},function(a){this.D&&v.ka(this,a);this.Ge=a;this.$a=!0});v.defineProperty(wf,{lh:"point2X"},function(){return this.Yg},function(a){this.D&&v.ka(this,a);this.Yg=a;this.$a=!0});v.defineProperty(wf,{mh:"point2Y"},function(){return this.og},function(a){this.D&&v.ka(this,a);this.og=a;this.$a=!0}); -v.defineProperty(wf,{na:"centerX"},function(){return this.td},function(a){this.D&&v.ka(this,a);this.td=a;this.$a=!0});v.defineProperty(wf,{ua:"centerY"},function(){return this.Ge},function(a){this.D&&v.ka(this,a);this.Ge=a;this.$a=!0});v.defineProperty(wf,{radiusX:"radiusX"},function(){return this.Yg},function(a){0>a&&v.va(a,">= zero",wf,"radiusX");this.D&&v.ka(this,a);this.Yg=a;this.$a=!0}); -v.defineProperty(wf,{radiusY:"radiusY"},function(){return this.og},function(a){0>a&&v.va(a,">= zero",wf,"radiusY");this.D&&v.ka(this,a);this.og=a;this.$a=!0});v.defineProperty(wf,{ye:"startAngle"},function(){return this.vb},function(a){this.vb!==a&&(this.D&&v.ka(this,a),a%=360,0>a&&(a+=360),this.vb=a,this.$a=!0)});v.defineProperty(wf,{Bf:"sweepAngle"},function(){return this.Bb},function(a){this.D&&v.ka(this,a);360a&&(a=-360);this.Bb=a;this.$a=!0}); -v.defineProperty(wf,{sl:"isClockwiseArc"},function(){return this.sn},function(a){this.D&&v.ka(this,a);this.sn=a;this.$a=!0});v.defineProperty(wf,{Iw:"isLargeArc"},function(){return this.ao},function(a){this.D&&v.ka(this,a);this.ao=a;this.$a=!0});v.defineProperty(wf,{fj:"xAxisRotation"},function(){return this.td},function(a){a%=360;0>a&&(a+=360);this.D&&v.ka(this,a);this.td=a;this.$a=!0}); -function xf(){this.W=null;this.Qy=(new y(0,0)).freeze();this.Vx=(new y(0,0)).freeze();this.xu=this.tv=0;this.yu=1;this.iv="";this.$v=this.Ou=!1;this.Ku=this.Au=0;this.gj=this.Wu=this.fv=!1;this.Eq=null;this.Yv=0;this.qg=this.Xv=null}v.ea("InputEvent",xf); -xf.prototype.copy=function(){var a=new xf;a.W=this.W;a.Qy.assign(this.jf);a.Vx.assign(this.ca);a.tv=this.tv;a.xu=this.xu;a.yu=this.yu;a.iv=this.iv;a.Ou=this.Ou;a.$v=this.$v;a.Au=this.Au;a.Ku=this.Ku;a.fv=this.fv;a.Wu=this.Wu;a.gj=this.gj;a.Eq=this.Eq;a.Yv=this.Yv;a.Xv=this.Xv;a.qg=this.qg;return a}; -xf.prototype.toString=function(){var a="^";0!==this.pd&&(a+="M:"+this.pd);0!==this.button&&(a+="B:"+this.button);""!==this.key&&(a+="K:"+this.key);0!==this.We&&(a+="C:"+this.We);0!==this.gl&&(a+="D:"+this.gl);this.zc&&(a+="h");this.bubbles&&(a+="b");null!==this.ca&&(a+="@"+this.ca.toString());return a};v.defineProperty(xf,{g:"diagram"},function(){return this.W},function(a){this.W=a});v.defineProperty(xf,{jf:"viewPoint"},function(){return this.Qy},function(a){v.A(a,y,xf,"viewPoint");this.Qy.assign(a)}); -v.defineProperty(xf,{ca:"documentPoint"},function(){return this.Vx},function(a){v.A(a,y,xf,"documentPoint");this.Vx.assign(a)});v.defineProperty(xf,{pd:"modifiers"},function(){return this.tv},function(a){this.tv=a});v.defineProperty(xf,{button:"button"},function(){return this.xu},function(a){this.xu=a;if(null===this.event)switch(a){case 0:this.buttons=1;break;case 1:this.buttons=4;break;case 2:this.buttons=2}}); -v.defineProperty(xf,{buttons:"buttons"},function(){return this.yu},function(a){this.yu=a});v.defineProperty(xf,{key:"key"},function(){return this.iv},function(a){this.iv=a});v.defineProperty(xf,{il:"down"},function(){return this.Ou},function(a){this.Ou=a});v.defineProperty(xf,{up:"up"},function(){return this.$v},function(a){this.$v=a});v.defineProperty(xf,{We:"clickCount"},function(){return this.Au},function(a){this.Au=a}); -v.defineProperty(xf,{gl:"delta"},function(){return this.Ku},function(a){this.Ku=a});v.defineProperty(xf,{vt:"isMultiTouch"},function(){return this.fv},function(a){this.fv=a});v.defineProperty(xf,{zc:"handled"},function(){return this.Wu},function(a){this.Wu=a});v.defineProperty(xf,{bubbles:"bubbles"},function(){return this.gj},function(a){this.gj=a});v.defineProperty(xf,{event:"event"},function(){return this.Eq},function(a){this.Eq=a}); -v.u(xf,{Xi:"isTouchEvent"},function(){var a=window.TouchEvent;return a&&this.event instanceof a?!0:(a=window.PointerEvent)&&this.event instanceof a&&"touch"===this.event.pointerType});v.u(xf,{ak:"isMac"},function(){return v.ak});v.defineProperty(xf,{timestamp:"timestamp"},function(){return this.Yv},function(a){this.Yv=a});v.defineProperty(xf,{Jg:"targetDiagram"},function(){return this.Xv},function(a){this.Xv=a}); -v.defineProperty(xf,{ze:"targetObject"},function(){return this.qg},function(a){this.qg=a});v.defineProperty(xf,{control:"control"},function(){return 0!==(this.pd&1)},function(a){this.pd=a?this.pd|1:this.pd&-2});v.defineProperty(xf,{shift:"shift"},function(){return 0!==(this.pd&4)},function(a){this.pd=a?this.pd|4:this.pd&-5});v.defineProperty(xf,{alt:"alt"},function(){return 0!==(this.pd&2)},function(a){this.pd=a?this.pd|2:this.pd&-3}); -v.defineProperty(xf,{Et:"meta"},function(){return 0!==(this.pd&8)},function(a){this.pd=a?this.pd|8:this.pd&-9});v.defineProperty(xf,{left:"left"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?0===this.button:0!==(this.buttons&1)},function(a){this.buttons=a?this.buttons|1:this.buttons&-2}); -v.defineProperty(xf,{right:"right"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?2===this.button:0!==(this.buttons&2)},function(a){this.buttons=a?this.buttons|2:this.buttons&-3});v.defineProperty(xf,{gK:"middle"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?1===this.button:0!==(this.buttons&4)},function(a){this.buttons=a?this.buttons|4:this.buttons&-5}); -function yf(){this.W=null;this.Ob="";this.Cv=this.Vv=null;this.zu=!1}v.ea("DiagramEvent",yf);yf.prototype.copy=function(){var a=new yf;a.W=this.W;a.Ob=this.Ob;a.Vv=this.Vv;a.Cv=this.Cv;a.zu=this.zu;return a};yf.prototype.toString=function(){var a="*"+this.name;this.cancel&&(a+="x");null!==this.qA&&(a+=":"+this.qA.toString());null!==this.Wz&&(a+="("+this.Wz.toString()+")");return a};v.defineProperty(yf,{g:"diagram"},function(){return this.W},function(a){this.W=a}); -v.defineProperty(yf,{name:"name"},function(){return this.Ob},function(a){this.Ob=a});v.defineProperty(yf,{qA:"subject"},function(){return this.Vv},function(a){this.Vv=a});v.defineProperty(yf,{Wz:"parameter"},function(){return this.Cv},function(a){this.Cv=a});v.defineProperty(yf,{cancel:"cancel"},function(){return this.zu},function(a){this.zu=a});function zf(){this.bq=Af;this.mm=this.sv="";this.Br=this.Cr=this.Fr=this.Gr=this.Er=this.W=this.Xd=null}v.ea("ChangedEvent",zf);var Bf; -zf.Transaction=Bf=v.p(zf,"Transaction",-1);var Af;zf.Property=Af=v.p(zf,"Property",0);var Cf;zf.Insert=Cf=v.p(zf,"Insert",1);var Df;zf.Remove=Df=v.p(zf,"Remove",2);zf.prototype.clear=zf.prototype.clear=function(){this.Br=this.Cr=this.Fr=this.Gr=this.Er=this.W=this.Xd=null}; -zf.prototype.copy=function(){var a=new zf;a.bq=this.bq;a.sv=this.sv;a.mm=this.mm;a.Xd=this.Xd;a.W=this.W;a.Er=this.Er;var b=this.Gr;a.Gr=v.Ta(b)&&"function"===typeof b.R?b.R():b;b=this.Fr;a.Fr=v.Ta(b)&&"function"===typeof b.R?b.R():b;b=this.Cr;a.Cr=v.Ta(b)&&"function"===typeof b.R?b.R():b;b=this.Br;a.Br=v.Ta(b)&&"function"===typeof b.R?b.R():b;return a}; -zf.prototype.toString=function(){var a="",a=this.wc===Bf?a+"* ":this.wc===Af?a+(null!==this.ba?"!m":"!d"):a+((null!==this.ba?"!m":"!d")+this.wc);this.propertyName&&"string"===typeof this.propertyName&&(a+=" "+this.propertyName);this.hf&&this.hf!==this.propertyName&&(a+=" "+this.hf);a+=": ";this.wc===Bf?null!==this.oldValue&&(a+=" "+this.oldValue):(null!==this.object&&(a+=Ef(this.object)),null!==this.oldValue&&(a+=" old: "+Ef(this.oldValue)),null!==this.Cg&&(a+=" "+this.Cg),null!==this.newValue&& -(a+=" new: "+Ef(this.newValue)),null!==this.Ag&&(a+=" "+this.Ag));return a};zf.prototype.getValue=zf.prototype.ja=function(a){return a?this.oldValue:this.newValue};zf.prototype.getParam=function(a){return a?this.Cg:this.Ag};zf.prototype.canUndo=zf.prototype.canUndo=function(){return null!==this.ba||null!==this.g?!0:!1};zf.prototype.undo=zf.prototype.undo=function(){this.canUndo()&&(null!==this.ba?this.ba.Dm(this,!0):null!==this.g&&this.g.Dm(this,!0))}; -zf.prototype.canRedo=zf.prototype.canRedo=function(){return null!==this.ba||null!==this.g?!0:!1};zf.prototype.redo=zf.prototype.redo=function(){this.canRedo()&&(null!==this.ba?this.ba.Dm(this,!1):null!==this.g&&this.g.Dm(this,!1))};v.defineProperty(zf,{ba:"model"},function(){return this.Xd},function(a){this.Xd=a});v.defineProperty(zf,{g:"diagram"},function(){return this.W},function(a){this.W=a});v.defineProperty(zf,{wc:"change"},function(){return this.bq},function(a){this.bq=a}); -v.defineProperty(zf,{hf:"modelChange"},function(){return this.sv},function(a){this.sv=a});v.defineProperty(zf,{propertyName:"propertyName"},function(){return this.mm},function(a){this.mm=a});v.u(zf,{hE:"isTransactionFinished"},function(){return this.bq===Bf&&("CommittedTransaction"===this.mm||"FinishedUndo"===this.mm||"FinishedRedo"===this.mm)});v.defineProperty(zf,{object:"object"},function(){return this.Er},function(a){this.Er=a}); -v.defineProperty(zf,{oldValue:"oldValue"},function(){return this.Gr},function(a){this.Gr=a});v.defineProperty(zf,{Cg:"oldParam"},function(){return this.Fr},function(a){this.Fr=a});v.defineProperty(zf,{newValue:"newValue"},function(){return this.Cr},function(a){this.Cr=a});v.defineProperty(zf,{Ag:"newParam"},function(){return this.Br},function(a){this.Br=a}); -function F(a){1h&&(h+=360),s.xe+=h);0>a&&(s.xe=180-s.xe,s.Af=-s.Af);0>d&&(s.xe=-s.xe,s.Af=-s.Af);s.radiusX*=Math.sqrt(a*a+c*c);void 0!==s.radiusY&&(s.radiusY*=Math.sqrt(b*b+d*d));break;case mf:h=s.I;k=s.J;s.I=h* +a+k*c+e;s.J=h*b+k*d+f;0!==b&&(h=180*Math.atan2(b,a)/Math.PI,0>h&&(h+=360),s.ej+=h);0>a&&(s.ej=180-s.ej,s.sl=!s.sl);0>d&&(s.ej=-s.ej,s.sl=!s.sl);s.radiusX*=Math.sqrt(a*a+c*c);s.radiusY*=Math.sqrt(b*b+d*d);break;default:v.k("Unknown Segment type: "+s.type)}}}}this.$a=!0;return this}; +re.prototype.Fa=function(a,b,c,d){var e=a.x,f=a.y,h=this.mb.x-20;a=a.y;for(var k=0,l=0,m=0,n=0,p=0,q=0,r=this.Ub.n,s=r.length,t=0;t=a)return 0;if((e>h?e-h:h-e)<(f>k?f-k:k-f)){if(e=a=0,fe)return 0}else if(ee)return 0;return 0a||1a)return n=(a-q)/p,v.sa(c),new z(b+(e-b)*n,d+(f-d)*n);q+=p}b=e;d=f}v.sa(c);return null};v.defineProperty(re,{type:"type"},function(){return this.ia},function(a){this.ia!==a&&(this.D&&v.ka(this,a),this.ia=a,this.$a=!0)});v.defineProperty(re,{Aa:"startX"},function(){return this.vc},function(a){this.vc!==a&&(this.D&&v.ka(this,a),this.vc=a,this.$a=!0)}); +v.defineProperty(re,{ya:"startY"},function(){return this.Cc},function(a){this.Cc!==a&&(this.D&&v.ka(this,a),this.Cc=a,this.$a=!0)});v.defineProperty(re,{I:"endX"},function(){return this.vb},function(a){this.vb!==a&&(this.D&&v.ka(this,a),this.vb=a,this.$a=!0)});v.defineProperty(re,{J:"endY"},function(){return this.Bb},function(a){this.Bb!==a&&(this.D&&v.ka(this,a),this.Bb=a,this.$a=!0)}); +v.defineProperty(re,{Ub:"figures"},function(){return this.kj},function(a){this.kj!==a&&(this.D&&v.ka(this,a),this.kj=a,this.$a=!0)});re.prototype.add=re.prototype.add=function(a){this.kj.add(a);return this};re.prototype.setSpots=function(a,b,c,d,e,f,h,k){this.D&&v.ka(this);this.Nh=(new L(a,b,e,f)).freeze();this.Oh=(new L(c,d,h,k)).freeze();return this};v.defineProperty(re,{B:"spot1"},function(){return this.Nh},function(a){this.D&&v.ka(this,a);this.Nh=a.R()}); +v.defineProperty(re,{C:"spot2"},function(){return this.Oh},function(a){this.D&&v.ka(this,a);this.Oh=a.R()});v.defineProperty(re,{Md:"defaultStretch"},function(){return this.mi},function(a){this.D&&v.ka(this,a);this.mi=a});v.u(re,{mb:"bounds"},function(){this.Hz()&&(this.CA(),this.$g());return this.Cu});function Ee(a,b,c,d){v.ec(this);this.D=!1;void 0===c&&(c=!0);this.Sl=c;void 0===d&&(d=!0);this.Wn=d;this.vc=void 0!==a?a:0;this.Cc=void 0!==b?b:0;this.so=new I(wf);this.Rv=this.so.F;this.$a=!0} +v.ea("PathFigure",Ee);v.Uh(Ee);Ee.prototype.copy=function(){var a=new Ee;a.Sl=this.Sl;a.Wn=this.Wn;a.vc=this.vc;a.Cc=this.Cc;for(var b=this.so.n,c=b.length,d=a.so,e=0;ea?"M"+this.Aa.toString()+" "+this.ya.toString():"M"+this.Aa.toFixed(a)+" "+this.ya.toFixed(a),c=this.sb.n,d=c.length,e=0;ea&&(a+=360),this.sd=a,this.Fe=0,this.Xg=Math.max(d,0),this.ng=Math.max(e,0),this.ao="boolean"===typeof h?!!h:!1,this.sn=!!k):(this.sd=d,this.Fe=e,a===lf&&(f=Math.max(f,0)),this.Xg=f,"number"===typeof h?(a===lf&&(h=Math.max(h,0)),this.ng=h):this.ng=0,this.sn=this.ao=!1);this.Ch=!1;this.$a= +!0;this.cg=null}v.ea("PathSegment",wf);v.Uh(wf);wf.prototype.copy=function(){var a=new wf;a.ia=this.ia;a.vb=this.vb;a.Bb=this.Bb;a.sd=this.sd;a.Fe=this.Fe;a.Xg=this.Xg;a.ng=this.ng;a.ao=this.ao;a.sn=this.sn;a.Ch=this.Ch;a.$a=this.$a;return a}; +wf.prototype.equalsApprox=wf.prototype.Fc=function(a){if(!(a instanceof wf)||this.type!==a.type||this.Gw!==a.Gw)return!1;switch(this.type){case hf:case $e:return K(this.I,a.I)&&K(this.J,a.J);case jf:return K(this.I,a.I)&&K(this.J,a.J)&&K(this.rc,a.rc)&&K(this.Kc,a.Kc)&&K(this.kh,a.kh)&&K(this.lh,a.lh);case kf:return K(this.I,a.I)&&K(this.J,a.J)&&K(this.rc,a.rc)&&K(this.Kc,a.Kc);case lf:return K(this.xe,a.xe)&&K(this.Af,a.Af)&&K(this.na,a.na)&&K(this.ua,a.ua)&&K(this.radiusX,a.radiusX)&&K(this.radiusY, +a.radiusY);case mf:return this.sl===a.sl&&this.Jw===a.Jw&&K(this.ej,a.ej)&&K(this.I,a.I)&&K(this.J,a.J)&&K(this.radiusX,a.radiusX)&&K(this.radiusY,a.radiusY);default:return!1}}; +wf.prototype.toString=function(a){void 0===a&&(a=-1);var b="";switch(this.type){case hf:b=0>a?"M"+this.I.toString()+" "+this.J.toString():"M"+this.I.toFixed(a)+" "+this.J.toFixed(a);break;case $e:b=0>a?"L"+this.I.toString()+" "+this.J.toString():"L"+this.I.toFixed(a)+" "+this.J.toFixed(a);break;case jf:b=0>a?"C"+this.rc.toString()+" "+this.Kc.toString()+" "+this.kh.toString()+" "+this.lh.toString()+" "+this.I.toString()+" "+this.J.toString():"C"+this.rc.toFixed(a)+" "+this.Kc.toFixed(a)+" "+this.kh.toFixed(a)+ +" "+this.lh.toFixed(a)+" "+this.I.toFixed(a)+" "+this.J.toFixed(a);break;case kf:b=0>a?"Q"+this.rc.toString()+" "+this.Kc.toString()+" "+this.I.toString()+" "+this.J.toString():"Q"+this.rc.toFixed(a)+" "+this.Kc.toFixed(a)+" "+this.I.toFixed(a)+" "+this.J.toFixed(a);break;case lf:b=0>a?"B"+this.xe.toString()+" "+this.Af.toString()+" "+this.na.toString()+" "+this.ua.toString()+" "+this.radiusX:"B"+this.xe.toFixed(a)+" "+this.Af.toFixed(a)+" "+this.na.toFixed(a)+" "+this.ua.toFixed(a)+" "+this.radiusX; +break;case mf:b=0>a?"A"+this.radiusX.toString()+" "+this.radiusY.toString()+" "+this.ej.toString()+" "+(this.Jw?1:0)+" "+(this.sl?1:0)+" "+this.I.toString()+" "+this.J.toString():"A"+this.radiusX.toFixed(a)+" "+this.radiusY.toFixed(a)+" "+this.ej.toFixed(a)+" "+(this.Jw?1:0)+" "+(this.sl?1:0)+" "+this.I.toFixed(a)+" "+this.J.toFixed(a);break;default:b=this.type.toString()}return b+(this.Ch?"z":"")};var hf;wf.Move=hf=v.p(wf,"Move",0);var $e;wf.Line=$e=v.p(wf,"Line",1);var jf; +wf.Bezier=jf=v.p(wf,"Bezier",2);var kf;wf.QuadraticBezier=kf=v.p(wf,"QuadraticBezier",3);var lf;wf.Arc=lf=v.p(wf,"Arc",4);var mf;wf.SvgArc=mf=v.p(wf,"SvgArc",4);wf.prototype.freeze=function(){this.D=!0;return this};wf.prototype.Oa=function(){this.D=!1;return this};wf.prototype.close=wf.prototype.close=function(){this.Ch=!0;return this}; +function nf(a,b){if(null!==a.cg&&!1===b.$a)return a.cg;var c=a.radiusX,d=a.radiusY;void 0===d&&(d=c);if(0===c||0===d)return a.cg=[],a.cg;var e=a.sd,f=a.Fe,h=oe(c=r?h=Math.PI:1<=r&&(h=0);!l&&0h&&(h+=2*Math.PI);l=b>f?1:b/f;r=b>f?f/b:1;b=oe(b>f?b:f,n,n+h,!0);f=v.ph();f.reset();f.translate(c,d);f.rotate(a.sd,0,0);f.scale(l,r);ff(b,f);v.Ze(f);a.cg=b;return a.cg} +v.defineProperty(wf,{Gw:"isClosed"},function(){return this.Ch},function(a){this.Ch!==a&&(this.Ch=a,this.$a=!0)});v.defineProperty(wf,{type:"type"},function(){return this.ia},function(a){this.D&&v.ka(this,a);this.ia=a;this.$a=!0});v.defineProperty(wf,{I:"endX"},function(){return this.vb},function(a){this.D&&v.ka(this,a);this.vb=a;this.$a=!0});v.defineProperty(wf,{J:"endY"},function(){return this.Bb},function(a){this.D&&v.ka(this,a);this.Bb=a;this.$a=!0}); +v.defineProperty(wf,{rc:"point1X"},function(){return this.sd},function(a){this.D&&v.ka(this,a);this.sd=a;this.$a=!0});v.defineProperty(wf,{Kc:"point1Y"},function(){return this.Fe},function(a){this.D&&v.ka(this,a);this.Fe=a;this.$a=!0});v.defineProperty(wf,{kh:"point2X"},function(){return this.Xg},function(a){this.D&&v.ka(this,a);this.Xg=a;this.$a=!0});v.defineProperty(wf,{lh:"point2Y"},function(){return this.ng},function(a){this.D&&v.ka(this,a);this.ng=a;this.$a=!0}); +v.defineProperty(wf,{na:"centerX"},function(){return this.sd},function(a){this.D&&v.ka(this,a);this.sd=a;this.$a=!0});v.defineProperty(wf,{ua:"centerY"},function(){return this.Fe},function(a){this.D&&v.ka(this,a);this.Fe=a;this.$a=!0});v.defineProperty(wf,{radiusX:"radiusX"},function(){return this.Xg},function(a){0>a&&v.va(a,">= zero",wf,"radiusX");this.D&&v.ka(this,a);this.Xg=a;this.$a=!0}); +v.defineProperty(wf,{radiusY:"radiusY"},function(){return this.ng},function(a){0>a&&v.va(a,">= zero",wf,"radiusY");this.D&&v.ka(this,a);this.ng=a;this.$a=!0});v.defineProperty(wf,{xe:"startAngle"},function(){return this.vb},function(a){this.vb!==a&&(this.D&&v.ka(this,a),a%=360,0>a&&(a+=360),this.vb=a,this.$a=!0)});v.defineProperty(wf,{Af:"sweepAngle"},function(){return this.Bb},function(a){this.D&&v.ka(this,a);360a&&(a=-360);this.Bb=a;this.$a=!0}); +v.defineProperty(wf,{sl:"isClockwiseArc"},function(){return this.sn},function(a){this.D&&v.ka(this,a);this.sn=a;this.$a=!0});v.defineProperty(wf,{Jw:"isLargeArc"},function(){return this.ao},function(a){this.D&&v.ka(this,a);this.ao=a;this.$a=!0});v.defineProperty(wf,{ej:"xAxisRotation"},function(){return this.sd},function(a){a%=360;0>a&&(a+=360);this.D&&v.ka(this,a);this.sd=a;this.$a=!0}); +function xf(){this.W=null;this.Sy=(new z(0,0)).freeze();this.Wx=(new z(0,0)).freeze();this.yu=this.uv=0;this.zu=1;this.jv="";this.aw=this.Pu=!1;this.Lu=this.Bu=0;this.gj=this.Xu=this.gv=!1;this.Eq=null;this.Zv=0;this.pg=this.Yv=null}v.ea("InputEvent",xf); +xf.prototype.copy=function(){var a=new xf;a.W=this.W;a.Sy.assign(this.hf);a.Wx.assign(this.ca);a.uv=this.uv;a.yu=this.yu;a.zu=this.zu;a.jv=this.jv;a.Pu=this.Pu;a.aw=this.aw;a.Bu=this.Bu;a.Lu=this.Lu;a.gv=this.gv;a.Xu=this.Xu;a.gj=this.gj;a.Eq=this.Eq;a.Zv=this.Zv;a.Yv=this.Yv;a.pg=this.pg;return a}; +xf.prototype.toString=function(){var a="^";0!==this.od&&(a+="M:"+this.od);0!==this.button&&(a+="B:"+this.button);""!==this.key&&(a+="K:"+this.key);0!==this.Ve&&(a+="C:"+this.Ve);0!==this.gl&&(a+="D:"+this.gl);this.zc&&(a+="h");this.bubbles&&(a+="b");null!==this.ca&&(a+="@"+this.ca.toString());return a};v.defineProperty(xf,{g:"diagram"},function(){return this.W},function(a){this.W=a});v.defineProperty(xf,{hf:"viewPoint"},function(){return this.Sy},function(a){v.A(a,z,xf,"viewPoint");this.Sy.assign(a)}); +v.defineProperty(xf,{ca:"documentPoint"},function(){return this.Wx},function(a){v.A(a,z,xf,"documentPoint");this.Wx.assign(a)});v.defineProperty(xf,{od:"modifiers"},function(){return this.uv},function(a){this.uv=a});v.defineProperty(xf,{button:"button"},function(){return this.yu},function(a){this.yu=a;if(null===this.event)switch(a){case 0:this.buttons=1;break;case 1:this.buttons=4;break;case 2:this.buttons=2}}); +v.defineProperty(xf,{buttons:"buttons"},function(){return this.zu},function(a){this.zu=a});v.defineProperty(xf,{key:"key"},function(){return this.jv},function(a){this.jv=a});v.defineProperty(xf,{il:"down"},function(){return this.Pu},function(a){this.Pu=a});v.defineProperty(xf,{up:"up"},function(){return this.aw},function(a){this.aw=a});v.defineProperty(xf,{Ve:"clickCount"},function(){return this.Bu},function(a){this.Bu=a}); +v.defineProperty(xf,{gl:"delta"},function(){return this.Lu},function(a){this.Lu=a});v.defineProperty(xf,{wt:"isMultiTouch"},function(){return this.gv},function(a){this.gv=a});v.defineProperty(xf,{zc:"handled"},function(){return this.Xu},function(a){this.Xu=a});v.defineProperty(xf,{bubbles:"bubbles"},function(){return this.gj},function(a){this.gj=a});v.defineProperty(xf,{event:"event"},function(){return this.Eq},function(a){this.Eq=a}); +v.u(xf,{Vi:"isTouchEvent"},function(){var a=window.TouchEvent;return a&&this.event instanceof a?!0:(a=window.PointerEvent)&&this.event instanceof a&&"touch"===this.event.pointerType});v.u(xf,{ak:"isMac"},function(){return v.ak});v.defineProperty(xf,{timestamp:"timestamp"},function(){return this.Zv},function(a){this.Zv=a});v.defineProperty(xf,{Ig:"targetDiagram"},function(){return this.Yv},function(a){this.Yv=a}); +v.defineProperty(xf,{ye:"targetObject"},function(){return this.pg},function(a){this.pg=a});v.defineProperty(xf,{control:"control"},function(){return 0!==(this.od&1)},function(a){this.od=a?this.od|1:this.od&-2});v.defineProperty(xf,{shift:"shift"},function(){return 0!==(this.od&4)},function(a){this.od=a?this.od|4:this.od&-5});v.defineProperty(xf,{alt:"alt"},function(){return 0!==(this.od&2)},function(a){this.od=a?this.od|2:this.od&-3}); +v.defineProperty(xf,{Ft:"meta"},function(){return 0!==(this.od&8)},function(a){this.od=a?this.od|8:this.od&-9});v.defineProperty(xf,{left:"left"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?0===this.button:0!==(this.buttons&1)},function(a){this.buttons=a?this.buttons|1:this.buttons&-2}); +v.defineProperty(xf,{right:"right"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?2===this.button:0!==(this.buttons&2)},function(a){this.buttons=a?this.buttons|2:this.buttons&-3});v.defineProperty(xf,{iK:"middle"},function(){var a=this.event;return null!==a&&a instanceof MouseEvent&&("mousedown"===a.type||"mouseup"===a.type)?1===this.button:0!==(this.buttons&4)},function(a){this.buttons=a?this.buttons|4:this.buttons&-5}); +function yf(){this.W=null;this.Ob="";this.Dv=this.Wv=null;this.Au=!1}v.ea("DiagramEvent",yf);yf.prototype.copy=function(){var a=new yf;a.W=this.W;a.Ob=this.Ob;a.Wv=this.Wv;a.Dv=this.Dv;a.Au=this.Au;return a};yf.prototype.toString=function(){var a="*"+this.name;this.cancel&&(a+="x");null!==this.uA&&(a+=":"+this.uA.toString());null!==this.$z&&(a+="("+this.$z.toString()+")");return a};v.defineProperty(yf,{g:"diagram"},function(){return this.W},function(a){this.W=a}); +v.defineProperty(yf,{name:"name"},function(){return this.Ob},function(a){this.Ob=a});v.defineProperty(yf,{uA:"subject"},function(){return this.Wv},function(a){this.Wv=a});v.defineProperty(yf,{$z:"parameter"},function(){return this.Dv},function(a){this.Dv=a});v.defineProperty(yf,{cancel:"cancel"},function(){return this.Au},function(a){this.Au=a});function zf(){this.bq=Af;this.lm=this.tv="";this.Cr=this.Dr=this.Gr=this.Hr=this.Fr=this.W=this.Vd=null}v.ea("ChangedEvent",zf);var Bf; +zf.Transaction=Bf=v.p(zf,"Transaction",-1);var Af;zf.Property=Af=v.p(zf,"Property",0);var Cf;zf.Insert=Cf=v.p(zf,"Insert",1);var Df;zf.Remove=Df=v.p(zf,"Remove",2);zf.prototype.clear=zf.prototype.clear=function(){this.Cr=this.Dr=this.Gr=this.Hr=this.Fr=this.W=this.Vd=null}; +zf.prototype.copy=function(){var a=new zf;a.bq=this.bq;a.tv=this.tv;a.lm=this.lm;a.Vd=this.Vd;a.W=this.W;a.Fr=this.Fr;var b=this.Hr;a.Hr=v.Ta(b)&&"function"===typeof b.R?b.R():b;b=this.Gr;a.Gr=v.Ta(b)&&"function"===typeof b.R?b.R():b;b=this.Dr;a.Dr=v.Ta(b)&&"function"===typeof b.R?b.R():b;b=this.Cr;a.Cr=v.Ta(b)&&"function"===typeof b.R?b.R():b;return a}; +zf.prototype.toString=function(){var a="",a=this.wc===Bf?a+"* ":this.wc===Af?a+(null!==this.ba?"!m":"!d"):a+((null!==this.ba?"!m":"!d")+this.wc);this.propertyName&&"string"===typeof this.propertyName&&(a+=" "+this.propertyName);this.gf&&this.gf!==this.propertyName&&(a+=" "+this.gf);a+=": ";this.wc===Bf?null!==this.oldValue&&(a+=" "+this.oldValue):(null!==this.object&&(a+=Ef(this.object)),null!==this.oldValue&&(a+=" old: "+Ef(this.oldValue)),null!==this.Bg&&(a+=" "+this.Bg),null!==this.newValue&& +(a+=" new: "+Ef(this.newValue)),null!==this.zg&&(a+=" "+this.zg));return a};zf.prototype.getValue=zf.prototype.ja=function(a){return a?this.oldValue:this.newValue};zf.prototype.getParam=function(a){return a?this.Bg:this.zg};zf.prototype.canUndo=zf.prototype.canUndo=function(){return null!==this.ba||null!==this.g?!0:!1};zf.prototype.undo=zf.prototype.undo=function(){this.canUndo()&&(null!==this.ba?this.ba.Dm(this,!0):null!==this.g&&this.g.Dm(this,!0))}; +zf.prototype.canRedo=zf.prototype.canRedo=function(){return null!==this.ba||null!==this.g?!0:!1};zf.prototype.redo=zf.prototype.redo=function(){this.canRedo()&&(null!==this.ba?this.ba.Dm(this,!1):null!==this.g&&this.g.Dm(this,!1))};v.defineProperty(zf,{ba:"model"},function(){return this.Vd},function(a){this.Vd=a});v.defineProperty(zf,{g:"diagram"},function(){return this.W},function(a){this.W=a});v.defineProperty(zf,{wc:"change"},function(){return this.bq},function(a){this.bq=a}); +v.defineProperty(zf,{gf:"modelChange"},function(){return this.tv},function(a){this.tv=a});v.defineProperty(zf,{propertyName:"propertyName"},function(){return this.lm},function(a){this.lm=a});v.u(zf,{kE:"isTransactionFinished"},function(){return this.bq===Bf&&("CommittedTransaction"===this.lm||"FinishedUndo"===this.lm||"FinishedRedo"===this.lm)});v.defineProperty(zf,{object:"object"},function(){return this.Fr},function(a){this.Fr=a}); +v.defineProperty(zf,{oldValue:"oldValue"},function(){return this.Hr},function(a){this.Hr=a});v.defineProperty(zf,{Bg:"oldParam"},function(){return this.Gr},function(a){this.Gr=a});v.defineProperty(zf,{newValue:"newValue"},function(){return this.Dr},function(a){this.Dr=a});v.defineProperty(zf,{zg:"newParam"},function(){return this.Cr},function(a){this.Cr=a}); +function F(a){1f?b+("\\u000"+a.charCodeAt(d).toString(16)):32>f?b+("\\u00"+a.charCodeAt(d).toString(16)):8232===f?b+"\\u2028":8233===f?b+"\\u2029":b+e}return'"'+b+'"'}; -F.prototype.writeJsonValue=F.prototype.hu=function(a){return void 0===a?"undefined":null===a?"null":!0===a?"true":!1===a?"false":"string"===typeof a?this.quote(a):"number"===typeof a?Infinity===a?"9e9999":-Infinity===a?"-9e9999":isNaN(a)?'{"class":"NaN"}':a.toString():a instanceof Date?'{"class":"Date", "value":"'+a.toJSON()+'"}':a instanceof Number?this.hu(a.valueOf()):v.isArray(a)?Mf(this,a):v.Ta(a)?Hf(this,a):"function"===typeof a?"null":a.toString()}; -function Mf(a,b,c){void 0===c&&(c=!1);var d=v.Va(b);if(0>=d)return"[]";var e=new sa;e.add("[ ");c&&1=d)return"[]";var e=new sa;e.add("[ ");c&&1e)return;v.Vh(a.Jf,e)}$f(a,"nodeDataArray",Df,"nodeDataArray",a,b,null,e,null);a.fu(b)}} -F.prototype.removeNodeDataCollection=function(a){if(v.isArray(a))for(var b=v.Va(a),c=0;cb&&(b=v.Va(a));v.Oi(a,b,c);$f(this,"",Cf,"",a,null,c,null,b)};F.prototype.removeArrayItem=function(a,b){void 0===b&&(b=-1);a===this.Jf&&v.k("Model.removeArrayItem should not be called on the Model.nodeDataArray");-1===b&&(b=v.Va(a)-1);var c=v.Pa(a,b);v.Vh(a,b);$f(this,"",Df,"",a,c,null,b,null)}; -v.defineProperty(F,{Ym:"nodeCategoryProperty"},function(){return this.gm},function(a){var b=this.gm;b!==a&&(lg(a,F,"nodeCategoryProperty"),this.gm=a,this.h("nodeCategoryProperty",b,a))});F.prototype.getCategoryForNodeData=F.prototype.sz=function(a){if(null===a)return"";var b=this.gm;if(""===b)return"";b=v.qb(a,b);if(void 0===b)return"";if("string"===typeof b)return b;v.k("getCategoryForNodeData found a non-string category for "+a+": "+b);return""}; -F.prototype.setCategoryForNodeData=F.prototype.ix=function(a,b){v.j(b,"string",F,"setCategoryForNodeData:cat");if(null!==a){var c=this.gm;if(""!==c)if(this.Ie(a)){var d=v.qb(a,c);void 0===d&&(d="");d!==b&&(v.Ja(a,c,b),$f(this,"nodeCategory",Af,c,a,d,b))}else v.Ja(a,c,b)}}; -function Q(a,b){2e||(v.Vh(d,e),this.bh(a)&&(rg(this,b,a),$f(this,"linkLabelKeys",Df,c,a,b,null)))}else void 0!==d&&v.k(c+" property is not an Array; cannot removeLabelKeyforLinkData: "+a)}}}; -v.defineProperty(Q,{zg:"linkDataArray"},function(){return this.Hf},function(a){var b=this.Hf;if(b!==a){v.$y(a,Q,"linkDataArray");this.Yc.clear();for(var c=v.Va(a),d=0;de)return;v.Vh(a.Hf,e)}$f(a,"linkDataArray",Df,"linkDataArray",a,b,null,e,null);c=a.ol(b);rg(a,c,b);c=a.pl(b);rg(a,c,b);d=a.$j(b);if(v.isArray(d))for(var e=v.Va(d),f=0;fa.sh&&v.trace("Ending transaction without having started a transaction: "+c);var d=1===a.sh;d&&b&&a.isEnabled&&a.$c("CommittingTransaction",c,a.Qi);var e=0;if(0a.Vi;e--)f=d.da(e),null!== -f&&f.clear(),d.Vc(e),a.ty=!0;e=a.oE;0===e&&(e=1);0=e&&(f=d.da(0),null!==f&&f.clear(),d.Vc(0),a.Pg--);d.add(b);a.Pg++;d.freeze();f=b}a.$c("CommittedTransaction",c,f)}else{a.vi=!0;try{a.isEnabled&&null!==f&&(f.st=!0,f.undo())}finally{a.$c("RolledBackTransaction",c,f),a.vi=!1}null!==f&&f.clear()}a.Ju=null;return!0}if(a.isEnabled&&!b&&null!==f){a=e;c=f.Pf;for(b=c.count-1;b>=a;b--)d=c.da(b),null!==d&&d.undo(),c.Oa(),c.Vc(b);c.freeze()}return!1} -Ff.prototype.canUndo=Ff.prototype.canUndo=function(){if(!this.isEnabled||0=this.sh&&!this.gy&&(a=a.g,null!==a&&!1===a.Tm||v.trace("Change not within a transaction: "+c.toString()))}}; -Ff.prototype.skipsEvent=function(a){if(null===a||0>a.wc.value)return!0;a=a.object;if(a instanceof G){if(a=a.layer,null!==a&&a.Gc)return!0}else if(a instanceof Vf&&a.Gc)return!0;return!1};v.u(Ff,{QH:"models"},function(){return this.zy.i});v.defineProperty(Ff,{isEnabled:"isEnabled"},function(){return this.Re},function(a){this.Re=a});v.u(Ff,{iF:"transactionToUndo"},function(){return 0<=this.Vi&&this.Vi<=this.history.count-1?this.history.da(this.Vi):null}); -v.u(Ff,{hF:"transactionToRedo"},function(){return this.Vie)return;v.Th(a.If,e)}$f(a,"nodeDataArray",Df,"nodeDataArray",a,b,null,e,null);a.gu(b)}} +F.prototype.removeNodeDataCollection=function(a){if(v.isArray(a))for(var b=v.Va(a),c=0;cb&&(b=v.Va(a));v.Mi(a,b,c);$f(this,"",Cf,"",a,null,c,null,b)};F.prototype.removeArrayItem=function(a,b){void 0===b&&(b=-1);a===this.If&&v.k("Model.removeArrayItem should not be called on the Model.nodeDataArray");-1===b&&(b=v.Va(a)-1);var c=v.Pa(a,b);v.Th(a,b);$f(this,"",Df,"",a,c,null,b,null)}; +v.defineProperty(F,{Ym:"nodeCategoryProperty"},function(){return this.fm},function(a){var b=this.fm;b!==a&&(lg(a,F,"nodeCategoryProperty"),this.fm=a,this.h("nodeCategoryProperty",b,a))});F.prototype.getCategoryForNodeData=F.prototype.xz=function(a){if(null===a)return"";var b=this.fm;if(""===b)return"";b=v.qb(a,b);if(void 0===b)return"";if("string"===typeof b)return b;v.k("getCategoryForNodeData found a non-string category for "+a+": "+b);return""}; +F.prototype.setCategoryForNodeData=F.prototype.jx=function(a,b){v.j(b,"string",F,"setCategoryForNodeData:cat");if(null!==a){var c=this.fm;if(""!==c)if(this.He(a)){var d=v.qb(a,c);void 0===d&&(d="");d!==b&&(v.Ka(a,c,b),$f(this,"nodeCategory",Af,c,a,d,b))}else v.Ka(a,c,b)}}; +function Q(a,b){2e||(v.Th(d,e),this.ah(a)&&(rg(this,b,a),$f(this,"linkLabelKeys",Df,c,a,b,null)))}else void 0!==d&&v.k(c+" property is not an Array; cannot removeLabelKeyforLinkData: "+a)}}}; +v.defineProperty(Q,{yg:"linkDataArray"},function(){return this.Gf},function(a){var b=this.Gf;if(b!==a){v.bz(a,Q,"linkDataArray");this.Yc.clear();for(var c=v.Va(a),d=0;de)return;v.Th(a.Gf,e)}$f(a,"linkDataArray",Df,"linkDataArray",a,b,null,e,null);c=a.ol(b);rg(a,c,b);c=a.pl(b);rg(a,c,b);d=a.$j(b);if(v.isArray(d))for(var e=v.Va(d),f=0;fa.rh&&v.trace("Ending transaction without having started a transaction: "+c);var d=1===a.rh;d&&b&&a.isEnabled&&a.$c("CommittingTransaction",c,a.Oi);var e=0;if(0a.Ti;e--)f=d.da(e),null!== +f&&f.clear(),d.Vc(e),a.uy=!0;e=a.rE;0===e&&(e=1);0=e&&(f=d.da(0),null!==f&&f.clear(),d.Vc(0),a.Og--);d.add(b);a.Og++;d.freeze();f=b}a.$c("CommittedTransaction",c,f)}else{a.ti=!0;try{a.isEnabled&&null!==f&&(f.tt=!0,f.undo())}finally{a.$c("RolledBackTransaction",c,f),a.ti=!1}null!==f&&f.clear()}a.Ku=null;return!0}if(a.isEnabled&&!b&&null!==f){a=e;c=f.Of;for(b=c.count-1;b>=a;b--)d=c.da(b),null!==d&&d.undo(),c.Oa(),c.Vc(b);c.freeze()}return!1} +Ff.prototype.canUndo=Ff.prototype.canUndo=function(){if(!this.isEnabled||0=this.rh&&!this.hy&&(a=a.g,null!==a&&!1===a.Tm||v.trace("Change not within a transaction: "+c.toString()))}}; +Ff.prototype.skipsEvent=function(a){if(null===a||0>a.wc.value)return!0;a=a.object;if(a instanceof G){if(a=a.layer,null!==a&&a.Gc)return!0}else if(a instanceof Vf&&a.Gc)return!0;return!1};v.u(Ff,{SH:"models"},function(){return this.Ay.i});v.defineProperty(Ff,{isEnabled:"isEnabled"},function(){return this.Qe},function(a){this.Qe=a});v.u(Ff,{lF:"transactionToUndo"},function(){return 0<=this.Ti&&this.Ti<=this.history.count-1?this.history.da(this.Ti):null}); +v.u(Ff,{kF:"transactionToRedo"},function(){return this.Tib.hh||(b.scale=a))};Xf.prototype.canDecreaseZoom=function(a){void 0===a&&(a=1/this.ux);v.Ve(a,Xf,"canDecreaseZoom:factor");var b=this.g;if(null===b||b.al!==Yg)return!1;a*=b.scale;return ab.hh?!1:b.lw}; -Xf.prototype.increaseZoom=function(a){void 0===a&&(a=this.ux);v.Ve(a,Xf,"increaseZoom:factor");var b=this.g;null!==b&&b.al===Yg&&(a*=b.scale,ab.hh||(b.scale=a))};Xf.prototype.canIncreaseZoom=function(a){void 0===a&&(a=this.ux);v.Ve(a,Xf,"canIncreaseZoom:factor");var b=this.g;if(null===b||b.al!==Yg)return!1;a*=b.scale;return ab.hh?!1:b.lw};Xf.prototype.resetZoom=function(a){void 0===a&&(a=this.sw);v.Ve(a,Xf,"resetZoom:newscale");var b=this.g;null===b||ab.hh||(b.scale=a)}; -Xf.prototype.canResetZoom=function(a){void 0===a&&(a=this.sw);v.Ve(a,Xf,"canResetZoom:newscale");var b=this.g;return null===b||ab.hh?!1:b.lw};Xf.prototype.zoomToFit=function(){var a=this.g;if(null!==a){var b=a.scale,c=a.position;b===this.Ty&&!isNaN(this.uy)&&a.ae.K(this.Sy)?(a.scale=this.uy,a.position=this.WB,this.Ty=NaN,this.Sy=Yc):(this.uy=b,this.WB=c.copy(),a.zoomToFit(),this.Ty=a.scale,this.Sy=a.ae.copy())}};Xf.prototype.canZoomToFit=function(){var a=this.g;return null===a?!1:a.lw}; -Xf.prototype.scrollToPart=function(a){void 0===a&&(a=null);null!==a&&v.A(a,R,Xf,"part");var b=this.g;if(null!==b){if(null===a){try{null!==this.Gj&&(this.Gj.next()?a=this.Gj.value:this.Gj=null)}catch(c){}null===a&&(0b.gh||(b.scale=a))};Xf.prototype.canDecreaseZoom=function(a){void 0===a&&(a=1/this.vx);v.Ue(a,Xf,"canDecreaseZoom:factor");var b=this.g;if(null===b||b.al!==Yg)return!1;a*=b.scale;return ab.gh?!1:b.mw}; +Xf.prototype.increaseZoom=function(a){void 0===a&&(a=this.vx);v.Ue(a,Xf,"increaseZoom:factor");var b=this.g;null!==b&&b.al===Yg&&(a*=b.scale,ab.gh||(b.scale=a))};Xf.prototype.canIncreaseZoom=function(a){void 0===a&&(a=this.vx);v.Ue(a,Xf,"canIncreaseZoom:factor");var b=this.g;if(null===b||b.al!==Yg)return!1;a*=b.scale;return ab.gh?!1:b.mw};Xf.prototype.resetZoom=function(a){void 0===a&&(a=this.tw);v.Ue(a,Xf,"resetZoom:newscale");var b=this.g;null===b||ab.gh||(b.scale=a)}; +Xf.prototype.canResetZoom=function(a){void 0===a&&(a=this.tw);v.Ue(a,Xf,"canResetZoom:newscale");var b=this.g;return null===b||ab.gh?!1:b.mw};Xf.prototype.zoomToFit=function(){var a=this.g;if(null!==a){var b=a.scale,c=a.position;b===this.Vy&&!isNaN(this.vy)&&a.Zd.K(this.Uy)?(a.scale=this.vy,a.position=this.ZB,this.Vy=NaN,this.Uy=Zc):(this.vy=b,this.ZB=c.copy(),a.zoomToFit(),this.Vy=a.scale,this.Uy=a.Zd.copy())}};Xf.prototype.canZoomToFit=function(){var a=this.g;return null===a?!1:a.mw}; +Xf.prototype.scrollToPart=function(a){void 0===a&&(a=null);null!==a&&v.A(a,R,Xf,"part");var b=this.g;if(null!==b){if(null===a){try{null!==this.Gj&&(this.Gj.next()?a=this.Gj.value:this.Gj=null)}catch(c){}null===a&&(0b.targetTouches.length)return;c=b.targetTouches[0];d=b.targetTouches[1]}else if(null!==a.Kf[0])c=a.Kf[0],d=a.Kf[1];else return;this.doCancel();if(a.ap("hasGestureZoom")){a.hy=!0;a.hC=a.scale;var e=bh(a),f=c,h=f.clientX-e.x,c=f.clientY-e.y,f=d,d=f.clientX-e.x,f=f.clientY-e.y;v.v(e);e=d-h;c=f-c;a.AC=Math.sqrt(e*e+c*c);b.preventDefault();b.cancelBubble=!0}}}; -Wf.prototype.standardPinchZoomMove=function(){var a=this.g;if(null!==a){var b=a.N.event;this.doCancel();var c=null,d=null;if(void 0!==b.targetTouches){if(2>b.targetTouches.length)return;c=b.targetTouches[0];d=b.targetTouches[1]}else if(null!==a.Kf[0])c=a.Kf[0],d=a.Kf[1];else return;if(a.ap("hasGestureZoom")&&a.hy){var e=bh(a),f=c,c=f.clientX-e.x,h=f.clientY-e.y,f=d,d=f.clientX-e.x,f=f.clientY-e.y;v.v(e);var e=d-c,k=f-h,e=Math.sqrt(e*e+k*k)/a.AC,c=new y((Math.min(d,c)+Math.max(d,c))/2,(Math.min(f, -h)+Math.max(f,h))/2),h=a.hC*e,d=a.nb;h!==a.scale&&d.canResetZoom(h)&&(e=a.Il,a.Il=c,d.resetZoom(h),a.Il=e);b.preventDefault();b.cancelBubble=!0}}};Wf.prototype.doKeyDown=function(){var a=this.g;null!==a&&"Esc"===a.N.key&&this.doCancel()};Wf.prototype.doKeyUp=function(){};Wf.prototype.startTransaction=Wf.prototype.Qb=function(a){void 0===a&&(a=this.name);this.Cf=null;var b=this.g;return null===b?!1:b.Qb(a)}; -Wf.prototype.stopTransaction=Wf.prototype.fk=function(){var a=this.g;return null===a?!1:null===this.Cf?a.Ap():a.yd(this.Cf)}; -Wf.prototype.standardMouseSelect=function(){var a=this.g;if(null!==a&&a.of){var b=a.N,c=a.ft(b.ca,!1);if(null!==c)if(v.ak?b.Et:b.control){a.Ba("ChangingSelection");for(b=c;null!==b&&!b.canSelect();)b=b.Sa;null!==b&&(b.hb=!b.hb);a.Ba("ChangedSelection")}else if(b.shift){if(!c.hb){a.Ba("ChangingSelection");for(b=c;null!==b&&!b.canSelect();)b=b.Sa;null!==b&&(b.hb=!0);a.Ba("ChangedSelection")}}else{if(!c.hb){for(b=c;null!==b&&!b.canSelect();)b=b.Sa;null!==b&&a.select(b)}}else!b.left||(v.ak?b.Et:b.control)|| -b.shift||a.nw()}};Wf.prototype.standardMouseClick=function(a,b){void 0===a&&(a=null);void 0===b&&(b=function(a){return!a.layer.Gc});var c=this.g;if(null===c)return!1;var d=c.N,e=c.re(d.ca,a,b);d.ze=e;ch(e,d,c);return d.zc}; -function ch(a,b,c){b.zc=!1;var d=0;b.left?d=1===b.We?1:2===b.We?2:1:b.right&&1===b.We&&(d=3);var e="";if(null!==a){switch(d){case 1:e="ObjectSingleClicked";break;case 2:e="ObjectDoubleClicked";break;case 3:e="ObjectContextClicked"}0!==d&&c.Ba(e,a)}else{switch(d){case 1:e="BackgroundSingleClicked";break;case 2:e="BackgroundDoubleClicked";break;case 3:e="BackgroundContextClicked"}0!==d&&c.Ba(e)}if(null!==a)for(;null!==a;){c=null;switch(d){case 1:c=a.click;break;case 2:c=a.$s?a.$s:a.click;break;case 3:c= -a.cz}if(null!==c&&(c(b,a),b.zc))break;a=a.T}else{a=null;switch(d){case 1:a=c.click;break;case 2:a=c.$s?c.$s:c.click;break;case 3:a=c.cz}null!==a&&a(b)}} -Wf.prototype.standardMouseOver=function(){var a=this.g;if(null!==a){var b=a.N;if(null!==b.g&&!0!==a.Na.pc){var c=a.tb;a.tb=!0;var d=a.re(b.ca,null,null);b.ze=d;var e=!1;if(d!==a.zn){var f=a.zn,h=f;a.zn=d;this.doCurrentObjectChanged(f,d);for(b.zc=!1;null!==f;){var k=f.Gt;if(null!==k){if(d===f)break;if(null!==d&&d.tl(f))break;k(b,f,d);e=!0;if(b.zc)break}f=f.T}f=h;for(b.zc=!1;null!==d;){k=d.Ft;if(null!==k){if(f===d)break;if(null!==f&&f.tl(d))break;k(b,d,f);e=!0;if(b.zc)break}d=d.T}d=a.zn}if(null!==d){f= -d;for(k="";null!==f;){k=f.cursor;if(""!==k)break;f=f.T}a.Zb=k;b.zc=!1;for(f=d;null!==f;){k=f.Pz;if(null!==k&&(k(b,f),e=!0,b.zc))break;f=f.T}}else a.Zb="",k=a.Pz,null!==k&&(k(b),e=!0);e&&a.ve();a.tb=c}}};Wf.prototype.doCurrentObjectChanged=function(){}; -Wf.prototype.standardMouseWheel=function(){var a=this.g;if(null!==a){var b=a.N,c=b.gl;if(0!==c&&a.ae.G()){var d=a.nb,e=a.Za.Ht;if((e===dh&&!b.shift||e===eh&&b.control)&&(0e||Math.abs(b.y-a.y)>d};v.u(Wf,{g:"diagram"},function(){return this.W});v.defineProperty(Wf,{name:"name"},function(){return this.Ob},function(a){v.j(a,"string",Wf,"name");this.Ob=a}); -v.defineProperty(Wf,{isEnabled:"isEnabled"},function(){return this.Re},function(a){v.j(a,"boolean",Wf,"isEnabled");this.Re=a});v.defineProperty(Wf,{qa:"isActive"},function(){return this.HB},function(a){v.j(a,"boolean",Wf,"isActive");this.HB=a});v.defineProperty(Wf,{Cf:"transactionResult"},function(){return this.SC},function(a){null!==a&&v.j(a,"string",Wf,"transactionResult");this.SC=a}); -function Xg(){0e&&(e=k),l>f&&(f=l))}}Infinity===c?b.m(0,0,0,0):b.m(c,d,e-c,f-d)} -function Ih(a,b){if(null===a.hc){var c=a.g;if(!(null===c||b&&(c.ab||c.wf))&&null!==a.ac){var d=c.la;d.isEnabled&&d.dE?null!==d.Qi&&0c.oa)){var d=a.g;if(null!==d&&!d.ab&&(d=a.Gi,null!==d)){var e=null,f=null;null===c.S&&(e=Sh(a,c.l(0),!1),null!==e&&(f=e.Y));var h=null,k=null;null===c.Z&&(h=Sh(a,c.l(c.oa-1),!0),null!==h&&(k=h.Y));d.isValidLink(f,e,k,h)?b?(c.Cn=c.l(0).copy(),c.Gn=c.l(c.oa-1).copy(),c.Kp=!1,c.S=f,null!==e&&(c.xg=e.Ud),c.Z=k,null!==h&&(c.rh=h.Ud)):Th(d,f,e,k,h):Th(d,null,null,null,null)}}}Xg.prototype.doDragOver=function(){}; -function Uh(a,b){var c=a.g;if(null!==c){a.Si&&Oh(a,!0);yh(a);var d=Ph(c,b,null,function(b){return!Mh(a,b)}),e=c.N;e.ze=d;if(null!==d){e.zc=!1;for(var f=d;null!==f;){var h=f.Mz;if(null!==h&&(h(e,f),e.zc))break;f=Rh(f)}}else h=c.Mz,null!==h&&h(e);if(a.qa||null!==hh)if(a.doDropOnto(b,d),a.qa||null!==hh)for(d=c.selection.i;d.next();)e=d.value,e instanceof S&&Vh(c,e.U)}}Xg.prototype.doDropOnto=function(){}; -Xg.prototype.doMouseMove=function(){if(this.qa){var a=this.g;if(null!==a&&null!==this.Km&&null!==this.ac){var b=!1,c=!1;this.mayCopy()?(b=!0,a.Zb="copy",Ih(this,!1),gh(this,this.hc),Jh(this,this.hc,!1),zh(this,this.hc)):this.mayMove()?(c=!0,a.Zb="default",Ch(this),Jh(this,this.ac,!0)):this.mayDragOut()?(a.Zb="no-drop",Ih(this,!1),Jh(this,this.hc,!1)):Ch(this);Nh(this,a.N.ca,c,b)}}}; -Xg.prototype.doMouseUp=function(){if(this.qa){var a=this.g;if(null!==a){var b=!1,c=this.mayCopy();c&&null!==this.hc?(Ch(this),Ih(this,!0),gh(this,this.hc),Jh(this,this.hc,!1),zh(this,this.hc),null!==this.hc&&a.QE(this.hc.dj())):(b=!0,Ch(this),this.mayMove()&&(Jh(this,this.ac,!0),Nh(this,a.N.ca,!0,!1)));this.Aq=!0;Uh(this,a.N.ca);if(this.qa){this.hc=null;if(b&&null!==this.ac)for(b=this.ac.i;b.next();){var d=b.key;d instanceof S&&(d=d.Sa,null===d||null===d.placeholder||this.ac.contains(d)||d.qD&&d.P())}a.qc(); -zh(this,this.ac);this.Cf=c?"Copy":"Move";a.Ba(c?"SelectionCopied":"SelectionMoved",a.selection)}this.stopTool()}}};Xg.prototype.mayCopy=function(){if(!this.aE)return!1;var a=this.g;if(null===a||a.ab||a.wf||!a.Ko||!a.Uj||(v.ak?!a.N.alt:!a.N.control))return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.Rd()&&b.canCopy())return!0}return null!==this.ad&&this.Si&&this.ad.canCopy()?!0:!1}; -Xg.prototype.mayDragOut=function(){if(!this.aE)return!1;var a=this.g;if(null===a||!a.Rs||!a.Uj||a.$k)return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.Rd()&&b.canCopy())return!0}return null!==this.ad&&this.Si&&this.ad.canCopy()?!0:!1};Xg.prototype.mayMove=function(){var a=this.g;if(null===a||a.ab||!a.$k)return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.Rd()&&b.canMove())return!0}return null!==this.ad&&this.Si&&this.ad.canMove()?!0:!1};var Ah=new I(Xg),hh=null,ih=null; -Xg.prototype.mayDragIn=function(){var a=this.g;if(null===a||!a.cD||a.ab||a.wf||!a.Ko)return!1;var b=hh;return null===b||b.g.ba.el!==a.ba.el?!1:!0};Xg.prototype.doSimulatedDragEnter=function(){if(this.mayDragIn()){var a=this.g;a.Na.ai();Wh(a);a=hh;null!==a&&(a.g.Zb="copy")}};Xg.prototype.doSimulatedDragLeave=function(){var a=hh;null!==a&&a.doSimulatedDragOut();this.doCancel()}; -Xg.prototype.doSimulatedDragOver=function(){var a=this.g;if(null!==a){var b=hh;null!==b&&null!==b.ac&&this.mayDragIn()&&(a.Zb="copy",Xh(this,b.ac.dj(),!1),Jh(this,this.hc,!1),Nh(this,a.N.ca,!1,!0))}}; -Xg.prototype.doSimulatedDrop=function(){var a=this.g;if(null!==a){var b=hh;if(null!==b){var c=b.g;b.Aq=!0;Ch(this);this.mayDragIn()&&(this.Qb("Drop"),Xh(this,b.ac.dj(),!0),Jh(this,this.hc,!1),null!==this.hc&&a.QE(this.hc.dj()),Uh(this,a.N.ca),a.qc(),b=a.selection,null!==this.hc?this.Cf="ExternalCopy":b=new J(R),this.hc=null,a.focus(),a.Ba("ExternalObjectsDropped",b,c),this.fk())}}}; -function Xh(a,b,c){if(null===a.hc){var d=a.g;if(null!==d&&!d.ab&&!d.wf){d.tb=!c;d.Rp=!c;a.ek=d.N.ca;d=d.Ro(b,d,!0);c=v.bg();Hh(b,c);var e=c.x+c.width/2,f=c.y+c.height/2;v.Vb(c);var h=a.Tv;c=new na(R);var k=v.L();for(b=b.i;b.next();){var l=b.value;if(l.Rd()&&l.canCopy()){var m=l.location,l=d.ja(l);k.m(h.x-(e-m.x),h.y-(f-m.y));l.location=k;l.tf();c.add(l,vh(k))}}v.v(k);for(d=d.i;d.next();)e=d.value,e instanceof W&&e.canCopy()&&c.add(e,vh());a.hc=c;fh(a,c.dj());null!==a.ad&&(c=a.ad,d=c.bn,c.xl(a.ek.x- -(d.x+d.width/2),a.ek.y-(d.y+d.height/2)))}}}Xg.prototype.doSimulatedDragOut=function(){var a=this.g;null!==a&&(this.mayCopy()||this.mayMove()?a.Zb="":a.Zb="no-drop")};function wh(a){this.point=a;this.VE=Xc}v.ea("DraggingInfo",wh);function Kh(a,b,c){this.Jc=a;this.info=b;this.ZG=c} -function Yh(){0=d&&(d=.1);for(var e=this,f=b.Mm(c,d,function(b){return e.findValidLinkablePort(b,a)},null,!0),d=Infinity,b=null,f=f.i;f.next();){var h=f.value,k=h.Y;if(k instanceof S){var l=h.Xa(Ab,v.L()),m=c.x-l.x,n=c.y-l.y;v.v(l);l=m*m+n*n;lc){if(null!==this.kc&&a===this.Dg&&b===this.Eg)return!0;var d=b.Ud;null===d&&(d="");if(a.zw(d).count>=c)return!1}return!0}; -Yh.prototype.isValidTo=function(a,b){if(null===a||null===b)return this.hp;if(this.g.Wa===this&&(null!==a.layer&&!a.layer.Ss||!0!==b.bF))return!1;var c=b.KI;if(Infinity>c){if(null!==this.kc&&a===this.Fg&&b===this.Gg)return!0;var d=b.Ud;null===d&&(d="");if(a.wg(d).count>=c)return!1}return!0};Yh.prototype.isInSameNode=function(a,b){if(null===a||null===b)return!1;if(a===b)return!0;var c=a.Y,d=b.Y;return null!==c&&c===d}; -Yh.prototype.isLinked=function(a,b){if(null===a||null===b)return!1;var c=a.Y;if(!(c instanceof S))return!1;var d=a.Ud;null===d&&(d="");var e=b.Y;if(!(e instanceof S))return!1;var f=b.Ud;null===f&&(f="");for(e=e.wg(f);e.next();)if(f=e.value,f.S===c&&f.xg===d)return!0;return!1}; -Yh.prototype.isValidLink=function(a,b,c,d){if(!this.isValidFrom(a,b)||!this.isValidTo(c,d)||!(null===b||null===d||(b.RG&&d.JI||!this.isInSameNode(b,d))&&(b.QG&&d.II||!this.isLinked(b,d)))||null!==this.kc&&(null!==a&&this.isLabelDependentOnLink(a,this.kc)||null!==c&&this.isLabelDependentOnLink(c,this.kc))||null!==a&&null!==c&&(null===a.data&&null!==c.data||null!==a.data&&null===c.data)||!this.isValidCycle(a,c,this.kc))return!1;if(null!==a){var e=a.Ow;if(null!==e&&!e(a,b,c,d,this.kc))return!1}if(null!== -c&&(e=c.Ow,null!==e&&!e(a,b,c,d,this.kc)))return!1;e=this.Ow;return null!==e?e(a,b,c,d,this.kc):!0};Yh.prototype.isLabelDependentOnLink=function(a,b){if(null===a)return!1;var c=a.ge;if(null===c)return!1;if(c===b)return!0;var d=new J(S);d.add(a);return Zh(this,c,b,d)};function Zh(a,b,c,d){if(b===c)return!0;var e=b.S;if(null!==e&&e.vf&&(d.add(e),Zh(a,e.ge,c,d)))return!0;b=b.Z;return null!==b&&b.vf&&(d.add(b),Zh(a,b.ge,c,d))?!0:!1} -Yh.prototype.isValidCycle=function(a,b,c){void 0===c&&(c=null);if(null===a||null===b)return this.hp;var d=this.g.RI;if(d!==$h){if(d===ai){if(null!==c&&!c.Hc)return!0;for(d=b.ue;d.next();){var e=d.value;if(e!==c&&e.Hc&&e.Z===b)return!1}return!bi(this,a,b,c,!0)}if(d===ci){if(null!==c&&!c.Hc)return!0;for(d=a.ue;d.next();)if(e=d.value,e!==c&&e.Hc&&e.S===a)return!1;return!bi(this,a,b,c,!0)}if(d===di)return a===b?a=!0:(d=new J(S),d.add(b),a=ei(this,d,a,b,c)),!a;if(d===fi)return!bi(this,a,b,c,!1);if(d=== -ri)return a===b?a=!0:(d=new J(S),d.add(b),a=si(this,d,a,b,c)),!a}return!0};function bi(a,b,c,d,e){if(b===c)return!0;if(null===b||null===c)return!1;for(var f=b.ue;f.next();){var h=f.value;if(h!==d&&(!e||h.Hc)&&h.Z===b&&(h=h.S,h!==b&&bi(a,h,c,d,e)))return!0}return!1}function ei(a,b,c,d,e){if(c===d)return!0;if(null===c||null===d||b.contains(c))return!1;b.add(c);for(var f=c.ue;f.next();){var h=f.value;if(h!==e&&h.Z===c&&(h=h.S,h!==c&&ei(a,b,h,d,e)))return!0}return!1} -function si(a,b,c,d,e){if(c===d)return!0;if(null===c||null===d||b.contains(c))return!1;b.add(c);for(var f=c.ue;f.next();){var h=f.value;if(h!==e){var k=h.S,h=h.Z,k=k===c?h:k;if(k!==c&&si(a,b,k,d,e))return!0}}return!1}v.defineProperty(Yh,{Ow:"linkValidation"},function(){return this.Lk},function(a){null!==a&&v.j(a,"function",Yh,"linkValidation");this.Lk=a});v.defineProperty(Yh,{Xw:"portTargeted"},function(){return this.sC},function(a){null!==a&&v.j(a,"function",Yh,"portTargeted");this.sC=a}); -function ti(){0b.gt+1&&cb.targetTouches.length)return;c=b.targetTouches[0];d=b.targetTouches[1]}else if(null!==a.Jf[0])c=a.Jf[0],d=a.Jf[1];else return;this.doCancel();if(a.ap("hasGestureZoom")){a.iy=!0;a.kC=a.scale;var e=bh(a),f=c,h=f.clientX-e.x,c=f.clientY-e.y,f=d,d=f.clientX-e.x,f=f.clientY-e.y;v.v(e);e=d-h;c=f-c;a.DC=Math.sqrt(e*e+c*c);b.preventDefault();b.cancelBubble=!0}}}; +Wf.prototype.standardPinchZoomMove=function(){var a=this.g;if(null!==a){var b=a.N.event;this.doCancel();var c=null,d=null;if(void 0!==b.targetTouches){if(2>b.targetTouches.length)return;c=b.targetTouches[0];d=b.targetTouches[1]}else if(null!==a.Jf[0])c=a.Jf[0],d=a.Jf[1];else return;if(a.ap("hasGestureZoom")&&a.iy){var e=bh(a),f=c,c=f.clientX-e.x,h=f.clientY-e.y,f=d,d=f.clientX-e.x,f=f.clientY-e.y;v.v(e);var e=d-c,k=f-h,e=Math.sqrt(e*e+k*k)/a.DC,c=new z((Math.min(d,c)+Math.max(d,c))/2,(Math.min(f, +h)+Math.max(f,h))/2),h=a.kC*e,d=a.nb;h!==a.scale&&d.canResetZoom(h)&&(e=a.Hl,a.Hl=c,d.resetZoom(h),a.Hl=e);b.preventDefault();b.cancelBubble=!0}}};Wf.prototype.doKeyDown=function(){var a=this.g;null!==a&&"Esc"===a.N.key&&this.doCancel()};Wf.prototype.doKeyUp=function(){};Wf.prototype.startTransaction=Wf.prototype.Qb=function(a){void 0===a&&(a=this.name);this.Bf=null;var b=this.g;return null===b?!1:b.Qb(a)}; +Wf.prototype.stopTransaction=Wf.prototype.fk=function(){var a=this.g;return null===a?!1:null===this.Bf?a.Ap():a.wd(this.Bf)}; +Wf.prototype.standardMouseSelect=function(){var a=this.g;if(null!==a&&a.nf){var b=a.N,c=a.gt(b.ca,!1);if(null!==c)if(v.ak?b.Ft:b.control){a.Ba("ChangingSelection");for(b=c;null!==b&&!b.canSelect();)b=b.Sa;null!==b&&(b.hb=!b.hb);a.Ba("ChangedSelection")}else if(b.shift){if(!c.hb){a.Ba("ChangingSelection");for(b=c;null!==b&&!b.canSelect();)b=b.Sa;null!==b&&(b.hb=!0);a.Ba("ChangedSelection")}}else{if(!c.hb){for(b=c;null!==b&&!b.canSelect();)b=b.Sa;null!==b&&a.select(b)}}else!b.left||(v.ak?b.Ft:b.control)|| +b.shift||a.ow()}};Wf.prototype.standardMouseClick=function(a,b){void 0===a&&(a=null);void 0===b&&(b=function(a){return!a.layer.Gc});var c=this.g;if(null===c)return!1;var d=c.N,e=c.qe(d.ca,a,b);d.ye=e;ch(e,d,c);return d.zc}; +function ch(a,b,c){b.zc=!1;var d=0;b.left?d=1===b.Ve?1:2===b.Ve?2:1:b.right&&1===b.Ve&&(d=3);var e="";if(null!==a){switch(d){case 1:e="ObjectSingleClicked";break;case 2:e="ObjectDoubleClicked";break;case 3:e="ObjectContextClicked"}0!==d&&c.Ba(e,a)}else{switch(d){case 1:e="BackgroundSingleClicked";break;case 2:e="BackgroundDoubleClicked";break;case 3:e="BackgroundContextClicked"}0!==d&&c.Ba(e)}if(null!==a)for(;null!==a;){c=null;switch(d){case 1:c=a.click;break;case 2:c=a.at?a.at:a.click;break;case 3:c= +a.ez}if(null!==c&&(c(b,a),b.zc))break;a=a.S}else{a=null;switch(d){case 1:a=c.click;break;case 2:a=c.at?c.at:c.click;break;case 3:a=c.ez}null!==a&&a(b)}} +Wf.prototype.standardMouseOver=function(){var a=this.g;if(null!==a){var b=a.N;if(null!==b.g&&!0!==a.Na.pc){var c=a.tb;a.tb=!0;var d=a.qe(b.ca,null,null);b.ye=d;var e=!1;if(d!==a.zn){var f=a.zn,h=f;a.zn=d;this.doCurrentObjectChanged(f,d);for(b.zc=!1;null!==f;){var k=f.Ht;if(null!==k){if(d===f)break;if(null!==d&&d.tl(f))break;k(b,f,d);e=!0;if(b.zc)break}f=f.S}f=h;for(b.zc=!1;null!==d;){k=d.Gt;if(null!==k){if(f===d)break;if(null!==f&&f.tl(d))break;k(b,d,f);e=!0;if(b.zc)break}d=d.S}d=a.zn}if(null!==d){f= +d;for(k="";null!==f;){k=f.cursor;if(""!==k)break;f=f.S}a.$b=k;b.zc=!1;for(f=d;null!==f;){k=f.Tz;if(null!==k&&(k(b,f),e=!0,b.zc))break;f=f.S}}else a.$b="",k=a.Tz,null!==k&&(k(b),e=!0);e&&a.ue();a.tb=c}}};Wf.prototype.doCurrentObjectChanged=function(){}; +Wf.prototype.standardMouseWheel=function(){var a=this.g;if(null!==a){var b=a.N,c=b.gl;if(0!==c&&a.Zd.G()){var d=a.nb,e=a.Za.It;if((e===dh&&!b.shift||e===eh&&b.control)&&(0e||Math.abs(b.y-a.y)>d};v.u(Wf,{g:"diagram"},function(){return this.W});v.defineProperty(Wf,{name:"name"},function(){return this.Ob},function(a){v.j(a,"string",Wf,"name");this.Ob=a}); +v.defineProperty(Wf,{isEnabled:"isEnabled"},function(){return this.Qe},function(a){v.j(a,"boolean",Wf,"isEnabled");this.Qe=a});v.defineProperty(Wf,{qa:"isActive"},function(){return this.LB},function(a){v.j(a,"boolean",Wf,"isActive");this.LB=a});v.defineProperty(Wf,{Bf:"transactionResult"},function(){return this.VC},function(a){null!==a&&v.j(a,"string",Wf,"transactionResult");this.VC=a}); +function Xg(){0e&&(e=k),l>f&&(f=l))}}Infinity===c?b.m(0,0,0,0):b.m(c,d,e-c,f-d)} +function Ih(a,b){if(null===a.hc){var c=a.g;if(!(null===c||b&&(c.ab||c.vf))&&null!==a.bc){var d=c.la;d.isEnabled&&d.gE?null!==d.Oi&&0c.oa)){var d=a.g;if(null!==d&&!d.ab&&(d=a.Ei,null!==d)){var e=null,f=null;null===c.T&&(e=Sh(a,c.l(0),!1),null!==e&&(f=e.Y));var h=null,k=null;null===c.Z&&(h=Sh(a,c.l(c.oa-1),!0),null!==h&&(k=h.Y));d.isValidLink(f,e,k,h)?b?(c.Cn=c.l(0).copy(),c.Gn=c.l(c.oa-1).copy(),c.Kp=!1,c.T=f,null!==e&&(c.wg=e.Sd),c.Z=k,null!==h&&(c.qh=h.Sd)):Th(d,f,e,k,h):Th(d,null,null,null,null)}}}Xg.prototype.doDragOver=function(){}; +function Uh(a,b){var c=a.g;if(null!==c){a.Qi&&Oh(a,!0);yh(a);var d=Ph(c,b,null,function(b){return!Mh(a,b)}),e=c.N;e.ye=d;if(null!==d){e.zc=!1;for(var f=d;null!==f;){var h=f.Qz;if(null!==h&&(h(e,f),e.zc))break;f=Rh(f)}}else h=c.Qz,null!==h&&h(e);if(a.qa||null!==hh)if(a.doDropOnto(b,d),a.qa||null!==hh)for(d=c.selection.i;d.next();)e=d.value,e instanceof S&&Vh(c,e.U)}}Xg.prototype.doDropOnto=function(){}; +Xg.prototype.doMouseMove=function(){if(this.qa){var a=this.g;if(null!==a&&null!==this.Km&&null!==this.bc){var b=!1,c=!1;this.mayCopy()?(b=!0,a.$b="copy",Ih(this,!1),gh(this,this.hc),Jh(this,this.hc,!1),zh(this,this.hc)):this.mayMove()?(c=!0,a.$b="default",Ch(this),Jh(this,this.bc,!0)):this.mayDragOut()?(a.$b="no-drop",Ih(this,!1),Jh(this,this.hc,!1)):Ch(this);Nh(this,a.N.ca,c,b)}}}; +Xg.prototype.doMouseUp=function(){if(this.qa){var a=this.g;if(null!==a){var b=!1,c=this.mayCopy();c&&null!==this.hc?(Ch(this),Ih(this,!0),gh(this,this.hc),Jh(this,this.hc,!1),zh(this,this.hc),null!==this.hc&&a.TE(this.hc.cj())):(b=!0,Ch(this),this.mayMove()&&(Jh(this,this.bc,!0),Nh(this,a.N.ca,!0,!1)));this.Aq=!0;Uh(this,a.N.ca);if(this.qa){this.hc=null;if(b&&null!==this.bc)for(b=this.bc.i;b.next();){var d=b.key;d instanceof S&&(d=d.Sa,null===d||null===d.placeholder||this.bc.contains(d)||d.tD&&d.P())}a.qc(); +zh(this,this.bc);this.Bf=c?"Copy":"Move";a.Ba(c?"SelectionCopied":"SelectionMoved",a.selection)}this.stopTool()}}};Xg.prototype.mayCopy=function(){if(!this.dE)return!1;var a=this.g;if(null===a||a.ab||a.vf||!a.Ko||!a.Uj||(v.ak?!a.N.alt:!a.N.control))return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.Pd()&&b.canCopy())return!0}return null!==this.ad&&this.Qi&&this.ad.canCopy()?!0:!1}; +Xg.prototype.mayDragOut=function(){if(!this.dE)return!1;var a=this.g;if(null===a||!a.Ss||!a.Uj||a.$k)return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.Pd()&&b.canCopy())return!0}return null!==this.ad&&this.Qi&&this.ad.canCopy()?!0:!1};Xg.prototype.mayMove=function(){var a=this.g;if(null===a||a.ab||!a.$k)return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.Pd()&&b.canMove())return!0}return null!==this.ad&&this.Qi&&this.ad.canMove()?!0:!1};var Ah=new I(Xg),hh=null,ih=null; +Xg.prototype.mayDragIn=function(){var a=this.g;if(null===a||!a.fD||a.ab||a.vf||!a.Ko)return!1;var b=hh;return null===b||b.g.ba.el!==a.ba.el?!1:!0};Xg.prototype.doSimulatedDragEnter=function(){if(this.mayDragIn()){var a=this.g;a.Na.Zh();Wh(a);a=hh;null!==a&&(a.g.$b="copy")}};Xg.prototype.doSimulatedDragLeave=function(){var a=hh;null!==a&&a.doSimulatedDragOut();this.doCancel()}; +Xg.prototype.doSimulatedDragOver=function(){var a=this.g;if(null!==a){var b=hh;null!==b&&null!==b.bc&&this.mayDragIn()&&(a.$b="copy",Xh(this,b.bc.cj(),!1),Jh(this,this.hc,!1),Nh(this,a.N.ca,!1,!0))}}; +Xg.prototype.doSimulatedDrop=function(){var a=this.g;if(null!==a){var b=hh;if(null!==b){var c=b.g;b.Aq=!0;Ch(this);this.mayDragIn()&&(this.Qb("Drop"),Xh(this,b.bc.cj(),!0),Jh(this,this.hc,!1),null!==this.hc&&a.TE(this.hc.cj()),Uh(this,a.N.ca),a.qc(),b=a.selection,null!==this.hc?this.Bf="ExternalCopy":b=new J(R),this.hc=null,a.focus(),a.Ba("ExternalObjectsDropped",b,c),this.fk())}}}; +function Xh(a,b,c){if(null===a.hc){var d=a.g;if(null!==d&&!d.ab&&!d.vf){d.tb=!c;d.Rp=!c;a.ek=d.N.ca;d=d.Ro(b,d,!0);c=v.ag();Hh(b,c);var e=c.x+c.width/2,f=c.y+c.height/2;v.Vb(c);var h=a.Uv;c=new na(R);var k=v.L();for(b=b.i;b.next();){var l=b.value;if(l.Pd()&&l.canCopy()){var m=l.location,l=d.ja(l);k.m(h.x-(e-m.x),h.y-(f-m.y));l.location=k;l.sf();c.add(l,vh(k))}}v.v(k);for(d=d.i;d.next();)e=d.value,e instanceof W&&e.canCopy()&&c.add(e,vh());a.hc=c;fh(a,c.cj());null!==a.ad&&(c=a.ad,d=c.bn,c.wl(a.ek.x- +(d.x+d.width/2),a.ek.y-(d.y+d.height/2)))}}}Xg.prototype.doSimulatedDragOut=function(){var a=this.g;null!==a&&(this.mayCopy()||this.mayMove()?a.$b="":a.$b="no-drop")};function wh(a){this.point=a;this.YE=Yc}v.ea("DraggingInfo",wh);function Kh(a,b,c){this.Jc=a;this.info=b;this.aH=c} +function Yh(){0=d&&(d=.1);for(var e=this,f=b.Mm(c,d,function(b){return e.findValidLinkablePort(b,a)},null,!0),d=Infinity,b=null,f=f.i;f.next();){var h=f.value,k=h.Y;if(k instanceof S){var l=h.Xa(Ab,v.L()),m=c.x-l.x,n=c.y-l.y;v.v(l);l=m*m+n*n;lc){if(null!==this.kc&&a===this.Cg&&b===this.Dg)return!0;var d=b.Sd;null===d&&(d="");if(a.Aw(d).count>=c)return!1}return!0}; +Yh.prototype.isValidTo=function(a,b){if(null===a||null===b)return this.hp;if(this.g.Wa===this&&(null!==a.layer&&!a.layer.Ts||!0!==b.eF))return!1;var c=b.MI;if(Infinity>c){if(null!==this.kc&&a===this.Eg&&b===this.Fg)return!0;var d=b.Sd;null===d&&(d="");if(a.vg(d).count>=c)return!1}return!0};Yh.prototype.isInSameNode=function(a,b){if(null===a||null===b)return!1;if(a===b)return!0;var c=a.Y,d=b.Y;return null!==c&&c===d}; +Yh.prototype.isLinked=function(a,b){if(null===a||null===b)return!1;var c=a.Y;if(!(c instanceof S))return!1;var d=a.Sd;null===d&&(d="");var e=b.Y;if(!(e instanceof S))return!1;var f=b.Sd;null===f&&(f="");for(e=e.vg(f);e.next();)if(f=e.value,f.T===c&&f.wg===d)return!0;return!1}; +Yh.prototype.isValidLink=function(a,b,c,d){if(!this.isValidFrom(a,b)||!this.isValidTo(c,d)||!(null===b||null===d||(b.TG&&d.LI||!this.isInSameNode(b,d))&&(b.SG&&d.KI||!this.isLinked(b,d)))||null!==this.kc&&(null!==a&&this.isLabelDependentOnLink(a,this.kc)||null!==c&&this.isLabelDependentOnLink(c,this.kc))||null!==a&&null!==c&&(null===a.data&&null!==c.data||null!==a.data&&null===c.data)||!this.isValidCycle(a,c,this.kc))return!1;if(null!==a){var e=a.Pw;if(null!==e&&!e(a,b,c,d,this.kc))return!1}if(null!== +c&&(e=c.Pw,null!==e&&!e(a,b,c,d,this.kc)))return!1;e=this.Pw;return null!==e?e(a,b,c,d,this.kc):!0};Yh.prototype.isLabelDependentOnLink=function(a,b){if(null===a)return!1;var c=a.ee;if(null===c)return!1;if(c===b)return!0;var d=new J(S);d.add(a);return Zh(this,c,b,d)};function Zh(a,b,c,d){if(b===c)return!0;var e=b.T;if(null!==e&&e.uf&&(d.add(e),Zh(a,e.ee,c,d)))return!0;b=b.Z;return null!==b&&b.uf&&(d.add(b),Zh(a,b.ee,c,d))?!0:!1} +Yh.prototype.isValidCycle=function(a,b,c){void 0===c&&(c=null);if(null===a||null===b)return this.hp;var d=this.g.TI;if(d!==$h){if(d===ai){if(null!==c&&!c.Hc)return!0;for(d=b.te;d.next();){var e=d.value;if(e!==c&&e.Hc&&e.Z===b)return!1}return!bi(this,a,b,c,!0)}if(d===ci){if(null!==c&&!c.Hc)return!0;for(d=a.te;d.next();)if(e=d.value,e!==c&&e.Hc&&e.T===a)return!1;return!bi(this,a,b,c,!0)}if(d===di)return a===b?a=!0:(d=new J(S),d.add(b),a=ei(this,d,a,b,c)),!a;if(d===fi)return!bi(this,a,b,c,!1);if(d=== +ri)return a===b?a=!0:(d=new J(S),d.add(b),a=si(this,d,a,b,c)),!a}return!0};function bi(a,b,c,d,e){if(b===c)return!0;if(null===b||null===c)return!1;for(var f=b.te;f.next();){var h=f.value;if(h!==d&&(!e||h.Hc)&&h.Z===b&&(h=h.T,h!==b&&bi(a,h,c,d,e)))return!0}return!1}function ei(a,b,c,d,e){if(c===d)return!0;if(null===c||null===d||b.contains(c))return!1;b.add(c);for(var f=c.te;f.next();){var h=f.value;if(h!==e&&h.Z===c&&(h=h.T,h!==c&&ei(a,b,h,d,e)))return!0}return!1} +function si(a,b,c,d,e){if(c===d)return!0;if(null===c||null===d||b.contains(c))return!1;b.add(c);for(var f=c.te;f.next();){var h=f.value;if(h!==e){var k=h.T,h=h.Z,k=k===c?h:k;if(k!==c&&si(a,b,k,d,e))return!0}}return!1}v.defineProperty(Yh,{Pw:"linkValidation"},function(){return this.Lk},function(a){null!==a&&v.j(a,"function",Yh,"linkValidation");this.Lk=a});v.defineProperty(Yh,{Yw:"portTargeted"},function(){return this.vC},function(a){null!==a&&v.j(a,"function",Yh,"portTargeted");this.vC=a}); +function ti(){0b.ht+1&&c=a.x)c=0>=a.y?c+225:1<=a.y?c+135:c+180;else if(1<=a.x)0>=a.y?c+=315:1<=a.y&&(c+=45);else if(0>=a.y)c+=270;else if(1<=a.y)c+=90;else break a;0>c?c+=360:360<=c&&(c-=360);b.cursor=22.5>c?"e-resize":67.5>c?"se-resize":112.5>c?"s-resize":157.5>c?"sw-resize":202.5>c?"w-resize":247.5>c?"nw-resize":292.5>c?"n-resize":337.5>c?"ne-resize":"e-resize"}else if(b instanceof D)for(b=b.elements;b.next();)Ki(a, -b.value,c)}v.defineProperty(Ji,{mt:"handleArchetype"},function(){return this.Ak},function(a){null!==a&&v.A(a,G,Ji,"handleArchetype");this.Ak=a});v.u(Ji,{handle:"handle"},function(){return this.Sb});v.defineProperty(Ji,{Yb:"adornedObject"},function(){return this.Db},function(a){null!==a&&v.A(a,G,Ji,"adornedObject");this.Db=a});Ji.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.g;return null!==a&&!a.ab&&a.Ts&&a.N.left?null!==this.findToolHandleAt(a.yc.ca,this.name)?!0:!1:!1}; -Ji.prototype.doActivate=function(){var a=this.g;null!==a&&(this.Sb=this.findToolHandleAt(a.yc.ca,this.name),null!==this.Sb&&(this.Db=this.Sb.Y.Yb,this.Dy.set(this.Db.Y.location),this.yv.set(this.Db.wa),this.ay=this.computeCellSize(),this.ey=this.computeMinSize(),this.by=this.computeMaxSize(),a.Ne=!0,this.fC=a.Na.isEnabled,a.Na.isEnabled=!1,this.Qb(this.name),this.qa=!0))};Ji.prototype.doDeactivate=function(){var a=this.g;null!==a&&(this.fk(),this.Db=this.Sb=null,this.qa=a.Ne=!1,a.Na.isEnabled=this.fC)}; -Ji.prototype.doCancel=function(){this.Db.wa=this.yv;this.Db.Y.location=this.Dy;this.stopTool()};Ji.prototype.doMouseMove=function(){var a=this.g;if(this.qa&&null!==a){var b=this.ey,c=this.by,d=this.ay,e=this.Db.OD(a.N.ca,v.L()),f=Ni;this.Db instanceof X&&(f=Oi(this.Db));b=this.computeResize(e,this.Sb.alignment,b,c,d,!(f===Pi||f===Qi||a.N.shift));this.resize(b);a.Vf();v.v(e)}}; -Ji.prototype.doMouseUp=function(){var a=this.g;if(this.qa&&null!==a){var b=this.ey,c=this.by,d=this.ay,e=this.Db.OD(a.N.ca,v.L()),f=Ni;this.Db instanceof X&&(f=Oi(this.Db));b=this.computeResize(e,this.Sb.alignment,b,c,d,!(f===Pi||f===Qi||a.N.shift));this.resize(b);v.v(e);a.qc();this.Cf=this.name;a.Ba("PartResized",this.Db,this.yv)}this.stopTool()}; -Ji.prototype.resize=function(a){if(null!==this.g){var b=this.Yb,c=b.Y,d=b.nl(),e=b.Ti(),f=Math.PI*d/180,h=Math.cos(f),f=Math.sin(f),k=0d?1:0,l=90d?1:0,d=180d?1:0,m=b.Ha.width,n=b.Ha.height;b.wa=a.size;var p=c.position.copy();c.tf();m=b.Ha.width-m;n=b.Ha.height-n;if(0!==m||0!==n)0!==m&&(p.x+=e*((a.x+m*l)*h-(a.y+n*k)*f)),0!==n&&(p.y+=e*((a.x+m*d)*f+(a.y+n*l)*h)),c.move(p),c instanceof S&&c.cf()}}; -Ji.prototype.computeResize=function(a,b,c,d,e,f){b.te()&&(b=Ab);var h=this.Yb.Ha,k=h.x,l=h.y,m=h.x+h.width,n=h.y+h.height,p=1;if(!f){var p=h.width,q=h.height;0>=p&&(p=1);0>=q&&(q=1);p=q/p}q=v.L();Pa(a.x,a.y,k,l,e.width,e.height,q);a=h.copy();0>=b.x?0>=b.y?(a.x=Math.max(q.x,m-d.width),a.x=Math.min(a.x,m-c.width),a.width=Math.max(m-a.x,c.width),a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n-c.height),a.height=Math.max(n-a.y,c.height),f||(b=a.height/a.width,p=a.x)c=0>=a.y?c+225:1<=a.y?c+135:c+180;else if(1<=a.x)0>=a.y?c+=315:1<=a.y&&(c+=45);else if(0>=a.y)c+=270;else if(1<=a.y)c+=90;else break a;0>c?c+=360:360<=c&&(c-=360);b.cursor=22.5>c?"e-resize":67.5>c?"se-resize":112.5>c?"s-resize":157.5>c?"sw-resize":202.5>c?"w-resize":247.5>c?"nw-resize":292.5>c?"n-resize":337.5>c?"ne-resize":"e-resize"}else if(b instanceof D)for(b=b.elements;b.next();)Ki(a, +b.value,c)}v.defineProperty(Ji,{nt:"handleArchetype"},function(){return this.Ak},function(a){null!==a&&v.A(a,G,Ji,"handleArchetype");this.Ak=a});v.u(Ji,{handle:"handle"},function(){return this.Sb});v.defineProperty(Ji,{Zb:"adornedObject"},function(){return this.Db},function(a){null!==a&&v.A(a,G,Ji,"adornedObject");this.Db=a});Ji.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.g;return null!==a&&!a.ab&&a.Us&&a.N.left?null!==this.findToolHandleAt(a.yc.ca,this.name)?!0:!1:!1}; +Ji.prototype.doActivate=function(){var a=this.g;null!==a&&(this.Sb=this.findToolHandleAt(a.yc.ca,this.name),null!==this.Sb&&(this.Db=this.Sb.Y.Zb,this.Ey.set(this.Db.Y.location),this.zv.set(this.Db.xa),this.by=this.computeCellSize(),this.gy=this.computeMinSize(),this.ey=this.computeMaxSize(),a.Me=!0,this.iC=a.Na.isEnabled,a.Na.isEnabled=!1,this.Qb(this.name),this.qa=!0))};Ji.prototype.doDeactivate=function(){var a=this.g;null!==a&&(this.fk(),this.Db=this.Sb=null,this.qa=a.Me=!1,a.Na.isEnabled=this.iC)}; +Ji.prototype.doCancel=function(){this.Db.xa=this.zv;this.Db.Y.location=this.Ey;this.stopTool()};Ji.prototype.doMouseMove=function(){var a=this.g;if(this.qa&&null!==a){var b=this.gy,c=this.ey,d=this.by,e=this.Db.RD(a.N.ca,v.L()),f=Ni;this.Db instanceof X&&(f=Oi(this.Db));b=this.computeResize(e,this.Sb.alignment,b,c,d,!(f===Pi||f===Qi||a.N.shift));this.resize(b);a.Uf();v.v(e)}}; +Ji.prototype.doMouseUp=function(){var a=this.g;if(this.qa&&null!==a){var b=this.gy,c=this.ey,d=this.by,e=this.Db.RD(a.N.ca,v.L()),f=Ni;this.Db instanceof X&&(f=Oi(this.Db));b=this.computeResize(e,this.Sb.alignment,b,c,d,!(f===Pi||f===Qi||a.N.shift));this.resize(b);v.v(e);a.qc();this.Bf=this.name;a.Ba("PartResized",this.Db,this.zv)}this.stopTool()}; +Ji.prototype.resize=function(a){if(null!==this.g){var b=this.Zb,c=b.Y,d=b.nl(),e=b.Ri(),f=Math.PI*d/180,h=Math.cos(f),f=Math.sin(f),k=0d?1:0,l=90d?1:0,d=180d?1:0,m=b.Ha.width,n=b.Ha.height;b.xa=a.size;var p=c.position.copy();c.sf();m=b.Ha.width-m;n=b.Ha.height-n;if(0!==m||0!==n)0!==m&&(p.x+=e*((a.x+m*l)*h-(a.y+n*k)*f)),0!==n&&(p.y+=e*((a.x+m*d)*f+(a.y+n*l)*h)),c.move(p),c instanceof S&&c.bf()}}; +Ji.prototype.computeResize=function(a,b,c,d,e,f){b.se()&&(b=Ab);var h=this.Zb.Ha,k=h.x,l=h.y,m=h.x+h.width,n=h.y+h.height,p=1;if(!f){var p=h.width,q=h.height;0>=p&&(p=1);0>=q&&(q=1);p=q/p}q=v.L();Pa(a.x,a.y,k,l,e.width,e.height,q);a=h.copy();0>=b.x?0>=b.y?(a.x=Math.max(q.x,m-d.width),a.x=Math.min(a.x,m-c.width),a.width=Math.max(m-a.x,c.width),a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n-c.height),a.height=Math.max(n-a.y,c.height),f||(b=a.height/a.width,p=b.y?(a.width=Math.max(Math.min(q.x-k,d.width),c.width),a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n-c.height), a.height=Math.max(n-a.y,c.height),f||(b=a.height/a.width,p=b.y?(a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n-c.height),a.height=n-a.y,f||(a.width=a.height/p,a.x= -k+.5*(m-k-a.width))):1<=b.y&&(a.height=Math.max(Math.min(q.y-l,d.height),c.height),f||(a.width=a.height/p,a.x=k+.5*(m-k-a.width)));v.v(q);return a};Ji.prototype.computeMinSize=function(){var a=this.Yb.jh.copy(),b=this.jh;!isNaN(b.width)&&b.width>a.width&&(a.width=b.width);!isNaN(b.height)&&b.height>a.height&&(a.height=b.height);return a}; -Ji.prototype.computeMaxSize=function(){var a=this.Yb.yf.copy(),b=this.yf;!isNaN(b.width)&&b.widtha&&(a+=360));var b=Math.min(Math.abs(this.AI),180),c=Math.min(Math.abs(this.zI),b/2);!this.g.N.shift&&0b-c&&(a=(Math.floor(a/b)+1)*b));360<=a?a-=360:0>a&&(a+=360);return a};v.defineProperty(Ri,{AI:"snapAngleMultiple"},function(){return this.zC},function(a){v.j(a,"number",Ri,"snapAngleMultiple");this.zC=a}); -v.defineProperty(Ri,{zI:"snapAngleEpsilon"},function(){return this.yC},function(a){v.j(a,"number",Ri,"snapAngleEpsilon");this.yC=a});v.u(Ri,{nK:"originalAngle"},function(){return this.xv});function Ti(){0a.width&&(a.width=b.width);!isNaN(b.height)&&b.height>a.height&&(a.height=b.height);return a}; +Ji.prototype.computeMaxSize=function(){var a=this.Zb.xf.copy(),b=this.xf;!isNaN(b.width)&&b.widtha&&(a+=360));var b=Math.min(Math.abs(this.CI),180),c=Math.min(Math.abs(this.BI),b/2);!this.g.N.shift&&0b-c&&(a=(Math.floor(a/b)+1)*b));360<=a?a-=360:0>a&&(a+=360);return a};v.defineProperty(Ri,{CI:"snapAngleMultiple"},function(){return this.CC},function(a){v.j(a,"number",Ri,"snapAngleMultiple");this.CC=a}); +v.defineProperty(Ri,{BI:"snapAngleEpsilon"},function(){return this.BC},function(a){v.j(a,"number",Ri,"snapAngleEpsilon");this.BC=a});v.u(Ri,{pK:"originalAngle"},function(){return this.yv});function Ti(){0e.right&&(c.x-=d.width+5);c.xe.bottom&&(c.y-=d.height+5);c.ye.right&&(c.x-=d.width+5);c.xe.bottom&&(c.y-=d.height+5);c.ye.right&&(c.x-=d.width+5);c.xe.bottom?c.y-(d.height+5):c.y+20;c.ya?c/2*a*a+b:-c/2*(--a*(a-2)-1)+b} -v.defineProperty(ug,{pA:"starting"},function(){return this.yo},function(a){this.yo!==a&&(null!==a&&v.j(a,"function",ug,"starting"),this.yo=a)});v.u(ug,{qJ:"animationReasons"},function(){return this.tu});ug.prototype.prepareAutomaticAnimation=ug.prototype.$m=function(a){if(this.Re&&(this.sj||this.W.Tm)){this.tu.add(a);var b=this.pA;if(null===b||b(this,a))this.rj&&this.ai(),this.pc=!0,this.Ll=!1}}; -function Hj(a){if(a.Re&&(a.tu.clear(),a.pc))if(!a.Ll)a.pc=!1;else if(0===a.on){var b=+new Date;a.on=b;requestAnimationFrame(function(){if(!1!==a.pc&&!a.rj&&a.on===b){var c=a.W;c.Ui("temporaryPixelRatio")&&(c.Mj=1);Ij(c);a.pc=!1;c.Ba("AnimationStarting");Jj(a,b)}})}} -function Kj(a,b,c,d,e,f){if(!(!a.pc||"position"===c&&d.K(e)||b instanceof R&&!b.YD)){var h=a.hm;if(h.contains(b)){b=h.ja(b);var k=b.start,l=b.end;void 0===k[c]&&(k[c]=Lj(d));b.hz&&void 0!==l[c]?b.nz[c]=Lj(e):(f||(b.nz[c]=Lj(e)),l[c]=Lj(e))}else k=new ta,l=new ta,k[c]=Lj(d),l[c]=Lj(e),c=l,d=k.position,d instanceof y&&!d.G()&&a.tu.contains("Expand SubGraph")&&d.assign(c.position),h.add(b,new Gj(k,l,f));a.Ll=!0}}function Lj(a){return a instanceof y?a.copy():a instanceof ia?a.copy():a} -function Jj(a,b){var c;function d(){if(!1!==f.rj&&f.on===b){var a=+new Date,c=a>s?m:a-r;Mj(f);Nj(f,e,q,h,c,m);f.Gu&&f.Gu();Wh(e);Oj(f);a>s?Pj(f):requestAnimationFrame(d)}}void 0===c&&(c=new ta);var e=a.W;if(null!==e){a.rj=!0;var f=a,h=c.LJ||a.kB,k=c.lK||null,l=c.mK||null,m=c.duration||a.Yx,n=a.HF;for(c=a.hm.i;c.next();){var p=c.value.start.position;p instanceof y&&(p.G()||p.assign(n))}a.eB=h;a.Gu=k;a.Hu=l;a.dB=m;a.hB=a.hm;var q=a.hB;for(c=q.i;c.next();)k=c.value.end,k["position:placeholder"]&&(l= +v.defineProperty(cj,{ze:"textBlock"},function(){return this.Py},function(a){null!==a&&v.A(a,$g,cj,"textBlock");this.Py=a});v.defineProperty(cj,{qf:"currentTextEditor"},function(){return this.mB},function(a){this.mB=a});v.defineProperty(cj,{DG:"defaultTextEditor"},function(){return this.tB},function(a){v.A(a,Element,cj,"defaultTextEditor");this.tB=a});v.defineProperty(cj,{tA:"starting"},function(){return this.yo},function(a){v.pb(a,cj,cj,"starting");this.yo=a}); +cj.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.g;if(null===a||a.ab||!a.N.left||this.isBeyondDragSize())return!1;a=a.qe(a.N.ca,null,function(a){return a instanceof $g});if(null===a||!a.oz||!a.Y.canEdit())return!1;a=a.Y;return null===a||this.tA===dj&&!a.hb?!1:!0};cj.prototype.doStart=function(){this.qa||null===this.ze||this.doActivate()}; +cj.prototype.doActivate=function(){if(!this.qa){var a=this.g;if(null!==a){var b=this.ze;null===b&&(b=a.qe(a.N.ca,function(a){return a instanceof $g?a:null}));if(null!==b&&(this.ze=b,null!==b.Y)){this.qa=!0;this.eb=kj;var c=this.DG,d=!1;null!==b.dF&&(c=b.dF);null===c||c.QB||(d=!0);this.JC=this.ze.copy();var e=new B(this.ze.Xa(tb),this.ze.Xa(Fb));a.tI(e);if(c.QB){var f=b.Xa(Ab),h=a.position,k=a.scale,l=b.Ri()*k;le.right&&(c.x-=d.width+5);c.xe.bottom?c.y-(d.height+5):c.y+20;c.ya?c/2*a*a+b:-c/2*(--a*(a-2)-1)+b} +v.defineProperty(ug,{tA:"starting"},function(){return this.yo},function(a){this.yo!==a&&(null!==a&&v.j(a,"function",ug,"starting"),this.yo=a)});v.u(ug,{sJ:"animationReasons"},function(){return this.uu});ug.prototype.prepareAutomaticAnimation=ug.prototype.$m=function(a){if(this.Qe&&(this.sj||this.W.Tm)){this.uu.add(a);var b=this.tA;if(null===b||b(this,a))this.rj&&this.Zh(),this.pc=!0,this.Kl=!1}}; +function Hj(a){if(a.Qe&&(a.uu.clear(),a.pc))if(!a.Kl)a.pc=!1;else if(0===a.on){var b=+new Date;a.on=b;requestAnimationFrame(function(){if(!1!==a.pc&&!a.rj&&a.on===b){var c=a.W;c.Si("temporaryPixelRatio")&&(c.Mj=1);Ij(c);a.pc=!1;c.Ba("AnimationStarting");Jj(a,b)}})}} +function Kj(a,b,c,d,e,f){if(!(!a.pc||"position"===c&&d.K(e)||b instanceof R&&!b.aE)){var h=a.gm;if(h.contains(b)){b=h.ja(b);var k=b.start,l=b.end;void 0===k[c]&&(k[c]=Lj(d));b.jz&&void 0!==l[c]?b.rz[c]=Lj(e):(f||(b.rz[c]=Lj(e)),l[c]=Lj(e))}else k=new ta,l=new ta,k[c]=Lj(d),l[c]=Lj(e),c=l,d=k.position,d instanceof z&&!d.G()&&a.uu.contains("Expand SubGraph")&&d.assign(c.position),h.add(b,new Gj(k,l,f));a.Kl=!0}}function Lj(a){return a instanceof z?a.copy():a instanceof ia?a.copy():a} +function Jj(a,b){var c;function d(){if(!1!==f.rj&&f.on===b){var a=+new Date,c=a>s?m:a-r;Mj(f);Nj(f,e,q,h,c,m);f.Hu&&f.Hu();Wh(e);Oj(f);a>s?Pj(f):requestAnimationFrame(d)}}void 0===c&&(c=new ta);var e=a.W;if(null!==e){a.rj=!0;var f=a,h=c.NJ||a.oB,k=c.nK||null,l=c.oK||null,m=c.duration||a.Zx,n=a.KF;for(c=a.gm.i;c.next();){var p=c.value.start.position;p instanceof z&&(p.G()||p.assign(n))}a.iB=h;a.Hu=k;a.Iu=l;a.hB=m;a.lB=a.gm;var q=a.lB;for(c=q.i;c.next();)k=c.value.end,k["position:placeholder"]&&(l= k["position:placeholder"],n=l.Xa(tb),n.x+=l.padding.left,n.y+=l.padding.top,k["position:placeholder"]=n);Mj(a);Nj(a,e,q,h,0,m);Wh(a.W);Oj(a);var r=+new Date,s=r+m;f.on===b&&requestAnimationFrame(function(){d()})}} -var Qj={opacity:function(a,b,c,d,e,f){a.opacity=d(e,b,c-b,f)},position:function(a,b,c,d,e,f){e!==f?a.mx(d(e,b.x,c.x-b.x,f),d(e,b.y,c.y-b.y,f)):a.position=new y(d(e,b.x,c.x-b.x,f),d(e,b.y,c.y-b.y,f))},"position:node":function(a,b,c,d,e,f){var h=a.U,k=c.U;c=k.x+k.width/2-h.width/2;h=k.y+k.height/2-h.height/2;e!==f?a.mx(d(e,b.x,c-b.x,f),d(e,b.y,h-b.y,f)):a.position=new y(d(e,b.x,c-b.x,f),d(e,b.y,h-b.y,f))},"position:placeholder":function(a,b,c,d,e,f){e!==f?a.mx(d(e,b.x,c.x-b.x,f),d(e,b.y,c.y-b.y,f)): -a.position=new y(d(e,b.x,c.x-b.x,f),d(e,b.y,c.y-b.y,f))},scale:function(a,b,c,d,e,f){a.scale=d(e,b,c-b,f)},visible:function(a,b,c,d,e,f){a.visible=e!==f?b:c}};function Mj(a){if(!a.Xn){var b=a.W;a.TC=b.tb;a.RA=b.xe;a.SA=b.au;b.tb=!0;b.xe=!0;b.au=!0;a.Xn=!0}}function Oj(a){var b=a.W;b.tb=a.TC;b.xe=a.RA;b.au=a.SA;a.Xn=!1} -function Nj(a,b,c,d,e,f){for(c=c.i;c.next();){var h=c.key,k=c.value,l=k.start,k=k.end,m;for(m in k)if(("position"!==m||!k["position:placeholder"]&&!k["position:node"])&&void 0!==Qj[m])Qj[m](h,l[m],k[m],d,e,f)}d=b.Az;b.Az=!0;m=a.kB;0!==a.yq&&0!==a.xq&&(c=a.yq,b.Tb=m(e,c,a.xq-c,f));null!==a.wq&&null!==a.vq&&(c=a.wq,a=a.vq,b.kb=new y(m(e,c.x,a.x-c.x,f),m(e,c.y,a.y-c.y,f)));b.Az=d}ug.prototype.stopAnimation=ug.prototype.ai=function(){!0===this.pc&&(this.pc=!1,this.Ll&&this.W.ve());this.rj&&this.Re&&Pj(this)}; -function Pj(a){a.rj=!1;a.on=0;a.Ll=!1;a.wq=null;a.vq=null;a.yq=0;a.xq=0;Mj(a);for(var b=a.W,c=a.eB,d=a.dB,e=a.hB.i;e.next();){var f=e.key,h=e.value,k=h.start,l=h.end,m=h.nz,n;for(n in l)if(void 0!==Qj[n]){var p=n;!h.hz||"position:node"!==p&&"position:placeholder"!==p||(p="position");Qj[p](f,k[n],void 0!==m[n]?m[n]:h.hz?k[n]:l[n],c,d,d)}h.$w&&f.od(!1)}for(c=a.W.links;c.next();)d=c.value,null!==d.ro&&(d.points=d.ro,d.ro=null);b.Pw.clear();b.Mj=null;b.qc();b.Vf();Rj(b);Oj(a);a.hm=new na(G,Gj);a.Hu&& -a.Hu();a.Hu=null;a.Gu=null;b.Ba("AnimationFinished");b.ve()}function Sj(a,b,c){var d=b.U,e=c.U,f=null;c instanceof V&&(f=c.placeholder);null!==f?(d=f.Xa(tb),d.x+=f.padding.left,d.y+=f.padding.top,Kj(a,b,"position",d,b.position,!1)):Kj(a,b,"position",new y(e.x+e.width/2-d.width/2,e.y+e.height/2-d.height/2),b.position,!1);Kj(a,b,"scale",.01,b.scale,!1);if(b instanceof V)for(b=b.Ic;b.next();)f=b.value,f instanceof S&&Sj(a,f,c)} -function Tj(a,b,c){if(b.isVisible()){var d=null;c instanceof V&&(d=c.placeholder);null!==d?Kj(a,b,"position:placeholder",b.position,d,!0):Kj(a,b,"position:node",b.position,c,!0);Kj(a,b,"scale",b.scale,.01,!0);a.pc&&(d=a.hm,d.contains(b)&&(d.ja(b).$w=!0));if(b instanceof V)for(b=b.Ic;b.next();)d=b.value,d instanceof S&&Tj(a,d,c)}}function Uj(a,b,c){a.pc&&(null===a.wq&&b.G()&&null===a.vq&&(a.wq=b.copy()),a.vq=c.copy(),a.Ll=!0)} -function Vj(a,b,c){a.pc&&a.W.Tm&&(0===a.yq&&0===a.xq&&(a.yq=b),a.xq=c,a.Ll=!0)}v.defineProperty(ug,{isEnabled:"isEnabled"},function(){return this.Re},function(a){v.j(a,"boolean",ug,"isEnabled");this.Re=a});v.defineProperty(ug,{duration:"duration"},function(){return this.Yx},function(a){v.j(a,"number",ug,"duration");1>a&&v.va(a,">= 1",ug,"duration");this.Yx=a});v.u(ug,{df:"isAnimating"},function(){return this.rj});v.u(ug,{uH:"isTicking"},function(){return this.Xn}); -v.defineProperty(ug,{eE:"isInitial"},function(){return this.sj},function(a){v.j(a,"boolean",ug,"isInitial");this.sj=a});function Gj(a,b,c){this.start=a;this.end=b;this.nz=new ta;this.hz=c;this.$w=!1}function Vf(){0a&&v.va(a,">= 1",ug,"duration");this.Zx=a});v.u(ug,{cf:"isAnimating"},function(){return this.rj});v.u(ug,{wH:"isTicking"},function(){return this.Xn}); +v.defineProperty(ug,{hE:"isInitial"},function(){return this.sj},function(a){v.j(a,"boolean",ug,"isInitial");this.sj=a});function Gj(a,b,c){this.start=a;this.end=b;this.rz=new ta;this.jz=c;this.ax=!1}function Vf(){0=a)return b;for(var c=0,d=0,e=0,f=0,h=0,k=this.wb.i;k.next();){var l=k.value;l instanceof V?e++:l instanceof S?d++:l instanceof W?f++:l instanceof Tg?h++:c++}k="";0=a)return b;for(var c=0,d=0,e=0,f=0,h=0,k=this.wb.i;k.next();){var l=k.value;l instanceof V?e++:l instanceof S?d++:l instanceof W?f++:l instanceof Tg?h++:c++}k="";0=d.count)a=d.count;else if(d.da(a)===b)return-1;d.Cd(a,b);b.pt(c);d=this.g;null!==d&&(c?d.pa():d.ep(b));bk(this,a,b);return a}; -g.Me=function(a,b,c){if(!c&&b.layer!==this&&null!==b.layer)return b.layer.Me(a,b,c);var d=this.wb;if(0>a||a>=d.length){if(a=d.indexOf(b),0>a)return-1}else if(d.da(a)!==b&&(a=d.indexOf(b),0>a))return-1;b.qt(c);d.Vc(a);d=this.g;null!==d&&(c?d.pa():d.Me(b));b.kv=null;return a}; -function bk(a,b,c){b=ck(a,b,c);if(c instanceof V&&null!==c&&isNaN(c.ln)){if(0!==c.Ic.count){for(var d=-1,e=a.wb.n,f=e.length,h=0;hd&&k.Sa===c&&(d=h,0<=b))break}!(0>d)&&d=e)return b;0>b&&(b=a.indexOf(c));if(0>b)return-1;for(var f=b-1,h=NaN;0<=f;){h=a.da(f).ln;if(!isNaN(h))break;f--}for(var k=b+1,l=NaN;kd)for(;;){if(-1===f||h<=d){f++;if(f===b)break;a.Vc(b);a.Cd(f,c);return f}for(h=NaN;0<=--f&&(h=a.da(f).ln,isNaN(h)););}else if(!isNaN(l)&&l=d){k--;if(k===b)break;a.Vc(b);a.Cd(k,c);return k}for(l=NaN;++ka||1=d.count)a=d.count;else if(d.da(a)===b)return-1;d.Ad(a,b);b.qt(c);d=this.g;null!==d&&(c?d.pa():d.ep(b));bk(this,a,b);return a}; +g.Le=function(a,b,c){if(!c&&b.layer!==this&&null!==b.layer)return b.layer.Le(a,b,c);var d=this.wb;if(0>a||a>=d.length){if(a=d.indexOf(b),0>a)return-1}else if(d.da(a)!==b&&(a=d.indexOf(b),0>a))return-1;b.rt(c);d.Vc(a);d=this.g;null!==d&&(c?d.pa():d.Le(b));b.lv=null;return a}; +function bk(a,b,c){b=ck(a,b,c);if(c instanceof V&&null!==c&&isNaN(c.ln)){if(0!==c.Ic.count){for(var d=-1,e=a.wb.n,f=e.length,h=0;hd&&k.Sa===c&&(d=h,0<=b))break}!(0>d)&&d=e)return b;0>b&&(b=a.indexOf(c));if(0>b)return-1;for(var f=b-1,h=NaN;0<=f;){h=a.da(f).ln;if(!isNaN(h))break;f--}for(var k=b+1,l=NaN;kd)for(;;){if(-1===f||h<=d){f++;if(f===b)break;a.Vc(b);a.Ad(f,c);return f}for(h=NaN;0<=--f&&(h=a.da(f).ln,isNaN(h)););}else if(!isNaN(l)&&l=d){k--;if(k===b)break;a.Vc(b);a.Ad(k,c);return k}for(l=NaN;++ka||1=a)return b;for(var c=this.Xb.i;c.next();)b+="\n "+c.value.toString(a-1);return b};E.fromDiv=function(a){var b=a;"string"===typeof a&&(b=window.document.getElementById(a));return b instanceof HTMLDivElement&&b.W instanceof E?b.W:null}; -v.defineProperty(E,{hl:"div"},function(){return this.Kb},function(a){null!==a&&v.A(a,HTMLDivElement,E,"div");if(this.Kb!==a){ek=[];var b=this.Kb;null!==b?(b.W=void 0,b.innerHTML="",null!==this.zb&&(this.zb.removeEventListener("touchstart",this.gF,!1),this.zb.removeEventListener("touchmove",this.fF,!1),this.zb.removeEventListener("touchend",this.eF,!1),this.zb.zd.W=null),b=this.Za,null!==b&&(b.Oe.each(function(a){a.cancelWaitAfter()}),b.Wf.each(function(a){a.cancelWaitAfter()}),b.Xf.each(function(a){a.cancelWaitAfter()})), -b.cancelWaitAfter(),this.Wa.doCancel(),this.lf=this.zb=null,window.removeEventListener("resize",this.qF,!1),window.removeEventListener("mousemove",this.pp,!0),window.removeEventListener("mousedown",this.op,!0),window.removeEventListener("mouseup",this.rp,!0),window.removeEventListener("mousewheel",this.kh,!0),window.removeEventListener("DOMMouseScroll",this.kh,!0),window.removeEventListener("mouseout",this.qp,!0)):this.Rg=!1;this.Kb=null;if(null!==a){if(b=a.W)b.hl=null;qk(this,a);this.Zw()}}}); -function tk(a){var b=a.zb;b.addEventListener("touchstart",a.gF,!1);b.addEventListener("touchmove",a.fF,!1);b.addEventListener("touchend",a.eF,!1);b.addEventListener("mousemove",a.pp,!1);b.addEventListener("mousedown",a.op,!1);b.addEventListener("mouseup",a.rp,!1);b.addEventListener("mousewheel",a.kh,!1);b.addEventListener("DOMMouseScroll",a.kh,!1);b.addEventListener("mouseout",a.qp,!1);b.addEventListener("keydown",a.xH,!1);b.addEventListener("keyup",a.yH,!1);b.addEventListener("selectstart",function(a){a.preventDefault(); -return!1},!1);b.addEventListener("contextmenu",function(a){a.preventDefault();return!1},!1);b.addEventListener("gesturechange",function(b){a.Za.$o===Bj&&b.preventDefault()},!1);b.addEventListener("pointerdown",a.ZH,!1);b.addEventListener("pointermove",a.aI,!1);b.addEventListener("pointerleave",a.$H,!1);window.addEventListener("resize",a.qF,!1)}E.prototype.computePixelRatio=function(){return null!==this.Mj?this.Mj:this.EF};E.prototype.doMouseMove=function(){this.Wa.doMouseMove()}; +v.defineProperty(Vf,{iw:"allowReshape"},function(){return this.nk},function(a){var b=this.nk;b!==a&&(v.j(a,"boolean",Vf,"allowReshape"),this.nk=a,this.h("allowReshape",b,a))});v.defineProperty(Vf,{Us:"allowResize"},function(){return this.ok},function(a){var b=this.ok;b!==a&&(v.j(a,"boolean",Vf,"allowResize"),this.ok=a,this.h("allowResize",b,a))}); +v.defineProperty(Vf,{jw:"allowRotate"},function(){return this.pk},function(a){var b=this.pk;b!==a&&(v.j(a,"boolean",Vf,"allowRotate"),this.pk=a,this.h("allowRotate",b,a))});v.defineProperty(Vf,{nf:"allowSelect"},function(){return this.qk},function(a){var b=this.qk;b!==a&&(v.j(a,"boolean",Vf,"allowSelect"),this.qk=a,this.h("allowSelect",b,a))}); +function E(a){function b(){window.document.removeEventListener("DOMContentLoaded",b,!1);dk(c)}1=a)return b;for(var c=this.Yb.i;c.next();)b+="\n "+c.value.toString(a-1);return b};E.fromDiv=function(a){var b=a;"string"===typeof a&&(b=window.document.getElementById(a));return b instanceof HTMLDivElement&&b.W instanceof E?b.W:null}; +v.defineProperty(E,{hl:"div"},function(){return this.Kb},function(a){null!==a&&v.A(a,HTMLDivElement,E,"div");if(this.Kb!==a){ek=[];var b=this.Kb;null!==b?(b.W=void 0,b.innerHTML="",null!==this.zb&&(this.zb.removeEventListener("touchstart",this.jF,!1),this.zb.removeEventListener("touchmove",this.iF,!1),this.zb.removeEventListener("touchend",this.hF,!1),this.zb.xd.W=null),b=this.Za,null!==b&&(b.Ne.each(function(a){a.cancelWaitAfter()}),b.Vf.each(function(a){a.cancelWaitAfter()}),b.Wf.each(function(a){a.cancelWaitAfter()})), +b.cancelWaitAfter(),this.Wa.doCancel(),this.kf=this.zb=null,window.removeEventListener("resize",this.tF,!1),window.removeEventListener("mousemove",this.pp,!0),window.removeEventListener("mousedown",this.op,!0),window.removeEventListener("mouseup",this.rp,!0),window.removeEventListener("mousewheel",this.jh,!0),window.removeEventListener("DOMMouseScroll",this.jh,!0),window.removeEventListener("mouseout",this.qp,!0)):this.Qg=!1;this.Kb=null;if(null!==a){if(b=a.W)b.hl=null;qk(this,a);this.$w()}}}); +function tk(a){var b=a.zb;b.addEventListener("touchstart",a.jF,!1);b.addEventListener("touchmove",a.iF,!1);b.addEventListener("touchend",a.hF,!1);b.addEventListener("mousemove",a.pp,!1);b.addEventListener("mousedown",a.op,!1);b.addEventListener("mouseup",a.rp,!1);b.addEventListener("mousewheel",a.jh,!1);b.addEventListener("DOMMouseScroll",a.jh,!1);b.addEventListener("mouseout",a.qp,!1);b.addEventListener("keydown",a.zH,!1);b.addEventListener("keyup",a.AH,!1);b.addEventListener("selectstart",function(a){a.preventDefault(); +return!1},!1);b.addEventListener("contextmenu",function(a){a.preventDefault();return!1},!1);b.addEventListener("gesturechange",function(b){a.Za.$o===Bj&&b.preventDefault()},!1);b.addEventListener("pointerdown",a.aI,!1);b.addEventListener("pointermove",a.cI,!1);b.addEventListener("pointerleave",a.bI,!1);window.addEventListener("resize",a.tF,!1)}E.prototype.computePixelRatio=function(){return null!==this.Mj?this.Mj:this.HF};E.prototype.doMouseMove=function(){this.Wa.doMouseMove()}; E.prototype.doMouseDown=function(){this.Wa.doMouseDown()};E.prototype.doMouseUp=function(){this.Wa.doMouseUp()};E.prototype.doMouseWheel=function(){this.Wa.doMouseWheel()};E.prototype.doKeyDown=function(){this.Wa.doKeyDown()};E.prototype.doKeyUp=function(){this.Wa.doKeyUp()};E.prototype.doFocus=function(){this.focus()};E.prototype.focus=E.prototype.focus=function(){this.zb&&this.zb.focus()}; -function Ij(a){if(null!==a.zb){var b=a.Kb;if(0!==b.clientWidth&&0!==b.clientHeight){var c=a.Bk?a.wd:0,d=a.pj?a.wd:0,e=a.sd;a.sd=a.computePixelRatio();a.sd!==e&&(a.Oq=!0,a.ve());if(b.clientWidth!==a.Eb+c||b.clientHeight!==a.Jb+d)a.Sl=!0,a.le=!0,b=a.Pb,null!==b&&b.Kw&&a.al===Yg&&b.H(),a.Md||a.ve()}}} -function nk(a){var b=new Vf;b.name="Background";a.Ms(b);b=new Vf;b.name="";a.Ms(b);b=new Vf;b.name="Foreground";a.Ms(b);b=new Vf;b.name="Adornment";b.Gc=!0;a.Ms(b);b=new Vf;b.name="Tool";b.Gc=!0;b.ZD=!0;a.Ms(b);b=new Vf;b.name="Grid";b.of=!1;b.Hg=!1;b.Gc=!0;a.ZF(b,a.ct("Background"))} +function Ij(a){if(null!==a.zb){var b=a.Kb;if(0!==b.clientWidth&&0!==b.clientHeight){var c=a.Bk?a.vd:0,d=a.pj?a.vd:0,e=a.rd;a.rd=a.computePixelRatio();a.rd!==e&&(a.Oq=!0,a.ue());if(b.clientWidth!==a.Eb+c||b.clientHeight!==a.Jb+d)a.Rl=!0,a.je=!0,b=a.Pb,null!==b&&b.Lw&&a.al===Yg&&b.H(),a.Kd||a.ue()}}} +function nk(a){var b=new Vf;b.name="Background";a.Ns(b);b=new Vf;b.name="";a.Ns(b);b=new Vf;b.name="Foreground";a.Ns(b);b=new Vf;b.name="Adornment";b.Gc=!0;a.Ns(b);b=new Vf;b.name="Tool";b.Gc=!0;b.bE=!0;a.Ns(b);b=new Vf;b.name="Grid";b.nf=!1;b.Gg=!1;b.Gc=!0;a.aG(b,a.dt("Background"))} function uk(a){a.jd=new D(vk);a.jd.name="GRID";var b=new X;b.Ab="LineH";b.stroke="lightgray";b.lb=.5;b.interval=1;a.jd.add(b);b=new X;b.Ab="LineH";b.stroke="gray";b.lb=.5;b.interval=5;a.jd.add(b);b=new X;b.Ab="LineH";b.stroke="gray";b.lb=1;b.interval=10;a.jd.add(b);b=new X;b.Ab="LineV";b.stroke="lightgray";b.lb=.5;b.interval=1;a.jd.add(b);b=new X;b.Ab="LineV";b.stroke="gray";b.lb=.5;b.interval=5;a.jd.add(b);b=new X;b.Ab="LineV";b.stroke="gray";b.lb=1;b.interval=10;a.jd.add(b);b=new R;b.add(a.jd); -b.Uf="Grid";b.ln=0;b.Cz=!1;b.YD=!1;b.Hg=!1;b.Hz="GRID";a.add(b);a.wb.remove(b);a.jd.visible=!1}E.prototype.GF=function(){this.W.isEnabled?this.W.FG(this):wk(this.W)};E.prototype.gC=function(a){this.W.isEnabled?(this.W.Fy=!0,this.W.Hy=a.target.scrollTop,this.W.Gy=a.target.scrollLeft):wk(this.W)}; -E.prototype.diagramScroll=E.prototype.FG=function(a){if(this.Fy&&null!==this.zb){this.Kv=!0;var b=this.ae,c=this.rb,d=b.width,e=c.width,f=b.height,h=c.height,k=b.right,l=c.right,m=b.bottom,n=c.bottom,p=b.x,q=c.x,b=b.y,c=c.y,r=this.scale,s;el&&(this.position=s.m(-(this.Ov.scrollWidth-this.Eb)+a.scrollLeft-this.Eb/r+k,this.position.y))),a.LF&&this.pe&&(bn&&(this.position=s.m(this.position.x,-(this.Ov.scrollHeight-this.Jb)+a.scrollTop-this.Jb/r+m))),v.v(s),xk(this),this.Sl=this.Kv=!1,b=this.ae,c=this.rb,k=b.right,l=c.right,m=b.bottom,n=c.bottom,p=b.x,q=c.x,b=b.y,c=c.y,e>=d&&p>=q&&k<=l&&(this.bs.style.width="1px"),h>=f&& -b>=c&&m<=n&&(this.bs.style.height="1px"))}};E.prototype.computeBounds=E.prototype.ah=function(){0c&&(e=c),ea.hh&&(e=a.hh),e):b===Fk?(e=l>k?(h-a.wd)/d:(f-a.wd)/e,e>c&&(e=c),ea.hh&&(e=a.hh),e):a.scale}E.prototype.zoomToFit=E.prototype.zoomToFit=function(){this.scale=Bk(this,Ek)}; -E.prototype.zoomToRect=function(a,b){void 0===b&&(b=Ek);var c=a.width,d=a.height;if(!(0===c||0===d||isNaN(c)&&isNaN(d))){var e=1;if(b===Ek||b===Fk)if(isNaN(c))e=this.rb.height*this.scale/d;else if(isNaN(d))e=this.rb.width*this.scale/c;else var e=this.Eb,f=this.Jb,e=b===Fk?f/d>e/c?(f-(this.pj?this.wd:0))/d:(e-(this.Bk?this.wd:0))/c:Math.min(f/d,e/c);this.scale=e;this.position=new y(a.x,a.y)}};v.defineProperty(E,{Az:null},function(){return this.Pc},function(a){this.Pc=a}); -E.prototype.alignDocument=function(a,b){this.qj&&Dk(this,this.ah());var c=this.ae,d=this.rb;this.position=new y(c.x+(a.x*c.width+a.offsetX)-(b.x*d.width-b.offsetX),c.y+(a.y*c.height+a.offsetY)-(b.y*d.height-b.offsetY))}; -function Ck(a,b,c,d,e,f,h){var k=b.x,l=b.y;if(h||a.fA===fk)f.cd()&&(d>c.width&&(k=c.x+(f.x*c.width+f.offsetX)-(f.x*d-f.offsetX)),e>c.height&&(l=c.y+(f.y*c.height+f.offsetY)-(f.y*e-f.offsetY))),f=a.ME,h=d-c.width,dc.left?k=c.left:kc.top?l=c.top:ll&&(this.position=s.m(-(this.Pv.scrollWidth-this.Eb)+t-this.Eb/r+k,this.position.y))),a.OF&&this.oe&&(bn&&(this.position=s.m(this.position.x,-(this.Pv.scrollHeight-this.Jb)+a.scrollTop-this.Jb/r+m))),v.v(s),xk(this),this.Rl=this.Lv=!1,b=this.Zd,c=this.rb,k=b.right,l=c.right, +m=b.bottom,n=c.bottom,p=b.x,q=c.x,b=b.y,c=c.y,e>=d&&p>=q&&k<=l&&(this.cs.style.width="1px"),h>=f&&b>=c&&m<=n&&(this.cs.style.height="1px"))}};E.prototype.computeBounds=E.prototype.$g=function(){0c&&(e=c),ea.gh&&(e=a.gh),e):b===Fk?(e=l>k?(h-a.vd)/d:(f-a.vd)/e,e>c&&(e=c),ea.gh&&(e=a.gh),e):a.scale}E.prototype.zoomToFit=E.prototype.zoomToFit=function(){this.scale=Bk(this,Ek)}; +E.prototype.zoomToRect=function(a,b){void 0===b&&(b=Ek);var c=a.width,d=a.height;if(!(0===c||0===d||isNaN(c)&&isNaN(d))){var e=1;if(b===Ek||b===Fk)if(isNaN(c))e=this.rb.height*this.scale/d;else if(isNaN(d))e=this.rb.width*this.scale/c;else var e=this.Eb,f=this.Jb,e=b===Fk?f/d>e/c?(f-(this.pj?this.vd:0))/d:(e-(this.Bk?this.vd:0))/c:Math.min(f/d,e/c);this.scale=e;this.position=new z(a.x,a.y)}};v.defineProperty(E,{Ez:null},function(){return this.Pc},function(a){this.Pc=a}); +E.prototype.alignDocument=function(a,b){this.qj&&Dk(this,this.$g());var c=this.Zd,d=this.rb;this.position=new z(c.x+(a.x*c.width+a.offsetX)-(b.x*d.width-b.offsetX),c.y+(a.y*c.height+a.offsetY)-(b.y*d.height-b.offsetY))}; +function Ck(a,b,c,d,e,f,h){var k=b.x,l=b.y;if(h||a.jA===fk)f.cd()&&(d>c.width&&(k=c.x+(f.x*c.width+f.offsetX)-(f.x*d-f.offsetX)),e>c.height&&(l=c.y+(f.y*c.height+f.offsetY)-(f.y*e-f.offsetY))),f=a.PE,h=d-c.width,dc.left?k=c.left:kc.top?l=c.top:lb.touches.length)&&b.preventDefault();b.cancelBubble=!0;return!1} -E.prototype.xH=function(a){if(!this.W.isEnabled)return!1;var b=this.W.Nb;Gk(this.W,this.W,a,b,!1);b.key=String.fromCharCode(a.which);b.il=!0;switch(a.which){case 8:b.key="Backspace";break;case 33:b.key="PageUp";break;case 34:b.key="PageDown";break;case 35:b.key="End";break;case 36:b.key="Home";break;case 37:b.key="Left";break;case 38:b.key="Up";break;case 39:b.key="Right";break;case 40:b.key="Down";break;case 45:b.key="Insert";break;case 46:b.key="Del";break;case 48:b.key="0";break;case 187:case 61:case 107:b.key= +E.prototype.zH=function(a){if(!this.W.isEnabled)return!1;var b=this.W.Nb;Gk(this.W,this.W,a,b,!1);b.key=String.fromCharCode(a.which);b.il=!0;switch(a.which){case 8:b.key="Backspace";break;case 33:b.key="PageUp";break;case 34:b.key="PageDown";break;case 35:b.key="End";break;case 36:b.key="Home";break;case 37:b.key="Left";break;case 38:b.key="Up";break;case 39:b.key="Right";break;case 40:b.key="Down";break;case 45:b.key="Insert";break;case 46:b.key="Del";break;case 48:b.key="0";break;case 187:case 61:case 107:b.key= "Add";break;case 189:case 173:case 109:b.key="Subtract";break;case 27:b.key="Esc"}this.W.doKeyDown();return 187!==a.which&&189!==a.which&&48!==a.which&&107!==a.which&&109!==a.which&&61!==a.which&&173!==a.which||!0!==a.ctrlKey?Kk(b,a):(a.cancelBubble=!0,a.preventDefault(),a.stopPropagation(),!1)}; -E.prototype.yH=function(a){if(!this.W.isEnabled)return!1;var b=this.W.Nb;Gk(this.W,this.W,a,b,!1);b.key=String.fromCharCode(a.which);b.up=!0;switch(a.which){case 8:b.key="Backspace";break;case 33:b.key="PageUp";break;case 34:b.key="PageDown";break;case 35:b.key="End";break;case 36:b.key="Home";break;case 37:b.key="Left";break;case 38:b.key="Up";break;case 39:b.key="Right";break;case 40:b.key="Down";break;case 45:b.key="Insert";break;case 46:b.key="Del";break;case 93:a.preventDefault()}this.W.doKeyUp(); -return Kk(b,a)};E.prototype.Jq=function(a){var b=this.zb;if(null===b)return new y(0,0);var c=this.Eb,d=this.Jb,b=b.getBoundingClientRect(),c=a.clientX-c/b.width*b.left;a=a.clientY-d/b.height*b.top;return null!==this.ne?(a=new y(c,a),Qa(a,this.ne),a):new y(c,a)};function Hk(a,b,c){var d=a.zb,e=a.Eb,f=a.Jb,h=0,k=0;null!==d&&(d=d.getBoundingClientRect(),h=b.clientX-e/d.width*d.left,k=b.clientY-f/d.height*d.top);c.jf.m(h,k);null!==a.ne?(b=v.Mb(h,k),a.ne.Yh(b),c.ca.assign(b),v.v(b)):c.ca.m(h,k)} -E.prototype.invalidateDocumentBounds=E.prototype.qc=function(){this.qj||(this.qj=!0,this.ve(!0))};function Rj(a){a.Md||yk(a);a.qj&&Dk(a,a.ah())}E.prototype.redraw=E.prototype.Zw=function(){this.Pc||this.Md||(this.pa(),Lk(this),xk(this),this.qc(),this.Vf())};E.prototype.isUpdateRequested=function(){return this.Lf};E.prototype.delayInitialization=function(a){void 0===a&&(a=null);var b=this.Na,c=b.isEnabled;b.ai();b.isEnabled=!1;Wh(this);this.Rg=!1;b.isEnabled=c;null!==a&&v.setTimeout(a,1)}; -E.prototype.requestUpdate=E.prototype.ve=function(a){void 0===a&&(a=!1);if(!0!==this.Lf&&!(this.Pc||!1===a&&this.Md)){this.Lf=!0;var b=this;requestAnimationFrame(function(){b.Lf&&b.Vf()})}};E.prototype.maybeUpdate=E.prototype.Vf=function(){if(!this.Nn||this.Lf)this.Nn&&(this.Nn=!1),Wh(this)};function Mk(a,b){a.Na.df||a.Pc||!a.Sl||wk(a)||(b&&yk(a),Ak(a,!1))} -function Wh(a){if(!a.Md&&(a.Lf=!1,null!==a.Kb)){a.Md=!0;var b=a.Na,c=a.pC;if(!b.Xn&&0!==c.length){for(var d=c.n,e=d.length,f=0;fb;b++){var c=a.gg.i;if(null===c||0===a.gg.count)break;a.gg=new J(G);a.xA(c,a.gg)}} -E.prototype.xA=function(a,b){for(a.reset();a.next();){var c=a.value;!c.Rd()||c instanceof V||!c.isVisible()||(c.ul()?(fj(c,Infinity,Infinity),c.Ec()):b.add(c))}for(a.reset();a.next();)c=a.value,c instanceof V&&c.isVisible()&&cl(this,c);for(a.reset();a.next();)c=a.value,c instanceof W&&c.isVisible()&&(c.ul()?(fj(c,Infinity,Infinity),c.Ec()):b.add(c));for(a.reset();a.next();)c=a.value,c instanceof Tg&&c.isVisible()&&(c.ul()?(fj(c,Infinity,Infinity),c.Ec()):b.add(c))}; -function cl(a,b){for(var c=v.jb(),d=v.jb(),e=b.Ic;e.next();){var f=e.value;f.isVisible()&&(f instanceof V?(dl(f)||el(f)||fl(f))&&cl(a,f):f instanceof W?f.S===b||f.Z===b?d.push(f):c.push(f):(fj(f,Infinity,Infinity),f.Ec()))}for(var e=c.length,h=0;hw+1&& -(A=Math.max((u-w)*C+a.Eb,A)),q+k+1n+1&&(H=Math.max((p-n)*C+a.Jb,H)),r+l+1w+1&&(A=Math.max((u-w)*C+a.Eb,A)),q+1n+1&&(H=Math.max((p-n)*C+l,H)),r+1w+1&&(b.scrollLeft=a.position.x*C));a.xz&&a.pe&&(r+1n+1&&(b.scrollTop=a.position.y*C));h&&(a.Oq=!0);m=a.Eb;c=a.Jb;b.style.width=m+(a.Bk?a.wd:0)+"px";b.style.height=c+(a.pj?a.wd:0)+"px";a.Fy=!1;return d!==m||e!==c||a.Na.pc?(n=a.rb,a.Kt(f,n,h),!1):!0} -E.prototype.add=E.prototype.add=function(a){v.A(a,R,E,"add:part");var b=a.g;if(b!==this){null!==b&&v.k("Cannot add part "+a.toString()+" to "+this.toString()+". It is already a part of "+b.toString());this.Rp&&(a.Ik="Tool");var c=a.Uf,b=this.ct(c);null===b&&(b=this.ct(""));null===b&&v.k('Cannot add a Part when unable find a Layer named "'+c+'" and there is no default Layer');a.layer!==b&&(c=b.ep(99999999,a,a.g===this),0<=c&&this.Lc(Cf,"parts",b,null,a,null,c),b.Gc||this.qc(),a.H(ml),c=a.yt,null!== +E.prototype.AH=function(a){if(!this.W.isEnabled)return!1;var b=this.W.Nb;Gk(this.W,this.W,a,b,!1);b.key=String.fromCharCode(a.which);b.up=!0;switch(a.which){case 8:b.key="Backspace";break;case 33:b.key="PageUp";break;case 34:b.key="PageDown";break;case 35:b.key="End";break;case 36:b.key="Home";break;case 37:b.key="Left";break;case 38:b.key="Up";break;case 39:b.key="Right";break;case 40:b.key="Down";break;case 45:b.key="Insert";break;case 46:b.key="Del";break;case 93:a.preventDefault()}this.W.doKeyUp(); +return Kk(b,a)};E.prototype.Jq=function(a){var b=this.zb;if(null===b)return new z(0,0);var c=this.Eb,d=this.Jb,b=b.getBoundingClientRect(),c=a.clientX-c/b.width*b.left;a=a.clientY-d/b.height*b.top;return null!==this.me?(a=new z(c,a),Qa(a,this.me),a):new z(c,a)};function Hk(a,b,c){var d=a.zb,e=a.Eb,f=a.Jb,h=0,k=0;null!==d&&(d=d.getBoundingClientRect(),h=b.clientX-e/d.width*d.left,k=b.clientY-f/d.height*d.top);c.hf.m(h,k);null!==a.me?(b=v.Mb(h,k),a.me.Wh(b),c.ca.assign(b),v.v(b)):c.ca.m(h,k)} +E.prototype.invalidateDocumentBounds=E.prototype.qc=function(){this.qj||(this.qj=!0,this.ue(!0))};function Rj(a){a.Kd||yk(a);a.qj&&Dk(a,a.$g())}E.prototype.redraw=E.prototype.$w=function(){this.Pc||this.Kd||(this.pa(),Lk(this),xk(this),this.qc(),this.Uf())};E.prototype.isUpdateRequested=function(){return this.Kf};E.prototype.delayInitialization=function(a){void 0===a&&(a=null);var b=this.Na,c=b.isEnabled;b.Zh();b.isEnabled=!1;Wh(this);this.Qg=!1;b.isEnabled=c;null!==a&&v.setTimeout(a,1)}; +E.prototype.requestUpdate=E.prototype.ue=function(a){void 0===a&&(a=!1);if(!0!==this.Kf&&!(this.Pc||!1===a&&this.Kd)){this.Kf=!0;var b=this;requestAnimationFrame(function(){b.Kf&&b.Uf()})}};E.prototype.maybeUpdate=E.prototype.Uf=function(){if(!this.Nn||this.Kf)this.Nn&&(this.Nn=!1),Wh(this)};function Mk(a,b){a.Na.cf||a.Pc||!a.Rl||wk(a)||(b&&yk(a),Ak(a,!1))} +function Wh(a){if(!a.Kd&&(a.Kf=!1,null!==a.Kb)){a.Kd=!0;var b=a.Na,c=a.sC;if(!b.Xn&&0!==c.length){for(var d=c.n,e=d.length,f=0;fb;b++){var c=a.fg.i;if(null===c||0===a.fg.count)break;a.fg=new J(G);a.BA(c,a.fg)}} +E.prototype.BA=function(a,b){for(a.reset();a.next();){var c=a.value;!c.Pd()||c instanceof V||!c.isVisible()||(c.ul()?(fj(c,Infinity,Infinity),c.Ec()):b.add(c))}for(a.reset();a.next();)c=a.value,c instanceof V&&c.isVisible()&&cl(this,c);for(a.reset();a.next();)c=a.value,c instanceof W&&c.isVisible()&&(c.ul()?(fj(c,Infinity,Infinity),c.Ec()):b.add(c));for(a.reset();a.next();)c=a.value,c instanceof Tg&&c.isVisible()&&(c.ul()?(fj(c,Infinity,Infinity),c.Ec()):b.add(c))}; +function cl(a,b){for(var c=v.jb(),d=v.jb(),e=b.Ic;e.next();){var f=e.value;f.isVisible()&&(f instanceof V?(dl(f)||el(f)||fl(f))&&cl(a,f):f instanceof W?f.T===b||f.Z===b?d.push(f):c.push(f):(fj(f,Infinity,Infinity),f.Ec()))}for(var e=c.length,h=0;hy+1&& +(A=Math.max((u-y)*C+a.Eb,A)),q+k+1n+1&&(H=Math.max((p-n)*C+a.Jb,H)),r+l+1y+1&&(A=Math.max((u-y)*C+a.Eb,A)),q+1n+1&&(H=Math.max((p-n)*C+l,H)),r+1y+1&&(k=a.position.x*C));if(a.Uq)switch(a.Gy){case "negative":k=-(b.scrollWidth-k-b.clientWidth);break;case "reverse":k=b.scrollWidth-k-b.clientWidth}b.scrollLeft=k;a.Bz&&a.oe&&(r+1n+1&&(b.scrollTop=a.position.y*C));h&&(a.Oq=!0);m=a.Eb;c=a.Jb;b.style.width=m+(a.Bk?a.vd:0)+"px";b.style.height=c+(a.pj?a.vd:0)+"px";a.Hy=!1;return d!==m||e!== +c||a.Na.pc?(n=a.rb,a.Lt(f,n,h),!1):!0} +E.prototype.add=E.prototype.add=function(a){v.A(a,R,E,"add:part");var b=a.g;if(b!==this){null!==b&&v.k("Cannot add part "+a.toString()+" to "+this.toString()+". It is already a part of "+b.toString());this.Rp&&(a.Ik="Tool");var c=a.Tf,b=this.dt(c);null===b&&(b=this.dt(""));null===b&&v.k('Cannot add a Part when unable find a Layer named "'+c+'" and there is no default Layer');a.layer!==b&&(c=b.ep(99999999,a,a.g===this),0<=c&&this.Lc(Cf,"parts",b,null,a,null,c),b.Gc||this.qc(),a.H(ml),c=a.zt,null!== c&&c(a,null,b))}}; -E.prototype.ep=function(a){if(a instanceof S){if(this.mo.add(a),a instanceof V){var b=a.Sa;null===b?this.Uk.add(a):b.jo.add(a);b=a.Pb;null!==b&&(b.g=this)}}else a instanceof W?this.eo.add(a):a instanceof Tg||this.wb.add(a);var c=this;nl(a,function(a){ol(c,a)});a.Gb&&a.P();b=a.data;null!==b&&(a instanceof Tg||(a instanceof W?this.wk.add(b,a):this.mi.add(b,a)),nl(a,function(a){pl(c,a)}));!0!==el(a)&&!0!==fl(a)||this.gg.add(a);ql(a,!0,this);rl(a)?(a.U.G()&&this.pa(ak(a,a.U)),this.qc()):a.isVisible()&& -a.U.G()&&this.pa(ak(a,a.U));this.ve()}; -E.prototype.Me=function(a){a.Us();if(a instanceof S){if(this.mo.remove(a),a instanceof V){var b=a.Sa;null===b?this.Uk.remove(a):b.jo.remove(a);b=a.Pb;null!==b&&(b.g=null)}}else a instanceof W?this.eo.remove(a):a instanceof Tg||this.wb.remove(a);var c=this;nl(a,function(a){sl(c,a)});b=a.data;null!==b&&(a instanceof Tg||(a instanceof W?this.wk.remove(b):this.mi.remove(b)),nl(a,function(a){tl(c,a)}));this.gg.remove(a);rl(a)?(a.U.G()&&this.pa(ak(a,a.U)),this.qc()):a.isVisible()&&a.U.G()&&this.pa(ak(a, -a.U));this.ve()};E.prototype.remove=E.prototype.remove=function(a){v.A(a,R,E,"remove:part");a.hb=!1;a.gh=!1;var b=a.layer;if(null!==b&&b.g===this){a.H(ul);a.Lm();var c=b.Me(-1,a,!1);0<=c&&this.Lc(Df,"parts",b,a,null,c,null);c=a.yt;null!==c&&c(a,b,null)}};E.prototype.removeParts=E.prototype.cA=function(a,b){if(v.isArray(a))for(var c=v.Va(a),d=0;dd&&this.qc()}; -E.prototype.addLayerAfter=function(a,b){vl(this,a,b);a.Mc(this);var c=this.Xb,d=c.indexOf(a);0<=d&&(c.remove(a),null!==this.Xd&&this.Lc(Df,"layers",this,a,null,d,null));for(var e=c.count,f=0;fd&&this.qc()}; -E.prototype.removeLayer=function(a){v.A(a,Vf,E,"removeLayer:layer");a.g!==this&&v.k("Cannot remove a Layer from another Diagram: "+a+" of "+a.g);if(""!==a.name){var b=this.Xb,c=b.indexOf(a);if(b.remove(a)){for(b=a.wb.copy().i;b.next();){var d=b.value,e=d.Uf;d.Uf=e!==a.name?e:""}null!==this.Xd&&this.Lc(Df,"layers",this,a,null,c,null);this.pa();this.qc()}}};E.prototype.findLayer=E.prototype.ct=function(a){for(var b=this.Nw;b.next();){var c=b.value;if(c.name===a)return c}return null}; -E.prototype.addModelChangedListener=E.prototype.aG=function(a){v.j(a,"function",E,"addModelChangedListener:listener");null===this.Sg&&(this.Sg=new I("function"));this.Sg.add(a);this.ba.ym(a)};E.prototype.removeModelChangedListener=function(a){v.j(a,"function",E,"removeModelChangedListener:listener");null!==this.Sg&&(this.Sg.remove(a),0===this.Sg.count&&(this.Sg=null));this.ba.Nt(a)}; -E.prototype.addChangedListener=E.prototype.ym=function(a){v.j(a,"function",E,"addChangedListener:listener");null===this.gi&&(this.gi=new I("function"));this.gi.add(a)};E.prototype.removeChangedListener=E.prototype.Nt=function(a){v.j(a,"function",E,"removeChangedListener:listener");null!==this.gi&&(this.gi.remove(a),0===this.gi.count&&(this.gi=null))}; -E.prototype.mw=function(a){this.tb||this.la.TD(a);a.wc!==Bf&&(this.$h=!0);if(null!==this.gi){var b=this.gi,c=b.length;if(1===c)b=b.da(0),b(a);else if(0!==c)for(var d=b.dc(),e=0;ea.hh&&(c=a.hh);e=v.Mb(a.kb.x+h/b-h/c,a.kb.y+k/b-k/c);a.position=e;v.v(e);a.Tb=c;a.Kt(d,a.rb);a.Pc=!1;Ak(a,!1);c= -a.Na;c.pc&&Vj(c,b,a.Tb);a.pa();Lk(a)}}E.prototype.Kt=function(a,b,c){if(!a.K(b)){void 0===c&&(c=!1);c||Lk(this);xk(this);var d=this.Pb;null===d||!d.Kw||this.al!==Yg||c||a.width===b.width&&a.height===b.height||d.H();d=this.Wa;!0===this.Ul&&d instanceof Rg&&(this.N.ca=this.lF(this.N.jf),Dj(d,this));this.Pc||this.XD(a,b);Zk(this);this.Ba("ViewportBoundsChanged",c?v.th:null,a)}}; -function Zk(a,b){void 0===b&&(b=null);var c=a.jd;if(null!==c&&c.visible){for(var d=v.Fl(),e=1,f=1,h=c.ya.n,k=h.length,l=0;ln||(xl(m.Ab)?f=f*n/pe(f,n):e=e*n/pe(e,n))}h=c.Dw;d.m(f*h.width,e*h.height);h=f=l=k=0;if(null!==b)k=b.width,l=b.height,f=b.x,h=b.y;else{e=v.bg();f=a.rb;e.m(f.x,f.y,f.width,f.height);for(h=a.Bv.i;h.next();)f=h.value.rb,f.G()&&ab(e,f.x,f.y,f.width,f.height);if(!e.G()){v.Vb(e);return}k=e.width;l=e.height;f=e.x;h=e.y;v.Vb(e)}c.width=k+2*d.width;c.height= -l+2*d.height;e=v.L();Pa(f,h,0,0,d.width,d.height,e);e.offset(-d.width,-d.height);v.Zj(d);c.Y.location=e;v.v(e)}}E.prototype.clearSelection=E.prototype.nw=function(){var a=0d&&this.qc()}; +E.prototype.addLayerAfter=function(a,b){vl(this,a,b);a.Mc(this);var c=this.Yb,d=c.indexOf(a);0<=d&&(c.remove(a),null!==this.Vd&&this.Lc(Df,"layers",this,a,null,d,null));for(var e=c.count,f=0;fd&&this.qc()}; +E.prototype.removeLayer=function(a){v.A(a,Vf,E,"removeLayer:layer");a.g!==this&&v.k("Cannot remove a Layer from another Diagram: "+a+" of "+a.g);if(""!==a.name){var b=this.Yb,c=b.indexOf(a);if(b.remove(a)){for(b=a.wb.copy().i;b.next();){var d=b.value,e=d.Tf;d.Tf=e!==a.name?e:""}null!==this.Vd&&this.Lc(Df,"layers",this,a,null,c,null);this.pa();this.qc()}}};E.prototype.findLayer=E.prototype.dt=function(a){for(var b=this.Ow;b.next();){var c=b.value;if(c.name===a)return c}return null}; +E.prototype.addModelChangedListener=E.prototype.cG=function(a){v.j(a,"function",E,"addModelChangedListener:listener");null===this.Rg&&(this.Rg=new I("function"));this.Rg.add(a);this.ba.ym(a)};E.prototype.removeModelChangedListener=function(a){v.j(a,"function",E,"removeModelChangedListener:listener");null!==this.Rg&&(this.Rg.remove(a),0===this.Rg.count&&(this.Rg=null));this.ba.Ot(a)}; +E.prototype.addChangedListener=E.prototype.ym=function(a){v.j(a,"function",E,"addChangedListener:listener");null===this.ei&&(this.ei=new I("function"));this.ei.add(a)};E.prototype.removeChangedListener=E.prototype.Ot=function(a){v.j(a,"function",E,"removeChangedListener:listener");null!==this.ei&&(this.ei.remove(a),0===this.ei.count&&(this.ei=null))}; +E.prototype.nw=function(a){this.tb||this.la.WD(a);a.wc!==Bf&&(this.Yh=!0);if(null!==this.ei){var b=this.ei,c=b.length;if(1===c)b=b.da(0),b(a);else if(0!==c)for(var d=b.dc(),e=0;ea.gh&&(c=a.gh);e=v.Mb(a.kb.x+h/b-h/c,a.kb.y+k/b-k/c);a.position=e;v.v(e);a.Tb=c;a.Lt(d,a.rb);a.Pc=!1;Ak(a,!1);c= +a.Na;c.pc&&Vj(c,b,a.Tb);a.pa();Lk(a)}}E.prototype.Lt=function(a,b,c){if(!a.K(b)){void 0===c&&(c=!1);c||Lk(this);xk(this);var d=this.Pb;null===d||!d.Lw||this.al!==Yg||c||a.width===b.width&&a.height===b.height||d.H();d=this.Wa;!0===this.Tl&&d instanceof Rg&&(this.N.ca=this.oF(this.N.hf),Dj(d,this));this.Pc||this.$D(a,b);Zk(this);this.Ba("ViewportBoundsChanged",c?v.fj:null,a)}}; +function Zk(a,b){void 0===b&&(b=null);var c=a.jd;if(null!==c&&c.visible){for(var d=v.El(),e=1,f=1,h=c.za.n,k=h.length,l=0;ln||(xl(m.Ab)?f=f*n/pe(f,n):e=e*n/pe(e,n))}h=c.Ew;d.m(f*h.width,e*h.height);h=f=l=k=0;if(null!==b)k=b.width,l=b.height,f=b.x,h=b.y;else{e=v.ag();f=a.rb;e.m(f.x,f.y,f.width,f.height);for(h=a.Cv.i;h.next();)f=h.value.rb,f.G()&&ab(e,f.x,f.y,f.width,f.height);if(!e.G()){v.Vb(e);return}k=e.width;l=e.height;f=e.x;h=e.y;v.Vb(e)}c.width=k+2*d.width;c.height= +l+2*d.height;e=v.L();Pa(f,h,0,0,d.width,d.height,e);e.offset(-d.width,-d.height);v.Zj(d);c.Y.location=e;v.v(e)}}E.prototype.clearSelection=E.prototype.ow=function(){var a=0a&&v.va(a,">= 0",E,"scrollHorizontalLineChange"),this.Lv=a,this.h("scrollHorizontalLineChange",b,a))}); -v.defineProperty(E,{Tt:"scrollVerticalLineChange"},function(){return this.Pv},function(a){var b=this.Pv;b!==a&&(v.j(a,"number",E,"scrollVerticalLineChange"),0>a&&v.va(a,">= 0",E,"scrollVerticalLineChange"),this.Pv=a,this.h("scrollVerticalLineChange",b,a))});v.defineProperty(E,{N:"lastInput"},function(){return this.Nb},function(a){this.Nb=a});v.defineProperty(E,{yc:"firstInput"},function(){return this.si},function(a){this.si=a}); -v.defineProperty(E,{Zb:"currentCursor"},function(){return this.Fu},function(a){""===a&&(a=this.uq);this.Fu!==a&&(v.j(a,"string",E,"currentCursor"),null!==this.zb&&(this.Fu=a,this.zb.style.cursor=a,this.Kb.style.cursor=a))});v.defineProperty(E,{AJ:"defaultCursor"},function(){return this.uq},function(a){""===a&&(a="auto");var b=this.uq;b!==a&&(v.j(a,"string",E,"defaultCursor"),this.uq=a,this.h("defaultCursor",b,a))}); -v.defineProperty(E,{click:"click"},function(){return this.hi},function(a){var b=this.hi;b!==a&&(null!==a&&v.j(a,"function",E,"click"),this.hi=a,this.h("click",b,a))});v.defineProperty(E,{$s:"doubleClick"},function(){return this.qi},function(a){var b=this.qi;b!==a&&(null!==a&&v.j(a,"function",E,"doubleClick"),this.qi=a,this.h("doubleClick",b,a))}); -v.defineProperty(E,{cz:"contextClick"},function(){return this.ki},function(a){var b=this.ki;b!==a&&(null!==a&&v.j(a,"function",E,"contextClick"),this.ki=a,this.h("contextClick",b,a))});v.defineProperty(E,{Pz:"mouseOver"},function(){return this.Di},function(a){var b=this.Di;b!==a&&(null!==a&&v.j(a,"function",E,"mouseOver"),this.Di=a,this.h("mouseOver",b,a))}); -v.defineProperty(E,{Oz:"mouseHover"},function(){return this.Ci},function(a){var b=this.Ci;b!==a&&(null!==a&&v.j(a,"function",E,"mouseHover"),this.Ci=a,this.h("mouseHover",b,a))});v.defineProperty(E,{Nz:"mouseHold"},function(){return this.Bi},function(a){var b=this.Bi;b!==a&&(null!==a&&v.j(a,"function",E,"mouseHold"),this.Bi=a,this.h("mouseHold",b,a))}); -v.defineProperty(E,{TH:"mouseDragOver"},function(){return this.uv},function(a){var b=this.uv;b!==a&&(null!==a&&v.j(a,"function",E,"mouseDragOver"),this.uv=a,this.h("mouseDragOver",b,a))});v.defineProperty(E,{Mz:"mouseDrop"},function(){return this.Ai},function(a){var b=this.Ai;b!==a&&(null!==a&&v.j(a,"function",E,"mouseDrop"),this.Ai=a,this.h("mouseDrop",b,a))}); -v.defineProperty(E,{uA:"toolTip"},function(){return this.Ji},function(a){var b=this.Ji;b!==a&&(null!==a&&v.A(a,Tg,E,"toolTip"),this.Ji=a,this.h("toolTip",b,a))});v.defineProperty(E,{contextMenu:"contextMenu"},function(){return this.li},function(a){var b=this.li;b!==a&&(null!==a&&v.A(a,Tg,E,"contextMenu"),this.li=a,this.h("contextMenu",b,a))}); -v.defineProperty(E,{nb:"commandHandler"},function(){return this.Lx},function(a){var b=this.Lx;b!==a&&(v.A(a,Xf,E,"commandHandler"),null!==a.g&&v.k("Cannot share CommandHandlers between Diagrams: "+a.toString()),null!==b&&b.Mc(null),this.Lx=a,a.Mc(this))});v.defineProperty(E,{Za:"toolManager"},function(){return this.Oy},function(a){var b=this.Oy;b!==a&&(v.A(a,Rg,E,"toolManager"),null!==a.g&&v.k("Cannot share ToolManagers between Diagrams: "+a.toString()),null!==b&&b.Mc(null),this.Oy=a,a.Mc(this))}); -v.defineProperty(E,{Zs:"defaultTool"},function(){return this.Rx},function(a){var b=this.Rx;b!==a&&(v.A(a,Wf,E,"defaultTool"),this.Rx=a,this.Wa===b&&(this.Wa=a))});v.defineProperty(E,{Wa:"currentTool"},function(){return this.Px},function(a){var b=this.Px;null!==b&&(b.qa&&b.doDeactivate(),b.cancelWaitAfter(),b.doStop());null===a&&(a=this.Zs);null!==a&&(v.A(a,Wf,E,"currentTool"),this.Px=a,a.Mc(this),a.doStart())});v.u(E,{selection:"selection"},function(){return this.Rv}); -v.defineProperty(E,{LH:"maxSelectionCount"},function(){return this.qv},function(a){var b=this.qv;if(b!==a)if(v.j(a,"number",E,"maxSelectionCount"),0<=a&&!isNaN(a)){if(this.qv=a,this.h("maxSelectionCount",b,a),!this.la.ib&&(a=this.selection.count-a,0= 0",E,"maxSelectionCount")}); -v.defineProperty(E,{WH:"nodeSelectionAdornmentTemplate"},function(){return this.vv},function(a){var b=this.vv;b!==a&&(v.A(a,Tg,E,"nodeSelectionAdornmentTemplate"),this.vv=a,this.h("nodeSelectionAdornmentTemplate",b,a))});v.defineProperty(E,{$G:"groupSelectionAdornmentTemplate"},function(){return this.Vu},function(a){var b=this.Vu;b!==a&&(v.A(a,Tg,E,"groupSelectionAdornmentTemplate"),this.Vu=a,this.h("groupSelectionAdornmentTemplate",b,a))}); -v.defineProperty(E,{FH:"linkSelectionAdornmentTemplate"},function(){return this.mv},function(a){var b=this.mv;b!==a&&(v.A(a,Tg,E,"linkSelectionAdornmentTemplate"),this.mv=a,this.h("linkSelectionAdornmentTemplate",b,a))});v.u(E,{Qm:"highlighteds"},function(){return this.$u}); -v.defineProperty(E,{$h:"isModified"},function(){var a=this.la;return a.isEnabled?null!==a.Qi?!0:this.qy&&this.Pg!==a.Vi:this.qy},function(a){if(this.qy!==a){v.j(a,"boolean",E,"isModified");this.qy=a;var b=this.la;!a&&b.isEnabled&&(this.Pg=b.Vi);a||yl(this)}});function yl(a){var b=a.$h;a.VC!==b&&(a.VC=b,a.Ba("Modified"))} -v.defineProperty(E,{ba:"model"},function(){return this.Xd},function(a){var b=this.Xd;if(b!==a){v.A(a,F,E,"model");this.Wa.doCancel();null!==b&&b.la!==a.la&&b.la.dE&&v.k("Do not replace a Diagram.model while a transaction is in progress.");this.Na.ai();this.nw();this.Rg=!1;this.Nn=!0;this.Pg=-2;this.Lf=!1;var c=this.Md;this.Md=!0;this.Na.$m("Model");null!==b&&(null!==this.Sg&&this.Sg.each(function(a){b.Nt(a)}),b.Nt(this.cC),b instanceof Q&&zl(this,b.zg),zl(this,b.Zf));this.Xd=a;a.ym(this.bC);Al(this, -a.Zf);a instanceof Q&&Bl(this,a.zg);a.Nt(this.bC);a.ym(this.cC);null!==this.Sg&&this.Sg.each(function(b){a.ym(b)});this.Md=c;this.Pc||this.pa();null!==b&&(a.la.isEnabled=b.la.isEnabled)}});v.defineProperty(E,{Qa:null},function(){return this.VB},function(a){this.VB=a});v.u(E,{Pw:null},function(){return this.AF}); -function jk(a,b){if(b.ba===a.ba){var c=b.wc,d=b.propertyName;if(c===Bf&&"S"===d[0])if("StartingFirstTransaction"===d)c=a.Za,c.Oe.each(function(b){b.Mc(a)}),c.Wf.each(function(b){b.Mc(a)}),c.Xf.each(function(b){b.Mc(a)}),a.Md||a.Rg||(a.Lu=!0,a.Nn&&(a.Lf=!0));else if("StartingUndo"===d||"StartingRedo"===d){var e=a.Na;e.df&&!a.tb&&e.ai();a.Ba("ChangingSelection")}else"StartedTransaction"===d&&(e=a.Na,e.df&&!a.tb&&e.ai());else if(a.Qa){a.Qa=!1;try{var f=b.hf;if(""!==f)if(c===Af){if("linkFromKey"===f){var h= -b.object,k=a.Qf(h);if(null!==k){var l=b.newValue,m=a.Ze(l);k.S=m}}else if("linkToKey"===f)h=b.object,k=a.Qf(h),null!==k&&(l=b.newValue,m=a.Ze(l),k.Z=m);else if("linkFromPortId"===f){if(h=b.object,k=a.Qf(h),null!==k){var n=b.newValue;"string"===typeof n&&(k.xg=n)}}else if("linkToPortId"===f)h=b.object,k=a.Qf(h),null!==k&&(n=b.newValue,"string"===typeof n&&(k.rh=n));else if("nodeGroupKey"===f){var h=b.object,p=a.eh(h);if(null!==p){var q=b.newValue;if(void 0!==q){var r=a.Ze(q);p.Sa=r instanceof V?r: -null}else p.Sa=null}}else if("linkLabelKeys"===f){if(h=b.object,k=a.Qf(h),null!==k){var s=b.oldValue,t=b.newValue;if(v.isArray(s))for(var u=v.Va(s),w=0;wl)){var m=l;Il(k)&&m++;k.Me(m);Jl(k,m,l)}}}}function pl(a,b){var c=b.tj;if(v.isArray(c)){var d=a.Xl.ja(c);if(null===d)d=[],d.push(b),a.Xl.add(c,d);else{for(c=0;ca&&v.va(a,">= 0",E,"scrollHorizontalLineChange"),this.Mv=a,this.h("scrollHorizontalLineChange",b,a))}); +v.defineProperty(E,{Ut:"scrollVerticalLineChange"},function(){return this.Qv},function(a){var b=this.Qv;b!==a&&(v.j(a,"number",E,"scrollVerticalLineChange"),0>a&&v.va(a,">= 0",E,"scrollVerticalLineChange"),this.Qv=a,this.h("scrollVerticalLineChange",b,a))});v.defineProperty(E,{N:"lastInput"},function(){return this.Nb},function(a){this.Nb=a});v.defineProperty(E,{yc:"firstInput"},function(){return this.qi},function(a){this.qi=a}); +v.defineProperty(E,{$b:"currentCursor"},function(){return this.Gu},function(a){""===a&&(a=this.uq);this.Gu!==a&&(v.j(a,"string",E,"currentCursor"),null!==this.zb&&(this.Gu=a,this.zb.style.cursor=a,this.Kb.style.cursor=a))});v.defineProperty(E,{CJ:"defaultCursor"},function(){return this.uq},function(a){""===a&&(a="auto");var b=this.uq;b!==a&&(v.j(a,"string",E,"defaultCursor"),this.uq=a,this.h("defaultCursor",b,a))}); +v.defineProperty(E,{click:"click"},function(){return this.fi},function(a){var b=this.fi;b!==a&&(null!==a&&v.j(a,"function",E,"click"),this.fi=a,this.h("click",b,a))});v.defineProperty(E,{at:"doubleClick"},function(){return this.oi},function(a){var b=this.oi;b!==a&&(null!==a&&v.j(a,"function",E,"doubleClick"),this.oi=a,this.h("doubleClick",b,a))}); +v.defineProperty(E,{ez:"contextClick"},function(){return this.ii},function(a){var b=this.ii;b!==a&&(null!==a&&v.j(a,"function",E,"contextClick"),this.ii=a,this.h("contextClick",b,a))});v.defineProperty(E,{Tz:"mouseOver"},function(){return this.Bi},function(a){var b=this.Bi;b!==a&&(null!==a&&v.j(a,"function",E,"mouseOver"),this.Bi=a,this.h("mouseOver",b,a))}); +v.defineProperty(E,{Sz:"mouseHover"},function(){return this.Ai},function(a){var b=this.Ai;b!==a&&(null!==a&&v.j(a,"function",E,"mouseHover"),this.Ai=a,this.h("mouseHover",b,a))});v.defineProperty(E,{Rz:"mouseHold"},function(){return this.zi},function(a){var b=this.zi;b!==a&&(null!==a&&v.j(a,"function",E,"mouseHold"),this.zi=a,this.h("mouseHold",b,a))}); +v.defineProperty(E,{VH:"mouseDragOver"},function(){return this.vv},function(a){var b=this.vv;b!==a&&(null!==a&&v.j(a,"function",E,"mouseDragOver"),this.vv=a,this.h("mouseDragOver",b,a))});v.defineProperty(E,{Qz:"mouseDrop"},function(){return this.yi},function(a){var b=this.yi;b!==a&&(null!==a&&v.j(a,"function",E,"mouseDrop"),this.yi=a,this.h("mouseDrop",b,a))}); +v.defineProperty(E,{yA:"toolTip"},function(){return this.Hi},function(a){var b=this.Hi;b!==a&&(null!==a&&v.A(a,Tg,E,"toolTip"),this.Hi=a,this.h("toolTip",b,a))});v.defineProperty(E,{contextMenu:"contextMenu"},function(){return this.ji},function(a){var b=this.ji;b!==a&&(null!==a&&v.A(a,Tg,E,"contextMenu"),this.ji=a,this.h("contextMenu",b,a))}); +v.defineProperty(E,{nb:"commandHandler"},function(){return this.Mx},function(a){var b=this.Mx;b!==a&&(v.A(a,Xf,E,"commandHandler"),null!==a.g&&v.k("Cannot share CommandHandlers between Diagrams: "+a.toString()),null!==b&&b.Mc(null),this.Mx=a,a.Mc(this))});v.defineProperty(E,{Za:"toolManager"},function(){return this.Qy},function(a){var b=this.Qy;b!==a&&(v.A(a,Rg,E,"toolManager"),null!==a.g&&v.k("Cannot share ToolManagers between Diagrams: "+a.toString()),null!==b&&b.Mc(null),this.Qy=a,a.Mc(this))}); +v.defineProperty(E,{$s:"defaultTool"},function(){return this.Sx},function(a){var b=this.Sx;b!==a&&(v.A(a,Wf,E,"defaultTool"),this.Sx=a,this.Wa===b&&(this.Wa=a))});v.defineProperty(E,{Wa:"currentTool"},function(){return this.Qx},function(a){var b=this.Qx;null!==b&&(b.qa&&b.doDeactivate(),b.cancelWaitAfter(),b.doStop());null===a&&(a=this.$s);null!==a&&(v.A(a,Wf,E,"currentTool"),this.Qx=a,a.Mc(this),a.doStart())});v.u(E,{selection:"selection"},function(){return this.Sv}); +v.defineProperty(E,{NH:"maxSelectionCount"},function(){return this.rv},function(a){var b=this.rv;if(b!==a)if(v.j(a,"number",E,"maxSelectionCount"),0<=a&&!isNaN(a)){if(this.rv=a,this.h("maxSelectionCount",b,a),!this.la.ib&&(a=this.selection.count-a,0= 0",E,"maxSelectionCount")}); +v.defineProperty(E,{YH:"nodeSelectionAdornmentTemplate"},function(){return this.wv},function(a){var b=this.wv;b!==a&&(v.A(a,Tg,E,"nodeSelectionAdornmentTemplate"),this.wv=a,this.h("nodeSelectionAdornmentTemplate",b,a))});v.defineProperty(E,{bH:"groupSelectionAdornmentTemplate"},function(){return this.Wu},function(a){var b=this.Wu;b!==a&&(v.A(a,Tg,E,"groupSelectionAdornmentTemplate"),this.Wu=a,this.h("groupSelectionAdornmentTemplate",b,a))}); +v.defineProperty(E,{HH:"linkSelectionAdornmentTemplate"},function(){return this.nv},function(a){var b=this.nv;b!==a&&(v.A(a,Tg,E,"linkSelectionAdornmentTemplate"),this.nv=a,this.h("linkSelectionAdornmentTemplate",b,a))});v.u(E,{Qm:"highlighteds"},function(){return this.av}); +v.defineProperty(E,{Yh:"isModified"},function(){var a=this.la;return a.isEnabled?null!==a.Oi?!0:this.sy&&this.Og!==a.Ti:this.sy},function(a){if(this.sy!==a){v.j(a,"boolean",E,"isModified");this.sy=a;var b=this.la;!a&&b.isEnabled&&(this.Og=b.Ti);a||yl(this)}});function yl(a){var b=a.Yh;a.YC!==b&&(a.YC=b,a.Ba("Modified"))} +v.defineProperty(E,{ba:"model"},function(){return this.Vd},function(a){var b=this.Vd;if(b!==a){v.A(a,F,E,"model");this.Wa.doCancel();null!==b&&b.la!==a.la&&b.la.gE&&v.k("Do not replace a Diagram.model while a transaction is in progress.");this.Na.Zh();this.ow();this.Qg=!1;this.Nn=!0;this.Og=-2;this.Kf=!1;var c=this.Kd;this.Kd=!0;this.Na.$m("Model");null!==b&&(null!==this.Rg&&this.Rg.each(function(a){b.Ot(a)}),b.Ot(this.fC),b instanceof Q&&zl(this,b.yg),zl(this,b.Yf));this.Vd=a;a.ym(this.eC);Al(this, +a.Yf);a instanceof Q&&Bl(this,a.yg);a.Ot(this.eC);a.ym(this.fC);null!==this.Rg&&this.Rg.each(function(b){a.ym(b)});this.Kd=c;this.Pc||this.pa();null!==b&&(a.la.isEnabled=b.la.isEnabled)}});v.defineProperty(E,{Qa:null},function(){return this.YB},function(a){this.YB=a});v.u(E,{Qw:null},function(){return this.DF}); +function jk(a,b){if(b.ba===a.ba){var c=b.wc,d=b.propertyName;if(c===Bf&&"S"===d[0])if("StartingFirstTransaction"===d)c=a.Za,c.Ne.each(function(b){b.Mc(a)}),c.Vf.each(function(b){b.Mc(a)}),c.Wf.each(function(b){b.Mc(a)}),a.Kd||a.Qg||(a.Mu=!0,a.Nn&&(a.Kf=!0));else if("StartingUndo"===d||"StartingRedo"===d){var e=a.Na;e.cf&&!a.tb&&e.Zh();a.Ba("ChangingSelection")}else"StartedTransaction"===d&&(e=a.Na,e.cf&&!a.tb&&e.Zh());else if(a.Qa){a.Qa=!1;try{var f=b.gf;if(""!==f)if(c===Af){if("linkFromKey"===f){var h= +b.object,k=a.Pf(h);if(null!==k){var l=b.newValue,m=a.Ye(l);k.T=m}}else if("linkToKey"===f)h=b.object,k=a.Pf(h),null!==k&&(l=b.newValue,m=a.Ye(l),k.Z=m);else if("linkFromPortId"===f){if(h=b.object,k=a.Pf(h),null!==k){var n=b.newValue;"string"===typeof n&&(k.wg=n)}}else if("linkToPortId"===f)h=b.object,k=a.Pf(h),null!==k&&(n=b.newValue,"string"===typeof n&&(k.qh=n));else if("nodeGroupKey"===f){var h=b.object,p=a.dh(h);if(null!==p){var q=b.newValue;if(void 0!==q){var r=a.Ye(q);p.Sa=r instanceof V?r: +null}else p.Sa=null}}else if("linkLabelKeys"===f){if(h=b.object,k=a.Pf(h),null!==k){var s=b.oldValue,t=b.newValue;if(v.isArray(s))for(var u=v.Va(s),y=0;yl)){var m=l;Il(k)&&m++;k.Le(m);Jl(k,m,l)}}}}function pl(a,b){var c=b.tj;if(v.isArray(c)){var d=a.Wl.ja(c);if(null===d)d=[],d.push(b),a.Wl.add(c,d);else{for(c=0;cthis.scale&&(this.scale=a)):v.va(a,"> 0",E,"minScale"))}); -v.defineProperty(E,{hh:"maxScale"},function(){return this.pv},function(a){v.Ve(a,E,"maxScale");var b=this.pv;b!==a&&(0 0",E,"maxScale"))});v.defineProperty(E,{Il:"zoomPoint"},function(){return this.dw},function(a){this.dw.K(a)||(v.A(a,y,E,"zoomPoint"),this.dw=a=a.R())}); -v.defineProperty(E,{sD:"contentAlignment"},function(){return this.wn},function(a){var b=this.wn;b.K(a)||(v.A(a,L,E,"contentAlignment"),this.wn=a=a.R(),this.h("contentAlignment",b,a),Ak(this,!1))});v.defineProperty(E,{PJ:"initialContentAlignment"},function(){return this.Rn},function(a){var b=this.Rn;b.K(a)||(v.A(a,L,E,"initialContentAlignment"),this.Rn=a=a.R(),this.h("initialContentAlignment",b,a))}); -v.defineProperty(E,{padding:"padding"},function(){return this.Te},function(a){"number"===typeof a?a=new eb(a):v.A(a,eb,E,"padding");var b=this.Te;b.K(a)||(this.Te=a=a.R(),this.qc(),this.h("padding",b,a))});v.u(E,{Bg:"nodes"},function(){return this.mo.i});v.u(E,{links:"links"},function(){return this.eo.i});v.u(E,{dk:"parts"},function(){return this.wb.i}); -E.prototype.findTopLevelNodesAndLinks=function(){for(var a=new J(R),b=this.mo.i;b.next();){var c=b.value;c.gp&&a.add(c)}for(b=this.eo.i;b.next();)c=b.value,c.gp&&a.add(c);return a.i};E.prototype.findTopLevelGroups=function(){return this.Uk.i};v.defineProperty(E,{Pb:"layout"},function(){return this.Wd},function(a){var b=this.Wd;b!==a&&(v.A(a,Yf,E,"layout"),null!==b&&(b.g=null,b.group=null),this.Wd=a,a.g=this,a.group=null,this.uu=!0,this.h("layout",b,a),this.ve())}); -E.prototype.layoutDiagram=function(a){yk(this);a&&Ol(this,!0);$k(this,!1)};function Ol(a,b){for(var c=a.Uk.i;c.next();)Wl(a,c.value,b);null!==a.Pb&&(b?a.Pb.xf=!1:a.Pb.H())}function Wl(a,b,c){if(null!==b){for(var d=b.jo.i;d.next();)Wl(a,d.value,c);null!==b.Pb&&(c?b.Pb.xf=!1:b.Pb.H())}} -function $k(a,b){if(!a.Sx){var c=a.Pb,d=a.Qa;a.Qa=!0;try{a.Qb("Layout");var e=a.Na;1!==a.la.sh||e.df||e.pc||e.$m("Layout");for(var f=a.Uk.i;f.next();)Xl(a,f.value,b);c.xf||b&&!c.gE&&1!==a.la.sh||(c.doLayout(a),yk(a),c.xf=!0)}finally{a.yd("Layout"),a.uu=!c.xf,a.Qa=d}}}function Xl(a,b,c){if(null!==b){for(var d=b.jo.i;d.next();)Xl(a,d.value,c);d=b.Pb;null===d||d.xf||c&&!d.gE||(b.By=!b.location.G(),d.doLayout(b),b.H(Yl),d.xf=!0,cl(a,b))}} -v.defineProperty(E,{Sd:"isTreePathToChildren"},function(){return this.hv},function(a){var b=this.hv;if(b!==a&&(v.j(a,"boolean",E,"isTreePathToChildren"),this.hv=a,this.h("isTreePathToChildren",b,a),!this.la.ib))for(a=this.Bg;a.next();)Zl(a.value)});E.prototype.findTreeRoots=function(){for(var a=new I(S),b=this.Bg;b.next();){var c=b.value;c.gp&&null===c.Yo()&&a.add(c)}return a.i}; -v.defineProperty(E,{vA:"treeCollapsePolicy"},function(){return this.Zv},function(a){var b=this.Zv;b!==a&&(v.pb(a,E,E,"treeCollapsePolicy"),this.Zv=a,this.h("treeCollapsePolicy",b,a))});v.defineProperty(E,{fh:null},function(){return this.IB},function(a){this.IB=a}); +function Vl(a,b,c){if("function"===typeof c){if(!c(b))return!1}else if(c instanceof RegExp){if(!b||!c.test(b.toString()))return!1}else if(v.Ta(b)&&v.Ta(c)){if(!Ul(a,b,c))return!1}else if(b!==c)return!1;return!0}v.defineProperty(E,{mK:"nodeTemplate"},function(){return this.Ci.ja("")},function(a){var b=this.Ci.ja("");b!==a&&(v.A(a,R,E,"nodeTemplate"),this.Ci.add("",a),this.h("nodeTemplate",b,a),this.la.ib||this.yl())}); +v.defineProperty(E,{Xz:"nodeTemplateMap"},function(){return this.Ci},function(a){var b=this.Ci;b!==a&&(v.A(a,na,E,"nodeTemplateMap"),this.Ci=a,this.h("nodeTemplateMap",b,a),this.la.ib||this.yl())});v.defineProperty(E,{OJ:"groupTemplate"},function(){return this.zk.ja("")},function(a){var b=this.zk.ja("");b!==a&&(v.A(a,V,E,"groupTemplate"),this.zk.add("",a),this.h("groupTemplate",b,a),this.la.ib||this.yl())}); +v.defineProperty(E,{zz:"groupTemplateMap"},function(){return this.zk},function(a){var b=this.zk;b!==a&&(v.A(a,na,E,"groupTemplateMap"),this.zk=a,this.h("groupTemplateMap",b,a),this.la.ib||this.yl())});v.defineProperty(E,{aK:"linkTemplate"},function(){return this.wj.ja("")},function(a){var b=this.wj.ja("");b!==a&&(v.A(a,W,E,"linkTemplate"),this.wj.add("",a),this.h("linkTemplate",b,a),this.la.ib||this.yl())}); +v.defineProperty(E,{Jz:"linkTemplateMap"},function(){return this.wj},function(a){var b=this.wj;b!==a&&(v.A(a,na,E,"linkTemplateMap"),this.wj=a,this.h("linkTemplateMap",b,a),this.la.ib||this.yl())});v.defineProperty(E,{tH:null},function(){return this.Tl},function(a){this.Tl=a}); +v.defineProperty(E,{Me:"isMouseCaptured"},function(){return this.VB},function(a){var b=this.zb;null!==b&&(a?(this.N.bubbles=!1,b.removeEventListener("mousemove",this.pp,!1),b.removeEventListener("mousedown",this.op,!1),b.removeEventListener("mouseup",this.rp,!1),b.removeEventListener("mousewheel",this.jh,!1),b.removeEventListener("DOMMouseScroll",this.jh,!1),b.removeEventListener("mouseout",this.qp,!1),window.addEventListener("mousemove",this.pp,!0),window.addEventListener("mousedown",this.op,!0), +window.addEventListener("mouseup",this.rp,!0),window.addEventListener("mousewheel",this.jh,!0),window.addEventListener("DOMMouseScroll",this.jh,!0),window.addEventListener("mouseout",this.qp,!0),window.addEventListener("selectstart",this.preventDefault,!1)):(window.removeEventListener("mousemove",this.pp,!0),window.removeEventListener("mousedown",this.op,!0),window.removeEventListener("mouseup",this.rp,!0),window.removeEventListener("mousewheel",this.jh,!0),window.removeEventListener("DOMMouseScroll", +this.jh,!0),window.removeEventListener("mouseout",this.qp,!0),window.removeEventListener("selectstart",this.preventDefault,!1),b.addEventListener("mousemove",this.pp,!1),b.addEventListener("mousedown",this.op,!1),b.addEventListener("mouseup",this.rp,!1),b.addEventListener("mousewheel",this.jh,!1),b.addEventListener("DOMMouseScroll",this.jh,!1),b.addEventListener("mouseout",this.qp,!1)),this.VB=a)}); +v.defineProperty(E,{position:"position"},function(){return this.kb},function(a){var b=this.kb;if(!b.K(a)){v.A(a,z,E,"position");var c=this.rb.copy();a=a.copy();if(!this.Pc&&null!==this.zb){this.Pc=!0;var d=this.scale;Ck(this,a,this.Zd,this.Eb/d,this.Jb/d,this.wn,!1);this.Pc=!1}this.kb=a.R();a=this.Na;a.pc&&Uj(a,b,this.kb);this.Pc||this.Lt(c,this.rb)}});v.defineProperty(E,{iH:"initialPosition"},function(){return this.cv},function(a){this.cv.K(a)||(v.A(a,z,E,"initialPosition"),this.cv=a.R())}); +v.defineProperty(E,{jH:"initialScale"},function(){return this.dv},function(a){this.dv!==a&&(v.j(a,"number",E,"initialScale"),this.dv=a)});v.defineProperty(E,{mt:"grid"},function(){null===this.jd&&uk(this);return this.jd},function(a){var b=this.jd;if(b!==a){null===b&&(uk(this),b=this.jd);v.A(a,D,E,"grid");a.type!==vk&&v.k("Diagram.grid must be a Panel of type Panel.Grid");var c=b.S;null!==c&&c.remove(b);this.jd=a;a.name="GRID";null!==c&&c.add(a);Zk(this);this.pa();this.h("grid",b,a)}}); +v.u(E,{rb:"viewportBounds"},function(){var a=this.XC;if(null===this.zb)return a;var b=this.kb,c=this.Tb;a.m(b.x,b.y,Math.max(this.Eb,0)/c,Math.max(this.Jb,0)/c);return a});v.defineProperty(E,{OD:"fixedBounds"},function(){return this.Uu},function(a){var b=this.Uu;b.K(a)||(v.A(a,B,E,"fixedBounds"),-Infinity!==a.width&&Infinity!==a.height&&-Infinity!==a.height||v.k("fixedBounds width/height must not be Infinity"),this.Uu=a=a.R(),this.qc(),this.h("fixedBounds",b,a))}); +v.defineProperty(E,{PE:"scrollMargin"},function(){return this.Nv},function(a){"number"===typeof a?a=new eb(a):v.A(a,eb,E,"scrollMargin");var b=this.Nv;b.K(a)||(this.Nv=a=a.R(),this.qc(),this.h("scrollMargin",b,a))});v.defineProperty(E,{jA:"scrollMode"},function(){return this.Ov},function(a){var b=this.Ov;b!==a&&(v.pb(a,E,E,"scrollMode"),this.Ov=a,a===fk&&Ak(this,!1),this.h("scrollMode",b,a))}); +v.defineProperty(E,{AE:"positionComputation"},function(){return this.Gv},function(a){var b=this.Gv;b!==a&&(null!==a&&v.j(a,"function",E,"positionComputation"),this.Gv=a,Ak(this,!1),this.h("positionComputation",b,a))});v.defineProperty(E,{OE:"scaleComputation"},function(){return this.Kv},function(a){var b=this.Kv;b!==a&&(null!==a&&v.j(a,"function",E,"scaleComputation"),this.Kv=a,wl(this,this.scale,this.scale),this.h("scaleComputation",b,a))});v.u(E,{Zd:"documentBounds"},function(){return this.Nu}); +function Dk(a,b){a.qj=!1;var c=a.Nu;c.K(b)||(b=b.R(),a.Nu=b,Ak(a,!1),a.Ba("DocumentBoundsChanged",null,c.copy()),Lk(a))}v.defineProperty(E,{scale:"scale"},function(){return this.Tb},function(a){var b=this.Tb;v.Ue(a,E,"scale");b!==a&&wl(this,b,a)});v.defineProperty(E,{al:"autoScale"},function(){return this.Ml},function(a){var b=this.Ml;b!==a&&(v.pb(a,E,E,"autoScale"),this.Ml=a,this.h("autoScale",b,a),a!==Yg&&Ak(this,!1))}); +v.defineProperty(E,{QJ:"initialAutoScale"},function(){return this.Dk},function(a){var b=this.Dk;b!==a&&(v.pb(a,E,E,"initialAutoScale"),this.Dk=a,this.h("initialAutoScale",b,a))});v.defineProperty(E,{kH:"initialViewportSpot"},function(){return this.ev},function(a){var b=this.ev;b!==a&&(v.A(a,L,E,"initialViewportSpot"),a.cd()||v.k("initialViewportSpot must be a specific Spot: "+a),this.ev=a,this.h("initialViewportSpot",b,a))}); +v.defineProperty(E,{hH:"initialDocumentSpot"},function(){return this.bv},function(a){var b=this.bv;b!==a&&(v.A(a,L,E,"initialDocumentSpot"),a.cd()||v.k("initialViewportSpot must be a specific Spot: "+a),this.bv=a,this.h("initialDocumentSpot",b,a))});v.defineProperty(E,{hh:"minScale"},function(){return this.sv},function(a){v.Ue(a,E,"minScale");var b=this.sv;b!==a&&(0this.scale&&(this.scale=a)):v.va(a,"> 0",E,"minScale"))}); +v.defineProperty(E,{gh:"maxScale"},function(){return this.qv},function(a){v.Ue(a,E,"maxScale");var b=this.qv;b!==a&&(0 0",E,"maxScale"))});v.defineProperty(E,{Hl:"zoomPoint"},function(){return this.ew},function(a){this.ew.K(a)||(v.A(a,z,E,"zoomPoint"),this.ew=a=a.R())}); +v.defineProperty(E,{vD:"contentAlignment"},function(){return this.wn},function(a){var b=this.wn;b.K(a)||(v.A(a,L,E,"contentAlignment"),this.wn=a=a.R(),this.h("contentAlignment",b,a),Ak(this,!1))});v.defineProperty(E,{RJ:"initialContentAlignment"},function(){return this.Rn},function(a){var b=this.Rn;b.K(a)||(v.A(a,L,E,"initialContentAlignment"),this.Rn=a=a.R(),this.h("initialContentAlignment",b,a))}); +v.defineProperty(E,{padding:"padding"},function(){return this.Se},function(a){"number"===typeof a?a=new eb(a):v.A(a,eb,E,"padding");var b=this.Se;b.K(a)||(this.Se=a=a.R(),this.qc(),this.h("padding",b,a))});v.u(E,{Ag:"nodes"},function(){return this.mo.i});v.u(E,{links:"links"},function(){return this.eo.i});v.u(E,{dk:"parts"},function(){return this.wb.i}); +E.prototype.findTopLevelNodesAndLinks=function(){for(var a=new J(R),b=this.mo.i;b.next();){var c=b.value;c.gp&&a.add(c)}for(b=this.eo.i;b.next();)c=b.value,c.gp&&a.add(c);return a.i};E.prototype.findTopLevelGroups=function(){return this.Uk.i};v.defineProperty(E,{Pb:"layout"},function(){return this.Ud},function(a){var b=this.Ud;b!==a&&(v.A(a,Yf,E,"layout"),null!==b&&(b.g=null,b.group=null),this.Ud=a,a.g=this,a.group=null,this.vu=!0,this.h("layout",b,a),this.ue())}); +E.prototype.layoutDiagram=function(a){yk(this);a&&Ol(this,!0);$k(this,!1)};function Ol(a,b){for(var c=a.Uk.i;c.next();)Wl(a,c.value,b);null!==a.Pb&&(b?a.Pb.wf=!1:a.Pb.H())}function Wl(a,b,c){if(null!==b){for(var d=b.jo.i;d.next();)Wl(a,d.value,c);null!==b.Pb&&(c?b.Pb.wf=!1:b.Pb.H())}} +function $k(a,b){if(!a.Tx){var c=a.Pb,d=a.Qa;a.Qa=!0;try{a.Qb("Layout");var e=a.Na;1!==a.la.rh||e.cf||e.pc||e.$m("Layout");for(var f=a.Uk.i;f.next();)Xl(a,f.value,b);c.wf||b&&!c.jE&&1!==a.la.rh||(c.doLayout(a),yk(a),c.wf=!0)}finally{a.wd("Layout"),a.vu=!c.wf,a.Qa=d}}}function Xl(a,b,c){if(null!==b){for(var d=b.jo.i;d.next();)Xl(a,d.value,c);d=b.Pb;null===d||d.wf||c&&!d.jE||(b.Cy=!b.location.G(),d.doLayout(b),b.H(Yl),d.wf=!0,cl(a,b))}} +v.defineProperty(E,{Qd:"isTreePathToChildren"},function(){return this.iv},function(a){var b=this.iv;if(b!==a&&(v.j(a,"boolean",E,"isTreePathToChildren"),this.iv=a,this.h("isTreePathToChildren",b,a),!this.la.ib))for(a=this.Ag;a.next();)Zl(a.value)});E.prototype.findTreeRoots=function(){for(var a=new I(S),b=this.Ag;b.next();){var c=b.value;c.gp&&null===c.Yo()&&a.add(c)}return a.i}; +v.defineProperty(E,{zA:"treeCollapsePolicy"},function(){return this.$v},function(a){var b=this.$v;b!==a&&(v.pb(a,E,E,"treeCollapsePolicy"),this.$v=a,this.h("treeCollapsePolicy",b,a))});v.defineProperty(E,{eh:null},function(){return this.MB},function(a){this.MB=a}); function gk(a){function b(a){var b=a.toLowerCase(),h=new I("function");c.add(a,h);c.add(b,h);d.add(a,a);d.add(b,a)}var c=new na("string",I),d=new na("string","string");b("AnimationStarting");b("AnimationFinished");b("BackgroundSingleClicked");b("BackgroundDoubleClicked");b("BackgroundContextClicked");b("ClipboardChanged");b("ClipboardPasted");b("DocumentBoundsChanged");b("ExternalObjectsDropped");b("InitialLayoutCompleted");b("LayoutCompleted");b("LinkDrawn");b("LinkRelinked");b("LinkReshaped");b("Modified"); -b("ObjectSingleClicked");b("ObjectDoubleClicked");b("ObjectContextClicked");b("PartCreated");b("PartResized");b("PartRotated");b("SelectionMoved");b("SelectionCopied");b("SelectionDeleting");b("SelectionDeleted");b("SelectionGrouped");b("SelectionUngrouped");b("ChangingSelection");b("ChangedSelection");b("SubGraphCollapsed");b("SubGraphExpanded");b("TextEdited");b("TreeCollapsed");b("TreeExpanded");b("ViewportBoundsChanged");a.Ux=c;a.Tx=d} -function qa(a,b){var c=a.Tx.ja(b);return null!==c?c:a.Tx.ja(b.toLowerCase())}function $l(a,b){var c=a.Ux.ja(b);if(null!==c)return c;c=a.Ux.ja(b.toLowerCase());if(null!==c)return c;v.k("Unknown DiagramEvent name: "+b);return null}E.prototype.addDiagramListener=E.prototype.Uy=function(a,b){v.j(a,"string",E,"addDiagramListener:name");v.j(b,"function",E,"addDiagramListener:listener");var c=$l(this,a);null!==c&&c.add(b)}; -E.prototype.removeDiagramListener=E.prototype.AE=function(a,b){v.j(a,"string",E,"removeDiagramListener:name");v.j(b,"function",E,"addDiagramListener:listener");var c=$l(this,a);null!==c&&c.remove(b)};E.prototype.raiseDiagramEvent=E.prototype.Ba=function(a,b,c){var d=$l(this,a),e=new yf;e.g=this;e.name=qa(this,a);void 0!==b&&(e.qA=b);void 0!==c&&(e.Wz=c);a=d.length;if(1===a)d=d.da(0),d(e);else if(0!==a)for(b=d.dc(),c=0;c=d.top&&0>=d.left&&0>=d.right&&0>=d.bottom)return c;var e=a.rb,f=a.scale,e=v.gk(0,0,e.width*f,e.height*f),h=v.Mb(0,0);if(b.x>=e.x&&b.xe.x+e.width-d.right&&(k=Math.max(a.St,1),k|=0,h.x+=k,b.x>e.x+e.width-d.right/2&&(h.x+=k),b.x>e.x+e.width-d.right/4&&(h.x+=4*k));b.y>=e.y&&b.ye.y+e.height-d.bottom&&(k=Math.max(a.Tt,1),k|=0,h.y+=k,b.y>e.y+e.height-d.bottom/2&&(h.y+=k),b.y>e.y+e.height-d.bottom/4&&(h.y+=4*k));h.Fc(Xc)||(c=new y(c.x+h.x/f,c.y+h.y/f));v.Vb(e);v.v(h);return c}E.prototype.makeSVG=E.prototype.makeSvg=function(a){void 0===a&&(a=new ta);a.context="svg";a=im(this,a);return null!==a?a.Dl:null}; -E.prototype.makeImage=function(a){void 0===a&&(a=new ta);var b=(a.document||document).createElement("img");b.src=this.GH(a);return b};E.prototype.makeImageData=E.prototype.GH=function(a){void 0===a&&(a=new ta);var b=im(this,a);return null!==b?b.toDataURL(a.type,a.details):""};var jm=!1; -function im(a,b){a.Na.ai();a.Vf();if(null===a.zb)return null;"object"!==typeof b&&v.k("properties argument must be an Object.");var c=!1,d=b.size||null,e=b.scale||null;void 0!==b.scale&&isNaN(b.scale)&&(e="NaN");var f=b.maxSize;void 0===b.maxSize&&(c=!0,f="svg"===b.context?new ia(Infinity,Infinity):new ia(2E3,2E3));var h=b.position||null,k=b.parts||null,l=void 0===b.padding?1:b.padding,m=b.background||null,n=b.omitTemporary;void 0===n&&(n=!0);var p=b.document||document,q=b.elementFinished||null,r= -b.showTemporary;void 0===r&&(r=!n);n=b.showGrid;void 0===n&&(n=r);null!==d&&isNaN(d.width)&&isNaN(d.height)&&(d=null);"number"===typeof l?l=new eb(l):l instanceof eb||(l=new eb(0));l.left=Math.max(l.left,0);l.right=Math.max(l.right,0);l.top=Math.max(l.top,0);l.bottom=Math.max(l.bottom,0);a.Jn=!1;Vc(a.lf,!0);var s=new Lc(null,p),t=s.cl,u=s;if(!(d||e||k||h))return s.width=a.Eb+Math.ceil(l.left+l.right),s.height=a.Jb+Math.ceil(l.top+l.bottom),"svg"===b.context&&(t=u=new yc(s.zd,p,q),t instanceof yc&& -(a.Jn=!0)),jl(a,t,l,new ia(s.width,s.height),a.Tb,a.kb,k,m,r,n),a.Jn=!0,u;var w=a.nb.sw,x=new y(0,0),z=a.ae.copy();z.EI(a.padding);if(r)for(var A=!0,A=a.Xb.n,H=A.length,C=0;Cw?(e=w,h=z.width,aa=z.height):(h=f.width,aa=f.height)):(h=z.width*e,aa=z.height*e):(e=w,h=z.width,aa=z.height);null!==l?(h+=ba,aa+=A):l=new eb(0);null!==f&&(d=f.width,f=f.height,"svg"!==b.context&&c&&!jm&&(h>d||aa>f)&&(v.trace("Diagram.makeImage(data): Diagram width or height is larger than the default max size. ("+Math.ceil(h)+"x"+Math.ceil(aa)+" vs 2000x2000) Consider increasing the max size."), -jm=!0),isNaN(d)&&(d=2E3),isNaN(f)&&(f=2E3),isFinite(d)&&(h=Math.min(h,d)),isFinite(f)&&(aa=Math.min(aa,f)));s.width=Math.ceil(h);s.height=Math.ceil(aa);"svg"===b.context&&(t=u=new yc(s.zd,p,q),t instanceof yc&&(a.Jn=!0));jl(a,t,l,new ia(Math.ceil(h),Math.ceil(aa)),e,x,k,m,r,n);a.Jn=!0;return u}E.inherit=function(a,b){v.j(a,"function",E,"inherit");v.j(b,"function",E,"inherit");b.MF&&v.k("Cannot inherit from "+v.af(b));v.Ia(a,b)}; -function pk(){this.PF="63ad05bbe23a1786468a4c741b6d2";this.eg=this.PF===this._tk?!0:null} -pk.prototype.Hl=function(a){a.lf.setTransform(a.sd,0,0,a.sd,0,0);if(null===this.eg)a:{var b="f",c=window[v.ug("76a715b2f73f148a")][v.ug("72ba13b5")];a=v.ug;if(window[a("7da7")]&&window[a("7da7")][a("76a115b6ed251eaf4692")]){this.eg=!0;var d=window[a("7da7")][a("76a115b6ed251eaf4692")],d=a(d).split(a("39e9")),e=a(d[1]).split("."),f=v[a("6cae19")].split(".");if(e[0]>f[0]||e[0]===f[0]&&e[1]>=f[1]){e=c[a("76ad18b4f73e")];for(f=c[a("73a612b6fb191d")](a("35e7"))+2;fc&&a(d[2])!==a("7da71ca0ad381e90")&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));0>c&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));this.eg=!(0<=c&&cc&&a(v.adym)!==a("7da71ca0ad381e90")&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));if(this.eg=!(0<=c&&c=d.top&&0>=d.left&&0>=d.right&&0>=d.bottom)return c;var e=a.rb,f=a.scale,e=v.gk(0,0,e.width*f,e.height*f),h=v.Mb(0,0);if(b.x>=e.x&&b.xe.x+e.width-d.right&&(k=Math.max(a.Tt,1),k|=0,h.x+=k,b.x>e.x+e.width-d.right/2&&(h.x+=k),b.x>e.x+e.width-d.right/4&&(h.x+=4*k));b.y>=e.y&&b.ye.y+e.height-d.bottom&&(k=Math.max(a.Ut,1),k|=0,h.y+=k,b.y>e.y+e.height-d.bottom/2&&(h.y+=k),b.y>e.y+e.height-d.bottom/4&&(h.y+=4*k));h.Fc(Yc)||(c=new z(c.x+h.x/f,c.y+h.y/f));v.Vb(e);v.v(h);return c}E.prototype.makeSVG=E.prototype.makeSvg=function(a){void 0===a&&(a=new ta);a.context="svg";a=im(this,a);return null!==a?a.Cl:null}; +E.prototype.makeImage=function(a){void 0===a&&(a=new ta);var b=(a.document||document).createElement("img");b.src=this.IH(a);return b};E.prototype.makeImageData=E.prototype.IH=function(a){void 0===a&&(a=new ta);var b=im(this,a);return null!==b?b.toDataURL(a.type,a.details):""};var jm=!1; +function im(a,b){a.Na.Zh();a.Uf();if(null===a.zb)return null;"object"!==typeof b&&v.k("properties argument must be an Object.");var c=!1,d=b.size||null,e=b.scale||null;void 0!==b.scale&&isNaN(b.scale)&&(e="NaN");var f=b.maxSize;void 0===b.maxSize&&(c=!0,f="svg"===b.context?new ia(Infinity,Infinity):new ia(2E3,2E3));var h=b.position||null,k=b.parts||null,l=void 0===b.padding?1:b.padding,m=b.background||null,n=b.omitTemporary;void 0===n&&(n=!0);var p=b.document||document,q=b.elementFinished||null,r= +b.showTemporary;void 0===r&&(r=!n);n=b.showGrid;void 0===n&&(n=r);null!==d&&isNaN(d.width)&&isNaN(d.height)&&(d=null);"number"===typeof l?l=new eb(l):l instanceof eb||(l=new eb(0));l.left=Math.max(l.left,0);l.right=Math.max(l.right,0);l.top=Math.max(l.top,0);l.bottom=Math.max(l.bottom,0);a.Jn=!1;Wc(a.kf,!0);var s=new Mc(null,p),t=s.cl,u=s;if(!(d||e||k||h))return s.width=a.Eb+Math.ceil(l.left+l.right),s.height=a.Jb+Math.ceil(l.top+l.bottom),"svg"===b.context&&(t=u=new zc(s.xd,p,q),t instanceof zc&& +(a.Jn=!0)),jl(a,t,l,new ia(s.width,s.height),a.Tb,a.kb,k,m,r,n),a.Jn=!0,u;var y=a.nb.tw,w=new z(0,0),x=a.Zd.copy();x.GI(a.padding);if(r)for(var A=!0,A=a.Yb.n,H=A.length,C=0;Cy?(e=y,h=x.width,aa=x.height):(h=f.width,aa=f.height)):(h=x.width*e,aa=x.height*e):(e=y,h=x.width,aa=x.height);null!==l?(h+=ba,aa+=A):l=new eb(0);null!==f&&(d=f.width,f=f.height,"svg"!==b.context&&c&&!jm&&(h>d||aa>f)&&(v.trace("Diagram.makeImage(data): Diagram width or height is larger than the default max size. ("+Math.ceil(h)+"x"+Math.ceil(aa)+" vs 2000x2000) Consider increasing the max size."), +jm=!0),isNaN(d)&&(d=2E3),isNaN(f)&&(f=2E3),isFinite(d)&&(h=Math.min(h,d)),isFinite(f)&&(aa=Math.min(aa,f)));s.width=Math.ceil(h);s.height=Math.ceil(aa);"svg"===b.context&&(t=u=new zc(s.xd,p,q),t instanceof zc&&(a.Jn=!0));jl(a,t,l,new ia(Math.ceil(h),Math.ceil(aa)),e,w,k,m,r,n);a.Jn=!0;return u}E.inherit=function(a,b){v.j(a,"function",E,"inherit");v.j(b,"function",E,"inherit");b.PF&&v.k("Cannot inherit from "+v.$e(b));v.Ja(a,b)}; +function pk(){this.SF="63ad05bbe23a1786468a4c741b6d2";this.dg=this.SF===this._tk?!0:null} +pk.prototype.Gl=function(a){a.kf.setTransform(a.rd,0,0,a.rd,0,0);if(null===this.dg)a:{var b="f",c=window[v.tg("76a715b2f73f148a")][v.tg("72ba13b5")];a=v.tg;if(window[a("7da7")]&&window[a("7da7")][a("76a115b6ed251eaf4692")]){this.dg=!0;var d=window[a("7da7")][a("76a115b6ed251eaf4692")],d=a(d).split(a("39e9")),e=a(d[1]).split("."),f=v[a("6cae19")].split(".");if(e[0]>f[0]||e[0]===f[0]&&e[1]>=f[1]){e=c[a("76ad18b4f73e")];for(f=c[a("73a612b6fb191d")](a("35e7"))+2;fc&&a(d[2])!==a("7da71ca0ad381e90")&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));0>c&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));this.dg=!(0<=c&&cc&&a(v.adym)!==a("7da71ca0ad381e90")&&(c=b[a("73a612b6fb191d")](a("76a715b2ef3e149757")));if(this.dg=!(0<=c&&cb.timeStamp-a.$l?b.preventDefault():a.Fk?b.preventDefault():(a.Sc=a.Nb,a.Nb=c,Gk(a,a,b,c,!0),c.il=!0,c.We=b.detail,a.si=c,!0===c.Eq.simulated?(b.preventDefault(),b.simulated=!0):(hh=null,a.doMouseDown(),a.si=a.si.copy(), -1===b.button?b.preventDefault():Kk(c,b)))}};a.rp=function(b){if(a.isEnabled)if(a.Fk&&2===b.button)b.preventDefault();else if(a.Fk&&0===b.button&&(a.Fk=!1),a.xs)b.preventDefault();else{a.Ul=!0;var c=a.Sc;if(v.Sm){if(400>b.timeStamp-a.$l){b.preventDefault();return}a.$l=b.timeStamp}if(v.Sm&&null!==a.ps)a.ps=null,b.preventDefault();else{a.Sc=a.Nb;a.Nb=c;Gk(a,a,b,c,!0);c.up=!0;c.We=b.detail;if(v.oH||v.pH)b.timeStamp-a.$la.Ev)){var c=a.Kf;c[0].pointerId===b.pointerId&&(c[0]=b);c[1].pointerId===b.pointerId&& -(c[1]=b);a.isEnabled&&(c=a.Sc,a.Sc=a.Nb,a.Nb=c,Jk(a,b,b,c,!0),a.ox(b,null,c.Jg)||(a.doMouseMove(),Kk(c,b)))}};a.$H=function(b){if("touch"===b.pointerType){var c=a.qC;void 0!==c[b.pointerId]&&(a.Ev--,delete c[b.pointerId],c=a.Kf,null!==c[0]&&c[0].pointerId===b.pointerId&&(c[0]=null),null!==c[1]&&c[1].pointerId===b.pointerId&&(c[1]=null))}};Vc(d,!0);tk(a)} -function km(a){1a)&&v.va(a,"0 <= loc <= 1",ha,"addColorStop:loc");v.j(b,"string",ha,"addColorStop:color");null===this.Ng&&(this.Ng=new na("number","string"));this.Ng.add(a,b);this.ia===Tf&&(this.type=Uf);this.Og=null}; -v.defineProperty(ha,{type:"type"},function(){return this.ia},function(a){this.D&&v.ka(this,a);v.pb(a,ha,ha,"type");this.ia=a;this.start.te()&&(a===Uf?this.start=ub:a===Uc&&(this.start=Ab));this.end.te()&&(a===Uf?this.end=Eb:a===Uc&&(this.end=Ab));this.Og=null});v.defineProperty(ha,{color:"color"},function(){return this.tn},function(a){this.D&&v.ka(this,a);this.tn=a;this.Og=null}); -v.defineProperty(ha,{start:"start"},function(){return this.wo},function(a){this.D&&v.ka(this,a);v.A(a,L,ha,"start");this.wo=a.R();this.Og=null});v.defineProperty(ha,{end:"end"},function(){return this.Ln},function(a){this.D&&v.ka(this,a);v.A(a,L,ha,"end");this.Ln=a.R();this.Og=null});v.defineProperty(ha,{bu:"startRadius"},function(){return this.Uv},function(a){this.D&&v.ka(this,a);v.Ve(a,ha,"startRadius");0>a&&v.va(a,">= zero",ha,"startRadius");this.Uv=a;this.Og=null}); -v.defineProperty(ha,{at:"endRadius"},function(){return this.Qu},function(a){this.D&&v.ka(this,a);v.Ve(a,ha,"endRadius");0>a&&v.va(a,">= zero",ha,"endRadius");this.Qu=a;this.Og=null});v.defineProperty(ha,{Xs:"colorStops"},function(){return this.Ng},function(a){this.D&&v.ka(this,a);this.Ng=a;this.Og=null});v.defineProperty(ha,{pattern:"pattern"},function(){return this.Dv},function(a){this.D&&v.ka(this,a);this.Dv=a;this.Og=null}); -ha.randomColor=function(a,b){void 0===a&&(a=128);void 0===b&&(b=Math.max(a,255));var c=Math.abs(b-a),d=Math.floor(a+Math.random()*c).toString(16),e=Math.floor(a+Math.random()*c).toString(16),c=Math.floor(a+Math.random()*c).toString(16);2>d.length&&(d="0"+d);2>e.length&&(e="0"+e);2>c.length&&(c="0"+c);return"#"+d+e+c};var rm=(new Lc(null)).cl,ga; +"relative");a.Kb.style["-webkit-tap-highlight-color"]="rgba(255, 255, 255, 0)";a.Kb.style["-ms-touch-action"]="none";a.Kb.innerHTML="";a.Kb.W=a;var c=new Mc(a);c.xd.innerHTML="This text is displayed if your browser does not support the Canvas HTML element.";void 0!==c.style&&(c.style.position="absolute",c.style.top="0px",c.style.left="0px","rtl"===window.getComputedStyle(a.Kb,null).getPropertyValue("direction")&&(a.Uq=!0),c.style.zIndex="2",c.style.PK="none",c.style.webkitUserSelect="none",c.style.MozUserSelect= +"none");a.Eb=a.Kb.clientWidth||1;a.Jb=a.Kb.clientHeight||1;a.zb=c;a.kf=c.cl;var d=a.kf;a.HF=(window.devicePixelRatio||1)/(d.webkitBackingStorePixelRatio||d.mozBackingStorePixelRatio||d.msBackingStorePixelRatio||d.oBackingStorePixelRatio||d.backingStorePixelRatio||1);a.rd=a.computePixelRatio();ll(a,a.Eb,a.Jb);a.Yx=d[v.tg("7eba17a4ca3b1a8346")][v.tg("78a118b7")](d,v.Gl,4,4);a.Kb.insertBefore(c.xd,a.Kb.firstChild);c=new Mc(null);c.width=1;c.height=1;a.Xx=c;a.CB=c.cl;var c=v.createElement("div"),e=v.createElement("div"); +c.style.position="absolute";c.style.overflow="auto";c.style.width=a.Eb+"px";c.style.height=a.Jb+"px";c.style.zIndex="1";e.style.position="absolute";e.style.width="1px";e.style.height="1px";a.Kb.appendChild(c);c.appendChild(e);c.onscroll=a.JF;c.onmousedown=a.jC;c.ontouchstart=a.jC;c.W=a;c.NF=!0;c.OF=!0;a.Pv=c;a.cs=e;a.eA=v.yD(function(){a.Mj=null;a.pa()},300,!1);a.tF=v.yD(function(){Ij(a)},250,!1);a.preventDefault=function(a){a.preventDefault();return!1};a.pp=function(b){if(a.isEnabled){a.Tl=!0;var c= +a.Sc;v.Sm&&c.Vi?(b.preventDefault(),b.simulated=!0,a.qs=b):(a.Sc=a.Nb,a.Nb=c,Gk(a,a,b,c,!0),a.px(b,null,b.target.W)||(a.doMouseMove(),a.Wa.isBeyondDragSize()&&(a.Yl=0),Kk(c,b)))}};a.op=function(b){if(a.isEnabled){a.Tl=!0;var c=a.Sc;v.Sm&&null!==a.qs?(a.qs=b,b.preventDefault()):v.Sm&&400>b.timeStamp-a.Zl?b.preventDefault():a.Fk?b.preventDefault():(a.Sc=a.Nb,a.Nb=c,Gk(a,a,b,c,!0),c.il=!0,c.Ve=b.detail,a.qi=c,!0===c.Eq.simulated?(b.preventDefault(),b.simulated=!0):(hh=null,a.doMouseDown(),a.qi=a.qi.copy(), +1===b.button?b.preventDefault():Kk(c,b)))}};a.rp=function(b){if(a.isEnabled)if(a.Fk&&2===b.button)b.preventDefault();else if(a.Fk&&0===b.button&&(a.Fk=!1),a.ys)b.preventDefault();else{a.Tl=!0;var c=a.Sc;if(v.Sm){if(400>b.timeStamp-a.Zl){b.preventDefault();return}a.Zl=b.timeStamp}if(v.Sm&&null!==a.qs)a.qs=null,b.preventDefault();else{a.Sc=a.Nb;a.Nb=c;Gk(a,a,b,c,!0);c.up=!0;c.Ve=b.detail;if(v.qH||v.rH)b.timeStamp-a.Zla.Fv)){var c=a.Jf;c[0].pointerId===b.pointerId&&(c[0]=b);c[1].pointerId===b.pointerId&& +(c[1]=b);a.isEnabled&&(c=a.Sc,a.Sc=a.Nb,a.Nb=c,Jk(a,b,b,c,!0),a.px(b,null,c.Ig)||(a.doMouseMove(),Kk(c,b)))}};a.bI=function(b){if("touch"===b.pointerType){var c=a.tC;void 0!==c[b.pointerId]&&(a.Fv--,delete c[b.pointerId],c=a.Jf,null!==c[0]&&c[0].pointerId===b.pointerId&&(c[0]=null),null!==c[1]&&c[1].pointerId===b.pointerId&&(c[1]=null))}};Wc(d,!0);tk(a)} +function km(a){1a)&&v.va(a,"0 <= loc <= 1",ha,"addColorStop:loc");v.j(b,"string",ha,"addColorStop:color");null===this.Mg&&(this.Mg=new na("number","string"));this.Mg.add(a,b);this.ia===Tf&&(this.type=Uf);this.Ng=null}; +v.defineProperty(ha,{type:"type"},function(){return this.ia},function(a){this.D&&v.ka(this,a);v.pb(a,ha,ha,"type");this.ia=a;this.start.se()&&(a===Uf?this.start=ub:a===Vc&&(this.start=Ab));this.end.se()&&(a===Uf?this.end=Eb:a===Vc&&(this.end=Ab));this.Ng=null});v.defineProperty(ha,{color:"color"},function(){return this.tn},function(a){this.D&&v.ka(this,a);this.tn=a;this.Ng=null}); +v.defineProperty(ha,{start:"start"},function(){return this.wo},function(a){this.D&&v.ka(this,a);v.A(a,L,ha,"start");this.wo=a.R();this.Ng=null});v.defineProperty(ha,{end:"end"},function(){return this.Ln},function(a){this.D&&v.ka(this,a);v.A(a,L,ha,"end");this.Ln=a.R();this.Ng=null});v.defineProperty(ha,{cu:"startRadius"},function(){return this.Vv},function(a){this.D&&v.ka(this,a);v.Ue(a,ha,"startRadius");0>a&&v.va(a,">= zero",ha,"startRadius");this.Vv=a;this.Ng=null}); +v.defineProperty(ha,{bt:"endRadius"},function(){return this.Ru},function(a){this.D&&v.ka(this,a);v.Ue(a,ha,"endRadius");0>a&&v.va(a,">= zero",ha,"endRadius");this.Ru=a;this.Ng=null});v.defineProperty(ha,{Ys:"colorStops"},function(){return this.Mg},function(a){this.D&&v.ka(this,a);this.Mg=a;this.Ng=null});v.defineProperty(ha,{pattern:"pattern"},function(){return this.Ev},function(a){this.D&&v.ka(this,a);this.Ev=a;this.Ng=null}); +ha.randomColor=function(a,b){void 0===a&&(a=128);void 0===b&&(b=Math.max(a,255));var c=Math.abs(b-a),d=Math.floor(a+Math.random()*c).toString(16),e=Math.floor(a+Math.random()*c).toString(16),c=Math.floor(a+Math.random()*c).toString(16);2>d.length&&(d="0"+d);2>e.length&&(e="0"+e);2>c.length&&(c="0"+c);return"#"+d+e+c};var rm=(new Mc(null)).cl,ga; ha.isValidColor=ga=function(a){if("black"===a)return!0;if(""===a)return!1;rm.fillStyle="#000000";var b=rm.fillStyle;rm.fillStyle=a;if(rm.fillStyle!==b)return!0;rm.fillStyle="#FFFFFF";b=rm.fillStyle;rm.fillStyle=a;return rm.fillStyle!==b}; -function G(){v.ec(this);this.fa=30723;this.Rc=1;this.Xg=null;this.Ob="";this.nc=this.Ib=null;this.kb=(new y(NaN,NaN)).freeze();this.mf=Bd;this.Bj=jd;this.zj=zd;this.ne=new ja;this.Vp=new ja;this.Mk=new ja;this.Tb=this.Nu=1;this.Kl=0;this.Rh=sm;this.kr=Zc;this.kd=(new B(NaN,NaN,NaN,NaN)).freeze();this.mc=(new B(NaN,NaN,NaN,NaN)).freeze();this.Qc=(new B(0,0,NaN,NaN)).freeze();this.As=this.Fq=this.ga=this.Lr=this.lm=null;this.Bs=this.Gq=Infinity;this.Up=this.Be=kc;this.Zr=0;this.Hi=1;this.cq=0;this.ji= -1;this.ts=null;this.ds=-Infinity;this.cs=0;this.es=Xc;this.fs=Ai;this.nq="";this.sc=this.ha=null;this.qn=-1;this.km=this.os=this.ii=this.vk=this.vo=null}v.Wh(G);v.ea("GraphObject",G); -G.prototype.cloneProtected=function(a){a.fa=this.fa|6144;a.Rc=this.Rc;a.Ob=this.Ob;a.Ib=this.Ib;a.nc=this.nc;a.kb.assign(this.kb);a.mf=this.mf.R();a.Bj=this.Bj.R();a.zj=this.zj.R();a.Mk=this.Mk.copy();a.Tb=this.Tb;a.Kl=this.Kl;a.Rh=this.Rh;a.kr=this.kr.R();a.kd.assign(this.kd);a.mc.assign(this.mc);a.Qc.assign(this.Qc);a.Lr=this.Lr;null!==this.ga&&(a.ga=this.ga.copy());a.Fq=this.Fq;a.As=this.As;a.Gq=this.Gq;a.Bs=this.Bs;a.Be=this.Be.R();a.Up=this.Up.R();a.Zr=this.Zr;a.Hi=this.Hi;a.cq=this.cq;a.ji= -this.ji;a.ts=this.ts;a.ds=this.ds;a.cs=this.cs;a.es=this.es.R();a.fs=this.fs;a.nq=this.nq;null!==this.ha&&(a.ha=this.ha.copy());a.sc=this.sc;a.qn=this.qn;null!==this.vk&&(a.vk=v.dl(this.vk));null!==this.ii&&(a.ii=this.ii.copy());a.os=this.os};G.prototype.addCopyProperty=G.prototype.YF=function(a){var b=this.vk;if(v.isArray(b))for(var c=0;ck;)k+=f[n++%l],p=!p;q=!1}else k=f[n++%l];k>m&&(k=m);var r=Math.sqrt(k*k/(1+e*e));0>d&&(r=-r);b+=r;c+=e*r;p?a.lineTo(b,c):a.moveTo(b,c);m-=k;p=!p}}G.prototype.raiseChangedEvent=G.prototype.Lc=function(a,b,c,d,e,f,h){var k=this.Y;null!==k&&(k.an(a,b,c,d,e,f,h),0!==(this.fa&1024)&&c===this&&a===Af&&Am(this,k,b))}; -function Am(a,b,c){var d=a.Xo();if(null!==d)for(var e=a.sc.i;e.next();){var f=e.value,h=null;if(null!==f.en){h=Cg(f,d,a);if(null===h)continue;f.sx(a,h,c,null)}else if(f.xt){var k=b.g;null===k||k.xe||f.sx(a,k.ba.bk,c,k)}else{var l=d.data;if(null===l)continue;k=b.g;null===k||k.xe||f.sx(a,l,c,k)}null!==h&&(k=d.yw(f.El),null!==k&&f.oF(k,h,c))}}G.prototype.yw=function(a){return this.qn===a?this:null};G.prototype.raiseChanged=G.prototype.h=function(a,b,c){this.Lc(Af,a,this,b,c)}; -function Bm(a,b,c,d,e){var f=a.kd,h=a.Mk;h.reset();Cm(a,h,b,c,d,e);a.Mk=h;f.x=b;f.y=c;f.width=d;f.height=e;h.ut()||h.kF(f)}function Dm(a,b,c,d){if(!1===a.Hg)return!1;d.multiply(a.transform);return c?a.yg(b,d):a.Gm(b,d)} -G.prototype.JD=function(a,b,c){if(!1===this.Hg)return!1;var d=this.Ha;b=a.sf(b);var e=!1;c&&(e=Sa(a.x,a.y,0,0,0,d.height)a&&(a+=360));return a}; -G.prototype.getDocumentScale=G.prototype.Ti=function(){if(0!==(this.fa&4096)===!1)return this.Nu;var a=this.Tb;return null!==this.T?a*this.T.Ti():a};G.prototype.getLocalPoint=G.prototype.OD=function(a,b){void 0===b&&(b=new y);b.assign(a);this.Zg.Yh(b);return b};G.prototype.getNearestIntersectionPoint=G.prototype.PD=function(a,b,c){return this.bp(a.x,a.y,b.x,b.y,c)};g=G.prototype; -g.bp=function(a,b,c,d,e){var f=this.transform,h=1/(f.m11*f.m22-f.m12*f.m21),k=f.m22*h,l=-f.m12*h,m=-f.m21*h,n=f.m11*h,p=h*(f.m21*f.dy-f.m22*f.dx),q=h*(f.m12*f.dx-f.m11*f.dy);if(null!==this.Bm)return f=this.U,Zd(f.left,f.top,f.right,f.bottom,a,b,c,d,e);h=a*k+b*m+p;a=a*l+b*n+q;b=c*k+d*m+p;c=c*l+d*n+q;e.m(0,0);d=this.Ha;c=Zd(0,0,d.width,d.height,h,a,b,c,e);e.transform(f);return c}; -function fj(a,b,c,d,e){if(!1!==dl(a)){var f=a.margin,h=f.right+f.left,f=f.top+f.bottom;b=Math.max(b-h,0);c=Math.max(c-f,0);e=e||0;d=Math.max((d||0)-h,0);e=Math.max(e-f,0);var h=a.angle,f=0,f=a.wa,k=0;a.lb&&(k=a.lb);90===h||270===h?(b=isFinite(f.height)?f.height+k:b,c=isFinite(f.width)?f.width+k:c):(b=isFinite(f.width)?f.width+k:b,c=isFinite(f.height)?f.height+k:c);var f=d||0,k=e||0,l=a instanceof D;switch(Em(a,!0)){case Ni:k=f=0;l&&(c=b=Infinity);break;case Fe:isFinite(b)&&b>d&&(f=b);isFinite(c)&& -c>e&&(k=c);break;case um:isFinite(b)&&b>d&&(f=b);k=0;l&&(c=Infinity);break;case tm:isFinite(c)&&c>e&&(k=c),f=0,l&&(b=Infinity)}var l=a.yf,m=a.jh;f>l.width&&m.widthl.height&&m.heighta&&(a+=360));return a}; +G.prototype.getDocumentScale=G.prototype.Ri=function(){if(0!==(this.fa&4096)===!1)return this.Ou;var a=this.Tb;return null!==this.S?a*this.S.Ri():a};G.prototype.getLocalPoint=G.prototype.RD=function(a,b){void 0===b&&(b=new z);b.assign(a);this.Yg.Wh(b);return b};G.prototype.getNearestIntersectionPoint=G.prototype.SD=function(a,b,c){return this.bp(a.x,a.y,b.x,b.y,c)};g=G.prototype; +g.bp=function(a,b,c,d,e){var f=this.transform,h=1/(f.m11*f.m22-f.m12*f.m21),k=f.m22*h,l=-f.m12*h,m=-f.m21*h,n=f.m11*h,p=h*(f.m21*f.dy-f.m22*f.dx),q=h*(f.m12*f.dx-f.m11*f.dy);if(null!==this.Bm)return f=this.U,$d(f.left,f.top,f.right,f.bottom,a,b,c,d,e);h=a*k+b*m+p;a=a*l+b*n+q;b=c*k+d*m+p;c=c*l+d*n+q;e.m(0,0);d=this.Ha;c=$d(0,0,d.width,d.height,h,a,b,c,e);e.transform(f);return c}; +function fj(a,b,c,d,e){if(!1!==dl(a)){var f=a.margin,h=f.right+f.left,f=f.top+f.bottom;b=Math.max(b-h,0);c=Math.max(c-f,0);e=e||0;d=Math.max((d||0)-h,0);e=Math.max(e-f,0);var h=a.angle,f=0,f=a.xa,k=0;a.lb&&(k=a.lb);90===h||270===h?(b=isFinite(f.height)?f.height+k:b,c=isFinite(f.width)?f.width+k:c):(b=isFinite(f.width)?f.width+k:b,c=isFinite(f.height)?f.height+k:c);var f=d||0,k=e||0,l=a instanceof D;switch(Em(a,!0)){case Ni:k=f=0;l&&(c=b=Infinity);break;case Fe:isFinite(b)&&b>d&&(f=b);isFinite(c)&& +c>e&&(k=c);break;case um:isFinite(b)&&b>d&&(f=b);k=0;l&&(c=Infinity);break;case tm:isFinite(c)&&c>e&&(k=c),f=0,l&&(b=Infinity)}var l=a.xf,m=a.ih;f>l.width&&m.widthl.height&&m.heighta.height||this.Jk.Se>a.width))&&(c=!0);this.fa=c?this.fa|256:this.fa&-257;this.mc.G()|| -v.k("Non-real actualBounds has been set. Object "+this+", actualBounds: "+this.mc.toString());this.Sw(f,this.mc);v.Vb(f)};g.Ni=function(){}; -function Fm(a,b,c,d,e){var f=a.U;f.x=b;f.y=c;f.width=d;f.height=e;if(!a.wa.G()){f=a.kd;c=a.margin;b=c.right+c.left;var h=c.top+c.bottom;c=f.width+b;f=f.height+h;d+=b;e+=h;b=Em(a,!0);c===d&&f===e&&(b=Ni);switch(b){case Ni:if(c>d||f>e)Qk(a,!0),fj(a,c>d?d:c,f>e?e:f);break;case Fe:Qk(a,!0);fj(a,d,e,0,0);break;case um:Qk(a,!0);fj(a,d,f,0,0);break;case tm:Qk(a,!0),fj(a,c,e,0,0)}}} -g.Sw=function(a,b){Gm(this,!1);var c=this.Y;if(null!==c&&null!==c.g){var d=this.Y;null!==d&&(d.Vt!==this&&d.HE!==this&&d.KE!==this||Hm(d,!0));this.pa();a.K(b)||(c.ql(),this.wv(c))}};g.wv=function(a){null!==this.Ud&&Hm(a,!0)};v.defineProperty(G,{Hp:"shadowVisible"},function(){return this.os},function(a){var b=this.os;b!==a&&(this.os=a,this.h("shadowVisible",b,a))}); -G.prototype.Xe=function(a,b){if(this.visible){var c=this.mc;if(0!==c.width&&0!==c.height&&!isNaN(c.x)&&!isNaN(c.y)){var d=this.opacity,e=1;if(1!==d){if(0===d)return;e=a.globalAlpha;a.globalAlpha=e*d}if(a instanceof yc)a:{if(this.visible){var f=null,h=a.Lw;if(this instanceof D&&(this.type===Im||this.type===Jm))Km(this,a,b);else{var k=this.mc;if(0!==k.width&&0!==k.height&&!isNaN(k.x)&&!isNaN(k.y)){var l=this.transform,m=this.T;0!==(this.fa&4096)===!0&&Lm(this);var c=0!==(this.fa&256),n=!1;this instanceof -$g&&(a.font=this.font);if(c){n=m.Lg()?m.Ha:m.U;if(null!==this.ii)var p=this.ii,q=p.x,r=p.y,s=p.width,p=p.height;else q=Math.max(k.x,n.x),r=Math.max(k.y,n.y),s=Math.min(k.right,n.right)-q,p=Math.min(k.bottom,n.bottom)-r;if(q>k.width+k.x||k.x>n.width+n.x||r>k.height+k.y||k.y>n.height+n.y)break a;n=!0;Ac(a,1,0,0,1,0,0);a.save();a.beginPath();a.rect(q,r,s,p);a.clip()}q=!1;if(this instanceof R){var t=this,q=!0;if(!t.isVisible())break a}a.Ri.ff=[1,0,0,1,0,0];r=!1;q&&this.vl&&b.Ui("drawShadows")&&(s=this.tm, -a.nA(s.x*b.scale*b.sd,s.y*b.scale*b.sd,t.pg),a.dn(),a.shadowColor=t.sm);t=!1;this.Y&&b.Ui("drawShadows")&&(t=this.Y.vl);!0===this.Hp?(a.dn(),!1===r&&t&&(Ac(a,1,0,0,1,0,0),a.Ya(),r=!0)):!1===this.Hp&&a.cn();null!==this.nc&&(Mm(this,a,this.nc,!0,!0),!1===r&&t&&(Ac(a,1,0,0,1,0,0),a.Ya(),r=!0),this.nc instanceof ha&&this.nc.type===Uc?(a.beginPath(),a.rect(k.x,k.y,k.width,k.height),a.vg(this.nc)):a.fillRect(k.x,k.y,k.width,k.height));this instanceof D?Ac(a,l.m11,l.m12,l.m21,l.m22,l.dx,l.dy):a.Ri.ff=[l.m11, -l.m12,l.m21,l.m22,l.dx,l.dy];if(null!==this.Ib){!1===r&&t&&(Ac(a,1,0,0,1,0,0),a.Ya(),r=!0);var p=this.Ha,l=k=0,s=p.width,p=p.height,u=0;this instanceof X&&(p=this.Ra.mb,k=p.x,l=p.y,s=p.width,p=p.height,u=this.Sh);Mm(this,a,this.Ib,!0,!1);this.Ib instanceof ha&&this.Ib.type===Uc?(a.beginPath(),a.rect(k-u/2,l-u/2,s+u,p+u),a.vg(this.Ib)):a.fillRect(k-u/2,l-u/2,s+u,p+u)}t&&(null!==this.Ib||null!==this.nc||null!==m&&0!==(m.fa&512)||null!==m&&(m.type===sk||m.type===Li)&&m.Ye()!==this)?(Nm(this,!0),null=== -this.Hp&&a.cn()):Nm(this,!1);this.Xj(a,b);t&&0!==(this.fa&512)===!0&&a.dn();q&&t&&a.cn();c&&(a.restore(),n&&a.uf.pop());this instanceof D&&(f=a.uf.pop());!0===r&&a.uf.pop();null!==a.DD&&(null===f&&(h===a.Lw?(Ac(a,1,0,0,1,0,0),f=a.uf.pop()):f=a.Lw),a.DD(this,f))}}}}else{if(this instanceof D&&(this.type===Im||this.type===Jm)){Km(this,a,b);1!==d&&(a.globalAlpha=e);return}this instanceof W&&this.Wm(!1);f=this.transform;h=this.T;0!==(this.fa&4096)===!0&&Lm(this);m=0!==(this.fa&256);this instanceof $g&& -(a.font=this.font);if(m){n=h.Lg()?h.Ha:h.U;null!==this.ii?(t=this.ii,k=t.x,l=t.y,q=t.width,t=t.height):(k=Math.max(c.x,n.x),l=Math.max(c.y,n.y),q=Math.min(c.right,n.right)-k,t=Math.min(c.bottom,n.bottom)-l);if(k>c.width+c.x||c.x>n.width+n.x||l>c.height+c.y||c.y>n.height+n.y){1!==d&&(a.globalAlpha=e);return}a.save();a.beginPath();a.rect(k,l,q,t);a.clip()}n=!1;if(this instanceof R){n=!0;if(!this.isVisible()){1!==d&&(a.globalAlpha=e);return}this.vl&&b.Ui("drawShadows")&&(k=this.tm,a.nA(k.x*b.scale*b.sd, -k.y*b.scale*b.sd,this.pg),a.dn(),a.shadowColor=this.sm)}k=!1;this.Y&&b.Ui("drawShadows")&&(k=this.Y.vl);!0===this.Hp?a.dn():!1===this.Hp&&a.cn();null!==this.nc&&(Mm(this,a,this.nc,!0,!0),this.nc instanceof ha&&this.nc.type===Uc?(a.beginPath(),a.rect(c.x,c.y,c.width,c.height),a.vg(this.nc)):a.fillRect(c.x,c.y,c.width,c.height));f.ut()||a.transform(f.m11,f.m12,f.m21,f.m22,f.dx,f.dy);null!==this.Ib&&(t=this.Ha,l=c=0,q=t.width,t=t.height,r=0,this instanceof X&&(t=this.Ra.mb,c=t.x,l=t.y,q=t.width,t=t.height, -r=this.Sh),Mm(this,a,this.Ib,!0,!1),this.Ib instanceof ha&&this.Ib.type===Uc?(a.beginPath(),a.rect(c-r/2,l-r/2,q+r,t+r),a.vg(this.Ib)):a.fillRect(c-r/2,l-r/2,q+r,t+r));k&&(null!==this.Ib||null!==this.nc||null!==h&&0!==(h.fa&512)||null!==h&&(h.type===sk||h.type===Li)&&h.Ye()!==this)?(Nm(this,!0),null===this.Hp&&a.cn()):Nm(this,!1);this.Xj(a,b);k&&0!==(this.fa&512)===!0&&a.dn();n&&k&&a.cn();m?(a.restore(),this instanceof D?Vc(a,!0):Vc(a,!1)):f.ut()||(h=1/(f.m11*f.m22-f.m12*f.m21),a.transform(f.m22* +g.Ec=function(a,b,c,d,e){this.ri();var f=v.ag();f.assign(this.mc);this.mc.Oa();if(!1===el(this)){var h=this.mc;h.x=a;h.y=b;h.width=c;h.height=d}else this.Li(a,b,c,d);this.mc.freeze();this.gi=void 0===e?null:e;c=!1;void 0!==e?c=!0:null!==this.S&&(e=this.S.Qc,d=this.Ca,null!==this.Bm&&(d=this.mc),c=b+d.height,d=a+d.width,c=!(0<=a+.05&&d<=e.width+.05&&0<=b+.05&&c<=e.height+.05),this instanceof $g&&(a=this.Qc,this.pv>a.height||this.Jk.Re>a.width))&&(c=!0);this.fa=c?this.fa|256:this.fa&-257;this.mc.G()|| +v.k("Non-real actualBounds has been set. Object "+this+", actualBounds: "+this.mc.toString());this.Tw(f,this.mc);v.Vb(f)};g.Li=function(){}; +function Fm(a,b,c,d,e){var f=a.U;f.x=b;f.y=c;f.width=d;f.height=e;if(!a.xa.G()){f=a.kd;c=a.margin;b=c.right+c.left;var h=c.top+c.bottom;c=f.width+b;f=f.height+h;d+=b;e+=h;b=Em(a,!0);c===d&&f===e&&(b=Ni);switch(b){case Ni:if(c>d||f>e)Qk(a,!0),fj(a,c>d?d:c,f>e?e:f);break;case Fe:Qk(a,!0);fj(a,d,e,0,0);break;case um:Qk(a,!0);fj(a,d,f,0,0);break;case tm:Qk(a,!0),fj(a,c,e,0,0)}}} +g.Tw=function(a,b){Gm(this,!1);var c=this.Y;if(null!==c&&null!==c.g){var d=this.Y;null!==d&&(d.Wt!==this&&d.KE!==this&&d.NE!==this||Hm(d,!0));this.pa();a.K(b)||(c.ql(),this.xv(c))}};g.xv=function(a){null!==this.Sd&&Hm(a,!0)};v.defineProperty(G,{Hp:"shadowVisible"},function(){return this.ps},function(a){var b=this.ps;b!==a&&(this.ps=a,this.h("shadowVisible",b,a))}); +G.prototype.We=function(a,b){if(this.visible){var c=this.mc;if(0!==c.width&&0!==c.height&&!isNaN(c.x)&&!isNaN(c.y)){var d=this.opacity,e=1;if(1!==d){if(0===d)return;e=a.globalAlpha;a.globalAlpha=e*d}if(a instanceof zc)a:{if(this.visible){var f=null,h=a.Mw;if(this instanceof D&&(this.type===Im||this.type===Jm))Km(this,a,b);else{var k=this.mc;if(0!==k.width&&0!==k.height&&!isNaN(k.x)&&!isNaN(k.y)){var l=this.transform,m=this.S;0!==(this.fa&4096)===!0&&Lm(this);var c=0!==(this.fa&256),n=!1;this instanceof +$g&&(a.font=this.font);if(c){n=m.Kg()?m.Ha:m.U;if(null!==this.gi)var p=this.gi,q=p.x,r=p.y,s=p.width,p=p.height;else q=Math.max(k.x,n.x),r=Math.max(k.y,n.y),s=Math.min(k.right,n.right)-q,p=Math.min(k.bottom,n.bottom)-r;if(q>k.width+k.x||k.x>n.width+n.x||r>k.height+k.y||k.y>n.height+n.y)break a;n=!0;Bc(a,1,0,0,1,0,0);a.save();a.beginPath();a.rect(q,r,s,p);a.clip()}q=!1;if(this instanceof R){var t=this,q=!0;if(!t.isVisible())break a}a.Pi.ef=[1,0,0,1,0,0];r=!1;q&&this.vl&&b.Si("drawShadows")&&(s=this.sm, +a.rA(s.x*b.scale*b.rd,s.y*b.scale*b.rd,t.og),a.dn(),a.shadowColor=t.rm);t=!1;this.Y&&b.Si("drawShadows")&&(t=this.Y.vl);!0===this.Hp?(a.dn(),!1===r&&t&&(Bc(a,1,0,0,1,0,0),a.Ya(),r=!0)):!1===this.Hp&&a.cn();null!==this.nc&&(Mm(this,a,this.nc,!0,!0),!1===r&&t&&(Bc(a,1,0,0,1,0,0),a.Ya(),r=!0),this.nc instanceof ha&&this.nc.type===Vc?(a.beginPath(),a.rect(k.x,k.y,k.width,k.height),a.ug(this.nc)):a.fillRect(k.x,k.y,k.width,k.height));this instanceof D?Bc(a,l.m11,l.m12,l.m21,l.m22,l.dx,l.dy):a.Pi.ef=[l.m11, +l.m12,l.m21,l.m22,l.dx,l.dy];if(null!==this.Ib){!1===r&&t&&(Bc(a,1,0,0,1,0,0),a.Ya(),r=!0);var p=this.Ha,l=k=0,s=p.width,p=p.height,u=0;this instanceof X&&(p=this.Ra.mb,k=p.x,l=p.y,s=p.width,p=p.height,u=this.Qh);Mm(this,a,this.Ib,!0,!1);this.Ib instanceof ha&&this.Ib.type===Vc?(a.beginPath(),a.rect(k-u/2,l-u/2,s+u,p+u),a.ug(this.Ib)):a.fillRect(k-u/2,l-u/2,s+u,p+u)}t&&(null!==this.Ib||null!==this.nc||null!==m&&0!==(m.fa&512)||null!==m&&(m.type===sk||m.type===Li)&&m.Xe()!==this)?(Nm(this,!0),null=== +this.Hp&&a.cn()):Nm(this,!1);this.Xj(a,b);t&&0!==(this.fa&512)===!0&&a.dn();q&&t&&a.cn();c&&(a.restore(),n&&a.tf.pop());this instanceof D&&(f=a.tf.pop());!0===r&&a.tf.pop();null!==a.GD&&(null===f&&(h===a.Mw?(Bc(a,1,0,0,1,0,0),f=a.tf.pop()):f=a.Mw),a.GD(this,f))}}}}else{if(this instanceof D&&(this.type===Im||this.type===Jm)){Km(this,a,b);1!==d&&(a.globalAlpha=e);return}this instanceof W&&this.Wm(!1);f=this.transform;h=this.S;0!==(this.fa&4096)===!0&&Lm(this);m=0!==(this.fa&256);this instanceof $g&& +(a.font=this.font);if(m){n=h.Kg()?h.Ha:h.U;null!==this.gi?(t=this.gi,k=t.x,l=t.y,q=t.width,t=t.height):(k=Math.max(c.x,n.x),l=Math.max(c.y,n.y),q=Math.min(c.right,n.right)-k,t=Math.min(c.bottom,n.bottom)-l);if(k>c.width+c.x||c.x>n.width+n.x||l>c.height+c.y||c.y>n.height+n.y){1!==d&&(a.globalAlpha=e);return}a.save();a.beginPath();a.rect(k,l,q,t);a.clip()}n=!1;if(this instanceof R){n=!0;if(!this.isVisible()){1!==d&&(a.globalAlpha=e);return}this.vl&&b.Si("drawShadows")&&(k=this.sm,a.rA(k.x*b.scale*b.rd, +k.y*b.scale*b.rd,this.og),a.dn(),a.shadowColor=this.rm)}k=!1;this.Y&&b.Si("drawShadows")&&(k=this.Y.vl);!0===this.Hp?a.dn():!1===this.Hp&&a.cn();null!==this.nc&&(Mm(this,a,this.nc,!0,!0),this.nc instanceof ha&&this.nc.type===Vc?(a.beginPath(),a.rect(c.x,c.y,c.width,c.height),a.ug(this.nc)):a.fillRect(c.x,c.y,c.width,c.height));f.vt()||a.transform(f.m11,f.m12,f.m21,f.m22,f.dx,f.dy);null!==this.Ib&&(t=this.Ha,l=c=0,q=t.width,t=t.height,r=0,this instanceof X&&(t=this.Ra.mb,c=t.x,l=t.y,q=t.width,t=t.height, +r=this.Qh),Mm(this,a,this.Ib,!0,!1),this.Ib instanceof ha&&this.Ib.type===Vc?(a.beginPath(),a.rect(c-r/2,l-r/2,q+r,t+r),a.ug(this.Ib)):a.fillRect(c-r/2,l-r/2,q+r,t+r));k&&(null!==this.Ib||null!==this.nc||null!==h&&0!==(h.fa&512)||null!==h&&(h.type===sk||h.type===Li)&&h.Xe()!==this)?(Nm(this,!0),null===this.Hp&&a.cn()):Nm(this,!1);this.Xj(a,b);k&&0!==(this.fa&512)===!0&&a.dn();n&&k&&a.cn();m?(a.restore(),this instanceof D?Wc(a,!0):Wc(a,!1)):f.vt()||(h=1/(f.m11*f.m22-f.m12*f.m21),a.transform(f.m22* h,-f.m12*h,-f.m21*h,f.m11*h,h*(f.m21*f.dy-f.m22*f.dx),h*(f.m12*f.dx-f.m11*f.dy)))}1!==d&&(a.globalAlpha=e)}}}; -function Km(a,b,c){var d=a.mc;0===d.width||0===d.height||isNaN(d.x)||isNaN(d.y)||(null!==a.nc&&(Mm(a,b,a.nc,!0,!0),a.nc instanceof ha&&a.nc.type===Uc?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.vg(a.nc)):b.fillRect(d.x,d.y,d.width,d.height)),null!==a.Ib&&(Mm(a,b,a.Ib,!0,!1),a.Ib instanceof ha&&a.Ib.type===Uc?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.vg(a.Ib)):b.fillRect(d.x,d.y,d.width,d.height)),a.Xj(b,c))}G.prototype.Xj=function(){}; -function Mm(a,b,c,d,e){if(null!==c){var f=1,h=1;if("string"===typeof c)d?b.fillStyle=c:b.strokeStyle=c;else if(c.type===Tf)d?b.fillStyle=c.color:b.strokeStyle=c.color;else{var k,h=a.Ha,f=h.width,h=h.height;if(e)var l=a.U,f=l.width,h=l.height;var m=b instanceof Mc;if(m&&c.Og&&(c.type===qm||c.vn===f&&c.Nx===h))k=c.Og;else{var n=l=0,p=0,q=0,r=0,s=0,s=r=0;e&&(l=a.U,f=l.width,h=l.height,r=l.x,s=l.y);l=c.start.x*f+c.start.offsetX;n=c.start.y*h+c.start.offsetY;p=c.end.x*f+c.end.offsetX;q=c.end.y*h+c.end.offsetY; -l+=r;p+=r;n+=s;q+=s;if(c.type===Uf)k=b.createLinearGradient(l,n,p,q);else if(c.type===Uc)s=isNaN(c.at)?Math.max(f,h)/2:c.at,isNaN(c.bu)?(r=0,s=Math.max(f,h)/2):r=c.bu,k=b.createRadialGradient(l,n,r,p,q,s);else if(c.type===qm)try{k=b.createPattern(c.pattern,"repeat")}catch(t){k=null}else v.Gd(c.type,"Brush type");if(c.type!==qm&&(e=c.Xs,null!==e))for(e=e.i;e.next();)k.addColorStop(e.key,e.value);if(m&&(c.Og=k,null!==k&&(c.vn=f,c.Nx=h),null===k&&c.type===qm&&-1!==c.vn)){c.vn=-1;var u=a.g;null!==u&& --1===c.vn&&v.setTimeout(function(){u.Zw()},600)}}d?b.fillStyle=k:b.strokeStyle=k}}}G.prototype.isContainedBy=G.prototype.tl=function(a){if(a instanceof D)a:{if(this!==a&&null!==a)for(var b=this.T;null!==b;){if(b===a){a=!0;break a}b=b.T}a=!1}else a=!1;return a};G.prototype.isVisibleObject=G.prototype.wl=function(){if(!this.visible)return!1;var a=this.T;return null!==a?a.wl():!0}; -function Lm(a){if(0!==(a.fa&2048)===!0){var b=a.ne;b.reset();if(!a.mc.G()||!a.kd.G()){Om(a,!1);return}b.translate(a.mc.x,a.mc.y);b.translate(-a.Ca.x,-a.Ca.y);var c=a.Ha;Cm(a,b,c.x,c.y,c.width,c.height);Om(a,!1);Pm(a,!0)}0!==(a.fa&4096)===!0&&(b=a.T,null===b?(a.Vp.set(a.ne),a.Nu=a.scale,Pm(a,!1)):null!==b.Zg&&(c=a.Vp,c.reset(),b.Lg()?c.multiply(b.Vp):null!==b.T&&c.multiply(b.T.Vp),c.multiply(a.ne),a.Nu=a.scale*b.Nu,Pm(a,!1)))} -function Cm(a,b,c,d,e,f){1!==a.scale&&b.scale(a.scale);if(0!==a.angle){var h=Ab;a.ef&&a.ef.cd()&&(h=a.ef);var k=v.L();if(a instanceof R&&a.bc!==a)for(c=a.bc,d=c.Ha,k.Zt(d.x,d.y,d.width,d.height,h),c.Mk.ub(k),k.offset(-c.Ca.x,-c.Ca.y),h=c.T;null!==h&&h!==a;)h.Mk.ub(k),k.offset(-h.Ca.x,-h.Ca.y),h=h.T;else k.Zt(c,d,e,f,h);b.rotate(a.angle,k.x,k.y);v.v(k)}}g=G.prototype; -g.P=function(a){void 0===a&&(a=!1);if(!0!==dl(this)){Qk(this,!0);Gm(this,!0);var b=this.T;null!==b?a||b.P():(a=this.g,null!==a&&(a.gg.add(this),this instanceof S&&(a.la.ib||this.cf(),null!==this.ge&&Qm(this.ge)),a.ve(!0)));if(this instanceof D){if(this.ia===sk||this.ia===xi)a=this.Ye(),null!==a&&a.P(!0);a=this.ya.n;for(var b=a.length,c=0;ca?a=0:1a||1a?a=0:1a||1=a&&v.k("GraphObject.scale for "+this+" must be greater than zero, not: "+a),this.Tb=a,this.ti(),this.P(),this.h("scale",b,a))});v.defineProperty(G,{angle:"angle"},function(){return this.Kl},function(a){var b=this.Kl;b!==a&&(a%=360,0>a&&(a+=360),b!==a&&(this.Kl=a,this.P(),this.ti(),this.h("angle",b,a)))}); -v.defineProperty(G,{wa:"desiredSize"},function(){return this.mf},function(a){var b=this.mf;b.K(a)||(this.mf=a=a.R(),this.P(),this instanceof X&&this.se(),this.h("desiredSize",b,a),a=this.Y,null!==a&&0!==(this.fa&1024)&&(Am(this,a,"width"),Am(this,a,"height")))}); -v.defineProperty(G,{width:"width"},function(){return this.mf.width},function(a){if(this.mf.width!==a){var b=this.mf;this.mf=a=(new ia(a,this.mf.height)).freeze();this.P();this instanceof X&&this.se();this.h("desiredSize",b,a);b=this.Y;null!==b&&0!==(this.fa&1024)&&Am(this,b,"width")}}); -v.defineProperty(G,{height:"height"},function(){return this.mf.height},function(a){if(this.mf.height!==a){var b=this.mf;this.mf=a=(new ia(this.mf.width,a)).freeze();this.P();this instanceof X&&this.se();this.h("desiredSize",b,a);b=this.Y;null!==b&&0!==(this.fa&1024)&&Am(this,b,"height")}}); -v.defineProperty(G,{jh:"minSize"},function(){return this.Bj},function(a){var b=this.Bj;b.K(a)||(a=a.copy(),isNaN(a.width)&&(a.width=0),isNaN(a.height)&&(a.height=0),a.freeze(),this.Bj=a,this.P(),this.h("minSize",b,a))});v.defineProperty(G,{yf:"maxSize"},function(){return this.zj},function(a){var b=this.zj;b.K(a)||(a=a.copy(),isNaN(a.width)&&(a.width=Infinity),isNaN(a.height)&&(a.height=Infinity),a.freeze(),this.zj=a,this.P(),this.h("maxSize",b,a))});v.u(G,{Ca:"measuredBounds"},function(){return this.kd}); -v.u(G,{Ha:"naturalBounds"},function(){return this.Qc},{configurable:!0});v.defineProperty(G,{margin:"margin"},function(){return this.kr},function(a){"number"===typeof a&&(a=new eb(a));var b=this.kr;b.K(a)||(this.kr=a=a.R(),this.P(),this.h("margin",b,a))});v.u(G,{transform:null},function(){0!==(this.fa&2048)===!0&&Lm(this);return this.ne});v.u(G,{Zg:null},function(){0!==(this.fa&4096)===!0&&Lm(this);return this.Vp}); -v.defineProperty(G,{alignment:"alignment"},function(){return this.Be},function(a){var b=this.Be;b.K(a)||(a.te()&&!a.Uc()&&v.k("GraphObject.alignment for "+this+" must be a real Spot or Spot.Default, not: "+a),this.Be=a=a.R(),Qm(this),this.h("alignment",b,a))});v.defineProperty(G,{column:"column"},function(){return this.cq},function(a){a=Math.round(a);var b=this.cq;b!==a&&(0>a&&v.va(a,">= 0",G,"column"),this.cq=a,this.P(),this.h("column",b,a))}); -v.defineProperty(G,{pG:"columnSpan"},function(){return this.ji},function(a){a=Math.round(a);var b=this.ji;b!==a&&(1>a&&v.va(a,">= 1",G,"columnSpan"),this.ji=a,this.P(),this.h("columnSpan",b,a))});v.defineProperty(G,{cc:"row"},function(){return this.Zr},function(a){a=Math.round(a);var b=this.Zr;b!==a&&(0>a&&v.va(a,">= 0",G,"row"),this.Zr=a,this.P(),this.h("row",b,a))}); -v.defineProperty(G,{rowSpan:"rowSpan"},function(){return this.Hi},function(a){a=Math.round(a);var b=this.Hi;b!==a&&(1>a&&v.va(a,">= 1",G,"rowSpan"),this.Hi=a,this.P(),this.h("rowSpan",b,a))});v.defineProperty(G,{px:"spanAllocation"},function(){return this.ts},function(a){var b=this.ts;b!==a&&(null!==a&&v.j(a,"function",G,"spanAllocation"),this.ts=a,this.h("spanAllocation",b,a))}); -v.defineProperty(G,{Tj:"alignmentFocus"},function(){return this.Up},function(a){var b=this.Up;b.K(a)||(!a.te()||a.Uc()||a.K(sb)&&this instanceof S||v.k("GraphObject.alignmentFocus must be a real Spot or Spot.Default, not: "+a),this.Up=a=a.R(),this.P(),this.h("alignmentFocus",b,a))}); -v.defineProperty(G,{Ud:"portId"},function(){return this.Lr},function(a){var b=this.Lr;if(b!==a){var c=this.Y;null===c||c instanceof S||(v.k("Cannot set portID on a Link: "+a),c=null);null!==b&&null!==c&&Xm(c,this);this.Lr=a;if(null!==a&&c){c.Ch=!0;null===c.Yd&&Ym(c);var d=this.Ud;null!==d&&c.Yd.add(d,this)}this.h("portId",b,a)}});function Um(a){var b=a.Y;b instanceof S&&(a=a.g,null===a||a.la.ib||b.cf())} -v.defineProperty(G,{yb:"toSpot"},function(){return null!==this.ga?this.ga.Qj:sb},function(a){this.Le();var b=this.ga.Qj;b.K(a)||(a=a.R(),this.ga.Qj=a,this.h("toSpot",b,a),Um(this))});v.defineProperty(G,{Gl:"toEndSegmentLength"},function(){return null!==this.ga?this.ga.Oj:10},function(a){this.Le();var b=this.ga.Oj;b!==a&&(0>a&&v.va(a,">= 0",G,"toEndSegmentLength"),this.ga.Oj=a,this.h("toEndSegmentLength",b,a),Um(this))}); -v.defineProperty(G,{du:"toEndSegmentDirection"},function(){return null!==this.ga?this.ga.Nj:ym},function(a){this.Le();var b=this.ga.Nj;b!==a&&(this.ga.Nj=a,this.h("toEndSegmentDirection",b,a),Um(this))});v.defineProperty(G,{eu:"toShortLength"},function(){return null!==this.ga?this.ga.Pj:0},function(a){this.Le();var b=this.ga.Pj;b!==a&&(this.ga.Pj=a,this.h("toShortLength",b,a),Um(this))}); -v.defineProperty(G,{bF:"toLinkable"},function(){return this.As},function(a){var b=this.As;b!==a&&(this.As=a,this.h("toLinkable",b,a))});v.defineProperty(G,{KI:"toMaxLinks"},function(){return this.Bs},function(a){var b=this.Bs;b!==a&&(0>a&&v.va(a,">= 0",G,"toMaxLinks"),this.Bs=a,this.h("toMaxLinks",b,a))});v.defineProperty(G,{xb:"fromSpot"},function(){return null!==this.ga?this.ga.oj:sb},function(a){this.Le();var b=this.ga.oj;b.K(a)||(a=a.R(),this.ga.oj=a,this.h("fromSpot",b,a),Um(this))}); -v.defineProperty(G,{ll:"fromEndSegmentLength"},function(){return null!==this.ga?this.ga.mj:10},function(a){this.Le();var b=this.ga.mj;b!==a&&(0>a&&v.va(a,">= 0",G,"fromEndSegmentLength"),this.ga.mj=a,this.h("fromEndSegmentLength",b,a),Um(this))});v.defineProperty(G,{jt:"fromEndSegmentDirection"},function(){return null!==this.ga?this.ga.lj:ym},function(a){this.Le();var b=this.ga.lj;b!==a&&(this.ga.lj=a,this.h("fromEndSegmentDirection",b,a),Um(this))}); -v.defineProperty(G,{kt:"fromShortLength"},function(){return null!==this.ga?this.ga.nj:0},function(a){this.Le();var b=this.ga.nj;b!==a&&(this.ga.nj=a,this.h("fromShortLength",b,a),Um(this))});v.defineProperty(G,{MD:"fromLinkable"},function(){return this.Fq},function(a){var b=this.Fq;b!==a&&(this.Fq=a,this.h("fromLinkable",b,a))}); -v.defineProperty(G,{qz:"fromMaxLinks"},function(){return this.Gq},function(a){var b=this.Gq;b!==a&&(0>a&&v.va(a,">= 0",G,"fromMaxLinks"),this.Gq=a,this.h("fromMaxLinks",b,a))});v.defineProperty(G,{cursor:"cursor"},function(){return this.nq},function(a){var b=this.nq;b!==a&&(v.j(a,"string",G,"cursor"),this.nq=a,this.h("cursor",b,a))}); -v.defineProperty(G,{click:"click"},function(){return null!==this.ha?this.ha.hi:null},function(a){vm(this);var b=this.ha.hi;b!==a&&(null!==a&&v.j(a,"function",G,"click"),this.ha.hi=a,this.h("click",b,a))});v.defineProperty(G,{$s:"doubleClick"},function(){return null!==this.ha?this.ha.qi:null},function(a){vm(this);var b=this.ha.qi;b!==a&&(null!==a&&v.j(a,"function",G,"doubleClick"),this.ha.qi=a,this.h("doubleClick",b,a))}); -v.defineProperty(G,{cz:"contextClick"},function(){return null!==this.ha?this.ha.ki:null},function(a){vm(this);var b=this.ha.ki;b!==a&&(null!==a&&v.j(a,"function",G,"contextClick"),this.ha.ki=a,this.h("contextClick",b,a))});v.defineProperty(G,{Ft:"mouseEnter"},function(){return null!==this.ha?this.ha.wr:null},function(a){vm(this);var b=this.ha.wr;b!==a&&(null!==a&&v.j(a,"function",G,"mouseEnter"),this.ha.wr=a,this.h("mouseEnter",b,a))}); -v.defineProperty(G,{Gt:"mouseLeave"},function(){return null!==this.ha?this.ha.xr:null},function(a){vm(this);var b=this.ha.xr;b!==a&&(null!==a&&v.j(a,"function",G,"mouseLeave"),this.ha.xr=a,this.h("mouseLeave",b,a))});v.defineProperty(G,{Pz:"mouseOver"},function(){return null!==this.ha?this.ha.Di:null},function(a){vm(this);var b=this.ha.Di;b!==a&&(null!==a&&v.j(a,"function",G,"mouseOver"),this.ha.Di=a,this.h("mouseOver",b,a))}); -v.defineProperty(G,{Oz:"mouseHover"},function(){return null!==this.ha?this.ha.Ci:null},function(a){vm(this);var b=this.ha.Ci;b!==a&&(null!==a&&v.j(a,"function",G,"mouseHover"),this.ha.Ci=a,this.h("mouseHover",b,a))});v.defineProperty(G,{Nz:"mouseHold"},function(){return null!==this.ha?this.ha.Bi:null},function(a){vm(this);var b=this.ha.Bi;b!==a&&(null!==a&&v.j(a,"function",G,"mouseHold"),this.ha.Bi=a,this.h("mouseHold",b,a))}); -v.defineProperty(G,{RH:"mouseDragEnter"},function(){return null!==this.ha?this.ha.ur:null},function(a){vm(this);var b=this.ha.ur;b!==a&&(null!==a&&v.j(a,"function",G,"mouseDragEnter"),this.ha.ur=a,this.h("mouseDragEnter",b,a))});v.defineProperty(G,{SH:"mouseDragLeave"},function(){return null!==this.ha?this.ha.vr:null},function(a){vm(this);var b=this.ha.vr;b!==a&&(null!==a&&v.j(a,"function",G,"mouseDragLeave"),this.ha.vr=a,this.h("mouseDragLeave",b,a))}); -v.defineProperty(G,{Mz:"mouseDrop"},function(){return null!==this.ha?this.ha.Ai:null},function(a){vm(this);var b=this.ha.Ai;b!==a&&(null!==a&&v.j(a,"function",G,"mouseDrop"),this.ha.Ai=a,this.h("mouseDrop",b,a))});v.defineProperty(G,{YC:"actionDown"},function(){return null!==this.ha?this.ha.Op:null},function(a){vm(this);var b=this.ha.Op;b!==a&&(null!==a&&v.j(a,"function",G,"actionDown"),this.ha.Op=a,this.h("actionDown",b,a))}); -v.defineProperty(G,{ZC:"actionMove"},function(){return null!==this.ha?this.ha.Pp:null},function(a){vm(this);var b=this.ha.Pp;b!==a&&(null!==a&&v.j(a,"function",G,"actionMove"),this.ha.Pp=a,this.h("actionMove",b,a))});v.defineProperty(G,{$C:"actionUp"},function(){return null!==this.ha?this.ha.Qp:null},function(a){vm(this);var b=this.ha.Qp;b!==a&&(null!==a&&v.j(a,"function",G,"actionUp"),this.ha.Qp=a,this.h("actionUp",b,a))}); -v.defineProperty(G,{XC:"actionCancel"},function(){return null!==this.ha?this.ha.Np:null},function(a){vm(this);var b=this.ha.Np;b!==a&&(null!==a&&v.j(a,"function",G,"actionCancel"),this.ha.Np=a,this.h("actionCancel",b,a))});v.defineProperty(G,{uA:"toolTip"},function(){return null!==this.ha?this.ha.Ji:null},function(a){vm(this);var b=this.ha.Ji;b!==a&&(null!==a&&v.A(a,Tg,G,"toolTip"),this.ha.Ji=a,this.h("toolTip",b,a))}); -v.defineProperty(G,{contextMenu:"contextMenu"},function(){return null!==this.ha?this.ha.li:null},function(a){vm(this);var b=this.ha.li;b!==a&&(null!==a&&v.A(a,Tg,G,"contextMenu"),this.ha.li=a,this.h("contextMenu",b,a))});G.prototype.bind=G.prototype.bind=function(a){a.qg=this;var b=this.Xo();null!==b&&Zm(b)&&v.k("Cannot add a Binding to a template that has already been copied: "+a);null===this.sc&&(this.sc=new I(zg));this.sc.add(a)}; -G.prototype.findTemplateBinder=G.prototype.Xo=function(){for(var a=this instanceof D?this:this.T;null!==a;){if(null!==a.tk)return a;a=a.T}return null};G.prototype.setProperties=function(a){v.Wt(this,a)};var $m; +function Pm(a,b){a.fa=b?a.fa|4096:a.fa&-4097}function dl(a){return 0!==(a.fa&8192)}function Qk(a,b){a.fa=b?a.fa|8192:a.fa&-8193}function el(a){return 0!==(a.fa&16384)}function Gm(a,b){a.fa=b?a.fa|16384:a.fa&-16385}v.u(G,{Y:"part"},function(){if(this instanceof R)return this;if(null!==this.jm)return this.jm;var a;for(a=this.S;a;){if(a instanceof R)return this.jm=a;a=a.S}return null});v.u(G,{S:"panel"},function(){return this.Wg});G.prototype.Al=function(a){this.Wg=a}; +v.u(G,{layer:"layer"},function(){var a=this.Y;return null!==a?a.layer:null},{configurable:!0});v.u(G,{g:"diagram"},function(){var a=this.Y;return null!==a?a.g:null},{configurable:!0});v.defineProperty(G,{position:"position"},function(){return this.kb},function(a){var b=this.kb;b.K(a)||(a=a.R(),this.pA(a,b)&&this.h("position",b,a))});G.prototype.pA=function(a){this.kb=a;Qm(this);this.ri();return!0};G.prototype.nx=function(a,b){this.kb.m(a,b);Wm(this);this.ri()};v.u(G,{U:"actualBounds"},function(){return this.mc}); +v.defineProperty(G,{scale:"scale"},function(){return this.Tb},function(a){var b=this.Tb;b!==a&&(0>=a&&v.k("GraphObject.scale for "+this+" must be greater than zero, not: "+a),this.Tb=a,this.ri(),this.P(),this.h("scale",b,a))});v.defineProperty(G,{angle:"angle"},function(){return this.Jl},function(a){var b=this.Jl;b!==a&&(a%=360,0>a&&(a+=360),b!==a&&(this.Jl=a,this.P(),this.ri(),this.h("angle",b,a)))}); +v.defineProperty(G,{xa:"desiredSize"},function(){return this.lf},function(a){var b=this.lf;b.K(a)||(this.lf=a=a.R(),this.P(),this instanceof X&&this.re(),this.h("desiredSize",b,a),a=this.Y,null!==a&&0!==(this.fa&1024)&&(Am(this,a,"width"),Am(this,a,"height")))}); +v.defineProperty(G,{width:"width"},function(){return this.lf.width},function(a){if(this.lf.width!==a){var b=this.lf;this.lf=a=(new ia(a,this.lf.height)).freeze();this.P();this instanceof X&&this.re();this.h("desiredSize",b,a);b=this.Y;null!==b&&0!==(this.fa&1024)&&Am(this,b,"width")}}); +v.defineProperty(G,{height:"height"},function(){return this.lf.height},function(a){if(this.lf.height!==a){var b=this.lf;this.lf=a=(new ia(this.lf.width,a)).freeze();this.P();this instanceof X&&this.re();this.h("desiredSize",b,a);b=this.Y;null!==b&&0!==(this.fa&1024)&&Am(this,b,"height")}}); +v.defineProperty(G,{ih:"minSize"},function(){return this.Bj},function(a){var b=this.Bj;b.K(a)||(a=a.copy(),isNaN(a.width)&&(a.width=0),isNaN(a.height)&&(a.height=0),a.freeze(),this.Bj=a,this.P(),this.h("minSize",b,a))});v.defineProperty(G,{xf:"maxSize"},function(){return this.zj},function(a){var b=this.zj;b.K(a)||(a=a.copy(),isNaN(a.width)&&(a.width=Infinity),isNaN(a.height)&&(a.height=Infinity),a.freeze(),this.zj=a,this.P(),this.h("maxSize",b,a))});v.u(G,{Ca:"measuredBounds"},function(){return this.kd}); +v.u(G,{Ha:"naturalBounds"},function(){return this.Qc},{configurable:!0});v.defineProperty(G,{margin:"margin"},function(){return this.lr},function(a){"number"===typeof a&&(a=new eb(a));var b=this.lr;b.K(a)||(this.lr=a=a.R(),this.P(),this.h("margin",b,a))});v.u(G,{transform:null},function(){0!==(this.fa&2048)===!0&&Lm(this);return this.me});v.u(G,{Yg:null},function(){0!==(this.fa&4096)===!0&&Lm(this);return this.Vp}); +v.defineProperty(G,{alignment:"alignment"},function(){return this.Ae},function(a){var b=this.Ae;b.K(a)||(a.se()&&!a.Uc()&&v.k("GraphObject.alignment for "+this+" must be a real Spot or Spot.Default, not: "+a),this.Ae=a=a.R(),Qm(this),this.h("alignment",b,a))});v.defineProperty(G,{column:"column"},function(){return this.cq},function(a){a=Math.round(a);var b=this.cq;b!==a&&(0>a&&v.va(a,">= 0",G,"column"),this.cq=a,this.P(),this.h("column",b,a))}); +v.defineProperty(G,{rG:"columnSpan"},function(){return this.hi},function(a){a=Math.round(a);var b=this.hi;b!==a&&(1>a&&v.va(a,">= 1",G,"columnSpan"),this.hi=a,this.P(),this.h("columnSpan",b,a))});v.defineProperty(G,{Wb:"row"},function(){return this.$r},function(a){a=Math.round(a);var b=this.$r;b!==a&&(0>a&&v.va(a,">= 0",G,"row"),this.$r=a,this.P(),this.h("row",b,a))}); +v.defineProperty(G,{rowSpan:"rowSpan"},function(){return this.Fi},function(a){a=Math.round(a);var b=this.Fi;b!==a&&(1>a&&v.va(a,">= 1",G,"rowSpan"),this.Fi=a,this.P(),this.h("rowSpan",b,a))});v.defineProperty(G,{qx:"spanAllocation"},function(){return this.us},function(a){var b=this.us;b!==a&&(null!==a&&v.j(a,"function",G,"spanAllocation"),this.us=a,this.h("spanAllocation",b,a))}); +v.defineProperty(G,{Tj:"alignmentFocus"},function(){return this.Up},function(a){var b=this.Up;b.K(a)||(!a.se()||a.Uc()||a.K(sb)&&this instanceof S||v.k("GraphObject.alignmentFocus must be a real Spot or Spot.Default, not: "+a),this.Up=a=a.R(),this.P(),this.h("alignmentFocus",b,a))}); +v.defineProperty(G,{Sd:"portId"},function(){return this.Mr},function(a){var b=this.Mr;if(b!==a){var c=this.Y;null===c||c instanceof S||(v.k("Cannot set portID on a Link: "+a),c=null);null!==b&&null!==c&&Xm(c,this);this.Mr=a;if(null!==a&&c){c.Ah=!0;null===c.Wd&&Ym(c);var d=this.Sd;null!==d&&c.Wd.add(d,this)}this.h("portId",b,a)}});function Um(a){var b=a.Y;b instanceof S&&(a=a.g,null===a||a.la.ib||b.bf())} +v.defineProperty(G,{yb:"toSpot"},function(){return null!==this.ga?this.ga.Qj:sb},function(a){this.Ke();var b=this.ga.Qj;b.K(a)||(a=a.R(),this.ga.Qj=a,this.h("toSpot",b,a),Um(this))});v.defineProperty(G,{Fl:"toEndSegmentLength"},function(){return null!==this.ga?this.ga.Oj:10},function(a){this.Ke();var b=this.ga.Oj;b!==a&&(0>a&&v.va(a,">= 0",G,"toEndSegmentLength"),this.ga.Oj=a,this.h("toEndSegmentLength",b,a),Um(this))}); +v.defineProperty(G,{eu:"toEndSegmentDirection"},function(){return null!==this.ga?this.ga.Nj:ym},function(a){this.Ke();var b=this.ga.Nj;b!==a&&(this.ga.Nj=a,this.h("toEndSegmentDirection",b,a),Um(this))});v.defineProperty(G,{fu:"toShortLength"},function(){return null!==this.ga?this.ga.Pj:0},function(a){this.Ke();var b=this.ga.Pj;b!==a&&(this.ga.Pj=a,this.h("toShortLength",b,a),Um(this))}); +v.defineProperty(G,{eF:"toLinkable"},function(){return this.Bs},function(a){var b=this.Bs;b!==a&&(this.Bs=a,this.h("toLinkable",b,a))});v.defineProperty(G,{MI:"toMaxLinks"},function(){return this.Cs},function(a){var b=this.Cs;b!==a&&(0>a&&v.va(a,">= 0",G,"toMaxLinks"),this.Cs=a,this.h("toMaxLinks",b,a))});v.defineProperty(G,{xb:"fromSpot"},function(){return null!==this.ga?this.ga.oj:sb},function(a){this.Ke();var b=this.ga.oj;b.K(a)||(a=a.R(),this.ga.oj=a,this.h("fromSpot",b,a),Um(this))}); +v.defineProperty(G,{ll:"fromEndSegmentLength"},function(){return null!==this.ga?this.ga.mj:10},function(a){this.Ke();var b=this.ga.mj;b!==a&&(0>a&&v.va(a,">= 0",G,"fromEndSegmentLength"),this.ga.mj=a,this.h("fromEndSegmentLength",b,a),Um(this))});v.defineProperty(G,{kt:"fromEndSegmentDirection"},function(){return null!==this.ga?this.ga.lj:ym},function(a){this.Ke();var b=this.ga.lj;b!==a&&(this.ga.lj=a,this.h("fromEndSegmentDirection",b,a),Um(this))}); +v.defineProperty(G,{lt:"fromShortLength"},function(){return null!==this.ga?this.ga.nj:0},function(a){this.Ke();var b=this.ga.nj;b!==a&&(this.ga.nj=a,this.h("fromShortLength",b,a),Um(this))});v.defineProperty(G,{PD:"fromLinkable"},function(){return this.Fq},function(a){var b=this.Fq;b!==a&&(this.Fq=a,this.h("fromLinkable",b,a))}); +v.defineProperty(G,{vz:"fromMaxLinks"},function(){return this.Gq},function(a){var b=this.Gq;b!==a&&(0>a&&v.va(a,">= 0",G,"fromMaxLinks"),this.Gq=a,this.h("fromMaxLinks",b,a))});v.defineProperty(G,{cursor:"cursor"},function(){return this.nq},function(a){var b=this.nq;b!==a&&(v.j(a,"string",G,"cursor"),this.nq=a,this.h("cursor",b,a))}); +v.defineProperty(G,{click:"click"},function(){return null!==this.ha?this.ha.fi:null},function(a){vm(this);var b=this.ha.fi;b!==a&&(null!==a&&v.j(a,"function",G,"click"),this.ha.fi=a,this.h("click",b,a))});v.defineProperty(G,{at:"doubleClick"},function(){return null!==this.ha?this.ha.oi:null},function(a){vm(this);var b=this.ha.oi;b!==a&&(null!==a&&v.j(a,"function",G,"doubleClick"),this.ha.oi=a,this.h("doubleClick",b,a))}); +v.defineProperty(G,{ez:"contextClick"},function(){return null!==this.ha?this.ha.ii:null},function(a){vm(this);var b=this.ha.ii;b!==a&&(null!==a&&v.j(a,"function",G,"contextClick"),this.ha.ii=a,this.h("contextClick",b,a))});v.defineProperty(G,{Gt:"mouseEnter"},function(){return null!==this.ha?this.ha.xr:null},function(a){vm(this);var b=this.ha.xr;b!==a&&(null!==a&&v.j(a,"function",G,"mouseEnter"),this.ha.xr=a,this.h("mouseEnter",b,a))}); +v.defineProperty(G,{Ht:"mouseLeave"},function(){return null!==this.ha?this.ha.yr:null},function(a){vm(this);var b=this.ha.yr;b!==a&&(null!==a&&v.j(a,"function",G,"mouseLeave"),this.ha.yr=a,this.h("mouseLeave",b,a))});v.defineProperty(G,{Tz:"mouseOver"},function(){return null!==this.ha?this.ha.Bi:null},function(a){vm(this);var b=this.ha.Bi;b!==a&&(null!==a&&v.j(a,"function",G,"mouseOver"),this.ha.Bi=a,this.h("mouseOver",b,a))}); +v.defineProperty(G,{Sz:"mouseHover"},function(){return null!==this.ha?this.ha.Ai:null},function(a){vm(this);var b=this.ha.Ai;b!==a&&(null!==a&&v.j(a,"function",G,"mouseHover"),this.ha.Ai=a,this.h("mouseHover",b,a))});v.defineProperty(G,{Rz:"mouseHold"},function(){return null!==this.ha?this.ha.zi:null},function(a){vm(this);var b=this.ha.zi;b!==a&&(null!==a&&v.j(a,"function",G,"mouseHold"),this.ha.zi=a,this.h("mouseHold",b,a))}); +v.defineProperty(G,{TH:"mouseDragEnter"},function(){return null!==this.ha?this.ha.vr:null},function(a){vm(this);var b=this.ha.vr;b!==a&&(null!==a&&v.j(a,"function",G,"mouseDragEnter"),this.ha.vr=a,this.h("mouseDragEnter",b,a))});v.defineProperty(G,{UH:"mouseDragLeave"},function(){return null!==this.ha?this.ha.wr:null},function(a){vm(this);var b=this.ha.wr;b!==a&&(null!==a&&v.j(a,"function",G,"mouseDragLeave"),this.ha.wr=a,this.h("mouseDragLeave",b,a))}); +v.defineProperty(G,{Qz:"mouseDrop"},function(){return null!==this.ha?this.ha.yi:null},function(a){vm(this);var b=this.ha.yi;b!==a&&(null!==a&&v.j(a,"function",G,"mouseDrop"),this.ha.yi=a,this.h("mouseDrop",b,a))});v.defineProperty(G,{aD:"actionDown"},function(){return null!==this.ha?this.ha.Op:null},function(a){vm(this);var b=this.ha.Op;b!==a&&(null!==a&&v.j(a,"function",G,"actionDown"),this.ha.Op=a,this.h("actionDown",b,a))}); +v.defineProperty(G,{bD:"actionMove"},function(){return null!==this.ha?this.ha.Pp:null},function(a){vm(this);var b=this.ha.Pp;b!==a&&(null!==a&&v.j(a,"function",G,"actionMove"),this.ha.Pp=a,this.h("actionMove",b,a))});v.defineProperty(G,{cD:"actionUp"},function(){return null!==this.ha?this.ha.Qp:null},function(a){vm(this);var b=this.ha.Qp;b!==a&&(null!==a&&v.j(a,"function",G,"actionUp"),this.ha.Qp=a,this.h("actionUp",b,a))}); +v.defineProperty(G,{$C:"actionCancel"},function(){return null!==this.ha?this.ha.Np:null},function(a){vm(this);var b=this.ha.Np;b!==a&&(null!==a&&v.j(a,"function",G,"actionCancel"),this.ha.Np=a,this.h("actionCancel",b,a))});v.defineProperty(G,{yA:"toolTip"},function(){return null!==this.ha?this.ha.Hi:null},function(a){vm(this);var b=this.ha.Hi;b!==a&&(null!==a&&v.A(a,Tg,G,"toolTip"),this.ha.Hi=a,this.h("toolTip",b,a))}); +v.defineProperty(G,{contextMenu:"contextMenu"},function(){return null!==this.ha?this.ha.ji:null},function(a){vm(this);var b=this.ha.ji;b!==a&&(null!==a&&v.A(a,Tg,G,"contextMenu"),this.ha.ji=a,this.h("contextMenu",b,a))});G.prototype.bind=G.prototype.bind=function(a){a.pg=this;var b=this.Xo();null!==b&&Zm(b)&&v.k("Cannot add a Binding to a template that has already been copied: "+a);null===this.sc&&(this.sc=new I(zg));this.sc.add(a)}; +G.prototype.findTemplateBinder=G.prototype.Xo=function(){for(var a=this instanceof D?this:this.S;null!==a;){if(null!==a.tk)return a;a=a.S}return null};G.prototype.setProperties=function(a){v.Xt(this,a)};var $m; G.make=$m=function(a,b){var c=arguments,d=null,e=null;if("function"===typeof a)e=a;else if("string"===typeof a){var f=an.ja(a);"function"===typeof f?(c=v.dl(arguments),d=f(c)):e=ea[a]}null===d&&(void 0===e&&(d=window.$,void 0!==d&&void 0!==d.noop&&v.k("GraphObject.make failed to complete. Is it conflicting with another $ var? (such as jQuery)"),v.k("GraphObject.make failed to complete, it may be conflicting with another var.")),null!==e&&e.constructor||v.k("GraphObject.make requires a class function or class name, not: "+ a),d=new e);f=1;if(d instanceof E&&1e)&&v.k("Must specify non-negative integer row for RowColumnDefinition "+b+", not: "+e),a.ee=!0,a.index=e):void 0!==b.column&&(e=b.column,(void 0===e||null===e||Infinity===e||isNaN(e)||0>e)&&v.k("Must specify non-negative integer column for RowColumnDefinition "+b+", not: "+e),a.ee=!1,a.index=e);e=new ta;for(c in b)"row"!==c&&"column"!==c&&(e[c]=b[c]);v.Wt(a,e)}else v.Wt(a,b);else v.k('Unknown initializer "'+b+'" for object being constructed by GraphObject.make: '+a)} +(c=ra(wf,b),null!==c?a.type=c:v.k("Unknown PathSegment type as an argument to GraphObject.make: "+b)):v.k("Unable to use a string as an argument to GraphObject.make: "+b);else if(b instanceof G)c=b,a instanceof D||v.k("A GraphObject can only be added to a Panel, not to: "+a),a.add(c);else if(b instanceof tg){var d=b,c=a,e;d.ce&&c.getRowDefinition?e=c.getRowDefinition(d.index):!d.ce&&c.getColumnDefinition?e=c.getColumnDefinition(d.index):v.k("A RowColumnDefinition can only be added to a Panel, not to: "+ +a);e.Zs(d)}else if(b instanceof fa)a instanceof W&&b.pe===W?2===(b.value&2)?a.hx=b:b===Hi||b===zi||b===yi?a.Ie=b:b===cn||b===dn||b===en?a.Qs=b:b!==fn&&b!==Ai&&v.k("Unknown Link enum value for a Link property: "+b):a instanceof D&&b.pe===D?a.type=b:a instanceof $g&&b.pe===$g?a.uF=b:a instanceof X&&(b===Ni||b===Pi||b===Qi||b===sm)?a.wz=b:a instanceof kk&&(b===Ni||b===Pi||b===Qi)?a.gH=b:a instanceof G&&b.pe===W?(c=a,0===b.name.indexOf("Orient")?c.Vt=b:v.k("Unknown Link enum value for GraphObject.segmentOrientation property: "+ +b)):a instanceof G&&b.pe===G?a.stretch=b:a instanceof tg&&b.pe===tg?a.au=b:a instanceof E&&b.pe===E?a.al=b:a instanceof ha&&b.pe===ha?a.type=b:a instanceof re&&b.pe===re?a.type=b:a instanceof wf&&b.pe===wf?a.type=b:a instanceof zg&&b.pe===zg?a.mode=b:a instanceof zf&&b.pe===zf?a.wc=b:a instanceof Z&&b.pe===Z?0===b.name.indexOf("Alignment")?a.alignment=b:0===b.name.indexOf("Arrangement")?a.Nf=b:0===b.name.indexOf("Compaction")?a.compaction=b:0===b.name.indexOf("Path")?a.path=b:0===b.name.indexOf("Sorting")? +a.sorting=b:0===b.name.indexOf("Style")?a.QI=b:v.k("Unknown enum value: "+b):a instanceof gn&&b.pe===gn?0===b.name.indexOf("Aggressive")?a.eG=b:0===b.name.indexOf("Cycle")?a.AG=b:0===b.name.indexOf("Init")?a.lH=b:0===b.name.indexOf("Layer")?a.BH=b:v.k("Unknown enum value: "+b):a instanceof lm&&b.pe===lm?b===hn||b===jn||b===kn||b===ln?a.sorting=b:b===mn||b===nn?a.Nf=b:b===tn||b===un?a.alignment=b:v.k("Unknown enum value: "+b):a instanceof vn&&b.pe===vn?b===wn||b===xn||b===yn||b===zn||b===An?a.sorting= +b:b===Bn||b===Cn||b===Dn||b===En?a.direction=b:b===Fn||b===Gn||b===Hn||b===In?a.Nf=b:b===Jn||b===Kn?a.Rw=b:v.k("Unknown enum value: "+b):v.k("No property to set for this enum value: "+b);else if(b instanceof zg)a instanceof G?a.bind(b):a instanceof tg?a.bind(b):v.k("A Binding can only be applied to a GraphObject or RowColumnDefinition, not to: "+a);else if(b instanceof Ee)a instanceof re?a.Ub.add(b):v.k("A PathFigure can only be added to a Geometry, not to: "+a);else if(b instanceof wf)a instanceof +Ee?a.sb.add(b):v.k("A PathSegment can only be added to a PathFigure, not to: "+a);else if(b instanceof Yf)a instanceof E?a.Pb=b:a instanceof V?a.Pb=b:v.k("A Layout can only be assigned to a Diagram or a Group, not to: "+a);else if(Array.isArray(b))for(c=0;ce)&&v.k("Must specify non-negative integer row for RowColumnDefinition "+b+", not: "+e),a.ce=!0,a.index=e):void 0!==b.column&&(e=b.column,(void 0===e||null===e||Infinity===e||isNaN(e)||0>e)&&v.k("Must specify non-negative integer column for RowColumnDefinition "+b+", not: "+e),a.ce=!1,a.index=e);e=new ta;for(c in b)"row"!==c&&"column"!==c&&(e[c]=b[c]);v.Xt(a,e)}else v.Xt(a,b);else v.k('Unknown initializer "'+b+'" for object being constructed by GraphObject.make: '+a)} var an=new na("string","function");G.getBuilders=function(){var a=new na("string","function"),b;for(b in an)if(b!==b.toLowerCase()){var c=an[b];"function"===typeof c&&a.add(b,c)}a.freeze();return a};var Ln;G.defineBuilder=Ln=function(a,b){v.j(a,"string",G,"defineBuilder:name");v.j(b,"function",G,"defineBuilder:func");var c=a.toLowerCase();""!==a&&"none"!==c&&a!==c||v.k("Shape.defineFigureGenerator name must not be empty or None or all-lower-case: "+a);an.add(a,b)};var Mn; G.takeBuilderArgument=Mn=function(a,b,c){void 0===c&&(c=null);var d=a[1];if("function"===typeof c?c(d):"string"===typeof d)return a.splice(1,1),d;if(void 0===b)throw Error("no "+("function"===typeof c?"satisfactory":"string")+" argument for GraphObject builder "+a[0]);return b}; -Ln("Button",function(){var a=new ha(Uf);a.addColorStop(0,"white");a.addColorStop(1,"lightgray");var b=new ha(Uf);b.addColorStop(0,"white");b.addColorStop(1,"dodgerblue");a=$m(D,sk,{Ew:!0},{_buttonFillNormal:a,_buttonStrokeNormal:"gray",_buttonFillOver:b,_buttonStrokeOver:"blue"},$m(X,{name:"ButtonBorder",Ab:"Rectangle",B:new L(0,0,2.761423749153968,2.761423749153968),C:new L(1,1,-2.761423749153968,-2.761423749153968),fill:a,stroke:"gray"}));a.Ft=function(a,b){var e=b.de("ButtonBorder");if(e instanceof -X){var f=b._buttonFillOver;b._buttonFillNormal=e.fill;e.fill=f;f=b._buttonStrokeOver;b._buttonStrokeNormal=e.stroke;e.stroke=f}};a.Gt=function(a,b){var e=b.de("ButtonBorder");e instanceof X&&(e.fill=b._buttonFillNormal,e.stroke=b._buttonStrokeNormal)};return a}); -Ln("TreeExpanderButton",function(){var a=$m("Button",{_treeExpandedFigure:"MinusLine",_treeCollapsedFigure:"PlusLine"},$m(X,{name:"ButtonIcon",Ab:"MinusLine",wa:ld},(new zg("figure","isTreeExpanded",function(a,c){var d=c.T;return a?d._treeExpandedFigure:d._treeCollapsedFigure})).Rw()),{visible:!1},(new zg("visible","isTreeLeaf",function(a){return!a})).Rw());a.click=function(a,c){var d=c.Y;d instanceof Tg&&(d=d.Nf);if(d instanceof S){var e=d.g;if(null!==e){e=e.nb;if(d.nd){if(!e.canCollapseTree(d))return}else if(!e.canExpandTree(d))return; -a.zc=!0;d.nd?e.collapseTree(d):e.expandTree(d)}}};return a}); -Ln("SubGraphExpanderButton",function(){var a=$m("Button",{_subGraphExpandedFigure:"MinusLine",_subGraphCollapsedFigure:"PlusLine"},$m(X,{name:"ButtonIcon",Ab:"MinusLine",wa:ld},(new zg("figure","isSubGraphExpanded",function(a,c){var d=c.T;return a?d._subGraphExpandedFigure:d._subGraphCollapsedFigure})).Rw()));a.click=function(a,c){var d=c.Y;d instanceof Tg&&(d=d.Nf);if(d instanceof V){var e=d.g;if(null!==e){e=e.nb;if(d.fe){if(!e.canCollapseSubGraph(d))return}else if(!e.canExpandSubGraph(d))return;a.zc= -!0;d.fe?e.collapseSubGraph(d):e.expandSubGraph(d)}}};return a});Ln("ContextMenuButton",function(){var a=$m("Button");a.stretch=um;var b=a.de("ButtonBorder");b instanceof X&&(b.Ab="Rectangle",b.B=new L(0,0,2,3),b.C=new L(1,1,-2,-2));return a}); -Ln("PanelExpanderButton",function(a){var b=Mn(a,"COLLAPSIBLE");a=$m("Button",$m(X,"TriangleUp",{wa:new ia(6,4)},(new zg("figure","visible",function(a){return a?"TriangleUp":"TriangleDown"})).Rw(b)));var c=a.de("ButtonBorder");c instanceof X&&(c.stroke=null,c.fill="transparent");a.click=function(a,c){var f=c.g;if(null!==f&&!f.ab){var h=c.Y.de(b);null!==h&&(f.Qb("Collapse/Expand Panel"),h.visible=!h.visible,f.yd("Collapse/Expand Panel"))}};return a}); -Ln("CheckBoxButton",function(a){var b=Mn(a);a=$m("Button",{"ButtonBorder.fill":"white","ButtonBorder.stroke":"gray",width:14,height:14},$m(X,{name:"ButtonIcon",SG:"M0 4 L3 9 9 0",lb:2,stretch:Fe,rz:Pi,visible:!1},""!==b?(new zg("visible",b)).HH():[]));a.click=function(a,d){if(!(a.g.ab||""!==b&&a.g.ba.ab)){a.zc=!0;var e=d.de("ButtonIcon");e.g.Qb("checkbox");e.visible=!e.visible;"function"===typeof d._doClick&&d._doClick(a,d);e.g.yd("checkbox")}};return a}); -Ln("CheckBox",function(a){a=Mn(a);a=$m("CheckBoxButton",a,{name:"Button",margin:new eb(0,1,0,0)});var b=$m(D,"Horizontal",a,{Ew:!0,margin:1,_buttonFillNormal:a._buttonFillNormal,_buttonStrokeNormal:a._buttonStrokeNormal,_buttonFillOver:a._buttonFillOver,_buttonStrokeOver:a._buttonStrokeOver,Ft:a.Ft,Gt:a.Gt,click:a.click,_buttonClick:a.click});a.Ft=null;a.Gt=null;a.click=null;return b}); -function wm(){this.li=this.Ji=this.Np=this.Qp=this.Pp=this.Op=this.Ai=this.vr=this.ur=this.Bi=this.Ci=this.Di=this.xr=this.wr=this.ki=this.qi=this.hi=null}wm.prototype.copy=function(){var a=new wm;a.hi=this.hi;a.qi=this.qi;a.ki=this.ki;a.wr=this.wr;a.xr=this.xr;a.Di=this.Di;a.Ci=this.Ci;a.Bi=this.Bi;a.ur=this.ur;a.vr=this.vr;a.Ai=this.Ai;a.Op=this.Op;a.Pp=this.Pp;a.Qp=this.Qp;a.Np=this.Np;a.Ji=this.Ji;a.li=this.li;return a}; -function D(a){G.call(this);void 0===a?0===arguments.length?this.ia=Si:v.k("invalid argument to Panel constructor: undefined"):(v.pb(a,D,D,"type"),this.ia=a);this.ya=new I(G);this.Te=Zc;this.Qg=!1;this.ia===vk&&(this.Qg=!0);this.Pq=!1;this.rq=kc;this.oi=sm;this.ia===Rm&&Nn(this);this.Io=Pi;this.Kq=nd;this.Lq=Xc;this.tk=this.ke=null;this.br=NaN;this.ig=this.tj=null;this.Zn="category";this.hg=null;this.Li=new B(NaN,NaN,NaN,NaN);this.vm=null;this.Ch=!1;this.$r=null}v.Ia(D,G);v.Wh(D);v.ea("Panel",D); -function Nn(a){a.ij=Zc;a.zh=1;a.ni=null;a.Rl=null;a.yh=1;a.xh=null;a.Ql=null;a.Nd=[];a.Jd=[];a.qm=On;a.Pl=On;a.Ki=0;a.xi=0} -D.prototype.cloneProtected=function(a){G.prototype.cloneProtected.call(this,a);a.ia=this.ia;a.Te=this.Te.R();a.Qg=this.Qg;a.Pq=this.Pq;a.rq=this.rq.R();a.oi=this.oi;if(a.ia===Rm){a.ij=this.ij.R();a.zh=this.zh;a.ni=this.ni;a.Rl=this.Rl;a.yh=this.yh;a.xh=this.xh;a.Ql=this.Ql;var b=[];if(0a&&v.va(a,">= 0",D,"padding"),a=new eb(a)):(v.A(a,eb,D,"padding"),0>a.left&&v.va(a.left,">= 0",D,"padding:value.left"),0>a.right&&v.va(a.right,">= 0",D,"padding:value.right"),0>a.top&&v.va(a.top,">= 0",D,"padding:value.top"),0>a.bottom&&v.va(a.bottom,">= 0",D,"padding:value.bottom"));var b=this.Te;b.K(a)||(this.Te=a=a.R(),this.P(),this.h("padding",b,a))}); -v.defineProperty(D,{fl:"defaultAlignment"},function(){return this.rq},function(a){var b=this.rq;b.K(a)||(this.rq=a=a.R(),this.P(),this.h("defaultAlignment",b,a))});v.defineProperty(D,{Od:"defaultStretch"},function(){return this.oi},function(a){var b=this.oi;b!==a&&(v.pb(a,G,D,"defaultStretch"),this.oi=a,this.P(),this.h("defaultStretch",b,a))}); -v.defineProperty(D,{GJ:"defaultSeparatorPadding"},function(){return void 0===this.ij?Zc:this.ij},function(a){if(void 0!==this.ij){"number"===typeof a&&(a=new eb(a));var b=this.ij;b.K(a)||(this.ij=a=a.R(),this.h("defaultSeparatorPadding",b,a))}}); -v.defineProperty(D,{EJ:"defaultRowSeparatorStroke"},function(){return void 0===this.ni?null:this.ni},function(a){var b=this.ni;b!==a&&(null===a||"string"===typeof a||a instanceof ha)&&(a instanceof ha&&a.freeze(),this.ni=a,this.h("defaultRowSeparatorStroke",b,a))});v.defineProperty(D,{FJ:"defaultRowSeparatorStrokeWidth"},function(){return void 0===this.zh?1:this.zh},function(a){if(void 0!==this.zh){var b=this.zh;b!==a&&isFinite(a)&&0<=a&&(this.zh=a,this.h("defaultRowSeparatorStrokeWidth",b,a))}}); -v.defineProperty(D,{DJ:"defaultRowSeparatorDashArray"},function(){return void 0===this.Rl?null:this.Rl},function(a){if(void 0!==this.Rl){var b=this.Rl;if(b!==a){null===a||Array.isArray(a)||v.Gd(a,"Array",D,"defaultRowSeparatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;e=c&&(c=1);var d=this.Dw,e=d.width,d=d.height,f=this.Ha,h=f.width,f=f.height,k=Math.ceil(h/e),l=Math.ceil(f/d),m=this.RD;a.save();a.beginPath();a.rect(0,0,h,f);a.clip();for(var n=[],p=this.ya.n,q=p.length,r=0;r -e*t*c))){var s=n[r],u=!1,z=!0,A=x.$E;null!==A&&(u=!0,void 0!==a.setLineDash?(a.setLineDash(A),a.lineDashOffset=x.ld):void 0!==a.webkitLineDash?(a.webkitLineDash=A,a.webkitLineDashOffset=x.ld):void 0!==a.mozDash?(a.mozDash=A,a.mozDashOffset=x.ld):z=!1);if("LineV"===x.Ab){a.lineWidth=x.lb;Mm(this,a,x.stroke,!1,!1);a.beginPath();for(var H=w=Math.floor(-m.x/e);H<=w+k;H++){var C=H*e+m.x;0<=C&&Cf.height)continue}else if(l.position>f.width)continue;var m=l.Fp;isNaN(m)&&(m=c?a.zh:a.yh);var n=l.Ep;null===n&&(n=c?a.ni:a.xh);if(0!==m&&null!==n){Mm(a,b,n,!1,!1);var n=!1,p=!0,q=l.vI;null!==q&&(n=!0,void 0!==b.setLineDash?(b.setLineDash(q),b.lineDashOffset=a.ld):void 0!==b.webkitLineDash?(b.webkitLineDash=q,b.webkitLineDashOffset=a.ld):void 0!==b.mozDash? -(b.mozDash=q,b.mozDashOffset=a.ld):p=!1);b.beginPath();var r=l.position+m;c?r>f.height&&(m-=r-f.height):r>f.width&&(m-=r-f.width);l=l.position+m/2;b.lineWidth=m;r=a.padding;c?(l+=r.top,m=r.left,r=f.width-r.right,n&&!p?zm(b,m,l,r,l,q,0):(b.moveTo(m,l),b.lineTo(r,l))):(l+=r.left,m=r.top,r=f.height-r.bottom,n&&!p?zm(b,l,m,l,r,q,0):(b.moveTo(l,m),b.lineTo(l,r)));b.stroke();n&&(void 0!==b.setLineDash?(b.setLineDash(v.th),b.lineDashOffset=0):void 0!==b.webkitLineDash?(b.webkitLineDash=v.th,b.webkitLineDashOffset= +v.defineProperty(D,{type:"type"},function(){return this.ia},function(a){var b=this.ia;b!==a&&(b!==Im&&b!==Jm||v.k("Cannot change Panel.type when it is already a TableRow or a TableColumn: "+a),this.ia=a,this.ia===vk?this.Pg=!0:this.ia===Rm&&Nn(this),this.P(),this.h("type",b,a))});v.u(D,{elements:"elements"},function(){return this.za.i});v.u(D,{Ha:"naturalBounds"},function(){return this.Qc}); +v.defineProperty(D,{padding:"padding"},function(){return this.Se},function(a){"number"===typeof a?(0>a&&v.va(a,">= 0",D,"padding"),a=new eb(a)):(v.A(a,eb,D,"padding"),0>a.left&&v.va(a.left,">= 0",D,"padding:value.left"),0>a.right&&v.va(a.right,">= 0",D,"padding:value.right"),0>a.top&&v.va(a.top,">= 0",D,"padding:value.top"),0>a.bottom&&v.va(a.bottom,">= 0",D,"padding:value.bottom"));var b=this.Se;b.K(a)||(this.Se=a=a.R(),this.P(),this.h("padding",b,a))}); +v.defineProperty(D,{fl:"defaultAlignment"},function(){return this.rq},function(a){var b=this.rq;b.K(a)||(this.rq=a=a.R(),this.P(),this.h("defaultAlignment",b,a))});v.defineProperty(D,{Md:"defaultStretch"},function(){return this.mi},function(a){var b=this.mi;b!==a&&(v.pb(a,G,D,"defaultStretch"),this.mi=a,this.P(),this.h("defaultStretch",b,a))}); +v.defineProperty(D,{IJ:"defaultSeparatorPadding"},function(){return void 0===this.ij?$c:this.ij},function(a){if(void 0!==this.ij){"number"===typeof a&&(a=new eb(a));var b=this.ij;b.K(a)||(this.ij=a=a.R(),this.h("defaultSeparatorPadding",b,a))}}); +v.defineProperty(D,{GJ:"defaultRowSeparatorStroke"},function(){return void 0===this.li?null:this.li},function(a){var b=this.li;b!==a&&(null===a||"string"===typeof a||a instanceof ha)&&(a instanceof ha&&a.freeze(),this.li=a,this.h("defaultRowSeparatorStroke",b,a))});v.defineProperty(D,{HJ:"defaultRowSeparatorStrokeWidth"},function(){return void 0===this.xh?1:this.xh},function(a){if(void 0!==this.xh){var b=this.xh;b!==a&&isFinite(a)&&0<=a&&(this.xh=a,this.h("defaultRowSeparatorStrokeWidth",b,a))}}); +v.defineProperty(D,{FJ:"defaultRowSeparatorDashArray"},function(){return void 0===this.Ql?null:this.Ql},function(a){if(void 0!==this.Ql){var b=this.Ql;if(b!==a){null===a||Array.isArray(a)||v.Ed(a,"Array",D,"defaultRowSeparatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;e=c&&(c=1);var d=this.Ew,e=d.width,d=d.height,f=this.Ha,h=f.width,f=f.height,k=Math.ceil(h/e),l=Math.ceil(f/d),m=this.UD;a.save();a.beginPath();a.rect(0,0,h,f);a.clip();for(var n=[],p=this.za.n,q=p.length,r=0;r +e*t*c))){var s=n[r],u=!1,x=!0,A=w.cF;null!==A&&(u=!0,x=a.pz(A,w.ke));if("LineV"===w.Ab){a.lineWidth=w.lb;Mm(this,a,w.stroke,!1,!1);a.beginPath();for(var H=y=Math.floor(-m.x/e);H<=y+k;H++){var C=H*e+m.x;0<=C&&Cf.height)continue}else if(l.position>f.width)continue;var m=l.Fp;isNaN(m)&&(m=c?a.xh:a.wh);var n=l.Ep;null===n&&(n=c?a.li:a.vh);if(0!==m&&null!==n){Mm(a,b,n,!1,!1);var n=!1,p=!0,q=l.xI;null!==q&&(n=!0,void 0!==b.setLineDash?(b.setLineDash(q),b.lineDashOffset=a.ke):void 0!==b.webkitLineDash?(b.webkitLineDash=q,b.webkitLineDashOffset=a.ke):void 0!==b.mozDash? +(b.mozDash=q,b.mozDashOffset=a.ke):p=!1);b.beginPath();var r=l.position+m;c?r>f.height&&(m-=r-f.height):r>f.width&&(m-=r-f.width);l=l.position+m/2;b.lineWidth=m;r=a.padding;c?(l+=r.top,m=r.left,r=f.width-r.right,n&&!p?zm(b,m,l,r,l,q,0):(b.moveTo(m,l),b.lineTo(r,l))):(l+=r.left,m=r.top,r=f.height-r.bottom,n&&!p?zm(b,l,m,l,r,q,0):(b.moveTo(l,m),b.lineTo(l,r)));b.stroke();n&&(void 0!==b.setLineDash?(b.setLineDash(v.fj),b.lineDashOffset=0):void 0!==b.webkitLineDash?(b.webkitLineDash=v.fj,b.webkitLineDashOffset= 0):void 0!==b.mozDash&&(b.mozDash=null,b.mozDashOffset=0))}}}} -function Qn(a,b,c,d,e){for(var f=d.length,h=a.U,k=0;km)){var n=l.pf(),p=l.Fp;isNaN(p)&&(p=c?a.zh:a.yh);var q=l.Ep;null===q&&(q=c?a.ni:a.xh);null===q&&(p=0);n-=p;p=l.position+p;n+=l.Ma;p+n>m&&(n=m-p);0>=n||(m=a.padding,Mm(a,b,l.background,!0,!1),c?b.fillRect(m.left,p+m.top,h.width-(m.left+m.right),n):b.fillRect(p+m.left,m.top,n,h.height-(m.top+m.bottom)))}}}} +function Qn(a,b,c,d,e){for(var f=d.length,h=a.U,k=0;km)){var n=l.of(),p=l.Fp;isNaN(p)&&(p=c?a.xh:a.wh);var q=l.Ep;null===q&&(q=c?a.li:a.vh);null===q&&(p=0);n-=p;p=l.position+p;n+=l.Ia;p+n>m&&(n=m-p);0>=n||(m=a.padding,Mm(a,b,l.background,!0,!1),c?b.fillRect(m.left,p+m.top,h.width-(m.left+m.right),n):b.fillRect(p+m.left,m.top,n,h.height-(m.top+m.bottom)))}}}} function Pn(a,b,c){if(0!==a%b)return!1;b=c.length;for(var d=0;dud&&(Hc=Math.max(ud-dd,0));var oh=0===Y.Ma;Y.Ma+=Hc;ud=Math.max(ud-(Hc+(oh?dd:0)),0)}1!== -da.ji||ge!==Ni&&ge!==tm||(Y=this.Ad(uc),dd=Y.pf(),Hc=Math.max(Pe-Y.Ma,0),Hc+dd>Gc&&(Hc=Math.max(Gc-dd,0)),oh=0===Y.Ma,Y.Ma+=Hc,Gc=Math.max(Gc-(Hc+(oh?dd:0)),0));Og&&da.fp()}}}v.sa(nh);for(var ye=0,ze=0,Fa=this.Qo,ca=0;ca=this.Dp);cb++)Y=this.Bd(da.cc+cb),Kf.height+=Math.max(Y.$i,isNaN(Y.Ue)?Y.gf:Math.min(Y.Ue,Y.gf));for(cb=1;cb=this.Qo);cb++)Y=this.Ad(da.column+ -cb),Kf.width+=Math.max(Y.$i,isNaN(Y.Ue)?Y.gf:Math.min(Y.Ue,Y.gf));Va.width+=Kf.width;Va.height+=Kf.height;Sb=da.margin;cg=Sb.right+Sb.left;dg=Sb.top+Sb.bottom;fj(da,Va.width,Va.height,hi,pj);for(var Oe=da.Ca,Pe=Math.max(Oe.width+cg,0),vd=Math.max(Oe.height+dg,0),Qe=0,cb=0;cb=this.Dp);cb++)Y=this.Bd(da.cc+cb),Qe+=Y.total||0;if(Qe=vc)&&!(da.cc+cb>=this.Dp);cb++){var Y=this.Bd(da.cc+cb),hb=Y.bb||0,wd=fg(da, -Y,ni);Y.Ma=Math.min(Y.gf,hb+wd);Y.bb!==hb&&(vc-=Y.bb-hb)}for(;0hb&&(Y.Ma=Math.min(Y.gf,hb+vc),Y.bb!==hb&&(vc-=Y.bb-hb));if(0===Y.index)break;Y=this.Bd(Y.index-1)}}for(var Ce=0,cb=0;cb=this.Qo);cb++)Y=this.Ad(da.column+cb),Ce+=Y.total||0;if(Ce=vc)&&!(da.column+cb>=this.Qo);cb++)Y=this.Ad(da.column+cb),hb=Y.bb||0,wd=fg(da,Y,ni),Y.Ma=Math.min(Y.gf,hb+wd),Y.bb!==hb&&(vc-= -Y.bb-hb);for(;0hb&&(Y.Ma=Math.min(Y.gf,hb+vc),Y.bb!==hb&&(vc-=Y.bb-hb));if(0===Y.index)break;Y=this.Ad(Y.index-1)}}}v.sa(cd);v.Zj(Kf);v.Zj(Va);for(var he=0,ie=0,ge=Em(this,!0),ph=this.wa,qj=this.yf,xd=ze=ye=0,Re=0,Fa=this.Qo,ca=0;caQg)fj(Tb,Infinity,Infinity),je=Tb.Ca,Ve.ci(je),this.Mg.add(je);else{var ed=Tb.we,$q=Tb.gA,qn=Tb.Tj;qn.te()&& -(qn=Ab);var vj=Tb.Ut,ct=Tb.PE,wj=0,xj=0,Wk=0;if(ed<-Qg||ed>=Qg){var ar=hg.qE,pi=hg.pE;vj!==Ai&&(Wk=hg.computeAngle(Tb,vj,pi),Tb.Kl=Wk);wj=ar.x-ig.x;xj=ar.y-ig.y}else{var yd,We;if(0<=ed)yd=jg.da(ed),We=edcr+10?0<=ed?sh.xc(yd):yd.xc(sh):cr>br+10?0<=ed?We.xc(th): -th.xc(We):0<=ed?sh.xc(th):th.xc(sh)}else pi=0<=ed?yd.xc(We):We.xc(yd);vj!==Ai&&(Wk=hg.computeAngle(Tb,vj,pi),Tb.Kl=Wk);wj=yd.x+(We.x-yd.x)*$q-ig.x;xj=yd.y+(We.y-yd.y)*$q-ig.y}fj(Tb,Infinity,Infinity);var je=Tb.Ca,Uk=Tb.Ha,yj=0;Tb instanceof X&&(yj=Tb.lb);var Xk=Uk.width+yj,rn=Uk.height+yj;oi.reset();oi.translate(-je.x,-je.y);oi.scale(Tb.scale,Tb.scale);oi.rotate(vj===Ai?Tb.angle:pi,Xk/2,rn/2);var qi=new B(0,0,Xk,rn);uj.Xt(qi,qn);oi.ub(uj);var dt=-uj.x+yj/2,et=-uj.y+yj/2;kg.assign(ct);isNaN(kg.x)&& -(kg.x=0<=ed?Xk/2+3:-(Xk/2+3));isNaN(kg.y)&&(kg.y=-(rn/2+3));kg.rotate(pi);wj+=kg.x;xj+=kg.y;qi.set(je);qi.x=wj+dt;qi.y=xj+et;this.Mg.add(qi);Ve.ci(qi)}}if(this.De)for(var dr=this.Tf;dr.next();)fj(dr.value,Infinity,Infinity);this.Li=Ve;var sn=this.yi;sn.m(sn.x+Ve.x,sn.y+Ve.y);Xa(e,Ve.width||0,Ve.height||0);v.$e(oi);v.v(uj);v.v(kg)}break;case "Grid":break;case "TableRow":case "TableColumn":v.k(this.toString()+" is not an element of a Table Panel. TableRow and TableColumn Panels can only be elements of a Table Panel."); -break;default:v.k("Unknown panel type: "+n)}}var Xe=e.width,Ye=e.height,Yk=this.padding,ft=Yk.top+Yk.bottom,Xe=Xe+(Yk.left+Yk.right),Ye=Ye+ft;isFinite(f.width)&&(Xe=f.width);isFinite(f.height)&&(Ye=f.height);Xe=Math.min(k.width,Xe);Ye=Math.min(k.height,Ye);Xe=Math.max(h.width,Xe);Ye=Math.max(h.height,Ye);Xe=Math.max(c,Xe);Ye=Math.max(d,Ye);e.width=Xe;e.height=Ye;Xa(this.Qc,Xe,Ye);Bm(this,0,0,Xe,Ye)}; -D.prototype.findMainElement=D.prototype.Ye=function(){if(null===this.vm){var a=this.ya.n,b=a.length;if(0===b)return null;for(var c=0;cc||p>d)this.P(),fj(this,n>c?c:n,p>d?d:p);break;case Fe:this.P(!0);fj(this,c+r,d+s,0,0);break;case um:this.P(!0);fj(this,c+r,p+s,0,0);break;case tm:this.P(!0),fj(this,n+r,d+s,0,0)}}k=this.U;k.x=a;k.y=b; -k.width=c;k.height=d;var t=this.ia.Ob;switch(t){case "Position":for(var u=f.length,w=e.x-this.padding.left,x=e.y-this.padding.top,z=0;z=this.Dp);ca++){var da=this.Bd(zb+ca);jb.height+=da.total}for(ca=1;ca=this.Qo);ca++){var Mg=this.Ad(Od+ca);jb.width+=Mg.total}var mh=ee.bb+jb.width,ii=Qc.bb+jb.height;h.x=bd;h.y=rf;h.width=mh;h.height=ii;var uc=bd,ji=rf,Yb=mh,nh=ii;bd+mh>e.width&&(Yb=Math.max(e.width-bd,0));rf+ii>e.height&&(nh=Math.max(e.height-rf,0));var cd=Fa.alignment,ve=0,Rc=0,td=0,Gc=0;if(cd.Uc()){cd= -this.fl;cd.cd()||(cd=Ab);var ve=cd.x,Rc=cd.y,td=cd.offsetX,Gc=cd.offsetY,ud=ee.alignment,ag=Qc.alignment;ud.cd()&&(ve=ud.x,td=ud.offsetX);ag.cd()&&(Rc=ag.y,Gc=ag.offsetY)}else ve=cd.x,Rc=cd.y,td=cd.offsetX,Gc=cd.offsetY;if(isNaN(ve)||isNaN(Rc))Rc=ve=.5,Gc=td=0;var Y=Me.width,we=Me.height,Ne=Fa.margin,ki=Ne.left+Ne.right,li=Ne.top+Ne.bottom,Hc=Sm(Fa,Qc,ee,!1);!isNaN(Fa.wa.width)||Hc!==Fe&&Hc!==um||(Y=Math.max(mh-ki,0));!isNaN(Fa.wa.height)||Hc!==Fe&&Hc!==tm||(we=Math.max(ii-li,0));var qb=Fa.yf,rb= -Fa.jh,Y=Math.min(qb.width,Y),we=Math.min(qb.height,we),Y=Math.max(rb.width,Y),we=Math.max(rb.height,we),Nk=we+li;h.x+=h.width*ve-(Y+ki)*ve+td+Ne.left;h.y+=h.height*Rc-Nk*Rc+Gc+Ne.top;Fa.visible&&(db(uc,ji,Yb,nh,h.x,h.y,Me.width,Me.height)?Fa.Ec(h.x,h.y,Y,we):Fa.Ec(h.x,h.y,Y,we,new B(uc,ji,Yb,nh)))}else{Fa.ti();Fa.mc.Oa();var bg=Fa.mc;bg.x=fe.type===Im?kh:bd;bg.y=fe.type===Jm?lh:rf;bg.width=Me.width;bg.height=Me.height;Fa.mc.freeze();Gm(Fa,!1)}}v.Zj(jb);for(zb=0;zb=tf){var ni=this.qE,fg=this.pE;eg!==Ai&&(vc=this.computeAngle(Sc,eg,fg),Sc.angle=vc);cb=ni.x;Qe=ni.y}else{var hb=void 0,wd=void 0;if(0<=Va)hb=Ae.n[Va],wd=Vaqj+10?0<=Va?he.xc(hb):hb.xc(he):qj>ph+10?0<=Va?wd.xc(ie): -ie.xc(wd):0<=Va?he.xc(ie):ie.xc(he)}else fg=0<=Va?hb.xc(wd):wd.xc(hb);eg!==Ai&&(vc=this.computeAngle(Sc,eg,fg),Sc.angle=vc);cb=hb.x+(wd.x-hb.x)*uf;Qe=hb.y+(wd.y-hb.y)*uf}if(Be.K(sb))Sc.location=new y(cb,Qe);else{Be.te()&&(Be=Ab);var xd=v.qh();xd.reset();xd.scale(Sc.scale,Sc.scale);xd.rotate(Sc.angle,0,0);var Re=Sc.Ha,gg=v.gk(0,0,Re.width,Re.height),Se=v.L();Se.Xt(gg,Be);xd.ub(Se);var Tc=-Se.x,Pg=-Se.y,Te=Kf.copy();isNaN(Te.x)&&(Te.x=0<=Va?Se.x+3:-(Se.x+3));isNaN(Te.y)&&(Te.y=-(Se.y+3));Te.rotate(fg); -cb+=Te.x;Qe+=Te.y;xd.kF(gg);var Tc=Tc+gg.x,Pg=Pg+gg.y,rj=v.Mb(cb+Tc,Qe+Pg);Sc.move(rj);v.v(rj);v.v(Se);v.Vb(gg);v.$e(xd)}}this instanceof Tg?this.Wm(!1):mi.Wm(!1)}break;case "Grid":break;case "TableRow":case "TableColumn":v.k(this.toString()+" is not an element of a Table Panel.TableRow and TableColumn panels can only be elements of a Table Panel.");break;default:v.k("Unknown panel type: "+t)}v.Vb(h)}}; -D.prototype.Vj=function(a){var b=this.Ha;if(db(0,0,b.width,b.height,a.x,a.y)){for(var b=this.ya.n,c=b.length,d=v.Mb(0,0);c--;){var e=b[c];if(e.visible||e===this.bc)if(Qa(d.set(a),e.transform),e.Fa(d))return v.v(d),!0}v.v(d);return null===this.Ib&&null===this.nc?!1:!0}return!1};D.prototype.yw=function(a){if(this.qn===a)return this;for(var b=this.ya.n,c=b.length,d=0;dfd&&(Ic=Math.max(fd-gd,0));var oh=0===Y.Ia;Y.Ia+= +Ic;fd=Math.max(fd-(Ic+(oh?gd:0)),0)}1!==da.hi||Sc!==Ni&&Sc!==tm||(Y=this.yd(uc),gd=Y.of(),Ic=Math.max(Pe-Y.Ia,0),Ic+gd>vc&&(Ic=Math.max(vc-gd,0)),oh=0===Y.Ia,Y.Ia+=Ic,vc=Math.max(vc-(Ic+(oh?gd:0)),0));Og&&da.fp()}}}v.sa(nh);for(var ye=0,ze=0,Fa=this.Qo,ca=0;ca=this.Dp);cb++)Y=this.zd(da.Wb+ +cb),Kf.height+=Math.max(Y.Zi,isNaN(Y.Te)?Y.ff:Math.min(Y.Te,Y.ff));for(cb=1;cb=this.Qo);cb++)Y=this.yd(da.column+cb),Kf.width+=Math.max(Y.Zi,isNaN(Y.Te)?Y.ff:Math.min(Y.Te,Y.ff));Sa.width+=Kf.width;Sa.height+=Kf.height;Rb=da.margin;cg=Rb.right+Rb.left;dg=Rb.top+Rb.bottom;fj(da,Sa.width,Sa.height,hi,pj);for(var Oe=da.Ca,Pe=Math.max(Oe.width+cg,0),wd=Math.max(Oe.height+dg,0),Qe=0,cb=0;cb=this.Dp);cb++)Y=this.zd(da.Wb+cb),Qe+=Y.total||0;if(Qe=wc)&&!(da.Wb+cb>=this.Dp);cb++){var Y=this.zd(da.Wb+cb),hb=Y.bb||0,xd=fg(da,Y,ni);Y.Ia=Math.min(Y.ff,hb+xd);Y.bb!==hb&&(wc-=Y.bb-hb)}for(;0hb&&(Y.Ia=Math.min(Y.ff,hb+wc),Y.bb!==hb&&(wc-=Y.bb-hb));if(0===Y.index)break;Y=this.zd(Y.index-1)}}for(var Ce=0,cb=0;cb=this.Qo);cb++)Y=this.yd(da.column+cb),Ce+=Y.total||0;if(Ce=wc)&&!(da.column+cb>=this.Qo);cb++)Y=this.yd(da.column+cb),hb=Y.bb||0,xd=fg(da,Y,ni),Y.Ia=Math.min(Y.ff,hb+xd),Y.bb!==hb&&(wc-=Y.bb-hb);for(;0hb&&(Y.Ia=Math.min(Y.ff,hb+wc),Y.bb!==hb&&(wc-=Y.bb-hb));if(0===Y.index)break;Y=this.yd(Y.index-1)}}}v.sa(dd);v.Zj(Kf);v.Zj(Sa);for(var he=0,ie=0,Sc=Em(this,!0),ph=this.xa,qj=this.xf,yd=ze=ye=0,Re=0,Fa=this.Qo,ca=0;caQg)fj(Sb,Infinity,Infinity),je=Sb.Ca,Ve.ai(je),this.Lg.add(je);else{var hd=Sb.ve,$q=Sb.kA,qn=Sb.Tj;qn.se()&&(qn=Ab);var vj=Sb.Vt,ct=Sb.SE,wj=0,xj=0,Wk=0;if(hd<-Qg||hd>=Qg){var ar=hg.tE,pi=hg.sE;vj!==Ai&&(Wk=hg.computeAngle(Sb,vj,pi),Sb.Jl=Wk);wj=ar.x-ig.x;xj=ar.y-ig.y}else{var zd,We;if(0<=hd)zd=jg.da(hd),We=hdcr+10?0<=hd?sh.xc(zd):zd.xc(sh):cr>br+10?0<=hd?We.xc(th):th.xc(We):0<=hd?sh.xc(th):th.xc(sh)}else pi=0<=hd?zd.xc(We):We.xc(zd);vj!==Ai&&(Wk=hg.computeAngle(Sb,vj,pi),Sb.Jl=Wk);wj=zd.x+(We.x-zd.x)*$q-ig.x;xj=zd.y+(We.y-zd.y)*$q-ig.y}fj(Sb,Infinity,Infinity);var je=Sb.Ca,Uk=Sb.Ha,yj=0;Sb instanceof X&&(yj=Sb.lb);var Xk=Uk.width+yj,rn=Uk.height+yj;oi.reset();oi.translate(-je.x,-je.y);oi.scale(Sb.scale,Sb.scale);oi.rotate(vj=== +Ai?Sb.angle:pi,Xk/2,rn/2);var qi=new B(0,0,Xk,rn);uj.Yt(qi,qn);oi.ub(uj);var dt=-uj.x+yj/2,et=-uj.y+yj/2;kg.assign(ct);isNaN(kg.x)&&(kg.x=0<=hd?Xk/2+3:-(Xk/2+3));isNaN(kg.y)&&(kg.y=-(rn/2+3));kg.rotate(pi);wj+=kg.x;xj+=kg.y;qi.set(je);qi.x=wj+dt;qi.y=xj+et;this.Lg.add(qi);Ve.ai(qi)}}if(this.Ce)for(var dr=this.Sf;dr.next();)fj(dr.value,Infinity,Infinity);this.Ji=Ve;var sn=this.wi;sn.m(sn.x+Ve.x,sn.y+Ve.y);Xa(e,Ve.width||0,Ve.height||0);v.Ze(oi);v.v(uj);v.v(kg)}break;case "Grid":break;case "TableRow":case "TableColumn":v.k(this.toString()+ +" is not an element of a Table Panel. TableRow and TableColumn Panels can only be elements of a Table Panel.");break;default:v.k("Unknown panel type: "+n)}}var Xe=e.width,Ye=e.height,Yk=this.padding,ft=Yk.top+Yk.bottom,Xe=Xe+(Yk.left+Yk.right),Ye=Ye+ft;isFinite(f.width)&&(Xe=f.width);isFinite(f.height)&&(Ye=f.height);Xe=Math.min(k.width,Xe);Ye=Math.min(k.height,Ye);Xe=Math.max(h.width,Xe);Ye=Math.max(h.height,Ye);Xe=Math.max(c,Xe);Ye=Math.max(d,Ye);e.width=Xe;e.height=Ye;Xa(this.Qc,Xe,Ye);Bm(this, +0,0,Xe,Ye)};D.prototype.findMainElement=D.prototype.Xe=function(){if(null===this.um){var a=this.za.n,b=a.length;if(0===b)return null;for(var c=0;cc||p>d)this.P(),fj(this,n>c?c:n,p>d?d:p);break;case Fe:this.P(!0);fj(this,c+r,d+s,0,0);break;case um:this.P(!0);fj(this,c+r,p+s,0,0);break;case tm:this.P(!0),fj(this,n+r,d+s,0,0)}}k=this.U;k.x=a;k.y=b; +k.width=c;k.height=d;var t=this.ia.Ob;switch(t){case "Position":for(var u=f.length,y=e.x-this.padding.left,w=e.y-this.padding.top,x=0;x=this.Dp);ca++){var da=this.zd(zb+ca);kb.height+=da.total}for(ca=1;ca=this.Qo);ca++){var Mg=this.yd(Pd+ca);kb.width+=Mg.total}var mh=fe.bb+kb.width,ii=Rc.bb+kb.height;h.x=cd;h.y=rf;h.width=mh;h.height=ii;var uc=cd,ji=rf,Yb=mh,nh=ii;cd+mh>e.width&&(Yb=Math.max(e.width-cd,0));rf+ii>e.height&&(nh=Math.max(e.height-rf,0));var dd=Fa.alignment,ve=0,Hc=0,ed=0,vc=0;if(dd.Uc()){dd= +this.fl;dd.cd()||(dd=Ab);var ve=dd.x,Hc=dd.y,ed=dd.offsetX,vc=dd.offsetY,fd=fe.alignment,ag=Rc.alignment;fd.cd()&&(ve=fd.x,ed=fd.offsetX);ag.cd()&&(Hc=ag.y,vc=ag.offsetY)}else ve=dd.x,Hc=dd.y,ed=dd.offsetX,vc=dd.offsetY;if(isNaN(ve)||isNaN(Hc))Hc=ve=.5,vc=ed=0;var Y=Me.width,we=Me.height,Ne=Fa.margin,ki=Ne.left+Ne.right,li=Ne.top+Ne.bottom,Ic=Sm(Fa,Rc,fe,!1);!isNaN(Fa.xa.width)||Ic!==Fe&&Ic!==um||(Y=Math.max(mh-ki,0));!isNaN(Fa.xa.height)||Ic!==Fe&&Ic!==tm||(we=Math.max(ii-li,0));var ob=Fa.xf,pb= +Fa.ih,Y=Math.min(ob.width,Y),we=Math.min(ob.height,we),Y=Math.max(pb.width,Y),we=Math.max(pb.height,we),Nk=we+li;h.x+=h.width*ve-(Y+ki)*ve+ed+Ne.left;h.y+=h.height*Hc-Nk*Hc+vc+Ne.top;Fa.visible&&(db(uc,ji,Yb,nh,h.x,h.y,Me.width,Me.height)?Fa.Ec(h.x,h.y,Y,we):Fa.Ec(h.x,h.y,Y,we,new B(uc,ji,Yb,nh)))}else{Fa.ri();Fa.mc.Oa();var bg=Fa.mc;bg.x=ge.type===Im?kh:cd;bg.y=ge.type===Jm?lh:rf;bg.width=Me.width;bg.height=Me.height;Fa.mc.freeze();Gm(Fa,!1)}}v.Zj(kb);for(zb=0;zb=tf){var ni=this.tE,fg=this.sE;eg!==Ai&&(wc=this.computeAngle(Tc,eg,fg),Tc.angle=wc);cb=ni.x;Qe=ni.y}else{var hb=void 0,xd=void 0;if(0<=Sa)hb=Ae.n[Sa],xd=Saqj+10?0<=Sa?he.xc(hb):hb.xc(he):qj>ph+10?0<=Sa?xd.xc(ie): +ie.xc(xd):0<=Sa?he.xc(ie):ie.xc(he)}else fg=0<=Sa?hb.xc(xd):xd.xc(hb);eg!==Ai&&(wc=this.computeAngle(Tc,eg,fg),Tc.angle=wc);cb=hb.x+(xd.x-hb.x)*uf;Qe=hb.y+(xd.y-hb.y)*uf}if(Be.K(sb))Tc.location=new z(cb,Qe);else{Be.se()&&(Be=Ab);var yd=v.ph();yd.reset();yd.scale(Tc.scale,Tc.scale);yd.rotate(Tc.angle,0,0);var Re=Tc.Ha,gg=v.gk(0,0,Re.width,Re.height),Se=v.L();Se.Yt(gg,Be);yd.ub(Se);var Uc=-Se.x,Pg=-Se.y,Te=Kf.copy();isNaN(Te.x)&&(Te.x=0<=Sa?Se.x+3:-(Se.x+3));isNaN(Te.y)&&(Te.y=-(Se.y+3));Te.rotate(fg); +cb+=Te.x;Qe+=Te.y;yd.nF(gg);var Uc=Uc+gg.x,Pg=Pg+gg.y,rj=v.Mb(cb+Uc,Qe+Pg);Tc.move(rj);v.v(rj);v.v(Se);v.Vb(gg);v.Ze(yd)}}this instanceof Tg?this.Wm(!1):mi.Wm(!1)}break;case "Grid":break;case "TableRow":case "TableColumn":v.k(this.toString()+" is not an element of a Table Panel.TableRow and TableColumn panels can only be elements of a Table Panel.");break;default:v.k("Unknown panel type: "+t)}v.Vb(h)}}; +D.prototype.Vj=function(a){var b=this.Ha;if(db(0,0,b.width,b.height,a.x,a.y)){for(var b=this.za.n,c=b.length,d=v.Mb(0,0);c--;){var e=b[c];if(e.visible||e===this.cc)if(Qa(d.set(a),e.transform),e.Fa(d))return v.v(d),!0}v.v(d);return null===this.Ib&&null===this.nc?!1:!0}return!1};D.prototype.zw=function(a){if(this.qn===a)return this;for(var b=this.za.n,c=b.length,d=0;dp.width||n.y>p.height||0>n.x+n.width||0>n.y+n.height)){n=m;m=m instanceof D?m:null;p=v.qh();p.set(h);if(null!==m?m.Yj(a,b,c,d,e,p):Dm(n,a,d,p))null!== -b&&(n=b(n)),null===n||null!==c&&!c(n)||e.add(n);v.$e(p)}}}void 0===f&&v.$e(h);return d}void 0===f&&v.$e(h);return!1};function bo(a,b,c,d){for(var e=a.ya.n,f=e.length;f--;){var h=e[f];if(h.visible){var k=h.U,l=a.Ha;k.x>l.width||k.y>l.height||0>k.x+k.width||0>k.y+k.height||(h instanceof D&&bo(h,b,c,d),null!==b&&(h=b(h)),null===h||null!==c&&!c(h)||d.add(h))}}} -g.Mm=function(a,b,c,d,e,f){if(!1===this.Hg)return!1;void 0===c&&(c=null);void 0===d&&(d=null);var h=this.Ha,k=this.Lg(),l=k?a:Qa(v.Mb(a.x,a.y),this.transform),m=k?b:Qa(v.Mb(b.x,b.y),this.transform),n=l.sf(m),p=0s.width||r.y>s.height||0>r.x+r.width||0>r.y+r.height||(q.Lg()?(r=q.transform,Qa(k.set(a),r),Qa(l.set(b),r)):(k.set(a),l.set(b)),r=q,q=q instanceof D?q:null,null!==q?!q.Mm(k,l,c,d,e,f):!r.JD(k,l,e))||(null!==c&&(r=c(r)),null===r||null!==d&&!d(r)||f.add(r))}}v.v(k);v.v(l)}return e? -p:h}return!1};function Sn(a){var b=a.B;if(void 0===b||b===kc)b=null;null===b&&a instanceof X&&(a=a.Ra,null!==a&&(b=a.B));null===b&&(b=tb);return b}function Tn(a){var b=a.C;if(void 0===b||b===kc)b=null;null===b&&a instanceof X&&(a=a.Ra,null!==a&&(b=a.C));null===b&&(b=Fb);return b}D.prototype.add=D.prototype.add=function(a){v.A(a,G,D,"add:element");this.Cd(this.ya.count,a)};D.prototype.elt=D.prototype.da=function(a){return this.ya.da(a)}; -D.prototype.insertAt=D.prototype.Cd=function(a,b){b instanceof R&&v.k("Cannot add a Part to a Panel: "+b);if(this===b||this.tl(b))this===b&&v.k("Cannot make a Panel contain itself: "+this.toString()),v.k("Cannot make a Panel indirectly contain itself: "+this.toString()+" already contains "+b.toString());var c=b.T;null!==c&&c!==this&&v.k("Cannot add a GraphObject that already belongs to another Panel to this Panel: "+b.toString()+", already contained by "+c.toString()+", cannot be shared by this Panel: "+ -this.toString());this.ia!==vk||b instanceof X||v.k("Can only add Shapes to a Grid Panel, not: "+b);b.Bl(this);b.km=null;if(null!==this.iE){var d=b.data;null!==d&&"object"===typeof d&&(null===this.hg&&(this.hg=new na(Object,D)),this.hg.add(d,b))}var e=this.ya,d=-1;if(c===this){for(var f=-1,h=this.ya.n,k=h.length,l=0;l=e.count&&a>=e.count)return;e.Vc(f);d=f}else v.k("element "+b.toString()+" has panel "+c.toString()+" but is not contained by it.")}if(0> -a||a>e.count)a=e.count;e.Cd(a,b);this.P();b.P();null!==b.Ud?this.Ch=!0:b instanceof D&&!0===b.Ch&&(this.Ch=!0);c=this.Y;null!==c&&(c.fm=null,c.yj=NaN,this.Ch&&c instanceof S&&(c.Ch=!0),c.Ch&&(c.Yd=null),e=this.g,null!==e&&e.la.ib||(-1!==d&&c.Lc(Df,"elements",this,b,null,d,null),c.Lc(Cf,"elements",this,null,b,null,a)))};D.prototype.remove=D.prototype.remove=function(a){v.A(a,G,D,"remove:element");for(var b=this.ya.n,c=b.length,d=-1,e=0;ea&&v.va(a,">= 0",D,"getRowDefinition:idx");a=Math.round(a);var b=this.Nd;if(void 0===b[a]){var c=new tg;c.Bl(this);c.ee=!0;c.index=a;b[a]=c}return b[a]};D.prototype.removeRowDefinition=D.prototype.DE=function(a){0>a&&v.va(a,">= 0",D,"removeRowDefinition:idx");a=Math.round(a);var b=this.Nd;this.Lc(Df,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.P()};v.u(D,{Qo:"columnCount"},function(){return void 0===this.Jd?0:this.Jd.length}); -D.prototype.getColumnDefinition=D.prototype.Ad=function(a){0>a&&v.va(a,">= 0",D,"getColumnDefinition:idx");a=Math.round(a);var b=this.Jd;if(void 0===b[a]){var c=new tg;c.Bl(this);c.ee=!1;c.index=a;b[a]=c}return b[a]};D.prototype.removeColumnDefinition=D.prototype.zE=function(a){0>a&&v.va(a,">= 0",D,"removeColumnDefinition:idx");a=Math.round(a);var b=this.Jd;this.Lc(Df,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.P()}; -v.defineProperty(D,{qI:"rowSizing"},function(){return void 0===this.qm?On:this.qm},function(a){if(void 0!==this.qm){var b=this.qm;b!==a&&(a!==On&&a!==Vn&&v.k("Panel.rowSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.qm=a,this.P(),this.h("rowSizing",b,a))}}); -v.defineProperty(D,{oG:"columnSizing"},function(){return void 0===this.Pl?On:this.Pl},function(a){if(void 0!==this.Pl){var b=this.Pl;b!==a&&(a!==On&&a!==Vn&&v.k("Panel.columnSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.Pl=a,this.P(),this.h("columnSizing",b,a))}}); -v.defineProperty(D,{MK:"topIndex"},function(){return void 0===this.Ki?0:this.Ki},function(a){if(void 0!==this.Ki){var b=this.Ki;b!==a&&((!isFinite(a)||0>a)&&v.k("Panel.topIndex must be greater than zero and a real number, not: "+a),this.Ki=a,this.P(),this.h("topIndex",b,a))}}); -v.defineProperty(D,{YJ:"leftIndex"},function(){return void 0===this.xi?0:this.xi},function(a){if(void 0!==this.xi){var b=this.xi;b!==a&&((!isFinite(a)||0>a)&&v.k("Panel.leftIndex must be greater than zero and a real number, not: "+a),this.xi=a,this.P(),this.h("leftIndex",b,a))}});D.prototype.findRowForLocalY=function(a){if(0>a)return-1;if(this.type!==Rm)return NaN;for(var b=0,c=this.Nd,d=c.length,e=this.Ki;ea)return-1;if(this.type!==Rm)return NaN;for(var b=0,c=this.Jd,d=c.length,e=this.xi;ea;)this.Me(this.ya.length-1);a=this.iE;if(null!==a)for(var b=v.Va(a),c=0;cc)){var d;d=co(a,b);var e=a.wH,f=null;null!==e&&(f=e.ja(d));null===f&&(eo||(eo=!0,v.trace('No item template Panel found for category "'+d+'" on '+a),v.trace(" Using default item template."),d=new D,e=new $g,e.bind(new zg("text","",Ef)),d.add(e),fo=d),f=fo);d=f;null!==d&&(Vg(d),d=d.copy(),"object"===typeof b&&(null===a.hg&&(a.hg=new na(Object,D)),a.hg.add(b,d)),e=c,Il(a)&&e++,a.Cd(e,d),Jl(a,e,c),d.ke=null,d.data=b)}} -function Jl(a,b,c){for(a=a.ya;ba&&v.va(a,">= 0",tg,"height"),this.Ue=a,this.Ma=this.bb,null!==this.T&&this.T.P(),this.$c("height",b,a))});v.defineProperty(tg,{width:"width"},function(){return this.Ue},function(a){var b=this.Ue;b!==a&&(0>a&&v.va(a,">= 0",tg,"width"),this.Ue=a,this.Ma=this.bb,null!==this.T&&this.T.P(),this.$c("width",b,a))}); -v.defineProperty(tg,{$i:"minimum"},function(){return this.Cj},function(a){var b=this.Cj;b!==a&&((0>a||!isFinite(a))&&v.va(a,">= 0",tg,"minimum"),this.Cj=a,this.Ma=this.bb,null!==this.T&&this.T.P(),this.$c("minimum",b,a))});v.defineProperty(tg,{gf:"maximum"},function(){return this.Aj},function(a){var b=this.Aj;b!==a&&(0>a&&v.va(a,">= 0",tg,"maximum"),this.Aj=a,this.Ma=this.bb,null!==this.T&&this.T.P(),this.$c("maximum",b,a))}); -v.defineProperty(tg,{alignment:"alignment"},function(){return this.Be},function(a){var b=this.Be;b.K(a)||(this.Be=a.R(),null!==this.T&&this.T.P(),this.$c("alignment",b,a))});v.defineProperty(tg,{stretch:"stretch"},function(){return this.Rh},function(a){var b=this.Rh;b!==a&&(this.Rh=a,null!==this.T&&this.T.P(),this.$c("stretch",b,a))}); -v.defineProperty(tg,{RE:"separatorPadding"},function(){return this.Hj},function(a){"number"===typeof a&&(a=new eb(a));var b=this.Hj;null!==a&&null!==b&&b.K(a)||(null!==a&&(a=a.R()),this.Hj=a,null!==this.T&&this.T.P(),this.$c("separatorPadding",b,a))});v.defineProperty(tg,{Ep:"separatorStroke"},function(){return this.ks},function(a){var b=this.ks;b!==a&&(null===a||"string"===typeof a||a instanceof ha)&&(a instanceof ha&&a.freeze(),this.ks=a,null!==this.T&&this.T.P(),this.$c("separatorStroke",b,a))}); -v.defineProperty(tg,{Fp:"separatorStrokeWidth"},function(){return this.ls},function(a){var b=this.ls;b!==a&&(this.ls=a,null!==this.T&&this.T.P(),this.$c("separatorStrokeWidth",b,a))}); -v.defineProperty(tg,{vI:"separatorDashArray"},function(){return this.Jh},function(a){var b=this.Jh;if(b!==a){null===a||Array.isArray(a)||v.Gd(a,"Array",tg,"separatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;ee)){for(var f=d.Ca,h=Math.max(1,f.width),f=f.height,k=c[0],l=c[1],m=0,n=0,p=0,q=0,r=0,s=0,t=q=0,u=v.jb(),w=2;wp&&(p=1);c=p;for(var e=0,m=c,n=h/2,w=0===n?!1:!0,x=0,q=u[x],p=q[0],s=q[1],r=q[2],q=q[3],z=0;.1<=t;){0===z&&(w?(m=c,e++,m-=n,t-=n,w=!1):(m=c,e++),0===m&&(m=1));if(m>t){v.sa(u); -return}m>q?(z=m-q,m=q):z=0;var A=Math.sqrt(m*m/(1+r*r));0>p&&(A=-A);k+=A;l+=r*A;a.translate(k,l);a.rotate(s);a.translate(-(h/2),-(f/2));0===z&&d.Xj(a,b);a.translate(h/2,f/2);a.rotate(-s);a.translate(-k,-l);t-=m;q-=m;if(0!==z){x++;if(x===u.length){v.sa(u);return}q=u[x];p=q[0];s=q[1];r=q[2];q=q[3];m=z}}v.sa(u)}} -X.prototype.Xj=function(a,b){if(null!==this.Dc||null!==this.qd){null!==this.qd&&Mm(this,a,this.qd,!0,!1);null!==this.Dc&&Mm(this,a,this.Dc,!1,!1);var c=this.Sh;if(0===c){var d=this.Y;d instanceof Tg&&d.type===xi&&"Selection"===d.gc&&d.Yb instanceof X&&d.Nf.Ye()===d.Yb&&(c=d.Yb.lb)}a.lineWidth=c;a.lineJoin=this.Bo;a.lineCap=this.zo;a.miterLimit=this.um;var e=!1;this.Y&&b.Ui("drawShadows")&&(e=this.Y.vl);var f=!0;null!==this.Dc&&null===this.qd&&(f=!1);var d=!1,h=!0,k=this.$E;null!==k&&(d=!0,void 0!== -a.setLineDash?(a.setLineDash(k),a.lineDashOffset=this.ld):void 0!==a.webkitLineDash?(a.webkitLineDash=k,a.webkitLineDashOffset=this.ld):void 0!==a.mozDash?(a.mozDash=k,a.mozDashOffset=this.ld):h=!1);var l=this.Ra;if(null!==l){if(l.ia===Ge)a.beginPath(),d&&!h?zm(a,l.vc,l.Cc,l.vb,l.Bb,k,this.ld):(a.moveTo(l.vc,l.Cc),a.lineTo(l.vb,l.Bb)),null!==this.qd&&a.vg(this.qd),0!==c&&null!==this.Dc&&a.cj();else if(l.ia===He){var m=l.vc,n=l.Cc,p=l.vb,q=l.Bb,l=Math.min(m,p),r=Math.min(n,q),m=Math.abs(p-m),n=Math.abs(q- -n);null!==this.qd&&(a.beginPath(),a.rect(l,r,m,n),a.vg(this.qd));if(null!==this.Dc){var s=p=0,t=0;f&&e&&(p=a.shadowOffsetX,s=a.shadowOffsetY,t=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY=0,a.shadowBlur=0);d&&!h?(h=v.jb(),h.push(l),h.push(r),h.push(l+m),h.push(r),h.push(l+m),h.push(r+n),h.push(l),h.push(r+n),h.push(l),h.push(r),a.beginPath(),jo(a,h,k,this.ld),a.cj(),v.sa(h)):0!==c&&(a.beginPath(),a.rect(l,r,m,n),a.cj());f&&e&&(a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=t)}}else if(l.ia=== -Ie)m=l.vc,n=l.Cc,p=l.vb,q=l.Bb,l=Math.abs(p-m)/2,r=Math.abs(q-n)/2,m=Math.min(m,p)+l,n=Math.min(n,q)+r,a.beginPath(),a.moveTo(m,n-r),a.bezierCurveTo(m+Wc*l,n-r,m+l,n-Wc*r,m+l,n),a.bezierCurveTo(m+l,n+Wc*r,m+Wc*l,n+r,m,n+r),a.bezierCurveTo(m-Wc*l,n+r,m-l,n+Wc*r,m-l,n),a.bezierCurveTo(m-l,n-Wc*r,m-Wc*l,n-r,m,n-r),a.closePath(),null!==this.qd&&a.vg(this.qd),d&&!h&&(h=v.jb(),Rd(m,n-r,m+Wc*l,n-r,m+l,n-Wc*r,m+l,n,.5,h),Rd(m+l,n,m+l,n+Wc*r,m+Wc*l,n+r,m,n+r,.5,h),Rd(m,n+r,m-Wc*l,n+r,m-l,n+Wc*r,m-l,n,.5,h), -Rd(m-l,n,m-l,n-Wc*r,m-Wc*l,n-r,m,n-r,.5,h),a.beginPath(),jo(a,h,k,this.ld),v.sa(h)),0!==c&&null!==this.Dc&&(f&&e?(p=a.shadowOffsetX,s=a.shadowOffsetY,t=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY=0,a.shadowBlur=0,a.cj(),a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=t):a.cj());else if(l.ia===De){r=l.kj;n=r.length;for(q=0;qw.Bf);else{var u=nf(w,m),x=u.length;if(0===x){a.lineTo(w.na,w.ua);break}for(var z=0;ze)){var f=.001,h=c.length,k=b[0],l=b[1];if(4===e)zm(a,k,l,b[2],b[3],c,d);else{a.moveTo(k,l);for(var m=f=0,n=0,p=0,q=0,r=p=0,s=v.jb(),t=2;tr&&(f=r);f>p?(u=f-p,f=p):u=0;var w=Math.sqrt(f*f/(1+q*q));0>n&&(w=-w);k+=w;l+= -q*w;e?a.lineTo(k,l):a.moveTo(k,l);r-=f;p-=f;if(0!==u){t++;if(t===s.length){v.sa(s);return}p=s[t];n=p[0];q=p[1];p=p[2];f=u}else e=!e}v.sa(s)}}}X.prototype.getDocumentPoint=X.prototype.Xa=function(a,b){void 0===b&&(b=new y);a.te()&&v.k("getDocumentPoint Spot must be a real, specific Spot, not: "+a.toString());var c=this.Ha,d=this.lb;b.m(a.x*(c.width+d)-d/2+c.x+a.offsetX,a.y*(c.height+d)-d/2+c.y+a.offsetY);this.Zg.ub(b);return b}; -X.prototype.Vj=function(a,b){var c=this.Ra;if(null===c||null===this.fill&&null===this.stroke)return!1;var d=c.mb,e=this.lb/2;c.type!==Ge||b||(e+=2);var f=v.bg();f.assign(d);f.Rf(e+2,e+2);if(!f.Fa(a))return v.Vb(f),!1;d=e+1E-4;if(c.type===Ge){if(null===this.stroke)return!1;d=(c.I-c.za)*(a.x-c.za)+(c.J-c.xa)*(a.y-c.xa);if(0>(c.za-c.I)*(a.x-c.I)+(c.xa-c.J)*(a.y-c.J)||0>d)return!1;v.Vb(f);return Jd(c.za,c.xa,c.I,c.J,e,a.x,a.y)}if(c.type===He){var h=c.za,k=c.xa,l=c.I,m=c.J;f.x=Math.min(h,l);f.y=Math.min(k, -m);f.width=Math.abs(l-h);f.height=Math.abs(m-k);if(null===this.fill){f.Rf(-d,-d);if(f.Fa(a))return v.Vb(f),!1;f.Rf(d,d)}null!==this.stroke&&f.Rf(e,e);e=f.Fa(a);v.Vb(f);return e}if(c.type===Ie){var h=c.za,k=c.xa,l=c.I,m=c.J,c=Math.min(h,l),n=Math.min(k,m),h=Math.abs(l-h)/2,k=Math.abs(m-k)/2,c=a.x-(c+h),n=a.y-(n+k);if(null===this.fill){h-=d;k-=d;if(0>=h||0>=k||1>=c*c/(h*h)+n*n/(k*k))return v.Vb(f),!1;h+=d;k+=d}null!==this.stroke&&(h+=e,k+=e);v.Vb(f);return 0>=h||0>=k?!1:1>=c*c/(h*h)+n*n/(k*k)}if(c.type=== +g.Yj=function(a,b,c,d,e,f){if(!1===this.Gg)return!1;void 0===b&&(b=null);void 0===c&&(c=null);var h=f;void 0===f&&(h=v.ph(),h.reset());h.multiply(this.transform);if(this.Gm(a,h))return bo(this,b,c,e),void 0===f&&v.Ze(h),!0;if(this.xg(a,h)){if(!this.Pg)for(var k=this.za.n,l=k.length;l--;){var m=k[l];if(m.visible||m===this.cc){var n=m.U,p=this.Ha;if(!(n.x>p.width||n.y>p.height||0>n.x+n.width||0>n.y+n.height)){n=m;m=m instanceof D?m:null;p=v.ph();p.set(h);if(null!==m?m.Yj(a,b,c,d,e,p):Dm(n,a,d,p))null!== +b&&(n=b(n)),null===n||null!==c&&!c(n)||e.add(n);v.Ze(p)}}}void 0===f&&v.Ze(h);return d}void 0===f&&v.Ze(h);return!1};function bo(a,b,c,d){for(var e=a.za.n,f=e.length;f--;){var h=e[f];if(h.visible){var k=h.U,l=a.Ha;k.x>l.width||k.y>l.height||0>k.x+k.width||0>k.y+k.height||(h instanceof D&&bo(h,b,c,d),null!==b&&(h=b(h)),null===h||null!==c&&!c(h)||d.add(h))}}} +g.Mm=function(a,b,c,d,e,f){if(!1===this.Gg)return!1;void 0===c&&(c=null);void 0===d&&(d=null);var h=this.Ha,k=this.Kg(),l=k?a:Qa(v.Mb(a.x,a.y),this.transform),m=k?b:Qa(v.Mb(b.x,b.y),this.transform),n=l.rf(m),p=0s.width||r.y>s.height||0>r.x+r.width||0>r.y+r.height||(q.Kg()?(r=q.transform,Qa(k.set(a),r),Qa(l.set(b),r)):(k.set(a),l.set(b)),r=q,q=q instanceof D?q:null,null!==q?!q.Mm(k,l,c,d,e,f):!r.MD(k,l,e))||(null!==c&&(r=c(r)),null===r||null!==d&&!d(r)||f.add(r))}}v.v(k);v.v(l)}return e? +p:h}return!1};function Sn(a){var b=a.B;if(void 0===b||b===fc)b=null;null===b&&a instanceof X&&(a=a.Ra,null!==a&&(b=a.B));null===b&&(b=tb);return b}function Tn(a){var b=a.C;if(void 0===b||b===fc)b=null;null===b&&a instanceof X&&(a=a.Ra,null!==a&&(b=a.C));null===b&&(b=Fb);return b}D.prototype.add=D.prototype.add=function(a){v.A(a,G,D,"add:element");this.Ad(this.za.count,a)};D.prototype.elt=D.prototype.da=function(a){return this.za.da(a)}; +D.prototype.insertAt=D.prototype.Ad=function(a,b){b instanceof R&&v.k("Cannot add a Part to a Panel: "+b);if(this===b||this.tl(b))this===b&&v.k("Cannot make a Panel contain itself: "+this.toString()),v.k("Cannot make a Panel indirectly contain itself: "+this.toString()+" already contains "+b.toString());var c=b.S;null!==c&&c!==this&&v.k("Cannot add a GraphObject that already belongs to another Panel to this Panel: "+b.toString()+", already contained by "+c.toString()+", cannot be shared by this Panel: "+ +this.toString());this.ia!==vk||b instanceof X||v.k("Can only add Shapes to a Grid Panel, not: "+b);b.Al(this);b.jm=null;if(null!==this.lE){var d=b.data;null!==d&&"object"===typeof d&&(null===this.gg&&(this.gg=new na(Object,D)),this.gg.add(d,b))}var e=this.za,d=-1;if(c===this){for(var f=-1,h=this.za.n,k=h.length,l=0;l=e.count&&a>=e.count)return;e.Vc(f);d=f}else v.k("element "+b.toString()+" has panel "+c.toString()+" but is not contained by it.")}if(0> +a||a>e.count)a=e.count;e.Ad(a,b);this.P();b.P();null!==b.Sd?this.Ah=!0:b instanceof D&&!0===b.Ah&&(this.Ah=!0);c=this.Y;null!==c&&(c.em=null,c.yj=NaN,this.Ah&&c instanceof S&&(c.Ah=!0),c.Ah&&(c.Wd=null),e=this.g,null!==e&&e.la.ib||(-1!==d&&c.Lc(Df,"elements",this,b,null,d,null),c.Lc(Cf,"elements",this,null,b,null,a)))};D.prototype.remove=D.prototype.remove=function(a){v.A(a,G,D,"remove:element");for(var b=this.za.n,c=b.length,d=-1,e=0;ea&&v.va(a,">= 0",D,"getRowDefinition:idx");a=Math.round(a);var b=this.Ld;if(void 0===b[a]){var c=new tg;c.Al(this);c.ce=!0;c.index=a;b[a]=c}return b[a]};D.prototype.removeRowDefinition=D.prototype.GE=function(a){0>a&&v.va(a,">= 0",D,"removeRowDefinition:idx");a=Math.round(a);var b=this.Ld;this.Lc(Df,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.P()};v.u(D,{Qo:"columnCount"},function(){return void 0===this.Gd?0:this.Gd.length}); +D.prototype.getColumnDefinition=D.prototype.yd=function(a){0>a&&v.va(a,">= 0",D,"getColumnDefinition:idx");a=Math.round(a);var b=this.Gd;if(void 0===b[a]){var c=new tg;c.Al(this);c.ce=!1;c.index=a;b[a]=c}return b[a]};D.prototype.removeColumnDefinition=D.prototype.CE=function(a){0>a&&v.va(a,">= 0",D,"removeColumnDefinition:idx");a=Math.round(a);var b=this.Gd;this.Lc(Df,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.P()}; +v.defineProperty(D,{sI:"rowSizing"},function(){return void 0===this.pm?On:this.pm},function(a){if(void 0!==this.pm){var b=this.pm;b!==a&&(a!==On&&a!==Vn&&v.k("Panel.rowSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.pm=a,this.P(),this.h("rowSizing",b,a))}}); +v.defineProperty(D,{qG:"columnSizing"},function(){return void 0===this.Ol?On:this.Ol},function(a){if(void 0!==this.Ol){var b=this.Ol;b!==a&&(a!==On&&a!==Vn&&v.k("Panel.columnSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.Ol=a,this.P(),this.h("columnSizing",b,a))}}); +v.defineProperty(D,{OK:"topIndex"},function(){return void 0===this.Ii?0:this.Ii},function(a){if(void 0!==this.Ii){var b=this.Ii;b!==a&&((!isFinite(a)||0>a)&&v.k("Panel.topIndex must be greater than zero and a real number, not: "+a),this.Ii=a,this.P(),this.h("topIndex",b,a))}}); +v.defineProperty(D,{$J:"leftIndex"},function(){return void 0===this.vi?0:this.vi},function(a){if(void 0!==this.vi){var b=this.vi;b!==a&&((!isFinite(a)||0>a)&&v.k("Panel.leftIndex must be greater than zero and a real number, not: "+a),this.vi=a,this.P(),this.h("leftIndex",b,a))}});D.prototype.findRowForLocalY=function(a){if(0>a)return-1;if(this.type!==Rm)return NaN;for(var b=0,c=this.Ld,d=c.length,e=this.Ii;ea)return-1;if(this.type!==Rm)return NaN;for(var b=0,c=this.Gd,d=c.length,e=this.vi;ea;)this.Le(this.za.length-1);a=this.lE;if(null!==a)for(var b=v.Va(a),c=0;cc)){var d;d=co(a,b);var e=a.yH,f=null;null!==e&&(f=e.ja(d));null===f&&(eo||(eo=!0,v.trace('No item template Panel found for category "'+d+'" on '+a),v.trace(" Using default item template."),d=new D,e=new $g,e.bind(new zg("text","",Ef)),d.add(e),fo=d),f=fo);d=f;null!==d&&(Vg(d),d=d.copy(),"object"===typeof b&&(null===a.gg&&(a.gg=new na(Object,D)),a.gg.add(b,d)),e=c,Il(a)&&e++,a.Ad(e,d),Jl(a,e,c),d.ie=null,d.data=b)}} +function Jl(a,b,c){for(a=a.za;ba&&v.va(a,">= 0",tg,"height"),this.Te=a,this.Ia=this.bb,null!==this.S&&this.S.P(),this.$c("height",b,a))});v.defineProperty(tg,{width:"width"},function(){return this.Te},function(a){var b=this.Te;b!==a&&(0>a&&v.va(a,">= 0",tg,"width"),this.Te=a,this.Ia=this.bb,null!==this.S&&this.S.P(),this.$c("width",b,a))}); +v.defineProperty(tg,{Zi:"minimum"},function(){return this.Cj},function(a){var b=this.Cj;b!==a&&((0>a||!isFinite(a))&&v.va(a,">= 0",tg,"minimum"),this.Cj=a,this.Ia=this.bb,null!==this.S&&this.S.P(),this.$c("minimum",b,a))});v.defineProperty(tg,{ff:"maximum"},function(){return this.Aj},function(a){var b=this.Aj;b!==a&&(0>a&&v.va(a,">= 0",tg,"maximum"),this.Aj=a,this.Ia=this.bb,null!==this.S&&this.S.P(),this.$c("maximum",b,a))}); +v.defineProperty(tg,{alignment:"alignment"},function(){return this.Ae},function(a){var b=this.Ae;b.K(a)||(this.Ae=a.R(),null!==this.S&&this.S.P(),this.$c("alignment",b,a))});v.defineProperty(tg,{stretch:"stretch"},function(){return this.Ph},function(a){var b=this.Ph;b!==a&&(this.Ph=a,null!==this.S&&this.S.P(),this.$c("stretch",b,a))}); +v.defineProperty(tg,{UE:"separatorPadding"},function(){return this.Hj},function(a){"number"===typeof a&&(a=new eb(a));var b=this.Hj;null!==a&&null!==b&&b.K(a)||(null!==a&&(a=a.R()),this.Hj=a,null!==this.S&&this.S.P(),this.$c("separatorPadding",b,a))});v.defineProperty(tg,{Ep:"separatorStroke"},function(){return this.ls},function(a){var b=this.ls;b!==a&&(null===a||"string"===typeof a||a instanceof ha)&&(a instanceof ha&&a.freeze(),this.ls=a,null!==this.S&&this.S.P(),this.$c("separatorStroke",b,a))}); +v.defineProperty(tg,{Fp:"separatorStrokeWidth"},function(){return this.ms},function(a){var b=this.ms;b!==a&&(this.ms=a,null!==this.S&&this.S.P(),this.$c("separatorStrokeWidth",b,a))}); +v.defineProperty(tg,{xI:"separatorDashArray"},function(){return this.Hh},function(a){var b=this.Hh;if(b!==a){null===a||Array.isArray(a)||v.Ed(a,"Array",tg,"separatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;ee)){for(var f=d.Ca,h=Math.max(1,f.width),f=f.height,k=c[0],l=c[1],m=0,n=0,p=0,q=0,r=0,s=0,t=q=0,u=v.jb(),y=2;yp&&(p=1);c=p;for(var e=0,m=c,n=h/2,y=0===n?!1:!0,w=0,q=u[w],p=q[0],s=q[1],r=q[2],q=q[3],x=0;.1<=t;){0===x&&(y?(m=c,e++,m-=n,t-=n,y=!1):(m=c,e++),0===m&&(m=1));if(m>t){v.sa(u); +return}m>q?(x=m-q,m=q):x=0;var A=Math.sqrt(m*m/(1+r*r));0>p&&(A=-A);k+=A;l+=r*A;a.translate(k,l);a.rotate(s);a.translate(-(h/2),-(f/2));0===x&&d.Xj(a,b);a.translate(h/2,f/2);a.rotate(-s);a.translate(-k,-l);t-=m;q-=m;if(0!==x){w++;if(w===u.length){v.sa(u);return}q=u[w];p=q[0];s=q[1];r=q[2];q=q[3];m=x}}v.sa(u)}} +X.prototype.Xj=function(a,b){if(null!==this.Dc||null!==this.pd){null!==this.pd&&Mm(this,a,this.pd,!0,!1);null!==this.Dc&&Mm(this,a,this.Dc,!1,!1);var c=this.Qh;if(0===c){var d=this.Y;d instanceof Tg&&d.type===xi&&"Selection"===d.gc&&d.Zb instanceof X&&d.Mf.Xe()===d.Zb&&(c=d.Zb.lb)}a.lineWidth=c;a.lineJoin=this.Bo;a.lineCap=this.zo;a.miterLimit=this.tm;var e=!1;this.Y&&b.Si("drawShadows")&&(e=this.Y.vl);var f=!0;null!==this.Dc&&null===this.pd&&(f=!1);var d=!1,h=!0,k=this.cF;null!==k&&(d=!0,h=a.pz(k, +this.ke));var l=this.Ra;if(null!==l){if(l.ia===Ge)a.beginPath(),d&&!h?zm(a,l.vc,l.Cc,l.vb,l.Bb,k,this.ke):(a.moveTo(l.vc,l.Cc),a.lineTo(l.vb,l.Bb)),null!==this.pd&&a.ug(this.pd),0!==c&&null!==this.Dc&&a.bj();else if(l.ia===He){var m=l.vc,n=l.Cc,p=l.vb,q=l.Bb,l=Math.min(m,p),r=Math.min(n,q),m=Math.abs(p-m),n=Math.abs(q-n);null!==this.pd&&(a.beginPath(),a.rect(l,r,m,n),a.ug(this.pd));if(null!==this.Dc){var s=p=0,t=0;f&&e&&(p=a.shadowOffsetX,s=a.shadowOffsetY,t=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY= +0,a.shadowBlur=0);d&&!h?(h=v.jb(),h.push(l),h.push(r),h.push(l+m),h.push(r),h.push(l+m),h.push(r+n),h.push(l),h.push(r+n),h.push(l),h.push(r),a.beginPath(),jo(a,h,k,this.ke),a.bj(),v.sa(h)):0!==c&&(a.beginPath(),a.rect(l,r,m,n),a.bj());f&&e&&(a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=t)}}else if(l.ia===Ie)m=l.vc,n=l.Cc,p=l.vb,q=l.Bb,l=Math.abs(p-m)/2,r=Math.abs(q-n)/2,m=Math.min(m,p)+l,n=Math.min(n,q)+r,a.beginPath(),a.moveTo(m,n-r),a.bezierCurveTo(m+Xc*l,n-r,m+l,n-Xc*r,m+l,n),a.bezierCurveTo(m+ +l,n+Xc*r,m+Xc*l,n+r,m,n+r),a.bezierCurveTo(m-Xc*l,n+r,m-l,n+Xc*r,m-l,n),a.bezierCurveTo(m-l,n-Xc*r,m-Xc*l,n-r,m,n-r),a.closePath(),null!==this.pd&&a.ug(this.pd),d&&!h&&(h=v.jb(),Sd(m,n-r,m+Xc*l,n-r,m+l,n-Xc*r,m+l,n,.5,h),Sd(m+l,n,m+l,n+Xc*r,m+Xc*l,n+r,m,n+r,.5,h),Sd(m,n+r,m-Xc*l,n+r,m-l,n+Xc*r,m-l,n,.5,h),Sd(m-l,n,m-l,n-Xc*r,m-Xc*l,n-r,m,n-r,.5,h),a.beginPath(),jo(a,h,k,this.ke),v.sa(h)),0!==c&&null!==this.Dc&&(f&&e?(p=a.shadowOffsetX,s=a.shadowOffsetY,t=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY= +0,a.shadowBlur=0,a.bj(),a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=t):a.bj());else if(l.ia===De){r=l.kj;n=r.length;for(q=0;qy.Af);else{var u=nf(y,m),w=u.length;if(0===w){a.lineTo(y.na,y.ua);break}for(var x=0;xe)){var f=.001,h=c.length,k=b[0],l=b[1];if(4===e)zm(a,k,l,b[2],b[3],c,d);else{a.moveTo(k,l);for(var m=f=0,n=0,p=0,q=0,r=p=0,s=v.jb(),t=2;tr&&(f=r);f>p?(u=f-p,f=p):u=0;var y=Math.sqrt(f*f/(1+q*q));0>n&&(y=-y);k+=y;l+= +q*y;e?a.lineTo(k,l):a.moveTo(k,l);r-=f;p-=f;if(0!==u){t++;if(t===s.length){v.sa(s);return}p=s[t];n=p[0];q=p[1];p=p[2];f=u}else e=!e}v.sa(s)}}}X.prototype.getDocumentPoint=X.prototype.Xa=function(a,b){void 0===b&&(b=new z);a.se()&&v.k("getDocumentPoint Spot must be a real, specific Spot, not: "+a.toString());var c=this.Ha,d=this.lb;b.m(a.x*(c.width+d)-d/2+c.x+a.offsetX,a.y*(c.height+d)-d/2+c.y+a.offsetY);this.Yg.ub(b);return b}; +X.prototype.Vj=function(a,b){var c=this.Ra;if(null===c||null===this.fill&&null===this.stroke)return!1;var d=c.mb,e=this.lb/2;c.type!==Ge||b||(e+=2);var f=v.ag();f.assign(d);f.Qf(e+2,e+2);if(!f.Fa(a))return v.Vb(f),!1;d=e+1E-4;if(c.type===Ge){if(null===this.stroke)return!1;d=(c.I-c.Aa)*(a.x-c.Aa)+(c.J-c.ya)*(a.y-c.ya);if(0>(c.Aa-c.I)*(a.x-c.I)+(c.ya-c.J)*(a.y-c.J)||0>d)return!1;v.Vb(f);return Kd(c.Aa,c.ya,c.I,c.J,e,a.x,a.y)}if(c.type===He){var h=c.Aa,k=c.ya,l=c.I,m=c.J;f.x=Math.min(h,l);f.y=Math.min(k, +m);f.width=Math.abs(l-h);f.height=Math.abs(m-k);if(null===this.fill){f.Qf(-d,-d);if(f.Fa(a))return v.Vb(f),!1;f.Qf(d,d)}null!==this.stroke&&f.Qf(e,e);e=f.Fa(a);v.Vb(f);return e}if(c.type===Ie){var h=c.Aa,k=c.ya,l=c.I,m=c.J,c=Math.min(h,l),n=Math.min(k,m),h=Math.abs(l-h)/2,k=Math.abs(m-k)/2,c=a.x-(c+h),n=a.y-(n+k);if(null===this.fill){h-=d;k-=d;if(0>=h||0>=k||1>=c*c/(h*h)+n*n/(k*k))return v.Vb(f),!1;h+=d;k+=d}null!==this.stroke&&(h+=e,k+=e);v.Vb(f);return 0>=h||0>=k?!1:1>=c*c/(h*h)+n*n/(k*k)}if(c.type=== De)return v.Vb(f),null===this.fill?vf(c,a.x,a.y,e):c.Fa(a,e,1=this.lb)n=Yd(p.vc,p.Cc,p.vb,p.Bb,f,h,k,l,e);else{var r=0,s=0;p.vc===p.vb?(r=m,s=0):(b=(p.Bb-p.Cc)/(p.vb-p.vc),s=m/Math.sqrt(1+b*b),r=s*b);d=v.jb();b=new y;Yd(p.vc+ -r,p.Cc+s,p.vb+r,p.Bb+s,f,h,k,l,b)&&d.push(b);b=new y;Yd(p.vc-r,p.Cc-s,p.vb-r,p.Bb-s,f,h,k,l,b)&&d.push(b);b=new y;Yd(p.vc+r,p.Cc+s,p.vc-r,p.Cc-s,f,h,k,l,b)&&d.push(b);b=new y;Yd(p.vb+r,p.Bb+s,p.vb-r,p.Bb-s,f,h,k,l,b)&&d.push(b);b=d.length;if(0===b)return v.sa(d),!1;n=!0;s=Infinity;for(r=0;rMath.abs(c)){n=h-b-c*(f-d);if(0>a*a*c*c+u*u-n*n){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(a*a*c*c+u*u-n*n);k=(-(a*a*c*n)+a*u*m)/(u*u+a*a*c*c)+d;a=(-(a*a*c*n)-a*u*m)/(u*u+a*a*c*c)+d;l=c*(k-d)+n+b;b=c*(a-d)+n+b;d=Math.abs((f-k)*(f-k))+Math.abs((h-l)*(h-l));h=Math.abs((f-a)*(f-a))+Math.abs((h-b)*(h- -b));dk){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(k);l=b+m;b-=m;d=Math.abs(l-h);h=Math.abs(b-h);dc?a-c:c-a)<(b>d?b-d:d-b)?(e=be||Dc(l.y,e))&&(l.ye||Dc(l.x,e))&&(l.x=this.lb)n=Zd(p.vc,p.Cc,p.vb,p.Bb,f,h,k,l,e);else{var r=0,s=0;p.vc===p.vb?(r=m,s=0):(b=(p.Bb-p.Cc)/(p.vb-p.vc),s=m/Math.sqrt(1+b*b),r=s*b);d=v.jb();b=new z;Zd(p.vc+ +r,p.Cc+s,p.vb+r,p.Bb+s,f,h,k,l,b)&&d.push(b);b=new z;Zd(p.vc-r,p.Cc-s,p.vb-r,p.Bb-s,f,h,k,l,b)&&d.push(b);b=new z;Zd(p.vc+r,p.Cc+s,p.vc-r,p.Cc-s,f,h,k,l,b)&&d.push(b);b=new z;Zd(p.vb+r,p.Bb+s,p.vb-r,p.Bb-s,f,h,k,l,b)&&d.push(b);b=d.length;if(0===b)return v.sa(d),!1;n=!0;s=Infinity;for(r=0;rMath.abs(c)){n=h-b-c*(f-d);if(0>a*a*c*c+u*u-n*n){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(a*a*c*c+u*u-n*n);k=(-(a*a*c*n)+a*u*m)/(u*u+a*a*c*c)+d;a=(-(a*a*c*n)-a*u*m)/(u*u+a*a*c*c)+d;l=c*(k-d)+n+b;b=c*(a-d)+n+b;d=Math.abs((f-k)*(f-k))+Math.abs((h-l)*(h-l));h=Math.abs((f-a)*(f-a))+Math.abs((h-b)*(h- +b));dk){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(k);l=b+m;b-=m;d=Math.abs(l-h);h=Math.abs(b-h);dc?a-c:c-a)<(b>d?b-d:d-b)?(e=be||Ec(l.y,e))&&(l.ye||Ec(l.x,e))&&(l.x=h&&d<=a}a=h&&f<=a} -X.prototype.JD=function(a,b,c){function d(a,b){for(var c=a.length,d=0;de)return!0;return!1}if(c&&null!==this.fill&&this.Vj(a,!0))return!0;var e=a.sf(b);b=e;1.5=e||Ta(b,f,0,-p)>=e||Ta(b,f,0,p)>=e||Ta(b,f,n,0)>= -e?!1:!0}else if(f.type===De){h=f.mb;k=h.x;l=h.y;m=h.x+h.width;h=h.y+h.height;if(a.x>m&&a.xh&&a.ye&&Sa(a.x,a.y,k,l,m,l)>e&&Sa(a.x,a.y,m,h,k,h)>e&&Sa(a.x,a.y,m,h,m,l)>e)return!1;b=Math.sqrt(e);if(c){if(null===this.fill?vf(f,a.x,a.y,b):f.Fa(a,b,!0))return!0}else{c=f.Ub;for(b=0;be)return!1;l=k.sb.n;m=l.length;for(h=0;he)return!1;break;case jf:f=v.jb(); -Rd(n,p,q.rc,q.Kc,q.lh,q.mh,q.I,q.J,.8,f);n=d(f,a);v.sa(f);if(n)return!1;n=q.I;p=q.J;if(a.Uo(n,p)>e)return!1;break;case kf:f=v.jb();Vd(n,p,q.rc,q.Kc,q.I,q.J,.8,f);n=d(f,a);v.sa(f);if(n)return!1;n=q.I;p=q.J;if(a.Uo(n,p)>e)return!1;break;case lf:case mf:var r=q.type===lf?nf(q,k):of(q,k,n,p),s=r.length;if(0===s){n=q.na;p=q.ua;if(a.Uo(n,p)>e)return!1;break}q=null;f=v.jb();for(b=0;b= 0",X,"strokeWidth:value")});v.defineProperty(X,{FK:"strokeCap"},function(){return this.zo},function(a){var b=this.zo;b!==a&&("string"!==typeof a||"butt"!==a&&"round"!==a&&"square"!==a?v.va(a,'"butt", "round", or "square"',X,"strokeCap"):(this.zo=a,this.pa(),this.h("strokeCap",b,a)))}); -v.defineProperty(X,{HK:"strokeJoin"},function(){return this.Bo},function(a){var b=this.Bo;b!==a&&("string"!==typeof a||"miter"!==a&&"bevel"!==a&&"round"!==a?v.va(a,'"miter", "bevel", or "round"',X,"strokeJoin"):(this.Bo=a,this.pa(),this.h("strokeJoin",b,a)))});v.defineProperty(X,{IK:"strokeMiterLimit"},function(){return this.um},function(a){var b=this.um;if(b!==a)if(1<=a){this.um=a;this.pa();var c=this.Y;null!==c&&(c.yj=NaN);this.h("strokeMiterLimit",b,a)}else v.va(a,"value >= 1",X,"strokeWidth:value")}); -v.defineProperty(X,{$E:"strokeDashArray"},function(){return this.Ao},function(a){var b=this.Ao;if(b!==a){null===a||Array.isArray(a)||v.Gd(a,"Array",X,"strokeDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;e=h&&d<=a}a=h&&f<=a} +X.prototype.MD=function(a,b,c){function d(a,b){for(var c=a.length,d=0;de)return!0;return!1}if(c&&null!==this.fill&&this.Vj(a,!0))return!0;var e=a.rf(b);b=e;1.5=e||Ua(b,f,0,-p)>=e||Ua(b,f,0,p)>=e||Ua(b,f,n,0)>= +e?!1:!0}else if(f.type===De){h=f.mb;k=h.x;l=h.y;m=h.x+h.width;h=h.y+h.height;if(a.x>m&&a.xh&&a.ye&&Ta(a.x,a.y,k,l,m,l)>e&&Ta(a.x,a.y,m,h,k,h)>e&&Ta(a.x,a.y,m,h,m,l)>e)return!1;b=Math.sqrt(e);if(c){if(null===this.fill?vf(f,a.x,a.y,b):f.Fa(a,b,!0))return!0}else{c=f.Ub;for(b=0;be)return!1;l=k.sb.n;m=l.length;for(h=0;he)return!1;break;case jf:f=v.jb(); +Sd(n,p,q.rc,q.Kc,q.kh,q.lh,q.I,q.J,.8,f);n=d(f,a);v.sa(f);if(n)return!1;n=q.I;p=q.J;if(a.Uo(n,p)>e)return!1;break;case kf:f=v.jb();Wd(n,p,q.rc,q.Kc,q.I,q.J,.8,f);n=d(f,a);v.sa(f);if(n)return!1;n=q.I;p=q.J;if(a.Uo(n,p)>e)return!1;break;case lf:case mf:var r=q.type===lf?nf(q,k):of(q,k,n,p),s=r.length;if(0===s){n=q.na;p=q.ua;if(a.Uo(n,p)>e)return!1;break}q=null;f=v.jb();for(b=0;b= 0",X,"strokeWidth:value")});v.defineProperty(X,{HK:"strokeCap"},function(){return this.zo},function(a){var b=this.zo;b!==a&&("string"!==typeof a||"butt"!==a&&"round"!==a&&"square"!==a?v.va(a,'"butt", "round", or "square"',X,"strokeCap"):(this.zo=a,this.pa(),this.h("strokeCap",b,a)))}); +v.defineProperty(X,{JK:"strokeJoin"},function(){return this.Bo},function(a){var b=this.Bo;b!==a&&("string"!==typeof a||"miter"!==a&&"bevel"!==a&&"round"!==a?v.va(a,'"miter", "bevel", or "round"',X,"strokeJoin"):(this.Bo=a,this.pa(),this.h("strokeJoin",b,a)))});v.defineProperty(X,{KK:"strokeMiterLimit"},function(){return this.tm},function(a){var b=this.tm;if(b!==a)if(1<=a){this.tm=a;this.pa();var c=this.Y;null!==c&&(c.yj=NaN);this.h("strokeMiterLimit",b,a)}else v.va(a,"value >= 1",X,"strokeWidth:value")}); +v.defineProperty(X,{cF:"strokeDashArray"},function(){return this.Ao},function(a){var b=this.Ao;if(b!==a){null===a||Array.isArray(a)||v.Ed(a,"Array",X,"strokeDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;em*k*k&&(h=!0);b.lf!==a&&(h=!1);!1===b.Ui("textGreeking")&&(h=!1);for(var m=this.Jj,k=this.Kj,l=this.Ee,n=0;nc&&(p=c);var f=f+m,r=q,q=a,s=f,t=c, -u=d,w=0;h?("start"===this.xd||"left"===this.xd?w=0:"end"===this.xd||"right"===this.xd?w=t-p:"center"===this.xd?w=(t-p)/2:v.k("textAlign must be start, end, left, right, or center: "+this.xd),q.fillRect(0+w,s+.25*u,p,1)):("start"===this.xd||"left"===this.xd?w=0:"end"===this.xd||"right"===this.xd?w=t:"center"===this.xd?w=t/2:v.k("textAlign must be start, end, left, right, or center: "+this.xd),q.fillText(r,0+w,s+u-.25*u),r=u/20|0,0===r&&(r=1),"end"===this.xd||"right"===this.xd?w-=p:"center"===this.xd&& -(w-=p/2),this.Wl&&(q.beginPath(),q.lineWidth=r,q.moveTo(0+w,s+u-.2*u),q.lineTo(0+w+p,s+u-.2*u),q.stroke()),this.Vl&&(q.beginPath(),q.lineWidth=r,s=s+u-u/2.2|0,0!==r%2&&(s+=.5),q.moveTo(0+w,s),q.lineTo(0+w+p,s),q.stroke()));f+=d+k}}}; -$g.prototype.np=function(a,b,c,d){this.jv=a;var e=this.Jk;e.reset();var f=0,h=0;if(isNaN(this.wa.width)){f=this.me.replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(0===f.length)f=0;else if(this.Jw){for(var k=h=0,l=!1;!l;){var m=f.indexOf("\n",k);-1===m&&(m=f.length,l=!0);k=Ho(f.substr(k,m-k).replace(/^\s+|\s+$/g,""),this.Ah);k>h&&(h=k);k=m+1}f=h}else h=f.indexOf("\n",0),0<=h&&(f=f.substr(0,h)),f=k=Ho(f,this.Ah);f=Math.min(f,a/this.scale);f=Math.max(8,f)}else f=this.wa.width;null!==this.T&&(f=Math.min(f, -this.T.yf.width),f=Math.max(f,this.T.jh.width));h=Fo(this,f,e);m=h=isNaN(this.wa.height)?Math.min(h,b/this.scale):this.wa.height;if(0!==e.Se&&1!==e.Ce.length&&this.Rk===Do&&(b=this.Ah,l=this.Rk===Do?Io(b):0,k=this.Jj+this.Kj,k=Math.max(0,Go(this)+k),m=Math.min(this.JH-1,Math.max(Math.floor(m/k+.01)-1,0)),!(m+1>=e.Ce.length))){k=e.Ce[m];for(a=Math.max(1,a-l);Ho(k,b)>a&&1=a.zi)return new ia(0,l);if(a.xm===Bo){c.Mi=1;f=Ho(b,k);if(0===h||f<=d)return c.Se=f,c.kf.push(c.Se),c.Ce.push(b),new ia(f,l);var m=Jo(b);b=b.substr(m.length);for(var n=Jo(b),f=Ho(m+n,k);0d&&1d;){n=1;f=Ho(m.substr(0,n),k);for(h=0;f<=d;)n++,h=f,f=Ho(m.substr(0,n),k);1===n?(c.kf[a.Ee+p]=f,e=Math.max(e,f)):(c.kf[a.Ee+p]=h,e=Math.max(e,h));n--;1>n&&(n=1);c.Ce[a.Ee+p]=m.substr(0,n);p++;m=m.substr(n);if(a.Ee+p>a.zi)break}n=Jo(b);for(f=Ho(m+n,k);0a.zi))break}c.Mi=Math.min(a.zi,p);c.Se=Math.max(c.Se,e);return new ia(c.Se,l*c.Mi)}function Jo(a){for(var b=a.length,c=0;c=b?a:a.substr(0,c)}function Ho(a,b){zo!==b&&(zo=Ao.font=b);return Ao.measureText(a).width} -function Go(a){if(null!==a.On)return a.On;var b=a.Ah;zo!==b&&(zo=Ao.font=b);var c=0;void 0!==uo[b]&&5E3>vo?c=uo[b]:(c=1.3*Ao.measureText("M").width,uo[b]=c,vo++);return a.On=c}function Io(a){zo!==a&&(zo=Ao.font=a);var b=0;void 0!==wo[a]&&5E3>xo?b=wo[a]:(b=Ao.measureText(yo).width,wo[a]=b,xo++);return b} -function Fo(a,b,c){var d=a.me.replace(/\r\n/g,"\n").replace(/\r/g,"\n"),e=a.Jj+a.Kj,e=Math.max(0,Go(a)+e);if(0===d.length)return c.Se=0,a.Ee=1,e;if(!a.Jw){var f=d.indexOf("\n",0);0<=f&&(d=d.substr(0,f))}for(var f=0,h=a.Ee=0,k=-1,l=!1;!l;)k=d.indexOf("\n",h),-1===k&&(k=d.length,l=!0),h<=k&&(h=d.substr(h,k-h),a.xm!==Bo?(c.Mi=0,h=Eo(a,h,c,b),f+=h.height,a.Ee+=c.Mi):(Eo(a,h,c,b),f+=e,a.Ee++),a.Ee===a.zi&&(l=!0)),h=k+1;return a.ov=f} -v.defineProperty($g,{sA:"textValidation"},function(){return this.Tk},function(a){var b=this.Tk;b!==a&&(null!==a&&v.j(a,"function",$g,"textValidation"),this.Tk=a,this.h("textValidation",b,a))});v.defineProperty($g,{CK:"spacingAbove"},function(){return this.Jj},function(a){var b=this.Jj;b!==a&&(this.Jj=a,this.h("spacingAbove",b,a))});v.defineProperty($g,{DK:"spacingBelow"},function(){return this.Kj},function(a){var b=this.Kj;b!==a&&(this.Kj=a,this.h("spacingBelow",b,a))}); -v.defineProperty($g,{JH:"maxLines"},function(){return this.zi},function(a){var b=this.zi;b!==a&&(a=Math.floor(a),0>=a&&v.va(a,"> 0",$g,"maxLines"),this.zi=a,this.h("maxLines",b,a),this.P())});v.u($g,{fK:"metrics"},function(){return this.Jk});function to(){this.Se=this.Mi=0;this.kf=[];this.Ce=[]}to.prototype.reset=function(){this.Se=this.Mi=0;this.kf=[];this.Ce=[]};to.prototype.Ys=function(a){this.Mi=a.Mi;this.Se=a.Se;this.kf=v.dl(a.kf);this.Ce=v.dl(a.Ce)};v.u(to,{rJ:"arrSize"},function(){return this.kf}); -v.u(to,{sJ:"arrText"},function(){return this.Ce});v.u(to,{eK:"maxLineWidth"},function(){return this.Se});function kk(){G.call(this);this.Qe=null;this.ss="";this.Ij=Cd;this.Qn=Fe;this.Co=this.Lj=this.nf=null;this.ny=!1;this.Su=!0;this.to=null}v.Ia(kk,G);v.ea("Picture",kk);kk.prototype.cloneProtected=function(a){G.prototype.cloneProtected.call(this,a);a.element=this.Qe;a.ss=this.ss;a.Ij=this.Ij.R();a.Qn=this.Qn;a.nf=this.nf;a.Lj=this.Lj;a.Su=this.Su;a.to=this.to};var Ko=new ta,Lo=0,ek=[]; -function Mo(){var a=ek;if(0===a.length)for(var b=window.document.getElementsByTagName("canvas"),c=b.length,d=0;dr.Lo.length&& -(Ro(r,4,l,m),Ro(r,16,l,m));for(var l=r.Lo,m=l.length,q=l[0],t=0;tm*k*k&&(h=!0);b.kf!==a&&(h=!1);!1===b.Si("textGreeking")&&(h=!1);for(var m=b.Uq,k=this.Jj,l=this.Kj,n=this.De,p=0;pc&&(q=c);var f=f+k,s=r,r=a, +t=f,u=c,y=d,w=0,x=this.vm;"start"===x&&(x=m?"right":"left");"end"===x&&(x=m?"left":"right");h?("left"===x?w=0:"right"===x?w=u-q:"center"===x&&(w=(u-q)/2),r.fillRect(0+w,t+.25*y,q,1)):("left"===x?w=0:"right"===x?w=u:"center"===x&&(w=u/2),r.fillText(s,0+w,t+y-.25*y),s=y/20|0,0===s&&(s=1),"right"===x?w-=q:"center"===x&&(w-=q/2),this.Vl&&(r.beginPath(),r.lineWidth=s,r.moveTo(0+w,t+y-.2*y),r.lineTo(0+w+q,t+y-.2*y),r.stroke()),this.Ul&&(r.beginPath(),r.lineWidth=s,t=t+y-y/2.2|0,0!==s%2&&(t+=.5),r.moveTo(0+ +w,t),r.lineTo(0+w+q,t),r.stroke()));f+=d+l}}}; +$g.prototype.np=function(a,b,c,d){this.kv=a;var e=this.Jk;e.reset();var f=0,h=0;if(isNaN(this.xa.width)){f=this.le.replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(0===f.length)f=0;else if(this.Kw){for(var k=h=0,l=!1;!l;){var m=f.indexOf("\n",k);-1===m&&(m=f.length,l=!0);k=Ho(f.substr(k,m-k).replace(/^\s+|\s+$/g,""),this.yh);k>h&&(h=k);k=m+1}f=h}else h=f.indexOf("\n",0),0<=h&&(f=f.substr(0,h)),f=k=Ho(f,this.yh);f=Math.min(f,a/this.scale);f=Math.max(8,f)}else f=this.xa.width;null!==this.S&&(f=Math.min(f, +this.S.xf.width),f=Math.max(f,this.S.ih.width));h=Fo(this,f,e);m=h=isNaN(this.xa.height)?Math.min(h,b/this.scale):this.xa.height;if(0!==e.Re&&1!==e.Be.length&&this.Rk===Do&&(b=this.yh,l=this.Rk===Do?Io(b):0,k=this.Jj+this.Kj,k=Math.max(0,Go(this)+k),m=Math.min(this.LH-1,Math.max(Math.floor(m/k+.01)-1,0)),!(m+1>=e.Be.length))){k=e.Be[m];for(a=Math.max(1,a-l);Ho(k,b)>a&&1=a.xi)return new ia(0,l);if(a.xm===Bo){c.Ki=1;f=Ho(b,k);if(0===h||f<=d)return c.Re=f,c.jf.push(c.Re),c.Be.push(b),new ia(f,l);var m=Jo(b);b=b.substr(m.length);for(var n=Jo(b),f=Ho(m+n,k);0d&&1d;){n=1;f=Ho(m.substr(0,n),k);for(h=0;f<=d;)n++,h=f,f=Ho(m.substr(0,n),k);1===n?(c.jf[a.De+p]=f,e=Math.max(e,f)):(c.jf[a.De+p]=h,e=Math.max(e,h));n--;1>n&&(n=1);c.Be[a.De+p]=m.substr(0,n);p++;m=m.substr(n);if(a.De+p>a.xi)break}n=Jo(b);for(f=Ho(m+n,k);0a.xi))break}c.Ki=Math.min(a.xi,p);c.Re=Math.max(c.Re,e);return new ia(c.Re,l*c.Ki)}function Jo(a){for(var b=a.length,c=0;c=b?a:a.substr(0,c)}function Ho(a,b){zo!==b&&(zo=Ao.font=b);return Ao.measureText(a).width} +function Go(a){if(null!==a.On)return a.On;var b=a.yh;zo!==b&&(zo=Ao.font=b);var c=0;void 0!==uo[b]&&5E3>vo?c=uo[b]:(c=1.3*Ao.measureText("M").width,uo[b]=c,vo++);return a.On=c}function Io(a){zo!==a&&(zo=Ao.font=a);var b=0;void 0!==wo[a]&&5E3>xo?b=wo[a]:(b=Ao.measureText(yo).width,wo[a]=b,xo++);return b} +function Fo(a,b,c){var d=a.le.replace(/\r\n/g,"\n").replace(/\r/g,"\n"),e=a.Jj+a.Kj,e=Math.max(0,Go(a)+e);if(0===d.length)return c.Re=0,a.De=1,e;if(!a.Kw){var f=d.indexOf("\n",0);0<=f&&(d=d.substr(0,f))}for(var f=0,h=a.De=0,k=-1,l=!1;!l;)k=d.indexOf("\n",h),-1===k&&(k=d.length,l=!0),h<=k&&(h=d.substr(h,k-h),a.xm!==Bo?(c.Ki=0,h=Eo(a,h,c,b),f+=h.height,a.De+=c.Ki):(Eo(a,h,c,b),f+=e,a.De++),a.De===a.xi&&(l=!0)),h=k+1;return a.pv=f} +v.defineProperty($g,{wA:"textValidation"},function(){return this.Tk},function(a){var b=this.Tk;b!==a&&(null!==a&&v.j(a,"function",$g,"textValidation"),this.Tk=a,this.h("textValidation",b,a))});v.defineProperty($g,{EK:"spacingAbove"},function(){return this.Jj},function(a){var b=this.Jj;b!==a&&(this.Jj=a,this.h("spacingAbove",b,a))});v.defineProperty($g,{FK:"spacingBelow"},function(){return this.Kj},function(a){var b=this.Kj;b!==a&&(this.Kj=a,this.h("spacingBelow",b,a))}); +v.defineProperty($g,{LH:"maxLines"},function(){return this.xi},function(a){var b=this.xi;b!==a&&(a=Math.floor(a),0>=a&&v.va(a,"> 0",$g,"maxLines"),this.xi=a,this.h("maxLines",b,a),this.P())});v.u($g,{hK:"metrics"},function(){return this.Jk});function to(){this.Re=this.Ki=0;this.jf=[];this.Be=[]}to.prototype.reset=function(){this.Re=this.Ki=0;this.jf=[];this.Be=[]};to.prototype.Zs=function(a){this.Ki=a.Ki;this.Re=a.Re;this.jf=v.dl(a.jf);this.Be=v.dl(a.Be)};v.u(to,{tJ:"arrSize"},function(){return this.jf}); +v.u(to,{uJ:"arrText"},function(){return this.Be});v.u(to,{gK:"maxLineWidth"},function(){return this.Re});function kk(){G.call(this);this.Pe=null;this.ts="";this.Ij=Dd;this.Qn=Fe;this.Co=this.Lj=this.mf=null;this.oy=!1;this.Tu=!0;this.to=null}v.Ja(kk,G);v.ea("Picture",kk);kk.prototype.cloneProtected=function(a){G.prototype.cloneProtected.call(this,a);a.element=this.Pe;a.ts=this.ts;a.Ij=this.Ij.R();a.Qn=this.Qn;a.mf=this.mf;a.Lj=this.Lj;a.Tu=this.Tu;a.to=this.to};var Ko=new ta,Lo=0,ek=[]; +function Mo(){var a=ek;if(0===a.length)for(var b=window.document.getElementsByTagName("canvas"),c=b.length,d=0;dr.Lo.length&& +(Ro(r,4,l,m),Ro(r,16,l,m));for(var l=r.Lo,m=l.length,q=l[0],t=0;te;e++)a.lineTo(d[e].x*b,d[e].y*c);v.sa(d);P(a);b=a.o;b.B=new L(.2,.22);b.C=new L(.8, .9);v.q(a);return b},DataTransmission:"Hexagon",Hexagon:function(a,b,c){var d=Vo(6);a=v.s();N(a,d[0].x*b,d[0].y*c,!0);for(var e=1;6>e;e++)a.lineTo(d[e].x*b,d[e].y*c);v.sa(d);P(a);b=a.o;b.B=new L(.07,.25);b.C=new L(.93,.75);v.q(a);return b},Heptagon:function(a,b,c){var d=Vo(7);a=v.s();N(a,d[0].x*b,d[0].y*c,!0);for(var e=1;7>e;e++)a.lineTo(d[e].x*b,d[e].y*c);v.sa(d);P(a);b=a.o;b.B=new L(.2,.15);b.C=new L(.8,.85);v.q(a);return b},Octagon:function(a,b,c){var d=Vo(8);a=v.s();N(a,d[0].x*b,d[0].y*c,!0); for(var e=1;8>e;e++)a.lineTo(d[e].x*b,d[e].y*c);v.sa(d);P(a);b=a.o;b.B=new L(.15,.15);b.C=new L(.85,.85);v.q(a);return b},Nonagon:function(a,b,c){var d=Vo(9);a=v.s();N(a,d[0].x*b,d[0].y*c,!0);for(var e=1;9>e;e++)a.lineTo(d[e].x*b,d[e].y*c);v.sa(d);P(a);b=a.o;b.B=new L(.17,.13);b.C=new L(.82,.82);v.q(a);return b},Decagon:function(a,b,c){var d=Vo(10);a=v.s();N(a,d[0].x*b,d[0].y*c,!0);for(var e=1;10>e;e++)a.lineTo(d[e].x*b,d[e].y*c);v.sa(d);P(a);b=a.o;b.B=new L(.16,.16);b.C=new L(.84,.84);v.q(a);return b}, @@ -1306,92 +1308,92 @@ b,d[e].y*c,d[e+1].x*b,d[e+1].y*c,d[e+2].x*b,d[e+2].y*c);v.sa(d);P(a);b=a.o;b.B=n b,d[e].y*c,d[e+1].x*b,d[e+1].y*c,d[e+2].x*b,d[e+2].y*c);v.sa(d);P(a);b=a.o;b.B=new L(.355,.361);b.C=new L(.645,.651);v.q(a);return b},TenPointedBurst:function(a,b,c){var d=To(10);a=v.s();N(a,d[0].x*b,d[0].y*c,!0);for(var e=1;ea&&(a=.15);var d=v.s(),e=.2*Wc;N(d,0,.2*c,!0);O(d,0,(.2-e)*c,(.2-e)*b,0,.2*b,0);d.lineTo(.8*b,0);O(d,(.8+e)*b,0,1*b,(.2-e)*c,1*b,.2*c);d.lineTo(1*b,.8*c);O(d,1*b,(.8+e)*c,(.8+e)*b,1*c,.8*b,1*c);d.lineTo(.2*b,1*c);O(d,(.2-e)*b,1*c,0,(.8+e)*c,0,.8*c);d.lineTo(0,.2*c); +v.s();var d=.5*Xc,e=.1*Xc;N(a,1*b,.1*c,!0);a.lineTo(1*b,.9*c);O(a,1*b,(.9+e)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0,(.9+e)*c,0,.9*c);a.lineTo(0,.1*c);O(a,0,(.1-e)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.1-e)*c,1*b,.1*c);N(a,1*b,.1*c,!1);O(a,1*b,(.1+e)*c,(.5+d)*b,.2*c,.5*b,.2*c);O(a,(.5-d)*b,.2*c,0,(.1+e)*c,0,.1*c);a.moveTo(1*b,.2*c);O(a,1*b,(.2+e)*c,(.5+d)*b,.3*c,.5*b,.3*c);O(a,(.5-d)*b,.3*c,0,(.2+e)*c,0,.2*c);a.Ya(!1);b=a.o;b.B=new L(0,.3);b.C=new L(1,.9);v.q(a);return b},Display:function(a, +b,c){a=v.s();N(a,.25*b,0,!0);a.lineTo(.75*b,0);O(a,1*b,0,1*b,1*c,.75*b,1*c);a.lineTo(.25*b,1*c);a.lineTo(0,.5*c);P(a);b=a.o;b.B=new L(.25,0);b.C=new L(.75,1);v.q(a);return b},DividedEvent:function(a,b,c){a=a?a.Ac:NaN;isNaN(a)?a=.2:.15>a&&(a=.15);var d=v.s(),e=.2*Xc;N(d,0,.2*c,!0);O(d,0,(.2-e)*c,(.2-e)*b,0,.2*b,0);d.lineTo(.8*b,0);O(d,(.8+e)*b,0,1*b,(.2-e)*c,1*b,.2*c);d.lineTo(1*b,.8*c);O(d,1*b,(.8+e)*c,(.8+e)*b,1*c,.8*b,1*c);d.lineTo(.2*b,1*c);O(d,(.2-e)*b,1*c,0,(.8+e)*c,0,.8*c);d.lineTo(0,.2*c); N(d,0,a*c,!1);d.lineTo(1*b,a*c);d.Ya(!1);b=d.o;b.B=new L(0,a);b.C=new L(1,1-a);v.q(d);return b},DividedProcess:function(a,b,c){a=a?a.Ac:NaN;if(isNaN(a)||.1>a)a=.1;var d=v.s();N(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);P(d);N(d,0,a*c,!1);d.lineTo(1*b,a*c);d.Ya(!1);b=d.o;b.B=new L(0,a);b.C=Fb;v.q(d);return b},Document:function(a,b,c){c/=.8;a=v.s();N(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);O(a,.5*b,.4*c,.5*b,1*c,0,.7*c);P(a);b=a.o;b.B=tb;b.C=new L(1,.6);v.q(a); return b},ExternalOrganization:function(a,b,c){a=a?a.Ac:NaN;if(isNaN(a)||.2>a)a=.2;var d=v.s();N(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);P(d);N(d,a*b,0,!1);d.lineTo(0,a*c);d.moveTo(1*b,a*c);d.lineTo((1-a)*b,0);d.moveTo(0,(1-a)*c);d.lineTo(a*b,1*c);d.moveTo((1-a)*b,1*c);d.lineTo(1*b,(1-a)*c);d.Ya(!1);b=d.o;b.B=new L(a/2,a/2);b.C=new L(1-a/2,1-a/2);v.q(d);return b},ExternalProcess:function(a,b,c){a=v.s();N(a,.5*b,0,!0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,.5*c);P(a); N(a,.1*b,.4*c,!1);a.lineTo(.1*b,.6*c);a.moveTo(.9*b,.6*c);a.lineTo(.9*b,.4*c);a.moveTo(.6*b,.1*c);a.lineTo(.4*b,.1*c);a.moveTo(.4*b,.9*c);a.lineTo(.6*b,.9*c);a.Ya(!1);b=a.o;b.B=new L(.25,.25);b.C=new L(.75,.75);v.q(a);return b},File:function(a,b,c){a=v.s();N(a,0,0,!0);a.lineTo(.75*b,0);a.lineTo(1*b,.25*c);a.lineTo(1*b,1*c);a.lineTo(0,1*c);P(a);N(a,.75*b,0,!1);a.lineTo(.75*b,.25*c);a.lineTo(1*b,.25*c);a.Ya(!1);b=a.o;b.B=new L(0,.25);b.C=Fb;v.q(a);return b},Interrupt:function(a,b,c){a=v.s();N(a,1*b, -.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);N(a,1*b,.5*c,!1);a.lineTo(1*b,1*c);N(a,1*b,.5*c,!1);a.lineTo(1*b,0);b=a.o;b.B=new L(0,.25);b.C=new L(.5,.75);v.q(a);return b},InternalStorage:function(a,b,c){var d=a?a.Ac:NaN;a=a?a.Lt:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.1);var e=v.s();N(e,0,0,!0);e.lineTo(1*b,0);e.lineTo(1*b,1*c);e.lineTo(0,1*c);P(e);N(e,d*b,0,!1);e.lineTo(d*b,1*c);e.moveTo(0,a*c);e.lineTo(1*b,a*c);e.Ya(!1);b=e.o;b.B=new L(d,a);b.C=Fb;v.q(e);return b},Junction:function(a,b, -c){a=v.s();var d=1/Math.SQRT2,e=(1-1/Math.SQRT2)/2,f=.5*Wc;N(a,1*b,.5*c,!0);O(a,1*b,(.5+f)*c,(.5+f)*b,1*c,.5*b,1*c);O(a,(.5-f)*b,1*c,0,(.5+f)*c,0,.5*c);O(a,0,(.5-f)*c,(.5-f)*b,0,.5*b,0);O(a,(.5+f)*b,0,1*b,(.5-f)*c,1*b,.5*c);N(a,(e+d)*b,(e+d)*c,!1);a.lineTo(e*b,e*c);a.moveTo(e*b,(e+d)*c);a.lineTo((e+d)*b,e*c);a.Ya(!1);b=a.o;b.Od=Pi;v.q(a);return b},LinedDocument:function(a,b,c){c/=.8;a=v.s();N(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);O(a,.5*b,.4*c,.5*b,1*c,0,.7*c);P(a);N(a,.1* -b,0,!1);a.lineTo(.1*b,.75*c);a.Ya(!1);b=a.o;b.B=new L(.1,0);b.C=new L(1,.6);v.q(a);return b},LoopLimit:function(a,b,c){a=v.s();N(a,0,1*c,!0);a.lineTo(0,.25*c);a.lineTo(.25*b,0);a.lineTo(.75*b,0);a.lineTo(1*b,.25*c);a.lineTo(1*b,1*c);P(a);b=a.o;b.B=new L(0,.25);b.C=Fb;v.q(a);return b},SequentialData:"MagneticTape",MagneticTape:function(a,b,c){a=v.s();var d=.5*Wc;N(a,.5*b,1*c,!0);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+ +.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);N(a,1*b,.5*c,!1);a.lineTo(1*b,1*c);N(a,1*b,.5*c,!1);a.lineTo(1*b,0);b=a.o;b.B=new L(0,.25);b.C=new L(.5,.75);v.q(a);return b},InternalStorage:function(a,b,c){var d=a?a.Ac:NaN;a=a?a.Mt:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.1);var e=v.s();N(e,0,0,!0);e.lineTo(1*b,0);e.lineTo(1*b,1*c);e.lineTo(0,1*c);P(e);N(e,d*b,0,!1);e.lineTo(d*b,1*c);e.moveTo(0,a*c);e.lineTo(1*b,a*c);e.Ya(!1);b=e.o;b.B=new L(d,a);b.C=Fb;v.q(e);return b},Junction:function(a,b, +c){a=v.s();var d=1/Math.SQRT2,e=(1-1/Math.SQRT2)/2,f=.5*Xc;N(a,1*b,.5*c,!0);O(a,1*b,(.5+f)*c,(.5+f)*b,1*c,.5*b,1*c);O(a,(.5-f)*b,1*c,0,(.5+f)*c,0,.5*c);O(a,0,(.5-f)*c,(.5-f)*b,0,.5*b,0);O(a,(.5+f)*b,0,1*b,(.5-f)*c,1*b,.5*c);N(a,(e+d)*b,(e+d)*c,!1);a.lineTo(e*b,e*c);a.moveTo(e*b,(e+d)*c);a.lineTo((e+d)*b,e*c);a.Ya(!1);b=a.o;b.Md=Pi;v.q(a);return b},LinedDocument:function(a,b,c){c/=.8;a=v.s();N(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);O(a,.5*b,.4*c,.5*b,1*c,0,.7*c);P(a);N(a,.1* +b,0,!1);a.lineTo(.1*b,.75*c);a.Ya(!1);b=a.o;b.B=new L(.1,0);b.C=new L(1,.6);v.q(a);return b},LoopLimit:function(a,b,c){a=v.s();N(a,0,1*c,!0);a.lineTo(0,.25*c);a.lineTo(.25*b,0);a.lineTo(.75*b,0);a.lineTo(1*b,.25*c);a.lineTo(1*b,1*c);P(a);b=a.o;b.B=new L(0,.25);b.C=Fb;v.q(a);return b},SequentialData:"MagneticTape",MagneticTape:function(a,b,c){a=v.s();var d=.5*Xc;N(a,.5*b,1*c,!0);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+ d)*c,(.5+d)*b,.9*c,.6*b,.9*c);a.lineTo(1*b,.9*c);a.lineTo(1*b,1*c);a.lineTo(.5*b,1*c);b=a.o;b.B=new L(.15,.15);b.C=new L(.85,.8);v.q(a);return b},ManualInput:function(a,b,c){a=v.s();N(a,1*b,0,!0);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.25*c);P(a);b=a.o;b.B=new L(0,.25);b.C=Fb;v.q(a);return b},MessageFromUser:function(a,b,c){a=a?a.Ac:NaN;isNaN(a)&&(a=.7);var d=v.s();N(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(a*b,.5*c);d.lineTo(1*b,1*c);d.lineTo(0,1*c);P(d);b=d.o;b.B=tb;b.C=new L(a,1);v.q(d);return b}, MicroformProcessing:function(a,b,c){a=a?a.Ac:NaN;isNaN(a)&&(a=.25);var d=v.s();N(d,0,0,!0);d.lineTo(.5*b,a*c);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(.5*b,(1-a)*c);d.lineTo(0,1*c);P(d);b=d.o;b.B=new L(0,a);b.C=new L(1,1-a);v.q(d);return b},MicroformRecording:function(a,b,c){a=v.s();N(a,0,0,!0);a.lineTo(.75*b,.25*c);a.lineTo(1*b,.15*c);a.lineTo(1*b,.85*c);a.lineTo(.75*b,.75*c);a.lineTo(0,1*c);P(a);b=a.o;b.B=new L(0,.25);b.C=new L(1,.75);v.q(a);return b},MultiDocument:function(a,b,c){c/=.8;a=v.s(); N(a,b,0,!0);a.lineTo(b,.5*c);O(a,.96*b,.47*c,.93*b,.45*c,.9*b,.44*c);a.lineTo(.9*b,.6*c);O(a,.86*b,.57*c,.83*b,.55*c,.8*b,.54*c);a.lineTo(.8*b,.7*c);O(a,.4*b,.4*c,.4*b,1*c,0,.7*c);a.lineTo(0,.2*c);a.lineTo(.1*b,.2*c);a.lineTo(.1*b,.1*c);a.lineTo(.2*b,.1*c);a.lineTo(.2*b,0);P(a);N(a,.1*b,.2*c,!1);a.lineTo(.8*b,.2*c);a.lineTo(.8*b,.54*c);a.moveTo(.2*b,.1*c);a.lineTo(.9*b,.1*c);a.lineTo(.9*b,.44*c);a.Ya(!1);b=a.o;b.B=new L(0,.25);b.C=new L(.8,.77);v.q(a);return b},MultiProcess:function(a,b,c){a=v.s(); N(a,.1*b,.1*c,!0);a.lineTo(.2*b,.1*c);a.lineTo(.2*b,0);a.lineTo(1*b,0);a.lineTo(1*b,.8*c);a.lineTo(.9*b,.8*c);a.lineTo(.9*b,.9*c);a.lineTo(.8*b,.9*c);a.lineTo(.8*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.2*c);a.lineTo(.1*b,.2*c);P(a);N(a,.2*b,.1*c,!1);a.lineTo(.9*b,.1*c);a.lineTo(.9*b,.8*c);a.moveTo(.1*b,.2*c);a.lineTo(.8*b,.2*c);a.lineTo(.8*b,.9*c);a.Ya(!1);b=a.o;b.B=new L(0,.2);b.C=new L(.8,1);v.q(a);return b},OfflineStorage:function(a,b,c){a=a?a.Ac:NaN;isNaN(a)&&(a=.1);var d=1-a,e=v.s();N(e,0,0,!0);e.lineTo(1* -b,0);e.lineTo(.5*b,1*c);P(e);N(e,.5*a*b,a*c,!1);e.lineTo((1-.5*a)*b,a*c);e.Ya(!1);b=e.o;b.B=new L(d/4+.5*a,a);b.C=new L(3*d/4+.5*a,a+.5*d);v.q(e);return b},OffPageConnector:function(a,b,c){a=v.s();N(a,0,0,!0);a.lineTo(.75*b,0);a.lineTo(1*b,.5*c);a.lineTo(.75*b,1*c);a.lineTo(0,1*c);P(a);b=a.o;b.B=tb;b.C=new L(.75,1);v.q(a);return b},Or:function(a,b,c){a=v.s();var d=.5*Wc;N(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a, -(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);N(a,1*b,.5*c,!1);a.lineTo(0,.5*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,0);a.Ya(!1);b=a.o;b.Od=Pi;v.q(a);return b},PaperTape:function(a,b,c){c/=.8;a=v.s();N(a,0,.7*c,!0);a.lineTo(0,.3*c);O(a,.5*b,.6*c,.5*b,0,1*b,.3*c);a.lineTo(1*b,.7*c);O(a,.5*b,.4*c,.5*b,1*c,0,.7*c);P(a);b=a.o;b.B=new L(0,.49);b.C=new L(1,.75);v.q(a);return b},PrimitiveFromCall:function(a,b,c){var d=a?a.Ac:NaN;a=a?a.Lt:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=v.s();N(e,0,0,!0);e.lineTo(1*b,0);e.lineTo((1- -a)*b,.5*c);e.lineTo(1*b,1*c);e.lineTo(0,1*c);P(e);b=e.o;b.B=new L(d,0);b.C=new L(1-a,1);v.q(e);return b},PrimitiveToCall:function(a,b,c){var d=a?a.Ac:NaN;a=a?a.Lt:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=v.s();N(e,0,0,!0);e.lineTo((1-a)*b,0);e.lineTo(1*b,.5*c);e.lineTo((1-a)*b,1*c);e.lineTo(0,1*c);P(e);b=e.o;b.B=new L(d,0);b.C=new L(1-a,1);v.q(e);return b},Subroutine:"Procedure",Procedure:function(a,b,c){a=a?a.Ac:NaN;isNaN(a)&&(a=.1);var d=v.s();N(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0, +b,0);e.lineTo(.5*b,1*c);P(e);N(e,.5*a*b,a*c,!1);e.lineTo((1-.5*a)*b,a*c);e.Ya(!1);b=e.o;b.B=new L(d/4+.5*a,a);b.C=new L(3*d/4+.5*a,a+.5*d);v.q(e);return b},OffPageConnector:function(a,b,c){a=v.s();N(a,0,0,!0);a.lineTo(.75*b,0);a.lineTo(1*b,.5*c);a.lineTo(.75*b,1*c);a.lineTo(0,1*c);P(a);b=a.o;b.B=tb;b.C=new L(.75,1);v.q(a);return b},Or:function(a,b,c){a=v.s();var d=.5*Xc;N(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a, +(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);N(a,1*b,.5*c,!1);a.lineTo(0,.5*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,0);a.Ya(!1);b=a.o;b.Md=Pi;v.q(a);return b},PaperTape:function(a,b,c){c/=.8;a=v.s();N(a,0,.7*c,!0);a.lineTo(0,.3*c);O(a,.5*b,.6*c,.5*b,0,1*b,.3*c);a.lineTo(1*b,.7*c);O(a,.5*b,.4*c,.5*b,1*c,0,.7*c);P(a);b=a.o;b.B=new L(0,.49);b.C=new L(1,.75);v.q(a);return b},PrimitiveFromCall:function(a,b,c){var d=a?a.Ac:NaN;a=a?a.Mt:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=v.s();N(e,0,0,!0);e.lineTo(1*b,0);e.lineTo((1- +a)*b,.5*c);e.lineTo(1*b,1*c);e.lineTo(0,1*c);P(e);b=e.o;b.B=new L(d,0);b.C=new L(1-a,1);v.q(e);return b},PrimitiveToCall:function(a,b,c){var d=a?a.Ac:NaN;a=a?a.Mt:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=v.s();N(e,0,0,!0);e.lineTo((1-a)*b,0);e.lineTo(1*b,.5*c);e.lineTo((1-a)*b,1*c);e.lineTo(0,1*c);P(e);b=e.o;b.B=new L(d,0);b.C=new L(1-a,1);v.q(e);return b},Subroutine:"Procedure",Procedure:function(a,b,c){a=a?a.Ac:NaN;isNaN(a)&&(a=.1);var d=v.s();N(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0, 1*c);P(d);N(d,(1-a)*b,0,!1);d.lineTo((1-a)*b,1*c);d.moveTo(a*b,0);d.lineTo(a*b,1*c);d.Ya(!1);b=d.o;b.B=new L(a,0);b.C=new L(1-a,1);v.q(d);return b},Process:function(a,b,c){a=a?a.Ac:NaN;isNaN(a)&&(a=.1);var d=v.s();N(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);P(d);N(d,a*b,0,!1);d.lineTo(a*b,1*c);d.Ya(!1);b=d.o;b.B=new L(a,0);b.C=Fb;v.q(d);return b},Sort:function(a,b,c){a=v.s();N(a,.5*b,0,!0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,.5*c);P(a);N(a,0,.5*c,!1);a.lineTo(1*b,.5* c);a.Ya(!1);b=a.o;b.B=new L(.25,.25);b.C=new L(.75,.5);v.q(a);return b},Start:function(a,b,c){a=v.s();N(a,.25*b,0,!0);N(a,.25*b,0,!0);a.arcTo(270,180,.75*b,.5*c,.25*b,.5*c);a.arcTo(90,180,.25*b,.5*c,.25*b,.5*c);N(a,.25*b,0,!1);a.lineTo(.25*b,1*c);a.moveTo(.75*b,0);a.lineTo(.75*b,1*c);a.Ya(!1);b=a.o;b.B=new L(.25,0);b.C=new L(.75,1);v.q(a);return b},Terminator:function(a,b,c){a=v.s();N(a,.25*b,0,!0);a.arcTo(270,180,.75*b,.5*c,.25*b,.5*c);a.arcTo(90,180,.25*b,.5*c,.25*b,.5*c);b=a.o;b.B=new L(.23,0); -b.C=new L(.77,1);v.q(a);return b},TransmittalTape:function(a,b,c){a=a?a.Ac:NaN;isNaN(a)&&(a=.1);var d=v.s();N(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(.75*b,(1-a)*c);d.lineTo(0,(1-a)*c);P(d);b=d.o;b.B=tb;b.C=new L(1,1-a);v.q(d);return b},AndGate:function(a,b,c){a=v.s();var d=.5*Wc;N(a,0,0,!0);a.lineTo(.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);a.lineTo(0,1*c);P(a);b=a.o;b.B=tb;b.C=new L(.55,1);v.q(a);return b},Buffer:function(a,b,c){a=v.s();N(a, -0,0,!0);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);P(a);b=a.o;b.B=new L(0,.25);b.C=new L(.5,.75);v.q(a);return b},Clock:function(a,b,c){a=v.s();var d=.5*Wc;N(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);N(a,1*b,.5*c,!1);a.lineTo(1*b,.5*c);N(a,.8*b,.75*c,!1);a.lineTo(.8*b,.25*c);a.lineTo(.6*b,.25*c);a.lineTo(.6*b,.75*c);a.lineTo(.4*b,.75*c);a.lineTo(.4*b,.25*c);a.lineTo(.2*b,.25*c);a.lineTo(.2* -b,.75*c);a.Ya(!1);b=a.o;b.Od=Pi;v.q(a);return b},Ground:function(a,b,c){a=v.s();N(a,.5*b,0,!1);a.lineTo(.5*b,.4*c);a.moveTo(.2*b,.6*c);a.lineTo(.8*b,.6*c);a.moveTo(.3*b,.8*c);a.lineTo(.7*b,.8*c);a.moveTo(.4*b,1*c);a.lineTo(.6*b,1*c);b=a.o;v.q(a);return b},Inverter:function(a,b,c){a=v.s();var d=.1*Wc;N(a,.8*b,.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.8*b,.5*c);N(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.9+d)*b,.6*c,.9*b,.6*c);O(a,(.9-d)*b,.6*c,.8*b,(.5+d)*c,.8*b,.5*c);O(a,.8*b,(.5-d)*c,(.9-d)*b,.4* -c,.9*b,.4*c);O(a,(.9+d)*b,.4*c,1*b,(.5-d)*c,1*b,.5*c);b=a.o;b.B=new L(0,.25);b.C=new L(.4,.75);v.q(a);return b},NandGate:function(a,b,c){a=v.s();var d=.5*Wc,e=.4*Wc,f=.1*Wc;N(a,.8*b,.5*c,!0);O(a,.8*b,(.5+e)*c,(.4+d)*b,1*c,.4*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.4*b,0);O(a,(.4+d)*b,0,.8*b,(.5-e)*c,.8*b,.5*c);N(a,1*b,.5*c,!0);O(a,1*b,(.5+f)*c,(.9+f)*b,.6*c,.9*b,.6*c);O(a,(.9-f)*b,.6*c,.8*b,(.5+f)*c,.8*b,.5*c);O(a,.8*b,(.5-f)*c,(.9-f)*b,.4*c,.9*b,.4*c);O(a,(.9+f)*b,.4*c,1*b,(.5-f)*c,1*b,.5* -c);b=a.o;b.B=new L(0,.05);b.C=new L(.55,.95);v.q(a);return b},NorGate:function(a,b,c){a=v.s();var d=.5,e=Wc*d,f=0,h=.5;N(a,.8*b,.5*c,!0);O(a,.7*b,(h+e)*c,(f+e)*b,(h+d)*c,0,1*c);O(a,.25*b,.75*c,.25*b,.25*c,0,0);O(a,(f+e)*b,(h-d)*c,.7*b,(h-e)*c,.8*b,.5*c);d=.1;e=.1*Wc;f=.9;h=.5;N(a,(f-d)*b,h*c,!0);O(a,(f-d)*b,(h-e)*c,(f-e)*b,(h-d)*c,f*b,(h-d)*c);O(a,(f+e)*b,(h-d)*c,(f+d)*b,(h-e)*c,(f+d)*b,h*c);O(a,(f+d)*b,(h+e)*c,(f+e)*b,(h+d)*c,f*b,(h+d)*c);O(a,(f-e)*b,(h+d)*c,(f-d)*b,(h+e)*c,(f-d)*b,h*c);b=a.o;b.B= -new L(.2,.25);b.C=new L(.6,.75);v.q(a);return b},OrGate:function(a,b,c){a=v.s();var d=.5*Wc;N(a,0,0,!0);O(a,(0+d+d)*b,0*c,.8*b,(.5-d)*c,1*b,.5*c);O(a,.8*b,(.5+d)*c,(0+d+d)*b,1*c,0,1*c);O(a,.25*b,.75*c,.25*b,.25*c,0,0);P(a);b=a.o;b.B=new L(.2,.25);b.C=new L(.75,.75);v.q(a);return b},XnorGate:function(a,b,c){a=v.s();var d=.5,e=Wc*d,f=.2,h=.5;N(a,.1*b,0,!1);O(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);N(a,.8*b,.5*c,!0);O(a,.7*b,(h+e)*c,(f+e)*b,(h+d)*c,.2*b,1*c);O(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);O(a,(f+e)* -b,(h-d)*c,.7*b,(h-e)*c,.8*b,.5*c);d=.1;e=.1*Wc;f=.9;h=.5;N(a,(f-d)*b,h*c,!0);O(a,(f-d)*b,(h-e)*c,(f-e)*b,(h-d)*c,f*b,(h-d)*c);O(a,(f+e)*b,(h-d)*c,(f+d)*b,(h-e)*c,(f+d)*b,h*c);O(a,(f+d)*b,(h+e)*c,(f+e)*b,(h+d)*c,f*b,(h+d)*c);O(a,(f-e)*b,(h+d)*c,(f-d)*b,(h+e)*c,(f-d)*b,h*c);b=a.o;b.B=new L(.4,.25);b.C=new L(.65,.75);v.q(a);return b},XorGate:function(a,b,c){a=v.s();var d=.5*Wc;N(a,.1*b,0,!1);O(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);N(a,.2*b,0,!0);O(a,(.2+d)*b,0*c,.9*b,(.5-d)*c,1*b,.5*c);O(a,.9*b,(.5+d)* -c,(.2+d)*b,1*c,.2*b,1*c);O(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);P(a);b=a.o;b.B=new L(.4,.25);b.C=new L(.8,.75);v.q(a);return b},Capacitor:function(a,b,c){a=v.s();N(a,0,0,!1);a.lineTo(0,1*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.o;v.q(a);return b},Resistor:function(a,b,c){a=v.s();N(a,0,.5*c,!1);a.lineTo(.1*b,0);a.lineTo(.2*b,1*c);a.lineTo(.3*b,0);a.lineTo(.4*b,1*c);a.lineTo(.5*b,0);a.lineTo(.6*b,1*c);a.lineTo(.7*b,.5*c);b=a.o;v.q(a);return b},Inductor:function(a,b,c){a=v.s();var d=.1*Wc,e=.1;N(a,(e-.5* -d)*b,c,!1);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.3;O(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.5;O(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.7;O(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.9;O(a,(e+.1)*b,0,(e+d)*b,c,(e+.5*d)*b,c);b=a.o;v.q(a);return b},ACvoltageSource:function(a,b,c){a=v.s();var d=.5*Wc;N(a,0*b,.5*c,!1);O(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);O(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+d)* -c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b,.5*c);a.moveTo(.1*b,.5*c);O(a,.5*b,0*c,.5*b,1*c,.9*b,.5*c);b=a.o;b.Od=Pi;v.q(a);return b},DCvoltageSource:function(a,b,c){a=v.s();N(a,0,.75*c,!1);a.lineTo(0,.25*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.o;v.q(a);return b},Diode:function(a,b,c){a=v.s();N(a,1*b,0,!1);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);a.lineTo(1*b,1*c);b=a.o;b.B=new L(0,.25);b.C=new L(.5,.75);v.q(a);return b},Wifi:function(a,b,c){var d=b,e=c; -b*=.38;c*=.6;a=v.s();var f=.8*Wc,h=.8,k=0,l=.5,d=(d-b)/2,e=(e-c)/2;N(a,k*b+d,(l+h)*c+e,!0);O(a,(k-f)*b+d,(l+h)*c+e,(k-h)*b+d,(l+f)*c+e,(k-h)*b+d,l*c+e);O(a,(k-h)*b+d,(l-f)*c+e,(k-f)*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);O(a,k*b+d,(l-h)*c+e,(k-h+.5*f)*b+d,(l-f)*c+e,(k-h+.5*f)*b+d,l*c+e);O(a,(k-h+.5*f)*b+d,(l+f)*c+e,k*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);P(a);f=.4*Wc;h=.4;k=.2;l=.5;N(a,k*b+d,(l+h)*c+e,!0);O(a,(k-f)*b+d,(l+h)*c+e,(k-h)*b+d,(l+f)*c+e,(k-h)*b+d,l*c+e);O(a,(k-h)*b+d,(l-f)*c+e,(k-f)*b+d,(l-h)*c+e,k* -b+d,(l-h)*c+e);O(a,k*b+d,(l-h)*c+e,(k-h+.5*f)*b+d,(l-f)*c+e,(k-h+.5*f)*b+d,l*c+e);O(a,(k-h+.5*f)*b+d,(l+f)*c+e,k*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);P(a);f=.2*Wc;h=.2;l=k=.5;N(a,(k-h)*b+d,l*c+e,!0);O(a,(k-h)*b+d,(l-f)*c+e,(k-f)*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);O(a,(k+f)*b+d,(l-h)*c+e,(k+h)*b+d,(l-f)*c+e,(k+h)*b+d,l*c+e);O(a,(k+h)*b+d,(l+f)*c+e,(k+f)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);O(a,(k-f)*b+d,(l+h)*c+e,(k-h)*b+d,(l+f)*c+e,(k-h)*b+d,l*c+e);f=.4*Wc;h=.4;k=.8;l=.5;N(a,k*b+d,(l-h)*c+e,!0);O(a,(k+f)*b+d,(l- -h)*c+e,(k+h)*b+d,(l-f)*c+e,(k+h)*b+d,l*c+e);O(a,(k+h)*b+d,(l+f)*c+e,(k+f)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);O(a,k*b+d,(l+h)*c+e,(k+h-.5*f)*b+d,(l+f)*c+e,(k+h-.5*f)*b+d,l*c+e);O(a,(k+h-.5*f)*b+d,(l-f)*c+e,k*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);P(a);f=.8*Wc;h=.8;k=1;l=.5;N(a,k*b+d,(l-h)*c+e,!0);O(a,(k+f)*b+d,(l-h)*c+e,(k+h)*b+d,(l-f)*c+e,(k+h)*b+d,l*c+e);O(a,(k+h)*b+d,(l+f)*c+e,(k+f)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);O(a,k*b+d,(l+h)*c+e,(k+h-.5*f)*b+d,(l+f)*c+e,(k+h-.5*f)*b+d,l*c+e);O(a,(k+h-.5*f)*b+d,(l-f)*c+ +b.C=new L(.77,1);v.q(a);return b},TransmittalTape:function(a,b,c){a=a?a.Ac:NaN;isNaN(a)&&(a=.1);var d=v.s();N(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(.75*b,(1-a)*c);d.lineTo(0,(1-a)*c);P(d);b=d.o;b.B=tb;b.C=new L(1,1-a);v.q(d);return b},AndGate:function(a,b,c){a=v.s();var d=.5*Xc;N(a,0,0,!0);a.lineTo(.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);a.lineTo(0,1*c);P(a);b=a.o;b.B=tb;b.C=new L(.55,1);v.q(a);return b},Buffer:function(a,b,c){a=v.s();N(a, +0,0,!0);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);P(a);b=a.o;b.B=new L(0,.25);b.C=new L(.5,.75);v.q(a);return b},Clock:function(a,b,c){a=v.s();var d=.5*Xc;N(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);N(a,1*b,.5*c,!1);a.lineTo(1*b,.5*c);N(a,.8*b,.75*c,!1);a.lineTo(.8*b,.25*c);a.lineTo(.6*b,.25*c);a.lineTo(.6*b,.75*c);a.lineTo(.4*b,.75*c);a.lineTo(.4*b,.25*c);a.lineTo(.2*b,.25*c);a.lineTo(.2* +b,.75*c);a.Ya(!1);b=a.o;b.Md=Pi;v.q(a);return b},Ground:function(a,b,c){a=v.s();N(a,.5*b,0,!1);a.lineTo(.5*b,.4*c);a.moveTo(.2*b,.6*c);a.lineTo(.8*b,.6*c);a.moveTo(.3*b,.8*c);a.lineTo(.7*b,.8*c);a.moveTo(.4*b,1*c);a.lineTo(.6*b,1*c);b=a.o;v.q(a);return b},Inverter:function(a,b,c){a=v.s();var d=.1*Xc;N(a,.8*b,.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.8*b,.5*c);N(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.9+d)*b,.6*c,.9*b,.6*c);O(a,(.9-d)*b,.6*c,.8*b,(.5+d)*c,.8*b,.5*c);O(a,.8*b,(.5-d)*c,(.9-d)*b,.4* +c,.9*b,.4*c);O(a,(.9+d)*b,.4*c,1*b,(.5-d)*c,1*b,.5*c);b=a.o;b.B=new L(0,.25);b.C=new L(.4,.75);v.q(a);return b},NandGate:function(a,b,c){a=v.s();var d=.5*Xc,e=.4*Xc,f=.1*Xc;N(a,.8*b,.5*c,!0);O(a,.8*b,(.5+e)*c,(.4+d)*b,1*c,.4*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.4*b,0);O(a,(.4+d)*b,0,.8*b,(.5-e)*c,.8*b,.5*c);N(a,1*b,.5*c,!0);O(a,1*b,(.5+f)*c,(.9+f)*b,.6*c,.9*b,.6*c);O(a,(.9-f)*b,.6*c,.8*b,(.5+f)*c,.8*b,.5*c);O(a,.8*b,(.5-f)*c,(.9-f)*b,.4*c,.9*b,.4*c);O(a,(.9+f)*b,.4*c,1*b,(.5-f)*c,1*b,.5* +c);b=a.o;b.B=new L(0,.05);b.C=new L(.55,.95);v.q(a);return b},NorGate:function(a,b,c){a=v.s();var d=.5,e=Xc*d,f=0,h=.5;N(a,.8*b,.5*c,!0);O(a,.7*b,(h+e)*c,(f+e)*b,(h+d)*c,0,1*c);O(a,.25*b,.75*c,.25*b,.25*c,0,0);O(a,(f+e)*b,(h-d)*c,.7*b,(h-e)*c,.8*b,.5*c);d=.1;e=.1*Xc;f=.9;h=.5;N(a,(f-d)*b,h*c,!0);O(a,(f-d)*b,(h-e)*c,(f-e)*b,(h-d)*c,f*b,(h-d)*c);O(a,(f+e)*b,(h-d)*c,(f+d)*b,(h-e)*c,(f+d)*b,h*c);O(a,(f+d)*b,(h+e)*c,(f+e)*b,(h+d)*c,f*b,(h+d)*c);O(a,(f-e)*b,(h+d)*c,(f-d)*b,(h+e)*c,(f-d)*b,h*c);b=a.o;b.B= +new L(.2,.25);b.C=new L(.6,.75);v.q(a);return b},OrGate:function(a,b,c){a=v.s();var d=.5*Xc;N(a,0,0,!0);O(a,(0+d+d)*b,0*c,.8*b,(.5-d)*c,1*b,.5*c);O(a,.8*b,(.5+d)*c,(0+d+d)*b,1*c,0,1*c);O(a,.25*b,.75*c,.25*b,.25*c,0,0);P(a);b=a.o;b.B=new L(.2,.25);b.C=new L(.75,.75);v.q(a);return b},XnorGate:function(a,b,c){a=v.s();var d=.5,e=Xc*d,f=.2,h=.5;N(a,.1*b,0,!1);O(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);N(a,.8*b,.5*c,!0);O(a,.7*b,(h+e)*c,(f+e)*b,(h+d)*c,.2*b,1*c);O(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);O(a,(f+e)* +b,(h-d)*c,.7*b,(h-e)*c,.8*b,.5*c);d=.1;e=.1*Xc;f=.9;h=.5;N(a,(f-d)*b,h*c,!0);O(a,(f-d)*b,(h-e)*c,(f-e)*b,(h-d)*c,f*b,(h-d)*c);O(a,(f+e)*b,(h-d)*c,(f+d)*b,(h-e)*c,(f+d)*b,h*c);O(a,(f+d)*b,(h+e)*c,(f+e)*b,(h+d)*c,f*b,(h+d)*c);O(a,(f-e)*b,(h+d)*c,(f-d)*b,(h+e)*c,(f-d)*b,h*c);b=a.o;b.B=new L(.4,.25);b.C=new L(.65,.75);v.q(a);return b},XorGate:function(a,b,c){a=v.s();var d=.5*Xc;N(a,.1*b,0,!1);O(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);N(a,.2*b,0,!0);O(a,(.2+d)*b,0*c,.9*b,(.5-d)*c,1*b,.5*c);O(a,.9*b,(.5+d)* +c,(.2+d)*b,1*c,.2*b,1*c);O(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);P(a);b=a.o;b.B=new L(.4,.25);b.C=new L(.8,.75);v.q(a);return b},Capacitor:function(a,b,c){a=v.s();N(a,0,0,!1);a.lineTo(0,1*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.o;v.q(a);return b},Resistor:function(a,b,c){a=v.s();N(a,0,.5*c,!1);a.lineTo(.1*b,0);a.lineTo(.2*b,1*c);a.lineTo(.3*b,0);a.lineTo(.4*b,1*c);a.lineTo(.5*b,0);a.lineTo(.6*b,1*c);a.lineTo(.7*b,.5*c);b=a.o;v.q(a);return b},Inductor:function(a,b,c){a=v.s();var d=.1*Xc,e=.1;N(a,(e-.5* +d)*b,c,!1);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.3;O(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.5;O(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.7;O(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.9;O(a,(e+.1)*b,0,(e+d)*b,c,(e+.5*d)*b,c);b=a.o;v.q(a);return b},ACvoltageSource:function(a,b,c){a=v.s();var d=.5*Xc;N(a,0*b,.5*c,!1);O(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);O(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+d)* +c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b,.5*c);a.moveTo(.1*b,.5*c);O(a,.5*b,0*c,.5*b,1*c,.9*b,.5*c);b=a.o;b.Md=Pi;v.q(a);return b},DCvoltageSource:function(a,b,c){a=v.s();N(a,0,.75*c,!1);a.lineTo(0,.25*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.o;v.q(a);return b},Diode:function(a,b,c){a=v.s();N(a,1*b,0,!1);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);a.lineTo(1*b,1*c);b=a.o;b.B=new L(0,.25);b.C=new L(.5,.75);v.q(a);return b},Wifi:function(a,b,c){var d=b,e=c; +b*=.38;c*=.6;a=v.s();var f=.8*Xc,h=.8,k=0,l=.5,d=(d-b)/2,e=(e-c)/2;N(a,k*b+d,(l+h)*c+e,!0);O(a,(k-f)*b+d,(l+h)*c+e,(k-h)*b+d,(l+f)*c+e,(k-h)*b+d,l*c+e);O(a,(k-h)*b+d,(l-f)*c+e,(k-f)*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);O(a,k*b+d,(l-h)*c+e,(k-h+.5*f)*b+d,(l-f)*c+e,(k-h+.5*f)*b+d,l*c+e);O(a,(k-h+.5*f)*b+d,(l+f)*c+e,k*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);P(a);f=.4*Xc;h=.4;k=.2;l=.5;N(a,k*b+d,(l+h)*c+e,!0);O(a,(k-f)*b+d,(l+h)*c+e,(k-h)*b+d,(l+f)*c+e,(k-h)*b+d,l*c+e);O(a,(k-h)*b+d,(l-f)*c+e,(k-f)*b+d,(l-h)*c+e,k* +b+d,(l-h)*c+e);O(a,k*b+d,(l-h)*c+e,(k-h+.5*f)*b+d,(l-f)*c+e,(k-h+.5*f)*b+d,l*c+e);O(a,(k-h+.5*f)*b+d,(l+f)*c+e,k*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);P(a);f=.2*Xc;h=.2;l=k=.5;N(a,(k-h)*b+d,l*c+e,!0);O(a,(k-h)*b+d,(l-f)*c+e,(k-f)*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);O(a,(k+f)*b+d,(l-h)*c+e,(k+h)*b+d,(l-f)*c+e,(k+h)*b+d,l*c+e);O(a,(k+h)*b+d,(l+f)*c+e,(k+f)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);O(a,(k-f)*b+d,(l+h)*c+e,(k-h)*b+d,(l+f)*c+e,(k-h)*b+d,l*c+e);f=.4*Xc;h=.4;k=.8;l=.5;N(a,k*b+d,(l-h)*c+e,!0);O(a,(k+f)*b+d,(l- +h)*c+e,(k+h)*b+d,(l-f)*c+e,(k+h)*b+d,l*c+e);O(a,(k+h)*b+d,(l+f)*c+e,(k+f)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);O(a,k*b+d,(l+h)*c+e,(k+h-.5*f)*b+d,(l+f)*c+e,(k+h-.5*f)*b+d,l*c+e);O(a,(k+h-.5*f)*b+d,(l-f)*c+e,k*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);P(a);f=.8*Xc;h=.8;k=1;l=.5;N(a,k*b+d,(l-h)*c+e,!0);O(a,(k+f)*b+d,(l-h)*c+e,(k+h)*b+d,(l-f)*c+e,(k+h)*b+d,l*c+e);O(a,(k+h)*b+d,(l+f)*c+e,(k+f)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);O(a,k*b+d,(l+h)*c+e,(k+h-.5*f)*b+d,(l+f)*c+e,(k+h-.5*f)*b+d,l*c+e);O(a,(k+h-.5*f)*b+d,(l-f)*c+ e,k*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);P(a);b=a.o;v.q(a);return b},Email:function(a,b,c){a=v.s();N(a,0,0,!0);a.lineTo(1*b,0);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);P(a);N(a,0,0,!1);a.lineTo(.5*b,.6*c);a.lineTo(1*b,0);a.moveTo(0,1*c);a.lineTo(.45*b,.54*c);a.moveTo(1*b,1*c);a.lineTo(.55*b,.54*c);a.Ya(!1);b=a.o;v.q(a);return b},Ethernet:function(a,b,c){a=v.s();N(a,.35*b,0,!0);a.lineTo(.65*b,0);a.lineTo(.65*b,.4*c);a.lineTo(.35*b,.4*c);a.lineTo(.35*b,0);P(a);N(a,.1*b,1*c,!0,!0);a.lineTo(.4*b,1*c); -a.lineTo(.4*b,.6*c);a.lineTo(.1*b,.6*c);a.lineTo(.1*b,1*c);P(a);N(a,.6*b,1*c,!0,!0);a.lineTo(.9*b,1*c);a.lineTo(.9*b,.6*c);a.lineTo(.6*b,.6*c);a.lineTo(.6*b,1*c);P(a);N(a,0,.5*c,!1);a.lineTo(1*b,.5*c);a.moveTo(.5*b,.5*c);a.lineTo(.5*b,.4*c);a.moveTo(.75*b,.5*c);a.lineTo(.75*b,.6*c);a.moveTo(.25*b,.5*c);a.lineTo(.25*b,.6*c);a.Ya(!1);b=a.o;v.q(a);return b},Power:function(a,b,c){a=v.s();var d=.4*Wc,e=.4,f=v.L(),h=v.L(),k=v.L(),l=v.L();Sd(.5,.5-e,.5+d,.5-e,.5+e,.5-d,.5+e,.5,.5,f,f,h,k,l);var m=v.Mb(h.x, -h.y);N(a,h.x*b,h.y*c,!0);O(a,k.x*b,k.y*c,l.x*b,l.y*c,(.5+e)*b,.5*c);O(a,(.5+e)*b,(.5+d)*c,(.5+d)*b,(.5+e)*c,.5*b,(.5+e)*c);O(a,(.5-d)*b,(.5+e)*c,(.5-e)*b,(.5+d)*c,(.5-e)*b,.5*c);Sd(.5-e,.5,.5-e,.5-d,.5-d,.5-e,.5,.5-e,.5,k,l,h,f,f);O(a,k.x*b,k.y*c,l.x*b,l.y*c,h.x*b,h.y*c);d=.3*Wc;e=.3;Sd(.5-e,.5,.5-e,.5-d,.5-d,.5-e,.5,.5-e,.5,k,l,h,f,f);a.lineTo(h.x*b,h.y*c);O(a,l.x*b,l.y*c,k.x*b,k.y*c,(.5-e)*b,.5*c);O(a,(.5-e)*b,(.5+d)*c,(.5-d)*b,(.5+e)*c,.5*b,(.5+e)*c);O(a,(.5+d)*b,(.5+e)*c,(.5+e)*b,(.5+d)*c,(.5+ -e)*b,.5*c);Sd(.5,.5-e,.5+d,.5-e,.5+e,.5-d,.5+e,.5,.5,f,f,h,k,l);O(a,l.x*b,l.y*c,k.x*b,k.y*c,h.x*b,h.y*c);P(a);N(a,.45*b,0,!0);a.lineTo(.45*b,.5*c);a.lineTo(.55*b,.5*c);a.lineTo(.55*b,0);P(a);v.v(f);v.v(h);v.v(k);v.v(l);v.v(m);b=a.o;b.B=new L(.25,.55);b.C=new L(.75,.8);v.q(a);return b},Fallout:function(a,b,c){a=v.s();var d=.5*Wc;N(a,0*b,.5*c,!0);O(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);O(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b, -.5*c);var e=d=0;N(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);d=.4;e=0;P(a);N(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);d=.2;e=-.3;P(a);N(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);P(a);b=a.o;b.Od=Pi;v.q(a);return b},IrritationHazard:function(a,b,c){a=v.s();N(a,.2*b,0*c,!0);a.lineTo(.5*b,.3*c);a.lineTo(.8* +a.lineTo(.4*b,.6*c);a.lineTo(.1*b,.6*c);a.lineTo(.1*b,1*c);P(a);N(a,.6*b,1*c,!0,!0);a.lineTo(.9*b,1*c);a.lineTo(.9*b,.6*c);a.lineTo(.6*b,.6*c);a.lineTo(.6*b,1*c);P(a);N(a,0,.5*c,!1);a.lineTo(1*b,.5*c);a.moveTo(.5*b,.5*c);a.lineTo(.5*b,.4*c);a.moveTo(.75*b,.5*c);a.lineTo(.75*b,.6*c);a.moveTo(.25*b,.5*c);a.lineTo(.25*b,.6*c);a.Ya(!1);b=a.o;v.q(a);return b},Power:function(a,b,c){a=v.s();var d=.4*Xc,e=.4,f=v.L(),h=v.L(),k=v.L(),l=v.L();Td(.5,.5-e,.5+d,.5-e,.5+e,.5-d,.5+e,.5,.5,f,f,h,k,l);var m=v.Mb(h.x, +h.y);N(a,h.x*b,h.y*c,!0);O(a,k.x*b,k.y*c,l.x*b,l.y*c,(.5+e)*b,.5*c);O(a,(.5+e)*b,(.5+d)*c,(.5+d)*b,(.5+e)*c,.5*b,(.5+e)*c);O(a,(.5-d)*b,(.5+e)*c,(.5-e)*b,(.5+d)*c,(.5-e)*b,.5*c);Td(.5-e,.5,.5-e,.5-d,.5-d,.5-e,.5,.5-e,.5,k,l,h,f,f);O(a,k.x*b,k.y*c,l.x*b,l.y*c,h.x*b,h.y*c);d=.3*Xc;e=.3;Td(.5-e,.5,.5-e,.5-d,.5-d,.5-e,.5,.5-e,.5,k,l,h,f,f);a.lineTo(h.x*b,h.y*c);O(a,l.x*b,l.y*c,k.x*b,k.y*c,(.5-e)*b,.5*c);O(a,(.5-e)*b,(.5+d)*c,(.5-d)*b,(.5+e)*c,.5*b,(.5+e)*c);O(a,(.5+d)*b,(.5+e)*c,(.5+e)*b,(.5+d)*c,(.5+ +e)*b,.5*c);Td(.5,.5-e,.5+d,.5-e,.5+e,.5-d,.5+e,.5,.5,f,f,h,k,l);O(a,l.x*b,l.y*c,k.x*b,k.y*c,h.x*b,h.y*c);P(a);N(a,.45*b,0,!0);a.lineTo(.45*b,.5*c);a.lineTo(.55*b,.5*c);a.lineTo(.55*b,0);P(a);v.v(f);v.v(h);v.v(k);v.v(l);v.v(m);b=a.o;b.B=new L(.25,.55);b.C=new L(.75,.8);v.q(a);return b},Fallout:function(a,b,c){a=v.s();var d=.5*Xc;N(a,0*b,.5*c,!0);O(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);O(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b, +.5*c);var e=d=0;N(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);d=.4;e=0;P(a);N(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);d=.2;e=-.3;P(a);N(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);P(a);b=a.o;b.Md=Pi;v.q(a);return b},IrritationHazard:function(a,b,c){a=v.s();N(a,.2*b,0*c,!0);a.lineTo(.5*b,.3*c);a.lineTo(.8* b,0*c);a.lineTo(1*b,.2*c);a.lineTo(.7*b,.5*c);a.lineTo(1*b,.8*c);a.lineTo(.8*b,1*c);a.lineTo(.5*b,.7*c);a.lineTo(.2*b,1*c);a.lineTo(0*b,.8*c);a.lineTo(.3*b,.5*c);a.lineTo(0*b,.2*c);P(a);b=a.o;b.B=new L(.3,.3);b.C=new L(.7,.7);v.q(a);return b},ElectricalHazard:function(a,b,c){a=v.s();N(a,.37*b,0*c,!0);a.lineTo(.5*b,.11*c);a.lineTo(.77*b,.04*c);a.lineTo(.33*b,.49*c);a.lineTo(1*b,.37*c);a.lineTo(.63*b,.86*c);a.lineTo(.77*b,.91*c);a.lineTo(.34*b,1*c);a.lineTo(.34*b,.78*c);a.lineTo(.44*b,.8*c);a.lineTo(.65* b,.56*c);a.lineTo(0*b,.68*c);P(a);b=a.o;v.q(a);return b},FireHazard:function(a,b,c){a=v.s();N(a,.1*b,1*c,!0);O(a,-.25*b,.63*c,.45*b,.44*c,.29*b,0*c);O(a,.48*b,.17*c,.54*b,.35*c,.51*b,.42*c);O(a,.59*b,.29*c,.58*b,.28*c,.59*b,.18*c);O(a,.8*b,.34*c,.88*b,.43*c,.75*b,.6*c);O(a,.87*b,.48*c,.88*b,.43*c,.88*b,.31*c);O(a,1.17*b,.76*c,.82*b,.8*c,.9*b,1*c);P(a);b=a.o;b.B=new L(.05,.645);b.C=new L(.884,.908);v.q(a);return b},BpmnActivityLoop:function(a,b,c){a=v.s();var d=4*(Math.SQRT2-1)/3*.5;N(a,.65*b,1*c, !1);O(a,(1-d+0)*b,1*c,1*b,(.5+d+0)*c,1*b,.5*c);O(a,1*b,(.5-d+0)*c,(.5+d+0)*b,0*c,.5*b,0*c);O(a,(.5-d+0)*b,0*c,0*b,(.5-d+0)*c,0*b,.5*c);O(a,0*b,(.5+d+0)*c,(.5-d+0)*b,1*c,.35*b,.98*c);a.moveTo(.25*b,.8*c);a.lineTo(.35*b,1*c);a.lineTo(.1*b,1*c);b=a.o;v.q(a);return b},BpmnActivityParallel:function(a,b,c){a=v.s();N(a,0,0,!1);a.lineTo(0,1*c);a.moveTo(.5*b,0);a.lineTo(.5*b,1*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.o;v.q(a);return b},BpmnActivitySequential:function(a,b,c){a=v.s();N(a,0,0,!1);a.lineTo(1* @@ -1400,7 +1402,7 @@ b,c){a=v.s();N(a,0,.2*c,!0);a.lineTo(1*b,.2*c);a.lineTo(1*b,.8*c);a.lineTo(0,.8* BpmnTaskUser:function(a,b,c){a=v.s();N(a,0,0,!1);N(a,.335*b,(1-.555)*c,!0);a.lineTo(.335*b,.595*c);a.lineTo(.665*b,.595*c);a.lineTo(.665*b,(1-.555)*c);O(a,.88*b,.46*c,.98*b,.54*c,1*b,.68*c);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.68*c);O(a,.02*b,.54*c,.12*b,.46*c,.335*b,(1-.555)*c);a.lineTo(.365*b,.405*c);var d=.5-.285,e=Math.PI/4,f=4*(1-Math.cos(e))/(3*Math.sin(e)),e=f*d,f=f*d;O(a,(.5-(e+d)/2)*b,(d+(d+f)/2)*c,(.5-d)*b,(d+f)*c,(.5-d)*b,d*c);O(a,(.5-d)*b,(d-f)*c,(.5-e)*b,(d-d)*c,.5*b,(d-d)*c); O(a,(.5+e)*b,(d-d)*c,(.5+d)*b,(d-f)*c,(.5+d)*b,d*c);O(a,(.5+d)*b,(d+f)*c,(.5+(e+d)/2)*b,(d+(d+f)/2)*c,.635*b,.405*c);a.lineTo(.635*b,.405*c);a.lineTo(.665*b,(1-.555)*c);a.lineTo(.665*b,.595*c);a.lineTo(.335*b,.595*c);N(a,.2*b,1*c,!1);a.lineTo(.2*b,.8*c);N(a,.8*b,1*c,!1);a.lineTo(.8*b,.8*c);b=a.o;v.q(a);return b},BpmnEventConditional:function(a,b,c){a=v.s();N(a,.1*b,0,!0);a.lineTo(.9*b,0);a.lineTo(.9*b,1*c);a.lineTo(.1*b,1*c);P(a);N(a,.2*b,.2*c,!1);a.lineTo(.8*b,.2*c);a.moveTo(.2*b,.4*c);a.lineTo(.8* b,.4*c);a.moveTo(.2*b,.6*c);a.lineTo(.8*b,.6*c);a.moveTo(.2*b,.8*c);a.lineTo(.8*b,.8*c);a.Ya(!1);b=a.o;v.q(a);return b},BpmnEventError:function(a,b,c){a=v.s();N(a,0,1*c,!0);a.lineTo(.33*b,0);a.lineTo(.66*b,.5*c);a.lineTo(1*b,0);a.lineTo(.66*b,1*c);a.lineTo(.33*b,.5*c);P(a);b=a.o;v.q(a);return b},BpmnEventEscalation:function(a,b,c){a=v.s();N(a,0,0,!1);N(a,1*b,1*c,!1);N(a,.1*b,1*c,!0);a.lineTo(.5*b,0);a.lineTo(.9*b,1*c);a.lineTo(.5*b,.5*c);P(a);b=a.o;v.q(a);return b},BpmnEventTimer:function(a,b,c){a= -v.s();var d=.5*Wc;N(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);N(a,.5*b,0,!1);a.lineTo(.5*b,.15*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,.85*c);a.moveTo(0,.5*c);a.lineTo(.15*b,.5*c);a.moveTo(1*b,.5*c);a.lineTo(.85*b,.5*c);a.moveTo(.5*b,.5*c);a.lineTo(.58*b,.1*c);a.moveTo(.5*b,.5*c);a.lineTo(.78*b,.54*c);a.Ya(!1);b=a.o;b.Od=Pi;v.q(a);return b}},Wo;for(Wo in ko)ko[Wo.toLowerCase()]=Wo; +v.s();var d=.5*Xc;N(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);N(a,.5*b,0,!1);a.lineTo(.5*b,.15*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,.85*c);a.moveTo(0,.5*c);a.lineTo(.15*b,.5*c);a.moveTo(1*b,.5*c);a.lineTo(.85*b,.5*c);a.moveTo(.5*b,.5*c);a.lineTo(.58*b,.1*c);a.moveTo(.5*b,.5*c);a.lineTo(.78*b,.54*c);a.Ya(!1);b=a.o;b.Md=Pi;v.q(a);return b}},Wo;for(Wo in ko)ko[Wo.toLowerCase()]=Wo; var Xo={"":"",Standard:"F1 m 0,0 l 8,4 -8,4 2,-4 z",Backward:"F1 m 8,0 l -2,4 2,4 -8,-4 z",Triangle:"F1 m 0,0 l 8,4.62 -8,4.62 z",BackwardTriangle:"F1 m 8,4 l 0,4 -8,-4 8,-4 0,4 z",Boomerang:"F1 m 0,0 l 8,4 -8,4 4,-4 -4,-4 z",BackwardBoomerang:"F1 m 8,0 l -8,4 8,4 -4,-4 4,-4 z",SidewaysV:"m 0,0 l 8,4 -8,4 0,-1 6,-3 -6,-3 0,-1 z",BackwardV:"m 8,0 l -8,4 8,4 0,-1 -6,-3 6,-3 0,-1 z",OpenTriangle:"m 0,0 l 8,4 -8,4",BackwardOpenTriangle:"m 8,0 l -8,4 8,4",OpenTriangleLine:"m 0,0 l 8,4 -8,4 m 8.5,0 l 0,-8", BackwardOpenTriangleLine:"m 8,0 l -8,4 8,4 m -8.5,0 l 0,-8",OpenTriangleTop:"m 0,0 l 8,4 m 0,4",BackwardOpenTriangleTop:"m 8,0 l -8,4 m 0,4",OpenTriangleBottom:"m 0,8 l 8,-4",BackwardOpenTriangleBottom:"m 0,4 l 8,4",HalfTriangleTop:"F1 m 0,0 l 0,4 8,0 z m 0,8",BackwardHalfTriangleTop:"F1 m 8,0 l 0,4 -8,0 z m 0,8",HalfTriangleBottom:"F1 m 0,4 l 0,4 8,-4 z",BackwardHalfTriangleBottom:"F1 m 8,4 l 0,4 -8,-4 z",ForwardSemiCircle:"m 4,0 b 270 180 0 4 4",BackwardSemiCircle:"m 4,8 b 90 180 0 -4 4",Feather:"m 0,0 l 3,4 -3,4", BackwardFeather:"m 3,0 l -3,4 3,4",DoubleFeathers:"m 0,0 l 3,4 -3,4 m 3,-8 l 3,4 -3,4",BackwardDoubleFeathers:"m 3,0 l -3,4 3,4 m 3,-8 l -3,4 3,4",TripleFeathers:"m 0,0 l 3,4 -3,4 m 3,-8 l 3,4 -3,4 m 3,-8 l 3,4 -3,4",BackwardTripleFeathers:"m 3,0 l -3,4 3,4 m 3,-8 l -3,4 3,4 m 3,-8 l -3,4 3,4",ForwardSlash:"m 0,8 l 5,-8",BackSlash:"m 0,0 l 5,8",DoubleForwardSlash:"m 0,8 l 4,-8 m -2,8 l 4,-8",DoubleBackSlash:"m 0,0 l 4,8 m -2,-8 l 4,8",TripleForwardSlash:"m 0,8 l 4,-8 m -2,8 l 4,-8 m -2,8 l 4,-8", @@ -1410,535 +1412,535 @@ DoubleTriangle:"F1 m 0,0 l 4,4 -4,4 0,-8 z m 4,0 l 4,4 -4,4 0,-8 z",BigEndArrow TriangleLine:"F1 m 8,4 l -8,-4 0,8 8,-4 z m 0.5,4 l 0,-8",CircleEndedArrow:"F1 m 10,4 l -2,-3 0,2 -2,0 0,2 2,0 0,2 2,-3 z m -4,0 b 0 360 -3 0 3 z",DynamicWidthArrow:"F1 m 0,3 l 2,0 2,-1 2,-2 2,4 -2,4 -2,-2 -2,-1 -2,0 0,-2 z",EquilibriumArrow:"m 0,3 l 8,0 -3,-3 m 3,5 l -8,0 3,3",FastForward:"F1 m 0,0 l 3.5,4 0,-4 3.5,4 0,-4 1,0 0,8 -1,0 0,-4 -3.5,4 0,-4 -3.5,4 0,-8 z",Kite:"F1 m 0,4 l 2,-4 6,4 -6,4 -2,-4 z",HalfArrowTop:"F1 m 0,0 l 4,4 4,0 -8,-4 z m 0,8",HalfArrowBottom:"F1 m 0,8 l 4,-4 4,0 -8,4 z", OpposingDirectionDoubleArrow:"F1 m 0,4 l 2,-4 0,2 4,0 0,-2 2,4 -2,4 0,-2 -4,0 0,2 -2,-4 z",PartialDoubleTriangle:"F1 m 0,0 4,3 0,-3 4,4 -4,4 0,-3 -4,3 0,-8 z",LineCircle:"F1 m 0,0 l 0,8 m 7 -4 b 0 360 -3 0 3 z",DoubleLineCircle:"F1 m 0,0 l 0,8 m 2,-8 l 0,8 m 7 -4 b 0 360 -3 0 3 z",TripleLineCircle:"F1 m 0,0 l 0,8 m 2,-8 l 0,8 m 2,-8 l 0,8 m 7 -4 b 0 360 -3 0 3 z",CircleLine:"F1 m 6 4 b 0 360 -3 0 3 z m 1,-4 l 0,8",DiamondCircle:"F1 m 8,4 l -4,4 -4,-4 4,-4 4,4 m 8,0 b 0 360 -4 0 4 z",PlusCircle:"F1 m 8,4 b 0 360 -4 0 4 l -8 0 z m -4 -4 l 0 8", OpenRightTriangleTop:"m 8,0 l 0,4 -8,0 m 0,4",OpenRightTriangleBottom:"m 8,8 l 0,-4 -8,0",Line:"m 0,0 l 0,8",DoubleLine:"m 0,0 l 0,8 m 2,0 l 0,-8",TripleLine:"m 0,0 l 0,8 m 2,0 l 0,-8 m 2,0 l 0,8",PentagonArrow:"F1 m 8,4 l -4,-4 -4,0 0,8 4,0 4,-4 z"}; -function oo(a){if(null!==Xo){for(var b in Xo){var c=bf(Xo[b],!1);Gd[b]=c;b.toLowerCase()!==b&&(Gd[b.toLowerCase()]=b)}Xo=null}b=Gd[a];if(void 0===b){b=a.toLowerCase();if("none"===b)return"None";b=Gd[b]}return"string"===typeof b?b:b instanceof re?a:null} -function R(a){0===arguments.length?D.call(this):D.call(this,a);this.Q=311807;this.Ik=this.fi="";this.Xr=this.Ur=this.gs=this.dr=null;this.js="";this.di=this.hs=this.rm=null;this.Wr="";this.po=null;this.Vr=Bd;this.Yr="";this.qo=null;this.me="";this.kv=this.gq=this.uk=null;this.yi=(new y(NaN,NaN)).freeze();this.ir="";this.Nk=null;this.jr=tb;this.sr=hd;this.lr=id;this.zq=null;this.er=Yo;this.tm=gd;this.sm="gray";this.pg=4;this.YB=-1;this.Ls=NaN;this.xF=new B;this.fm=null;this.yj=NaN}v.Ia(R,D); -v.ea("Part",R);R.prototype.cloneProtected=function(a){D.prototype.cloneProtected.call(this,a);a.Q=this.Q&-4097|49152;a.fi=this.fi;a.Ik=this.Ik;a.dr=this.dr;a.gs=this.gs;a.Ur=this.Ur;a.Xr=this.Xr;a.js=this.js;a.hs=this.hs;a.di=null;a.Wr=this.Wr;a.Vr=this.Vr.R();a.Yr=this.Yr;a.me=this.me;a.gq=this.gq;a.yi.assign(this.yi);a.ir=this.ir;a.jr=this.jr.R();a.sr=this.sr.R();a.lr=this.lr.R();a.zq=this.zq;a.er=this.er;a.tm=this.tm.R();a.sm=this.sm;a.pg=this.pg;a.Ls=this.Ls}; -R.prototype.Xh=function(a){D.prototype.Xh.call(this,a);a.ql();a.rm=null;a.po=null;a.qo=null;a.Nk=null;a.fm=null};R.prototype.toString=function(){var a=v.af(Object.getPrototypeOf(this))+"#"+v.md(this);null!==this.data&&(a+="("+Ef(this.data)+")");return a};R.LayoutNone=0;var ml;R.LayoutAdded=ml=1;var ul;R.LayoutRemoved=ul=2;R.LayoutShown=4;R.LayoutHidden=8;R.LayoutNodeSized=16;var Yl;R.LayoutGroupLayout=Yl=32;R.LayoutNodeReplaced=64;var Yo;R.LayoutStandard=Yo=ml|ul|28|Yl|64;R.LayoutAll=16777215; -R.prototype.an=function(a,b,c,d,e,f,h){var k=this.g;null!==k&&(a===Cf&&"elements"===b?e instanceof D?nl(e,function(a){pl(k,a);ol(k,a)}):e instanceof kk&&Kl(k,e):a===Df&&"elements"===b&&(e instanceof D?nl(e,function(a){tl(k,a);sl(k,a)}):e instanceof kk&&Ll(k,e)),k.Lc(a,b,c,d,e,f,h))};R.prototype.updateTargetBindings=R.prototype.Hb=function(a){D.prototype.Hb.call(this,a);if(null!==this.data){a=this.ya.n;for(var b=a.length,c=0;ch&&a.y>k&&a.righth&&b.y>k&&b.right=c.LH)){this.Q^=4096;var d=!1;if(null!==c){d=c.tb;c.tb=!0;var e=c.selection;e.Oa();a?e.add(this):e.remove(this);e.freeze()}this.h("isSelected",b,a);this.Qd();a=this.uI;null!==a&&a(this);null!==c&&(c.ve(),c.tb=d)}}}); -v.defineProperty(R,{gh:"isHighlighted"},function(){return 0!==(this.Q&524288)},function(a){var b=0!==(this.Q&524288);if(b!==a){this.Q^=524288;var c=this.g;null!==c&&(c=c.Qm,c.Oa(),a?c.add(this):c.remove(this),c.freeze());this.h("isHighlighted",b,a);this.pa()}});v.defineProperty(R,{vl:"isShadowed"},function(){return 0!==(this.Q&8192)},function(a){var b=0!==(this.Q&8192);b!==a&&(this.Q^=8192,this.h("isShadowed",b,a),this.pa())});function fl(a){return 0!==(a.Q&32768)} -function $o(a,b){a.Q=b?a.Q|32768:a.Q&-32769}function Hm(a,b){a.Q=b?a.Q|65536:a.Q&-65537}function Wj(a){return 0!==(a.Q&131072)}R.prototype.zf=function(a){this.Q=a?this.Q|131072:this.Q&-131073};function gp(a,b){a.Q=b?a.Q|1048576:a.Q&-1048577}v.defineProperty(R,{YD:"isAnimated"},function(){return 0!==(this.Q&262144)},function(a){var b=0!==(this.Q&262144);b!==a&&(this.Q^=262144,this.h("isAnimated",b,a))}); -v.defineProperty(R,{hA:"selectionObjectName"},function(){return this.js},function(a){var b=this.js;b!==a&&(this.js=a,this.rm=null,this.h("selectionObjectName",b,a))});v.defineProperty(R,{tI:"selectionAdornmentTemplate"},function(){return this.gs},function(a){var b=this.gs;b!==a&&(this instanceof W&&(a.type=xi),this.gs=a,this.h("selectionAdornmentTemplate",b,a))}); -v.u(R,{Vt:"selectionObject"},function(){if(null===this.rm){var a=this.hA;null!==a&&""!==a?(a=this.de(a),this.rm=null!==a?a:this):this instanceof W?(a=this.path,this.rm=null!==a?a:this):this.rm=this}return this.rm});v.defineProperty(R,{uI:"selectionChanged"},function(){return this.hs},function(a){var b=this.hs;b!==a&&(null!==a&&v.j(a,"function",R,"selectionChanged"),this.hs=a,this.h("selectionChanged",b,a))}); -v.defineProperty(R,{GE:"resizeAdornmentTemplate"},function(){return this.Ur},function(a){var b=this.Ur;b!==a&&(this.Ur=a,this.h("resizeAdornmentTemplate",b,a))});v.defineProperty(R,{IE:"resizeObjectName"},function(){return this.Wr},function(a){var b=this.Wr;b!==a&&(this.Wr=a,this.po=null,this.h("resizeObjectName",b,a))});v.u(R,{HE:"resizeObject"},function(){if(null===this.po){var a=this.IE;null!==a&&""!==a?(a=this.de(a),this.po=null!==a?a:this):this.po=this}return this.po}); -v.defineProperty(R,{jI:"resizeCellSize"},function(){return this.Vr},function(a){var b=this.Vr;b.K(a)||(this.Vr=a=a.R(),this.h("resizeCellSize",b,a))});v.defineProperty(R,{mI:"rotateAdornmentTemplate"},function(){return this.Xr},function(a){var b=this.Xr;b!==a&&(this.Xr=a,this.h("rotateAdornmentTemplate",b,a))});v.defineProperty(R,{nI:"rotateObjectName"},function(){return this.Yr},function(a){var b=this.Yr;b!==a&&(this.Yr=a,this.qo=null,this.h("rotateObjectName",b,a))}); -v.u(R,{KE:"rotateObject"},function(){if(null===this.qo){var a=this.nI;null!==a&&""!==a?(a=this.de(a),this.qo=null!==a?a:this):this.qo=this}return this.qo});v.defineProperty(R,{text:"text"},function(){return this.me},function(a){var b=this.me;b!==a&&(this.me=a,this.h("text",b,a))}); -v.defineProperty(R,{Sa:"containingGroup"},function(){return this.uk},function(a){if(this.Rd()){var b=this.uk;if(b!==a){null===a||this!==a&&!a.Zh(this)||(this===a&&v.k("Cannot make a Group a member of itself: "+this.toString()),v.k("Cannot make a Group indirectly contain itself: "+this.toString()+" already contains "+a.toString()));this.H(ul);var c=this.g;null!==b?hp(b,this):this instanceof V&&null!==c&&c.Uk.remove(this);this.uk=a;null!==a?ip(a,this):this instanceof V&&null!==c&&c.Uk.add(this);this.H(ml); -if(null!==c){var d=this.data,e=c.ba;null!==d&&e instanceof Q&&e.kx(d,e.gb(null!==a?a.data:null))}d=this.rD;null!==d&&(e=!0,null!==c&&(e=c.Qa,c.Qa=!0),d(this,b,a),null!==c&&(c.Qa=e));if(this instanceof V)for(c=new J(R),Sg(c,this,!0,0,!0),c=c.i;c.next();)if(d=c.value,d instanceof S)for(d=d.ue;d.next();)Nl(d.value);if(this instanceof S)for(d=this.ue;d.next();)Nl(d.value);this.h("containingGroup",b,a);null!==a&&(b=a.layer,null!==b&&bk(b,-1,a))}}else v.k("cannot set the Part.containingGroup of a Link or Adornment")}); -g=R.prototype;g.ql=function(){var a=this.Sa;null!==a&&(a.P(),null!==a.Gb&&a.Gb.P(),a.cf())};g.pa=function(){var a=this.g;null!==a&&!el(this)&&!fl(this)&&this.isVisible()&&this.mc.G()&&a.pa(ak(this,this.mc))};g.pt=function(a){a||(a=this.uk,null!==a&&ip(a,this))};g.qt=function(a){a||(a=this.uk,null!==a&&hp(a,this))};g.Lm=function(){var a=this.data;if(null!==a){var b=this.g;null!==b&&(b=b.ba,null!==b&&b.bx(a))}}; -v.defineProperty(R,{rD:"containingGroupChanged"},function(){return this.gq},function(a){var b=this.gq;b!==a&&(null!==a&&v.j(a,"function",R,"containingGroupChanged"),this.gq=a,this.h("containingGroupChanged",b,a))});R.prototype.findSubGraphLevel=function(){return jp(this,this)};function jp(a,b){var c=b.Sa;return null!==c?1+jp(a,c):b instanceof S&&(c=b.ge,null!==c)?jp(a,c):0}R.prototype.findTopLevelPart=function(){return kp(this,this)}; -function kp(a,b){var c=b.Sa;return null!==c?kp(a,c):b instanceof S&&(c=b.ge,null!==c)?kp(a,c):b}v.u(R,{gp:"isTopLevel"},function(){return null!==this.Sa||this instanceof S&&this.vf?!1:!0});R.prototype.isMemberOf=R.prototype.Zh=function(a){return a instanceof V?lp(this,this,a):!1};function lp(a,b,c){if(b===c||null===c)return!1;var d=b.Sa;return null===d||d!==c&&!lp(a,d,c)?b instanceof S&&(b=b.ge,null!==b)?lp(a,b,c):!1:!0} -R.prototype.findCommonContainingGroup=R.prototype.KG=function(a){if(null===a)return null;if(this===a)return this.Sa;for(var b=this;null!==b;)b instanceof V&&gp(b,!0),b=b.Sa;for(var c=null,b=a;null!==b;){if(0!==(b.Q&1048576)){c=b;break}b=b.Sa}for(b=this;null!==b;)b instanceof V&&gp(b,!1),b=b.Sa;return c};v.defineProperty(R,{AH:"layoutConditions"},function(){return this.er},function(a){var b=this.er;b!==a&&(this.er=a,this.h("layoutConditions",b,a))}); -R.prototype.canLayout=function(){if(!this.fE||!this.isVisible())return!1;var a=this.layer;return null!==a&&a.Gc||this instanceof S&&this.vf?!1:!0};R.prototype.invalidateLayout=R.prototype.H=function(a){void 0===a&&(a=16777215);var b;this.fE&&0!==(a&this.AH)?(b=this.layer,null!==b&&b.Gc||this instanceof S&&this.vf?b=!1:(b=this.g,b=null!==b&&b.la.ib?!1:!0)):b=!1;if(b)if(b=this.uk,null!==b){var c=b.Pb;null!==c?c.H():b.H(a)}else a=this.g,null!==a&&(c=a.Pb,null!==c&&c.H())}; -function rl(a){if(!a.isVisible())return!1;a=a.layer;return null!==a&&a.Gc?!1:!0}v.defineProperty(R,{CD:"dragComputation"},function(){return this.zq},function(a){var b=this.zq;b!==a&&(null!==a&&v.j(a,"function",R,"dragComputation"),this.zq=a,this.h("dragComputation",b,a))});v.defineProperty(R,{yI:"shadowOffset"},function(){return this.tm},function(a){var b=this.tm;b.K(a)||(this.tm=a=a.R(),this.pa(),this.h("shadowOffset",b,a))}); -v.defineProperty(R,{shadowColor:"shadowColor"},function(){return this.sm},function(a){var b=this.sm;b!==a&&(this.sm=a,this.pa(),this.h("shadowColor",b,a))});v.defineProperty(R,{shadowBlur:"shadowBlur"},function(){return this.pg},function(a){var b=this.pg;b!==a&&(this.pg=a,this.pa(),this.h("shadowBlur",b,a))});function Tg(a){0===arguments.length?R.call(this,Si):R.call(this,a);this.Q&=-257;this.Ik="Adornment";this.Gb=this.Mg=this.Db=null}v.Ia(Tg,R);v.ea("Adornment",Tg); -Tg.prototype.toString=function(){var a=this.Nf;return"Adornment("+this.gc+")"+(null!==a?a.toString():"")};Tg.prototype.updateRelationshipsFromData=function(){};Tg.prototype.Wm=function(a){var b=this.Yb.Y,c=this.Yb;if(b instanceof W&&c instanceof X){var d=b.path,c=d.Ra;b.Wm(a);c=d.Ra;a=this.ya.n;b=a.length;for(d=0;da&&(a=1);var b=this.g;if(null!==b&&!b.fh){b.fh=!0;var c=new J(S);c.add(this);xp(this,c,b.Sd,a,b.Na,this,b.vA===hk);b.fh=!1}}; -function xp(a,b,c,d,e,f,h){if(1a&&(a=2);var b=this.g;if(null!==b&&!b.fh){b.fh=!0;var c=new J(S);c.add(this);zp(this,c,b.Sd,a,b.Na,this,b.vA===hk);b.fh=!1}};function zp(a,b,c,d,e,f,h){for(var k=f===a?!1:a.nd,l=c?a.zw():a.wg();l.next();){var m=l.value;m.Hc&&(k||m.Mf||m.ic(),m=m.uz(a),null!==m&&m!==a&&!b.contains(m)&&(b.add(m),k||(m.od(!0),m.ql(),h&&Sj(e,m,f)),2h&&a.y>k&&a.righth&&b.y>k&&b.right=c.NH)){this.Q^=4096;var d=!1;if(null!==c){d=c.tb;c.tb=!0;var e=c.selection;e.Oa();a?e.add(this):e.remove(this);e.freeze()}this.h("isSelected",b,a);this.Od();a=this.wI;null!==a&&a(this);null!==c&&(c.ue(),c.tb=d)}}}); +v.defineProperty(R,{fh:"isHighlighted"},function(){return 0!==(this.Q&524288)},function(a){var b=0!==(this.Q&524288);if(b!==a){this.Q^=524288;var c=this.g;null!==c&&(c=c.Qm,c.Oa(),a?c.add(this):c.remove(this),c.freeze());this.h("isHighlighted",b,a);this.pa()}});v.defineProperty(R,{vl:"isShadowed"},function(){return 0!==(this.Q&8192)},function(a){var b=0!==(this.Q&8192);b!==a&&(this.Q^=8192,this.h("isShadowed",b,a),this.pa())});function fl(a){return 0!==(a.Q&32768)} +function $o(a,b){a.Q=b?a.Q|32768:a.Q&-32769}function Hm(a,b){a.Q=b?a.Q|65536:a.Q&-65537}function Wj(a){return 0!==(a.Q&131072)}R.prototype.yf=function(a){this.Q=a?this.Q|131072:this.Q&-131073};function gp(a,b){a.Q=b?a.Q|1048576:a.Q&-1048577}v.defineProperty(R,{aE:"isAnimated"},function(){return 0!==(this.Q&262144)},function(a){var b=0!==(this.Q&262144);b!==a&&(this.Q^=262144,this.h("isAnimated",b,a))}); +v.defineProperty(R,{lA:"selectionObjectName"},function(){return this.ks},function(a){var b=this.ks;b!==a&&(this.ks=a,this.qm=null,this.h("selectionObjectName",b,a))});v.defineProperty(R,{vI:"selectionAdornmentTemplate"},function(){return this.hs},function(a){var b=this.hs;b!==a&&(this instanceof W&&(a.type=xi),this.hs=a,this.h("selectionAdornmentTemplate",b,a))}); +v.u(R,{Wt:"selectionObject"},function(){if(null===this.qm){var a=this.lA;null!==a&&""!==a?(a=this.be(a),this.qm=null!==a?a:this):this instanceof W?(a=this.path,this.qm=null!==a?a:this):this.qm=this}return this.qm});v.defineProperty(R,{wI:"selectionChanged"},function(){return this.js},function(a){var b=this.js;b!==a&&(null!==a&&v.j(a,"function",R,"selectionChanged"),this.js=a,this.h("selectionChanged",b,a))}); +v.defineProperty(R,{JE:"resizeAdornmentTemplate"},function(){return this.Vr},function(a){var b=this.Vr;b!==a&&(this.Vr=a,this.h("resizeAdornmentTemplate",b,a))});v.defineProperty(R,{LE:"resizeObjectName"},function(){return this.Xr},function(a){var b=this.Xr;b!==a&&(this.Xr=a,this.po=null,this.h("resizeObjectName",b,a))});v.u(R,{KE:"resizeObject"},function(){if(null===this.po){var a=this.LE;null!==a&&""!==a?(a=this.be(a),this.po=null!==a?a:this):this.po=this}return this.po}); +v.defineProperty(R,{lI:"resizeCellSize"},function(){return this.Wr},function(a){var b=this.Wr;b.K(a)||(this.Wr=a=a.R(),this.h("resizeCellSize",b,a))});v.defineProperty(R,{oI:"rotateAdornmentTemplate"},function(){return this.Yr},function(a){var b=this.Yr;b!==a&&(this.Yr=a,this.h("rotateAdornmentTemplate",b,a))});v.defineProperty(R,{pI:"rotateObjectName"},function(){return this.Zr},function(a){var b=this.Zr;b!==a&&(this.Zr=a,this.qo=null,this.h("rotateObjectName",b,a))}); +v.u(R,{NE:"rotateObject"},function(){if(null===this.qo){var a=this.pI;null!==a&&""!==a?(a=this.be(a),this.qo=null!==a?a:this):this.qo=this}return this.qo});v.defineProperty(R,{text:"text"},function(){return this.le},function(a){var b=this.le;b!==a&&(this.le=a,this.h("text",b,a))}); +v.defineProperty(R,{Sa:"containingGroup"},function(){return this.uk},function(a){if(this.Pd()){var b=this.uk;if(b!==a){null===a||this!==a&&!a.Xh(this)||(this===a&&v.k("Cannot make a Group a member of itself: "+this.toString()),v.k("Cannot make a Group indirectly contain itself: "+this.toString()+" already contains "+a.toString()));this.H(ul);var c=this.g;null!==b?hp(b,this):this instanceof V&&null!==c&&c.Uk.remove(this);this.uk=a;null!==a?ip(a,this):this instanceof V&&null!==c&&c.Uk.add(this);this.H(ml); +if(null!==c){var d=this.data,e=c.ba;null!==d&&e instanceof Q&&e.lx(d,e.gb(null!==a?a.data:null))}d=this.uD;null!==d&&(e=!0,null!==c&&(e=c.Qa,c.Qa=!0),d(this,b,a),null!==c&&(c.Qa=e));if(this instanceof V)for(c=new J(R),Sg(c,this,!0,0,!0),c=c.i;c.next();)if(d=c.value,d instanceof S)for(d=d.te;d.next();)Nl(d.value);if(this instanceof S)for(d=this.te;d.next();)Nl(d.value);this.h("containingGroup",b,a);null!==a&&(b=a.layer,null!==b&&bk(b,-1,a))}}else v.k("cannot set the Part.containingGroup of a Link or Adornment")}); +g=R.prototype;g.ql=function(){var a=this.Sa;null!==a&&(a.P(),null!==a.Gb&&a.Gb.P(),a.bf())};g.pa=function(){var a=this.g;null!==a&&!el(this)&&!fl(this)&&this.isVisible()&&this.mc.G()&&a.pa(ak(this,this.mc))};g.qt=function(a){a||(a=this.uk,null!==a&&ip(a,this))};g.rt=function(a){a||(a=this.uk,null!==a&&hp(a,this))};g.Lm=function(){var a=this.data;if(null!==a){var b=this.g;null!==b&&(b=b.ba,null!==b&&b.ex(a))}}; +v.defineProperty(R,{uD:"containingGroupChanged"},function(){return this.gq},function(a){var b=this.gq;b!==a&&(null!==a&&v.j(a,"function",R,"containingGroupChanged"),this.gq=a,this.h("containingGroupChanged",b,a))});R.prototype.findSubGraphLevel=function(){return jp(this,this)};function jp(a,b){var c=b.Sa;return null!==c?1+jp(a,c):b instanceof S&&(c=b.ee,null!==c)?jp(a,c):0}R.prototype.findTopLevelPart=function(){return kp(this,this)}; +function kp(a,b){var c=b.Sa;return null!==c?kp(a,c):b instanceof S&&(c=b.ee,null!==c)?kp(a,c):b}v.u(R,{gp:"isTopLevel"},function(){return null!==this.Sa||this instanceof S&&this.uf?!1:!0});R.prototype.isMemberOf=R.prototype.Xh=function(a){return a instanceof V?lp(this,this,a):!1};function lp(a,b,c){if(b===c||null===c)return!1;var d=b.Sa;return null===d||d!==c&&!lp(a,d,c)?b instanceof S&&(b=b.ee,null!==b)?lp(a,b,c):!1:!0} +R.prototype.findCommonContainingGroup=R.prototype.MG=function(a){if(null===a)return null;if(this===a)return this.Sa;for(var b=this;null!==b;)b instanceof V&&gp(b,!0),b=b.Sa;for(var c=null,b=a;null!==b;){if(0!==(b.Q&1048576)){c=b;break}b=b.Sa}for(b=this;null!==b;)b instanceof V&&gp(b,!1),b=b.Sa;return c};v.defineProperty(R,{CH:"layoutConditions"},function(){return this.fr},function(a){var b=this.fr;b!==a&&(this.fr=a,this.h("layoutConditions",b,a))}); +R.prototype.canLayout=function(){if(!this.iE||!this.isVisible())return!1;var a=this.layer;return null!==a&&a.Gc||this instanceof S&&this.uf?!1:!0};R.prototype.invalidateLayout=R.prototype.H=function(a){void 0===a&&(a=16777215);var b;this.iE&&0!==(a&this.CH)?(b=this.layer,null!==b&&b.Gc||this instanceof S&&this.uf?b=!1:(b=this.g,b=null!==b&&b.la.ib?!1:!0)):b=!1;if(b)if(b=this.uk,null!==b){var c=b.Pb;null!==c?c.H():b.H(a)}else a=this.g,null!==a&&(c=a.Pb,null!==c&&c.H())}; +function rl(a){if(!a.isVisible())return!1;a=a.layer;return null!==a&&a.Gc?!1:!0}v.defineProperty(R,{FD:"dragComputation"},function(){return this.zq},function(a){var b=this.zq;b!==a&&(null!==a&&v.j(a,"function",R,"dragComputation"),this.zq=a,this.h("dragComputation",b,a))});v.defineProperty(R,{AI:"shadowOffset"},function(){return this.sm},function(a){var b=this.sm;b.K(a)||(this.sm=a=a.R(),this.pa(),this.h("shadowOffset",b,a))}); +v.defineProperty(R,{shadowColor:"shadowColor"},function(){return this.rm},function(a){var b=this.rm;b!==a&&(this.rm=a,this.pa(),this.h("shadowColor",b,a))});v.defineProperty(R,{shadowBlur:"shadowBlur"},function(){return this.og},function(a){var b=this.og;b!==a&&(this.og=a,this.pa(),this.h("shadowBlur",b,a))});function Tg(a){0===arguments.length?R.call(this,Si):R.call(this,a);this.Q&=-257;this.Ik="Adornment";this.Gb=this.Lg=this.Db=null}v.Ja(Tg,R);v.ea("Adornment",Tg); +Tg.prototype.toString=function(){var a=this.Mf;return"Adornment("+this.gc+")"+(null!==a?a.toString():"")};Tg.prototype.updateRelationshipsFromData=function(){};Tg.prototype.Wm=function(a){var b=this.Zb.Y,c=this.Zb;if(b instanceof W&&c instanceof X){var d=b.path,c=d.Ra;b.Wm(a);c=d.Ra;a=this.za.n;b=a.length;for(d=0;da&&(a=1);var b=this.g;if(null!==b&&!b.eh){b.eh=!0;var c=new J(S);c.add(this);xp(this,c,b.Qd,a,b.Na,this,b.zA===hk);b.eh=!1}}; +function xp(a,b,c,d,e,f,h){if(1a&&(a=2);var b=this.g;if(null!==b&&!b.eh){b.eh=!0;var c=new J(S);c.add(this);zp(this,c,b.Qd,a,b.Na,this,b.zA===hk);b.eh=!1}};function zp(a,b,c,d,e,f,h){for(var k=f===a?!1:a.md,l=c?a.Aw():a.vg();l.next();){var m=l.value;m.Hc&&(k||m.Lf||m.ic(),m=m.yz(a),null!==m&&m!==a&&!b.contains(m)&&(b.add(m),k||(m.nd(!0),m.ql(),h&&Sj(e,m,f)),2a&&(a-=180);break;case Fp:a=ne(c+90);90a&&(a-=180);break;case Gp:a=ne(c-90);90a&&(a-=180);break;case Hp:a=ne(c);if(45a||225a)return 0;90a&&(a-=180)}return ne(a)}; -v.defineProperty(W,{S:"fromNode"},function(){return this.fg},function(a){var b=this.fg;if(b!==a){var c=this.bd;null!==b&&(this.rg!==b&&up(b,this,c),Ip(this),this.H(ul));this.fg=a;null!==a&&this.od(a.isVisible());this.ri=null;this.ic();var d=this.g;if(null!==d){var e=this.data,f=d.ba;if(null!==e)if(f instanceof Q){var h=null!==a?a.data:null;f.jx(e,f.gb(h))}else f instanceof Pf&&(h=null!==a?a.data:null,d.Sd?f.ph(e,f.gb(h)):(null!==b&&f.ph(b.data,void 0),f.ph(h,f.gb(null!==this.rg?this.rg.data:null))))}e= -this.bd;f=this.ND;null!==f&&(h=!0,null!==d&&(h=d.Qa,d.Qa=!0),f(this,c,e),null!==d&&(d.Qa=h));null!==a&&(this.rg!==a&&tp(a,this,e),Jp(this),this.H(ml));this.h("fromNode",b,a);Nl(this)}}); -v.defineProperty(W,{xg:"fromPortId"},function(){return this.Bh},function(a){var b=this.Bh;if(b!==a){var c=this.bd;null!==c&&sp(this.S,c);Ip(this);this.Bh=a;var d=this.bd;null!==d&&sp(this.S,d);var e=this.g;if(null!==e){var f=this.data,h=e.ba;null!==f&&h instanceof Q&&h.jA(f,a)}c!==d&&(this.ri=null,this.ic(),f=this.ND,null!==f&&(h=!0,null!==e&&(h=e.Qa,e.Qa=!0),f(this,c,d),null!==e&&(e.Qa=h)));Jp(this);this.h("fromPortId",b,a)}});v.u(W,{bd:"fromPort"},function(){var a=this.fg;return null===a?null:a.jl(this.Bh)}); -v.defineProperty(W,{ND:"fromPortChanged"},function(){return this.Hq},function(a){var b=this.Hq;b!==a&&(null!==a&&v.j(a,"function",W,"fromPortChanged"),this.Hq=a,this.h("fromPortChanged",b,a))}); -v.defineProperty(W,{Z:"toNode"},function(){return this.rg},function(a){var b=this.rg;if(b!==a){var c=this.Hd;null!==b&&(this.fg!==b&&up(b,this,c),Ip(this),this.H(ul));this.rg=a;null!==a&&this.od(a.isVisible());this.ri=null;this.ic();var d=this.g;if(null!==d){var e=this.data,f=d.ba;if(null!==e)if(f instanceof Q){var h=null!==a?a.data:null;f.nx(e,f.gb(h))}else f instanceof Pf&&(h=null!==a?a.data:null,d.Sd?(null!==b&&f.ph(b.data,void 0),f.ph(h,f.gb(null!==this.fg?this.fg.data:null))):f.ph(e,f.gb(h)))}e= -this.Hd;f=this.cF;null!==f&&(h=!0,null!==d&&(h=d.Qa,d.Qa=!0),f(this,c,e),null!==d&&(d.Qa=h));null!==a&&(this.fg!==a&&tp(a,this,e),Jp(this),this.H(ml));this.h("toNode",b,a);Nl(this)}}); -v.defineProperty(W,{rh:"toPortId"},function(){return this.Th},function(a){var b=this.Th;if(b!==a){var c=this.Hd;null!==c&&sp(this.Z,c);Ip(this);this.Th=a;var d=this.Hd;null!==d&&sp(this.Z,d);var e=this.g;if(null!==e){var f=this.data,h=e.ba;null!==f&&h instanceof Q&&h.mA(f,a)}c!==d&&(this.ri=null,this.ic(),f=this.cF,null!==f&&(h=!0,null!==e&&(h=e.Qa,e.Qa=!0),f(this,c,d),null!==e&&(e.Qa=h)));Jp(this);this.h("toPortId",b,a)}});v.u(W,{Hd:"toPort"},function(){var a=this.rg;return null===a?null:a.jl(this.Th)}); -v.defineProperty(W,{cF:"toPortChanged"},function(){return this.Cs},function(a){var b=this.Cs;b!==a&&(null!==a&&v.j(a,"function",W,"toPortChanged"),this.Cs=a,this.h("toPortChanged",b,a))});v.defineProperty(W,{xb:"fromSpot"},function(){return null!==this.ga?this.ga.oj:kc},function(a){this.Le();var b=this.ga.oj;b.K(a)||(a=a.R(),this.ga.oj=a,this.h("fromSpot",b,a),this.ic())}); -v.defineProperty(W,{ll:"fromEndSegmentLength"},function(){return null!==this.ga?this.ga.mj:NaN},function(a){this.Le();var b=this.ga.mj;b!==a&&(0>a&&v.va(a,">= 0",W,"fromEndSegmentLength"),this.ga.mj=a,this.h("fromEndSegmentLength",b,a),this.ic())});v.defineProperty(W,{jt:"fromEndSegmentDirection"},function(){return null!==this.ga?this.ga.lj:np},function(a){this.Le();var b=this.ga.lj;b!==a&&(this.ga.lj=a,this.h("fromEndSegmentDirection",b,a),this.ic())}); -v.defineProperty(W,{kt:"fromShortLength"},function(){return null!==this.ga?this.ga.nj:NaN},function(a){this.Le();var b=this.ga.nj;b!==a&&(this.ga.nj=a,this.h("fromShortLength",b,a),this.ic())});v.defineProperty(W,{yb:"toSpot"},function(){return null!==this.ga?this.ga.Qj:kc},function(a){this.Le();var b=this.ga.Qj;b.K(a)||(a=a.R(),this.ga.Qj=a,this.h("toSpot",b,a),this.ic())}); -v.defineProperty(W,{Gl:"toEndSegmentLength"},function(){return null!==this.ga?this.ga.Oj:NaN},function(a){this.Le();var b=this.ga.Oj;b!==a&&(0>a&&v.va(a,">= 0",W,"toEndSegmentLength"),this.ga.Oj=a,this.h("toEndSegmentLength",b,a),this.ic())});v.defineProperty(W,{du:"toEndSegmentDirection"},function(){return null!==this.ga?this.ga.Nj:np},function(a){this.Le();var b=this.ga.Nj;b!==a&&(this.ga.Nj=a,this.h("toEndSegmentDirection",b,a),this.ic())}); -v.defineProperty(W,{eu:"toShortLength"},function(){return null!==this.ga?this.ga.Pj:NaN},function(a){this.Le();var b=this.ga.Pj;b!==a&&(this.ga.Pj=a,this.h("toShortLength",b,a),this.ic())});function Nl(a){var b=a.S,c=a.Z;null!==b?null!==c?Kp(a,b.KG(c)):Kp(a,null):Kp(a,null)}function Kp(a,b){var c=a.uk;if(c!==b){null!==c&&hp(c,a);a.uk=b;null!==b&&ip(b,a);var d=a.rD;if(null!==d){var e=!0,f=a.g;null!==f&&(e=f.Qa,f.Qa=!0);d(a,c,b);null!==f&&(f.Qa=e)}!a.Mf||a.FC!==c&&a.HC!==c||a.ic()}} -W.prototype.ql=function(){var a=this.Sa;null!==a&&this.S!==a&&this.Z!==a&&a.pw&&R.prototype.ql.call(this)};W.prototype.getOtherNode=W.prototype.uz=function(a){var b=this.S;return a===b?this.Z:b};W.prototype.getOtherPort=function(a){var b=this.bd;return a===b?this.Hd:b};v.u(W,{SJ:"isLabeledLink"},function(){return null===this.De?!1:0=d&&(h=d-1);var l=this.l(h-1),f=this.l(h);Qd(e.x,e.y,k.x,k.y,l.x,l.y,f.x,f.y,.5,a);b=Math.min(f.x,b);c=Math.min(f.y,c);e=f}else for(e=this.l(0),f=this.l(1),b=Math.min(e.x,f.x),c=Math.min(e.y,f.y),a.m(e.x,e.y,0,0),a.ej(f),h=2;hc&&(c=-c)):Dc(c.y,d.y)?(c=d.x-c.x,0>c&&(c=-c)):c=Math.sqrt(c.sf(d)),f.push(c),e+=c;for(d=h=c=0;ce/2)break;c+=d;h++}v.sa(f);b=this.l(h);f=this.l(h+1);b.x===f.x?b.y>f.y?a.m(b.x,b.y-(e/2-c)):a.m(b.x,b.y+(e/2-c)):b.y===f.y?b.x>f.x?a.m(b.x-(e/2-c),b.y):a.m(b.x+(e/2-c),b.y):(c=(e/2-c)/d,a.m(b.x+c*(f.x-b.x),b.y+c*(f.y-b.y)));return a};v.u(W,{pE:"midAngle"},function(){this.hn();return this.computeMidAngle()}); +v.defineProperty(W,{T:"fromNode"},function(){return this.eg},function(a){var b=this.eg;if(b!==a){var c=this.bd;null!==b&&(this.qg!==b&&up(b,this,c),Ip(this),this.H(ul));this.eg=a;null!==a&&this.nd(a.isVisible());this.pi=null;this.ic();var d=this.g;if(null!==d){var e=this.data,f=d.ba;if(null!==e)if(f instanceof Q){var h=null!==a?a.data:null;f.kx(e,f.gb(h))}else f instanceof Pf&&(h=null!==a?a.data:null,d.Qd?f.oh(e,f.gb(h)):(null!==b&&f.oh(b.data,void 0),f.oh(h,f.gb(null!==this.qg?this.qg.data:null))))}e= +this.bd;f=this.QD;null!==f&&(h=!0,null!==d&&(h=d.Qa,d.Qa=!0),f(this,c,e),null!==d&&(d.Qa=h));null!==a&&(this.qg!==a&&tp(a,this,e),Jp(this),this.H(ml));this.h("fromNode",b,a);Nl(this)}}); +v.defineProperty(W,{wg:"fromPortId"},function(){return this.zh},function(a){var b=this.zh;if(b!==a){var c=this.bd;null!==c&&sp(this.T,c);Ip(this);this.zh=a;var d=this.bd;null!==d&&sp(this.T,d);var e=this.g;if(null!==e){var f=this.data,h=e.ba;null!==f&&h instanceof Q&&h.nA(f,a)}c!==d&&(this.pi=null,this.ic(),f=this.QD,null!==f&&(h=!0,null!==e&&(h=e.Qa,e.Qa=!0),f(this,c,d),null!==e&&(e.Qa=h)));Jp(this);this.h("fromPortId",b,a)}});v.u(W,{bd:"fromPort"},function(){var a=this.eg;return null===a?null:a.jl(this.zh)}); +v.defineProperty(W,{QD:"fromPortChanged"},function(){return this.Hq},function(a){var b=this.Hq;b!==a&&(null!==a&&v.j(a,"function",W,"fromPortChanged"),this.Hq=a,this.h("fromPortChanged",b,a))}); +v.defineProperty(W,{Z:"toNode"},function(){return this.qg},function(a){var b=this.qg;if(b!==a){var c=this.Fd;null!==b&&(this.eg!==b&&up(b,this,c),Ip(this),this.H(ul));this.qg=a;null!==a&&this.nd(a.isVisible());this.pi=null;this.ic();var d=this.g;if(null!==d){var e=this.data,f=d.ba;if(null!==e)if(f instanceof Q){var h=null!==a?a.data:null;f.ox(e,f.gb(h))}else f instanceof Pf&&(h=null!==a?a.data:null,d.Qd?(null!==b&&f.oh(b.data,void 0),f.oh(h,f.gb(null!==this.eg?this.eg.data:null))):f.oh(e,f.gb(h)))}e= +this.Fd;f=this.fF;null!==f&&(h=!0,null!==d&&(h=d.Qa,d.Qa=!0),f(this,c,e),null!==d&&(d.Qa=h));null!==a&&(this.eg!==a&&tp(a,this,e),Jp(this),this.H(ml));this.h("toNode",b,a);Nl(this)}}); +v.defineProperty(W,{qh:"toPortId"},function(){return this.Rh},function(a){var b=this.Rh;if(b!==a){var c=this.Fd;null!==c&&sp(this.Z,c);Ip(this);this.Rh=a;var d=this.Fd;null!==d&&sp(this.Z,d);var e=this.g;if(null!==e){var f=this.data,h=e.ba;null!==f&&h instanceof Q&&h.qA(f,a)}c!==d&&(this.pi=null,this.ic(),f=this.fF,null!==f&&(h=!0,null!==e&&(h=e.Qa,e.Qa=!0),f(this,c,d),null!==e&&(e.Qa=h)));Jp(this);this.h("toPortId",b,a)}});v.u(W,{Fd:"toPort"},function(){var a=this.qg;return null===a?null:a.jl(this.Rh)}); +v.defineProperty(W,{fF:"toPortChanged"},function(){return this.Ds},function(a){var b=this.Ds;b!==a&&(null!==a&&v.j(a,"function",W,"toPortChanged"),this.Ds=a,this.h("toPortChanged",b,a))});v.defineProperty(W,{xb:"fromSpot"},function(){return null!==this.ga?this.ga.oj:fc},function(a){this.Ke();var b=this.ga.oj;b.K(a)||(a=a.R(),this.ga.oj=a,this.h("fromSpot",b,a),this.ic())}); +v.defineProperty(W,{ll:"fromEndSegmentLength"},function(){return null!==this.ga?this.ga.mj:NaN},function(a){this.Ke();var b=this.ga.mj;b!==a&&(0>a&&v.va(a,">= 0",W,"fromEndSegmentLength"),this.ga.mj=a,this.h("fromEndSegmentLength",b,a),this.ic())});v.defineProperty(W,{kt:"fromEndSegmentDirection"},function(){return null!==this.ga?this.ga.lj:np},function(a){this.Ke();var b=this.ga.lj;b!==a&&(this.ga.lj=a,this.h("fromEndSegmentDirection",b,a),this.ic())}); +v.defineProperty(W,{lt:"fromShortLength"},function(){return null!==this.ga?this.ga.nj:NaN},function(a){this.Ke();var b=this.ga.nj;b!==a&&(this.ga.nj=a,this.h("fromShortLength",b,a),this.ic())});v.defineProperty(W,{yb:"toSpot"},function(){return null!==this.ga?this.ga.Qj:fc},function(a){this.Ke();var b=this.ga.Qj;b.K(a)||(a=a.R(),this.ga.Qj=a,this.h("toSpot",b,a),this.ic())}); +v.defineProperty(W,{Fl:"toEndSegmentLength"},function(){return null!==this.ga?this.ga.Oj:NaN},function(a){this.Ke();var b=this.ga.Oj;b!==a&&(0>a&&v.va(a,">= 0",W,"toEndSegmentLength"),this.ga.Oj=a,this.h("toEndSegmentLength",b,a),this.ic())});v.defineProperty(W,{eu:"toEndSegmentDirection"},function(){return null!==this.ga?this.ga.Nj:np},function(a){this.Ke();var b=this.ga.Nj;b!==a&&(this.ga.Nj=a,this.h("toEndSegmentDirection",b,a),this.ic())}); +v.defineProperty(W,{fu:"toShortLength"},function(){return null!==this.ga?this.ga.Pj:NaN},function(a){this.Ke();var b=this.ga.Pj;b!==a&&(this.ga.Pj=a,this.h("toShortLength",b,a),this.ic())});function Nl(a){var b=a.T,c=a.Z;null!==b?null!==c?Kp(a,b.MG(c)):Kp(a,null):Kp(a,null)}function Kp(a,b){var c=a.uk;if(c!==b){null!==c&&hp(c,a);a.uk=b;null!==b&&ip(b,a);var d=a.uD;if(null!==d){var e=!0,f=a.g;null!==f&&(e=f.Qa,f.Qa=!0);d(a,c,b);null!==f&&(f.Qa=e)}!a.Lf||a.IC!==c&&a.KC!==c||a.ic()}} +W.prototype.ql=function(){var a=this.Sa;null!==a&&this.T!==a&&this.Z!==a&&a.qw&&R.prototype.ql.call(this)};W.prototype.getOtherNode=W.prototype.yz=function(a){var b=this.T;return a===b?this.Z:b};W.prototype.getOtherPort=function(a){var b=this.bd;return a===b?this.Fd:b};v.u(W,{UJ:"isLabeledLink"},function(){return null===this.Ce?!1:0=d&&(h=d-1);var l=this.l(h-1),f=this.l(h);Rd(e.x,e.y,k.x,k.y,l.x,l.y,f.x,f.y,.5,a);b=Math.min(f.x,b);c=Math.min(f.y,c);e=f}else for(e=this.l(0),f=this.l(1),b=Math.min(e.x,f.x),c=Math.min(e.y,f.y),a.m(e.x,e.y,0,0),a.dj(f),h=2;hc&&(c=-c)):Ec(c.y,d.y)?(c=d.x-c.x,0>c&&(c=-c)):c=Math.sqrt(c.rf(d)),f.push(c),e+=c;for(d=h=c=0;ce/2)break;c+=d;h++}v.sa(f);b=this.l(h);f=this.l(h+1);b.x===f.x?b.y>f.y?a.m(b.x,b.y-(e/2-c)):a.m(b.x,b.y+(e/2-c)):b.y===f.y?b.x>f.x?a.m(b.x-(e/2-c),b.y):a.m(b.x+(e/2-c),b.y):(c=(e/2-c)/d,a.m(b.x+c*(f.x-b.x),b.y+c*(f.y-b.y)));return a};v.u(W,{sE:"midAngle"},function(){this.hn();return this.computeMidAngle()}); W.prototype.computeMidAngle=function(){var a=this.oa;if(2>a)return NaN;if(this.computeCurve()===Hi&&4<=a&&!this.jc){var b=(a-1)/3|0,c=3*(b/2|0);if(1===b%2){var c=Math.floor(c),b=this.l(c),d=this.l(c+1),a=this.l(c+2),c=this.l(c+3),e=d.x,d=d.y,f=a.x,a=a.y,h=(e+f)/2,k=(d+a)/2;return Wa(((b.x+e)/2+h)/2,((b.y+d)/2+k)/2,(h+(f+c.x)/2)/2,(k+(a+c.y)/2)/2)}if(0e+10))?e>c+10?d.xc(a):b.xc(a):b.xc(d);b=this.l(c-1);d=this.l(c);a=this.l(c+1);c=b.sf(d);e=d.sf(a);return c>e+10?b.xc(d):e>c+10?d.xc(a):b.xc(a)}; -v.defineProperty(W,{points:"points"},function(){return this.Zc},function(a){var b=this.Zc;if(b!==a){var c=null;if(Array.isArray(a)){var d=0===a.length%2;if(d)for(var e=0;ep&&(t-=180));0>t?t+=360:360<=t&&(t-=360);k&&(u+=Math.abs(p));0===t?r=u:90===t?s=u:180===t?r=-u:270===t?s=-u:(r=u*Math.cos(t*Math.PI/180),s=u*Math.sin(t*Math.PI/180));if(f.te()&&k){var w=c.Xa(Ab,v.L()),x= -v.Mb(w.x+1E3*r,w.y+1E3*s);this.getLinkPointFromPoint(b,c,w,x,!0,q);v.v(w);v.v(x)}}var u=this.getLinkPoint(d,e,h,!1,l,b,c),z=0,A=0,H=0;if(l||h!==sb||k)w=this.computeEndSegmentLength(d,e,h,!1),H=this.getLinkDirection(d,e,u,h,!1,l,b,c),k&&(H+=l?0:30,0>p&&(H+=180)),0>H?H+=360:360<=H&&(H-=360),k&&(w+=Math.abs(p)),0===H?z=w:90===H?A=w:180===H?z=-w:270===H?A=-w:(z=w*Math.cos(H*Math.PI/180),A=w*Math.sin(H*Math.PI/180)),h.te()&&k&&(w=e.Xa(Ab,v.L()),x=v.Mb(w.x+1E3*z,w.y+1E3*A),this.getLinkPointFromPoint(d, -e,w,x,!1,u),v.v(w),v.v(x));e=q;if(l||f!==sb||k)e=new y(q.x+r,q.y+s);c=u;if(l||h!==sb||k)c=new y(u.x+z,u.y+A);!n&&!l&&f===sb&&3k&&(m=-m),r=(0>h?-1:1)*m+q,s=l*(r-q)+t),q= -a.x+2*f/3,t=a.y+2*h/3,u=q,z=t,K(h,0)?z=0h?-1:1)*m+q,z=l*(u-q)+t),this.Po(),this.Uh(a),this.Yk(r,s),this.Yk(u,z),this.Uh(n),this.Af(0,this.getLinkPoint(b,c,sb,!0,!1,d,e)),this.Af(3,this.getLinkPoint(d,e,sb,!1,!1,b,c))):(a=d,d=this.getLinkPoint(b,c,sb,!0,!1,a,e),e=this.getLinkPoint(a,e,sb,!1,!1,b,c),this.hasCurviness()?(h=e.x-d.x,b=e.y-d.y,c=this.computeCurviness(),a=d.x+h/2,n=d.y+b/2,f=a,k=n,K(b,0)?k=0c&&(f=-f),f=(0>b?-1:1)*f+a,k=h*(f- -a)+n),this.Uh(d),this.Yk(f,k)):this.Uh(d),this.Uh(e)));return!0};function Qp(a,b){Math.abs(b.x-a.x)>Math.abs(b.y-a.y)?(b.x=b.x>=a.x?a.x+9E9:a.x-9E9,b.y=a.y):(b.y=b.y>=a.y?a.y+9E9:a.y-9E9,b.x=a.x);return b} -W.prototype.getLinkPointFromPoint=function(a,b,c,d,e,f){void 0===f&&(f=new y);if(null===a||null===b)return f.assign(c),f;a.isVisible()||(e=a.findVisibleNode(),null!==e&&e!==a&&(b=e.port));var h=e=0,k=0,l=0;a=null;e=b.T;null===e||e.Lg()||(e=e.T);if(null===e)e=d.x,h=d.y,k=c.x,l=c.y;else{a=e.Zg;e=1/(a.m11*a.m22-a.m12*a.m21);var k=a.m22*e,l=-a.m12*e,m=-a.m21*e,n=a.m11*e,p=e*(a.m21*a.dy-a.m22*a.dx),q=e*(a.m12*a.dx-a.m11*a.dy);e=d.x*k+d.y*m+p;h=d.x*l+d.y*n+q;k=c.x*k+c.y*m+p;l=c.x*l+c.y*n+q}b.bp(e,h,k,l, -f);null!==a&&f.transform(a);return f};function Rp(a,b){var c=b.lm;null===c&&(c=new Sp,c.port=b,c.Jc=b.Y,b.lm=c);return Tp(c,a)} -W.prototype.getLinkPoint=function(a,b,c,d,e,f,h,k){void 0===k&&(k=new y);if(c.cd())return b.Xa(c,k),k;if(c.Wi()&&(c=Rp(this,b),null!==c)){k.assign(c.kp);if(e&&this.gx===Ap){var l=Rp(this,h);if(null!==l&&c.Jm=m.x&&a.x<=m.x+m.width?k.x=a.x:a.y>=m.y&&a.y<=m.y+m.height&&(k.y=a.y);v.v(c);v.v(l)}}return k}f=b.Xa(Ab,v.L());l=c=null;this.oa>(e?6:2)?(l=d?this.l(1):this.l(this.oa-2),e&& +c=b.rf(d),e=d.rf(a),!(c>e+10))?e>c+10?d.xc(a):b.xc(a):b.xc(d);b=this.l(c-1);d=this.l(c);a=this.l(c+1);c=b.rf(d);e=d.rf(a);return c>e+10?b.xc(d):e>c+10?d.xc(a):b.xc(a)}; +v.defineProperty(W,{points:"points"},function(){return this.Zc},function(a){var b=this.Zc;if(b!==a){var c=null;if(Array.isArray(a)){var d=0===a.length%2;if(d)for(var e=0;ep&&(t-=180));0>t?t+=360:360<=t&&(t-=360);k&&(u+=Math.abs(p));0===t?r=u:90===t?s=u:180===t?r=-u:270===t?s=-u:(r=u*Math.cos(t*Math.PI/180),s=u*Math.sin(t*Math.PI/180));if(f.se()&&k){var y=c.Xa(Ab,v.L()),w=v.Mb(y.x+1E3*r,y.y+1E3*s);this.getLinkPointFromPoint(b,c,y,w,!0,q);v.v(y); +v.v(w)}}var u=this.getLinkPoint(d,e,h,!1,l,b,c),x=0,A=0,H=0;if(l||h!==sb||k)y=this.computeEndSegmentLength(d,e,h,!1),H=this.getLinkDirection(d,e,u,h,!1,l,b,c),k&&(H+=l?0:30,0>p&&(H+=180)),0>H?H+=360:360<=H&&(H-=360),k&&(y+=Math.abs(p)),0===H?x=y:90===H?A=y:180===H?x=-y:270===H?A=-y:(x=y*Math.cos(H*Math.PI/180),A=y*Math.sin(H*Math.PI/180)),h.se()&&k&&(y=e.Xa(Ab,v.L()),w=v.Mb(y.x+1E3*x,y.y+1E3*A),this.getLinkPointFromPoint(d,e,y,w,!1,u),v.v(y),v.v(w));e=q;if(l||f!==sb||k)e=new z(q.x+r,q.y+s);c=u;if(l|| +h!==sb||k)c=new z(u.x+x,u.y+A);!n&&!l&&f===sb&&3k&&(m=-m),r=(0>h?-1:1)*m+q,s=l*(r-q)+t),q=a.x+2*f/3,t=a.y+2*h/3,u=q,x=t,K(h,0)?x=0h?-1:1)*m+q,x=l*(u- +q)+t),this.Po(),this.Sh(a),this.Yk(r,s),this.Yk(u,x),this.Sh(n),this.zf(0,this.getLinkPoint(b,c,sb,!0,!1,d,e)),this.zf(3,this.getLinkPoint(d,e,sb,!1,!1,b,c))):(a=d,d=this.getLinkPoint(b,c,sb,!0,!1,a,e),e=this.getLinkPoint(a,e,sb,!1,!1,b,c),this.hasCurviness()?(h=e.x-d.x,b=e.y-d.y,c=this.computeCurviness(),a=d.x+h/2,n=d.y+b/2,f=a,k=n,K(b,0)?k=0c&&(f=-f),f=(0>b?-1:1)*f+a,k=h*(f-a)+n),this.Sh(d),this.Yk(f,k)):this.Sh(d),this.Sh(e)));return!0}; +function Qp(a,b){Math.abs(b.x-a.x)>Math.abs(b.y-a.y)?(b.x=b.x>=a.x?a.x+9E9:a.x-9E9,b.y=a.y):(b.y=b.y>=a.y?a.y+9E9:a.y-9E9,b.x=a.x);return b} +W.prototype.getLinkPointFromPoint=function(a,b,c,d,e,f){void 0===f&&(f=new z);if(null===a||null===b)return f.assign(c),f;a.isVisible()||(e=a.findVisibleNode(),null!==e&&e!==a&&(b=e.port));var h=e=0,k=0,l=0;a=null;e=b.S;null===e||e.Kg()||(e=e.S);if(null===e)e=d.x,h=d.y,k=c.x,l=c.y;else{a=e.Yg;e=1/(a.m11*a.m22-a.m12*a.m21);var k=a.m22*e,l=-a.m12*e,m=-a.m21*e,n=a.m11*e,p=e*(a.m21*a.dy-a.m22*a.dx),q=e*(a.m12*a.dx-a.m11*a.dy);e=d.x*k+d.y*m+p;h=d.x*l+d.y*n+q;k=c.x*k+c.y*m+p;l=c.x*l+c.y*n+q}b.bp(e,h,k,l, +f);null!==a&&f.transform(a);return f};function Rp(a,b){var c=b.km;null===c&&(c=new Sp,c.port=b,c.Jc=b.Y,b.km=c);return Tp(c,a)} +W.prototype.getLinkPoint=function(a,b,c,d,e,f,h,k){void 0===k&&(k=new z);if(c.cd())return b.Xa(c,k),k;if(c.Ui()&&(c=Rp(this,b),null!==c)){k.assign(c.kp);if(e&&this.hx===Ap){var l=Rp(this,h);if(null!==l&&c.Jm=m.x&&a.x<=m.x+m.width?k.x=a.x:a.y>=m.y&&a.y<=m.y+m.height&&(k.y=a.y);v.v(c);v.v(l)}}return k}f=b.Xa(Ab,v.L());l=c=null;this.oa>(e?6:2)?(l=d?this.l(1):this.l(this.oa-2),e&& (l=Qp(f,l.copy()))):(c=v.L(),l=h.Xa(Ab,c),e&&(l=Qp(f,l)),v.v(c));this.getLinkPointFromPoint(a,b,f,l,d,k);v.v(f);return k}; -W.prototype.getLinkDirection=function(a,b,c,d,e,f,h,k){a:if(d.cd())c=d.x>d.y?d.x>1-d.y?0:d.x<1-d.y?270:315:d.x1-d.y?90:d.x<1-d.y?180:135:.5>d.x?225:.5(f?6:2)?(n=e?this.l(1):this.l(this.oa-2),n=f?Qp(l,n.copy()):c):(m=v.L(),n=k.Xa(Ab,m),v.v(m));c=0;c=Math.abs(n.x-l.x)>Math.abs(n.y- -l.y)?n.x>=l.x?0:180:n.y>=l.y?90:270;v.v(l)}d.te()&&h.Zh(a)&&(c+=180,360<=c&&(c-=360));a=np;a=e?this.jt:this.du;a===np&&(a=e?b.jt:b.du);switch(a){case op:b=b.nl();c+=b;360<=c&&(c-=360);break;case np:case ym:b=b.nl();if(0===b)break;45<=b&&135>b?c+=90:135<=b&&225>b?c+=180:225<=b&&315>b&&(c+=270);360<=c&&(c-=360)}return c}; -W.prototype.computeEndSegmentLength=function(a,b,c,d){if(null!==b&&c.Wi()&&(a=Rp(this,b),null!==a))return a.vw;a=NaN;a=d?this.ll:this.Gl;null!==b&&isNaN(a)&&(a=d?b.ll:b.Gl);isNaN(a)&&(a=10);return a};W.prototype.computeSpot=function(a){return a?Op(this,this.bd):Pp(this,this.Hd)};function Op(a,b){if(null===b)return Ab;var c=a.xb;c.Uc()&&(void 0===b&&(b=a.bd),null!==b&&(c=b.xb));return c===kc?sb:c} -function Pp(a,b){if(null===b)return Ab;var c=a.yb;c.Uc()&&(void 0===b&&(b=a.Hd),null!==b&&(c=b.yb));return c===kc?sb:c}W.prototype.computeOtherPoint=function(a,b){var c=b.Xa(Ab),d;d=b.lm;d=null!==d?Tp(d,this):null;null!==d&&(c=d.kp);return c};W.prototype.computeShortLength=function(a){return a?Up(this):Vp(this)};function Up(a){var b=a.kt;isNaN(b)&&(a=a.bd,null!==a&&(b=a.kt));return isNaN(b)?0:b}function Vp(a){var b=a.eu;isNaN(b)&&(a=a.Hd,null!==a&&(b=a.eu));return isNaN(b)?0:b} -W.prototype.Yj=function(a,b,c,d,e,f){if(!1===this.Hg)return!1;void 0===b&&(b=null);void 0===c&&(c=null);var h=f;void 0===f&&(h=v.qh(),h.reset());h.multiply(this.transform);if(this.Gm(a,h))return bo(this,b,c,e),void 0===f&&v.$e(h),!0;if(this.yg(a,h)){var k=!1;if(!this.Qg)for(var l=this.ya.n,m=l.length;m--;){var n=l[m];if(n.visible||n===this.bc){var p=n.U,q=this.Ha;if(!(p.x>q.width||p.y>q.height||0>p.x+p.width||0>p.y+p.height)){p=v.qh();p.set(h);if(n instanceof D)k=n.Yj(a,b,c,d,e,p);else if(this.path=== -n){var k=n,r=a,s=d,q=p;if(!1===k.Hg)k=!1;else if(q.multiply(k.transform),s)b:{var t=r,u=q;if(k.Gm(t,u))k=!0;else{if(void 0===u&&(u=k.transform,t.Wj(k.U))){k=!0;break b}var q=t.left,r=t.right,s=t.top,t=t.bottom,w=v.L(),x=v.L(),z=v.L(),A=v.qh();A.set(u);A.sE(k.transform);A.zz();x.x=r;x.y=s;x.transform(A);w.x=q;w.y=s;w.transform(A);u=!1;no(k,w,x,z)?u=!0:(w.x=r,w.y=t,w.transform(A),no(k,w,x,z)?u=!0:(x.x=q,x.y=t,x.transform(A),no(k,w,x,z)?u=!0:(w.x=q,w.y=s,w.transform(A),no(k,w,x,z)&&(u=!0))));v.$e(A); -v.v(w);v.v(x);v.v(z);k=u}}else k=k.Gm(r,q)}else k=Dm(n,a,d,p);k&&(null!==b&&(n=b(n)),n&&(null===c||c(n))&&e.add(n));v.$e(p)}}}void 0===f&&v.$e(h);return k||null!==this.background||null!==this.Bm}void 0===f&&v.$e(h);return!1};v.u(W,{jc:"isOrthogonal"},function(){return 2===(this.nm.value&2)});v.u(W,{rl:"isAvoiding"},function(){return 4===(this.nm.value&4)});W.prototype.computeCurve=function(){if(null===this.ri){var a=this.bd,b=this.jc;this.ri=null!==a&&a===this.Hd&&!b}return this.ri?Hi:this.Je}; -W.prototype.computeCorner=function(){if(this.Je===Hi)return 0;var a=this.gz;if(isNaN(a)||0>a)a=10;return a};W.prototype.findMidLabel=function(){for(var a=this.path,b=this.ya.n,c=b.length,d=0;dl?-Math.PI/2:Math.PI/2:(n=Math.atan(l/Math.abs(k)),0>k&&(n=Math.PI-n));var h=b.x,p=b.y,l=d.x-h,q=d.y-p,r=Math.sqrt(l*l+q*q),k=0;Dc(l,0)?k=0>q?-Math.PI/2:Math.PI/2:(k=Math.atan(q/Math.abs(l)),0>l&&(k=Math.PI-k));m=r/m;n=k-n;this.Af(a,b);for(a+= -1;al?-Math.PI/2:Math.PI/2:(q=Math.atan(l/Math.abs(k)),0>k&&(q=Math.PI-q)),k=q+n,b*=m,this.V(a,h+b*Math.cos(k),p+b*Math.sin(k)));this.Af(c,d)}}return!0;case en:f=this.l(a);p=this.l(c);if(!f.Fc(b)||!p.Fc(d)){var e=f.x,f=f.y,h=p.x,p=p.y,m=(h-e)*(h-e)+(p-f)*(p-f),k=b.x,n=b.y,l=d.x,q=d.y,r=0,s=1;0!==l-k?(r=(q-n)/(l-k),s=Math.sqrt(1+1/(r*r))):r=9E9;this.Af(a,b);for(a+=1;ab?0:45<=b&&135>b?90:135<=b&&225>b?180:270;d=-45<=d&&45>d?0:45<=d&&135>d?90:135<=d&&225>d?180:270;var h=e.U.copy(),k=f.U.copy();if(h.G()&&k.G()){h.Rf(8,8);k.Rf(8,8);h.ej(a);k.ej(c);var l,m;if(0===b)if(c.x>a.x||270===d&&c.ya.x||90===d&&c.y>a.y&&k.right>a.x)l=new y(c.x,a.y),m=new y(c.x,(a.y+c.y)/2),180===d?(l.x=this.computeMidOrthoPosition(a.x,c.x,!1),m.x=l.x,m.y=c.y):270===d&&c.ya.y?(l.x=a.xk.bottom)?this.computeMidOrthoPosition(a.x,c.x,!1):k.right,m.x=l.x,m.y=c.y):0===d&&a.xk.top&&a.yh.bottom)180===d&&(k.Fa(a)||h.Fa(c))?l.y=this.computeMidOrthoPosition(a.y,c.y,!0):c.ya.y&&(180===d||270===d)&&(l.y=this.computeMidOrthoPosition(h.bottom,Math.min(c.y,k.top),!0)),m.x=c.x,m.y=l.y;if(l.y>h.top&&l.y=h.left&&c.x<=a.x||a.x<=k.right&&a.x>=c.x){if(90===d||270===d)l=new y(Math.max((a.x+c.x)/2,a.x),a.y),m=new y(l.x,c.y)}else l.y=270===d||(0===d||180===d)&&c.ya.y&&k.lefta.y?(l.x=a.x>k.right?this.computeMidOrthoPosition(a.x,k.right,!1):a.x>k.left&&(270===d&&a.yk.bottom)?this.computeMidOrthoPosition(a.x,c.x,!1):k.left,m.x=l.x,m.y=c.y):180===d&&a.x>k.right&&a.y>k.top&&a.yh.bottom)0===d&&(k.Fa(a)||h.Fa(c))?l.y=this.computeMidOrthoPosition(a.y,c.y,!0):c.ya.y&&(0===d||270===d)&&(l.y=this.computeMidOrthoPosition(h.bottom,Math.min(c.y,k.top),!0)),m.x=c.x,m.y=l.y;if(l.y>h.top&&l.y=a.x||a.x>=k.left&&a.x<=c.x){if(90===d||270===d)l=new y(Math.min((a.x+c.x)/2,a.x),a.y),m=new y(l.x,c.y)}else l.y=270=== -d||(0===d||180===d)&&c.ya.y||180===d&&c.xa.y||0===d&&c.x>a.x&&k.bottom>a.y)l=new y(a.x,c.y),m=new y((a.x+c.x)/2,c.y),270===d?(l.y=this.computeMidOrthoPosition(a.y,c.y,!0),m.x=c.x,m.y=l.y):180===d&&c.xa.x?(l.y=a.yk.right)? -this.computeMidOrthoPosition(a.y,c.y,!0):k.bottom,m.x=c.x,m.y=l.y):90===d&&a.yk.left&&a.xh.right)270===d&&(k.Fa(a)||h.Fa(c))?l.x=this.computeMidOrthoPosition(a.x,c.x,!1):c.xa.x&&(270===d||180===d)&&(l.x=this.computeMidOrthoPosition(h.right, -Math.min(c.x,k.left),!1)),m.x=l.x,m.y=c.y;if(l.x>h.left&&l.x=h.top&&c.y<=a.y||a.y<=k.bottom&&a.y>=c.y){if(0===d||180===d)l=new y(a.x,Math.max((a.y+c.y)/2,a.y)),m=new y(c.x,l.y)}else l.x=180===d||(90===d||270===d)&&c.xa.x&&k.top=a.x?(l.y=a.y>k.bottom?this.computeMidOrthoPosition(a.y,k.bottom,!0):a.y>k.top&&(180===d&&a.xk.right)?this.computeMidOrthoPosition(a.y,c.y,!0):k.top,m.x=c.x,m.y=l.y):270===d&&a.y>k.bottom&&a.x>k.left&&a.xh.right)90===d&&(k.Fa(a)||h.Fa(c))?l.x=this.computeMidOrthoPosition(a.x, -c.x,!1):c.xa.x&&(90===d||180===d)&&(l.x=this.computeMidOrthoPosition(h.right,Math.min(c.x,k.left),!1)),m.x=l.x,m.y=c.y;if(l.x>h.left&&l.x=a.y||a.y>=k.top&&a.y<=c.y){if(0===d||180===d)l=new y(a.x,Math.min((a.y+c.y)/2,a.y)),m=new y(c.x,l.y)}else l.x=180===d||(90===d||270===d)&&c.xk&&0!==Xp(e,c.x,c.y)){Yp(this,e,c.x,c.y,d,!0);d=this.l(2);if(4>this.oa)0===b||180===b?(d.x=a.x,d.y=c.y):(d.x=c.x,d.y=a.y),this.V(2,d.x,d.y),this.w(3,d.x,d.y);else if(c=this.l(3),0===b|| -180===b)K(d.x,c.x)?(b=0===b?Math.max(d.x,a.x):Math.min(d.x,a.x),this.V(2,b,a.y),this.V(3,b,c.y)):K(d.y,c.y)?(Math.abs(a.y-d.y)<=e.Mo/2&&(this.V(2,d.x,a.y),this.V(3,c.x,a.y)),this.w(2,d.x,a.y)):this.V(2,a.x,d.y);else if(90===b||270===b)K(d.y,c.y)?(b=90===b?Math.max(d.y,a.y):Math.min(d.y,a.y),this.V(2,a.x,b),this.V(3,c.x,b)):K(d.x,c.x)?(Math.abs(a.x-d.x)<=e.Oo/2&&(this.V(2,a.x,d.y),this.V(3,a.x,c.y)),this.w(2,a.x,d.y)):this.V(2,d.x,a.y);a=!0}else a=!1}else a=!1;a||(this.Uh(l),this.Uh(m))}}; +W.prototype.getLinkDirection=function(a,b,c,d,e,f,h,k){a:if(d.cd())c=d.x>d.y?d.x>1-d.y?0:d.x<1-d.y?270:315:d.x1-d.y?90:d.x<1-d.y?180:135:.5>d.x?225:.5(f?6:2)?(n=e?this.l(1):this.l(this.oa-2),n=f?Qp(l,n.copy()):c):(m=v.L(),n=k.Xa(Ab,m),v.v(m));c=0;c=Math.abs(n.x-l.x)>Math.abs(n.y- +l.y)?n.x>=l.x?0:180:n.y>=l.y?90:270;v.v(l)}d.se()&&h.Xh(a)&&(c+=180,360<=c&&(c-=360));a=np;a=e?this.kt:this.eu;a===np&&(a=e?b.kt:b.eu);switch(a){case op:b=b.nl();c+=b;360<=c&&(c-=360);break;case np:case ym:b=b.nl();if(0===b)break;45<=b&&135>b?c+=90:135<=b&&225>b?c+=180:225<=b&&315>b&&(c+=270);360<=c&&(c-=360)}return c}; +W.prototype.computeEndSegmentLength=function(a,b,c,d){if(null!==b&&c.Ui()&&(a=Rp(this,b),null!==a))return a.ww;a=NaN;a=d?this.ll:this.Fl;null!==b&&isNaN(a)&&(a=d?b.ll:b.Fl);isNaN(a)&&(a=10);return a};W.prototype.computeSpot=function(a){return a?Op(this,this.bd):Pp(this,this.Fd)};function Op(a,b){if(null===b)return Ab;var c=a.xb;c.Uc()&&(void 0===b&&(b=a.bd),null!==b&&(c=b.xb));return c===fc?sb:c} +function Pp(a,b){if(null===b)return Ab;var c=a.yb;c.Uc()&&(void 0===b&&(b=a.Fd),null!==b&&(c=b.yb));return c===fc?sb:c}W.prototype.computeOtherPoint=function(a,b){var c=b.Xa(Ab),d;d=b.km;d=null!==d?Tp(d,this):null;null!==d&&(c=d.kp);return c};W.prototype.computeShortLength=function(a){return a?Up(this):Vp(this)};function Up(a){var b=a.lt;isNaN(b)&&(a=a.bd,null!==a&&(b=a.lt));return isNaN(b)?0:b}function Vp(a){var b=a.fu;isNaN(b)&&(a=a.Fd,null!==a&&(b=a.fu));return isNaN(b)?0:b} +W.prototype.Yj=function(a,b,c,d,e,f){if(!1===this.Gg)return!1;void 0===b&&(b=null);void 0===c&&(c=null);var h=f;void 0===f&&(h=v.ph(),h.reset());h.multiply(this.transform);if(this.Gm(a,h))return bo(this,b,c,e),void 0===f&&v.Ze(h),!0;if(this.xg(a,h)){var k=!1;if(!this.Pg)for(var l=this.za.n,m=l.length;m--;){var n=l[m];if(n.visible||n===this.cc){var p=n.U,q=this.Ha;if(!(p.x>q.width||p.y>q.height||0>p.x+p.width||0>p.y+p.height)){p=v.ph();p.set(h);if(n instanceof D)k=n.Yj(a,b,c,d,e,p);else if(this.path=== +n){var k=n,r=a,s=d,q=p;if(!1===k.Gg)k=!1;else if(q.multiply(k.transform),s)b:{var t=r,u=q;if(k.Gm(t,u))k=!0;else{if(void 0===u&&(u=k.transform,t.Wj(k.U))){k=!0;break b}var q=t.left,r=t.right,s=t.top,t=t.bottom,y=v.L(),w=v.L(),x=v.L(),A=v.ph();A.set(u);A.vE(k.transform);A.Dz();w.x=r;w.y=s;w.transform(A);y.x=q;y.y=s;y.transform(A);u=!1;no(k,y,w,x)?u=!0:(y.x=r,y.y=t,y.transform(A),no(k,y,w,x)?u=!0:(w.x=q,w.y=t,w.transform(A),no(k,y,w,x)?u=!0:(y.x=q,y.y=s,y.transform(A),no(k,y,w,x)&&(u=!0))));v.Ze(A); +v.v(y);v.v(w);v.v(x);k=u}}else k=k.Gm(r,q)}else k=Dm(n,a,d,p);k&&(null!==b&&(n=b(n)),n&&(null===c||c(n))&&e.add(n));v.Ze(p)}}}void 0===f&&v.Ze(h);return k||null!==this.background||null!==this.Bm}void 0===f&&v.Ze(h);return!1};v.u(W,{jc:"isOrthogonal"},function(){return 2===(this.mm.value&2)});v.u(W,{rl:"isAvoiding"},function(){return 4===(this.mm.value&4)});W.prototype.computeCurve=function(){if(null===this.pi){var a=this.bd,b=this.jc;this.pi=null!==a&&a===this.Fd&&!b}return this.pi?Hi:this.Ie}; +W.prototype.computeCorner=function(){if(this.Ie===Hi)return 0;var a=this.iz;if(isNaN(a)||0>a)a=10;return a};W.prototype.findMidLabel=function(){for(var a=this.path,b=this.za.n,c=b.length,d=0;dl?-Math.PI/2:Math.PI/2:(n=Math.atan(l/Math.abs(k)),0>k&&(n=Math.PI-n));var h=b.x,p=b.y,l=d.x-h,q=d.y-p,r=Math.sqrt(l*l+q*q),k=0;Ec(l,0)?k=0>q?-Math.PI/2:Math.PI/2:(k=Math.atan(q/Math.abs(l)),0>l&&(k=Math.PI-k));m=r/m;n=k-n;this.zf(a,b);for(a+= +1;al?-Math.PI/2:Math.PI/2:(q=Math.atan(l/Math.abs(k)),0>k&&(q=Math.PI-q)),k=q+n,b*=m,this.V(a,h+b*Math.cos(k),p+b*Math.sin(k)));this.zf(c,d)}}return!0;case en:f=this.l(a);p=this.l(c);if(!f.Fc(b)||!p.Fc(d)){var e=f.x,f=f.y,h=p.x,p=p.y,m=(h-e)*(h-e)+(p-f)*(p-f),k=b.x,n=b.y,l=d.x,q=d.y,r=0,s=1;0!==l-k?(r=(q-n)/(l-k),s=Math.sqrt(1+1/(r*r))):r=9E9;this.zf(a,b);for(a+=1;ab?0:45<=b&&135>b?90:135<=b&&225>b?180:270;d=-45<=d&&45>d?0:45<=d&&135>d?90:135<=d&&225>d?180:270;var h=e.U.copy(),k=f.U.copy();if(h.G()&&k.G()){h.Qf(8,8);k.Qf(8,8);h.dj(a);k.dj(c);var l,m;if(0===b)if(c.x>a.x||270===d&&c.ya.x||90===d&&c.y>a.y&&k.right>a.x)l=new z(c.x,a.y),m=new z(c.x,(a.y+c.y)/2),180===d?(l.x=this.computeMidOrthoPosition(a.x,c.x,!1),m.x=l.x,m.y=c.y):270===d&&c.ya.y?(l.x=a.xk.bottom)?this.computeMidOrthoPosition(a.x,c.x,!1):k.right,m.x=l.x,m.y=c.y):0===d&&a.xk.top&&a.yh.bottom)180===d&&(k.Fa(a)||h.Fa(c))?l.y=this.computeMidOrthoPosition(a.y,c.y,!0):c.ya.y&&(180===d||270===d)&&(l.y=this.computeMidOrthoPosition(h.bottom,Math.min(c.y,k.top),!0)),m.x=c.x,m.y=l.y;if(l.y>h.top&&l.y=h.left&&c.x<=a.x||a.x<=k.right&&a.x>=c.x){if(90===d||270===d)l=new z(Math.max((a.x+c.x)/2,a.x),a.y),m=new z(l.x,c.y)}else l.y=270===d||(0===d||180===d)&&c.ya.y&&k.lefta.y?(l.x=a.x>k.right?this.computeMidOrthoPosition(a.x,k.right,!1):a.x>k.left&&(270===d&&a.yk.bottom)?this.computeMidOrthoPosition(a.x,c.x,!1):k.left,m.x=l.x,m.y=c.y):180===d&&a.x>k.right&&a.y>k.top&&a.yh.bottom)0===d&&(k.Fa(a)||h.Fa(c))?l.y=this.computeMidOrthoPosition(a.y,c.y,!0):c.ya.y&&(0===d||270===d)&&(l.y=this.computeMidOrthoPosition(h.bottom,Math.min(c.y,k.top),!0)),m.x=c.x,m.y=l.y;if(l.y>h.top&&l.y=a.x||a.x>=k.left&&a.x<=c.x){if(90===d||270===d)l=new z(Math.min((a.x+c.x)/2,a.x),a.y),m=new z(l.x,c.y)}else l.y=270=== +d||(0===d||180===d)&&c.ya.y||180===d&&c.xa.y||0===d&&c.x>a.x&&k.bottom>a.y)l=new z(a.x,c.y),m=new z((a.x+c.x)/2,c.y),270===d?(l.y=this.computeMidOrthoPosition(a.y,c.y,!0),m.x=c.x,m.y=l.y):180===d&&c.xa.x?(l.y=a.yk.right)? +this.computeMidOrthoPosition(a.y,c.y,!0):k.bottom,m.x=c.x,m.y=l.y):90===d&&a.yk.left&&a.xh.right)270===d&&(k.Fa(a)||h.Fa(c))?l.x=this.computeMidOrthoPosition(a.x,c.x,!1):c.xa.x&&(270===d||180===d)&&(l.x=this.computeMidOrthoPosition(h.right, +Math.min(c.x,k.left),!1)),m.x=l.x,m.y=c.y;if(l.x>h.left&&l.x=h.top&&c.y<=a.y||a.y<=k.bottom&&a.y>=c.y){if(0===d||180===d)l=new z(a.x,Math.max((a.y+c.y)/2,a.y)),m=new z(c.x,l.y)}else l.x=180===d||(90===d||270===d)&&c.xa.x&&k.top=a.x?(l.y=a.y>k.bottom?this.computeMidOrthoPosition(a.y,k.bottom,!0):a.y>k.top&&(180===d&&a.xk.right)?this.computeMidOrthoPosition(a.y,c.y,!0):k.top,m.x=c.x,m.y=l.y):270===d&&a.y>k.bottom&&a.x>k.left&&a.xh.right)90===d&&(k.Fa(a)||h.Fa(c))?l.x=this.computeMidOrthoPosition(a.x, +c.x,!1):c.xa.x&&(90===d||180===d)&&(l.x=this.computeMidOrthoPosition(h.right,Math.min(c.x,k.left),!1)),m.x=l.x,m.y=c.y;if(l.x>h.left&&l.x=a.y||a.y>=k.top&&a.y<=c.y){if(0===d||180===d)l=new z(a.x,Math.min((a.y+c.y)/2,a.y)),m=new z(c.x,l.y)}else l.x=180===d||(90===d||270===d)&&c.xk&&0!==Xp(e,c.x,c.y)){Yp(this,e,c.x,c.y,d,!0);d=this.l(2);if(4>this.oa)0===b||180===b?(d.x=a.x,d.y=c.y):(d.x=c.x,d.y=a.y),this.V(2,d.x,d.y),this.w(3,d.x,d.y);else if(c=this.l(3),0===b|| +180===b)K(d.x,c.x)?(b=0===b?Math.max(d.x,a.x):Math.min(d.x,a.x),this.V(2,b,a.y),this.V(3,b,c.y)):K(d.y,c.y)?(Math.abs(a.y-d.y)<=e.Mo/2&&(this.V(2,d.x,a.y),this.V(3,c.x,a.y)),this.w(2,d.x,a.y)):this.V(2,a.x,d.y);else if(90===b||270===b)K(d.y,c.y)?(b=90===b?Math.max(d.y,a.y):Math.min(d.y,a.y),this.V(2,a.x,b),this.V(3,c.x,b)):K(d.x,c.x)?(Math.abs(a.x-d.x)<=e.Oo/2&&(this.V(2,a.x,d.y),this.V(3,a.x,c.y)),this.w(2,a.x,d.y)):this.V(2,d.x,a.y);a=!0}else a=!1}else a=!1;a||(this.Sh(l),this.Sh(m))}}; W.prototype.computeMidOrthoPosition=function(a,b){if(this.hasCurviness()){var c=this.computeCurviness();return(a+b)/2+c}return(a+b)/2};function Gh(a){if(null===a.g||!a.rl)return!1;var b=a.points.n,c=b.length;if(4>c)return!1;a=am(a.g,!0,a.Sa,null);for(var d=1;da){var b=new re(De),c=new Ee(0,0);b.Ub.add(c);return b}var d=!1,b=this.g;null!==b&&Lp(this)&&b.xk.contains(this)&&null!==this.Gv&&(d=!0);var c=b=0,e=this.l(0).copy(),f=e.copy(),b=this.Zc.n,h=this.computeCurve();if(h===Hi&&3<=a&&!Dc(this.Ip,0))if(3===a)var k=this.l(1),b=Math.min(e.x,k.x),c=Math.min(e.y,k.y),k=this.l(2),b=Math.min(b,k.x),c=Math.min(c,k.y);else{if(this.jc)for(k=0;k=a&&(k=a-1),b=this.l(k),f.x=Math.min(b.x,f.x),f.y=Math.min(b.y,f.y);b=f.x;c=f.y}else{for(k=0;kw?r>q?(t.x=x-A,t.y=q-A,u.x=x+s,u.y=q+ -s):(t.x=x-A,t.y=q+A,u.x=x+s,u.y=q-s):r>q?(t.x=x+A,t.y=q-A,u.x=x-s,u.y=q+s):(t.x=x+A,t.y=q+A,u.x=x-s,u.y=q-s));Dc(w,x)&&Dc(q,r)&&(q>p?(z>x?(t.x=x-A,t.y=q-A,u.x=x+s):(t.x=x+A,t.y=q-A,u.x=x-s),u.y=q+s):(z>x?(t.x=x-A,t.y=q+A,u.x=x+s):(t.x=x+A,t.y=q+A,u.x=x-s),u.y=q-s));if(Dc(w,x)&&Dc(x,z)||Dc(p,q)&&Dc(q,r))w=.5*(w+z),p=.5*(p+r),t.x=w,t.y=p,u.x=w,u.y=p;1===k?(e.x=.5*(d.x+m.x),e.y=.5*(d.y+m.y)):2===k&&Dc(d.x,this.l(0).x)&&Dc(d.y,this.l(0).y)&&(e.x=.5*(d.x+m.x),e.y=.5*(d.y+m.y));O(l,e.x-b,e.y-c,h.x-b,h.y- -c,m.x-b,m.y-c);f.set(h);e.set(a);d=m}}k=d.x;d=d.y;f=this.l(this.oa-1);k=.5*(k+f.x);d=.5*(d+f.y);O(l,a.x-b,a.y-c,k-b,d-c,f.x-b,f.y-c)}else for(k=3;k=a&&(k=a-1),f=this.l(k-1),e=this.l(k),k===a-1&&0!==Vp(this)&&(e=e.copy(),Zp(this,e,!1,Xc)),O(l,d.x-b,d.y-c,f.x-b,f.y-c,e.x-b,e.y-c);else{f=v.L();f.assign(this.l(0));for(k=1;k=a-1){f!==t&&(0!==Vp(this)&&(t=t.copy(),Zp(this,t,!1,Xc)),bq(this,l,-b,-c,f,t,d));break}k=$p(this,t,k+1,kn.x?t.x-s:t.x+s,A=u.y>t.y?t.y+x:t.y-x,bq(this,e,h,m,n,new y(q,z),p),cf(e,t.x+h,t.y+m,r+h,A+m),w.m(r,A))):K(n.x,t.x)&&K(t.y,u.y)?(s=this.computeCorner(),x=Math.min(s,Math.abs(t.y-n.y)/2),x=s=Math.min(x,Math.abs(u.x-t.x)/2),K(s,0)?(bq(this,e,h,m,n,t,p),w.assign(t)):(q=t.x,A=z=t.y, -z=t.y>n.y?t.y-x:t.y+x,r=u.x>t.x?t.x+s:t.x-s,bq(this,e,h,m,n,new y(q,z),p),cf(e,t.x+h,t.y+m,r+h,A+m),w.m(r,A))):(bq(this,e,h,m,n,t,p),w.assign(t))}v.v(f)}b=l.o;v.q(l)}return b};function aq(a,b,c,d){a=c-a;if(isNaN(a)||Infinity===a||-Infinity===a)return NaN;0>a&&(a=-a);b=d-b;if(isNaN(b)||Infinity===b||-Infinity===b)return NaN;0>b&&(b=-b);return Dc(a,0)?b:Dc(b,0)?a:Math.sqrt(a*a+b*b)} +e?(f=0,m+=h):180===e?(f=90,n+=k):270===e&&(f=180,m-=h),Xp(b,m,n)===l-1&&Yp(a,b,m,n,f,!1)));a.Yk(c,d)}W.prototype.findClosestSegment=function(a){var b=a.x;a=a.y;for(var c=this.l(0),d=this.l(1),e=Ta(b,a,c.x,c.y,d.x,d.y),f=0,h=1;ha){var b=new re(De),c=new Ee(0,0);b.Ub.add(c);return b}var d=!1,b=this.g;null!==b&&Lp(this)&&b.xk.contains(this)&&null!==this.Hv&&(d=!0);var c=b=0,e=this.l(0).copy(),f=e.copy(),b=this.Zc.n,h=this.computeCurve();if(h===Hi&&3<=a&&!Ec(this.Ip,0))if(3===a)var k=this.l(1),b=Math.min(e.x,k.x),c=Math.min(e.y,k.y),k=this.l(2),b=Math.min(b,k.x),c=Math.min(c,k.y);else{if(this.jc)for(k=0;k=a&&(k=a-1),b=this.l(k),f.x=Math.min(b.x,f.x),f.y=Math.min(b.y,f.y);b=f.x;c=f.y}else{for(k=0;ky?r>q?(t.x=w-A,t.y=q-A,u.x=w+s,u.y=q+ +s):(t.x=w-A,t.y=q+A,u.x=w+s,u.y=q-s):r>q?(t.x=w+A,t.y=q-A,u.x=w-s,u.y=q+s):(t.x=w+A,t.y=q+A,u.x=w-s,u.y=q-s));Ec(y,w)&&Ec(q,r)&&(q>p?(x>w?(t.x=w-A,t.y=q-A,u.x=w+s):(t.x=w+A,t.y=q-A,u.x=w-s),u.y=q+s):(x>w?(t.x=w-A,t.y=q+A,u.x=w+s):(t.x=w+A,t.y=q+A,u.x=w-s),u.y=q-s));if(Ec(y,w)&&Ec(w,x)||Ec(p,q)&&Ec(q,r))y=.5*(y+x),p=.5*(p+r),t.x=y,t.y=p,u.x=y,u.y=p;1===k?(e.x=.5*(d.x+m.x),e.y=.5*(d.y+m.y)):2===k&&Ec(d.x,this.l(0).x)&&Ec(d.y,this.l(0).y)&&(e.x=.5*(d.x+m.x),e.y=.5*(d.y+m.y));O(l,e.x-b,e.y-c,h.x-b,h.y- +c,m.x-b,m.y-c);f.set(h);e.set(a);d=m}}k=d.x;d=d.y;f=this.l(this.oa-1);k=.5*(k+f.x);d=.5*(d+f.y);O(l,a.x-b,a.y-c,k-b,d-c,f.x-b,f.y-c)}else for(k=3;k=a&&(k=a-1),f=this.l(k-1),e=this.l(k),k===a-1&&0!==Vp(this)&&(e=e.copy(),Zp(this,e,!1,Yc)),O(l,d.x-b,d.y-c,f.x-b,f.y-c,e.x-b,e.y-c);else{f=v.L();f.assign(this.l(0));for(k=1;k=a-1){f!==t&&(0!==Vp(this)&&(t=t.copy(),Zp(this,t,!1,Yc)),bq(this,l,-b,-c,f,t,d));break}k=$p(this,t,k+1,kn.x?t.x-s:t.x+s,A=u.y>t.y?t.y+w:t.y-w,bq(this,e,h,m,n,new z(q,x),p),cf(e,t.x+h,t.y+m,r+h,A+m),y.m(r,A))):K(n.x,t.x)&&K(t.y,u.y)?(s=this.computeCorner(),w=Math.min(s,Math.abs(t.y-n.y)/2),w=s=Math.min(w,Math.abs(u.x-t.x)/2),K(s,0)?(bq(this,e,h,m,n,t,p),y.assign(t)):(q=t.x,A=x=t.y, +x=t.y>n.y?t.y-w:t.y+w,r=u.x>t.x?t.x+s:t.x-s,bq(this,e,h,m,n,new z(q,x),p),cf(e,t.x+h,t.y+m,r+h,A+m),y.m(r,A))):(bq(this,e,h,m,n,t,p),y.assign(t))}v.v(f)}b=l.o;v.q(l)}return b};function aq(a,b,c,d){a=c-a;if(isNaN(a)||Infinity===a||-Infinity===a)return NaN;0>a&&(a=-a);b=d-b;if(isNaN(b)||Infinity===b||-Infinity===b)return NaN;0>b&&(b=-b);return Ec(a,0)?b:Ec(b,0)?a:Math.sqrt(a*a+b*b)} function Zp(a,b,c,d){var e=a.oa;if(!(2>e))if(c){var f=a.l(1);c=f.x-d.x;d=f.y-d.y;f=aq(b.x,b.y,c,d);0!==f&&(e=2===e?.5*f:f,a=Up(a),a>e&&(a=e),c=a*(c-b.x)/f,a=a*(d-b.y)/f,b.x+=c,b.y+=a)}else f=a.l(e-2),c=f.x-d.x,d=f.y-d.y,f=aq(b.x,b.y,c,d),0!==f&&(e=2===e?.5*f:f,a=Vp(a),a>e&&(a=e),c=a*(b.x-c)/f,a=a*(b.y-d)/f,b.x-=c,b.y-=a)} -function $p(a,b,c,d){for(var e=a.oa,f=b;Dc(b.x,f.x)&&Dc(b.y,f.y);){if(c>=e)return e-1;f=a.l(c++)}if(!Dc(b.x,f.x)&&!Dc(b.y,f.y))return c-1;for(var h=f;Dc(b.x,f.x)&&Dc(f.x,h.x)&&(!d||(b.y>=f.y?f.y>=h.y:f.y<=h.y))||Dc(b.y,f.y)&&Dc(f.y,h.y)&&(!d||(b.x>=f.x?f.x>=h.x:f.x<=h.x));){if(c>=e)return e-1;h=a.l(c++)}return c-2} -function bq(a,b,c,d,e,f,h){if(!h&&Lp(a)){h=[];var k=0;a.isVisible()&&(k=cq(a,e,f,h));var l=e.x,l=e.y;if(0p-10)m--,p=Math.max(q-5,f.x);else break;q=f.y-10+d;n=p+c;p=f.y+d;a.Je===zi?N(b,n,p,!1,!1):O(b,l,q,n,q,n,p)}else if(K(e.x,f.x))if(e.yp-10)m--,p=Math.max(q-5,f.y);else break;q=f.x-10+c;n=f.x+c;p+=d;a.Je===zi?N(b,n,p,!1,!1):O(b,q,l,q,p,n,p)}}b.lineTo(f.x+c,f.y+d)} -function cq(a,b,c,d){var e=a.g;if(null===e||b.K(c))return 0;for(e=e.Nw;e.next();){var f=e.value;if(null!==f&&f.visible)for(var f=f.wb.n,h=f.length,k=0;kh.x&&n.x>m.x||m.xh.y&&n.y>m.y||m.yt&&Math.min(h,w)q&&!K(h,w)){n.x=t;n.y=q;n=!0;break a}}else if(!K(q,s)&&K(h,w)&&Math.min(q,s)h&&Math.min(t,u)p&&!K(t,u)){n.x=p;n.y=h;n=!0;break a}n.x=0;n.y=0;n=!1}n&&(e?c.push(k.x):c.push(k.y));h=m}v.v(k)}v.u(W,{gt:"firstPickIndex"},function(){return 2>=this.oa?0:this.jc||Op(this)!==sb?1:0});v.u(W,{Mw:"lastPickIndex"},function(){var a=this.oa;return 0===a?0:2>=a?a-1:this.jc||Pp(this)!==sb?a-2:a-1});function Lp(a){a=a.Je;return a===yi||a===zi}function Np(a,b){if(b||Lp(a)){var c=a.g;null===c||c.xk.contains(a)||null===a.Gv||c.xk.add(a,a.Gv)}} -function Bi(a,b){var c=a.layer;if(null!==c&&c.visible&&!c.Gc){var d=c.g;if(null!==d)for(var e=!1,d=d.Nw;d.next();){var f=d.value;if(f.visible)if(f===c)for(var e=!0,h=!1,f=f.wb.n,k=f.length,l=0;l=a.width||0>=a.height)){var b=a.y,c=a.x+a.width,d=a.y+a.height;this.lg=Math.floor((a.x-this.ie)/this.ie)*this.ie;this.mg=Math.floor((b-this.je)/this.je)*this.je;this.mr=Math.ceil((c+2*this.ie)/this.ie)*this.ie;this.nr=Math.ceil((d+2*this.je)/this.je)*this.je;a=1+(Math.ceil((this.mr-this.lg)/this.ie)|0);b=1+(Math.ceil((this.nr-this.mg)/this.je)|0);if(null===this.oc||this.Gothis.mr||a+cthis.nr||b+da&&(c+=a,a=0);0>b&&(e+=b,b=0);if(0>c||0>e)return!0;d=Math.min(a+c-1,this.Go)|0;for(c=Math.min(b+e-1,this.Ho)|0;a<=d;a++)for(e=b;e<=c;e++)if(0===this.oc[a][e])return!1;return!0}; +function $p(a,b,c,d){for(var e=a.oa,f=b;Ec(b.x,f.x)&&Ec(b.y,f.y);){if(c>=e)return e-1;f=a.l(c++)}if(!Ec(b.x,f.x)&&!Ec(b.y,f.y))return c-1;for(var h=f;Ec(b.x,f.x)&&Ec(f.x,h.x)&&(!d||(b.y>=f.y?f.y>=h.y:f.y<=h.y))||Ec(b.y,f.y)&&Ec(f.y,h.y)&&(!d||(b.x>=f.x?f.x>=h.x:f.x<=h.x));){if(c>=e)return e-1;h=a.l(c++)}return c-2} +function bq(a,b,c,d,e,f,h){if(!h&&Lp(a)){h=[];var k=0;a.isVisible()&&(k=cq(a,e,f,h));var l=e.x,l=e.y;if(0p-10)m--,p=Math.max(q-5,f.x);else break;q=f.y-10+d;n=p+c;p=f.y+d;a.Ie===zi?N(b,n,p,!1,!1):O(b,l,q,n,q,n,p)}else if(K(e.x,f.x))if(e.yp-10)m--,p=Math.max(q-5,f.y);else break;q=f.x-10+c;n=f.x+c;p+=d;a.Ie===zi?N(b,n,p,!1,!1):O(b,q,l,q,p,n,p)}}b.lineTo(f.x+c,f.y+d)} +function cq(a,b,c,d){var e=a.g;if(null===e||b.K(c))return 0;for(e=e.Ow;e.next();){var f=e.value;if(null!==f&&f.visible)for(var f=f.wb.n,h=f.length,k=0;kh.x&&n.x>m.x||m.xh.y&&n.y>m.y||m.yt&&Math.min(h,y)q&&!K(h,y)){n.x=t;n.y=q;n=!0;break a}}else if(!K(q,s)&&K(h,y)&&Math.min(q,s)h&&Math.min(t,u)p&&!K(t,u)){n.x=p;n.y=h;n=!0;break a}n.x=0;n.y=0;n=!1}n&&(e?c.push(k.x):c.push(k.y));h=m}v.v(k)}v.u(W,{ht:"firstPickIndex"},function(){return 2>=this.oa?0:this.jc||Op(this)!==sb?1:0});v.u(W,{Nw:"lastPickIndex"},function(){var a=this.oa;return 0===a?0:2>=a?a-1:this.jc||Pp(this)!==sb?a-2:a-1});function Lp(a){a=a.Ie;return a===yi||a===zi}function Np(a,b){if(b||Lp(a)){var c=a.g;null===c||c.xk.contains(a)||null===a.Hv||c.xk.add(a,a.Hv)}} +function Bi(a,b){var c=a.layer;if(null!==c&&c.visible&&!c.Gc){var d=c.g;if(null!==d)for(var e=!1,d=d.Ow;d.next();){var f=d.value;if(f.visible)if(f===c)for(var e=!0,h=!1,f=f.wb.n,k=f.length,l=0;l=a.width||0>=a.height)){var b=a.y,c=a.x+a.width,d=a.y+a.height;this.kg=Math.floor((a.x-this.ge)/this.ge)*this.ge;this.lg=Math.floor((b-this.he)/this.he)*this.he;this.nr=Math.ceil((c+2*this.ge)/this.ge)*this.ge;this.or=Math.ceil((d+2*this.he)/this.he)*this.he;a=1+(Math.ceil((this.nr-this.kg)/this.ge)|0);b=1+(Math.ceil((this.or-this.lg)/this.he)|0);if(null===this.oc||this.Gothis.nr||a+cthis.or||b+da&&(c+=a,a=0);0>b&&(e+=b,b=0);if(0>c||0>e)return!0;d=Math.min(a+c-1,this.Go)|0;for(c=Math.min(b+e-1,this.Ho)|0;a<=d;a++)for(e=b;e<=c;e++)if(0===this.oc[a][e])return!1;return!0}; function gq(a,b,c,d,e,f,h,k,l){if(!(bh||cl)){var m,n;m=b|0;n=c|0;var p=a.oc[m][n];if(1<=p&&999999>p)for(e?n+=d:m+=d,p+=1;f<=m&&m<=h&&k<=n&&n<=l&&!(p>=a.oc[m][n]);)a.oc[m][n]=p,p+=1,e?n+=d:m+=d;m=e?n:m;if(e)if(0m;c+=d)gq(a,b,c,1,!e,f,h,k,l),gq(a,b,c,-1,!e,f,h,k,l);else if(0m;b+=d)gq(a,b,c,1,!e,f,h,k,l),gq(a,b,c,-1,!e,f,h, k,l)}}function hq(a,b,c,d,e,f,h,k,l,m,n){for(var p=b|0,q=c|0,r=a.oc[p][q];0===r&&p>k&&pm&&q=Math.abs(p-d)&&1>=Math.abs(q-e))return a.abort=!0,0;p=b|0;q=c|0;r=a.oc[p][q];b=1;for(a.oc[p][q]=b;0===r&&p>k&&pm&&q=Math.abs(h-l)&&1>=Math.abs(k-m))a.abort=!0;else{var n=f.x;b=f.y;d=f.x+f.width;var p=f.y+f.height,n=n-a.lg,n=n/a.ie;b-=a.mg;b/=a.je;d-=a.lg;d/=a.ie;p-=a.mg;p/=a.je;f=Math.max(0,Math.min(a.Go,n|0));d=Math.min(a.Go,Math.max(0,d|0));b=Math.max(0,Math.min(a.Ho,b|0));var p=Math.min(a.Ho,Math.max(0,p|0)),h=h|0,k=k|0,l=l|0, +function Wp(a,b,c,d,e,f){if(null!==a.oc){a.abort=!1;var h=b.x,k=b.y;if(fq(a,h,k)){var h=h-a.kg,h=h/a.ge,k=k-a.lg,k=k/a.he,l=d.x,m=d.y;if(fq(a,l,m))if(l-=a.kg,l/=a.ge,m-=a.lg,m/=a.he,1>=Math.abs(h-l)&&1>=Math.abs(k-m))a.abort=!0;else{var n=f.x;b=f.y;d=f.x+f.width;var p=f.y+f.height,n=n-a.kg,n=n/a.ge;b-=a.lg;b/=a.he;d-=a.kg;d/=a.ge;p-=a.lg;p/=a.he;f=Math.max(0,Math.min(a.Go,n|0));d=Math.min(a.Go,Math.max(0,d|0));b=Math.max(0,Math.min(a.Ho,b|0));var p=Math.min(a.Ho,Math.max(0,p|0)),h=h|0,k=k|0,l=l|0, m=m|0,n=h,q=k,r=0===c||90===c?1:-1;(c=90===c||270===c)?q=hq(a,h,k,l,m,r,c,f,d,b,p):n=hq(a,h,k,l,m,r,c,f,d,b,p);if(!a.abort){a:{c=0===e||90===e?1:-1;e=90===e||270===e;for(var r=l|0,s=m|0,t=a.oc[r][s];0===t&&r>f&&rb&&s=Math.abs(r-h)&&1>=Math.abs(s-k)){a.abort=!0;break a}r=l|0;s=m|0;t=a.oc[r][s];for(a.oc[r][s]=999999;0===t&&r>f&&rb&&s=c?180:0}a=180*Math.atan2(a.height,a.width)/Math.PI;switch(b){case v.Nc|v.ed:return c>a&&c<=180+a?180:270;case v.ed|v.Xc:return c>180-a&&c<=360-a?270:0;case v.Xc|v.Wc:return c>a&&c<=180+a?90:0;case v.Wc|v.Nc:return c>180-a&&c<=360-a?180:90;case v.Nc|v.ed|v.Xc:return 90180+a&&c<=360- -a?270:0;case v.ed|v.Xc|v.Wc:return 180a&&180>=c?90:0;case v.Xc|v.Wc|v.Nc:return c>a&&c<=180-a?90:c>180-a&&270>=c?180:0;case v.Wc|v.Nc|v.ed:return c>180-a&&c<=180+a?180:c>180+a?270:90}d&&b!==(v.Nc|v.ed|v.Xc|v.Wc)&&(c-=15,0>c&&(c+=360));return c>a&&c<180-a?90:c>=180-a&&c<=180+a?180:c>180+a&&c<360-a?270:0}Sp.prototype.Rm=function(){this.Yf.length=0}; -function Tp(a,b){var c=a.Yf;if(0===c.length){a:if(!a.sp){c=a.sp;a.sp=!0;var d,e=null,f=a.Jc,f=f instanceof V?f:null;if(null===f||f.fe)d=a.Jc.GD(a.port.Ud);else{if(!f.U.G()){a.sp=c;break a}e=f;d=e.FD()}var h=a.Yf.length=0,k=a.port.Xa(tb,v.L()),l=a.port.Xa(Fb,v.L()),f=v.gk(k.x,k.y,0,0);f.ej(l);v.v(k);v.v(l);k=v.Mb(f.x+f.width/2,f.y+f.height/2);for(d=d.i;d.next();)if(l=d.value,l.isVisible()){var m=sb,n=l.bd===a.port||l.S.Zh(e),m=n?Op(l,a.port):Pp(l,a.port);if(m.Wi()&&(n=n?l.Hd:l.bd,null!==n)){var p= -n.Y;if(null!==p){var n=l.computeOtherPoint(p,n),p=k.xc(n),m=iq(f,m,p,l.jc),q=0;0===m?(q=v.Xc,180 -Math.abs(C)?(z=Math.abs(C)/q,q=Math.abs(C)):z=1;break;case v.Nc:r>Math.abs(H)?(z=Math.abs(H)/r,r=Math.abs(H)):z=1;break;case v.ed:n>Math.abs(C)?(z=Math.abs(C)/n,n=Math.abs(C)):z=1;break;default:case v.Xc:p>Math.abs(H)?(z=Math.abs(H)/p,p=Math.abs(H)):z=1}x=0}var T=t.kp;if(e===pp){u=t.link.computeThickness();u*=z;T.set(A);switch(w){case v.Wc:T.x=A.x+C/2+q/2-x-u/2;break;case v.Nc:T.y=A.y+H/2+r/2-x-u/2;break;case v.ed:T.x=A.x+C/2-n/2+x+u/2;break;default:case v.Xc:T.y=A.y+H/2-p/2+x+u/2}x+=u}else u=.5, -e===mp&&(u=(t.dp+1)/(t.Jm+1)),T.x=A.x+C*u,T.y=A.y+H*u}v.v(k);v.v(d);v.v(l);v.v(m);A=a.Yf;for(C=0;Cb.he?1:a.angleb.angle?1:0}; -Sp.prototype.computeEndSegmentLength=function(a){var b=a.link,c=b.computeEndSegmentLength(this.Jc,this.port,sb,b.bd===this.port),d=a.dp;if(0>d)return c;var e=a.Jm;if(1>=e||!b.jc)return c;var b=a.Tw,f=a.kp;if(a.he===v.Nc||a.he===v.Wc)d=e-1-d;return((a=a.he===v.Nc||a.he===v.Xc)?b.ye&&(e=k.right);k.bottom>f&&(f=k.bottom)}}isFinite(c)&&isFinite(d)?a.m(c,d,e-c,f-d):(b=b.location,c=this.padding,a.m(b.x+c.left,b.y+c.top,0,0));return a}; -v.defineProperty(Mi,{padding:"padding"},function(){return this.Te},function(a){"number"===typeof a?((isNaN(a)||0>a)&&v.va(a,">= 0",Mi,"padding"),a=new eb(a)):(v.A(a,eb,Mi,"padding"),(isNaN(a.left)||0>a.left)&&v.va(a.left,">= 0",Mi,"padding:value.left"),(isNaN(a.right)||0>a.right)&&v.va(a.right,">= 0",Mi,"padding:value.right"),(isNaN(a.top)||0>a.top)&&v.va(a.top,">= 0",Mi,"padding:value.top"),(isNaN(a.bottom)||0>a.bottom)&&v.va(a.bottom,">= 0",Mi,"padding:value.bottom"));var b=this.Te;b.K(a)||(this.Te= -a=a.R(),this.h("padding",b,a))});function Yf(){0=c-1?(h=0,e=d,f+=k+20,k=0):h++}null!==a&&a.yd("Layout")}this.xf=!0};Yf.prototype.Qz=function(a){return!a.location.G()||a instanceof V&&a.By?!0:!1}; -function mq(a,b,c,d,e,f,h,k){for(c=c.i;c.next();){var l=c.value;d&&!l.gp||null!==e&&!e(l)||!l.canLayout()||(f&&l instanceof S?l.vf||(l instanceof V?null===l.Pb?mq(a,b,l.Ic,!1,e,f,h,k):b.add(l):b.add(l)):h&&l instanceof W?b.add(l):!k||!l.Rd()||l instanceof S||b.add(l))}} -Yf.prototype.collectParts=Yf.prototype.lG=function(a){var b=new J(R);a instanceof E?(mq(this,b,a.Bg,!0,null,!0,!0,!0),mq(this,b,a.links,!0,null,!0,!0,!0),mq(this,b,a.dk,!0,null,!0,!0,!0)):a instanceof V?mq(this,b,a.Ic,!1,null,!0,!0,!0):mq(this,b,a.i,!1,null,!0,!0,!0);return b};v.defineProperty(Yf,{Zd:"arrangementOrigin"},function(){return this.Wp},function(a){v.A(a,y,Yf,"arrangementOrigin");this.Wp.K(a)||(this.Wp.assign(a),this.H())}); -Yf.prototype.initialOrigin=function(a){var b=this.group;if(null!==b){var c=b.position.copy();(isNaN(c.x)||isNaN(c.y))&&c.set(a);b=b.placeholder;null!==b&&(c=b.Xa(tb),(isNaN(c.x)||isNaN(c.y))&&c.set(a),c.x+=b.padding.left,c.y+=b.padding.top);return c}return a};function Zf(){v.ec(this);this.Wd=null;this.clear()}v.ea("LayoutNetwork",Zf); -Zf.prototype.clear=function(){if(this.vertexes)for(var a=this.vertexes.i;a.next();){var b=a.value;b.clear();b.network=null}if(this.edges)for(a=this.edges.i;a.next();)b=a.value,b.clear(),b.network=null;this.vertexes=new J(nq);this.edges=new J(oq);this.Uz=new na(S,nq);this.Gz=new na(W,oq)}; -Zf.prototype.toString=function(a){void 0===a&&(a=0);var b="LayoutNetwork"+(null!==this.Pb?"("+this.Pb.toString()+")":"");if(0>=a)return b;b+=" vertexes: "+this.vertexes.count+" edges: "+this.edges.count;if(1a&&180>=c?90:0;case v.Xc|v.Wc|v.Nc:return c>a&&c<=180-a?90:c>180-a&&270>=c?180:0;case v.Wc|v.Nc|v.ed:return c>180-a&&c<=180+a?180:c>180+a?270:90}d&&b!==(v.Nc|v.ed|v.Xc|v.Wc)&&(c-=15,0>c&&(c+=360));return c>a&&c<180-a?90:c>=180-a&&c<=180+a?180:c>180+a&&c<360-a?270:0}Sp.prototype.Rm=function(){this.Xf.length=0}; +function Tp(a,b){var c=a.Xf;if(0===c.length){a:if(!a.sp){c=a.sp;a.sp=!0;var d,e=null,f=a.Jc,f=f instanceof V?f:null;if(null===f||f.de)d=a.Jc.KD(a.port.Sd);else{if(!f.U.G()){a.sp=c;break a}e=f;d=e.JD()}var h=a.Xf.length=0,k=a.port.Xa(tb,v.L()),l=a.port.Xa(Fb,v.L()),f=v.gk(k.x,k.y,0,0);f.dj(l);v.v(k);v.v(l);k=v.Mb(f.x+f.width/2,f.y+f.height/2);for(d=d.i;d.next();)if(l=d.value,l.isVisible()){var m=sb,n=l.bd===a.port||l.T.Xh(e),m=n?Op(l,a.port):Pp(l,a.port);if(m.Ui()&&(n=n?l.Fd:l.bd,null!==n)){var p= +n.Y;if(null!==p){var n=l.computeOtherPoint(p,n),p=k.xc(n),m=iq(f,m,p,l.jc),q=0;0===m?(q=v.Xc,180 +Math.abs(C)?(x=Math.abs(C)/q,q=Math.abs(C)):x=1;break;case v.Nc:r>Math.abs(H)?(x=Math.abs(H)/r,r=Math.abs(H)):x=1;break;case v.ed:n>Math.abs(C)?(x=Math.abs(C)/n,n=Math.abs(C)):x=1;break;default:case v.Xc:p>Math.abs(H)?(x=Math.abs(H)/p,p=Math.abs(H)):x=1}w=0}var T=t.kp;if(e===pp){u=t.link.computeThickness();u*=x;T.set(A);switch(y){case v.Wc:T.x=A.x+C/2+q/2-w-u/2;break;case v.Nc:T.y=A.y+H/2+r/2-w-u/2;break;case v.ed:T.x=A.x+C/2-n/2+w+u/2;break;default:case v.Xc:T.y=A.y+H/2-p/2+w+u/2}w+=u}else u=.5, +e===mp&&(u=(t.dp+1)/(t.Jm+1)),T.x=A.x+C*u,T.y=A.y+H*u}v.v(k);v.v(d);v.v(l);v.v(m);A=a.Xf;for(C=0;Cb.fe?1:a.angleb.angle?1:0}; +Sp.prototype.computeEndSegmentLength=function(a){var b=a.link,c=b.computeEndSegmentLength(this.Jc,this.port,sb,b.bd===this.port),d=a.dp;if(0>d)return c;var e=a.Jm;if(1>=e||!b.jc)return c;var b=a.Uw,f=a.kp;if(a.fe===v.Nc||a.fe===v.Wc)d=e-1-d;return((a=a.fe===v.Nc||a.fe===v.Xc)?b.ye&&(e=k.right);k.bottom>f&&(f=k.bottom)}}isFinite(c)&&isFinite(d)?a.m(c,d,e-c,f-d):(b=b.location,c=this.padding,a.m(b.x+c.left,b.y+c.top,0,0));return a}; +v.defineProperty(Mi,{padding:"padding"},function(){return this.Se},function(a){"number"===typeof a?((isNaN(a)||0>a)&&v.va(a,">= 0",Mi,"padding"),a=new eb(a)):(v.A(a,eb,Mi,"padding"),(isNaN(a.left)||0>a.left)&&v.va(a.left,">= 0",Mi,"padding:value.left"),(isNaN(a.right)||0>a.right)&&v.va(a.right,">= 0",Mi,"padding:value.right"),(isNaN(a.top)||0>a.top)&&v.va(a.top,">= 0",Mi,"padding:value.top"),(isNaN(a.bottom)||0>a.bottom)&&v.va(a.bottom,">= 0",Mi,"padding:value.bottom"));var b=this.Se;b.K(a)||(this.Se= +a=a.R(),this.h("padding",b,a))});function Yf(){0=c-1?(h=0,e=d,f+=k+20,k=0):h++}null!==a&&a.wd("Layout")}this.wf=!0};Yf.prototype.Uz=function(a){return!a.location.G()||a instanceof V&&a.Cy?!0:!1}; +function mq(a,b,c,d,e,f,h,k){for(c=c.i;c.next();){var l=c.value;d&&!l.gp||null!==e&&!e(l)||!l.canLayout()||(f&&l instanceof S?l.uf||(l instanceof V?null===l.Pb?mq(a,b,l.Ic,!1,e,f,h,k):b.add(l):b.add(l)):h&&l instanceof W?b.add(l):!k||!l.Pd()||l instanceof S||b.add(l))}} +Yf.prototype.collectParts=Yf.prototype.nG=function(a){var b=new J(R);a instanceof E?(mq(this,b,a.Ag,!0,null,!0,!0,!0),mq(this,b,a.links,!0,null,!0,!0,!0),mq(this,b,a.dk,!0,null,!0,!0,!0)):a instanceof V?mq(this,b,a.Ic,!1,null,!0,!0,!0):mq(this,b,a.i,!1,null,!0,!0,!0);return b};v.defineProperty(Yf,{Xd:"arrangementOrigin"},function(){return this.Wp},function(a){v.A(a,z,Yf,"arrangementOrigin");this.Wp.K(a)||(this.Wp.assign(a),this.H())}); +Yf.prototype.initialOrigin=function(a){var b=this.group;if(null!==b){var c=b.position.copy();(isNaN(c.x)||isNaN(c.y))&&c.set(a);b=b.placeholder;null!==b&&(c=b.Xa(tb),(isNaN(c.x)||isNaN(c.y))&&c.set(a),c.x+=b.padding.left,c.y+=b.padding.top);return c}return a};function Zf(){v.ec(this);this.Ud=null;this.clear()}v.ea("LayoutNetwork",Zf); +Zf.prototype.clear=function(){if(this.vertexes)for(var a=this.vertexes.i;a.next();){var b=a.value;b.clear();b.network=null}if(this.edges)for(a=this.edges.i;a.next();)b=a.value,b.clear(),b.network=null;this.vertexes=new J(nq);this.edges=new J(oq);this.Yz=new na(S,nq);this.Kz=new na(W,oq)}; +Zf.prototype.toString=function(a){void 0===a&&(a=0);var b="LayoutNetwork"+(null!==this.Pb?"("+this.Pb.toString()+")":"");if(0>=a)return b;b+=" vertexes: "+this.vertexes.count+" edges: "+this.edges.count;if(1d?1:0):1:null!==d?-1:0}; -nq.smartComparer=function(a,b){if(null!==a){if(null!==b){var c=a.rd,d=b.rd;if(null!==c){if(null!==d){for(var c=c.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),d=d.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),e=0;ed?1:0):1:null!==d?-1:0}; +nq.smartComparer=function(a,b){if(null!==a){if(null!==b){var c=a.qd,d=b.qd;if(null!==c){if(null!==d){for(var c=c.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),d=d.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),e=0;e=f&&0>=h&&(f=1);a=this.spacing.width;isFinite(a)||(a=0);c=this.spacing.height;isFinite(c)||(c=0);null!==b&&b.Qb("Layout");d=[];switch(this.alignment){case un:var k=a,l=c,m=Math.max(this.No.width,1);if(!isFinite(m))for(var n=m=0;nf-1||0h)d.push(new B(0,w,h+k,z)),x=0,u=t,w+=z,z=0;z=Math.max(z,H);H=0;switch(s){case nn:H=-q.width;break;default:H=0}p.moveTo(u+H,w);switch(s){case nn:u-=A;break; -default:u+=A}x++}d.push(new B(0,w,h+k,z));break;case tn:k=f;l=a;m=c;n=Math.max(this.No.width,1);p=w=A=0;q=v.L();for(f=0;f=A&&(h-=A);for(var A=H=0,C=Math.max(this.No.height,1),ba=p=0,U=!0,M=v.L(),f=0;fk-1||0h){d.push(new B(0,U?x-p:x,h+l,ba+p+m));for(T=0;TA&&(e.width+=e.x-A,e.x=A)}for(k=f=h=e=0;kd?1:0}; +oq.prototype.toString=function(a){void 0===a&&(a=0);var b="LayoutEdge#"+v.ld(this);0=f&&0>=h&&(f=1);a=this.spacing.width;isFinite(a)||(a=0);c=this.spacing.height;isFinite(c)||(c=0);null!==b&&b.Qb("Layout");d=[];switch(this.alignment){case un:var k=a,l=c,m=Math.max(this.No.width,1);if(!isFinite(m))for(var n=m=0;nf-1||0h)d.push(new B(0,y,h+k,x)),w=0,u=t,y+=x,x=0;x=Math.max(x,H);H=0;switch(s){case nn:H=-q.width;break;default:H=0}p.moveTo(u+H,y);switch(s){case nn:u-=A;break; +default:u+=A}w++}d.push(new B(0,y,h+k,x));break;case tn:k=f;l=a;m=c;n=Math.max(this.No.width,1);p=y=A=0;q=v.L();for(f=0;f=A&&(h-=A);for(var A=H=0,C=Math.max(this.No.height,1),ba=p=0,U=!0,M=v.L(),f=0;fk-1||0h){d.push(new B(0,U?w-p:w,h+l,ba+p+m));for(T=0;TA&&(e.width+=e.x-A,e.x=A)}for(k=f=h=e=0;kd?1:0}; lm.smartComparer=function(a,b){if(null!==a){if(null!==b){for(var c=a.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),d=b.text.toLocaleLowerCase().split(/([+\-]?[\.]?\d+(?:\.\d*)?(?:e[+\-]?\d+)?)/),e=0;e=a.count)1===a.count&&(a=a.first(),a.na=0,a.ua=0);else{var b=new I(xq);b.Tc(a.i);a=new I(xq);var c=new I(xq),d;d=this.sort(b);var e=this.Zx,f=this.zB,h=this.Ld,k=this.Kn,l=this.$x,m=this.Bq,b=this.yk,n=this.QC,p=this.tg,q=this.Cu,e=this.Of,f=this.Qw,h=this.cI;if(!isFinite(h)|| -0>=h)h=NaN;k=this.fG;if(!isFinite(k)||0>=k)k=1;l=this.ye;isFinite(l)||(l=0);m=this.Bf;if(!isFinite(m)||360m)m=360;b=this.spacing;isFinite(b)||(b=NaN);e===In&&f===Jn?e=Hn:e===In&&f!==Jn&&(f=Jn,e=this.Of);if((this.direction===Bn||this.direction===Cn)&&this.sorting!==An){for(var r=0;!(r>=d.length);r+=2){a.add(d.da(r));if(r+1>=d.length)break;c.add(d.da(r+1))}this.direction===Bn?(this.Of===In&&a.reverse(),d=new I(xq),d.Tc(a),d.Tc(c)):(this.Of===In&&c.reverse(),d=new I(xq),d.Tc(c),d.Tc(a))}for(var s= -d.length,t=n=0,r=0;rm&&(0===r||r===d.length-1)&&(u/=2);n+=u;t++}if(isNaN(h)||e===In){isNaN(b)&&(b=6);if(e!==Hn&&e!==In){u=-Infinity;for(r=0;rh?(h=r,p=h*k):q=t/(360<=m?s:s-1)}this.Zx=e;this.zB=f;this.Ld=h;this.Kn=k;this.$x=l;this.Bq=m;this.yk=b;this.QC=n;this.tg=p;this.Cu=q;b=d;d=this.Zx;e=this.Ld;f=this.$x;k=this.Bq;l=this.yk;m=this.tg;n=this.Cu;if(this.direction!==Bn&&this.direction!==Cn||d!==In)if(this.direction===Bn||this.direction===Cn){h=0;switch(d){case Gn:h=180*Bq(this,e,m,f,n)/Math.PI;break;case Hn:n=b=0;h=a.first();null!==h&&(b=yq(h,Math.PI/2));h=c.first();null!==h&&(n=yq(h,Math.PI/2));h=180*Bq(this,e,m,f,l+(b+ +function vn(){0=a.count)1===a.count&&(a=a.first(),a.na=0,a.ua=0);else{var b=new I(xq);b.Tc(a.i);a=new I(xq);var c=new I(xq),d;d=this.sort(b);var e=this.$x,f=this.DB,h=this.Jd,k=this.Kn,l=this.ay,m=this.Bq,b=this.yk,n=this.TC,p=this.sg,q=this.Du,e=this.Nf,f=this.Rw,h=this.eI;if(!isFinite(h)|| +0>=h)h=NaN;k=this.hG;if(!isFinite(k)||0>=k)k=1;l=this.xe;isFinite(l)||(l=0);m=this.Af;if(!isFinite(m)||360m)m=360;b=this.spacing;isFinite(b)||(b=NaN);e===In&&f===Jn?e=Hn:e===In&&f!==Jn&&(f=Jn,e=this.Nf);if((this.direction===Bn||this.direction===Cn)&&this.sorting!==An){for(var r=0;!(r>=d.length);r+=2){a.add(d.da(r));if(r+1>=d.length)break;c.add(d.da(r+1))}this.direction===Bn?(this.Nf===In&&a.reverse(),d=new I(xq),d.Tc(a),d.Tc(c)):(this.Nf===In&&c.reverse(),d=new I(xq),d.Tc(c),d.Tc(a))}for(var s= +d.length,t=n=0,r=0;rm&&(0===r||r===d.length-1)&&(u/=2);n+=u;t++}if(isNaN(h)||e===In){isNaN(b)&&(b=6);if(e!==Hn&&e!==In){u=-Infinity;for(r=0;rh?(h=r,p=h*k):q=t/(360<=m?s:s-1)}this.$x=e;this.DB=f;this.Jd=h;this.Kn=k;this.ay=l;this.Bq=m;this.yk=b;this.TC=n;this.sg=p;this.Du=q;b=d;d=this.$x;e=this.Jd;f=this.ay;k=this.Bq;l=this.yk;m=this.sg;n=this.Du;if(this.direction!==Bn&&this.direction!==Cn||d!==In)if(this.direction===Bn||this.direction===Cn){h=0;switch(d){case Gn:h=180*Bq(this,e,m,f,n)/Math.PI;break;case Hn:n=b=0;h=a.first();null!==h&&(b=yq(h,Math.PI/2));h=c.first();null!==h&&(n=yq(h,Math.PI/2));h=180*Bq(this,e,m,f,l+(b+ n)/2)/Math.PI;break;case Fn:h=k/b.length}if(this.direction===Bn){switch(d){case Gn:Cq(this,a,f,En);break;case Hn:Dq(this,a,f,En);break;case Fn:Eq(this,a,k/2,f,En)}switch(d){case Gn:Cq(this,c,f+h,Dn);break;case Hn:Dq(this,c,f+h,Dn);break;case Fn:Eq(this,c,k/2,f+h,Dn)}}else{switch(d){case Gn:Cq(this,c,f,En);break;case Hn:Dq(this,c,f,En);break;case Fn:Eq(this,c,k/2,f,En)}switch(d){case Gn:Cq(this,a,f+h,Dn);break;case Hn:Dq(this,a,f+h,Dn);break;case Fn:Eq(this,a,k/2,f+h,Dn)}}}else switch(d){case Gn:Cq(this, -b,f,this.direction);break;case Hn:Dq(this,b,f,this.direction);break;case Fn:Eq(this,b,k,f,this.direction);break;case In:Fq(this,b,k,f,this.direction)}else Fq(this,b,k,f-k/2,Dn)}this.updateParts();this.network=null;this.xf=!0}; -function Eq(a,b,c,d,e){var f=a.Bq,h=a.Ld;a=a.tg;d=d*Math.PI/180;c=c*Math.PI/180;for(var k=b.length,l=0;lc){for(f=d+(e===Dn?f:-f);0>f;)f+=360;f%=360;180=n.length-1)break;Iq(a,l,m,n,p,e,f)||Jq(a,l,m,n,p,e,f);l=f.x;m=f.y}v.v(f);a.im++;if(!(23Math.abs(r)?Math.abs(l-f)<(n[0].width+n[n.length-1].width)/2&&(h=0):h=0Math.abs(q)?0:q;q=!1;q=Math.abs(f)>Math.abs(p)?0p:0a.im?a.Ld-h/(2*Math.PI):5>n.length&&10=p.length-1)break;Iq(a,l,m,p,q,e,n)||Jq(a,l,m,p,q,e,n);l=n.x;m=n.y}v.v(n);a.im++;if(!(23a.im?a.Ld-f/(2*Math.PI):a.Ld-(0k){m=b-a;if(m<-k)return h.x=m,h.y=n,!1;p=!0}}else if(m=b-a,m<-k){m=b+a;if(m>k)return h.x=m,h.y=n,!1;p=!0}n=Math.sqrt(1-Math.min(1,m*m/(k*k)))*l;0>c!==p&&(n=-n);if(Math.abs(c-n)>(d[e].height+d[e+1].height)/2)return h.x=m,h.y=n,!1;h.x=m;h.y=n;return!0} -function Jq(a,b,c,d,e,f,h){var k=a.Ld,l=a.tg,m=0,n=0;a=(d[e].height+d[e+1].height)/2+a.yk;d=!1;if(0<=b!==(f===Dn)){if(n=c-a,n<-l){n=c+a;if(n>l){h.x=m;h.y=n;return}d=!0}}else if(n=c+a,n>l){n=c-a;if(n<-l){h.x=m;h.y=n;return}d=!0}m=Math.sqrt(1-Math.min(1,n*n/(l*l)))*k;0>b!==d&&(m=-m);h.x=m;h.y=n}vn.prototype.commitLayout=function(){this.commitNodes();this.wt&&this.commitLinks()}; -vn.prototype.commitNodes=function(){for(var a=this.VF,b=this.network.vertexes.i;b.next();){var c=b.value;c.x+=a.x;c.y+=a.y;c.commit()}};vn.prototype.commitLinks=function(){for(var a=this.network.edges.i;a.next();)a.value.commit()}; -function Aq(a,b,c,d,e){var f=a.JF;if(.001>Math.abs(a.Kn-1))return void 0!==d&&void 0!==e?e*b:2*Math.PI*b;a=b>c?Math.sqrt(b*b-c*c)/b:Math.sqrt(c*c-b*b)/c;for(var h=0,k=0,k=void 0!==d&&void 0!==e?e/(f+1):Math.PI/(2*(f+1)),l=0,m=0;m<=f;m++)l=void 0!==d&&void 0!==e?d+m*e/f:m*Math.PI/(2*f),l=Math.sin(l),h+=Math.sqrt(1-a*a*l*l)*k;return void 0!==d&&void 0!==e?(b>c?b:c)*h:4*(b>c?b:c)*h}function zq(a,b,c,d,e){var f=0,f=void 0!==d&&void 0!==e?Aq(a,1,c,d,e):Aq(a,1,c);return b/f} +b,f,this.direction);break;case Hn:Dq(this,b,f,this.direction);break;case Fn:Eq(this,b,k,f,this.direction);break;case In:Fq(this,b,k,f,this.direction)}else Fq(this,b,k,f-k/2,Dn)}this.updateParts();this.network=null;this.wf=!0}; +function Eq(a,b,c,d,e){var f=a.Bq,h=a.Jd;a=a.sg;d=d*Math.PI/180;c=c*Math.PI/180;for(var k=b.length,l=0;lc){for(f=d+(e===Dn?f:-f);0>f;)f+=360;f%=360;180=n.length-1)break;Iq(a,l,m,n,p,e,f)||Jq(a,l,m,n,p,e,f);l=f.x;m=f.y}v.v(f);a.hm++;if(!(23Math.abs(r)?Math.abs(l-f)<(n[0].width+n[n.length-1].width)/2&&(h=0):h=0Math.abs(q)?0:q;q=!1;q=Math.abs(f)>Math.abs(p)?0p:0a.hm?a.Jd-h/(2*Math.PI):5>n.length&&10=p.length-1)break;Iq(a,l,m,p,q,e,n)||Jq(a,l,m,p,q,e,n);l=n.x;m=n.y}v.v(n);a.hm++;if(!(23a.hm?a.Jd-f/(2*Math.PI):a.Jd-(0k){m=b-a;if(m<-k)return h.x=m,h.y=n,!1;p=!0}}else if(m=b-a,m<-k){m=b+a;if(m>k)return h.x=m,h.y=n,!1;p=!0}n=Math.sqrt(1-Math.min(1,m*m/(k*k)))*l;0>c!==p&&(n=-n);if(Math.abs(c-n)>(d[e].height+d[e+1].height)/2)return h.x=m,h.y=n,!1;h.x=m;h.y=n;return!0} +function Jq(a,b,c,d,e,f,h){var k=a.Jd,l=a.sg,m=0,n=0;a=(d[e].height+d[e+1].height)/2+a.yk;d=!1;if(0<=b!==(f===Dn)){if(n=c-a,n<-l){n=c+a;if(n>l){h.x=m;h.y=n;return}d=!0}}else if(n=c+a,n>l){n=c-a;if(n<-l){h.x=m;h.y=n;return}d=!0}m=Math.sqrt(1-Math.min(1,n*n/(l*l)))*k;0>b!==d&&(m=-m);h.x=m;h.y=n}vn.prototype.commitLayout=function(){this.commitNodes();this.xt&&this.commitLinks()}; +vn.prototype.commitNodes=function(){for(var a=this.XF,b=this.network.vertexes.i;b.next();){var c=b.value;c.x+=a.x;c.y+=a.y;c.commit()}};vn.prototype.commitLinks=function(){for(var a=this.network.edges.i;a.next();)a.value.commit()}; +function Aq(a,b,c,d,e){var f=a.MF;if(.001>Math.abs(a.Kn-1))return void 0!==d&&void 0!==e?e*b:2*Math.PI*b;a=b>c?Math.sqrt(b*b-c*c)/b:Math.sqrt(c*c-b*b)/c;for(var h=0,k=0,k=void 0!==d&&void 0!==e?e/(f+1):Math.PI/(2*(f+1)),l=0,m=0;m<=f;m++)l=void 0!==d&&void 0!==e?d+m*e/f:m*Math.PI/(2*f),l=Math.sin(l),h+=Math.sqrt(1-a*a*l*l)*k;return void 0!==d&&void 0!==e?(b>c?b:c)*h:4*(b>c?b:c)*h}function zq(a,b,c,d,e){var f=0,f=void 0!==d&&void 0!==e?Aq(a,1,c,d,e):Aq(a,1,c);return b/f} function Bq(a,b,c,d,e){if(.001>Math.abs(a.Kn-1))return e/b;var f=b>c?Math.sqrt(b*b-c*c)/b:Math.sqrt(c*c-b*b)/c,h=0;a=2*Math.PI/(700*a.network.vertexes.count);b>c&&(d+=Math.PI/2);for(var k=0;;k++){var l=Math.sin(d+k*a),h=h+(b>c?b:c)*Math.sqrt(1-f*f*l*l)*a;if(h>=e)return k*a}} -vn.prototype.sort=function(a){switch(this.sorting){case yn:break;case zn:a.reverse();break;case wn:a.sort(this.comparer);break;case xn:a.sort(this.comparer);a.reverse();break;case An:for(var b=[],c=0;ce&&(e=k,f=h)}else for(h=0;he&&(e=k,f=h);d.add(a.da(f));b[f]=-1;f=a.da(f);e=0;for(h=f.lc;h.next();)e=a.indexOf(h.value.fromVertex),0>e||0<=b[e]&& -b[e]++;for(f=f.$b;f.next();)e=a.indexOf(f.value.toVertex),0>e||0<=b[e]&&b[e]++}a=[];for(b=0;ba[b].indexOf(l)&&a[b].push(l);for(c=h.lc;c.next();)l=d.indexOf(c.value.fromVertex),l!==b&&0>a[b].indexOf(l)&&a[b].push(l)}h=[];for(b=0;ba[c[p]].indexOf(c[p===c.length-1?0:p+1])&&t.push(p===c.length-1?0:p+1);if(0===t.length)for(p=0;pH.indexOf(U)||MH.indexOf(U)|| -M=u?l+1:l)),x+=l=u&&l++,A>=u&&A++,l>A&&(H=A,A=l,l=H),A-l<(c.length+2)/2===(lq||q===l||(s=q>l?q-l:l-q,p+=qm-s?1:-1);c.splice(0>p?l:l+1,0,b);e.splice(h,1);h--}else k=!1;if(k)break;else c.push(e[0]),e.splice(0,1)}for(b=0;b=a?a:360,this.H())}); -v.defineProperty(vn,{Of:"arrangement"},function(){return this.fd},function(a){this.fd!==a&&(v.pb(a,vn,vn,"arrangement"),a===In||a===Hn||a===Gn||a===Fn)&&(this.fd=a,this.H())});v.defineProperty(vn,{direction:"direction"},function(){return this.aa},function(a){this.aa!==a&&(v.pb(a,vn,vn,"direction"),a===Dn||a===En||a===Bn||a===Cn)&&(this.aa=a,this.H())}); -v.defineProperty(vn,{sorting:"sorting"},function(){return this.Nh},function(a){this.Nh!==a&&(v.pb(a,vn,vn,"sorting"),a===yn||a===zn||a===wn||xn||a===An)&&(this.Nh=a,this.H())});v.defineProperty(vn,{comparer:"comparer"},function(){return this.wh},function(a){this.wh!==a&&(v.j(a,"function",vn,"comparer"),this.wh=a,this.H())});v.defineProperty(vn,{spacing:"spacing"},function(){return this.Oh},function(a){this.Oh!==a&&(v.j(a,"number",vn,"spacing"),this.Oh=a,this.H())}); -v.defineProperty(vn,{Qw:"nodeDiameterFormula"},function(){return this.Dr},function(a){this.Dr!==a&&(v.pb(a,vn,vn,"nodeDiameterFormula"),a===Kn||a===Jn)&&(this.Dr=a,this.H())});v.u(vn,{WF:"actualXRadius"},function(){return this.Ld});v.u(vn,{XF:"actualYRadius"},function(){return this.tg});v.u(vn,{WI:"actualSpacing"},function(){return this.yk});v.u(vn,{VF:"actualCenter"},function(){return isNaN(this.Zd.x)||isNaN(this.Zd.y)?new y(0,0):new y(this.Zd.x+this.WF,this.Zd.y+this.XF)});var Hn; +vn.prototype.sort=function(a){switch(this.sorting){case yn:break;case zn:a.reverse();break;case wn:a.sort(this.comparer);break;case xn:a.sort(this.comparer);a.reverse();break;case An:for(var b=[],c=0;ce&&(e=k,f=h)}else for(h=0;he&&(e=k,f=h);d.add(a.da(f));b[f]=-1;f=a.da(f);e=0;for(h=f.lc;h.next();)e=a.indexOf(h.value.fromVertex),0>e||0<=b[e]&& +b[e]++;for(f=f.ac;f.next();)e=a.indexOf(f.value.toVertex),0>e||0<=b[e]&&b[e]++}a=[];for(b=0;ba[b].indexOf(l)&&a[b].push(l);for(c=h.lc;c.next();)l=d.indexOf(c.value.fromVertex),l!==b&&0>a[b].indexOf(l)&&a[b].push(l)}h=[];for(b=0;ba[c[p]].indexOf(c[p===c.length-1?0:p+1])&&t.push(p===c.length-1?0:p+1);if(0===t.length)for(p=0;pH.indexOf(U)||MH.indexOf(U)|| +M=u?l+1:l)),w+=l=u&&l++,A>=u&&A++,l>A&&(H=A,A=l,l=H),A-l<(c.length+2)/2===(lq||q===l||(s=q>l?q-l:l-q,p+=qm-s?1:-1);c.splice(0>p?l:l+1,0,b);e.splice(h,1);h--}else k=!1;if(k)break;else c.push(e[0]),e.splice(0,1)}for(b=0;b=a?a:360,this.H())}); +v.defineProperty(vn,{Nf:"arrangement"},function(){return this.fd},function(a){this.fd!==a&&(v.pb(a,vn,vn,"arrangement"),a===In||a===Hn||a===Gn||a===Fn)&&(this.fd=a,this.H())});v.defineProperty(vn,{direction:"direction"},function(){return this.aa},function(a){this.aa!==a&&(v.pb(a,vn,vn,"direction"),a===Dn||a===En||a===Bn||a===Cn)&&(this.aa=a,this.H())}); +v.defineProperty(vn,{sorting:"sorting"},function(){return this.Lh},function(a){this.Lh!==a&&(v.pb(a,vn,vn,"sorting"),a===yn||a===zn||a===wn||xn||a===An)&&(this.Lh=a,this.H())});v.defineProperty(vn,{comparer:"comparer"},function(){return this.uh},function(a){this.uh!==a&&(v.j(a,"function",vn,"comparer"),this.uh=a,this.H())});v.defineProperty(vn,{spacing:"spacing"},function(){return this.Mh},function(a){this.Mh!==a&&(v.j(a,"number",vn,"spacing"),this.Mh=a,this.H())}); +v.defineProperty(vn,{Rw:"nodeDiameterFormula"},function(){return this.Er},function(a){this.Er!==a&&(v.pb(a,vn,vn,"nodeDiameterFormula"),a===Kn||a===Jn)&&(this.Er=a,this.H())});v.u(vn,{YF:"actualXRadius"},function(){return this.Jd});v.u(vn,{ZF:"actualYRadius"},function(){return this.sg});v.u(vn,{YI:"actualSpacing"},function(){return this.yk});v.u(vn,{XF:"actualCenter"},function(){return isNaN(this.Xd.x)||isNaN(this.Xd.y)?new z(0,0):new z(this.Xd.x+this.YF,this.Xd.y+this.ZF)});var Hn; vn.ConstantSpacing=Hn=v.p(vn,"ConstantSpacing",0);var Gn;vn.ConstantDistance=Gn=v.p(vn,"ConstantDistance",1);var Fn;vn.ConstantAngle=Fn=v.p(vn,"ConstantAngle",2);var In;vn.Packed=In=v.p(vn,"Packed",3);var Dn;vn.Clockwise=Dn=v.p(vn,"Clockwise",4);var En;vn.Counterclockwise=En=v.p(vn,"Counterclockwise",5);var Bn;vn.BidirectionalLeft=Bn=v.p(vn,"BidirectionalLeft",6);var Cn;vn.BidirectionalRight=Cn=v.p(vn,"BidirectionalRight",7);var yn;vn.Forwards=yn=v.p(vn,"Forwards",8);var zn; vn.Reverse=zn=v.p(vn,"Reverse",9);var wn;vn.Ascending=wn=v.p(vn,"Ascending",10);var xn;vn.Descending=xn=v.p(vn,"Descending",11);var An;vn.Optimized=An=v.p(vn,"Optimized",12);var Kn;vn.Pythagorean=Kn=v.p(vn,"Pythagorean",13);var Jn;vn.Circular=Jn=v.p(vn,"Circular",14);function vq(){this.Zo=-Infinity;this.Mp=this.kn=null} -vq.prototype.compare=function(a,b){if(0this.Zo||Math.abs(a)a&&0f?(e=n.x+n.width/2,k=n.y+n.height/2,l[0]=new y(n.x+n.width+d.width,n.y),l[1]=new y(n.x,n.y+n.height+d.height),f=2):(p=Oq(l,f,e,k,n.width,n.height,d),q=l[p],r=new y(q.x+n.width+d.width, -q.y),s=new y(q.x,q.y+n.height+d.height),p+1this.network.vertexes.count)return!1;for(var a=0,b=0,c=this.network.vertexes.first().mb,d=this.network.vertexes.i;d.next();){if(d.value.mb.yg(c)&&(a++,2a.network.vertexes.count)return!1;null===a.sg?a.sg=new I(fr):a.sg.clear();a.sg.Tc(a.network.vertexes);var c=a.sg;c.sort(function(a,b){return null===a||null===b||a===b?0:b.$f-a.$f});for(var d=c.count-1;0<=d&&1>=c.da(d).$f;)d--;return 1=h))){for(var m=0,n=0,p=l.count-h;ps&&(s=1);m=Id((m+s+n*n*4/(h*h))/s);h=(m-1)*p/2;m=(m-1)*q/2;f.mb=new B(l-r.x-h,k-r.y-m,p+2*h,q+2*m);f.focus=new y(r.x+h,r.y+m)}a.network=d;return c}function er(a,b){for(var c=a.network.vertexes.i;c.next();){var d=c.value;d.network=b;if(null!==d.oh){var e=d.oh.da(d.eA);d.$f=e.xx;var f=e.DA,h=e.EA;d.mb=new B(d.na-f,d.ua-h,e.yx,e.wx);d.focus=new y(f,h);d.eA--}}for(c=a.network.edges.i;c.next();)c.value.network=b;a.network=b} -function gr(a,b){var c=b.Fm;if(null!==c&&0!==c.count){var d=b.na,e=b.ua,f=b.width,h=b.height;null!==b.oh&&0=p.$f?l++:(k=!0,m++,h+=Math.atan2(b.ua-p.ua,b.na-p.na))}if(0!==l)for(0>1)+n)*(0===k%2?1:-1);l.na=d+p*Math.cos(q);l.ua=e+p*Math.sin(q);k++}}}function Oq(a,b,c,d,e,f,h){var k=9E19,l=-1,m=0;a:for(;mn.y&&a[q].x-n.xn.x&&a[q].y-n.yl+h?(d=d+f-k,e=e-l-h,Id(d*d+e*e)):e+ck+m?e>l+h?(d=d-k-m,e=e-l-h,Id(d*d+e*e)):e+cl+h?e-(l+h):e+c=b.length)return!1;var c=b[0];c.forceX=0;c.forceY=0;for(var d=c.na,e=d,f=c.ua,h=f,c=1;ch-f)?b.sort(function(a,b){return null===a||null===b||a===b?0:a.na-b.na}):b.sort(function(a,b){return null===a||null===b||a===b?0:a.ua-b.ua});for(var h=a.Dh,m=0,n=0,p=0,c=0;ch||p-d>h){if(f)break}else if(l-r>h||r-l>h){if(!f)break}else{var s=ir(k,e);1>s?(n=a.Yw,null===n&&(a.Yw=n=new va(0)),m=n.random(),s=n.random(),d>p?(n=Math.abs(e.M.right-k.M.x),n=(1+n)*m):dr?(p=Math.abs(e.M.bottom-k.M.y),p=(1+p)*s):ds?(n=a.Yw,null===n&&(a.Yw=n=new va(0)),m=n.random(),s= -n.random(),n=(d>p?1:-1)*(1+(e.width>k.width)?e.width:k.width)*m,p=(l>r?1:-1)*(1+(e.height>k.height)?e.height:k.height)*s):(m=f.stiffness*(s-f.length),n=(p-d)/s*m,p=(r-l)/s*m),k.forceX+=n,k.forceY+=p,e.forceX-=n,e.forceY-=p;c=0;d=Math.max(a.Dh/20,50);for(e=0;ed&&(f=d),h<-d?h=-d:h>d&&(h=d),k.na+=f,k.ua+=h,c=Math.max(c,f*f+h*h));return c>a.ED*a.ED}Lq.prototype.moveFixedVertex=function(){}; -Lq.prototype.commitLayout=function(){this.kA();this.commitNodes();this.wt&&this.commitLinks()};Lq.prototype.kA=function(){if(this.Gp)for(var a=this.network.edges.i;a.next();){var b=a.value.link;null!==b&&(b.xb=kc,b.yb=kc)}};Lq.prototype.commitNodes=function(){var a=0,b=0;if(this.eG){var c=v.bg();this.ah(this.network,c);b=this.Zd;a=b.x-c.x;b=b.y-c.y;v.Vb(c)}for(var c=v.bg(),d=this.network.vertexes.i;d.next();){var e=d.value;if(0!==a||0!==b)c.assign(e.mb),c.x+=a,c.y+=b,e.mb=c;e.commit()}v.Vb(c)}; +vq.prototype.compare=function(a,b){if(0this.Zo||Math.abs(a)a&&0f?(e=n.x+n.width/2,k=n.y+n.height/2,l[0]=new z(n.x+n.width+d.width,n.y),l[1]=new z(n.x,n.y+n.height+d.height),f=2):(p=Oq(l,f,e,k,n.width,n.height,d),q=l[p],r=new z(q.x+n.width+d.width, +q.y),s=new z(q.x,q.y+n.height+d.height),p+1this.network.vertexes.count)return!1;for(var a=0,b=0,c=this.network.vertexes.first().mb,d=this.network.vertexes.i;d.next();){if(d.value.mb.xg(c)&&(a++,2a.network.vertexes.count)return!1;null===a.rg?a.rg=new I(fr):a.rg.clear();a.rg.Tc(a.network.vertexes);var c=a.rg;c.sort(function(a,b){return null===a||null===b||a===b?0:b.Zf-a.Zf});for(var d=c.count-1;0<=d&&1>=c.da(d).Zf;)d--;return 1=h))){for(var m=0,n=0,p=l.count-h;ps&&(s=1);m=Jd((m+s+n*n*4/(h*h))/s);h=(m-1)*p/2;m=(m-1)*q/2;f.mb=new B(l-r.x-h,k-r.y-m,p+2*h,q+2*m);f.focus=new z(r.x+h,r.y+m)}a.network=d;return c}function er(a,b){for(var c=a.network.vertexes.i;c.next();){var d=c.value;d.network=b;if(null!==d.nh){var e=d.nh.da(d.iA);d.Zf=e.yx;var f=e.HA,h=e.IA;d.mb=new B(d.na-f,d.ua-h,e.zx,e.xx);d.focus=new z(f,h);d.iA--}}for(c=a.network.edges.i;c.next();)c.value.network=b;a.network=b} +function gr(a,b){var c=b.Fm;if(null!==c&&0!==c.count){var d=b.na,e=b.ua,f=b.width,h=b.height;null!==b.nh&&0=p.Zf?l++:(k=!0,m++,h+=Math.atan2(b.ua-p.ua,b.na-p.na))}if(0!==l)for(0>1)+n)*(0===k%2?1:-1);l.na=d+p*Math.cos(q);l.ua=e+p*Math.sin(q);k++}}}function Oq(a,b,c,d,e,f,h){var k=9E19,l=-1,m=0;a:for(;mn.y&&a[q].x-n.xn.x&&a[q].y-n.yl+h?(d=d+f-k,e=e-l-h,Jd(d*d+e*e)):e+ck+m?e>l+h?(d=d-k-m,e=e-l-h,Jd(d*d+e*e)):e+cl+h?e-(l+h):e+c=b.length)return!1;var c=b[0];c.forceX=0;c.forceY=0;for(var d=c.na,e=d,f=c.ua,h=f,c=1;ch-f)?b.sort(function(a,b){return null===a||null===b||a===b?0:a.na-b.na}):b.sort(function(a,b){return null===a||null===b||a===b?0:a.ua-b.ua});for(var h=a.Bh,m=0,n=0,p=0,c=0;ch||p-d>h){if(f)break}else if(l-r>h||r-l>h){if(!f)break}else{var s=ir(k,e);1>s?(n=a.Zw,null===n&&(a.Zw=n=new va(0)),m=n.random(),s=n.random(),d>p?(n=Math.abs(e.M.right-k.M.x),n=(1+n)*m):dr?(p=Math.abs(e.M.bottom-k.M.y),p=(1+p)*s):ds?(n=a.Zw,null===n&&(a.Zw=n=new va(0)),m=n.random(),s= +n.random(),n=(d>p?1:-1)*(1+(e.width>k.width)?e.width:k.width)*m,p=(l>r?1:-1)*(1+(e.height>k.height)?e.height:k.height)*s):(m=f.stiffness*(s-f.length),n=(p-d)/s*m,p=(r-l)/s*m),k.forceX+=n,k.forceY+=p,e.forceX-=n,e.forceY-=p;c=0;d=Math.max(a.Bh/20,50);for(e=0;ed&&(f=d),h<-d?h=-d:h>d&&(h=d),k.na+=f,k.ua+=h,c=Math.max(c,f*f+h*h));return c>a.HD*a.HD}Lq.prototype.moveFixedVertex=function(){}; +Lq.prototype.commitLayout=function(){this.oA();this.commitNodes();this.xt&&this.commitLinks()};Lq.prototype.oA=function(){if(this.Gp)for(var a=this.network.edges.i;a.next();){var b=a.value.link;null!==b&&(b.xb=fc,b.yb=fc)}};Lq.prototype.commitNodes=function(){var a=0,b=0;if(this.gG){var c=v.ag();this.$g(this.network,c);b=this.Xd;a=b.x-c.x;b=b.y-c.y;v.Vb(c)}for(var c=v.ag(),d=this.network.vertexes.i;d.next();){var e=d.value;if(0!==a||0!==b)c.assign(e.mb),c.x+=a,c.y+=b,e.mb=c;e.commit()}v.Vb(c)}; Lq.prototype.commitLinks=function(){for(var a=this.network.edges.i;a.next();)a.value.commit()};Lq.prototype.springStiffness=function(a){a=a.stiffness;return isNaN(a)?this.Fn:a};Lq.prototype.springLength=function(a){a=a.length;return isNaN(a)?this.En:a};Lq.prototype.electricalCharge=function(a){a=a.charge;return isNaN(a)?this.Bn:a};Lq.prototype.electricalFieldX=function(){return 0};Lq.prototype.electricalFieldY=function(){return 0}; -Lq.prototype.gravitationalMass=function(a){a=a.mass;return isNaN(a)?this.Dn:a};Lq.prototype.gravitationalFieldX=function(){return 0};Lq.prototype.gravitationalFieldY=function(){return 0};Lq.prototype.isFixed=function(a){return a.isFixed};v.u(Lq,{wJ:"currentIteration"},function(){return this.cr});v.defineProperty(Lq,{gD:"arrangementSpacing"},function(){return this.cg},function(a){v.A(a,ia,Lq,"arrangementSpacing");this.cg.K(a)||(this.cg.assign(a),this.H())}); -v.defineProperty(Lq,{eG:"arrangesToOrigin"},function(){return this.Xp},function(a){this.Xp!==a&&(v.j(a,"boolean",Lq,"arrangesToOrigin"),this.Xp=a,this.H())});v.defineProperty(Lq,{Gp:"setsPortSpots"},function(){return this.Mh},function(a){this.Mh!==a&&(v.j(a,"boolean",Lq,"setsPortSpots"),this.Mh=a,this.H())});v.defineProperty(Lq,{comments:"comments"},function(){return this.vh},function(a){this.vh!==a&&(v.j(a,"boolean",Lq,"comments"),this.vh=a,this.H())}); -v.defineProperty(Lq,{Kz:"maxIterations"},function(){return this.io},function(a){this.io!==a&&(v.j(a,"number",Lq,"maxIterations"),0<=a&&(this.io=a,this.H()))});v.defineProperty(Lq,{ED:"epsilonDistance"},function(){return this.Dq},function(a){this.Dq!==a&&(v.j(a,"number",Lq,"epsilonDistance"),0b.toVertex.index&&(this.network.ex(b),b.rev=!0);break;case lr:for(b=this.network.vertexes.i;b.next();)a=b.value,a.To=-1,a.finish=-1;for(a=this.network.edges.i;a.next();)a.value.forest=!1;this.zr=0;for(b.reset();b.next();)c=b.value,0===c.lc.count&&vr(this,c);for(b.reset();b.next();)c=b.value,-1===c.To&&vr(this,c);for(a.reset();a.next();)b=a.value,b.forest||(c=b.fromVertex, -d=c.finish,e=b.toVertex,f=e.finish,e.Tos&&0s&&0b[this.If]&&(this.nv=b[c]-1,this.If=c),b[c]b.toVertex.index&&(this.network.gx(b),b.rev=!0);break;case lr:for(b=this.network.vertexes.i;b.next();)a=b.value,a.To=-1,a.finish=-1;for(a=this.network.edges.i;a.next();)a.value.forest=!1;this.Ar=0;for(b.reset();b.next();)c=b.value,0===c.lc.count&&vr(this,c);for(b.reset();b.next();)c=b.value,-1===c.To&&vr(this,c);for(a.reset();a.next();)b=a.value,b.forest||(c=b.fromVertex, +d=c.finish,e=b.toVertex,f=e.finish,e.Tos&&0s&&0b[this.Hf]&&(this.ov=b[c]-1,this.Hf=c),b[c]h)for(var p=h+1;pn;p--)l=d[p],l.near===m&&l.Cm===m.Cm||k++;var m=0,q,r=q=p=l=0,s,t=0,u=0;s=0;var w;if(0<=c)for(n=d[h].Pe,m=0;mt||l===t&&q>s)&&k++,ul||t===l&&s>q)&&k++);if(0>=c)for(n=d[h].Ke,m=0;mt||l===t&&p>u)&&k++,sl||t===l&&u>p)&&k++);f[h*e+h]=k;for(n=h+1;n=c)for(k=d[h].Ke,w=d[n].Ke,m=0;mh)for(var p=h+1;pn;p--)l=d[p],l.near===m&&l.Cm===m.Cm||k++;var m=0,q,r=q=p=l=0,s,t=0,u=0;s=0;var y;if(0<=c)for(n=d[h].Oe,m=0;mt||l===t&&q>s)&&k++,ul||t===l&&s>q)&&k++);if(0>=c)for(n=d[h].Je,m=0;mt||l===t&&p>u)&&k++,sl||t===l&&u>p)&&k++);f[h*e+h]=k;for(n=h+1;n=c)for(k=d[h].Je,y=d[n].Je,m=0;m=c&&(l=k.Pe);var m=null;0<=c&&(m=k.Ke);var n=0,p=0,q=k.near;null!==q&&q.layer===k.layer&&(n+=q.column-1,p++);if(null!==l)for(q=0;q=c&&(l=k.Pe);var m=null;0<=c&&(m=k.Ke);var n=0,p=[],q=k.near;null!==q&&q.layer===k.layer&&(p[n]=q.column-1,n++);if(null!==l)for(q=0;q>1,f[h]=n&1?p[m]:p[m-1]+p[m]>>1)}zr(a,b,d);return f}function Hr(a,b,c,d,e,f){if(b.component===d){b.component=c;var h=0,k=0;if(e)for(var l=b.$b;l.next();){var k=l.value,m=k.toVertex,h=b.layer-m.layer,k=a.linkMinLength(k);h===k&&Hr(a,m,c,d,e,f)}if(f)for(l=b.lc;l.next();)k=l.value,m=k.fromVertex,h=m.layer-b.layer,k=a.linkMinLength(k),h===k&&Hr(a,m,c,d,e,f)}} -function Ir(a,b,c,d,e,f){if(b.component===d){b.component=c;if(e)for(var h=b.$b;h.next();)Ir(a,h.value.toVertex,c,d,e,f);if(f)for(b=b.lc;b.next();)Ir(a,b.value.fromVertex,c,d,e,f)}}function sr(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid)return b}return null}function tr(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.$b;d.next();)if(d.value.toVertex.valid){c=!1;break}if(c)return b}}return null} -function ur(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.lc;d.next();)if(d.value.fromVertex.valid){c=!1;break}if(c)return b}}return null}function vr(a,b){b.To=a.zr;a.zr++;for(var c=b.$b;c.next();){var d=c.value,e=d.toVertex;-1===e.To&&(d.forest=!0,vr(a,e))}b.finish=a.zr;a.zr++} +function Fr(a,b,c){for(var d=yr(a,b),e=a.Td[b],f=[],h=0;h=c&&(l=k.Oe);var m=null;0<=c&&(m=k.Je);var n=0,p=0,q=k.near;null!==q&&q.layer===k.layer&&(n+=q.column-1,p++);if(null!==l)for(q=0;q=c&&(l=k.Oe);var m=null;0<=c&&(m=k.Je);var n=0,p=[],q=k.near;null!==q&&q.layer===k.layer&&(p[n]=q.column-1,n++);if(null!==l)for(q=0;q>1,f[h]=n&1?p[m]:p[m-1]+p[m]>>1)}zr(a,b,d);return f}function Hr(a,b,c,d,e,f){if(b.component===d){b.component=c;var h=0,k=0;if(e)for(var l=b.ac;l.next();){var k=l.value,m=k.toVertex,h=b.layer-m.layer,k=a.linkMinLength(k);h===k&&Hr(a,m,c,d,e,f)}if(f)for(l=b.lc;l.next();)k=l.value,m=k.fromVertex,h=m.layer-b.layer,k=a.linkMinLength(k),h===k&&Hr(a,m,c,d,e,f)}} +function Ir(a,b,c,d,e,f){if(b.component===d){b.component=c;if(e)for(var h=b.ac;h.next();)Ir(a,h.value.toVertex,c,d,e,f);if(f)for(b=b.lc;b.next();)Ir(a,b.value.fromVertex,c,d,e,f)}}function sr(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid)return b}return null}function tr(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.ac;d.next();)if(d.value.toVertex.valid){c=!1;break}if(c)return b}}return null} +function ur(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.lc;d.next();)if(d.value.fromVertex.valid){c=!1;break}if(c)return b}}return null}function vr(a,b){b.To=a.Ar;a.Ar++;for(var c=b.ac;c.next();){var d=c.value,e=d.toVertex;-1===e.To&&(d.forest=!0,vr(a,e))}b.finish=a.Ar;a.Ar++} gn.prototype.assignLayers=function(){switch(this.bo){case Jr:Kr(this);break;case Lr:for(var a=0,b=this.network.vertexes.i;b.next();)a=Mr(this,b.value),this.ob=Math.max(a,this.ob);for(b.reset();b.next();)a=b.value,a.layer=this.ob-a.layer;break;default:case mr:Kr(this);for(b=this.network.vertexes.i;b.next();)b.value.valid=!1;for(b.reset();b.next();)a=b.value,0===a.lc.count&&Nr(this,a);a=Infinity;for(b.reset();b.next();)a=Math.min(a,b.value.layer);this.ob=-1;for(b.reset();b.next();){var c=b.value;c.layer-= -a;this.ob=Math.max(this.ob,c.layer)}}};function Kr(a){for(var b=a.network.vertexes.i;b.next();){var c=Or(a,b.value);a.ob=Math.max(c,a.ob)}}function Or(a,b){var c=0;if(-1===b.layer){for(var d=b.$b;d.next();)var e=d.value,f=e.toVertex,e=a.linkMinLength(e),c=Math.max(c,Or(a,f)+e);b.layer=c}else c=b.layer;return c}function Mr(a,b){var c=0;if(-1===b.layer){for(var d=b.lc;d.next();)var e=d.value,f=e.fromVertex,e=a.linkMinLength(e),c=Math.max(c,Mr(a,f)+e);b.layer=c}else c=b.layer;return c} -function Nr(a,b){if(!b.valid){b.valid=!0;for(var c=b.$b;c.next();)Nr(a,c.value.toVertex);for(c=a.network.vertexes.i;c.next();)c.value.component=-1;for(var d=b.Pe.n,e=d.length,f=0;fk&&Hr(a,h.fromVertex,0,-1,!0,!1)}for(Hr(a,b,1,-1,!0,!0);0!==b.component;){for(var k=0,d=Infinity,l=0,m=null,n=a.network.vertexes.i;n.next();){var p=n.value;if(1===p.component){for(var q=0,r=!1,s=p.Pe.n,e=s.length,f=0;fd)&&!p&&(k=m,d=n)}if(0>f){for(c.reset();c.next();)f=c.value,1===f.component&&(f.layer-=e);b.component=0}else k.component=0}}} +a;this.ob=Math.max(this.ob,c.layer)}}};function Kr(a){for(var b=a.network.vertexes.i;b.next();){var c=Or(a,b.value);a.ob=Math.max(c,a.ob)}}function Or(a,b){var c=0;if(-1===b.layer){for(var d=b.ac;d.next();)var e=d.value,f=e.toVertex,e=a.linkMinLength(e),c=Math.max(c,Or(a,f)+e);b.layer=c}else c=b.layer;return c}function Mr(a,b){var c=0;if(-1===b.layer){for(var d=b.lc;d.next();)var e=d.value,f=e.fromVertex,e=a.linkMinLength(e),c=Math.max(c,Mr(a,f)+e);b.layer=c}else c=b.layer;return c} +function Nr(a,b){if(!b.valid){b.valid=!0;for(var c=b.ac;c.next();)Nr(a,c.value.toVertex);for(c=a.network.vertexes.i;c.next();)c.value.component=-1;for(var d=b.Oe.n,e=d.length,f=0;fk&&Hr(a,h.fromVertex,0,-1,!0,!1)}for(Hr(a,b,1,-1,!0,!0);0!==b.component;){for(var k=0,d=Infinity,l=0,m=null,n=a.network.vertexes.i;n.next();){var p=n.value;if(1===p.component){for(var q=0,r=!1,s=p.Oe.n,e=s.length,f=0;fd)&&!p&&(k=m,d=n)}if(0>f){for(c.reset();c.next();)f=c.value,1===f.component&&(f.layer-=e);b.component=0}else k.component=0}}} function xr(a,b,c){return 90===a.aa?c&&!b.rev||!c&&b.rev?270:90:180===a.aa?c&&!b.rev||!c&&b.rev?0:180:270===a.aa?c&&!b.rev||!c&&b.rev?90:270:c&&!b.rev||!c&&b.rev?180:0} -gn.prototype.initializeIndices=function(){switch(this.Sn){default:case Pr:for(var a=this.network.vertexes.i;a.next();){var b=a.value,c=b.layer;b.index=this.Vd[c];this.Vd[c]++}break;case nr:a=this.network.vertexes.i;for(b=this.ob;0<=b;b--)for(a.reset();a.next();)c=a.value,c.layer===b&&-1===c.index&&Qr(this,c);break;case Rr:for(a=this.network.vertexes.i,b=0;b<=this.ob;b++)for(a.reset();a.next();)c=a.value,c.layer===b&&-1===c.index&&Sr(this,c)}}; -function Qr(a,b){var c=b.layer;b.index=a.Vd[c];a.Vd[c]++;for(var c=b.Ke.dc(),d=!0;d;)for(var d=!1,e=0;eh.portFromColOffset&&(d=!0,c[e]=h,c[e+1]=f)}for(e=0;eh.portToColOffset&&(d=!0,c[e]=h,c[e+1]=f)}for(e=0;eh.portFromColOffset&&(d=!0,c[e]=h,c[e+1]=f)}for(e=0;eh.portToColOffset&&(d=!0,c[e]=h,c[e+1]=f)}for(e=0;e=h;d--)f=Ur(this,d,-1)||f;e=this.countCrossings();e>=a?Cr(this,b):(a=e,b=Br(this));for(f=!0;f;)for(f=!1,d=c;d>=h;d--)f=Ur(this,d,1)||f;e=this.countCrossings();e>=a?Cr(this,b):(a=e,b=Br(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ur(this,d,1)||f;e>=a?Cr(this,b):(a=e,b=Br(this));for(f=!0;f;)for(f=!1, d=h;d<=c;d++)f=Ur(this,d,-1)||f;e>=a?Cr(this,b):(a=e,b=Br(this));for(f=!0;f;)for(f=!1,d=c;d>=h;d--)f=Ur(this,d,0)||f;e>=a?Cr(this,b):(a=e,b=Br(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ur(this,d,0)||f;e>=a?Cr(this,b):(a=e,b=Br(this))}break;default:case or:for(c=this.ob,h=0,k=a+1;(d=this.countCrossings())=h;d--)f=Ur(this,d,-1)||f;e=this.countCrossings();e>=a?Cr(this,b):(a=e,b=Br(this));for(f=!0;f;)for(f=!1,d=c;d>=h;d--)f=Ur(this,d,1)||f;e=this.countCrossings(); e>=a?Cr(this,b):(a=e,b=Br(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ur(this,d,1)||f;e>=a?Cr(this,b):(a=e,b=Br(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ur(this,d,-1)||f;e>=a?Cr(this,b):(a=e,b=Br(this));for(f=!0;f;)for(f=!1,d=c;d>=h;d--)f=Ur(this,d,0)||f;e>=a?Cr(this,b):(a=e,b=Br(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ur(this,d,0)||f;e>=a?Cr(this,b):(a=e,b=Br(this))}}Cr(this,b)}; -function Tr(a,b,c){var d=0,e=yr(a,b),f=a.Vd[b],h=Gr(a,b,c);c=Fr(a,b,c);for(d=0;df+1&&(q+=4*(x-f),r+=4*(x-(f+1)))}A=d[f].$b.i;for(A.reset();A.next();)if(z=A.value,z.valid&&z.toVertex.layer===b){z=z.toVertex;for(x=0;d[x]!==z;)x++;x===f+1&&(r+=1)}A=d[f+1].lc.i;for(A.reset();A.next();)if(z=A.value,z.valid&&z.fromVertex.layer===b){z=z.fromVertex;for(x=0;d[x]!==z;)x++;xf+1&&(q+=4*(x-(f+1)),r+=4*(x-f))}A=d[f+1].$b.i;for(A.reset();A.next();)if(z=A.value, -z.valid&&z.toVertex.layer===b){z=z.toVertex;for(x=0;d[x]!==z;)x++;x===f&&(q+=1)}var x=z=0,A=h[d[f].index],H=k[d[f].index],C=h[d[f+1].index],T=k[d[f+1].index];-1!==A&&(z+=Math.abs(A-s),x+=Math.abs(A-w));-1!==H&&(z+=Math.abs(H-s),x+=Math.abs(H-w));-1!==C&&(z+=Math.abs(C-t),x+=Math.abs(C-u));-1!==T&&(z+=Math.abs(T-t),x+=Math.abs(T-u));if(r>1)+8*d;this.Fb*=8}if(0!==(this.Fi&Yr))for(b=!0;b;){b=!1;for(a=this.If+1;a<=this.ob;a++)b=Zr(this,a,1)||b; -for(a=this.If-1;0<=a;a--)b=Zr(this,a,-1)||b;b=Zr(this,this.If,0)||b}if(0!==(this.Fi&$r)){for(a=this.If+1;a<=this.ob;a++)as(this,a,1);for(a=this.If-1;0<=a;a--)as(this,a,-1);as(this,this.If,0)}c&&(bs(this,-1),bs(this,1));if(0!==(this.Fi&Yr))for(b=!0;b;){b=!1;b=Zr(this,this.If,0)||b;for(a=this.If+1;a<=this.ob;a++)b=Zr(this,a,0)||b;for(a=this.If-1;0<=a;a--)b=Zr(this,a,0)||b}};function Zr(a,b,c){for(var d=!1;cs(a,b,c);)d=!0;return d} -function cs(a,b,c){var d=0,e=yr(a,b),f=a.Vd[b],h=Fr(a,b,-1);if(0c)for(d=0;dd-1||n-e[d-1].column-1>p+a.nodeMinColumnSpace(e[d-1],!1)?n-1:n,p=0,p=d+1>=f||e[d+1].column-n-1>q+a.nodeMinColumnSpace(e[d+1],!0)?n+1:n,s=q=0,t=0,u=0,w=0,x=0;if(0>=c)for(var z=e[d].lc.i;z.next();){var A=z.value;A.valid&&A.fromVertex.layer!== -b&&(u=Ar(A),w=A.portFromColOffset,x=A.portToColOffset,A=A.fromVertex.column,q+=(Math.abs(n+x-(A+w))+1)*u,s+=(Math.abs(r+x-(A+w))+1)*u,t+=(Math.abs(p+x-(A+w))+1)*u)}if(0<=c)for(z=e[d].$b.i;z.next();)A=z.value,A.valid&&A.toVertex.layer!==b&&(u=Ar(A),w=A.portFromColOffset,x=A.portToColOffset,A=A.toVertex.column,q+=(Math.abs(n+w-(A+x))+1)*u,s+=(Math.abs(r+w-(A+x))+1)*u,t+=(Math.abs(p+w-(A+x))+1)*u);x=w=u=0;z=h[e[d].index];A=k[e[d].index];-1!==z&&(u+=Math.abs(z-n),w+=Math.abs(z-r),x+=Math.abs(z-p));-1!== -A&&(u+=Math.abs(A-n),w+=Math.abs(A-r),x+=Math.abs(A-p));if(sf+1&&(q+=4*(w-f),r+=4*(w-(f+1)))}A=d[f].ac.i;for(A.reset();A.next();)if(x=A.value,x.valid&&x.toVertex.layer===b){x=x.toVertex;for(w=0;d[w]!==x;)w++;w===f+1&&(r+=1)}A=d[f+1].lc.i;for(A.reset();A.next();)if(x=A.value,x.valid&&x.fromVertex.layer===b){x=x.fromVertex;for(w=0;d[w]!==x;)w++;wf+1&&(q+=4*(w-(f+1)),r+=4*(w-f))}A=d[f+1].ac.i;for(A.reset();A.next();)if(x=A.value, +x.valid&&x.toVertex.layer===b){x=x.toVertex;for(w=0;d[w]!==x;)w++;w===f&&(q+=1)}var w=x=0,A=h[d[f].index],H=k[d[f].index],C=h[d[f+1].index],T=k[d[f+1].index];-1!==A&&(x+=Math.abs(A-s),w+=Math.abs(A-y));-1!==H&&(x+=Math.abs(H-s),w+=Math.abs(H-y));-1!==C&&(x+=Math.abs(C-t),w+=Math.abs(C-u));-1!==T&&(x+=Math.abs(T-t),w+=Math.abs(T-u));if(r>1)+8*d;this.Fb*=8}if(0!==(this.Di&Yr))for(b=!0;b;){b=!1;for(a=this.Hf+1;a<=this.ob;a++)b=Zr(this,a,1)||b; +for(a=this.Hf-1;0<=a;a--)b=Zr(this,a,-1)||b;b=Zr(this,this.Hf,0)||b}if(0!==(this.Di&$r)){for(a=this.Hf+1;a<=this.ob;a++)as(this,a,1);for(a=this.Hf-1;0<=a;a--)as(this,a,-1);as(this,this.Hf,0)}c&&(bs(this,-1),bs(this,1));if(0!==(this.Di&Yr))for(b=!0;b;){b=!1;b=Zr(this,this.Hf,0)||b;for(a=this.Hf+1;a<=this.ob;a++)b=Zr(this,a,0)||b;for(a=this.Hf-1;0<=a;a--)b=Zr(this,a,0)||b}};function Zr(a,b,c){for(var d=!1;cs(a,b,c);)d=!0;return d} +function cs(a,b,c){var d=0,e=yr(a,b),f=a.Td[b],h=Fr(a,b,-1);if(0c)for(d=0;dd-1||n-e[d-1].column-1>p+a.nodeMinColumnSpace(e[d-1],!1)?n-1:n,p=0,p=d+1>=f||e[d+1].column-n-1>q+a.nodeMinColumnSpace(e[d+1],!0)?n+1:n,s=q=0,t=0,u=0,y=0,w=0;if(0>=c)for(var x=e[d].lc.i;x.next();){var A=x.value;A.valid&&A.fromVertex.layer!== +b&&(u=Ar(A),y=A.portFromColOffset,w=A.portToColOffset,A=A.fromVertex.column,q+=(Math.abs(n+w-(A+y))+1)*u,s+=(Math.abs(r+w-(A+y))+1)*u,t+=(Math.abs(p+w-(A+y))+1)*u)}if(0<=c)for(x=e[d].ac.i;x.next();)A=x.value,A.valid&&A.toVertex.layer!==b&&(u=Ar(A),y=A.portFromColOffset,w=A.portToColOffset,A=A.toVertex.column,q+=(Math.abs(n+y-(A+w))+1)*u,s+=(Math.abs(r+y-(A+w))+1)*u,t+=(Math.abs(p+y-(A+w))+1)*u);w=y=u=0;x=h[e[d].index];A=k[e[d].index];-1!==x&&(u+=Math.abs(x-n),y+=Math.abs(x-r),w+=Math.abs(x-p));-1!== +A&&(u+=Math.abs(A-n),y+=Math.abs(A-r),w+=Math.abs(A-p));if(s=c[d]?n=q:p<=c[d]&&(n=p));n!==k&&(h=!0,e[d].column=n)}zr(a,b,e);a.normalize()} function ds(a,b){for(var c=!0,d=a.network.vertexes.i;d.next();){var e=d.value,f=a.nodeMinColumnSpace(e,!0),h=a.nodeMinColumnSpace(e,!1);if(e.column-f<=b&&e.column+h>=b){c=!1;break}}e=!1;if(c)for(d.reset();d.next();)c=d.value,c.column>b&&(c.column-=1,e=!0);return e} function es(a,b){for(var c=b,c=b+1,d=0,e=[],f=[],d=0;d<=a.ob;d++)e[d]=!1,f[d]=!1;for(var h=a.network.vertexes.i;h.next();){var d=h.value,k=d.column-a.nodeMinColumnSpace(d,!0),l=d.column+a.nodeMinColumnSpace(d,!1);k<=b&&l>=b&&(e[d.layer]=!0);k<=c&&l>=c&&(f[d.layer]=!0)}k=!0;c=!1;for(d=0;d<=a.ob;d++)k=k&&!(e[d]&&f[d]);if(k)for(h.reset();h.next();)e=h.value,e.column>b&&(e.column-=1,c=!0);return c} function bs(a,b){for(var c=0;c<=a.Fb;c++)for(;ds(a,c););a.normalize();for(c=0;ce?Cr(a,d):hb)for(c=a.Fb;0<=c;c--)for(d=Br(a),e=Er(a),f=e+1;ee?Cr(a,d):hc)for(d.reset();d.next();)e=d.value,e.column+a.nodeMinColumnSpace(e,!1)>=b&&(e.component=a.ng);a.ng++;for(d.reset();d.next();)b=d.value,-1===b.component&&(Ir(a,b,a.ng,-1,!0,!0),a.ng++);var f=0;b=[];for(f=0;fc)for(k=a.Fb;0c)for(d.reset();d.next();)c=d.value,e[c.component]&&(c.column+=1)} -gn.prototype.commitLayout=function(){if(this.Gp)for(var a=wr(this,!0),b=wr(this,!1),c=this.network.edges.i;c.next();){var d=c.value.link;null!==d&&(d.xb=a,d.yb=b)}this.commitNodes();this.bz();this.wt&&this.commitLinks()};function wr(a,b){return 270===a.aa?b?pc:sc:90===a.aa?b?sc:pc:180===a.aa?b?qc:rc:b?rc:qc} -gn.prototype.commitNodes=function(){this.jg=[];this.Gf=[];this.Ff=[];this.Lb=[];for(var a=0;a<=this.ob;a++)this.jg[a]=0,this.Gf[a]=0,this.Ff[a]=0,this.Lb[a]=0;for(a=this.network.vertexes.i;a.next();){var b=a.value,c=b.layer;this.jg[c]=Math.max(this.jg[c],this.nodeMinLayerSpace(b,!0));this.Gf[c]=Math.max(this.Gf[c],this.nodeMinLayerSpace(b,!1))}for(var b=0,d=this.am,c=0;c<=this.ob;c++){var e=d;0>=this.jg[c]+this.Gf[c]&&(e=0);0=Ga.M.bottom?(ua=Ga.M.y+Ga.M.height,b.w(M++,ka,ua+Ra),b.w(M++,ka,ua),b.w(M++, -ka,ua-Ua)):(b.w(M++,ka,la+Ra),b.w(M++,ka,la),b.w(M++,ka,la-Ua)):270===this.aa?la<=Ga.M.y?(ua=Ga.M.y,b.w(M++,ka,ua-Ua),b.w(M++,ka,ua),b.w(M++,ka,ua+Ra)):(b.w(M++,ka,la-Ua),b.w(M++,ka,la),b.w(M++,ka,la+Ra)):0===this.aa&&(ka>=Ga.M.right?(ua=Ga.M.x+Ga.M.width,b.w(M++,ua+Ra,la),b.w(M++,ua,la),b.w(M++,ua-Ua,la)):(b.w(M++,ka+Ra,la),b.w(M++,ka,la),b.w(M++,ka-Ua,la)));else{b.w(M++,ob,gb);var pd=0;if(180===this.aa||0===this.aa){if(180===this.aa?ka>=Ga.M.right:ka<=Ga.M.x)pd=(0===this.aa?-Ua:Ra)/2;b.w(M++,ob+ -pd,la)}else{if(270===this.aa?la>=Ga.M.bottom:la<=Ga.M.y)pd=(90===this.aa?-Ua:Ra)/2;b.w(M++,ka,gb+pd)}b.w(M++,ka,la)}else Ua=Math.max(10,this.jg[pa.layer]),Ra=Math.max(10,this.Gf[pa.layer]),180===this.aa?(T&&b.w(M++,ka-Ua,la),b.w(M++,ka,la),T&&b.w(M++,ka+Ra,la)):90===this.aa?(T&&b.w(M++,ka,la+Ra),b.w(M++,ka,la),T&&b.w(M++,ka,la-Ua)):270===this.aa?(T&&b.w(M++,ka,la-Ua),b.w(M++,ka,la),T&&b.w(M++,ka,la+Ra)):(T&&b.w(M++,ka+Ra,la),b.w(M++,ka,la),T&&b.w(M++,ka-Ua,la));Ga=pa}if(null===k||b.computeSpot(!1)!== -sb||ba)if(ob=b.l(M-1).x,gb=b.l(M-1).y,ka=b.l(M).x,la=b.l(M).y,ba){var Je=this.Gf[oa.layer],Wb=0;180===this.aa||0===this.aa?(Wb=gb,Wb>=oa.M.y&&Wb<=oa.M.bottom&&(180===this.aa?ka>=oa.M.x:ka<=oa.M.right)&&(ua=oa.na+(180===this.aa?-Je:Je),Wb=Wb=oa.M.x&&Wb<=oa.M.right&&(270===this.aa?la>=oa.M.y:la<=oa.M.bottom)&&(ua=oa.ua+(270===this.aa?-Je:Je),Wb=Wb=oa.M.x?(ua=oa.M.x+oa.M.width,b.V(M-2,ua,gb),b.V(M-1,ua+Ra,gb)):90===this.aa&&la<=oa.M.bottom?(ua=oa.M.y,b.V(M-2,ob,ua),b.V(M-1,ob,ua-Ua)):270===this.aa&&la>=oa.M.y?(ua=oa.M.y+oa.M.height,b.V(M-2,ob,ua),b.V(M-1,ob,ua+Ra)):0===this.aa&&ka<=oa.M.right&&(ua=oa.M.x,b.V(M-2,ua,gb),b.V(M-1,ua-Ua,gb));else{Ua=Math.max(10,this.jg[oa.layer]); -Ra=Math.max(10,this.Gf[oa.layer]);pd=0;if(180===this.aa||0===this.aa){if(180===this.aa?ka<=oa.M.x:ka>=oa.M.right)pd=(0===this.aa?Ra:-Ua)/2;b.w(M++,ka+pd,gb)}else{if(270===this.aa?la<=oa.M.y:la>=oa.M.bottom)pd=(90===this.aa?Ra:-Ua)/2;b.w(M++,ob,la+pd)}b.w(M++,ka,la)}}else{for(;null!==oa&&oa!==Ga;){Ca=pa=null;for(var Gg=oa.$b.i;Gg.next();){var qd=Gg.value;if(qd.link===c.link&&(pa=qd.toVertex,Ca=qd.fromVertex,null!==Ca.rd&&(Ca=null),null===pa.rd))break}var ob=0,gb=0,ka=0,la=0,pb=0,Ua=0,Ra=0;if(pa!== -Ga)if(ob=b.l(M-1).x,gb=b.l(M-1).y,ka=pa.na,la=pa.ua,ba)if(180===this.aa||0===this.aa){var se=null!==Ca?Ca.ua:gb;se!==la&&(pb=this.Lb[pa.layer],2===M&&(pb=0===this.aa?Math.max(pb,ob):Math.min(pb,ob)),b.w(M++,pb,gb),b.w(M++,pb,la))}else{var rd=null!==Ca?Ca.na:ob;rd!==ka&&(pb=this.Lb[pa.layer],2===M&&(pb=90===this.aa?Math.max(pb,gb):Math.min(pb,gb)),b.w(M++,ob,pb),b.w(M++,ka,pb))}else Ua=Math.max(10,this.jg[pa.layer]),Ra=Math.max(10,this.Gf[pa.layer]),180===this.aa?(b.w(M++,ka+Ra,la),T&&b.w(M++,ka,la), -b.w(M++,ka-Ua,la)):90===this.aa?(b.w(M++,ka,la-Ua),T&&b.w(M++,ka,la),b.w(M++,ka,la+Ra)):270===this.aa?(b.w(M++,ka,la+Ra),T&&b.w(M++,ka,la),b.w(M++,ka,la-Ua)):(b.w(M++,ka-Ua,la),T&&b.w(M++,ka,la),b.w(M++,ka+Ra,la));oa=pa}ba&&(ob=b.l(M-1).x,gb=b.l(M-1).y,ka=b.l(M).x,la=b.l(M).y,180===this.aa||0===this.aa?gb!==la&&(pb=0===this.aa?Math.min(Math.max((ka+ob)/2,this.Lb[Ga.layer]),ka):Math.max(Math.min((ka+ob)/2,this.Lb[Ga.layer]),ka),b.w(M++,pb,gb),b.w(M++,pb,la)):ob!==ka&&(pb=90===this.aa?Math.min(Math.max((la+ -gb)/2,this.Lb[Ga.layer]),la):Math.max(Math.min((la+gb)/2,this.Lb[Ga.layer]),la),b.w(M++,ob,pb),b.w(M++,ka,pb)))}if(null!==d&&T){if(null!==h){if(b.computeSpot(!0)===sb){var ae=b.l(0),Kd=b.l(2);ae.K(Kd)||b.V(1,(ae.x+Kd.x)/2,(ae.y+Kd.y)/2)}C=b.getLinkPoint(e,h,sb,!0,!1,f,k);C.G()||C.set(e.U.bl);b.V(0,C.x,C.y)}null!==k&&(b.computeSpot(!1)===sb&&(ae=b.l(b.oa-1),Kd=b.l(b.oa-3),ae.K(Kd)||b.V(b.oa-2,(ae.x+Kd.x)/2,(ae.y+Kd.y)/2)),C=b.getLinkPoint(f,k,sb,!1,!1,e,h),C.G()||C.set(f.U.bl),b.V(b.oa-1,C.x,C.y))}b.Pi(); -c.commit()}}}for(var be=new I(W),Hg=this.network.edges.i;Hg.next();){var $c=Hg.value.link;null!==$c&&$c.jc&&!be.contains($c)&&be.add($c)}if(0Xb.y&&(gc=Jg.y>Xb.y?0:Ld.xic.x&&(ue=lh.x>ic.x?0:Rb.yb.layer?1:a.Heb.He?1:a.$db.$d?1:0:0};gn.prototype.NE=function(a,b){return a instanceof gs&&b instanceof gs&&a!==b?a.firstb.first||a.bib.bi||a.Heb.He?1:a.$db.$d?1:0:0}; -gn.prototype.hx=function(a,b){return a instanceof gs&&b instanceof gs&&a!==b?a.Tdb.Td||a.bib.bi||a.Heb.He?1:a.$db.$d?1:0:0};function hs(a,b){var c=a-b;return-1c}function yr(a,b){var c,d=a.Vd[b];if(d>=a.Tg.length){c=[];for(var e=0;ec)for(d.reset();d.next();)e=d.value,e.column+a.nodeMinColumnSpace(e,!1)>=b&&(e.component=a.mg);a.mg++;for(d.reset();d.next();)b=d.value,-1===b.component&&(Ir(a,b,a.mg,-1,!0,!0),a.mg++);var f=0;b=[];for(f=0;fc)for(k=a.Fb;0c)for(d.reset();d.next();)c=d.value,e[c.component]&&(c.column+=1)} +gn.prototype.commitLayout=function(){if(this.Gp)for(var a=wr(this,!0),b=wr(this,!1),c=this.network.edges.i;c.next();){var d=c.value.link;null!==d&&(d.xb=a,d.yb=b)}this.commitNodes();this.dz();this.xt&&this.commitLinks()};function wr(a,b){return 270===a.aa?b?pc:sc:90===a.aa?b?sc:pc:180===a.aa?b?qc:rc:b?rc:qc} +gn.prototype.commitNodes=function(){this.ig=[];this.Ff=[];this.Ef=[];this.Lb=[];for(var a=0;a<=this.ob;a++)this.ig[a]=0,this.Ff[a]=0,this.Ef[a]=0,this.Lb[a]=0;for(a=this.network.vertexes.i;a.next();){var b=a.value,c=b.layer;this.ig[c]=Math.max(this.ig[c],this.nodeMinLayerSpace(b,!0));this.Ff[c]=Math.max(this.Ff[c],this.nodeMinLayerSpace(b,!1))}for(var b=0,d=this.$l,c=0;c<=this.ob;c++){var e=d;0>=this.ig[c]+this.Ff[c]&&(e=0);0=Ga.M.bottom?(ua=Ga.M.y+Ga.M.height,b.w(M++,ka,ua+Ra),b.w(M++,ka,ua),b.w(M++, +ka,ua-Va)):(b.w(M++,ka,la+Ra),b.w(M++,ka,la),b.w(M++,ka,la-Va)):270===this.aa?la<=Ga.M.y?(ua=Ga.M.y,b.w(M++,ka,ua-Va),b.w(M++,ka,ua),b.w(M++,ka,ua+Ra)):(b.w(M++,ka,la-Va),b.w(M++,ka,la),b.w(M++,ka,la+Ra)):0===this.aa&&(ka>=Ga.M.right?(ua=Ga.M.x+Ga.M.width,b.w(M++,ua+Ra,la),b.w(M++,ua,la),b.w(M++,ua-Va,la)):(b.w(M++,ka+Ra,la),b.w(M++,ka,la),b.w(M++,ka-Va,la)));else{b.w(M++,qb,gb);var sd=0;if(180===this.aa||0===this.aa){if(180===this.aa?ka>=Ga.M.right:ka<=Ga.M.x)sd=(0===this.aa?-Va:Ra)/2;b.w(M++,qb+ +sd,la)}else{if(270===this.aa?la>=Ga.M.bottom:la<=Ga.M.y)sd=(90===this.aa?-Va:Ra)/2;b.w(M++,ka,gb+sd)}b.w(M++,ka,la)}else Va=Math.max(10,this.ig[pa.layer]),Ra=Math.max(10,this.Ff[pa.layer]),180===this.aa?(T&&b.w(M++,ka-Va,la),b.w(M++,ka,la),T&&b.w(M++,ka+Ra,la)):90===this.aa?(T&&b.w(M++,ka,la+Ra),b.w(M++,ka,la),T&&b.w(M++,ka,la-Va)):270===this.aa?(T&&b.w(M++,ka,la-Va),b.w(M++,ka,la),T&&b.w(M++,ka,la+Ra)):(T&&b.w(M++,ka+Ra,la),b.w(M++,ka,la),T&&b.w(M++,ka-Va,la));Ga=pa}if(null===k||b.computeSpot(!1)!== +sb||ba)if(qb=b.l(M-1).x,gb=b.l(M-1).y,ka=b.l(M).x,la=b.l(M).y,ba){var Je=this.Ff[oa.layer],Wb=0;180===this.aa||0===this.aa?(Wb=gb,Wb>=oa.M.y&&Wb<=oa.M.bottom&&(180===this.aa?ka>=oa.M.x:ka<=oa.M.right)&&(ua=oa.na+(180===this.aa?-Je:Je),Wb=Wb=oa.M.x&&Wb<=oa.M.right&&(270===this.aa?la>=oa.M.y:la<=oa.M.bottom)&&(ua=oa.ua+(270===this.aa?-Je:Je),Wb=Wb=oa.M.x?(ua=oa.M.x+oa.M.width,b.V(M-2,ua,gb),b.V(M-1,ua+Ra,gb)):90===this.aa&&la<=oa.M.bottom?(ua=oa.M.y,b.V(M-2,qb,ua),b.V(M-1,qb,ua-Va)):270===this.aa&&la>=oa.M.y?(ua=oa.M.y+oa.M.height,b.V(M-2,qb,ua),b.V(M-1,qb,ua+Ra)):0===this.aa&&ka<=oa.M.right&&(ua=oa.M.x,b.V(M-2,ua,gb),b.V(M-1,ua-Va,gb));else{Va=Math.max(10,this.ig[oa.layer]); +Ra=Math.max(10,this.Ff[oa.layer]);sd=0;if(180===this.aa||0===this.aa){if(180===this.aa?ka<=oa.M.x:ka>=oa.M.right)sd=(0===this.aa?Ra:-Va)/2;b.w(M++,ka+sd,gb)}else{if(270===this.aa?la<=oa.M.y:la>=oa.M.bottom)sd=(90===this.aa?Ra:-Va)/2;b.w(M++,qb,la+sd)}b.w(M++,ka,la)}}else{for(;null!==oa&&oa!==Ga;){Ca=pa=null;for(var Gg=oa.ac.i;Gg.next();){var td=Gg.value;if(td.link===c.link&&(pa=td.toVertex,Ca=td.fromVertex,null!==Ca.qd&&(Ca=null),null===pa.qd))break}var qb=0,gb=0,ka=0,la=0,rb=0,Va=0,Ra=0;if(pa!== +Ga)if(qb=b.l(M-1).x,gb=b.l(M-1).y,ka=pa.na,la=pa.ua,ba)if(180===this.aa||0===this.aa){var se=null!==Ca?Ca.ua:gb;se!==la&&(rb=this.Lb[pa.layer],2===M&&(rb=0===this.aa?Math.max(rb,qb):Math.min(rb,qb)),b.w(M++,rb,gb),b.w(M++,rb,la))}else{var ud=null!==Ca?Ca.na:qb;ud!==ka&&(rb=this.Lb[pa.layer],2===M&&(rb=90===this.aa?Math.max(rb,gb):Math.min(rb,gb)),b.w(M++,qb,rb),b.w(M++,ka,rb))}else Va=Math.max(10,this.ig[pa.layer]),Ra=Math.max(10,this.Ff[pa.layer]),180===this.aa?(b.w(M++,ka+Ra,la),T&&b.w(M++,ka,la), +b.w(M++,ka-Va,la)):90===this.aa?(b.w(M++,ka,la-Va),T&&b.w(M++,ka,la),b.w(M++,ka,la+Ra)):270===this.aa?(b.w(M++,ka,la+Ra),T&&b.w(M++,ka,la),b.w(M++,ka,la-Va)):(b.w(M++,ka-Va,la),T&&b.w(M++,ka,la),b.w(M++,ka+Ra,la));oa=pa}ba&&(qb=b.l(M-1).x,gb=b.l(M-1).y,ka=b.l(M).x,la=b.l(M).y,180===this.aa||0===this.aa?gb!==la&&(rb=0===this.aa?Math.min(Math.max((ka+qb)/2,this.Lb[Ga.layer]),ka):Math.max(Math.min((ka+qb)/2,this.Lb[Ga.layer]),ka),b.w(M++,rb,gb),b.w(M++,rb,la)):qb!==ka&&(rb=90===this.aa?Math.min(Math.max((la+ +gb)/2,this.Lb[Ga.layer]),la):Math.max(Math.min((la+gb)/2,this.Lb[Ga.layer]),la),b.w(M++,qb,rb),b.w(M++,ka,rb)))}if(null!==d&&T){if(null!==h){if(b.computeSpot(!0)===sb){var be=b.l(0),Ld=b.l(2);be.K(Ld)||b.V(1,(be.x+Ld.x)/2,(be.y+Ld.y)/2)}C=b.getLinkPoint(e,h,sb,!0,!1,f,k);C.G()||C.set(e.U.bl);b.V(0,C.x,C.y)}null!==k&&(b.computeSpot(!1)===sb&&(be=b.l(b.oa-1),Ld=b.l(b.oa-3),be.K(Ld)||b.V(b.oa-2,(be.x+Ld.x)/2,(be.y+Ld.y)/2)),C=b.getLinkPoint(f,k,sb,!1,!1,e,h),C.G()||C.set(f.U.bl),b.V(b.oa-1,C.x,C.y))}b.Ni(); +c.commit()}}}for(var ce=new I(W),Hg=this.network.edges.i;Hg.next();){var ad=Hg.value.link;null!==ad&&ad.jc&&!ce.contains(ad)&&ce.add(ad)}if(0Xb.y&&(hc=Jg.y>Xb.y?0:Md.xjc.x&&(ue=lh.x>jc.x?0:Qb.yb.layer?1:a.Geb.Ge?1:a.Ydb.Yd?1:0:0};gn.prototype.QE=function(a,b){return a instanceof gs&&b instanceof gs&&a!==b?a.firstb.first||a.$hb.$h||a.Geb.Ge?1:a.Ydb.Yd?1:0:0}; +gn.prototype.ix=function(a,b){return a instanceof gs&&b instanceof gs&&a!==b?a.Rdb.Rd||a.$hb.$h||a.Geb.Ge?1:a.Ydb.Yd?1:0:0};function hs(a,b){var c=a-b;return-1c}function yr(a,b){var c,d=a.Td[b];if(d>=a.Sg.length){c=[];for(var e=0;ea&&(this.Fi=a,this.H()))});v.defineProperty(gn,{Gp:"setsPortSpots"},function(){return this.Mh},function(a){this.Mh!==a&&(v.j(a,"boolean",gn,"setsPortSpots"),this.Mh=a,this.H())});v.defineProperty(gn,{mE:"linkSpacing"},function(){return this.hr},function(a){this.hr!==a&&(v.j(a,"number",gn,"linkSpacing"),0<=a&&(this.hr=a,this.H()))});v.u(gn,{IH:"maxLayer"},function(){return this.ob}); -v.u(gn,{cK:"maxIndex"},function(){return this.nv});v.u(gn,{bK:"maxColumn"},function(){return this.Fb});v.u(gn,{hK:"minIndexLayer"},function(){return this.rr});v.u(gn,{dK:"maxIndexLayer"},function(){return this.If});var lr;gn.CycleDepthFirst=lr=v.p(gn,"CycleDepthFirst",0);var rr;gn.CycleGreedy=rr=v.p(gn,"CycleGreedy",1);var mr;gn.LayerOptimalLinkLength=mr=v.p(gn,"LayerOptimalLinkLength",0);var Jr;gn.LayerLongestPathSink=Jr=v.p(gn,"LayerLongestPathSink",1);var Lr; +v.defineProperty(gn,{AG:"cycleRemoveOption"},function(){return this.An},function(a){this.An!==a&&(v.pb(a,gn,gn,"cycleRemoveOption"),a===rr||a===lr)&&(this.An=a,this.H())});v.defineProperty(gn,{BH:"layeringOption"},function(){return this.bo},function(a){this.bo!==a&&(v.pb(a,gn,gn,"layeringOption"),a===mr||a===Jr||a===Lr)&&(this.bo=a,this.H())}); +v.defineProperty(gn,{lH:"initializeOption"},function(){return this.Sn},function(a){this.Sn!==a&&(v.pb(a,gn,gn,"initializeOption"),a===nr||a===Rr||a===Pr)&&(this.Sn=a,this.H())});v.defineProperty(gn,{ZJ:"iterations"},function(){return this.Xl},function(a){this.Xl!==a&&(v.Ue(a,qr,"iterations"),0<=a&&(this.Xl=a,this.H()))});v.defineProperty(gn,{eG:"aggressiveOption"},function(){return this.nn},function(a){this.nn!==a&&(v.pb(a,gn,gn,"aggressiveOption"),a===Vr||a===or||a===Wr)&&(this.nn=a,this.H())}); +v.defineProperty(gn,{vK:"packOption"},function(){return this.Di},function(a){this.Di!==a&&(v.j(a,"number",gn,"packOption"),0<=a&&8>a&&(this.Di=a,this.H()))});v.defineProperty(gn,{Gp:"setsPortSpots"},function(){return this.Kh},function(a){this.Kh!==a&&(v.j(a,"boolean",gn,"setsPortSpots"),this.Kh=a,this.H())});v.defineProperty(gn,{pE:"linkSpacing"},function(){return this.ir},function(a){this.ir!==a&&(v.j(a,"number",gn,"linkSpacing"),0<=a&&(this.ir=a,this.H()))});v.u(gn,{KH:"maxLayer"},function(){return this.ob}); +v.u(gn,{eK:"maxIndex"},function(){return this.ov});v.u(gn,{dK:"maxColumn"},function(){return this.Fb});v.u(gn,{jK:"minIndexLayer"},function(){return this.sr});v.u(gn,{fK:"maxIndexLayer"},function(){return this.Hf});var lr;gn.CycleDepthFirst=lr=v.p(gn,"CycleDepthFirst",0);var rr;gn.CycleGreedy=rr=v.p(gn,"CycleGreedy",1);var mr;gn.LayerOptimalLinkLength=mr=v.p(gn,"LayerOptimalLinkLength",0);var Jr;gn.LayerLongestPathSink=Jr=v.p(gn,"LayerLongestPathSink",1);var Lr; gn.LayerLongestPathSource=Lr=v.p(gn,"LayerLongestPathSource",2);var nr;gn.InitDepthFirstOut=nr=v.p(gn,"InitDepthFirstOut",0);var Rr;gn.InitDepthFirstIn=Rr=v.p(gn,"InitDepthFirstIn",1);var Pr;gn.InitNaive=Pr=v.p(gn,"InitNaive",2);var Vr;gn.AggressiveNone=Vr=v.p(gn,"AggressiveNone",0);var or;gn.AggressiveLess=or=v.p(gn,"AggressiveLess",1);var Wr;gn.AggressiveMore=Wr=v.p(gn,"AggressiveMore",2);gn.PackNone=0;var Xr;gn.PackExpand=Xr=1;var Yr;gn.PackStraighten=Yr=2;var $r;gn.PackMedian=$r=4;var pr; -gn.PackAll=pr=7;function gs(){this.index=this.$d=this.He=this.Td=this.first=this.layer=0;this.link=null;this.bi=0}v.Pd(gs,{layer:!0,first:!0,Td:!0,He:!0,$d:!0,index:!0,link:!0,bi:!0});function qr(){Zf.call(this)}v.Ia(qr,Zf);v.ea("LayeredDigraphNetwork",qr);qr.prototype.createVertex=function(){return new is};qr.prototype.createEdge=function(){return new js}; -function is(){nq.call(this);this.index=this.column=this.layer=-1;this.component=NaN;this.near=null;this.valid=!1;this.finish=this.To=NaN;this.Cm=0;this.Rz=this.Sz=null}v.Ia(is,nq);v.ea("LayeredDigraphVertex",is);function js(){oq.call(this);this.forest=this.rev=this.valid=!1;this.portToPos=this.portFromPos=NaN;this.portToColOffset=this.portFromColOffset=0}v.Ia(js,oq);v.ea("LayeredDigraphEdge",js); -function Z(){0b.level)return!1;a.removeChild(c.parent,c)}return!0}Z.prototype.removeChild=function(a,b){if(null!==a&&null!==b){for(var c=a.children,d=0,e=0;ef?Ys(a,k,pa,z,A):Zs(a,k,pa,z,A);pa=U.x;z=U.width;A=U.height;break;case Ms:for(m=0;ms&&(Mua&&(it(a,-ua,0,Ga,m-1),jt(C,-ua,0),jt(T,-ua,0),ua=0)}n.ma.m(ua,aa);z=Math.max(z,ba);A=Math.max(A,H+(0===Ia?0:w)+Ca.height);M=ba}else{0s&&(aaua&&(it(a,0,-ua,Ga,m-1),jt(C,0,-ua),jt(T,0,-ua),ua=0);n.ma.m(M,ua);A=Math.max(A,U);z=Math.max(z,H+(0===Ia?0:w)+Ca.width);aa=U}oa++}0h&&(h=0),135q&&(q=0),p===Ns&&(l+=t/2+a.O.y),k+=d+c):b?(null===a.comments?d>z&&(p=nt(p,d-z,0),k=p.x,l=p.y,z=d,h=0):z=lt(a,z,h),0>h&&(k-=h,h=0),135A&&(p=nt(p,0,e-A),k=p.x,l=p.y,A=e,q=0):A=mt(a,A,q),0>q&&(l-=q,q=0),k+=d+c);if(0f[0].x?f[2].assign(f[1]):f[1].assign(f[2])),f[3].yf[0].x?f[3].assign(f[2]):f[2].assign(f[3])),p[0].m(h+d,0),p[1].m(p[0].x,e),p[2].yf[0].y?f[2].assign(f[1]):f[1].assign(f[2])),f[3].xf[0].y?f[3].assign(f[2]):f[2].assign(f[3])),p[0].m(0,q+e),p[1].m(d,p[0].y),p[2].xf?Ys(a,k,pa,x,A):Zs(a,k,pa,x,A);pa=U.x;x=U.width;A=U.height;break;case Ms:for(m=0;ms&&(Mua&&(it(a,-ua,0,Ga,m-1),jt(C,-ua,0),jt(T,-ua,0),ua=0)}n.ma.m(ua,aa);x=Math.max(x,ba);A=Math.max(A,H+(0===Ia?0:y)+Ca.height);M=ba}else{0s&&(aaua&&(it(a,0,-ua,Ga,m-1),jt(C,0,-ua),jt(T,0,-ua),ua=0);n.ma.m(M,ua);A=Math.max(A,U);x=Math.max(x,H+(0===Ia?0:y)+Ca.width);aa=U}oa++}0h&&(h=0),135q&&(q=0),p===Ns&&(l+=t/2+a.O.y),k+=d+c):b?(null===a.comments?d>x&&(p=nt(p,d-x,0),k=p.x,l=p.y,x=d,h=0):x=lt(a,x,h),0>h&&(k-=h,h=0),135A&&(p=nt(p,0,e-A),k=p.x,l=p.y,A=e,q=0):A=mt(a,A,q),0>q&&(l-=q,q=0),k+=d+c);if(0f[0].x?f[2].assign(f[1]):f[1].assign(f[2])),f[3].yf[0].x?f[3].assign(f[2]):f[2].assign(f[3])),p[0].m(h+d,0),p[1].m(p[0].x,e),p[2].yf[0].y?f[2].assign(f[1]):f[1].assign(f[2])),f[3].xf[0].y?f[3].assign(f[2]):f[2].assign(f[3])),p[0].m(0,q+e),p[1].m(d,p[0].y),p[2].xc?Ys(b,e,oa,H,C):Zs(b,e,oa,H,C);oa=C.x;H=C.width;C=C.height;break;case Ms:for(k=0;kr&&(bar&&(Up&&(p=0),135z&&(z=0));b.La.m(p,z);b.fb.m(H,C)}} +function Rs(a,b){if(0===b.Em){var c=!1,d=0,e=Js;null!==b.parent&&(d=b.parent.angle,e=b.parent.alignment,c=Ks(e));e=Ps(b);b.ma.m(0,0);b.fb.m(b.width,b.height);null===b.parent||null===b.comments||(180!==d&&270!==d||c)&&!e?b.Ma.m(0,0):180===d&&!c||(90===d||270===d)&&e?b.Ma.m(b.width-2*b.O.x,0):b.Ma.m(0,b.height-2*b.O.y)}else{for(var c=Ts(b),d=90===c||270===c,f=0,e=b.children,h=e.length,k=0;kc?Ys(b,e,oa,H,C):Zs(b,e,oa,H,C);oa=C.x;H=C.width;C=C.height;break;case Ms:for(k=0;kr&&(bar&&(Up&&(p=0),135x&&(x=0));b.Ma.m(p,x);b.fb.m(H,C)}} function Ys(a,b,c,d,e){var f=b.length;if(0===f)return new B(c,0,d,e);if(1===f){var h=b[0];d=h.fb.width;e=h.fb.height;return new B(c,0,d,e)}for(var k=a.nodeSpacing,l=a.rowSpacing,m=90===Ts(a),n=0,p=0,q=0,r=0;rm&&(d-=m),e=Math.max(e,Math.max(x, -q)+b+s.height),0>h.ma.x&&(c=rt(a,h.ma.x,!1,c,k))):(h.ma.m(d+b,c+k/2-h.O.y-h.La.y),d=Math.max(d,Math.max(w,p)+b+s.width),m=c+k/2-h.O.y-h.La.y,e=Math.max(e,m+s.height),0>m&&(e-=m),0>h.ma.y&&(c=rt(a,h.ma.y,!0,c,k))));return new B(c,0,d,e)} +0,y=p,w=q;m?(p=c+k,q=0):(p=0,q=c+k);for(r=0;rm&&(d-=m),e=Math.max(e,Math.max(w, +q)+b+s.height),0>h.ma.x&&(c=rt(a,h.ma.x,!1,c,k))):(h.ma.m(d+b,c+k/2-h.O.y-h.Ma.y),d=Math.max(d,Math.max(y,p)+b+s.width),m=c+k/2-h.O.y-h.Ma.y,e=Math.max(e,m+s.height),0>m&&(e-=m),0>h.ma.y&&(c=rt(a,h.ma.y,!0,c,k))));return new B(c,0,d,e)} function Zs(a,b,c,d,e){var f=b.length;if(0===f)return new B(c,0,d,e);if(1===f){var h=b[0];d=h.fb.width;e=h.fb.height;return new B(c,0,d,e)}for(var k=a.nodeSpacing,l=a.rowSpacing,m=270===Ts(a),n=0,p=0,q=0,r=0;rp&&(d-=p),e=Math.max(e,Math.abs(Math.min(x, -q))+l+s.height),0>h.ma.x&&(c=rt(a,h.ma.x,!1,c,k))):(h.ma.m(-d-s.width-l,c+k/2-h.O.y-h.La.y),d=Math.max(d,Math.abs(Math.min(w,p))+l+s.width),p=c+k/2-h.O.y-h.La.y,e=Math.max(e,p+s.height),0>p&&(e-=p),0>h.ma.y&&(c=rt(a,h.ma.y,!0,c,k))));for(r=0;rp&&(d-=p),e=Math.max(e,Math.abs(Math.min(w, +q))+l+s.height),0>h.ma.x&&(c=rt(a,h.ma.x,!1,c,k))):(h.ma.m(-d-s.width-l,c+k/2-h.O.y-h.Ma.y),d=Math.max(d,Math.abs(Math.min(y,p))+l+s.width),p=c+k/2-h.O.y-h.Ma.y,e=Math.max(e,p+s.height),0>p&&(e-=p),0>h.ma.y&&(c=rt(a,h.ma.y,!0,c,k))));for(r=0;rd&&(d=c+a.width);0>c&&(d-=c);return d;case Us:return a.width>b?a.width:b;case Vs:return 2*a.O.x>b?a.width:b+a.width-2*a.O.x;case Ls:case As:return d=Math.min(0,c),c=Math.max(b,c+a.width),Math.max(a.width,c-d);case Ms:return a.width-a.O.x+a.nodeSpacing/2+b;case Ns:return Math.max(a.width,a.O.x+a.nodeSpacing/2+b);default:return b}} function mt(a,b,c){switch(a.alignment){case Js:case kt:var d=b;c+a.height>d&&(d=c+a.height);0>c&&(d-=c);return d;case Us:return a.height>b?a.height:b;case Vs:return 2*a.O.y>b?a.height:b+a.height-2*a.O.y;case Ls:case As:return d=Math.min(0,c),c=Math.max(b,c+a.height),Math.max(a.height,c-d);case Ms:return a.height-a.O.y+a.nodeSpacing/2+b;case Ns:return Math.max(a.height,a.O.y+a.nodeSpacing/2+b);default:return b}} -function nt(a,b,c){switch(a){case kt:b/=2;c/=2;break;case Js:b/=2;c/=2;break;case Us:c=b=0;break;case Vs:break;default:v.k("Unhandled alignment value "+a.toString())}return new y(b,c)}function at(a,b,c,d,e,f){b=nt(b,c,d);it(a,b.x,b.y,e,f)}function it(a,b,c,d,e){if(0!==b||0!==c)for(a=a.children;d<=e;d++){var f=a[d].ma;f.x+=b;f.y+=c}} -function gt(a,b,c,d){var e=b.parent;switch(a.Ef){case ls:for(a=b.lc;a.next();)b=a.value,b.fromVertex===e&&b.Qr.m(c,d);break;case ss:for(a=b.$b;a.next();)b=a.value,b.toVertex===e&&b.Qr.m(c,d);break;default:v.k("Unhandled path value "+a.Ef.toString())}}function jt(a,b,c){for(var d=0;dp.length||null===q||2>q.length))for(m=l=0;lu&&e.ye.y&&ub.length||null===l||2>l.length)d=null;else{n=$s(a,b.length+l.length);for(d=f=e=0;fe;)u=l[f++],n[d++].m(u.x+m,u.y);l=$s(a,d);for(e=0;ep.length||null===f||2>f.length)e=null;else{n=$s(a,p.length+f.length);for(m=w=l=0;lf;)e=p[l++],n[m++].m(e.x,e.y);e=$s(a,m);for(l=0;lp.length||null===q||2>q.length))for(m=l=0;lf&&e.xe.x&&fb.length||null===l||2>l.length)d=null;else{n=$s(a, -b.length+l.length);for(d=f=e=0;fe;)u=l[f++],n[d++].m(u.x,u.y+m);l=$s(a,d);for(e=0;ep.length||null===f||2>f.length)e=null;else{n=$s(a,p.length+f.length);for(m=w=l=0;lf;)e=p[l++],n[m++].m(e.x,e.y);e=$s(a,m);for(l=0;lp.length||null===q||2>q.length))for(m=l=0;lu&&e.ye.y&&ub.length||null===l||2>l.length)d=null;else{n=$s(a,b.length+l.length);for(d=f=e=0;fe;)u=l[f++],n[d++].m(u.x+m,u.y);l=$s(a,d);for(e=0;ep.length||null===f||2>f.length)e=null;else{n=$s(a,p.length+f.length);for(m=y=l=0;lf;)e=p[l++],n[m++].m(e.x,e.y);e=$s(a,m);for(l=0;lp.length||null===q||2>q.length))for(m=l=0;lf&&e.xe.x&&fb.length||null===l||2>l.length)d=null;else{n=$s(a, +b.length+l.length);for(d=f=e=0;fe;)u=l[f++],n[d++].m(u.x,u.y+m);l=$s(a,d);for(e=0;ep.length||null===f||2>f.length)e=null;else{n=$s(a,p.length+f.length);for(m=y=l=0;lf;)e=p[l++],n[m++].m(e.x,e.y);e=$s(a,m);for(l=0;l=a?0:135>=a?90:225>=a?180:315>=a?270:0} function Ws(a){var b=Ts(a),b=90===b||270===b,c=a.layerSpacing;if(0=a&&(this.ra.nodeIndentPastParent=a,this.H()))}); @@ -1948,35 +1950,35 @@ v.defineProperty(Z,{breadthLimit:"breadthLimit"},function(){return this.ra.bread v.defineProperty(Z,{rowIndent:"rowIndent"},function(){return this.ra.rowIndent},function(a){this.ra.rowIndent!==a&&(v.j(a,"number",Z,"rowIndent"),0<=a&&(this.ra.rowIndent=a,this.H()))});v.defineProperty(Z,{commentSpacing:"commentSpacing"},function(){return this.ra.commentSpacing},function(a){this.ra.commentSpacing!==a&&(v.j(a,"number",Z,"commentSpacing"),this.ra.commentSpacing=a,this.H())}); v.defineProperty(Z,{commentMargin:"commentMargin"},function(){return this.ra.commentMargin},function(a){this.ra.commentMargin!==a&&(v.j(a,"number",Z,"commentMargin"),this.ra.commentMargin=a,this.H())});v.defineProperty(Z,{setsPortSpot:"setsPortSpot"},function(){return this.ra.setsPortSpot},function(a){this.ra.setsPortSpot!==a&&(v.j(a,"boolean",Z,"setsPortSpot"),this.ra.setsPortSpot=a,this.H())}); v.defineProperty(Z,{portSpot:"portSpot"},function(){return this.ra.portSpot},function(a){v.A(a,L,Z,"portSpot");this.ra.portSpot.K(a)||(this.ra.portSpot=a,this.H())});v.defineProperty(Z,{setsChildPortSpot:"setsChildPortSpot"},function(){return this.ra.setsChildPortSpot},function(a){this.ra.setsChildPortSpot!==a&&(v.j(a,"boolean",Z,"setsChildPortSpot"),this.ra.setsChildPortSpot=a,this.H())}); -v.defineProperty(Z,{childPortSpot:"childPortSpot"},function(){return this.ra.childPortSpot},function(a){v.A(a,L,Z,"childPortSpot");this.ra.childPortSpot.K(a)||(this.ra.childPortSpot=a,this.H())});v.defineProperty(Z,{pJ:"alternateSorting"},function(){return this.ta.sorting},function(a){this.ta.sorting!==a&&(v.pb(a,Z,Z,"alternateSorting"),a===Fs||a===Gs||a===Hs||Is)&&(this.ta.sorting=a,this.H())}); -v.defineProperty(Z,{dJ:"alternateComparer"},function(){return this.ta.comparer},function(a){this.ta.comparer!==a&&(v.j(a,"function",Z,"alternateComparer"),this.ta.comparer=a,this.H())});v.defineProperty(Z,{YI:"alternateAngle"},function(){return this.ta.angle},function(a){this.ta.angle!==a&&(v.j(a,"number",Z,"alternateAngle"),0===a||90===a||180===a||270===a)&&(this.ta.angle=a,this.H())}); -v.defineProperty(Z,{XI:"alternateAlignment"},function(){return this.ta.alignment},function(a){this.ta.alignment!==a&&(v.pb(a,Z,Z,"alternateAlignment"),this.ta.alignment=a,this.H())});v.defineProperty(Z,{hJ:"alternateNodeIndent"},function(){return this.ta.nodeIndent},function(a){this.ta.nodeIndent!==a&&(v.j(a,"number",Z,"alternateNodeIndent"),0<=a&&(this.ta.nodeIndent=a,this.H()))}); -v.defineProperty(Z,{iJ:"alternateNodeIndentPastParent"},function(){return this.ta.nodeIndentPastParent},function(a){this.ta.nodeIndentPastParent!==a&&(v.j(a,"number",Z,"alternateNodeIndentPastParent"),0<=a&&1>=a&&(this.ta.nodeIndentPastParent=a,this.H()))});v.defineProperty(Z,{jJ:"alternateNodeSpacing"},function(){return this.ta.nodeSpacing},function(a){this.ta.nodeSpacing!==a&&(v.j(a,"number",Z,"alternateNodeSpacing"),this.ta.nodeSpacing=a,this.H())}); -v.defineProperty(Z,{fJ:"alternateLayerSpacing"},function(){return this.ta.layerSpacing},function(a){this.ta.layerSpacing!==a&&(v.j(a,"number",Z,"alternateLayerSpacing"),this.ta.layerSpacing=a,this.H())});v.defineProperty(Z,{gJ:"alternateLayerSpacingParentOverlap"},function(){return this.ta.layerSpacingParentOverlap},function(a){this.ta.layerSpacingParentOverlap!==a&&(v.j(a,"number",Z,"alternateLayerSpacingParentOverlap"),0<=a&&1>=a&&(this.ta.layerSpacingParentOverlap=a,this.H()))}); -v.defineProperty(Z,{cJ:"alternateCompaction"},function(){return this.ta.compaction},function(a){this.ta.compaction!==a&&(v.pb(a,Z,Z,"alternateCompaction"),a===Qs||a===Ss)&&(this.ta.compaction=a,this.H())});v.defineProperty(Z,{ZI:"alternateBreadthLimit"},function(){return this.ta.breadthLimit},function(a){this.ta.breadthLimit!==a&&(v.j(a,"number",Z,"alternateBreadthLimit"),0<=a&&(this.ta.breadthLimit=a,this.H()))}); -v.defineProperty(Z,{mJ:"alternateRowSpacing"},function(){return this.ta.rowSpacing},function(a){this.ta.rowSpacing!==a&&(v.j(a,"number",Z,"alternateRowSpacing"),this.ta.rowSpacing=a,this.H())});v.defineProperty(Z,{lJ:"alternateRowIndent"},function(){return this.ta.rowIndent},function(a){this.ta.rowIndent!==a&&(v.j(a,"number",Z,"alternateRowIndent"),0<=a&&(this.ta.rowIndent=a,this.H()))}); -v.defineProperty(Z,{bJ:"alternateCommentSpacing"},function(){return this.ta.commentSpacing},function(a){this.ta.commentSpacing!==a&&(v.j(a,"number",Z,"alternateCommentSpacing"),this.ta.commentSpacing=a,this.H())});v.defineProperty(Z,{aJ:"alternateCommentMargin"},function(){return this.ta.commentMargin},function(a){this.ta.commentMargin!==a&&(v.j(a,"number",Z,"alternateCommentMargin"),this.ta.commentMargin=a,this.H())}); -v.defineProperty(Z,{oJ:"alternateSetsPortSpot"},function(){return this.ta.setsPortSpot},function(a){this.ta.setsPortSpot!==a&&(v.j(a,"boolean",Z,"alternateSetsPortSpot"),this.ta.setsPortSpot=a,this.H())});v.defineProperty(Z,{kJ:"alternatePortSpot"},function(){return this.ta.portSpot},function(a){v.A(a,L,Z,"alternatePortSpot");this.ta.portSpot.K(a)||(this.ta.portSpot=a,this.H())}); -v.defineProperty(Z,{nJ:"alternateSetsChildPortSpot"},function(){return this.ta.setsChildPortSpot},function(a){this.ta.setsChildPortSpot!==a&&(v.j(a,"boolean",Z,"alternateSetsChildPortSpot"),this.ta.setsChildPortSpot=a,this.H())});v.defineProperty(Z,{$I:"alternateChildPortSpot"},function(){return this.ta.childPortSpot},function(a){v.A(a,L,Z,"alternateChildPortSpot");this.ta.childPortSpot.K(a)||(this.ta.childPortSpot=a,this.H())});var ks;Z.PathDefault=ks=v.p(Z,"PathDefault",-1);var ls; +v.defineProperty(Z,{childPortSpot:"childPortSpot"},function(){return this.ra.childPortSpot},function(a){v.A(a,L,Z,"childPortSpot");this.ra.childPortSpot.K(a)||(this.ra.childPortSpot=a,this.H())});v.defineProperty(Z,{rJ:"alternateSorting"},function(){return this.ta.sorting},function(a){this.ta.sorting!==a&&(v.pb(a,Z,Z,"alternateSorting"),a===Fs||a===Gs||a===Hs||Is)&&(this.ta.sorting=a,this.H())}); +v.defineProperty(Z,{fJ:"alternateComparer"},function(){return this.ta.comparer},function(a){this.ta.comparer!==a&&(v.j(a,"function",Z,"alternateComparer"),this.ta.comparer=a,this.H())});v.defineProperty(Z,{$I:"alternateAngle"},function(){return this.ta.angle},function(a){this.ta.angle!==a&&(v.j(a,"number",Z,"alternateAngle"),0===a||90===a||180===a||270===a)&&(this.ta.angle=a,this.H())}); +v.defineProperty(Z,{ZI:"alternateAlignment"},function(){return this.ta.alignment},function(a){this.ta.alignment!==a&&(v.pb(a,Z,Z,"alternateAlignment"),this.ta.alignment=a,this.H())});v.defineProperty(Z,{jJ:"alternateNodeIndent"},function(){return this.ta.nodeIndent},function(a){this.ta.nodeIndent!==a&&(v.j(a,"number",Z,"alternateNodeIndent"),0<=a&&(this.ta.nodeIndent=a,this.H()))}); +v.defineProperty(Z,{kJ:"alternateNodeIndentPastParent"},function(){return this.ta.nodeIndentPastParent},function(a){this.ta.nodeIndentPastParent!==a&&(v.j(a,"number",Z,"alternateNodeIndentPastParent"),0<=a&&1>=a&&(this.ta.nodeIndentPastParent=a,this.H()))});v.defineProperty(Z,{lJ:"alternateNodeSpacing"},function(){return this.ta.nodeSpacing},function(a){this.ta.nodeSpacing!==a&&(v.j(a,"number",Z,"alternateNodeSpacing"),this.ta.nodeSpacing=a,this.H())}); +v.defineProperty(Z,{hJ:"alternateLayerSpacing"},function(){return this.ta.layerSpacing},function(a){this.ta.layerSpacing!==a&&(v.j(a,"number",Z,"alternateLayerSpacing"),this.ta.layerSpacing=a,this.H())});v.defineProperty(Z,{iJ:"alternateLayerSpacingParentOverlap"},function(){return this.ta.layerSpacingParentOverlap},function(a){this.ta.layerSpacingParentOverlap!==a&&(v.j(a,"number",Z,"alternateLayerSpacingParentOverlap"),0<=a&&1>=a&&(this.ta.layerSpacingParentOverlap=a,this.H()))}); +v.defineProperty(Z,{eJ:"alternateCompaction"},function(){return this.ta.compaction},function(a){this.ta.compaction!==a&&(v.pb(a,Z,Z,"alternateCompaction"),a===Qs||a===Ss)&&(this.ta.compaction=a,this.H())});v.defineProperty(Z,{aJ:"alternateBreadthLimit"},function(){return this.ta.breadthLimit},function(a){this.ta.breadthLimit!==a&&(v.j(a,"number",Z,"alternateBreadthLimit"),0<=a&&(this.ta.breadthLimit=a,this.H()))}); +v.defineProperty(Z,{oJ:"alternateRowSpacing"},function(){return this.ta.rowSpacing},function(a){this.ta.rowSpacing!==a&&(v.j(a,"number",Z,"alternateRowSpacing"),this.ta.rowSpacing=a,this.H())});v.defineProperty(Z,{nJ:"alternateRowIndent"},function(){return this.ta.rowIndent},function(a){this.ta.rowIndent!==a&&(v.j(a,"number",Z,"alternateRowIndent"),0<=a&&(this.ta.rowIndent=a,this.H()))}); +v.defineProperty(Z,{dJ:"alternateCommentSpacing"},function(){return this.ta.commentSpacing},function(a){this.ta.commentSpacing!==a&&(v.j(a,"number",Z,"alternateCommentSpacing"),this.ta.commentSpacing=a,this.H())});v.defineProperty(Z,{cJ:"alternateCommentMargin"},function(){return this.ta.commentMargin},function(a){this.ta.commentMargin!==a&&(v.j(a,"number",Z,"alternateCommentMargin"),this.ta.commentMargin=a,this.H())}); +v.defineProperty(Z,{qJ:"alternateSetsPortSpot"},function(){return this.ta.setsPortSpot},function(a){this.ta.setsPortSpot!==a&&(v.j(a,"boolean",Z,"alternateSetsPortSpot"),this.ta.setsPortSpot=a,this.H())});v.defineProperty(Z,{mJ:"alternatePortSpot"},function(){return this.ta.portSpot},function(a){v.A(a,L,Z,"alternatePortSpot");this.ta.portSpot.K(a)||(this.ta.portSpot=a,this.H())}); +v.defineProperty(Z,{pJ:"alternateSetsChildPortSpot"},function(){return this.ta.setsChildPortSpot},function(a){this.ta.setsChildPortSpot!==a&&(v.j(a,"boolean",Z,"alternateSetsChildPortSpot"),this.ta.setsChildPortSpot=a,this.H())});v.defineProperty(Z,{bJ:"alternateChildPortSpot"},function(){return this.ta.childPortSpot},function(a){v.A(a,L,Z,"alternateChildPortSpot");this.ta.childPortSpot.K(a)||(this.ta.childPortSpot=a,this.H())});var ks;Z.PathDefault=ks=v.p(Z,"PathDefault",-1);var ls; Z.PathDestination=ls=v.p(Z,"PathDestination",0);var ss;Z.PathSource=ss=v.p(Z,"PathSource",1);var Fs;Z.SortingForwards=Fs=v.p(Z,"SortingForwards",10);var Gs;Z.SortingReverse=Gs=v.p(Z,"SortingReverse",11);var Hs;Z.SortingAscending=Hs=v.p(Z,"SortingAscending",12);var Is;Z.SortingDescending=Is=v.p(Z,"SortingDescending",13);var kt;Z.AlignmentCenterSubtrees=kt=v.p(Z,"AlignmentCenterSubtrees",20);var Js;Z.AlignmentCenterChildren=Js=v.p(Z,"AlignmentCenterChildren",21);var Us; Z.AlignmentStart=Us=v.p(Z,"AlignmentStart",22);var Vs;Z.AlignmentEnd=Vs=v.p(Z,"AlignmentEnd",23);var Ls;Z.AlignmentBus=Ls=v.p(Z,"AlignmentBus",24);var As;Z.AlignmentBusBranching=As=v.p(Z,"AlignmentBusBranching",25);var Ms;Z.AlignmentTopLeftBus=Ms=v.p(Z,"AlignmentTopLeftBus",26);var Ns;Z.AlignmentBottomRightBus=Ns=v.p(Z,"AlignmentBottomRightBus",27);var Qs;Z.CompactionNone=Qs=v.p(Z,"CompactionNone",30);var Ss;Z.CompactionBlock=Ss=v.p(Z,"CompactionBlock",31);var ms; Z.StyleLayered=ms=v.p(Z,"StyleLayered",40);var Es;Z.StyleLastParents=Es=v.p(Z,"StyleLastParents",41);var Ds;Z.StyleAlternating=Ds=v.p(Z,"StyleAlternating",42);var Cs;Z.StyleRootOnly=Cs=v.p(Z,"StyleRootOnly",43);var os;Z.ArrangementVertical=os=v.p(Z,"ArrangementVertical",50);var tt;Z.ArrangementHorizontal=tt=v.p(Z,"ArrangementHorizontal",51);var rs;Z.ArrangementFixedRoots=rs=v.p(Z,"ArrangementFixedRoots",52);var ns;Z.LayerIndividual=ns=v.p(Z,"LayerIndividual",60);var ys; -Z.LayerSiblings=ys=v.p(Z,"LayerSiblings",61);var xs;Z.LayerUniform=xs=v.p(Z,"LayerUniform",62);function qs(){Zf.call(this)}v.Ia(qs,Zf);v.ea("TreeNetwork",qs);qs.prototype.createVertex=function(){return new ps};qs.prototype.createEdge=function(){return new vt}; -function ps(){nq.call(this);this.initialized=!1;this.parent=null;this.children=[];this.maxGenerationCount=this.maxChildrenCount=this.descendantCount=this.level=0;this.comments=null;this.ma=new y(0,0);this.fb=new ia(0,0);this.La=new y(0,0);this.Cp=this.Bp=this.pI=!1;this.Rt=this.zt=null;this.sorting=Fs;this.comparer=tq;this.angle=0;this.alignment=Js;this.nodeIndentPastParent=this.nodeIndent=0;this.nodeSpacing=20;this.layerSpacing=50;this.layerSpacingParentOverlap=0;this.compaction=Ss;this.breadthLimit= -0;this.rowSpacing=25;this.commentSpacing=this.rowIndent=10;this.commentMargin=20;this.setsPortSpot=!0;this.portSpot=kc;this.setsChildPortSpot=!0;this.childPortSpot=kc}v.Ia(ps,nq);v.ea("TreeVertex",ps); +Z.LayerSiblings=ys=v.p(Z,"LayerSiblings",61);var xs;Z.LayerUniform=xs=v.p(Z,"LayerUniform",62);function qs(){Zf.call(this)}v.Ja(qs,Zf);v.ea("TreeNetwork",qs);qs.prototype.createVertex=function(){return new ps};qs.prototype.createEdge=function(){return new vt}; +function ps(){nq.call(this);this.initialized=!1;this.parent=null;this.children=[];this.maxGenerationCount=this.maxChildrenCount=this.descendantCount=this.level=0;this.comments=null;this.ma=new z(0,0);this.fb=new ia(0,0);this.Ma=new z(0,0);this.Cp=this.Bp=this.rI=!1;this.St=this.At=null;this.sorting=Fs;this.comparer=tq;this.angle=0;this.alignment=Js;this.nodeIndentPastParent=this.nodeIndent=0;this.nodeSpacing=20;this.layerSpacing=50;this.layerSpacingParentOverlap=0;this.compaction=Ss;this.breadthLimit= +0;this.rowSpacing=25;this.commentSpacing=this.rowIndent=10;this.commentMargin=20;this.setsPortSpot=!0;this.portSpot=fc;this.setsChildPortSpot=!0;this.childPortSpot=fc}v.Ja(ps,nq);v.ea("TreeVertex",ps); ps.prototype.copyInheritedPropertiesFrom=function(a){null!==a&&(this.sorting=a.sorting,this.comparer=a.comparer,this.angle=a.angle,this.alignment=a.alignment,this.nodeIndent=a.nodeIndent,this.nodeIndentPastParent=a.nodeIndentPastParent,this.nodeSpacing=a.nodeSpacing,this.layerSpacing=a.layerSpacing,this.layerSpacingParentOverlap=a.layerSpacingParentOverlap,this.compaction=a.compaction,this.breadthLimit=a.breadthLimit,this.rowSpacing=a.rowSpacing,this.rowIndent=a.rowIndent,this.commentSpacing=a.commentSpacing, -this.commentMargin=a.commentMargin,this.setsPortSpot=a.setsPortSpot,this.portSpot=a.portSpot,this.setsChildPortSpot=a.setsChildPortSpot,this.childPortSpot=a.childPortSpot)};v.u(ps,{Em:"childrenCount"},function(){return this.children.length});v.defineProperty(ps,{yK:"relativePosition"},function(){return this.ma},function(a){this.ma.set(a)});v.defineProperty(ps,{KK:"subtreeSize"},function(){return this.fb},function(a){this.fb.set(a)}); -v.defineProperty(ps,{JK:"subtreeOffset"},function(){return this.La},function(a){this.La.set(a)});function vt(){oq.call(this);this.Qr=new y(0,0)}v.Ia(vt,oq);v.ea("TreeEdge",vt); -vt.prototype.commit=function(){var a=this.link;if(null!==a&&!a.rl){var b=this.network.Pb,c=null,d=null;switch(b.Ef){case ls:c=this.fromVertex;d=this.toVertex;break;case ss:c=this.toVertex;d=this.fromVertex;break;default:v.k("Unhandled path value "+b.Ef.toString())}if(null!==c&&null!==d)if(b=this.Qr,0!==b.x||0!==b.y||c.pI){var d=c.mb,e=Ts(c),f=Ws(c),h=c.rowSpacing;a.hn();var k=a.Je===Hi,l=a.jc,m=0,n,p;a.Cl();if(l||k){for(m=2;4q.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-Xs(c))))):c.alignment===Us?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-Xs(c))))):c.alignment===Us?(r=d.left+b.x,0===b.x&&n.xq.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-Xs(c))))):c.alignment===Us?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-Xs(c))))):c.alignment===Us?(r=d.left+b.x,0===b.x&&n.xq.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-Xs(c))))):c.alignment===Us?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-Xs(c))))):c.alignment===Us?(r=d.left+b.x,0===b.x&&n.xq.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-Xs(c))))):c.alignment===Us?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-Xs(c))))):c.alignment===Us?(r=d.left+b.x,0===b.x&&n.x