diff --git a/api/index.html b/api/index.html index 95c3a2db0..b33d7ee15 100644 --- a/api/index.html +++ b/api/index.html @@ -1105,7 +1105,7 @@

GoJS Class Index

diff --git a/api/symbols/ActionTool.html b/api/symbols/ActionTool.html index edd24f9c5..11d04ee40 100644 --- a/api/symbols/ActionTool.html +++ b/api/symbols/ActionTool.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/Adornment.html b/api/symbols/Adornment.html index b10a40981..f4fce4bd7 100644 --- a/api/symbols/Adornment.html +++ b/api/symbols/Adornment.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/AnimationManager.html b/api/symbols/AnimationManager.html index 5b690d831..be7c14b81 100644 --- a/api/symbols/AnimationManager.html +++ b/api/symbols/AnimationManager.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/Binding.html b/api/symbols/Binding.html index 046d6ae81..f353dddef 100644 --- a/api/symbols/Binding.html +++ b/api/symbols/Binding.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/Brush.html b/api/symbols/Brush.html index fbd9f68b4..5b3f6228f 100644 --- a/api/symbols/Brush.html +++ b/api/symbols/Brush.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/ChangedEvent.html b/api/symbols/ChangedEvent.html index 1331d1e72..dedd7ab93 100644 --- a/api/symbols/ChangedEvent.html +++ b/api/symbols/ChangedEvent.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/CircularEdge.html b/api/symbols/CircularEdge.html index 911ecc91d..7082d993b 100644 --- a/api/symbols/CircularEdge.html +++ b/api/symbols/CircularEdge.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/CircularLayout.html b/api/symbols/CircularLayout.html index be8e0fce0..ddeabbf69 100644 --- a/api/symbols/CircularLayout.html +++ b/api/symbols/CircularLayout.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/CircularVertex.html b/api/symbols/CircularVertex.html index 167db5d6f..1094d4985 100644 --- a/api/symbols/CircularVertex.html +++ b/api/symbols/CircularVertex.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/ClickCreatingTool.html b/api/symbols/ClickCreatingTool.html index d27a91aa0..b49ae0c66 100644 --- a/api/symbols/ClickCreatingTool.html +++ b/api/symbols/ClickCreatingTool.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/ClickSelectingTool.html b/api/symbols/ClickSelectingTool.html index 2e7df3a8a..ecdd892c9 100644 --- a/api/symbols/ClickSelectingTool.html +++ b/api/symbols/ClickSelectingTool.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/CommandHandler.html b/api/symbols/CommandHandler.html index 280cffccf..380240021 100644 --- a/api/symbols/CommandHandler.html +++ b/api/symbols/CommandHandler.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/ContextMenuTool.html b/api/symbols/ContextMenuTool.html index 3a207ad4a..7f96b3384 100644 --- a/api/symbols/ContextMenuTool.html +++ b/api/symbols/ContextMenuTool.html @@ -1111,7 +1111,7 @@
diff --git a/api/symbols/Diagram.html b/api/symbols/Diagram.html index daef9426a..84d6df979 100644 --- a/api/symbols/Diagram.html +++ b/api/symbols/Diagram.html @@ -1111,7 +1111,7 @@
@@ -1823,7 +1823,7 @@

Properties Summary
-

Gets or sets the current cursor for the Diagram, overriding the defaultCursor.More...

Valid CSS cursors are accepted, such as "auto", "default", "none", "context-menu", "help", "pointer", "progress", "wait", etc.

It is possible to use custom cursors with the syntax "url(path_to_image), default". A fallback (like default here) is necessary for a custom cursor to work.

To read more about cursor syntax, go to: CSS cursors (mozilla.org).

If the specified cursor is not accepted by the platform, GoJS will append -webkit- or -moz- prefixes.

Setting this property does not notify about any changed event. Setting this value to the empty string ('') returns the Diagram's cursor to the defaultCursor.

+

Gets or sets the current cursor for the Diagram, overriding the defaultCursor.More...

Valid CSS cursors are accepted, such as "auto", "default", "none", "context-menu", "help", "pointer", "progress", "wait", etc.

It is possible to use custom cursors with the syntax "url(path_to_image), default". A fallback (like default here) is necessary for a custom cursor to work.

To read more about cursor syntax, go to: CSS cursors (mozilla.org).

If the specified cursor is not accepted by the platform, GoJS will append -webkit- or -moz- prefixes.

Setting this property does not notify about any changed event. Setting this value to the empty string ('') returns the Diagram's cursor to the defaultCursor.

See also:
    @@ -3964,7 +3964,7 @@

    Method Summary
    - computePartsBounds(coll, includeLinks,) + computePartsBounds(coll, includeLinks)
    {Rect} @@ -3988,7 +3988,7 @@

    Method Summarya collection of Parts.
    - {boolean=} includeLinks, + {boolean=} includeLinks
    defaults to false
    diff --git a/api/symbols/DiagramEvent.html b/api/symbols/DiagramEvent.html index 14dff09d8..3f8182905 100644 --- a/api/symbols/DiagramEvent.html +++ b/api/symbols/DiagramEvent.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/DragSelectingTool.html b/api/symbols/DragSelectingTool.html index de0ba8193..694017cbf 100644 --- a/api/symbols/DragSelectingTool.html +++ b/api/symbols/DragSelectingTool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/DraggingTool.html b/api/symbols/DraggingTool.html index 2a34ec7fc..72053b569 100644 --- a/api/symbols/DraggingTool.html +++ b/api/symbols/DraggingTool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/ForceDirectedEdge.html b/api/symbols/ForceDirectedEdge.html index 072ccac12..e83931df1 100644 --- a/api/symbols/ForceDirectedEdge.html +++ b/api/symbols/ForceDirectedEdge.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/ForceDirectedLayout.html b/api/symbols/ForceDirectedLayout.html index aec9f49b6..4114b4fea 100644 --- a/api/symbols/ForceDirectedLayout.html +++ b/api/symbols/ForceDirectedLayout.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/ForceDirectedVertex.html b/api/symbols/ForceDirectedVertex.html index c05ec6c3b..17670acde 100644 --- a/api/symbols/ForceDirectedVertex.html +++ b/api/symbols/ForceDirectedVertex.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Geometry.html b/api/symbols/Geometry.html index 3a3157820..883060768 100644 --- a/api/symbols/Geometry.html +++ b/api/symbols/Geometry.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/GraphLinksModel.html b/api/symbols/GraphLinksModel.html index 52a2658d9..f89e1624d 100644 --- a/api/symbols/GraphLinksModel.html +++ b/api/symbols/GraphLinksModel.html @@ -1111,7 +1111,7 @@
    @@ -2827,10 +2827,10 @@

    Method Summarya JavaScript object represented by a link.
    - arr + {Array.<(string|number)>} arr
    -
    {Array.<(string|number)>} an Array of node keys; an empty Array if the property was not present.
    +
    an Array of node keys; an empty Array if the property was not present.
    diff --git a/api/symbols/GraphObject.html b/api/symbols/GraphObject.html index c6d198b52..2d66694cb 100644 --- a/api/symbols/GraphObject.html +++ b/api/symbols/GraphObject.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/GridLayout.html b/api/symbols/GridLayout.html index 3abf678e3..2665d4689 100644 --- a/api/symbols/GridLayout.html +++ b/api/symbols/GridLayout.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Group.html b/api/symbols/Group.html index 867fc2398..a5a34dcc5 100644 --- a/api/symbols/Group.html +++ b/api/symbols/Group.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/HTMLInfo.html b/api/symbols/HTMLInfo.html index 0f73984c2..7b2ee6ee7 100644 --- a/api/symbols/HTMLInfo.html +++ b/api/symbols/HTMLInfo.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/InputEvent.html b/api/symbols/InputEvent.html index 505198e42..ba3718d4c 100644 --- a/api/symbols/InputEvent.html +++ b/api/symbols/InputEvent.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Iterable.html b/api/symbols/Iterable.html index 1d809220e..08ce6056c 100644 --- a/api/symbols/Iterable.html +++ b/api/symbols/Iterable.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Iterator.html b/api/symbols/Iterator.html index 3c2bca5b0..a2be777cf 100644 --- a/api/symbols/Iterator.html +++ b/api/symbols/Iterator.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Layer.html b/api/symbols/Layer.html index f30f582f4..00b51b274 100644 --- a/api/symbols/Layer.html +++ b/api/symbols/Layer.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/LayeredDigraphEdge.html b/api/symbols/LayeredDigraphEdge.html index bb92cfd1f..3671817b0 100644 --- a/api/symbols/LayeredDigraphEdge.html +++ b/api/symbols/LayeredDigraphEdge.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/LayeredDigraphLayout.html b/api/symbols/LayeredDigraphLayout.html index 540b0a459..733a55ee4 100644 --- a/api/symbols/LayeredDigraphLayout.html +++ b/api/symbols/LayeredDigraphLayout.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/LayeredDigraphVertex.html b/api/symbols/LayeredDigraphVertex.html index 64cb038d4..dac78c930 100644 --- a/api/symbols/LayeredDigraphVertex.html +++ b/api/symbols/LayeredDigraphVertex.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Layout.html b/api/symbols/Layout.html index 3efa9072b..c1151765e 100644 --- a/api/symbols/Layout.html +++ b/api/symbols/Layout.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/LayoutEdge.html b/api/symbols/LayoutEdge.html index 043ea923c..a57650cf0 100644 --- a/api/symbols/LayoutEdge.html +++ b/api/symbols/LayoutEdge.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/LayoutNetwork.html b/api/symbols/LayoutNetwork.html index d69e34b28..23da253b3 100644 --- a/api/symbols/LayoutNetwork.html +++ b/api/symbols/LayoutNetwork.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/LayoutVertex.html b/api/symbols/LayoutVertex.html index 97902ca83..e035cc1bf 100644 --- a/api/symbols/LayoutVertex.html +++ b/api/symbols/LayoutVertex.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Link.html b/api/symbols/Link.html index 27ec92c46..6e3df6489 100644 --- a/api/symbols/Link.html +++ b/api/symbols/Link.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/LinkReshapingTool.html b/api/symbols/LinkReshapingTool.html index 943968767..bb59734da 100644 --- a/api/symbols/LinkReshapingTool.html +++ b/api/symbols/LinkReshapingTool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/LinkingBaseTool.html b/api/symbols/LinkingBaseTool.html index 06f26eacd..01b8f7416 100644 --- a/api/symbols/LinkingBaseTool.html +++ b/api/symbols/LinkingBaseTool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/LinkingTool.html b/api/symbols/LinkingTool.html index 0e6829431..f9470885f 100644 --- a/api/symbols/LinkingTool.html +++ b/api/symbols/LinkingTool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/List.html b/api/symbols/List.html index 59219f64f..3e514fdb7 100644 --- a/api/symbols/List.html +++ b/api/symbols/List.html @@ -1111,7 +1111,7 @@
    @@ -1316,7 +1316,7 @@

    Method SummaryParameters:
    - val + {*} val
    diff --git a/api/symbols/Map.html b/api/symbols/Map.html index 23a9b6efb..428234f7d 100644 --- a/api/symbols/Map.html +++ b/api/symbols/Map.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Margin.html b/api/symbols/Margin.html index d66c350e4..37a63083d 100644 --- a/api/symbols/Margin.html +++ b/api/symbols/Margin.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Model.html b/api/symbols/Model.html index bf2bd71c6..3e21287a2 100644 --- a/api/symbols/Model.html +++ b/api/symbols/Model.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Node.html b/api/symbols/Node.html index b99f52d6a..4f384d827 100644 --- a/api/symbols/Node.html +++ b/api/symbols/Node.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Overview.html b/api/symbols/Overview.html index 1f5fcbde6..412275000 100644 --- a/api/symbols/Overview.html +++ b/api/symbols/Overview.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Palette.html b/api/symbols/Palette.html index d5e2de350..60e8c1b03 100644 --- a/api/symbols/Palette.html +++ b/api/symbols/Palette.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Panel.html b/api/symbols/Panel.html index ef52eb14f..d289ee870 100644 --- a/api/symbols/Panel.html +++ b/api/symbols/Panel.html @@ -1111,7 +1111,7 @@
    @@ -2287,7 +2287,7 @@

    Method SummaryParameters:
    - data + {Object} data
    must be an Object, not a string or a number or a boolean or a function
    diff --git a/api/symbols/PanningTool.html b/api/symbols/PanningTool.html index 086e17b63..e7d3e0054 100644 --- a/api/symbols/PanningTool.html +++ b/api/symbols/PanningTool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Part.html b/api/symbols/Part.html index 0f9e28e68..5b7758fc0 100644 --- a/api/symbols/Part.html +++ b/api/symbols/Part.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/PathFigure.html b/api/symbols/PathFigure.html index 03499cf52..cbf8b036a 100644 --- a/api/symbols/PathFigure.html +++ b/api/symbols/PathFigure.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/PathSegment.html b/api/symbols/PathSegment.html index 116e06871..9c40eec72 100644 --- a/api/symbols/PathSegment.html +++ b/api/symbols/PathSegment.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Picture.html b/api/symbols/Picture.html index a5aa9f704..436846775 100644 --- a/api/symbols/Picture.html +++ b/api/symbols/Picture.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Placeholder.html b/api/symbols/Placeholder.html index 772258e6f..f7c2b5ee4 100644 --- a/api/symbols/Placeholder.html +++ b/api/symbols/Placeholder.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Point.html b/api/symbols/Point.html index 582ab9a01..b2f1bf6a6 100644 --- a/api/symbols/Point.html +++ b/api/symbols/Point.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Rect.html b/api/symbols/Rect.html index 664b3d257..bce25088c 100644 --- a/api/symbols/Rect.html +++ b/api/symbols/Rect.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/RelinkingTool.html b/api/symbols/RelinkingTool.html index 0342f78f4..a7c389357 100644 --- a/api/symbols/RelinkingTool.html +++ b/api/symbols/RelinkingTool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/ResizingTool.html b/api/symbols/ResizingTool.html index 87174f8c3..1e68aec49 100644 --- a/api/symbols/ResizingTool.html +++ b/api/symbols/ResizingTool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/RotatingTool.html b/api/symbols/RotatingTool.html index babc13e9d..4d59e7543 100644 --- a/api/symbols/RotatingTool.html +++ b/api/symbols/RotatingTool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/RowColumnDefinition.html b/api/symbols/RowColumnDefinition.html index ca2e9366b..7e13bbe1b 100644 --- a/api/symbols/RowColumnDefinition.html +++ b/api/symbols/RowColumnDefinition.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Set.html b/api/symbols/Set.html index c6a91c11e..5323534c8 100644 --- a/api/symbols/Set.html +++ b/api/symbols/Set.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Shape.html b/api/symbols/Shape.html index f118b4610..5d10a0325 100644 --- a/api/symbols/Shape.html +++ b/api/symbols/Shape.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Size.html b/api/symbols/Size.html index 120e72a8c..33d897714 100644 --- a/api/symbols/Size.html +++ b/api/symbols/Size.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Spot.html b/api/symbols/Spot.html index fd78e9bd9..9186bfffc 100644 --- a/api/symbols/Spot.html +++ b/api/symbols/Spot.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/TextBlock.html b/api/symbols/TextBlock.html index 35d0dff9f..39608cb04 100644 --- a/api/symbols/TextBlock.html +++ b/api/symbols/TextBlock.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/TextEditingTool.html b/api/symbols/TextEditingTool.html index 7c9484c5d..4bb28895a 100644 --- a/api/symbols/TextEditingTool.html +++ b/api/symbols/TextEditingTool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Tool.html b/api/symbols/Tool.html index 2bb97a22b..9e8944be2 100644 --- a/api/symbols/Tool.html +++ b/api/symbols/Tool.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/ToolManager.html b/api/symbols/ToolManager.html index b02134192..384bd1da3 100644 --- a/api/symbols/ToolManager.html +++ b/api/symbols/ToolManager.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/Transaction.html b/api/symbols/Transaction.html index aed3e223d..98a022de3 100644 --- a/api/symbols/Transaction.html +++ b/api/symbols/Transaction.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/TreeEdge.html b/api/symbols/TreeEdge.html index b310dbc5c..0e2795bef 100644 --- a/api/symbols/TreeEdge.html +++ b/api/symbols/TreeEdge.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/TreeLayout.html b/api/symbols/TreeLayout.html index 3dca92735..225560589 100644 --- a/api/symbols/TreeLayout.html +++ b/api/symbols/TreeLayout.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/TreeModel.html b/api/symbols/TreeModel.html index 1eb61dbf0..20843937e 100644 --- a/api/symbols/TreeModel.html +++ b/api/symbols/TreeModel.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/TreeVertex.html b/api/symbols/TreeVertex.html index 102008e4b..e37724f53 100644 --- a/api/symbols/TreeVertex.html +++ b/api/symbols/TreeVertex.html @@ -1111,7 +1111,7 @@
    diff --git a/api/symbols/UndoManager.html b/api/symbols/UndoManager.html index 82759f6f7..4c73dd9e5 100644 --- a/api/symbols/UndoManager.html +++ b/api/symbols/UndoManager.html @@ -1111,7 +1111,7 @@
    diff --git a/doc/changelog.html b/doc/changelog.html index 8a90a9fe9..afa223498 100644 --- a/doc/changelog.html +++ b/doc/changelog.html @@ -74,9 +74,22 @@

    GoJS Change Log

    } +

    Changes for 1.7.3

    +
      +
    • + Added the angular2-minimal project, in the projects subdirectory. + This is a copy of the Angular 2 Quick Start example, https://angular.io/docs/ts/latest/quickstart.html. +
    • +
    • + Fixed another declaration in go.d.ts. +
    • +
    +

    Changes for 1.7.2

      - Fixed missing declaration in go.d.ts. +
    • + Fixed missing declaration in go.d.ts. +

    Changes for 1.7.1

    diff --git a/intro/index.html b/intro/index.html index 92273c063..2cf094f53 100644 --- a/intro/index.html +++ b/intro/index.html @@ -208,6 +208,8 @@

    Loading GoJS

    In ES6 (ECMAScript 2015) or TypeScript code, just import the "go.js" library:

    import * as go from "go";
    + or, if depending on your npm environment: +
    import * as go from "gojs";

    Hosting GoJS in a Div Element

    diff --git a/package.json b/package.json index 094c750a5..db3e72509 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gojs", - "version": "1.7.2", + "version": "1.7.3", "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/projects/angular2-minimal/README.md b/projects/angular2-minimal/README.md new file mode 100644 index 000000000..fefdc6681 --- /dev/null +++ b/projects/angular2-minimal/README.md @@ -0,0 +1,15 @@ +This is a minimal modification of the Angular 2 Quick Start environment +that demonstrates how to show a GoJS diagram in a component. + +First, assuming you already have npm: +``` +$ npm install gojs --save +$ npm update +``` + +Note how we have updated the src/systemjs.config.json file to tell which GoJS library to load. + +Start app page with: +``` +$ npm start +``` diff --git a/projects/angular2-minimal/bs-config.json b/projects/angular2-minimal/bs-config.json new file mode 100644 index 000000000..4e5859526 --- /dev/null +++ b/projects/angular2-minimal/bs-config.json @@ -0,0 +1,8 @@ +{ + "server": { + "baseDir": "src", + "routes": { + "/node_modules": "node_modules" + } + } +} diff --git a/projects/angular2-minimal/package.json b/projects/angular2-minimal/package.json new file mode 100644 index 000000000..cbcb56864 --- /dev/null +++ b/projects/angular2-minimal/package.json @@ -0,0 +1,61 @@ +{ + "name": "angular-quickstart", + "version": "1.0.0", + "description": "QuickStart package.json from the documentation, supplemented with testing support", + "scripts": { + "build": "tsc -p src/", + "build:watch": "tsc -p src/ -w", + "build:e2e": "tsc -p e2e/", + "serve": "lite-server -c=bs-config.json", + "serve:e2e": "lite-server -c=bs-config.e2e.json", + "prestart": "npm run build", + "start": "concurrently \"npm run build:watch\" \"npm run serve\"", + "pree2e": "npm run build:e2e", + "e2e": "concurrently \"npm run serve:e2e\" \"npm run protractor\" --kill-others --success first", + "preprotractor": "webdriver-manager update", + "protractor": "protractor protractor.config.js", + "pretest": "npm run build", + "test": "concurrently \"npm run build:watch\" \"karma start karma.conf.js\"", + "pretest:once": "npm run build", + "test:once": "karma start karma.conf.js --single-run", + "lint": "tslint ./src/**/*.ts -t verbose" + }, + "keywords": [], + "author": "", + "license": "MIT", + "dependencies": { + "@angular/common": "~2.4.0", + "@angular/compiler": "~2.4.0", + "@angular/core": "~2.4.0", + "@angular/forms": "~2.4.0", + "@angular/http": "~2.4.0", + "@angular/platform-browser": "~2.4.0", + "@angular/platform-browser-dynamic": "~2.4.0", + "@angular/router": "~3.4.0", + "angular-in-memory-web-api": "~0.2.4", + "core-js": "^2.4.1", + "gojs": "^1.7.3", + "rxjs": "5.0.1", + "systemjs": "0.19.40", + "zone.js": "^0.7.4" + }, + "devDependencies": { + "concurrently": "^3.2.0", + "lite-server": "^2.2.2", + "typescript": "~2.0.10", + "canonical-path": "0.0.2", + "tslint": "^3.15.1", + "lodash": "^4.16.4", + "jasmine-core": "~2.4.1", + "karma": "^1.3.0", + "karma-chrome-launcher": "^2.0.0", + "karma-cli": "^1.0.1", + "karma-jasmine": "^1.0.2", + "karma-jasmine-html-reporter": "^0.2.2", + "protractor": "~4.0.14", + "rimraf": "^2.5.4", + "@types/node": "^6.0.46", + "@types/jasmine": "2.5.36" + }, + "repository": {} +} diff --git a/projects/angular2-minimal/tslint.json b/projects/angular2-minimal/tslint.json new file mode 100644 index 000000000..276453f4f --- /dev/null +++ b/projects/angular2-minimal/tslint.json @@ -0,0 +1,93 @@ +{ + "rules": { + "class-name": true, + "comment-format": [ + true, + "check-space" + ], + "curly": true, + "eofline": true, + "forin": true, + "indent": [ + true, + "spaces" + ], + "label-position": true, + "label-undefined": true, + "max-line-length": [ + true, + 140 + ], + "member-access": false, + "member-ordering": [ + true, + "static-before-instance", + "variables-before-functions" + ], + "no-arg": true, + "no-bitwise": true, + "no-console": [ + true, + "debug", + "info", + "time", + "timeEnd", + "trace" + ], + "no-construct": true, + "no-debugger": true, + "no-duplicate-key": true, + "no-duplicate-variable": true, + "no-empty": false, + "no-eval": true, + "no-inferrable-types": true, + "no-shadowed-variable": true, + "no-string-literal": false, + "no-switch-case-fall-through": true, + "no-trailing-whitespace": true, + "no-unused-expression": true, + "no-unused-variable": true, + "no-unreachable": true, + "no-use-before-declare": true, + "no-var-keyword": true, + "object-literal-sort-keys": false, + "one-line": [ + true, + "check-open-brace", + "check-catch", + "check-else", + "check-whitespace" + ], + "quotemark": [ + true, + "single" + ], + "radix": true, + "semicolon": [ + "always" + ], + "triple-equals": [ + true, + "allow-null-check" + ], + "typedef-whitespace": [ + true, + { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + } + ], + "variable-name": false, + "whitespace": [ + true, + "check-branch", + "check-decl", + "check-operator", + "check-separator", + "check-type" + ] + } +} diff --git a/release/go-debug.js b/release/go-debug.js index 34a65a73e..e4b1f4839 100644 --- a/release/go-debug.js +++ b/release/go-debug.js @@ -1,9 +1,9 @@ /* - * GoJS v1.7.2 JavaScript Library for HTML Diagrams + * GoJS v1.7.3 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-2017 by Northwoods Software Corporation. All Rights Reserved. - * THIS SOFTWARE IS LICENSED. THE LICENSE AGREEMENT IS AT: https://gojs.net/1.7.2/doc/license.html. + * THIS SOFTWARE IS LICENSED. THE LICENSE AGREEMENT IS AT: https://gojs.net/1.7.3/doc/license.html. */ (function(window) { var f,ca={};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}); @@ -16,17 +16,17 @@ c.fillRect(h.x||0,h.y||0,h.width,h.height),c.restore())}},BL:function(){u.XE();u b.ef)},xA:function(a,b,c){a.setTransform(1,0,0,1,0,0);a.scale(b.rd,b.rd);a.transform(c.m11,c.m12,c.m21,c.m22,c.dx,c.dy);c=b.bc.length;for(var d=0;d=d.length)){var e=z.vb(b,d);if(null!==e&&"function"!==typeof e){if(b.hasOwnProperty(d)){var g=Object.getPrototypeOf(b);if(g&&g.xw&&g.xw[d])continue}else if(z.Lx(b,d))continue;""===c&&(c=b+"\n");c+=' unknown property "'+d+'" has value: '+e+" at "+a+"\n"}}return c},nx: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.Hd(b)){if(!u.Mw.contains(b))if(u.Mw.add(b),u.mw.add(u.DE(a,b)),b instanceof J||b instanceof K||b instanceof oa)for(var c=b.j;c.next();)u.nx(a+"["+c.key+"]",c.value);else for(c in b){var d=z.vb(b,c);if(void 0!==d&&null!==d&&z.Xa(d)&&d!==b.xw){if(b instanceof pa){if(d===b.gi)continue}else if(b instanceof I){if("data"===c||d===b.he)continue;if("itemArray"===c||d===b.cj)continue;if(b instanceof D&&d===b.Jl)continue}else if(!(b instanceof -C))if(b instanceof ta){if("archetypeGroupData"===c||d===b.Sy)continue}else if(b instanceof ua){if("archetypeLinkData"===c||d===b.Uy)continue;if("archetypeLabelNodeData"===c||d===b.Ty)continue}else if(b instanceof wa){if("archetypeNodeData"===c||d===b.ol)continue}else if(b instanceof L){if("nodeDataArray"===c||d===b.ze)continue;if("linkDataArray"===c||d===b.bf||d===b.hi)continue;if(d===b.Gc)continue;if(d===b.vg)continue}else if(b instanceof ya||b instanceof za||b instanceof Aa)continue;u.nx(a+"."+ -c,d)}}}else if(Array.isArray(b))for(c=0;c=d.length)){var e=z.vb(b,d);if(null!==e&&"function"!==typeof e){if(b.hasOwnProperty(d)){var g=Object.getPrototypeOf(b);if(g&&g.xw&&g.xw[d])continue}else if(z.Lx(b,d))continue;""===c&&(c=b+"\n");c+=' unknown property "'+d+'" has value: '+e+" at "+a+"\n"}}return c},nx: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.Hd(b)){if(!u.Mw.contains(b))if(u.Mw.add(b),u.mw.add(u.DE(a,b)),b instanceof J||b instanceof K||b instanceof oa)for(var c=b.j;c.next();)u.nx(a+"["+c.key+"]",c.value);else for(c in b){var d=z.vb(b,c);if(void 0!==d&&null!==d&&z.Xa(d)&&d!==b.xw){if(b instanceof pa){if(d===b.gi)continue}else if(b instanceof I){if("data"===c||d===b.ge)continue;if("itemArray"===c||d===b.cj)continue;if(b instanceof D&&d===b.Jl)continue}else if(!(b instanceof C))if(b instanceof ta){if("archetypeGroupData"=== +c||d===b.Sy)continue}else if(b instanceof ua){if("archetypeLinkData"===c||d===b.Uy)continue;if("archetypeLabelNodeData"===c||d===b.Ty)continue}else if(b instanceof wa){if("archetypeNodeData"===c||d===b.ol)continue}else if(b instanceof L){if("nodeDataArray"===c||d===b.ye)continue;if("linkDataArray"===c||d===b.bf||d===b.hi)continue;if(d===b.Gc)continue;if(d===b.vg)continue}else if(b instanceof ya||b instanceof za||b instanceof Aa)continue;u.nx(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)},Rg: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)},Ky:[],P:function(){var a=z.Ky.pop();return void 0===a?new M:a},Fb:function(a,b){var c=z.Ky.pop();if(void 0===c)return new M(a,b);c.x=a;c.y=b;return c},A:function(a){z.Ky.push(a)},$B:[],Am:function(){var a=z.$B.pop();return void 0===a?new Fa:a},Qk:function(a){z.$B.push(a)},Ly:[],Of:function(){var a=z.Ly.pop();return void 0===a?new w:a},fh:function(a,b,c,d){var e=z.Ly.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},Mb:function(a){z.Ly.push(a)},aC:[],Pf:function(){var a=z.aC.pop();return void 0===a?new Ga:a},Ie:function(a){z.aC.push(a)},My:null,v:function(){var a=z.My;return null!==a?(z.My=null,a):new Ha},u:function(a){a.reset();z.My=a},ZB:[],tb:function(){var a=z.ZB.pop();return void 0===a?[]:a},Ba:function(a){a.length=0;z.ZB.push(a)},bl:Object.freeze([]),Em:1,xc:function(a){a.__gohashid=z.Em++},pq:function(a){var b=a.__gohashid;void 0===b&&(b=z.Em++,a.__gohashid=b);return b},Hd:function(a){return a.__gohashid}, +c;e.height=d;return e},Mb:function(a){z.Ly.push(a)},aC:[],Pf:function(){var a=z.aC.pop();return void 0===a?new Ga:a},Ie:function(a){z.aC.push(a)},My:null,v:function(){var a=z.My;return null!==a?(z.My=null,a):new Ha},u:function(a){a.reset();z.My=a},ZB:[],tb:function(){var a=z.ZB.pop();return void 0===a?[]:a},Ba:function(a){a.length=0;z.ZB.push(a)},bl:Object.freeze([]),Em:1,wc:function(a){a.__gohashid=z.Em++},oq:function(a){var b=a.__gohashid;void 0===b&&(b=z.Em++,a.__gohashid=b);return b},Hd:function(a){return a.__gohashid}, ka:function(a,b){b.Zy=a;ca[a]=b},Ta:function(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a},Ai:function(a){a.yH=!0},defineProperty:function(a,b,c,d,e){z.h(a,"function","Util.defineProperty:classfunc");z.h(b,"object","Util.defineProperty:propobj");z.h(c,"function","Util.defineProperty:getter");z.h(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}},IK:!1,w:function(a,b,c,d){z.h(a,"function","Util.defineReadOnlyProperty:classfunc");z.h(b,"object","Util.defineReadOnlyProperty:propobj");z.h(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}},ne:function(a,b){for(var c in b)b[c]=!0;a.prototype.xw=b},getTypeName:function(a){return void 0===a?"":"string"===typeof a?a:"function"===typeof a?z.uf(a):null===a?"*":""},uf:function(a){if("function"===typeof a){if(a.Zy)return a.Zy;if(a.name)return a.name;var b=a.toString(),c=b.indexOf("("),b=b.substring(9,c).trim();if(""!==b)return a.Zy=b}else if("object"===typeof a&&a.constructor)return z.uf(a.constructor); +e,b);d=Object.getOwnPropertyDescriptor(a.prototype,e);g&&d&&Object.defineProperty(a.prototype,g,d);break}},me:function(a,b){for(var c in b)b[c]=!0;a.prototype.xw=b},getTypeName:function(a){return void 0===a?"":"string"===typeof a?a:"function"===typeof a?z.uf(a):null===a?"*":""},uf:function(a){if("function"===typeof a){if(a.Zy)return a.Zy;if(a.name)return a.name;var b=a.toString(),c=b.indexOf("("),b=b.substring(9,c).trim();if(""!==b)return a.Zy=b}else if("object"===typeof a&&a.constructor)return z.uf(a.constructor); return typeof a},s:function(a,b,c){z.h(a,"function","Util.defineEnumValue:classfunc");z.h(b,"string","Util.defineEnumValue:name");z.h(c,"number","Util.defineEnumValue:num");c=new Ca(a,b,c);Object.freeze(c);a[b]=c;var d=a.hv;d instanceof oa||(d=new oa("string",Ca),a.hv=d);d.add(b,c);return c},vb: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},Ua: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())}},Vu:function(a,b){z.h(a,"object","Setting properties requires Objects as arguments");z.h(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;cc;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.Sg("7ca11abfd7330390")](z.Sg(c[d-1]),10,15*d+0);b[z.Sg("7ca11abfd022028846")]=z.Sg("39f046ebb36e4b");for(d=1;5>d;d++)b[z.Sg("7ca11abfd7330390")](z.Sg(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 Ca(a,b,2);Object.freeze(c);a[b]=c;var d=a.hv;d instanceof oa||(d=new oa("string",Ca),a.hv=d);d.add(b,c);return c};return a}();function Ca(a,b,c){z.xc(this);this.kC=a;this.Xb=b;this.DH=c}z.ka("EnumValue",Ca);Ca.prototype.toString=function(){return z.uf(this.kC)+"."+this.Xb};z.w(Ca,{Pe:"classType"},function(){return this.kC});z.w(Ca,{name:"name"},function(){return this.Xb});z.w(Ca,{value:"value"},function(){return this.DH}); +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 Ca(a,b,2);Object.freeze(c);a[b]=c;var d=a.hv;d instanceof oa||(d=new oa("string",Ca),a.hv=d);d.add(b,c);return c};return a}();function Ca(a,b,c){z.wc(this);this.kC=a;this.Xb=b;this.DH=c}z.ka("EnumValue",Ca);Ca.prototype.toString=function(){return z.uf(this.kC)+"."+this.Xb};z.w(Ca,{Pe:"classType"},function(){return this.kC});z.w(Ca,{name:"name"},function(){return this.Xb});z.w(Ca,{value:"value"},function(){return this.DH}); var Ja;Ca.findName=Ja=function(a,b){if(void 0===b||null===b||""===b)return null;z.h(a,"function","findName:classfunc");z.h(b,"string","EnumValue.findName:name");var c=a.hv;return c instanceof oa?c.qa(b):null};function Ba(){this.jC=[]}Ba.prototype.toString=function(){return this.jC.join("")};Ba.prototype.add=function(a){""!==a&&this.jC.push(a)};function na(){} function Ka(a){void 0===a&&(a=42);this.seed=a;this.Gy=48271;this.gv=2147483647;this.YB=this.gv/this.Gy;this.hH=this.gv%this.Gy;this.gH=1/this.gv;this.random()}Ka.prototype.random=function(){var a=this.seed%this.YB*this.Gy-this.seed/this.YB*this.hH;this.seed=0this.key)return!1;z.Va(a)}var a=a.o,b=a.length,c=++this.bd,d=this.mi;if(null!==d)for(;cthis.key)return!1;z.Va(a)}var b=--this.bd;if(0<=b)return this.key=b,this.value=a.o[b],!0;this.Rf();return!1};Wa.prototype.first=Wa.prototype.first=function(){var a=this.Fc;this.qb=a.J;var b=a.o;this.bd=a=b.length-1;return 0<=a?(b=b[a],this.key=a,this.value=b):null}; Wa.prototype.any=function(a){var b=this.Fc;b.nk=null;var c=b.J,d=b.o,e=d.length;this.bd=e;for(e-=1;0<=e;e--){if(a(d[e]))return!0;b.J!==c&&z.Va(b)}return!1};Wa.prototype.all=function(a){var b=this.Fc;b.nk=null;var c=b.J,d=b.o,e=d.length;this.bd=e;for(e-=1;0<=e;e--){if(!a(d[e]))return!1;b.J!==c&&z.Va(b)}return!0};Wa.prototype.each=function(a){var b=this.Fc;b.nk=null;var c=b.J,d=b.o,e=d.length;this.bd=e;for(e-=1;0<=e;e--)a(d[e]),b.J!==c&&z.Va(b);return this}; Wa.prototype.map=function(a){var b=this.Fc;b.nk=null;var c=b.J,d=[],e=b.o,g=e.length;this.bd=g;for(g-=1;0<=g;g--)d.push(a(e[g])),b.J!==c&&z.Va(b);a=new J;a.o=d;a.Sc();return a.j};Wa.prototype.filter=function(a){var b=this.Fc;b.nk=null;var c=b.J,d=[],e=b.o,g=e.length;this.bd=g;for(g-=1;0<=g;g--){var h=e[g];a(h)&&d.push(h);b.J!==c&&z.Va(b)}a=new J(b.da);a.o=d;a.Sc();return a.j};Wa.prototype.concat=function(a){this.Fc.nk=null;return new Sa(this,a.j)};z.w(Wa,{count:"count"},function(){return this.Fc.o.length}); Wa.prototype.Rf=function(){this.key=-1;this.value=null;this.qb=-1;this.Fc.nk=this};Wa.prototype.toString=function(){return"ListIteratorBackwards("+this.bd+"/"+this.Fc.count+")"}; -function J(a){z.xc(this);this.I=!1;this.o=[];this.J=0;this.nk=this.jc=null;void 0===a||null===a?this.da=null:"string"===typeof a?"object"===a||"string"===a||"number"===a||"boolean"===a||"function"===a?this.da=a:z.wa(a,"the string 'object', 'number', 'string', 'boolean', or 'function'","List constructor: type"):"function"===typeof a?this.da=a===Object?"object":a===String?"string":a===Number?"number":a===Boolean?"boolean":a===Function?"function":a:z.wa(a,"null, a primitive type name, or a class type", +function J(a){z.wc(this);this.I=!1;this.o=[];this.J=0;this.nk=this.jc=null;void 0===a||null===a?this.da=null:"string"===typeof a?"object"===a||"string"===a||"number"===a||"boolean"===a||"function"===a?this.da=a:z.wa(a,"the string 'object', 'number', 'string', 'boolean', or 'function'","List constructor: type"):"function"===typeof a?this.da=a===Object?"object":a===String?"string":a===Number?"number":a===Boolean?"boolean":a===Function?"function":a:z.wa(a,"null, a primitive type name, or a class type", "List constructor: type")}z.ka("List",J);J.prototype.nh=function(a){null!==this.da&&("string"===typeof this.da?typeof a===this.da&&null!==a||z.hc(a,this.da):a instanceof this.da||z.hc(a,this.da))};J.prototype.Sc=function(){var a=this.J;a++;999999999a||a>=b.length)&&z.wa(a,"0 <= i < length",J,"elt:i");return b[a]}; -J.prototype.setElt=J.prototype.set=J.prototype.bh=function(a,b){u&&(this.nh(b),z.p(a,J,"setElt:i"));var c=this.o;(0>a||a>=c.length)&&z.wa(a,"0 <= i < length",J,"setElt:i");this.I&&z.pa(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.se=function(){var a=this.o,b=a.length;return 0a||a>=c.length)&&z.wa(a,"0 <= i < length",J,"setElt:i");this.I&&z.pa(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.re=function(){var a=this.o,b=a.length;return 0a&&z.wa(a,">= 0",J,"insertAt:i");this.I&&z.pa(this,a);var c=this.o;a>=c.length?c.push(b):c.splice(a,0,b);this.Sc();return!0};J.prototype.remove=J.prototype["delete"]=J.prototype.remove=function(a){if(null===a)return!1;u&&this.nh(a);this.I&&z.pa(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.Sc();return!0}; +J.prototype.insertAt=J.prototype.Yd=function(a,b){u&&(this.nh(b),z.p(a,J,"insertAt:i"));0>a&&z.wa(a,">= 0",J,"insertAt:i");this.I&&z.pa(this,a);var c=this.o;a>=c.length?c.push(b):c.splice(a,0,b);this.Sc();return!0};J.prototype.remove=J.prototype["delete"]=J.prototype.remove=function(a){if(null===a)return!1;u&&this.nh(a);this.I&&z.pa(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.Sc();return!0}; J.prototype.removeAt=J.prototype.md=function(a){u&&z.p(a,J,"removeAt:i");var b=this.o;(0>a||a>=b.length)&&z.wa(a,"0 <= i < length",J,"removeAt:i");this.I&&z.pa(this,a);a===b.length-1?b.pop():b.splice(a,1);this.Sc()}; 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,d=c.length;if(0>a)a=0;else if(a>=d)return this;if(0>b)return this;b>=d&&(b=d-1);if(a>b)return this;this.I&&z.pa(this);for(var e=a,g=b+1;g=g)return this;(0>b||b>=e-1)&&z.wa(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 Na;var a=this.jc;return null!==a?(a.reset(),a):new Va(this)}); -z.w(J,{$n:"iteratorBackwards"},function(){if(0>=this.o.length)return Na;var a=this.nk;return null!==a?(a.reset(),a):new Wa(this)});function Xa(a){this.oi=a;this.reset()}z.ne(Xa,{key:!0,value:!0});z.w(Xa,{j:"iterator"},function(){return this});Xa.prototype.reset=Xa.prototype.reset=function(){var a=this.oi;a.jc=null;this.qb=a.J;this.ob=null}; +z.w(J,{$n:"iteratorBackwards"},function(){if(0>=this.o.length)return Na;var a=this.nk;return null!==a?(a.reset(),a):new Wa(this)});function Xa(a){this.oi=a;this.reset()}z.me(Xa,{key:!0,value:!0});z.w(Xa,{j:"iterator"},function(){return this});Xa.prototype.reset=Xa.prototype.reset=function(){var a=this.oi;a.jc=null;this.qb=a.J;this.ob=null}; Xa.prototype.next=Xa.prototype.hasNext=Xa.prototype.next=function(){var a=this.oi;if(a.J!==this.qb){if(null===this.key)return!1;z.Va(a)}var b=this.ob,b=null===b?a.La:b.eb;if(null!==b)return this.ob=b,this.value=b.value,this.key=b.key,!0;this.Rf();return!1};Xa.prototype.first=Xa.prototype.first=function(){var a=this.oi;this.qb=a.J;a=a.La;if(null!==a){this.ob=a;var b=a.value;this.key=a.key;return this.value=b}return null}; Xa.prototype.any=function(a){var b=this.oi;b.jc=null;var c=b.J;this.ob=null;for(var d=b.La;null!==d;){if(a(d.value))return!0;b.J!==c&&z.Va(b);d=d.eb}return!1};Xa.prototype.all=function(a){var b=this.oi;b.jc=null;var c=b.J;this.ob=null;for(var d=b.La;null!==d;){if(!a(d.value))return!1;b.J!==c&&z.Va(b);d=d.eb}return!0};Xa.prototype.each=function(a){var b=this.oi;b.jc=null;var c=b.J;this.ob=null;for(var d=b.La;null!==d;)a(d.value),b.J!==c&&z.Va(b),d=d.eb;return this}; Xa.prototype.map=function(a){var b=this.oi;b.jc=null;for(var c=new J,d=b.J,e=b.La;null!==e;)c.add(a(e.value)),b.J!==d&&z.Va(b),e=e.eb;return c.j};Xa.prototype.filter=function(a){var b=this.oi;b.jc=null;for(var c=new J(b.da),d=b.J,e=b.La;null!==e;){var g=e.value;a(g)&&c.add(g);b.J!==d&&z.Va(b);e=e.eb}return c.j};Xa.prototype.concat=function(a){this.oi.jc=null;return new Sa(this,a.j)};z.w(Xa,{count:"count"},function(){return this.oi.Ad}); Xa.prototype.Rf=function(){this.value=this.key=null;this.qb=-1;this.oi.jc=this};Xa.prototype.toString=function(){return null!==this.ob?"SetIterator@"+this.ob.value:"SetIterator"}; -function K(a){z.xc(this);this.I=!1;void 0===a||null===a?this.da=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.da=a:z.wa(a,"the string 'object', 'number' or 'string'","Set constructor: type"):"function"===typeof a?this.da=a===Object?"object":a===String?"string":a===Number?"number":a:z.wa(a,"null, a primitive type name, or a class type","Set constructor: type");this.Bd={};this.Ad=0;this.jc=null;this.J=0;this.fi=this.La=null}z.ka("Set",K); +function K(a){z.wc(this);this.I=!1;void 0===a||null===a?this.da=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.da=a:z.wa(a,"the string 'object', 'number' or 'string'","Set constructor: type"):"function"===typeof a?this.da=a===Object?"object":a===String?"string":a===Number?"number":a:z.wa(a,"null, a primitive type name, or a class type","Set constructor: type");this.Bd={};this.Ad=0;this.jc=null;this.J=0;this.fi=this.La=null}z.ka("Set",K); K.prototype.nh=function(a){null!==this.da&&("string"===typeof this.da?typeof a===this.da&&null!==a||z.hc(a,this.da):a instanceof this.da||z.hc(a,this.da))};K.prototype.Sc=function(){var a=this.J;a++;999999999=this.Ad)return Na;var a=this.jc;return null!==a?(a.reset(),a):new Xa(this)});function $a(a){this.Pa=a;this.reset()}z.ne($a,{key:!0,value:!0});z.w($a,{j:"iterator"},function(){return this});$a.prototype.reset=$a.prototype.reset=function(){this.qb=this.Pa.J;this.ob=null}; +z.w(K,{size:"size"},function(){return this.Ad});z.w(K,{j:"iterator"},function(){if(0>=this.Ad)return Na;var a=this.jc;return null!==a?(a.reset(),a):new Xa(this)});function $a(a){this.Pa=a;this.reset()}z.me($a,{key:!0,value:!0});z.w($a,{j:"iterator"},function(){return this});$a.prototype.reset=$a.prototype.reset=function(){this.qb=this.Pa.J;this.ob=null}; $a.prototype.next=$a.prototype.hasNext=$a.prototype.next=function(){var a=this.Pa;if(a.J!==this.qb){if(null===this.key)return!1;z.Va(a)}var b=this.ob,b=null===b?a.La:b.eb;if(null!==b)return this.ob=b,this.value=this.key=a=b.key,!0;this.Rf();return!1};$a.prototype.first=$a.prototype.first=function(){var a=this.Pa;this.qb=a.J;a=a.La;return null!==a?(this.ob=a,this.value=this.key=a=a.key):null}; $a.prototype.any=function(a){var b=this.Pa,c=b.J;this.ob=null;for(var d=b.La;null!==d;){if(a(d.key))return!0;b.J!==c&&z.Va(b);d=d.eb}return!1};$a.prototype.all=function(a){var b=this.Pa,c=b.J;this.ob=null;for(var d=b.La;null!==d;){if(!a(d.key))return!1;b.J!==c&&z.Va(b);d=d.eb}return!0};$a.prototype.each=function(a){var b=this.Pa,c=b.J;this.ob=null;for(var d=b.La;null!==d;)a(d.key),b.J!==c&&z.Va(b),d=d.eb;return this}; $a.prototype.map=function(a){var b=this.Pa,c=b.J;this.ob=null;for(var d=new J,e=b.La;null!==e;)d.add(a(e.key)),b.J!==c&&z.Va(b),e=e.eb;return d.j};$a.prototype.filter=function(a){var b=this.Pa,c=b.J;this.ob=null;for(var d=new J(b.qf),e=b.La;null!==e;){var g=e.key;a(g)&&d.add(g);b.J!==c&&z.Va(b);e=e.eb}return d.j};$a.prototype.concat=function(a){return new Sa(this,a.j)};z.w($a,{count:"count"},function(){return this.Pa.Ad});$a.prototype.Rf=function(){this.value=this.key=null;this.qb=-1}; -$a.prototype.toString=function(){return null!==this.ob?"MapKeySetIterator@"+this.ob.value:"MapKeySetIterator"};function cb(a){z.xc(this);this.I=!0;this.Pa=a}z.Ta(cb,K);cb.prototype.freeze=function(){return this};cb.prototype.Za=function(){return this};cb.prototype.toString=function(){return"MapKeySet("+this.Pa.toString()+")"};cb.prototype.add=cb.prototype.set=cb.prototype.add=function(){z.k("This Set is read-only: "+this.toString());return!1}; +$a.prototype.toString=function(){return null!==this.ob?"MapKeySetIterator@"+this.ob.value:"MapKeySetIterator"};function cb(a){z.wc(this);this.I=!0;this.Pa=a}z.Ta(cb,K);cb.prototype.freeze=function(){return this};cb.prototype.Za=function(){return this};cb.prototype.toString=function(){return"MapKeySet("+this.Pa.toString()+")"};cb.prototype.add=cb.prototype.set=cb.prototype.add=function(){z.k("This Set is read-only: "+this.toString());return!1}; cb.prototype.contains=cb.prototype.has=cb.prototype.contains=function(a){return this.Pa.contains(a)};cb.prototype.remove=cb.prototype["delete"]=cb.prototype.remove=function(){z.k("This Set is read-only: "+this.toString());return!1};cb.prototype.clear=cb.prototype.clear=function(){z.k("This Set is read-only: "+this.toString())};cb.prototype.first=cb.prototype.first=function(){var a=this.Pa.La;return null!==a?a.key:null}; cb.prototype.any=function(a){for(var b=this.Pa.La;null!==b;){if(a(b.key))return!0;b=b.eb}return!1};cb.prototype.all=function(a){for(var b=this.Pa.La;null!==b;){if(!a(b.key))return!1;b=b.eb}return!0};cb.prototype.each=function(a){for(var b=this.Pa.La;null!==b;)a(b.key),b=b.eb;return this};cb.prototype.map=function(a){for(var b=new K,c=this.Pa.La;null!==c;)b.add(a(c.key)),c=c.eb;return b}; cb.prototype.filter=function(a){for(var b=new K(this.Pa.qf),c=this.Pa.La;null!==c;){var d=c.key;a(d)&&b.add(d);c=c.eb}return b};cb.prototype.concat=function(a){return this.SG().Uc(a)};cb.prototype.copy=function(){return new cb(this.Pa)};cb.prototype.toSet=cb.prototype.SG=function(){var a=new K(this.Pa.qf),b=this.Pa.Bd,c;for(c in b)a.add(b[c].key);return a};cb.prototype.toArray=cb.prototype.nc=function(){var a=this.Pa.Bd,b=Array(this.Pa.Ad),c=0,d;for(d in a)b[c]=a[d].key,c++;return b}; -cb.prototype.toList=function(){var a=new J(this.da),b=this.Pa.Bd,c;for(c in b)a.add(b[c].key);return a};z.w(cb,{count:"count"},function(){return this.Pa.Ad});z.w(cb,{size:"size"},function(){return this.Pa.Ad});z.w(cb,{j:"iterator"},function(){return 0>=this.Pa.Ad?Na:new $a(this.Pa)});function gb(a){this.Pa=a;this.reset()}z.ne(gb,{key:!0,value:!0});z.w(gb,{j:"iterator"},function(){return this});gb.prototype.reset=gb.prototype.reset=function(){var a=this.Pa;a.ok=null;this.qb=a.J;this.ob=null}; +cb.prototype.toList=function(){var a=new J(this.da),b=this.Pa.Bd,c;for(c in b)a.add(b[c].key);return a};z.w(cb,{count:"count"},function(){return this.Pa.Ad});z.w(cb,{size:"size"},function(){return this.Pa.Ad});z.w(cb,{j:"iterator"},function(){return 0>=this.Pa.Ad?Na:new $a(this.Pa)});function gb(a){this.Pa=a;this.reset()}z.me(gb,{key:!0,value:!0});z.w(gb,{j:"iterator"},function(){return this});gb.prototype.reset=gb.prototype.reset=function(){var a=this.Pa;a.ok=null;this.qb=a.J;this.ob=null}; gb.prototype.next=gb.prototype.hasNext=gb.prototype.next=function(){var a=this.Pa;if(a.J!==this.qb){if(null===this.key)return!1;z.Va(a)}var b=this.ob,b=null===b?a.La:b.eb;if(null!==b)return this.ob=b,this.value=b.value,this.key=b.key,!0;this.Rf();return!1};gb.prototype.first=gb.prototype.first=function(){var a=this.Pa;this.qb=a.J;a=a.La;if(null!==a){this.ob=a;var b=a.value;this.key=a.key;return this.value=b}return null}; gb.prototype.any=function(a){var b=this.Pa;b.ok=null;var c=b.J;this.ob=null;for(var d=b.La;null!==d;){if(a(d.value))return!0;b.J!==c&&z.Va(b);d=d.eb}return!1};gb.prototype.all=function(a){var b=this.Pa;b.ok=null;var c=b.J;this.ob=null;for(var d=b.La;null!==d;){if(!a(d.value))return!1;b.J!==c&&z.Va(b);d=d.eb}return!0};gb.prototype.each=function(a){var b=this.Pa;b.ok=null;var c=b.J;this.ob=null;for(var d=b.La;null!==d;)a(d.value),b.J!==c&&z.Va(b),d=d.eb;return this}; gb.prototype.map=function(a){var b=this.Pa;b.ok=null;var c=b.J;this.ob=null;for(var d=new J,e=b.La;null!==e;)d.add(a(e.value)),b.J!==c&&z.Va(b),e=e.eb;return d.j};gb.prototype.filter=function(a){var b=this.Pa;b.ok=null;var c=b.J;this.ob=null;for(var d=new J(b.qf),e=b.La;null!==e;){var g=e.value;a(g)&&d.add(g);b.J!==c&&z.Va(b);e=e.eb}return d.j};gb.prototype.concat=function(a){this.Pa.ok=null;return new Sa(this,a.j)};z.w(gb,{count:"count"},function(){return this.Pa.Ad}); -gb.prototype.Rf=function(){this.value=this.key=null;this.qb=-1;this.Pa.ok=this};gb.prototype.toString=function(){return null!==this.ob?"MapValueSetIterator@"+this.ob.value:"MapValueSetIterator"};function Za(a,b){this.key=a;this.value=b;this.Cp=this.eb=null}z.ne(Za,{key:!0,value:!0});Za.prototype.toString=function(){return"{"+this.key+":"+this.value+"}"};function ib(a){this.Pa=a;this.reset()}z.ne(ib,{key:!0,value:!0});z.w(ib,{j:"iterator"},function(){return this}); +gb.prototype.Rf=function(){this.value=this.key=null;this.qb=-1;this.Pa.ok=this};gb.prototype.toString=function(){return null!==this.ob?"MapValueSetIterator@"+this.ob.value:"MapValueSetIterator"};function Za(a,b){this.key=a;this.value=b;this.Bp=this.eb=null}z.me(Za,{key:!0,value:!0});Za.prototype.toString=function(){return"{"+this.key+":"+this.value+"}"};function ib(a){this.Pa=a;this.reset()}z.me(ib,{key:!0,value:!0});z.w(ib,{j:"iterator"},function(){return this}); ib.prototype.reset=ib.prototype.reset=function(){var a=this.Pa;a.jc=null;this.qb=a.J;this.ob=null};ib.prototype.next=ib.prototype.hasNext=ib.prototype.next=function(){var a=this.Pa;if(a.J!==this.qb){if(null===this.key)return!1;z.Va(a)}var b=this.ob,b=null===b?a.La:b.eb;if(null!==b)return this.ob=b,this.key=b.key,this.value=b.value,!0;this.Rf();return!1}; ib.prototype.first=ib.prototype.first=function(){var a=this.Pa;this.qb=a.J;a=a.La;return null!==a?(this.ob=a,this.key=a.key,this.value=a.value,a):null};ib.prototype.any=function(a){var b=this.Pa;b.jc=null;var c=b.J;this.ob=null;for(var d=b.La;null!==d;){if(a(d))return!0;b.J!==c&&z.Va(b);d=d.eb}return!1};ib.prototype.all=function(a){var b=this.Pa;b.jc=null;var c=b.J;this.ob=null;for(var d=b.La;null!==d;){if(!a(d))return!1;b.J!==c&&z.Va(b);d=d.eb}return!0}; ib.prototype.each=function(a){var b=this.Pa;b.jc=null;var c=b.J;this.ob=null;for(var d=b.La;null!==d;)a(d),b.J!==c&&z.Va(b),d=d.eb;return this};ib.prototype.map=function(a){var b=this.Pa;b.jc=null;var c=b.J;this.ob=null;for(var d=new J,e=b.La;null!==e;)d.add(a(e)),b.J!==c&&z.Va(b),e=e.eb;return d.j};ib.prototype.filter=function(a){var b=this.Pa;b.jc=null;var c=b.J;this.ob=null;for(var d=new J,e=b.La;null!==e;)a(e)&&d.add(e),b.J!==c&&z.Va(b),e=e.eb;return d.j}; ib.prototype.concat=function(a){this.Pa.jc=null;return new Sa(this,a.j)};z.w(ib,{count:"count"},function(){return this.Pa.Ad});ib.prototype.Rf=function(){this.value=this.key=null;this.qb=-1;this.Pa.jc=this};ib.prototype.toString=function(){return null!==this.ob?"MapIterator@"+this.ob:"MapIterator"}; -function oa(a,b){z.xc(this);this.I=!1;void 0===a||null===a?this.qf=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.qf=a:z.wa(a,"the string 'object', 'number' or 'string'","Map constructor: keytype"):"function"===typeof a?this.qf=a===Object?"object":a===String?"string":a===Number?"number":a:z.wa(a,"null, a primitive type name, or a class type","Map constructor: keytype");void 0===b||null===b?this.yi=null:"string"===typeof b?"object"===b||"string"===b||"boolean"===b||"number"=== +function oa(a,b){z.wc(this);this.I=!1;void 0===a||null===a?this.qf=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.qf=a:z.wa(a,"the string 'object', 'number' or 'string'","Map constructor: keytype"):"function"===typeof a?this.qf=a===Object?"object":a===String?"string":a===Number?"number":a:z.wa(a,"null, a primitive type name, or a class type","Map constructor: keytype");void 0===b||null===b?this.yi=null:"string"===typeof b?"object"===b||"string"===b||"boolean"===b||"number"=== b||"function"===b?this.yi=b:z.wa(b,"the string 'object', 'number', 'string', 'boolean', or 'function'","Map constructor: valtype"):"function"===typeof b?this.yi=b===Object?"object":b===String?"string":b===Number?"number":b===Boolean?"boolean":b===Function?"function":b:z.wa(b,"null, a primitive type name, or a class type","Map constructor: valtype");this.Bd={};this.Ad=0;this.ok=this.jc=null;this.J=0;this.fi=this.La=null}z.ka("Map",oa); function mb(a,b){null!==a.qf&&("string"===typeof a.qf?typeof b===a.qf&&null!==b||z.hc(b,a.qf):b instanceof a.qf||z.hc(b,a.qf))}oa.prototype.Sc=function(){var a=this.J;a++;999999999=this.count)return Na;var a=this.jc;return null!==a?(a.reset(),a):new ib(this)});z.w(oa,{OF:"iteratorKeys"},function(){return 0>=this.count?Na:new $a(this)});z.w(oa,{PF:"iteratorValues"},function(){if(0>=this.count)return Na;var a=this.ok;return null!==a?(a.reset(),a):new gb(this)});function M(a,b){void 0===a?this.M=this.L=0:"number"===typeof a&&"number"===typeof b?(this.L=a,this.M=b):z.k("Invalid arguments to Point constructor: "+a+", "+b);this.I=!1} -z.ka("Point",M);z.Ai(M);z.ne(M,{x:!0,y:!0});M.prototype.assign=function(a){this.L=a.L;this.M=a.M};M.prototype.setTo=M.prototype.m=function(a,b){u&&(z.h(a,"number",M,"setTo:x"),z.h(b,"number",M,"setTo:y"));this.L=a;this.M=b;return this};M.prototype.set=M.prototype.set=function(a){u&&z.l(a,M,M,"set:p");this.Sa();this.L=a.L;this.M=a.M;return this};M.prototype.copy=function(){var a=new M;a.L=this.L;a.M=this.M;return a};f=M.prototype;f.Na=function(){this.I=!0;Object.freeze(this);return this}; +z.ka("Point",M);z.Ai(M);z.me(M,{x:!0,y:!0});M.prototype.assign=function(a){this.L=a.L;this.M=a.M};M.prototype.setTo=M.prototype.m=function(a,b){u&&(z.h(a,"number",M,"setTo:x"),z.h(b,"number",M,"setTo:y"));this.L=a;this.M=b;return this};M.prototype.set=M.prototype.set=function(a){u&&z.l(a,M,M,"set:p");this.Sa();this.L=a.L;this.M=a.M;return this};M.prototype.copy=function(){var a=new M;a.L=this.L;a.M=this.M;return a};f=M.prototype;f.Na=function(){this.I=!0;Object.freeze(this);return this}; f.V=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.I=!0;return this};f.Za=function(){Object.isFrozen(this)&&z.k("cannot thaw constant: "+this);this.I=!1;return this};f.Sa=function(a){if(this.I){var b="The Point is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);z.k(b)}}; M.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 M(c,e)}return new M};M.stringify=function(a){return a instanceof M?a.x.toString()+" "+a.y.toString():a.toString()};M.prototype.toString=function(){return"Point("+this.x+","+this.y+")"};M.prototype.equals=M.prototype.O=function(a){return a instanceof M?this.L===a.x&&this.M===a.y:!1}; -M.prototype.equalTo=M.prototype.Ax=function(a,b){return this.L===a&&this.M===b};M.prototype.equalsApprox=M.prototype.Vc=function(a){return Q(this.L,a.x)&&Q(this.M,a.y)};M.prototype.add=M.prototype.add=function(a){u&&z.l(a,M,M,"add:p");this.Sa();this.L+=a.x;this.M+=a.y;return this};M.prototype.subtract=M.prototype.so=function(a){u&&z.l(a,M,M,"subtract:p");this.Sa();this.L-=a.x;this.M-=a.y;return this}; +M.prototype.equalTo=M.prototype.Ax=function(a,b){return this.L===a&&this.M===b};M.prototype.equalsApprox=M.prototype.Vc=function(a){return Q(this.L,a.x)&&Q(this.M,a.y)};M.prototype.add=M.prototype.add=function(a){u&&z.l(a,M,M,"add:p");this.Sa();this.L+=a.x;this.M+=a.y;return this};M.prototype.subtract=M.prototype.ro=function(a){u&&z.l(a,M,M,"subtract:p");this.Sa();this.L-=a.x;this.M-=a.y;return this}; M.prototype.offset=M.prototype.offset=function(a,b){u&&(z.p(a,M,"offset:dx"),z.p(b,M,"offset:dy"));this.Sa();this.L+=a;this.M+=b;return this};M.prototype.rotate=M.prototype.rotate=function(a){u&&z.p(a,M,"rotate:angle");this.Sa();if(0===a)return this;var b=this.L,c=this.M;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.L=d*b-e*c;this.M=e*b+d*c;return this}; -M.prototype.scale=M.prototype.scale=function(a,b){u&&(z.p(a,M,"scale:sx"),z.p(b,M,"scale:sy"));this.L*=a;this.M*=b;return this};M.prototype.distanceSquaredPoint=M.prototype.Ef=function(a){u&&z.l(a,M,M,"distanceSquaredPoint:p");var b=a.x-this.L;a=a.y-this.M;return b*b+a*a};M.prototype.distanceSquared=M.prototype.iq=function(a,b){u&&(z.p(a,M,"distanceSquared:px"),z.p(b,M,"distanceSquared:py"));var c=a-this.L,d=b-this.M;return c*c+d*d}; +M.prototype.scale=M.prototype.scale=function(a,b){u&&(z.p(a,M,"scale:sx"),z.p(b,M,"scale:sy"));this.L*=a;this.M*=b;return this};M.prototype.distanceSquaredPoint=M.prototype.Ef=function(a){u&&z.l(a,M,M,"distanceSquaredPoint:p");var b=a.x-this.L;a=a.y-this.M;return b*b+a*a};M.prototype.distanceSquared=M.prototype.hq=function(a,b){u&&(z.p(a,M,"distanceSquared:px"),z.p(b,M,"distanceSquared:py"));var c=a-this.L,d=b-this.M;return c*c+d*d}; M.prototype.normalize=M.prototype.normalize=function(){this.Sa();var a=this.L,b=this.M,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}M.prototype.projectOntoLineSegment=function(a,b,c,d){u&&(z.p(a,M,"projectOntoLineSegment:px"),z.p(b,M,"projectOntoLineSegment:py"),z.p(c,M,"projectOntoLineSegment:qx"),z.p(d,M,"projectOntoLineSegment:qy"));ob(a,b,c,d,this.L,this.M,this);return this}; M.prototype.projectOntoLineSegmentPoint=function(a,b){u&&(z.l(a,M,M,"projectOntoLineSegmentPoint:p"),z.l(b,M,M,"projectOntoLineSegmentPoint:q"));ob(a.x,a.y,b.x,b.y,this.L,this.M,this);return this};M.prototype.snapToGrid=function(a,b,c,d){u&&(z.p(a,M,"snapToGrid:originx"),z.p(b,M,"snapToGrid:originy"),z.p(c,M,"snapToGrid:cellwidth"),z.p(d,M,"snapToGrid:cellheight"));tb(this.L,this.M,a,b,c,d,this);return this}; -M.prototype.snapToGridPoint=function(a,b){u&&(z.l(a,M,M,"snapToGridPoint:p"),z.l(b,Fa,M,"snapToGridPoint:q"));tb(this.L,this.M,a.x,a.y,b.width,b.height,this);return this};M.prototype.setRectSpot=M.prototype.po=function(a,b){u&&(z.l(a,w,M,"setRectSpot:r"),z.l(b,R,M,"setRectSpot:spot"));this.Sa();this.L=a.x+b.x*a.width+b.offsetX;this.M=a.y+b.y*a.height+b.offsetY;return this}; +M.prototype.snapToGridPoint=function(a,b){u&&(z.l(a,M,M,"snapToGridPoint:p"),z.l(b,Fa,M,"snapToGridPoint:q"));tb(this.L,this.M,a.x,a.y,b.width,b.height,this);return this};M.prototype.setRectSpot=M.prototype.oo=function(a,b){u&&(z.l(a,w,M,"setRectSpot:r"),z.l(b,R,M,"setRectSpot:spot"));this.Sa();this.L=a.x+b.x*a.width+b.offsetX;this.M=a.y+b.y*a.height+b.offsetY;return this}; M.prototype.setSpot=M.prototype.Xu=function(a,b,c,d,e){u&&(z.p(a,M,"setSpot:x"),z.p(b,M,"setSpot:y"),z.p(c,M,"setSpot:w"),z.p(d,M,"setSpot:h"),(0>c||0>d)&&z.k("Point.setSpot:Width and height cannot be negative"),z.l(e,R,M,"setSpot:spot"));this.Sa();this.L=a+e.x*c+e.offsetX;this.M=b+e.y*d+e.offsetY;return this};M.prototype.transform=function(a){u&&z.l(a,Ga,M,"transform:t");a.wb(this);return this};function ub(a,b){u&&z.l(b,Ga,M,"transformInverted:t");b.Ci(a);return a}var xb; M.distanceLineSegmentSquared=xb=function(a,b,c,d,e,g){u&&(z.p(a,M,"distanceLineSegmentSquared:px"),z.p(b,M,"distanceLineSegmentSquared:py"),z.p(c,M,"distanceLineSegmentSquared:ax"),z.p(d,M,"distanceLineSegmentSquared:ay"),z.p(e,M,"distanceLineSegmentSquared:bx"),z.p(g,M,"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 yb; M.distanceSquared=yb=function(a,b,c,d){u&&(z.p(a,M,"distanceSquared:px"),z.p(b,M,"distanceSquared:py"),z.p(c,M,"distanceSquared:qx"),z.p(d,M,"distanceSquared:qy"));a=c-a;b=d-b;return a*a+b*b};var zb; M.direction=zb=function(a,b,c,d){u&&(z.p(a,M,"direction:px"),z.p(b,M,"direction:py"),z.p(c,M,"direction:qx"),z.p(d,M,"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(M,{x:"x"},function(){return this.L},function(a){this.Sa(a);u&&z.h(a,"number",M,"x");this.L=a}); -z.defineProperty(M,{y:"y"},function(){return this.M},function(a){this.Sa(a);u&&z.h(a,"number",M,"y");this.M=a});M.prototype.isReal=M.prototype.F=function(){return isFinite(this.x)&&isFinite(this.y)};function Fa(a,b){void 0===a?this.Ga=this.Ia=0:"number"===typeof a&&(0<=a||isNaN(a))&&"number"===typeof b&&(0<=b||isNaN(b))?(this.Ia=a,this.Ga=b):z.k("Invalid arguments to Size constructor: "+a+", "+b);this.I=!1}z.ka("Size",Fa);z.Ai(Fa);z.ne(Fa,{width:!0,height:!0}); +z.defineProperty(M,{y:"y"},function(){return this.M},function(a){this.Sa(a);u&&z.h(a,"number",M,"y");this.M=a});M.prototype.isReal=M.prototype.F=function(){return isFinite(this.x)&&isFinite(this.y)};function Fa(a,b){void 0===a?this.Ga=this.Ia=0:"number"===typeof a&&(0<=a||isNaN(a))&&"number"===typeof b&&(0<=b||isNaN(b))?(this.Ia=a,this.Ga=b):z.k("Invalid arguments to Size constructor: "+a+", "+b);this.I=!1}z.ka("Size",Fa);z.Ai(Fa);z.me(Fa,{width:!0,height:!0}); Fa.prototype.assign=function(a){this.Ia=a.Ia;this.Ga=a.Ga};Fa.prototype.setTo=Fa.prototype.m=function(a,b){u&&(z.h(a,"number",Fa,"setTo:w"),z.h(b,"number",Fa,"setTo:h"),0>a&&z.wa(a,">= 0",Fa,"setTo:w"),0>b&&z.wa(b,">= 0",Fa,"setTo:h"));this.Ia=a;this.Ga=b;return this};Fa.prototype.set=Fa.prototype.set=function(a){u&&z.l(a,Fa,Fa,"set:s");this.Sa();this.Ia=a.Ia;this.Ga=a.Ga;return this};Fa.prototype.copy=function(){var a=new Fa;a.Ia=this.Ia;a.Ga=this.Ga;return a};f=Fa.prototype; f.Na=function(){this.I=!0;Object.freeze(this);return this};f.V=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.I=!0;return this};f.Za=function(){Object.isFrozen(this)&&z.k("cannot thaw constant: "+this);this.I=!1;return this};f.Sa=function(a){if(this.I){var b="The Size is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);z.k(b)}}; Fa.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 Fa(c,e)}return new Fa};Fa.stringify=function(a){return a instanceof Fa?a.width.toString()+" "+a.height.toString():a.toString()};Fa.prototype.toString=function(){return"Size("+this.width+","+this.height+")"}; Fa.prototype.equals=Fa.prototype.O=function(a){return a instanceof Fa?this.Ia===a.width&&this.Ga===a.height:!1};Fa.prototype.equalTo=Fa.prototype.Ax=function(a,b){return this.Ia===a&&this.Ga===b};Fa.prototype.equalsApprox=Fa.prototype.Vc=function(a){return Q(this.Ia,a.width)&&Q(this.Ga,a.height)};z.defineProperty(Fa,{width:"width"},function(){return this.Ia},function(a){this.Sa(a);u&&z.h(a,"number",Fa,"width");0>a&&z.wa(a,">= 0",Fa,"width");this.Ia=a}); z.defineProperty(Fa,{height:"height"},function(){return this.Ga},function(a){this.Sa(a);u&&z.h(a,"number",Fa,"height");0>a&&z.wa(a,">= 0",Fa,"height");this.Ga=a});Fa.prototype.isReal=Fa.prototype.F=function(){return isFinite(this.width)&&isFinite(this.height)}; function w(a,b,c,d){void 0===a?this.Ga=this.Ia=this.M=this.L=0:a instanceof M?b instanceof M?(this.L=Math.min(a.L,b.L),this.M=Math.min(a.M,b.M),this.Ia=Math.abs(a.L-b.L),this.Ga=Math.abs(a.M-b.M)):b instanceof Fa?(this.L=a.L,this.M=a.M,this.Ia=b.Ia,this.Ga=b.Ga):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.L=a,this.M=b,this.Ia=c,this.Ga=d):z.k("Invalid arguments to Rect constructor: "+ -a+", "+b+", "+c+", "+d);this.I=!1}z.ka("Rect",w);z.Ai(w);z.ne(w,{x:!0,y:!0,width:!0,height:!0});w.prototype.assign=function(a){this.L=a.L;this.M=a.M;this.Ia=a.Ia;this.Ga=a.Ga};function Ab(a,b,c){a.Ia=b;a.Ga=c}w.prototype.setTo=w.prototype.m=function(a,b,c,d){u&&(z.h(a,"number",w,"setTo:x"),z.h(b,"number",w,"setTo:y"),z.h(c,"number",w,"setTo:w"),z.h(d,"number",w,"setTo:h"),0>c&&z.wa(c,">= 0",w,"setTo:w"),0>d&&z.wa(d,">= 0",w,"setTo:h"));this.L=a;this.M=b;this.Ia=c;this.Ga=d;return this}; +a+", "+b+", "+c+", "+d);this.I=!1}z.ka("Rect",w);z.Ai(w);z.me(w,{x:!0,y:!0,width:!0,height:!0});w.prototype.assign=function(a){this.L=a.L;this.M=a.M;this.Ia=a.Ia;this.Ga=a.Ga};function Ab(a,b,c){a.Ia=b;a.Ga=c}w.prototype.setTo=w.prototype.m=function(a,b,c,d){u&&(z.h(a,"number",w,"setTo:x"),z.h(b,"number",w,"setTo:y"),z.h(c,"number",w,"setTo:w"),z.h(d,"number",w,"setTo:h"),0>c&&z.wa(c,">= 0",w,"setTo:w"),0>d&&z.wa(d,">= 0",w,"setTo:h"));this.L=a;this.M=b;this.Ia=c;this.Ga=d;return this}; w.prototype.set=w.prototype.set=function(a){u&&z.l(a,w,w,"set:r");this.Sa();this.L=a.L;this.M=a.M;this.Ia=a.Ia;this.Ga=a.Ga;return this};w.prototype.setPoint=w.prototype.dh=function(a){u&&z.l(a,M,w,"setPoint:p");this.Sa();this.L=a.L;this.M=a.M;return this};w.prototype.setSize=function(a){u&&z.l(a,Fa,w,"setSize:s");this.Sa();this.Ia=a.Ia;this.Ga=a.Ga;return this};w.prototype.copy=function(){var a=new w;a.L=this.L;a.M=this.M;a.Ia=this.Ia;a.Ga=this.Ga;return a};f=w.prototype; f.Na=function(){this.I=!0;Object.freeze(this);return this};f.V=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.I=!0;return this};f.Za=function(){Object.isFrozen(this)&&z.k("cannot thaw constant: "+this);this.I=!1;return this};f.Sa=function(a){if(this.I){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()}; @@ -151,7 +151,7 @@ w.prototype.subtractMargin=w.prototype.sK=function(a){u&&z.l(a,Kb,w,"subtractMar w.prototype.intersectRect=function(a){u&&z.l(a,w,w,"intersectRect:r");return Lb(this,a.x,a.y,a.width,a.height)};w.prototype.intersect=w.prototype.zF=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 Lb(this,a,b,c,d)}; function Lb(a,b,c,d,e){a.Sa();var g=Math.max(a.L,b),h=Math.max(a.M,c);b=Math.min(a.L+a.Ia,b+d);c=Math.min(a.M+a.Ga,c+e);a.L=g;a.M=h;a.Ia=Math.max(0,b-g);a.Ga=Math.max(0,c-h);return a}w.prototype.intersectsRect=w.prototype.Vg=function(a){u&&z.l(a,w,w,"intersectsRect:r");return this.AF(a.x,a.y,a.width,a.height)}; w.prototype.intersects=w.prototype.AF=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.Ia,g=this.L;if(Infinity!==e&&Infinity!==c&&(e+=g,c+=a,isNaN(c)||isNaN(e)||g>c||a>e))return!1;a=this.Ga;c=this.M;return Infinity!==a&&Infinity!==d&&(a+=c,d+=b,isNaN(d)||isNaN(a)||c>d||b>a)?!1:!0}; -function Mb(a,b){var c=a.Ia,d=b.width+10+10,e=a.L,g=b.x-10;if(e>d+g||g>c+e)return!1;c=a.Ga;d=b.height+10+10;e=a.M;g=b.y-10;return e>d+g||g>c+e?!1:!0}w.prototype.unionPoint=w.prototype.Ki=function(a){u&&z.l(a,M,w,"unionPoint:p");return Rb(this,a.x,a.y,0,0)};w.prototype.unionRect=w.prototype.Wh=function(a){u&&z.l(a,w,w,"unionRect:r");return Rb(this,a.L,a.M,a.Ia,a.Ga)}; +function Qb(a,b){var c=a.Ia,d=b.width+10+10,e=a.L,g=b.x-10;if(e>d+g||g>c+e)return!1;c=a.Ga;d=b.height+10+10;e=a.M;g=b.y-10;return e>d+g||g>c+e?!1:!0}w.prototype.unionPoint=w.prototype.Ki=function(a){u&&z.l(a,M,w,"unionPoint:p");return Rb(this,a.x,a.y,0,0)};w.prototype.unionRect=w.prototype.Wh=function(a){u&&z.l(a,w,w,"unionRect:r");return Rb(this,a.L,a.M,a.Ia,a.Ga)}; w.prototype.union=w.prototype.$G=function(a,b,c,d){this.Sa();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 Rb(this,a,b,c,d)};function Rb(a,b,c,d,e){var g=Math.min(a.L,b),h=Math.min(a.M,c);b=Math.max(a.L+a.Ia,b+d);c=Math.max(a.M+a.Ga,c+e);a.L=g;a.M=h;a.Ia=b-g;a.Ga=c-h;return a} w.prototype.setSpot=w.prototype.Xu=function(a,b,c){u&&(z.p(a,w,"setSpot:x"),z.p(b,w,"setSpot:y"),z.l(c,R,w,"setSpot:spot"));this.Sa();this.L=a-c.offsetX-c.x*this.Ia;this.M=b-c.offsetY-c.y*this.Ga;return this};var Sb; w.contains=Sb=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}; @@ -161,14 +161,14 @@ z.defineProperty(w,{left:"left"},function(){return this.L},function(a){this.Sa(a z.defineProperty(w,{bottom:"bottom"},function(){return this.M+this.Ga},function(a){this.Sa(a);u&&z.p(a,w,"top");this.M+=a-(this.M+this.Ga)});z.defineProperty(w,{position:"position"},function(){return new M(this.L,this.M)},function(a){this.Sa(a);u&&z.l(a,M,w,"position");this.L=a.x;this.M=a.y});z.defineProperty(w,{size:"size"},function(){return new Fa(this.Ia,this.Ga)},function(a){this.Sa(a);u&&z.l(a,Fa,w,"size");this.Ia=a.width;this.Ga=a.height}); z.defineProperty(w,{$l:"center"},function(){return new M(this.L+this.Ia/2,this.M+this.Ga/2)},function(a){this.Sa(a);u&&z.l(a,M,w,"center");this.L=a.x-this.Ia/2;this.M=a.y-this.Ga/2});z.defineProperty(w,{oa:"centerX"},function(){return this.L+this.Ia/2},function(a){this.Sa(a);u&&z.p(a,w,"centerX");this.L=a-this.Ia/2});z.defineProperty(w,{xa:"centerY"},function(){return this.M+this.Ga/2},function(a){this.Sa(a);u&&z.p(a,w,"centerY");this.M=a-this.Ga/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 Kb(a,b,c,d){void 0===a?this.th=this.mh=this.Ch=this.Dh=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.I=!1}z.ka("Margin",Kb);z.Ai(Kb);z.ne(Kb,{top:!0,right:!0,bottom:!0,left:!0});Kb.prototype.assign=function(a){this.Dh=a.Dh;this.Ch=a.Ch;this.mh=a.mh;this.th=a.th}; +function Kb(a,b,c,d){void 0===a?this.th=this.mh=this.Ch=this.Dh=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.I=!1}z.ka("Margin",Kb);z.Ai(Kb);z.me(Kb,{top:!0,right:!0,bottom:!0,left:!0});Kb.prototype.assign=function(a){this.Dh=a.Dh;this.Ch=a.Ch;this.mh=a.mh;this.th=a.th}; Kb.prototype.setTo=Kb.prototype.m=function(a,b,c,d){u&&(z.h(a,"number",Kb,"setTo:t"),z.h(b,"number",Kb,"setTo:r"),z.h(c,"number",Kb,"setTo:b"),z.h(d,"number",Kb,"setTo:l"));this.Sa();this.Dh=a;this.Ch=b;this.mh=c;this.th=d;return this};Kb.prototype.set=Kb.prototype.set=function(a){u&&z.l(a,Kb,Kb,"assign:m");this.Sa();this.Dh=a.Dh;this.Ch=a.Ch;this.mh=a.mh;this.th=a.th;return this};Kb.prototype.copy=function(){var a=new Kb;a.Dh=this.Dh;a.Ch=this.Ch;a.mh=this.mh;a.th=this.th;return a};f=Kb.prototype; f.Na=function(){this.I=!0;Object.freeze(this);return this};f.V=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.I=!0;return this};f.Za=function(){Object.isFrozen(this)&&z.k("cannot thaw constant: "+this);this.I=!1;return this};f.Sa=function(a){if(this.I){var b="The Margin is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);z.k(b)}}; Kb.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 Kb;for(var e=NaN;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));if(isNaN(e))return new Kb(c);for(var g=NaN;""===a[b];)b++;(d=a[b++])&&(g=parseFloat(d));if(isNaN(g))return new Kb(c,e);for(var h=NaN;""===a[b];)b++;(d=a[b++])&&(h=parseFloat(d));return isNaN(h)?new Kb(c,e):new Kb(c,e,g,h)}return new Kb}; Kb.stringify=function(a){return a instanceof Kb?a.top.toString()+" "+a.right.toString()+" "+a.bottom.toString()+" "+a.left.toString():a.toString()};Kb.prototype.toString=function(){return"Margin("+this.top+","+this.right+","+this.bottom+","+this.left+")"};Kb.prototype.equals=Kb.prototype.O=function(a){return a instanceof Kb?this.Dh===a.top&&this.Ch===a.right&&this.mh===a.bottom&&this.th===a.left:!1}; Kb.prototype.equalTo=Kb.prototype.Ax=function(a,b,c,d){return this.Dh===a&&this.Ch===b&&this.mh===c&&this.th===d};Kb.prototype.equalsApprox=Kb.prototype.Vc=function(a){return Q(this.Dh,a.top)&&Q(this.Ch,a.right)&&Q(this.mh,a.bottom)&&Q(this.th,a.left)};z.defineProperty(Kb,{top:"top"},function(){return this.Dh},function(a){this.Sa(a);u&&z.p(a,Kb,"top");this.Dh=a});z.defineProperty(Kb,{right:"right"},function(){return this.Ch},function(a){this.Sa(a);u&&z.p(a,Kb,"right");this.Ch=a}); z.defineProperty(Kb,{bottom:"bottom"},function(){return this.mh},function(a){this.Sa(a);u&&z.p(a,Kb,"bottom");this.mh=a});z.defineProperty(Kb,{left:"left"},function(){return this.th},function(a){this.Sa(a);u&&z.p(a,Kb,"left");this.th=a});Kb.prototype.isReal=Kb.prototype.F=function(){return isFinite(this.top)&&isFinite(this.right)&&isFinite(this.bottom)&&isFinite(this.left)};function Ga(){this.m11=1;this.m21=this.m12=0;this.m22=1;this.dy=this.dx=0}z.Ai(Ga); -z.ne(Ga,{m11:!0,m12:!0,m21:!0,m22:!0,dx:!0,dy:!0});Ga.prototype.set=Ga.prototype.set=function(a){u&&z.l(a,Ga,Ga,"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};Ga.prototype.copy=function(){var a=new Ga;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};Ga.prototype.toString=function(){return"Transform("+this.m11+","+this.m12+","+this.m21+","+this.m22+","+this.dx+","+this.dy+")"}; +z.me(Ga,{m11:!0,m12:!0,m21:!0,m22:!0,dx:!0,dy:!0});Ga.prototype.set=Ga.prototype.set=function(a){u&&z.l(a,Ga,Ga,"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};Ga.prototype.copy=function(){var a=new Ga;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};Ga.prototype.toString=function(){return"Transform("+this.m11+","+this.m12+","+this.m21+","+this.m22+","+this.dx+","+this.dy+")"}; Ga.prototype.equals=Ga.prototype.O=function(a){return a instanceof Ga?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};Ga.prototype.isIdentity=Ga.prototype.uu=function(){return 1===this.m11&&0===this.m12&&0===this.m21&&1===this.m22&&0===this.dx&&0===this.dy};Ga.prototype.reset=Ga.prototype.reset=function(){this.m11=1;this.m21=this.m12=0;this.m22=1;this.dy=this.dx=0;return this}; Ga.prototype.multiply=Ga.prototype.multiply=function(a){u&&z.l(a,Ga,Ga,"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}; Ga.prototype.multiplyInverted=Ga.prototype.fB=function(a){u&&z.l(a,Ga,Ga,"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}; @@ -177,7 +177,7 @@ Ga.prototype.rotate=Ga.prototype.rotate=function(a,b,c){u&&(z.p(a,Ga,"rotate:ang Ga.prototype.translate=Ga.prototype.translate=function(a,b){u&&(z.p(a,Ga,"translate:x"),z.p(b,Ga,"translate:y"));this.dx+=this.m11*a+this.m21*b;this.dy+=this.m12*a+this.m22*b;return this};Ga.prototype.scale=Ga.prototype.scale=function(a,b){void 0===b&&(b=a);u&&(z.p(a,Ga,"translate:sx"),z.p(b,Ga,"translate:sy"));this.m11*=a;this.m12*=a;this.m21*=b;this.m22*=b;return this}; Ga.prototype.transformPoint=Ga.prototype.wb=function(a){u&&z.l(a,M,Ga,"transformPoint:p");var b=a.L,c=a.M;a.L=b*this.m11+c*this.m21+this.dx;a.M=b*this.m12+c*this.m22+this.dy;return a};Ga.prototype.invertedTransformPoint=Ga.prototype.Ci=function(a){u&&z.l(a,M,Ga,"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.L,h=a.M;a.L=g*this.m22*b+h*-this.m21*b+b*(this.m21*this.dy-this.m22*this.dx);a.M=g*c+h*d+e;return a}; Ga.prototype.transformRect=Ga.prototype.ZG=function(a){u&&z.l(a,w,Ga,"transformRect:rect");var b=a.L,c=a.M,d=b+a.Ia,e=c+a.Ga,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.L=p;a.M=h;a.Ia= -e-p;a.Ga=q-h;return a};function R(a,b,c,d){void 0===a?this.Jg=this.Ig=this.M=this.L=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.I=!1}z.ka("Spot",R);z.Ai(R);z.ne(R,{x:!0,y:!0,offsetX:!0,offsetY:!0});R.prototype.assign=function(a){this.L=a.L;this.M=a.M;this.Ig=a.Ig;this.Jg=a.Jg}; +e-p;a.Ga=q-h;return a};function R(a,b,c,d){void 0===a?this.Jg=this.Ig=this.M=this.L=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.I=!1}z.ka("Spot",R);z.Ai(R);z.me(R,{x:!0,y:!0,offsetX:!0,offsetY:!0});R.prototype.assign=function(a){this.L=a.L;this.M=a.M;this.Ig=a.Ig;this.Jg=a.Jg}; R.prototype.setTo=R.prototype.m=function(a,b,c,d){u&&(Vb(a,"setTo:x"),Vb(b,"setTo:y"),Zb(c,"setTo:offx"),Zb(d,"setTo:offy"));this.Sa();this.L=a;this.M=b;this.Ig=c;this.Jg=d;return this};R.prototype.set=R.prototype.set=function(a){u&&z.l(a,R,R,"set:s");this.Sa();this.L=a.L;this.M=a.M;this.Ig=a.Ig;this.Jg=a.Jg;return this};R.prototype.copy=function(){var a=new R;a.L=this.L;a.M=this.M;a.Ig=this.Ig;a.Jg=this.Jg;return a};f=R.prototype;f.Na=function(){this.I=!0;Object.freeze(this);return this}; f.V=function(){return Object.isFrozen(this)?this:this.copy().freeze()};f.freeze=function(){this.I=!0;return this};f.Za=function(){Object.isFrozen(this)&&z.k("cannot thaw constant: "+this);this.I=!1;return this};f.Sa=function(a){if(this.I){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 $b(a,b){a.L=NaN;a.M=NaN;a.Ig=b;return a}function Vb(a,b){(isNaN(a)||1a)&&z.wa(a,"0 <= "+b+" <= 1",R,b)} function Zb(a,b){(isNaN(a)||Infinity===a||-Infinity===a)&&z.wa(a,"real number, not NaN or Infinity",R,b)}var fc; @@ -187,7 +187,7 @@ var d=a[b++];void 0!==d&&0=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 dd;k.Yb=[b,c,d,e,g,h];b={};xd(a,"g",b,k);k=a.addElement("g",b);a.Gf.push(k)} f.hb=function(){if(0!==this.shadowOffsetX||0!==this.shadowOffsetY||0!==this.shadowBlur){var a="SHADOW"+z.Em++,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",zM: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.Go?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.Go?this.clip():this.fill()};f.Rj=function(){this.Go||this.stroke()};z.defineProperty(Ad,{Wt:"clipInsteadOfFill"},function(){return this.Go},function(a){this.Go=a});f=Ad.prototype; -f.FB=function(a,b,c){this.ot=a;this.pt=b;this.Lg=c};f.qo=function(){this.shadowBlur=this.shadowOffsetY=this.shadowOffsetX=0};f.ro=function(){this.shadowOffsetX=this.ot;this.shadowOffsetY=this.pt;this.shadowBlur=this.Lg};f.AA=function(a,b){var c=this.Fa;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.Tg=function(a){if(a instanceof Ea&&a.type===Bd){var b=a.Io;a=a.az;a>b?(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.Fo?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.Fo?this.clip():this.fill()};f.Rj=function(){this.Fo||this.stroke()};z.defineProperty(Ad,{Wt:"clipInsteadOfFill"},function(){return this.Fo},function(a){this.Fo=a});f=Ad.prototype; +f.FB=function(a,b,c){this.ot=a;this.pt=b;this.Lg=c};f.po=function(){this.shadowBlur=this.shadowOffsetY=this.shadowOffsetX=0};f.qo=function(){this.shadowOffsetX=this.ot;this.shadowOffsetY=this.pt;this.shadowBlur=this.Lg};f.AA=function(a,b){var c=this.Fa;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.vA=function(){var a=this.Fa;void 0!==a.setLineDash?(a.setLineDash(z.bl),a.lineDashOffset=0):void 0!==a.webkitLineDash?(a.webkitLineDash=z.bl,a.webkitLineDashOffset=0):void 0!==a.mozDash&&(a.mozDash=null,a.mozDashOffset=0)};function da(a,b){b&&(a.Wy="");a.Xy="";a.Vy=""} var Cd=(Math.sqrt(2)-1)/3*4,Dd=(new M(0,0)).Na(),Ed=(new w(0,0,0,0)).Na(),Nd=(new Kb(0,0,0,0)).Na(),Od=(new Kb(2,2,2,2)).Na(),Pd=(new M(6,6)).Na(),Qd=(new M(-Infinity,-Infinity)).Na(),Rd=(new M(Infinity,Infinity)).Na(),Sd=(new Fa(0,0)).Na(),Td=(new Fa(1,1)).Na(),Ud=(new Fa(6,6)).Na(),Vd=(new Fa(8,8)).Na(),Wd=(new Fa(10,10)).Na(),ge=(new Fa(Infinity,Infinity)).Na(),he=(new M(NaN,NaN)).Na(),ie=(new Fa(NaN,NaN)).Na(),je=(new w(NaN,NaN,NaN,NaN)).Na(),ke=(new R(.156,.156)).Na(),le=(new R(.844,.844)).Na(), me=new na,ne=new na,oe=null;function pe(a){if(0>=a)return 0;var b=oe;if(null===b){for(var b=[],c=0;2E3>=c;c++)b[c]=Math.sqrt(c);oe=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 Q(a,b){var c=a-b;return.5>c&&-.5c&&-5E-8=q&&(q=1E-6);if(qe(a,b,h,k,q,c,d)&&qe(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,v=(b+d)/2;c=(c+e)/2;d=(d+g)/2;e=(e+h)/2;g=(g+k)/2;var t=(s+c)/2,x=(v+d)/2;c=(c+e)/2;d=(d+g)/2;var y=(t+c)/2,A=(x+d)/2, -B=(n-l)*(n-l)+(p-m)*(p-m),N=!1;De(a,b,s,v,t,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(qe(a,b,h,k,q,c,d)&&qe(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,v=(b+d)/2;c=(c+e)/2;d=(d+g)/2;e=(e+h)/2;g=(g+k)/2;var t=(s+c)/2,x=(v+d)/2;c=(c+e)/2;d=(d+g)/2;var y=(t+c)/2,B=(x+d)/2, +A=(n-l)*(n-l)+(p-m)*(p-m),N=!1;De(a,b,s,v,t,x,y,B,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(qe(a,b,h,k,q,c,d)&&qe(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,v=((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,v=(b+d)/2,t=(c+e)/2,x=(d+g)/2;e=(e+h)/2;g=(g+k)/2;d=(s+t)/2;c=(v+x)/2;var t=(t+e)/2,x=(x+g)/2, -y=(d+t)/2,A=(c+x)/2,r=r+Ee(a,b,s,v,d,c,y,A,l,m,n,p,q),r=r+Ee(y,A,t,x,e,g,h,k,l,m,n,p,q)}return r} +y=(d+t)/2,B=(c+x)/2,r=r+Ee(a,b,s,v,d,c,y,B,l,m,n,p,q),r=r+Ee(y,B,t,x,e,g,h,k,l,m,n,p,q)}return r} function ob(a,b,c,d,e,g,h){if(Db(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(Db(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(Db(k,h))return ob(a,b,c,d,e,g,l),!1;e=(h*a-k*e+g-b)/(h-k);if(Db(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 ob(a,b,c,d,e,g,l)}function Ge(a,b,c,d,e,g,h,k,l){var m=1E21,n=a,p=b;if(Fe(a,b,a,d,e,g,h,k,l)){var q=(l.x-e)*(l.x-e)+(l.y-g)*(l.y-g);qm} @@ -248,22 +248,22 @@ function Qe(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,0c,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.na.toString()+" "+this.la.toString()+"L"+this.G.toString()+" "+this.H.toString():"M"+this.na.toFixed(a)+" "+this.la.toFixed(a)+"L"+this.G.toFixed(a)+" "+this.H.toFixed(a);case jf:var b=new w(this.na,this.la,0,0);b.$G(this.G,this.H,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 kf:b=new w(this.na,this.la,0,0);b.$G(this.G,this.H,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 We:for(var b="",c=this.mc.o,d=c.length,e=0;e=v-1?!0:null!==l[m+1].match(/[A-Za-z]/)}function d(){m++;return l[m]}function e(){var a=new M(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 M(2*s.x-r.x,2*s.y-r.y)}void 0===b&&(b=!1);"string"!==typeof a&&z.hc(a,"string",Ve,"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 M(0,0),r=new M(0,0),s=new M(0, -0),v=l.length,t=z.v(),x=!1,y=!1,A=!0;!(m>=v-1);)if(p=n,n=d(),""!==n)switch(n.toUpperCase()){case "X":A=!0;y=x=!1;break;case "M":var B=g();null===t.dc||!0===A?(S(t,B.x,B.y,x,!1,!y),A=!1):t.moveTo(B.x,B.y);for(q=s;!c();)B=g(),t.lineTo(B.x,B.y);break;case "L":for(;!c();)B=g(),t.lineTo(B.x,B.y);break;case "H":for(;!c();)s=B=new M((n===n.toLowerCase()?s.x:0)+parseFloat(d()),s.y),t.lineTo(s.x,s.y);break;case "V":for(;!c();)s=B=new M(s.x,(n===n.toLowerCase()?s.y:0)+parseFloat(d())),t.lineTo(s.x,s.y);break; -case "C":for(;!c();){var N=e(),G=h(),B=g();U(t,N.x,N.y,G.x,G.y,B.x,B.y)}break;case "S":for(;!c();)N=k(),G=h(),B=g(),U(t,N.x,N.y,G.x,G.y,B.x,B.y);break;case "Q":for(;!c();)G=h(),B=g(),pf(t,G.x,G.y,B.x,B.y);break;case "T":for(;!c();)r=G=k(),B=g(),pf(t,G.x,G.y,B.x,B.y);break;case "B":for(;!c();){var B=parseFloat(d()),N=parseFloat(d()),G=parseFloat(d()),T=parseFloat(d()),fa=parseFloat(d()),W=fa,P=!1;c()||(W=parseFloat(d()),c()||(P=0!==parseFloat(d())));n===n.toLowerCase()&&(G+=s.x,T+=s.y);t.arcTo(B,N, -G,T,fa,W,P)}break;case "A":for(;!c();)N=Math.abs(parseFloat(d())),G=Math.abs(parseFloat(d())),T=parseFloat(d()),fa=!!parseFloat(d()),W=!!parseFloat(d()),B=g(),qf(t,N,G,T,fa,W,B.x,B.y);break;case "Z":B=t.q.mc.o[t.q.mc.length-1];V(t);s=q;break;case "F":B="";for(N=1;l[m+N];)if(null!==l[m+N].match(/[Uu]/))N++;else if(null===l[m+N].match(/[A-Za-z]/))N++;else{B=l[m+N];break}B.match(/[Mm]/)?x=!0:rf(t);break;case "U":B="";for(N=1;l[m+N];)if(null!==l[m+N].match(/[Ff]/))N++;else if(null===l[m+N].match(/[A-Za-z]/))N++; -else{B=l[m+N];break}B.match(/[Mm]/)?y=!0:t.hb(!1)}q=t.q;z.u(t);if(b)for(t=q.mc.j;t.next();)B=t.value,B.tu=!0;return q};function sf(a,b){for(var c=a.length,d=z.P(),e=0;e=v-1);)if(p=n,n=d(),""!==n)switch(n.toUpperCase()){case "X":B=!0;y=x=!1;break;case "M":var A=g();null===t.dc||!0===B?(S(t,A.x,A.y,x,!1,!y),B=!1):t.moveTo(A.x,A.y);for(q=s;!c();)A=g(),t.lineTo(A.x,A.y);break;case "L":for(;!c();)A=g(),t.lineTo(A.x,A.y);break;case "H":for(;!c();)s=A=new M((n===n.toLowerCase()?s.x:0)+parseFloat(d()),s.y),t.lineTo(s.x,s.y);break;case "V":for(;!c();)s=A=new M(s.x,(n===n.toLowerCase()?s.y:0)+parseFloat(d())),t.lineTo(s.x,s.y);break; +case "C":for(;!c();){var N=e(),G=h(),A=g();U(t,N.x,N.y,G.x,G.y,A.x,A.y)}break;case "S":for(;!c();)N=k(),G=h(),A=g(),U(t,N.x,N.y,G.x,G.y,A.x,A.y);break;case "Q":for(;!c();)G=h(),A=g(),pf(t,G.x,G.y,A.x,A.y);break;case "T":for(;!c();)r=G=k(),A=g(),pf(t,G.x,G.y,A.x,A.y);break;case "B":for(;!c();){var A=parseFloat(d()),N=parseFloat(d()),G=parseFloat(d()),T=parseFloat(d()),fa=parseFloat(d()),W=fa,P=!1;c()||(W=parseFloat(d()),c()||(P=0!==parseFloat(d())));n===n.toLowerCase()&&(G+=s.x,T+=s.y);t.arcTo(A,N, +G,T,fa,W,P)}break;case "A":for(;!c();)N=Math.abs(parseFloat(d())),G=Math.abs(parseFloat(d())),T=parseFloat(d()),fa=!!parseFloat(d()),W=!!parseFloat(d()),A=g(),qf(t,N,G,T,fa,W,A.x,A.y);break;case "Z":A=t.q.mc.o[t.q.mc.length-1];V(t);s=q;break;case "F":A="";for(N=1;l[m+N];)if(null!==l[m+N].match(/[Uu]/))N++;else if(null===l[m+N].match(/[A-Za-z]/))N++;else{A=l[m+N];break}A.match(/[Mm]/)?x=!0:rf(t);break;case "U":A="";for(N=1;l[m+N];)if(null!==l[m+N].match(/[Ff]/))N++;else if(null===l[m+N].match(/[A-Za-z]/))N++; +else{A=l[m+N];break}A.match(/[Mm]/)?y=!0:t.hb(!1)}q=t.q;z.u(t);if(b)for(t=q.mc.j;t.next();)A=t.value,A.tu=!0;return q};function sf(a,b){for(var c=a.length,d=z.P(),e=0;eh&&(h+=360),s.Me+=h);0>a&&(s.Me=180-s.Me,s.Bf=-s.Bf);0>d&&(s.Me=-s.Me,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 Qf:h=s.G;k=s.H;s.G=h* a+k*c+e;s.H=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.qm=!s.qm);0>d&&(s.Vj=-s.Vj,s.qm=!s.qm);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.jb=!0;return this}; -Ve.prototype.Oa=function(a,b,c,d){var e=a.x,g=a.y,h=this.sb.x-20;a=a.y;for(var k=0,l=0,m=0,n=0,p=0,q=0,r=this.mc.o,s=r.length,v=0;v=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?a=0:1=g)return d=(g-h)/p,c=c[k],k=c[2*n],e=c[2*n+1],b.m(k+(c[2*n+2]-k)*d,e+(c[2*n+3]-e)*d),b;h+=p}b.m(NaN,NaN);return b}; Ve.prototype.getFractionForPoint=Ve.prototype.II=function(a){if(this.type===hf){var b=this.na,c=this.la,d=this.G,e=this.H;if(b!==d||c!==e){var g=a.x;a=a.y;var h=0,k=0;return b===d?(c=k?k===c?0:1:Math.abs(a-c)/(k-h)):c===e?(b=k?k===b?0:1:Math.abs(g-b)/(k-h)):((g-b)*(g-b)+(a-c)*(a-c))/((d-b)*(d-b)+(e-c)*(e-c))}}else if(this.type===jf){if(b=this.na,c=this.la,d=this.G,e=this.H,b!==d||c!==e){var h=d-b,k=e-c,l=2*h+2*k,g=a.x; a=a.y;g=Math.min(Math.max(g,b),d);a=Math.min(Math.max(a,c),e);var b=Math.abs(g-b),d=Math.abs(g-d),c=Math.abs(a-c),e=Math.abs(a-e),m=Math.min(b,d,c,e);if(m===c)return g/l;if(m===d)return(h+a)/l;if(m===e)return(2*h+k-g)/l;if(m===b)return(2*h+2*k-a)/l}}else{for(var e=this.DA,h=this.Gx,k=this.EA,l=z.P(),c=Infinity,b=d=0,g=e.length,n=m=0,p=0;pa?0:1a?0:1a?"M"+this.na.toString()+" "+this.la.toString():"M"+this.na.toFixed(a)+" "+this.la.toFixed(a),c=this.Db.o,d=c.length,e=0;ea&&(a+=360),this.Rd=a,this.df=0,u&&z.p(d,Wf,"x1"),this.Bh=Math.max(d,0),u&&z.p(e,Wf,"y1"),this.Kg=Math.max(e,0),this.pp="boolean"===typeof h?!!h:!1,this.Ho=!!k):(u&&z.p(d,Wf,"x1"),this.Rd=d,u&&z.p(e, -Wf,"y1"),this.df=e,u&&z.p(g,Wf,"x2"),a===Pf&&(g=Math.max(g,0)),this.Bh=g,"number"===typeof h?(a===Pf&&(h=Math.max(h,0)),this.Kg=h):this.Kg=0,this.Ho=this.pp=!1);this.ei=!1;this.jb=!0;this.tg=null}z.ka("PathSegment",Wf);z.Ai(Wf);Wf.prototype.copy=function(){var a=new Wf;a.da=this.da;a.Bb=this.Bb;a.Ib=this.Ib;a.Rd=this.Rd;a.df=this.df;a.Bh=this.Bh;a.Kg=this.Kg;a.pp=this.pp;a.Ho=this.Ho;a.ei=this.ei;a.jb=this.jb;return a}; +function Wf(a,b,c,d,e,g,h,k){z.wc(this);this.I=!1;void 0===a?a=mf:u&&z.Ca(a,Wf,Wf,"constructor:type");this.da=a;void 0!==b?(u&&z.p(b,Wf,"ex"),this.Bb=b):this.Bb=0;void 0!==c?(u&&z.p(c,Wf,"ey"),this.Ib=c):this.Ib=0;void 0===d&&(d=0);void 0===e&&(e=0);void 0===g&&(g=0);void 0===h&&(h=0);a===Qf?(a=g%360,0>a&&(a+=360),this.Rd=a,this.df=0,u&&z.p(d,Wf,"x1"),this.Bh=Math.max(d,0),u&&z.p(e,Wf,"y1"),this.Kg=Math.max(e,0),this.op="boolean"===typeof h?!!h:!1,this.Go=!!k):(u&&z.p(d,Wf,"x1"),this.Rd=d,u&&z.p(e, +Wf,"y1"),this.df=e,u&&z.p(g,Wf,"x2"),a===Pf&&(g=Math.max(g,0)),this.Bh=g,"number"===typeof h?(a===Pf&&(h=Math.max(h,0)),this.Kg=h):this.Kg=0,this.Go=this.op=!1);this.ei=!1;this.jb=!0;this.tg=null}z.ka("PathSegment",Wf);z.Ai(Wf);Wf.prototype.copy=function(){var a=new Wf;a.da=this.da;a.Bb=this.Bb;a.Ib=this.Ib;a.Rd=this.Rd;a.df=this.df;a.Bh=this.Bh;a.Kg=this.Kg;a.op=this.op;a.Go=this.Go;a.ei=this.ei;a.jb=this.jb;return a}; Wf.prototype.equalsApprox=Wf.prototype.Vc=function(a){if(!(a instanceof Wf)||this.type!==a.type||this.Nx!==a.Nx)return!1;switch(this.type){case Mf:case mf:return Q(this.G,a.G)&&Q(this.H,a.H);case Nf:return Q(this.G,a.G)&&Q(this.H,a.H)&&Q(this.Dc,a.Dc)&&Q(this.Zc,a.Zc)&&Q(this.Rh,a.Rh)&&Q(this.Sh,a.Sh);case Of:return Q(this.G,a.G)&&Q(this.H,a.H)&&Q(this.Dc,a.Dc)&&Q(this.Zc,a.Zc);case Pf:return Q(this.Me,a.Me)&&Q(this.Bf,a.Bf)&&Q(this.oa,a.oa)&&Q(this.xa,a.xa)&&Q(this.radiusX,a.radiusX)&&Q(this.radiusY, -a.radiusY);case Qf:return this.qm===a.qm&&this.Sx===a.Sx&&Q(this.Vj,a.Vj)&&Q(this.G,a.G)&&Q(this.H,a.H)&&Q(this.radiusX,a.radiusX)&&Q(this.radiusY,a.radiusY);default:return!1}};Wf.prototype.qc=function(a){a.Pe===Wf?this.type=a:z.Tj(this,a)}; +a.radiusY);case Qf:return this.qm===a.qm&&this.Sx===a.Sx&&Q(this.Vj,a.Vj)&&Q(this.G,a.G)&&Q(this.H,a.H)&&Q(this.radiusX,a.radiusX)&&Q(this.radiusY,a.radiusY);default:return!1}};Wf.prototype.pc=function(a){a.Pe===Wf?this.type=a:z.Tj(this,a)}; Wf.prototype.toString=function(a){void 0===a&&(a=-1);var b="";switch(this.type){case Mf:b=0>a?"M"+this.G.toString()+" "+this.H.toString():"M"+this.G.toFixed(a)+" "+this.H.toFixed(a);break;case mf:b=0>a?"L"+this.G.toString()+" "+this.H.toString():"L"+this.G.toFixed(a)+" "+this.H.toFixed(a);break;case Nf:b=0>a?"C"+this.Dc.toString()+" "+this.Zc.toString()+" "+this.Rh.toString()+" "+this.Sh.toString()+" "+this.G.toString()+" "+this.H.toString():"C"+this.Dc.toFixed(a)+" "+this.Zc.toFixed(a)+" "+this.Rh.toFixed(a)+ " "+this.Sh.toFixed(a)+" "+this.G.toFixed(a)+" "+this.H.toFixed(a);break;case Of:b=0>a?"Q"+this.Dc.toString()+" "+this.Zc.toString()+" "+this.G.toString()+" "+this.H.toString():"Q"+this.Dc.toFixed(a)+" "+this.Zc.toFixed(a)+" "+this.G.toFixed(a)+" "+this.H.toFixed(a);break;case Pf:b=0>a?"B"+this.Me.toString()+" "+this.Bf.toString()+" "+this.oa.toString()+" "+this.xa.toString()+" "+this.radiusX:"B"+this.Me.toFixed(a)+" "+this.Bf.toFixed(a)+" "+this.oa.toFixed(a)+" "+this.xa.toFixed(a)+" "+this.radiusX; break;case Qf:b=0>a?"A"+this.radiusX.toString()+" "+this.radiusY.toString()+" "+this.Vj.toString()+" "+(this.Sx?1:0)+" "+(this.qm?1:0)+" "+this.G.toString()+" "+this.H.toString():"A"+this.radiusX.toFixed(a)+" "+this.radiusY.toFixed(a)+" "+this.Vj.toFixed(a)+" "+(this.Sx?1:0)+" "+(this.qm?1:0)+" "+this.G.toFixed(a)+" "+this.H.toFixed(a);break;default:b=this.type.toString()}return b+(this.ei?"z":"")};var Mf;Wf.Move=Mf=z.s(Wf,"Move",0);var mf;Wf.Line=mf=z.s(Wf,"Line",1);var Nf; Wf.Bezier=Nf=z.s(Wf,"Bezier",2);var Of;Wf.QuadraticBezier=Of=z.s(Wf,"QuadraticBezier",3);var Pf;Wf.Arc=Pf=z.s(Wf,"Arc",4);var Qf;Wf.SvgArc=Qf=z.s(Wf,"SvgArc",4);Wf.prototype.freeze=function(){this.I=!0;return this};Wf.prototype.Za=function(){this.I=!1;return this};Wf.prototype.close=Wf.prototype.close=function(){this.ei=!0;return this}; function Rf(a,b){if(null!==a.tg&&!1===b.jb)return a.tg;var c=a.radiusX,d=a.radiusY;void 0===d&&(d=c);if(0===c||0===d)return a.tg=[],a.tg;var e=a.Rd,g=a.df,h=Se(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=Se(b>g?b:g,n,n+h,!0);g=z.Pf();g.reset();g.translate(c,d);g.rotate(a.Rd,0,0);g.scale(l,r);sf(b,g);z.Ie(g);a.tg=b;return a.tg} z.defineProperty(Wf,{Nx:"isClosed"},function(){return this.ei},function(a){this.ei!==a&&(this.ei=a,this.jb=!0)});z.defineProperty(Wf,{type:"type"},function(){return this.da},function(a){u&&z.Ca(a,Wf,Wf,"type");this.I&&z.pa(this,a);this.da=a;this.jb=!0});z.defineProperty(Wf,{G:"endX"},function(){return this.Bb},function(a){u&&z.p(a,Wf,"endX");this.I&&z.pa(this,a);this.Bb=a;this.jb=!0}); z.defineProperty(Wf,{H:"endY"},function(){return this.Ib},function(a){u&&z.p(a,Wf,"endY");this.I&&z.pa(this,a);this.Ib=a;this.jb=!0});z.defineProperty(Wf,{Dc:"point1X"},function(){return this.Rd},function(a){u&&z.p(a,Wf,"point1X");this.I&&z.pa(this,a);this.Rd=a;this.jb=!0});z.defineProperty(Wf,{Zc:"point1Y"},function(){return this.df},function(a){u&&z.p(a,Wf,"point1Y");this.I&&z.pa(this,a);this.df=a;this.jb=!0}); z.defineProperty(Wf,{Rh:"point2X"},function(){return this.Bh},function(a){u&&z.p(a,Wf,"point2X");this.I&&z.pa(this,a);this.Bh=a;this.jb=!0});z.defineProperty(Wf,{Sh:"point2Y"},function(){return this.Kg},function(a){u&&z.p(a,Wf,"point2Y");this.I&&z.pa(this,a);this.Kg=a;this.jb=!0});z.defineProperty(Wf,{oa:"centerX"},function(){return this.Rd},function(a){u&&z.p(a,Wf,"centerX");this.I&&z.pa(this,a);this.Rd=a;this.jb=!0}); z.defineProperty(Wf,{xa:"centerY"},function(){return this.df},function(a){u&&z.p(a,Wf,"centerY");this.I&&z.pa(this,a);this.df=a;this.jb=!0});z.defineProperty(Wf,{radiusX:"radiusX"},function(){return this.Bh},function(a){u&&z.p(a,Wf,"radiusX");0>a&&z.wa(a,">= zero",Wf,"radiusX");this.I&&z.pa(this,a);this.Bh=a;this.jb=!0});z.defineProperty(Wf,{radiusY:"radiusY"},function(){return this.Kg},function(a){u&&z.p(a,Wf,"radiusY");0>a&&z.wa(a,">= zero",Wf,"radiusY");this.I&&z.pa(this,a);this.Kg=a;this.jb=!0}); -z.defineProperty(Wf,{Me:"startAngle"},function(){return this.Bb},function(a){this.Bb!==a&&(this.I&&z.pa(this,a),u&&z.p(a,Wf,"startAngle"),a%=360,0>a&&(a+=360),this.Bb=a,this.jb=!0)});z.defineProperty(Wf,{Bf:"sweepAngle"},function(){return this.Ib},function(a){u&&z.p(a,Wf,"sweepAngle");this.I&&z.pa(this,a);360a&&(a=-360);this.Ib=a;this.jb=!0});z.defineProperty(Wf,{qm:"isClockwiseArc"},function(){return this.Ho},function(a){this.I&&z.pa(this,a);this.Ho=a;this.jb=!0}); -z.defineProperty(Wf,{Sx:"isLargeArc"},function(){return this.pp},function(a){this.I&&z.pa(this,a);this.pp=a;this.jb=!0});z.defineProperty(Wf,{Vj:"xAxisRotation"},function(){return this.Rd},function(a){u&&z.p(a,Wf,"xAxisRotation");a%=360;0>a&&(a+=360);this.I&&z.pa(this,a);this.Rd=a;this.jb=!0}); +z.defineProperty(Wf,{Me:"startAngle"},function(){return this.Bb},function(a){this.Bb!==a&&(this.I&&z.pa(this,a),u&&z.p(a,Wf,"startAngle"),a%=360,0>a&&(a+=360),this.Bb=a,this.jb=!0)});z.defineProperty(Wf,{Bf:"sweepAngle"},function(){return this.Ib},function(a){u&&z.p(a,Wf,"sweepAngle");this.I&&z.pa(this,a);360a&&(a=-360);this.Ib=a;this.jb=!0});z.defineProperty(Wf,{qm:"isClockwiseArc"},function(){return this.Go},function(a){this.I&&z.pa(this,a);this.Go=a;this.jb=!0}); +z.defineProperty(Wf,{Sx:"isLargeArc"},function(){return this.op},function(a){this.I&&z.pa(this,a);this.op=a;this.jb=!0});z.defineProperty(Wf,{Vj:"xAxisRotation"},function(){return this.Rd},function(a){u&&z.p(a,Wf,"xAxisRotation");a%=360;0>a&&(a+=360);this.I&&z.pa(this,a);this.Rd=a;this.jb=!0}); function Yf(){this.ca=null;this.cA=(new M(0,0)).freeze();this.jz=(new M(0,0)).freeze();this.vv=this.pw=0;this.wv=1;this.ew="";this.Xw=this.Lv=!1;this.Iv=this.xv=0;this.Xj=this.Sv=this.bw=!1;this.Qr=null;this.Vw=0;this.Ng=this.Uw=null}z.ka("InputEvent",Yf); -Yf.prototype.copy=function(){var a=new Yf;a.ca=this.ca;a.cA.assign(this.te);a.jz.assign(this.ha);a.pw=this.pw;a.vv=this.vv;a.wv=this.wv;a.ew=this.ew;a.Lv=this.Lv;a.Xw=this.Xw;a.xv=this.xv;a.Iv=this.Iv;a.bw=this.bw;a.Sv=this.Sv;a.Xj=this.Xj;a.Qr=this.Qr;a.Vw=this.Vw;a.Uw=this.Uw;a.Ng=this.Ng;return a}; -Yf.prototype.toString=function(){var a="^";0!==this.Ld&&(a+="M:"+this.Ld);0!==this.button&&(a+="B:"+this.button);""!==this.key&&(a+="K:"+this.key);0!==this.Qe&&(a+="C:"+this.Qe);0!==this.fm&&(a+="D:"+this.fm);this.Nc&&(a+="h");this.bubbles&&(a+="b");null!==this.ha&&(a+="@"+this.ha.toString());return a};z.defineProperty(Yf,{g:"diagram"},function(){return this.ca},function(a){this.ca=a});z.defineProperty(Yf,{te:"viewPoint"},function(){return this.cA},function(a){z.l(a,M,Yf,"viewPoint");this.cA.assign(a)}); +Yf.prototype.copy=function(){var a=new Yf;a.ca=this.ca;a.cA.assign(this.se);a.jz.assign(this.ha);a.pw=this.pw;a.vv=this.vv;a.wv=this.wv;a.ew=this.ew;a.Lv=this.Lv;a.Xw=this.Xw;a.xv=this.xv;a.Iv=this.Iv;a.bw=this.bw;a.Sv=this.Sv;a.Xj=this.Xj;a.Qr=this.Qr;a.Vw=this.Vw;a.Uw=this.Uw;a.Ng=this.Ng;return a}; +Yf.prototype.toString=function(){var a="^";0!==this.Ld&&(a+="M:"+this.Ld);0!==this.button&&(a+="B:"+this.button);""!==this.key&&(a+="K:"+this.key);0!==this.Qe&&(a+="C:"+this.Qe);0!==this.fm&&(a+="D:"+this.fm);this.Nc&&(a+="h");this.bubbles&&(a+="b");null!==this.ha&&(a+="@"+this.ha.toString());return a};z.defineProperty(Yf,{g:"diagram"},function(){return this.ca},function(a){this.ca=a});z.defineProperty(Yf,{se:"viewPoint"},function(){return this.cA},function(a){z.l(a,M,Yf,"viewPoint");this.cA.assign(a)}); z.defineProperty(Yf,{ha:"documentPoint"},function(){return this.jz},function(a){z.l(a,M,Yf,"documentPoint");this.jz.assign(a)});Yf.prototype.getMultiTouchViewPoint=Yf.prototype.Ix=function(a,b){var c=this.g;if(null===c)return b;Zf(c,this.event,a,b);return b};Yf.prototype.getMultiTouchDocumentPoint=function(a,b){var c=this.g;if(null===c)return b;Zf(c,this.event,a,b);b.assign(c.NB(b));return b};z.defineProperty(Yf,{Ld:"modifiers"},function(){return this.pw},function(a){this.pw=a}); z.defineProperty(Yf,{button:"button"},function(){return this.vv},function(a){this.vv=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(Yf,{buttons:"buttons"},function(){return this.wv},function(a){this.wv=a});z.defineProperty(Yf,{key:"key"},function(){return this.ew},function(a){this.ew=a});z.defineProperty(Yf,{gm:"down"},function(){return this.Lv},function(a){this.Lv=a}); z.defineProperty(Yf,{up:"up"},function(){return this.Xw},function(a){this.Xw=a});z.defineProperty(Yf,{Qe:"clickCount"},function(){return this.xv},function(a){this.xv=a});z.defineProperty(Yf,{fm:"delta"},function(){return this.Iv},function(a){this.Iv=a});z.defineProperty(Yf,{vu:"isMultiTouch"},function(){return this.bw},function(a){this.bw=a});z.defineProperty(Yf,{Nc:"handled"},function(){return this.Sv},function(a){this.Sv=a}); @@ -323,31 +323,31 @@ z.defineProperty(Yf,{eh:"targetDiagram"},function(){return this.Uw},function(a){ z.defineProperty(Yf,{alt:"alt"},function(){return 0!==(this.Ld&2)},function(a){this.Ld=a?this.Ld|2:this.Ld&-3});z.defineProperty(Yf,{Du:"meta"},function(){return 0!==(this.Ld&8)},function(a){this.Ld=a?this.Ld|8:this.Ld&-9});z.defineProperty(Yf,{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(Yf,{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(Yf,{aM:"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 $f(){this.ca=null;this.Xb="";this.yw=this.Sw=null;this.mr=!1}z.ka("DiagramEvent",$f);$f.prototype.copy=function(){var a=new $f;a.ca=this.ca;a.Xb=this.Xb;a.Sw=this.Sw;a.yw=this.yw;a.mr=this.mr;return a};$f.prototype.toString=function(){var a="*"+this.name;null!==this.HB&&(a+=":"+this.HB.toString());null!==this.lB&&(a+="("+this.lB.toString()+")");return a};z.defineProperty($f,{g:"diagram"},function(){return this.ca},function(a){this.ca=a}); -z.defineProperty($f,{name:"name"},function(){return this.Xb},function(a){this.Xb=a});z.defineProperty($f,{HB:"subject"},function(){return this.Sw},function(a){this.Sw=a});z.defineProperty($f,{lB:"parameter"},function(){return this.yw},function(a){this.yw=a});z.defineProperty($f,{cancel:"cancel"},function(){return this.mr},function(a){this.mr!==a&&z.Nn("DiagramEvent.cancel","2.0");this.mr=a});function ag(){this.nr=bg;this.jn=this.ow="";this.Ks=this.Ls=this.Os=this.Ps=this.Ns=this.ca=this.ye=null} -z.ka("ChangedEvent",ag);var rg;ag.Transaction=rg=z.s(ag,"Transaction",-1);var bg;ag.Property=bg=z.s(ag,"Property",0);var sg;ag.Insert=sg=z.s(ag,"Insert",1);var tg;ag.Remove=tg=z.s(ag,"Remove",2);ag.prototype.clear=ag.prototype.clear=function(){this.Ks=this.Ls=this.Os=this.Ps=this.Ns=this.ca=this.ye=null}; -ag.prototype.copy=function(){var a=new ag;a.nr=this.nr;a.ow=this.ow;a.jn=this.jn;a.ye=this.ye;a.ca=this.ca;a.Ns=this.Ns;var b=this.Ps;a.Ps=z.Xa(b)&&"function"===typeof b.V?b.V():b;b=this.Os;a.Os=z.Xa(b)&&"function"===typeof b.V?b.V():b;b=this.Ls;a.Ls=z.Xa(b)&&"function"===typeof b.V?b.V():b;b=this.Ks;a.Ks=z.Xa(b)&&"function"===typeof b.V?b.V():b;return a};ag.prototype.qc=function(a){a.Pe===ag?this.Kc=a:z.Tj(this,a)}; +z.defineProperty($f,{name:"name"},function(){return this.Xb},function(a){this.Xb=a});z.defineProperty($f,{HB:"subject"},function(){return this.Sw},function(a){this.Sw=a});z.defineProperty($f,{lB:"parameter"},function(){return this.yw},function(a){this.yw=a});z.defineProperty($f,{cancel:"cancel"},function(){return this.mr},function(a){this.mr!==a&&z.Nn("DiagramEvent.cancel","2.0");this.mr=a});function ag(){this.nr=bg;this.jn=this.ow="";this.Ks=this.Ls=this.Os=this.Ps=this.Ns=this.ca=this.xe=null} +z.ka("ChangedEvent",ag);var rg;ag.Transaction=rg=z.s(ag,"Transaction",-1);var bg;ag.Property=bg=z.s(ag,"Property",0);var sg;ag.Insert=sg=z.s(ag,"Insert",1);var tg;ag.Remove=tg=z.s(ag,"Remove",2);ag.prototype.clear=ag.prototype.clear=function(){this.Ks=this.Ls=this.Os=this.Ps=this.Ns=this.ca=this.xe=null}; +ag.prototype.copy=function(){var a=new ag;a.nr=this.nr;a.ow=this.ow;a.jn=this.jn;a.xe=this.xe;a.ca=this.ca;a.Ns=this.Ns;var b=this.Ps;a.Ps=z.Xa(b)&&"function"===typeof b.V?b.V():b;b=this.Os;a.Os=z.Xa(b)&&"function"===typeof b.V?b.V():b;b=this.Ls;a.Ls=z.Xa(b)&&"function"===typeof b.V?b.V():b;b=this.Ks;a.Ks=z.Xa(b)&&"function"===typeof b.V?b.V():b;return a};ag.prototype.pc=function(a){a.Pe===ag?this.Kc=a:z.Tj(this,a)}; ag.prototype.toString=function(){var a="",a=this.Kc===rg?a+"* ":this.Kc===bg?a+(null!==this.ia?"!m":"!d"):a+((null!==this.ia?"!m":"!d")+this.Kc);this.propertyName&&"string"===typeof this.propertyName&&(a+=" "+this.propertyName);this.Af&&this.Af!==this.propertyName&&(a+=" "+this.Af);a+=": ";this.Kc===rg?null!==this.oldValue&&(a+=" "+this.oldValue):(null!==this.object&&(a+=ka(this.object)),null!==this.oldValue&&(a+=" old: "+ka(this.oldValue)),null!==this.Oj&&(a+=" "+this.Oj),null!==this.newValue&& (a+=" new: "+ka(this.newValue)),null!==this.Mj&&(a+=" "+this.Mj));return a};ag.prototype.getValue=ag.prototype.qa=function(a){return a?this.oldValue:this.newValue};ag.prototype.getParam=function(a){return a?this.Oj:this.Mj};ag.prototype.canUndo=ag.prototype.canUndo=function(){return null!==this.ia||null!==this.g?!0:!1};ag.prototype.undo=ag.prototype.undo=function(){this.canUndo()&&(null!==this.ia?this.ia.En(this,!0):null!==this.g&&this.g.En(this,!0))}; -ag.prototype.canRedo=ag.prototype.canRedo=function(){return null!==this.ia||null!==this.g?!0:!1};ag.prototype.redo=ag.prototype.redo=function(){this.canRedo()&&(null!==this.ia?this.ia.En(this,!1):null!==this.g&&this.g.En(this,!1))};z.defineProperty(ag,{ia:"model"},function(){return this.ye},function(a){this.ye=a});z.defineProperty(ag,{g:"diagram"},function(){return this.ca},function(a){this.ca=a}); +ag.prototype.canRedo=ag.prototype.canRedo=function(){return null!==this.ia||null!==this.g?!0:!1};ag.prototype.redo=ag.prototype.redo=function(){this.canRedo()&&(null!==this.ia?this.ia.En(this,!1):null!==this.g&&this.g.En(this,!1))};z.defineProperty(ag,{ia:"model"},function(){return this.xe},function(a){this.xe=a});z.defineProperty(ag,{g:"diagram"},function(){return this.ca},function(a){this.ca=a}); z.defineProperty(ag,{Kc:"change"},function(){return this.nr},function(a){u&&z.Ca(a,ag,ag,"change");this.nr=a});z.defineProperty(ag,{Af:"modelChange"},function(){return this.ow},function(a){u&&z.h(a,"string",ag,"modelChange");this.ow=a});z.defineProperty(ag,{propertyName:"propertyName"},function(){return this.jn},function(a){u&&"string"!==typeof a&&z.h(a,"function",ag,"propertyName");this.jn=a}); z.w(ag,{NF:"isTransactionFinished"},function(){return this.nr===rg&&("CommittedTransaction"===this.jn||"FinishedUndo"===this.jn||"FinishedRedo"===this.jn)});z.defineProperty(ag,{object:"object"},function(){return this.Ns},function(a){this.Ns=a});z.defineProperty(ag,{oldValue:"oldValue"},function(){return this.Ps},function(a){this.Ps=a});z.defineProperty(ag,{Oj:"oldParam"},function(){return this.Os},function(a){this.Os=a}); z.defineProperty(ag,{newValue:"newValue"},function(){return this.Ls},function(a){this.Ls=a});z.defineProperty(ag,{Mj:"newParam"},function(){return this.Ks},function(a){this.Ks=a}); -function L(a){1d)return;z.Rg(a.ze,d)}dh(a,"nodeDataArray",tg,"nodeDataArray",a,b,null,d,null);a.dv(b)} +L.prototype.makeNodeDataKeyUnique=L.prototype.ZA=function(a){if(null!==a){var b=this.uk;if(""!==b){var c=this.Cb(a);if(void 0===c||this.Gc.contains(c)){var d=this.sp;if(null!==d&&(c=d(this,a),void 0!==c&&null!==c&&!this.Gc.contains(c))){z.Ua(a,b,c);return}if("string"===typeof c){for(d=2;this.Gc.contains(c+d);)d++;z.Ua(a,b,c+d)}else if(void 0===c||"number"===typeof c){for(d=-this.Gc.count-1;this.Gc.contains(d);)d--;z.Ua(a,b,d)}else z.k("Model.getKeyForNodeData returned something other than a string or a number: "+ +c)}}}};L.prototype.addNodeData=L.prototype.Tl=function(a){null!==a&&(z.oq(a),this.ke(a)||gh(this,a,!0))};function gh(a,b,c){var d=a.Cb(b);if(void 0===d||a.Gc.qa(d)!==b)a.ZA(b),d=a.Cb(b),void 0===d?z.k("Model.makeNodeDataKeyUnique failed on "+b+". Data not added to Model."):(a.Gc.add(d,b),d=null,c&&(d=z.bb(a.ye),z.Hh(a.ye,d,b)),dh(a,"nodeDataArray",sg,"nodeDataArray",a,null,b,null,d),a.Kq(b),a.Jq(b))} +L.prototype.addNodeDataCollection=function(a){if(z.isArray(a))for(var b=z.bb(a),c=0;cd)return;z.Rg(a.ye,d)}dh(a,"nodeDataArray",tg,"nodeDataArray",a,b,null,d,null);a.dv(b)} L.prototype.removeNodeDataCollection=function(a){if(z.isArray(a))for(var b=z.bb(a),c=0;cb&&(b=z.bb(a));z.Hh(a,b,c);dh(this,"",sg,"",a,null,c,null,b)}; -L.prototype.removeArrayItem=L.prototype.hG=function(a,b){void 0===b&&(b=-1);u&&(z.Tt(a,L,"removeArrayItem:arr"),z.p(b,L,"removeArrayItem:idx"));a===this.ze&&z.k("Model.removeArrayItem should not be called on the Model.nodeDataArray");-1===b&&(b=z.bb(a)-1);var c=z.Ma(a,b);z.Rg(a,b);dh(this,"",tg,"",a,c,null,b,null)};z.defineProperty(L,{jo:"nodeCategoryProperty"},function(){return this.dn},function(a){var b=this.dn;b!==a&&(eh(a,L,"nodeCategoryProperty"),this.dn=a,this.i("nodeCategoryProperty",b,a))}); +L.prototype.setDataProperty=function(a,b,c){u&&(z.h(a,"object",L,"setDataProperty:data"),z.h(b,"string",L,"setDataProperty:propname"),""===b&&z.k("Model.setDataProperty: property name must not be an empty string when setting "+a+" to "+c));if(this.ke(a))if(b===this.Nj)this.yy(a,c);else{if(b===this.jo){this.xy(a,c);return}}else!oh&&a instanceof O&&(oh=!0,z.trace('Model.setDataProperty is modifying a GraphObject, "'+a.toString()+'"'),z.trace(" Is that really your intent?"));var d=z.vb(a,b);d!==c&& +(z.Ua(a,b,c),this.mB(a,b,d,c))};L.prototype.addArrayItem=function(a,b){this.PA(a,-1,b)};L.prototype.insertArrayItem=L.prototype.PA=function(a,b,c){u&&(z.Tt(a,L,"insertArrayItem:arr"),z.p(b,L,"insertArrayItem:idx"));a===this.ye&&z.k("Model.insertArrayItem or Model.addArrayItem should not be called on the Model.nodeDataArray");0>b&&(b=z.bb(a));z.Hh(a,b,c);dh(this,"",sg,"",a,null,c,null,b)}; +L.prototype.removeArrayItem=L.prototype.hG=function(a,b){void 0===b&&(b=-1);u&&(z.Tt(a,L,"removeArrayItem:arr"),z.p(b,L,"removeArrayItem:idx"));a===this.ye&&z.k("Model.removeArrayItem should not be called on the Model.nodeDataArray");-1===b&&(b=z.bb(a)-1);var c=z.Ma(a,b);z.Rg(a,b);dh(this,"",tg,"",a,c,null,b,null)};z.defineProperty(L,{jo:"nodeCategoryProperty"},function(){return this.dn},function(a){var b=this.dn;b!==a&&(eh(a,L,"nodeCategoryProperty"),this.dn=a,this.i("nodeCategoryProperty",b,a))}); L.prototype.getCategoryForNodeData=L.prototype.IA=function(a){if(null===a)return"";var b=this.dn;if(""===b)return"";b=z.vb(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""}; -L.prototype.setCategoryForNodeData=L.prototype.xy=function(a,b){z.h(b,"string",L,"setCategoryForNodeData:cat");if(null!==a){var c=this.dn;if(""!==c)if(this.le(a)){var d=z.vb(a,c);void 0===d&&(d="");d!==b&&(z.Ua(a,c,b),dh(this,"nodeCategory",bg,c,a,d,b))}else z.Ua(a,c,b)}}; -function X(a,b){2z.Yl(d,a.newValue)&&z.Hh(d,c,a.newValue));return}}else if(a.Kc=== tg){c=a.Oj;if("linkDataArray"===a.Af){d=a.oldValue;z.Xa(d)&&"number"===typeof c&&(e=this.eg(d),b?(this.hi.add(d),z.Ma(this.bf,c)!==d&&z.Hh(this.bf,c,d),void 0!==e&&this.qd.add(e,d)):(this.hi.remove(d),z.Ma(this.bf,c)===d&&z.Rg(this.bf,c),void 0!==e&&this.qd.remove(e)));return}if("linkLabelKeys"===a.Af){d=this.Rk(a.object);z.isArray(d)&&"number"===typeof c&&(b?0>z.Yl(d,a.newValue)&&z.Hh(d,c,a.newValue):(c=z.Yl(d,a.newValue),0<=c&&z.Rg(d,c)));return}}L.prototype.En.call(this,a,b)}; z.defineProperty(X,{jA:"archetypeNodeData"},function(){return this.ol},function(a){var b=this.ol;b!==a&&(null!==a&&z.l(a,Object,X,"archetypeNodeData"),this.ol=a,this.i("archetypeNodeData",b,a))});X.prototype.ho=function(a){if(void 0!==a){var b=this.ol;if(null!==b){var c=this.Ge(a);null===c&&(c=this.copyNodeData(b),z.Ua(c,this.uk,a),this.Tl(c))}return a}}; @@ -417,252 +417,252 @@ X.prototype.getLabelKeysForLinkData=X.prototype.Rk=function(a){if(null===a)retur X.prototype.setLabelKeysForLinkData=X.prototype.FG=function(a,b){z.Tt(b,X,"setLabelKeysForLinkData:arr");if(null!==a){var c=this.Gg;if(""!==c)if(this.Kh(a)){var d=z.vb(a,c);void 0===d&&(d=z.bl);if(d!==b){for(var e=z.bb(d),g=0;ge||(z.Rg(d,e),this.Kh(a)&&(kh(this,b,a),dh(this,"linkLabelKeys",tg,c,a,b,null,e,null)))}else void 0!==d&&z.k(c+" property is not an Array; cannot removeLabelKeyforLinkData: "+a)}}}; -z.defineProperty(X,{Xg:"linkDataArray"},function(){return this.bf},function(a){var b=this.bf;if(b!==a){z.Tt(a,X,"linkDataArray");this.qd.clear();for(var c=z.bb(a),d=0;dd)return;z.Rg(a.bf,d)}dh(a,"linkDataArray",tg,"linkDataArray",a,b,null,d,null);c=a.mm(b);kh(a,c,b);c=a.nm(b);kh(a,c,b);d=a.Rk(b);if(z.isArray(d))for(var e=z.bb(d),g=0;ga.Vh&&z.trace("Ending transaction without having started a transaction: "+c);var d=1===a.Vh;d&&b&&a.sd("CommittingTransaction",c,a.zj);var e=0;if(0a.Ej;e--)g=d.fa(e),null!==g&&g.clear(), +ug.prototype.clear=ug.prototype.clear=function(){var a=this.history;a.Za();for(var b=a.count-1;0<=b;b--){var c=a.fa(b);null!==c&&c.clear()}a.clear();this.rh=-1;a.freeze();this.bj=!1;this.Hv=null;this.Ql=0;this.xh.Za();this.xh.clear();this.xh.freeze();this.wp.clear()};ug.prototype.addModel=ug.prototype.LH=function(a){this.Lz.add(a)};ug.prototype.removeModel=ug.prototype.ZJ=function(a){this.Lz.remove(a)}; +ug.prototype.startTransaction=ug.prototype.$b=function(a){void 0===a&&(a="");null===a&&(a="");if(this.lb)return!1;!0===this.uz&&(this.uz=!1,this.Ql++,this.sd("StartingFirstTransaction",a,this.zj),0a.Vh&&z.trace("Ending transaction without having started a transaction: "+c);var d=1===a.Vh;d&&b&&a.sd("CommittingTransaction",c,a.zj);var e=0;if(0a.Ej;e--)g=d.fa(e),null!==g&&g.clear(), d.md(e),a.Fz=!0;e=a.UF;0===e&&(e=1);0=e&&(g=d.fa(0),null!==g&&g.clear(),d.md(0),a.rh--);d.add(b);a.rh++;d.freeze();g=b}a.sd("CommittedTransaction",c,g)}else{a.bj=!0;try{a.isEnabled&&null!==g&&(g.ru=!0,g.undo())}finally{a.sd("RolledBackTransaction",c,g),a.bj=!1}null!==g&&g.clear()}a.Hv=null;return!0}if(a.isEnabled&&!b&&null!==g){a=e;c=g.bg;for(b=c.count-1;b>=a;b--)d=c.fa(b),null!==d&&d.undo(),c.Za(),c.md(b);c.freeze()}return!1} ug.prototype.canUndo=ug.prototype.canUndo=function(){if(!this.isEnabled||0=this.Vh&&!this.uz&&(a=a.g,null!==a&&!1===a.Zn||z.trace("Change not within a transaction: "+c.toString()))}}; ug.prototype.skipsEvent=function(a){if(null===a||0>a.Kc.value)return!0;a=a.object;if(a instanceof O){if(a=a.layer,null!==a&&a.Wc)return!0}else if(a instanceof ah&&a.Wc)return!0;return!1};z.w(ug,{GJ:"models"},function(){return this.Lz.j});z.defineProperty(ug,{isEnabled:"isEnabled"},function(){return this.pf},function(a){this.pf=a});z.w(ug,{YG:"transactionToUndo"},function(){return 0<=this.Ej&&this.Ej<=this.history.count-1?this.history.fa(this.Ej):null}); z.w(ug,{XG:"transactionToRedo"},function(){return this.Ejb.Oh||(b.scale=a))};ta.prototype.canDecreaseZoom=function(a){void 0===a&&(a=1/this.Fy);z.p(a,ta,"canDecreaseZoom:factor");var b=this.g;if(null===b||b.Zl!==Qh)return!1;a*=b.scale;return ab.Oh?!1:b.lx}; ta.prototype.increaseZoom=function(a){void 0===a&&(a=this.Fy);z.p(a,ta,"increaseZoom:factor");var b=this.g;null!==b&&b.Zl===Qh&&(a*=b.scale,ab.Oh||(b.scale=a))};ta.prototype.canIncreaseZoom=function(a){void 0===a&&(a=this.Fy);z.p(a,ta,"canIncreaseZoom:factor");var b=this.g;if(null===b||b.Zl!==Qh)return!1;a*=b.scale;return ab.Oh?!1:b.lx};ta.prototype.resetZoom=function(a){void 0===a&&(a=this.vx);z.p(a,ta,"resetZoom:newscale");var b=this.g;null===b||ab.Oh||(b.scale=a)}; ta.prototype.canResetZoom=function(a){void 0===a&&(a=this.vx);z.p(a,ta,"canResetZoom:newscale");var b=this.g;return null===b||ab.Oh?!1:b.lx};ta.prototype.zoomToFit=function(){var a=this.g;if(null!==a){var b=a.scale,c=a.position;b===this.fA&&!isNaN(this.Gz)&&a.fd.O(this.eA)?(a.scale=this.Gz,a.position=this.lD,this.fA=NaN,this.eA=Ed):(this.Gz=b,this.lD=c.copy(),a.zoomToFit(),this.fA=a.scale,this.eA=a.fd.copy())}};ta.prototype.canZoomToFit=function(){var a=this.g;return null===a?!1:a.lx}; -ta.prototype.scrollToPart=function(a){void 0===a&&(a=null);null!==a&&z.l(a,D,ta,"part");var b=this.g;if(null!==b){if(null===a){try{null!==this.qj&&(this.qj.next()?a=this.qj.value:this.qj=null)}catch(c){this.qj=null}null===a&&(0e||Math.abs(b.y-a.y)>d};z.w(bh,{g:"diagram"},function(){return this.ca});z.defineProperty(bh,{name:"name"},function(){return this.Xb},function(a){z.h(a,"string",bh,"name");this.Xb=a}); +bh.prototype.cancelWaitAfter=function(){-1!==this.$w&&z.clearTimeout(this.$w);this.$w=-1};bh.prototype.doWaitAfter=function(){};bh.prototype.findToolHandleAt=function(a,b){var c=this.g;if(null===c)return null;c=c.He(a,function(a){for(;null!==a&&!(a.Q instanceof ea);)a=a.Q;return a});return null===c?null:c.Q.rc===b?c:null}; +bh.prototype.isBeyondDragSize=function(a,b){var c=this.g;if(null===c)return!1;void 0===a&&(a=c.Mc.se);void 0===b&&(b=c.U.se);var d=c.ib.sI,e=d.width,d=d.height;c.Mc.Hj&&(e+=6,d+=6);return Math.abs(b.x-a.x)>e||Math.abs(b.y-a.y)>d};z.w(bh,{g:"diagram"},function(){return this.ca});z.defineProperty(bh,{name:"name"},function(){return this.Xb},function(a){z.h(a,"string",bh,"name");this.Xb=a}); z.defineProperty(bh,{isEnabled:"isEnabled"},function(){return this.pf},function(a){z.h(a,"boolean",bh,"isEnabled");this.pf=a});z.defineProperty(bh,{ya:"isActive"},function(){return this.ZC},function(a){z.h(a,"boolean",bh,"isActive");this.ZC=a});z.defineProperty(bh,{Qf:"transactionResult"},function(){return this.jE},function(a){null!==a&&z.h(a,"string",bh,"transactionResult");this.jE=a}); -function Ph(){0e&&(e=k),l>g&&(g=l))}}Infinity===c?b.m(0,0,0,0):b.m(c,d,e-c,g-d)} -function Hi(a,b){if(null===a.kc){var c=a.g;if(!(null===c||b&&(c.kb||c.Hf))&&null!==a.fc){var d=c.sa;d.isEnabled&&d.JF?null!==d.zj&&0e&&(e=k),l>g&&(g=l))}}Infinity===c?b.m(0,0,0,0):b.m(c,d,e-c,g-d)} +function Hi(a,b){if(null===a.kc){var c=a.g;if(!(null===c||b&&(c.kb||c.Hf))&&null!==a.fc){var d=c.sa;d.isEnabled&&d.JF?null!==d.zj&&0c.ua)){var d=a.g;if(null!==d&&!d.kb&&(d=a.oj,null!==d)){var e=null,g=null;null===c.aa&&(e=Ri(a,c.n(0),!1),null!==e&&(g=e.ba));var h=null,k=null;null===c.ea&&(h=Ri(a,c.n(c.ua-1),!0),null!==h&&(k=h.ba));d.isValidLink(g,e,k,h)?b?(c.eq=c.n(0),c.fq=c.n(c.ua-1),c.Sj=!1,c.aa=g,null!==e&&(c.dg=e.vd),c.ea=k,null!==h&&(c.ih=h.vd)):Si(d,g,e,k,h):Si(d,null,null,null,null)}}}Ph.prototype.doDragOver=function(){}; +function Oi(a,b){var c=a.td;if(null!==c&&!(2>c.ua)){var d=a.g;if(null!==d&&!d.kb&&(d=a.oj,null!==d)){var e=null,g=null;null===c.aa&&(e=Ri(a,c.n(0),!1),null!==e&&(g=e.ba));var h=null,k=null;null===c.ea&&(h=Ri(a,c.n(c.ua-1),!0),null!==h&&(k=h.ba));d.isValidLink(g,e,k,h)?b?(c.dq=c.n(0),c.eq=c.n(c.ua-1),c.Sj=!1,c.aa=g,null!==e&&(c.dg=e.vd),c.ea=k,null!==h&&(c.ih=h.vd)):Si(d,g,e,k,h):Si(d,null,null,null,null)}}}Ph.prototype.doDragOver=function(){}; function Ti(a,b){var c=a.g;if(null!==c){a.Bj&&Oi(a,!0);zi(a);var d=Pi(c,b,null,function(b){return!Mi(a,b)}),e=c.U;e.We=d;if(null!==d){e.Nc=!1;for(var g=d;null!==g;){var h=g.bB;if(null!==h&&(h(e,g),e.Nc))break;g=Qi(g)}}else h=c.bB,null!==h&&h(e);if(a.ya||null!==Yh){for(e=(a.kc||a.fc).j;e.next();)g=e.key,g instanceof E&&g.Jd.each(function(a){a.Sj=!1});a.doDropOnto(b,d);if(a.ya||null!==Yh){d=z.Of();for(e=c.selection.j;e.next();)g=e.value,g instanceof E&&Ui(c,g.getAvoidableRect(d));z.Mb(d)}}}} -Ph.prototype.doDropOnto=function(){};Ph.prototype.doMouseMove=function(){if(this.ya){var a=this.g;if(null!==a&&null!==this.Ln&&null!==this.fc){var b=!1,c=!1;this.mayCopy()?(b=!0,a.lc="copy",Hi(this,!1),this.xt(this.kc),Ii(this,this.kc,!1),this.Ep(this.kc)):this.mayMove()?(c=!0,a.lc="default",Ci(this),Ii(this,this.fc,!0)):this.mayDragOut()?(a.lc="no-drop",Hi(this,!1),Ii(this,this.kc,!1)):Ci(this);Ni(this,a.U.ha,c,b)}}}; -Ph.prototype.doMouseUp=function(){if(this.ya){var a=this.g;if(null!==a){var b=!1,c=this.mayCopy();c&&null!==this.kc?(Ci(this),Hi(this,!0),this.xt(this.kc),Ii(this,this.kc,!1),this.Ep(this.kc),null!==this.kc&&a.AG(this.kc.Uj())):(b=!0,Ci(this),this.mayMove()&&(Ii(this,this.fc,!0),Ni(this,a.U.ha,!0,!1)));this.Kr=!0;Ti(this,a.U.ha);if(this.ya){this.kc=null;if(b&&null!==this.fc)for(b=this.fc.j;b.next();){var d=b.key;d instanceof E&&(d=d.Qa,null===d||null===d.placeholder||this.fc.contains(d)||d.placeholder.K())}a.Bc(); -this.Ep(this.fc);this.Qf=c?"Copy":"Move";a.Ka(c?"SelectionCopied":"SelectionMoved",a.selection)}this.stopTool()}}};Ph.prototype.mayCopy=function(){if(!this.EF)return!1;var a=this.g;if(null===a||a.kb||a.Hf||!a.Wp||!a.Ik||(z.Uk?!a.U.alt:!a.U.control))return!1;for(a=a.selection.j;a.next();){var b=a.value;if(b.re()&&b.canCopy())return!0}return null!==this.td&&this.Bj&&this.td.canCopy()?!0:!1}; -Ph.prototype.mayDragOut=function(){if(!this.EF)return!1;var a=this.g;if(null===a||!a.Qt||!a.Ik||a.Wl)return!1;for(a=a.selection.j;a.next();){var b=a.value;if(b.re()&&b.canCopy())return!0}return null!==this.td&&this.Bj&&this.td.canCopy()?!0:!1};Ph.prototype.mayMove=function(){var a=this.g;if(null===a||a.kb||!a.Wl)return!1;for(a=a.selection.j;a.next();){var b=a.value;if(b.re()&&b.canMove())return!0}return null!==this.td&&this.Bj&&this.td.canMove()?!0:!1};var Ai=new J(Ph),Yh=null,Zh=null; -Ph.prototype.getDraggingSource=function(){return Yh};Ph.prototype.mayDragIn=function(){var a=this.g;if(null===a||!a.wE||a.kb||a.Hf||!a.Wp)return!1;var b=Yh;return null===b||null===b.g||b.g.ia.dm!==a.ia.dm?!1:!0};Ph.prototype.doSimulatedDragEnter=function(){if(this.mayDragIn()){var a=this.g;a.Ya.Ii();Vi(a);a=Yh;null!==a&&null!==a.g&&(a.g.lc="copy")}};Ph.prototype.doSimulatedDragLeave=function(){var a=Yh;null!==a&&a.doSimulatedDragOut();this.doCancel()}; +Ph.prototype.doDropOnto=function(){};Ph.prototype.doMouseMove=function(){if(this.ya){var a=this.g;if(null!==a&&null!==this.Ln&&null!==this.fc){var b=!1,c=!1;this.mayCopy()?(b=!0,a.lc="copy",Hi(this,!1),this.xt(this.kc),Ii(this,this.kc,!1),this.Dp(this.kc)):this.mayMove()?(c=!0,a.lc="default",Ci(this),Ii(this,this.fc,!0)):this.mayDragOut()?(a.lc="no-drop",Hi(this,!1),Ii(this,this.kc,!1)):Ci(this);Ni(this,a.U.ha,c,b)}}}; +Ph.prototype.doMouseUp=function(){if(this.ya){var a=this.g;if(null!==a){var b=!1,c=this.mayCopy();c&&null!==this.kc?(Ci(this),Hi(this,!0),this.xt(this.kc),Ii(this,this.kc,!1),this.Dp(this.kc),null!==this.kc&&a.AG(this.kc.Uj())):(b=!0,Ci(this),this.mayMove()&&(Ii(this,this.fc,!0),Ni(this,a.U.ha,!0,!1)));this.Kr=!0;Ti(this,a.U.ha);if(this.ya){this.kc=null;if(b&&null!==this.fc)for(b=this.fc.j;b.next();){var d=b.key;d instanceof E&&(d=d.Qa,null===d||null===d.placeholder||this.fc.contains(d)||d.placeholder.K())}a.Bc(); +this.Dp(this.fc);this.Qf=c?"Copy":"Move";a.Ka(c?"SelectionCopied":"SelectionMoved",a.selection)}this.stopTool()}}};Ph.prototype.mayCopy=function(){if(!this.EF)return!1;var a=this.g;if(null===a||a.kb||a.Hf||!a.Vp||!a.Ik||(z.Uk?!a.U.alt:!a.U.control))return!1;for(a=a.selection.j;a.next();){var b=a.value;if(b.qe()&&b.canCopy())return!0}return null!==this.td&&this.Bj&&this.td.canCopy()?!0:!1}; +Ph.prototype.mayDragOut=function(){if(!this.EF)return!1;var a=this.g;if(null===a||!a.Qt||!a.Ik||a.Wl)return!1;for(a=a.selection.j;a.next();){var b=a.value;if(b.qe()&&b.canCopy())return!0}return null!==this.td&&this.Bj&&this.td.canCopy()?!0:!1};Ph.prototype.mayMove=function(){var a=this.g;if(null===a||a.kb||!a.Wl)return!1;for(a=a.selection.j;a.next();){var b=a.value;if(b.qe()&&b.canMove())return!0}return null!==this.td&&this.Bj&&this.td.canMove()?!0:!1};var Ai=new J(Ph),Yh=null,Zh=null; +Ph.prototype.getDraggingSource=function(){return Yh};Ph.prototype.mayDragIn=function(){var a=this.g;if(null===a||!a.wE||a.kb||a.Hf||!a.Vp)return!1;var b=Yh;return null===b||null===b.g||b.g.ia.dm!==a.ia.dm?!1:!0};Ph.prototype.doSimulatedDragEnter=function(){if(this.mayDragIn()){var a=this.g;a.Ya.Ii();Vi(a);a=Yh;null!==a&&null!==a.g&&(a.g.lc="copy")}};Ph.prototype.doSimulatedDragLeave=function(){var a=Yh;null!==a&&a.doSimulatedDragOut();this.doCancel()}; Ph.prototype.doSimulatedDragOver=function(){var a=this.g;if(null!==a){var b=Yh;null!==b&&null!==b.fc&&this.mayDragIn()&&(a.lc="copy",Wi(this,b.fc.Uj(),!1),Ii(this,this.kc,!1),Ni(this,a.U.ha,!1,!0))}}; Ph.prototype.doSimulatedDrop=function(){var a=this.g;if(null!==a){var b=Yh;if(null!==b){var c=b.g;b.Kr=!0;Ci(this);this.mayDragIn()&&(this.$b("Drop"),Wi(this,b.fc.Uj(),!0),Ii(this,this.kc,!1),null!==this.kc&&a.AG(this.kc.Uj()),Ti(this,a.U.ha),a.Bc(),b=a.selection,null!==this.kc?this.Qf="ExternalCopy":b=new K(D),this.kc=null,a.doFocus(),a.Ka("ExternalObjectsDropped",b,c),this.al())}}}; -function Wi(a,b,c){if(null===a.kc){var d=a.g;if(null!==d&&!d.kb&&!d.Hf){d.Eb=!c;d.cr=!c;a.$k=d.U.ha;d=d.dq(b,d,!0);c=z.Of();Gi(b,c);var e=c.x+c.width/2,g=c.y+c.height/2;z.Mb(c);var h=a.Qw;c=new oa(D);var k=z.P();for(b=b.j;b.next();){var l=b.value;if(l.re()&&l.canCopy()){var m=l.location,l=d.qa(l);k.m(h.x-(e-m.x),h.y-(g-m.y));l.location=k;l.kf();c.add(l,wi(k))}}z.A(k);for(d=d.j;d.next();)e=d.value,e instanceof H&&e.canCopy()&&c.add(e,wi());a.kc=c;Xh(a,c.Uj());null!==a.td&&(c=a.td,d=c.no,c.um(a.$k.x- +function Wi(a,b,c){if(null===a.kc){var d=a.g;if(null!==d&&!d.kb&&!d.Hf){d.Eb=!c;d.cr=!c;a.$k=d.U.ha;d=d.cq(b,d,!0);c=z.Of();Gi(b,c);var e=c.x+c.width/2,g=c.y+c.height/2;z.Mb(c);var h=a.Qw;c=new oa(D);var k=z.P();for(b=b.j;b.next();){var l=b.value;if(l.qe()&&l.canCopy()){var m=l.location,l=d.qa(l);k.m(h.x-(e-m.x),h.y-(g-m.y));l.location=k;l.kf();c.add(l,wi(k))}}z.A(k);for(d=d.j;d.next();)e=d.value,e instanceof H&&e.canCopy()&&c.add(e,wi());a.kc=c;Xh(a,c.Uj());null!==a.td&&(c=a.td,d=c.mo,c.um(a.$k.x- (d.x+d.width/2),a.$k.y-(d.y+d.height/2)))}}}Ph.prototype.doSimulatedDragOut=function(){var a=this.g;null!==a&&(this.mayCopy()||this.mayMove()?a.lc="":a.lc="no-drop")};function xi(a){this.point=a;this.GG=Dd}z.ka("DraggingInfo",xi);function Ji(a,b,c){this.Yc=a;this.info=b;this.RI=c} function Xi(){0=d&&(d=.1);for(var e=this,g=b.On(c,d,function(b){return e.findValidLinkablePort(b,a)},null,!0),d=Infinity,b=null,g=g.j;g.next();){var h=g.value,k=h.ba;if(k instanceof E){var l=h.cb(mc,z.P()),m=c.x-l.x,n=c.y-l.y;z.A(l);l=m*m+n*n;lc){if(null!==this.vc&&a===this.Yg&&b===this.Zg)return!0;var d=b.vd;null===d&&(d="");if(a.Dx(d).count>=c)return!1}return!0}; -Xi.prototype.isValidTo=function(a,b){if(null===a||null===b)return this.xq;if(null!==this.g&&this.g.fb===this&&(null!==a.layer&&!a.layer.Rt||!0!==b.QG))return!1;var c=b.yK;if(Infinity>c){if(null!==this.vc&&a===this.$g&&b===this.ah)return!0;var d=b.vd;null===d&&(d="");if(a.Ug(d).count>=c)return!1}return!0};Xi.prototype.isInSameNode=function(a,b){if(null===a||null===b)return!1;if(a===b)return!0;var c=a.ba,d=b.ba;return null!==c&&c===d}; +c instanceof E&&(null===c.layer||c.layer.Rt))?b:null};Xi.prototype.isValidFrom=function(a,b){if(null===a||null===b)return this.wq;if(null!==this.g&&this.g.fb===this&&(null!==a.layer&&!a.layer.Rt||!0!==b.kF))return!1;var c=b.GA;if(Infinity>c){if(null!==this.uc&&a===this.Yg&&b===this.Zg)return!0;var d=b.vd;null===d&&(d="");if(a.Dx(d).count>=c)return!1}return!0}; +Xi.prototype.isValidTo=function(a,b){if(null===a||null===b)return this.wq;if(null!==this.g&&this.g.fb===this&&(null!==a.layer&&!a.layer.Rt||!0!==b.QG))return!1;var c=b.yK;if(Infinity>c){if(null!==this.uc&&a===this.$g&&b===this.ah)return!0;var d=b.vd;null===d&&(d="");if(a.Ug(d).count>=c)return!1}return!0};Xi.prototype.isInSameNode=function(a,b){if(null===a||null===b)return!1;if(a===b)return!0;var c=a.ba,d=b.ba;return null!==c&&c===d}; Xi.prototype.isLinked=function(a,b){if(null===a||null===b)return!1;var c=a.ba;if(!(c instanceof E))return!1;var d=a.vd;null===d&&(d="");var e=b.ba;if(!(e instanceof E))return!1;var g=b.vd;null===g&&(g="");for(e=e.Ug(g);e.next();)if(g=e.value,g.aa===c&&g.dg===d)return!0;return!1}; -Xi.prototype.isValidLink=function(a,b,c,d){if(!this.isValidFrom(a,b)||!this.isValidTo(c,d)||!(null===b||null===d||(b.GI&&d.xK||!this.isInSameNode(b,d))&&(b.FI&&d.wK||!this.isLinked(b,d)))||null!==this.vc&&(null!==a&&this.isLabelDependentOnLink(a,this.vc)||null!==c&&this.isLabelDependentOnLink(c,this.vc))||null!==a&&null!==c&&(null===a.data&&null!==c.data||null!==a.data&&null===c.data)||!this.isValidCycle(a,c,this.vc))return!1;if(null!==a){var e=a.Zx;if(null!==e&&!e(a,b,c,d,this.vc))return!1}if(null!== -c&&(e=c.Zx,null!==e&&!e(a,b,c,d,this.vc)))return!1;e=this.Zx;return null!==e?e(a,b,c,d,this.vc):!0};Xi.prototype.isLabelDependentOnLink=function(a,b){if(null===a)return!1;var c=a.Cc;if(null===c)return!1;if(c===b)return!0;var d=new K(E);d.add(a);return Yi(this,c,b,d)};function Yi(a,b,c,d){if(b===c)return!0;var e=b.aa;if(null!==e&&e.xf&&(d.add(e),Yi(a,e.Cc,c,d)))return!0;b=b.ea;return null!==b&&b.xf&&(d.add(b),Yi(a,b.Cc,c,d))?!0:!1} -Xi.prototype.isValidCycle=function(a,b,c){void 0===c&&(c=null);if(null===a||null===b)return this.xq;var d=null!==this.g?this.g.EK:Zi;if(d!==Zi){if(d===$i){if(null!==c&&!c.Xc)return!0;for(d=b.Jd;d.next();){var e=d.value;if(e!==c&&e.Xc&&e.ea===b)return!1}return!aj(this,a,b,c,!0)}if(d===bj){if(null!==c&&!c.Xc)return!0;for(d=a.Jd;d.next();)if(e=d.value,e!==c&&e.Xc&&e.aa===a)return!1;return!aj(this,a,b,c,!0)}if(d===cj)return a===b?a=!0:(d=new K(E),d.add(b),a=dj(this,d,a,b,c)),!a;if(d===ej)return!aj(this, +Xi.prototype.isValidLink=function(a,b,c,d){if(!this.isValidFrom(a,b)||!this.isValidTo(c,d)||!(null===b||null===d||(b.GI&&d.xK||!this.isInSameNode(b,d))&&(b.FI&&d.wK||!this.isLinked(b,d)))||null!==this.uc&&(null!==a&&this.isLabelDependentOnLink(a,this.uc)||null!==c&&this.isLabelDependentOnLink(c,this.uc))||null!==a&&null!==c&&(null===a.data&&null!==c.data||null!==a.data&&null===c.data)||!this.isValidCycle(a,c,this.uc))return!1;if(null!==a){var e=a.Zx;if(null!==e&&!e(a,b,c,d,this.uc))return!1}if(null!== +c&&(e=c.Zx,null!==e&&!e(a,b,c,d,this.uc)))return!1;e=this.Zx;return null!==e?e(a,b,c,d,this.uc):!0};Xi.prototype.isLabelDependentOnLink=function(a,b){if(null===a)return!1;var c=a.Cc;if(null===c)return!1;if(c===b)return!0;var d=new K(E);d.add(a);return Yi(this,c,b,d)};function Yi(a,b,c,d){if(b===c)return!0;var e=b.aa;if(null!==e&&e.xf&&(d.add(e),Yi(a,e.Cc,c,d)))return!0;b=b.ea;return null!==b&&b.xf&&(d.add(b),Yi(a,b.Cc,c,d))?!0:!1} +Xi.prototype.isValidCycle=function(a,b,c){void 0===c&&(c=null);if(null===a||null===b)return this.wq;var d=null!==this.g?this.g.EK:Zi;if(d!==Zi){if(d===$i){if(null!==c&&!c.Xc)return!0;for(d=b.Jd;d.next();){var e=d.value;if(e!==c&&e.Xc&&e.ea===b)return!1}return!aj(this,a,b,c,!0)}if(d===bj){if(null!==c&&!c.Xc)return!0;for(d=a.Jd;d.next();)if(e=d.value,e!==c&&e.Xc&&e.aa===a)return!1;return!aj(this,a,b,c,!0)}if(d===cj)return a===b?a=!0:(d=new K(E),d.add(b),a=dj(this,d,a,b,c)),!a;if(d===ej)return!aj(this, a,b,c,!1);if(d===fj)return a===b?a=!0:(d=new K(E),d.add(b),a=gj(this,d,a,b,c)),!a}return!0};function aj(a,b,c,d,e){if(b===c)return!0;if(null===b||null===c)return!1;for(var g=b.Jd;g.next();){var h=g.value;if(h!==d&&(!e||h.Xc)&&h.ea===b&&(h=h.aa,h!==b&&aj(a,h,c,d,e)))return!0}return!1}function dj(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.Jd;g.next();){var h=g.value;if(h!==e&&h.ea===c&&(h=h.aa,h!==c&&dj(a,b,h,d,e)))return!0}return!1} function gj(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.Jd;g.next();){var h=g.value;if(h!==e){var k=h.aa,h=h.ea,k=k===c?h:k;if(k!==c&&gj(a,b,k,d,e))return!0}}return!1}z.defineProperty(Xi,{Zx:"linkValidation"},function(){return this.Gl},function(a){null!==a&&z.h(a,"function",Xi,"linkValidation");this.Gl=a});z.defineProperty(Xi,{ly:"portTargeted"},function(){return this.KD},function(a){null!==a&&z.h(a,"function",Xi,"portTargeted");this.KD=a}); function ua(){0b.fu+1&&cb.fu+1&&c=c.x)d=0>=c.y?d+225:1<=c.y?d+135:d+180;else if(1<=c.x)0>=c.y?d+=315:1<=c.y&&(d+=45);else if(0>=c.y)d+=270;else if(1<=c.y)d+=90;else break a;0>d?d+=360:360<=d&&(d-=360);a.cursor=22.5>d?"e-resize":67.5>d?"se-resize":112.5>d?"s-resize":157.5>d?"sw-resize":202.5>d?"w-resize":247.5>d?"nw-resize":292.5>d?"n-resize":337.5>d? +Qj.prototype.updateResizeHandles=function(a,b){if(null!==a)if(!a.alignment.hd()&&("pointer"===a.cursor||0=c.x)d=0>=c.y?d+225:1<=c.y?d+135:d+180;else if(1<=c.x)0>=c.y?d+=315:1<=c.y&&(d+=45);else if(0>=c.y)d+=270;else if(1<=c.y)d+=90;else break a;0>d?d+=360:360<=d&&(d-=360);a.cursor=22.5>d?"e-resize":67.5>d?"se-resize":112.5>d?"s-resize":157.5>d?"sw-resize":202.5>d?"w-resize":247.5>d?"nw-resize":292.5>d?"n-resize":337.5>d? "ne-resize":"e-resize"}else if(a instanceof I)for(c=a.elements;c.next();)this.updateResizeHandles(c.value,b)};z.defineProperty(Qj,{mu:"handleArchetype"},function(){return this.vl},function(a){null!==a&&z.l(a,O,Qj,"handleArchetype");this.vl=a});z.w(Qj,{handle:"handle"},function(){return this.oc});z.defineProperty(Qj,{Ab:"adornedObject"},function(){return this.Rc},function(a){null!==a&&z.l(a,O,Qj,"adornedObject");this.Rc=a}); Qj.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.g;return null!==a&&!a.kb&&a.St&&a.U.left?null!==this.findToolHandleAt(a.Mc.ha,this.name):!1}; -Qj.prototype.doActivate=function(){var a=this.g;null!==a&&(this.oc=this.findToolHandleAt(a.Mc.ha,this.name),null!==this.oc&&(this.Rc=this.oc.ba.Ab,this.Ap.set(this.Ab.cb(this.handle.alignment.cG())),this.ED.set(this.Rc.ba.location),this.zD.set(this.Rc.Da),this.pz=this.computeCellSize(),this.rz=this.computeMinSize(),this.qz=this.computeMaxSize(),a.lf=!0,this.wD=a.Ya.isEnabled,a.Ya.isEnabled=!1,this.$b(this.name),this.ya=!0))}; +Qj.prototype.doActivate=function(){var a=this.g;null!==a&&(this.oc=this.findToolHandleAt(a.Mc.ha,this.name),null!==this.oc&&(this.Rc=this.oc.ba.Ab,this.zp.set(this.Ab.cb(this.handle.alignment.cG())),this.ED.set(this.Rc.ba.location),this.zD.set(this.Rc.Da),this.pz=this.computeCellSize(),this.rz=this.computeMinSize(),this.qz=this.computeMaxSize(),a.lf=!0,this.wD=a.Ya.isEnabled,a.Ya.isEnabled=!1,this.$b(this.name),this.ya=!0))}; Qj.prototype.doDeactivate=function(){var a=this.g;null!==a&&(this.al(),this.Rc=this.oc=null,this.ya=a.lf=!1,a.Ya.isEnabled=this.wD)};Qj.prototype.doCancel=function(){null!==this.Ab&&(this.Ab.Da=this.dG,this.Ab.ba.location=this.OJ);this.stopTool()};Qj.prototype.doMouseMove=function(){var a=this.g;if(this.ya&&null!==a){var b=this.rz,c=this.qz,d=this.pz,e=this.Ab.mF(a.U.ha,z.P()),g=this.computeReshape(),b=this.computeResize(e,this.handle.alignment,b,c,d,g);this.resize(b);a.hg();z.A(e)}}; Qj.prototype.doMouseUp=function(){var a=this.g;if(this.ya&&null!==a){var b=this.rz,c=this.qz,d=this.pz,e=this.Ab.mF(a.U.ha,z.P()),g=this.computeReshape(),b=this.computeResize(e,this.handle.alignment,b,c,d,g);this.resize(b);z.A(e);a.Bc();this.Qf=this.name;a.Ka("PartResized",this.Ab,this.dG)}this.stopTool()}; -Qj.prototype.resize=function(a){if(null!==this.g){var b=this.Ab,c=b.ba;b.Da=a.size;c.kf();a=this.Ab.cb(this.handle.alignment.cG());c instanceof F?(a=c.position.copy().so(a).add(this.Ap),c.move(a)):c.location=c.location.copy().so(a).add(this.Ap)}}; -Qj.prototype.computeResize=function(a,b,c,d,e,g){b.ae()&&(b=mc);var h=this.Ab.Ja,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.P();tb(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=p&&(p=1);0>=q&&(q=1);p=q/p}q=z.P();tb(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)));z.A(q);return a};Qj.prototype.computeReshape=function(){var a=Tj;this.Ab instanceof Y&&(a=Uj(this.Ab));return!(a===Vj||a===Wj||null!==this.g&&this.g.U.shift)};Qj.prototype.computeMinSize=function(){var a=this.Ab.ig.copy(),b=this.ig;!isNaN(b.width)&&b.width>a.width&&(a.width=b.width);!isNaN(b.height)&&b.height>a.height&&(a.height=b.height);return a}; Qj.prototype.computeMaxSize=function(){var a=this.Ab.mf.copy(),b=this.mf;!isNaN(b.width)&&b.widtha&&(a+=360));var b=Math.min(Math.abs(this.oK),180),c=Math.min(Math.abs(this.nK),b/2);(null===this.g||!this.g.U.shift)&&0b-c&&(a=(Math.floor(a/b)+1)*b));360<=a?a-=360:0>a&&(a+=360);return a};z.defineProperty(Xj,{oK:"snapAngleMultiple"},function(){return this.RD},function(a){z.h(a,"number",Xj,"snapAngleMultiple");this.RD=a}); z.defineProperty(Xj,{nK:"snapAngleEpsilon"},function(){return this.QD},function(a){z.h(a,"number",Xj,"snapAngleEpsilon");this.QD=a});z.w(Xj,{hM:"originalAngle"},function(){return this.tw});function Zj(){0e.right&&(c.x-=d.width+5);c.xe.bottom&&(c.y-=d.height+5);c.ya.U.Qe?!1:!0};kk.prototype.doStart=function(){this.ya||null===this.hh||this.doActivate()}; -kk.prototype.doActivate=function(){if(!this.ya){var a=this.g;if(null!==a){var b=this.hh;null===b&&(b=a.He(a.U.ha,function(a){return a instanceof pa?a:null}));if(null!==b&&(this.hh=b,null!==b.ba)){this.ya=!0;this.qb=tk;var c=this.nI;null!==b.PG&&(c=b.PG);this.Ak=this.hh.copy();var d=new w(this.hh.cb(hc),this.hh.cb(qc));a.gK(d);if(c instanceof bk)c.show(b,a,this);else{c.style.position="absolute";c.style.zIndex=100;c.textEditingTool=this;if("function"===typeof c.onActivate)c.onActivate();"function"=== +kk.prototype.doActivate=function(){if(!this.ya){var a=this.g;if(null!==a){var b=this.hh;null===b&&(b=a.He(a.U.ha,function(a){return a instanceof pa?a:null}));if(null!==b&&(this.hh=b,null!==b.ba)){this.ya=!0;this.qb=tk;var c=this.nI;null!==b.PG&&(c=b.PG);this.Ak=this.hh.copy();var d=new w(this.hh.cb(hc),this.hh.cb(qc));a.gK(d);if(c instanceof bk)c.show(b,a,this);else{c.style.position="absolute";c.style.zIndex="100";c.textEditingTool=this;if("function"===typeof c.onActivate)c.onActivate();"function"=== typeof c.focus&&c.focus();"function"===typeof c.select&&this.wy&&(c.select(),c.setSelectionRange(0,9999));a.Aj.appendChild(c)}this.Nk=c}}}};kk.prototype.doCancel=function(){null!==this.Ll&&(this.Nk.style.border=this.Ll,this.Ll=null);this.stopTool()};kk.prototype.doMouseUp=function(){!this.ya&&this.canStart()&&this.doActivate()};kk.prototype.doMouseDown=function(){this.ya&&this.acceptText(pk)}; kk.prototype.acceptText=function(a){switch(a){case pk:if(this.qb===xk)"function"===typeof this.Nk.focus&&this.Nk.focus();else if(this.qb===tk||this.qb===wk||this.qb===uk)this.qb=vk,Ak(this);break;case ok:case rk:case qk:if(rk===a&&!0===this.$z.Tx)break;if(this.qb===tk||this.qb===wk||this.qb===uk)this.qb=vk,Ak(this)}}; function Ak(a){var b=a.hh,c=a.g,d=a.Nk;if(null!==b&&null!==d){var e=b.text,g=d.value,h="";d instanceof bk?null!==d.RB&&(h=d.RB()):h="function"===typeof g?g():g;a.isValidText(b,e,h)?(a.$b(a.name),a.qb=xk,d instanceof bk?d.show(b,c,a):null!==a.Ll&&(d.style.border=a.Ll,a.Ll=null),a.Qf=a.name,b.text=h,null!==b.OG&&b.OG(b,e,h),null!==c&&c.Ka("TextEdited",b,e),a.al(),a.stopTool(),null!==c&&c.doFocus()):(a.qb=wk,null!==b.BA&&b.BA(a,e,h),d instanceof bk?d.show(b,c,a):(null===a.Ll&&(a.Ll=d.style.border,d.style.border= "3px solid red"),"function"===typeof d.focus&&d.focus()))}}kk.prototype.doDeactivate=function(){var a=this.g;if(null!==a){this.qb=mk;this.hh=null;if(null!==this.Nk){var b=this.Nk;if(b instanceof bk)b.Wn(a,this);else{if("function"===typeof b.onDeactivate)b.onDeactivate();null!==b&&a.Aj.removeChild(b)}}this.ya=!1}};kk.prototype.doFocus=function(){u&&z.Nn("TextEditingTool.doFocus","2.0");yk(this)};kk.prototype.doBlur=function(){u&&z.Nn("TextEditingTool.doBlur","2.0");zk(this)}; function yk(a){if(null!==a.Nk){var b=a.ez;a.qb===tk&&(a.qb=uk);"function"===typeof b.select&&a.wy&&(b.select(),b.setSelectionRange(0,9999))}}function zk(a){if(null!==a.Nk){var b=a.ez;"function"===typeof b.focus&&b.focus();"function"===typeof b.select&&a.wy&&(b.select(),b.setSelectionRange(0,9999))}}kk.prototype.isValidText=function(a,b,c){z.l(a,pa,kk,"isValidText:textblock");var d=this.JB;if(null!==d&&!d(a,b,c))return!1;d=a.JB;return null===d||d(a,b,c)?!0:!1}; z.defineProperty(kk,{JB:"textValidation"},function(){return this.Ol},function(a){null!==a&&z.h(a,"function",kk,"textValidation");this.Ol=a});z.defineProperty(kk,{XF:"minimumEditorScale"},function(){return this.rD},function(a){null!==a&&z.h(a,"number",kk,"minimumEditorScale");this.rD=a});z.defineProperty(kk,{wy:"selectsTextOnActivate"},function(){return this.OD},function(a){null!==a&&z.h(a,"boolean",kk,"selectsTextOnActivate");this.OD=a}); -z.defineProperty(kk,{state:"state"},function(){return this.qb},function(a){this.qb!==a&&(z.Ca(a,kk,kk,"starting"),this.qb=a)});kk.prototype.measureTemporaryTextBlock=kk.prototype.BJ=function(a){var b=this.Ak;b.text=a;Bk(b,this.hh.qp,Infinity);return b};function Kh(){bh.call(this);this.name="ToolManager";this.oH=new J(bh);this.pH=new J(bh);this.qH=new J(bh);this.WC=this.XC=850;this.KC=(new Fa(2,2)).Na();this.gE=5E3;this.vD=Wh;this.UC=Ck;this.Gv=this.yC=null;this.xn=-1}z.Ta(Kh,bh); +z.defineProperty(kk,{state:"state"},function(){return this.qb},function(a){this.qb!==a&&(z.Ca(a,kk,kk,"starting"),this.qb=a)});kk.prototype.measureTemporaryTextBlock=kk.prototype.BJ=function(a){var b=this.Ak;b.text=a;Bk(b,this.hh.pp,Infinity);return b};function Kh(){bh.call(this);this.name="ToolManager";this.oH=new J(bh);this.pH=new J(bh);this.qH=new J(bh);this.WC=this.XC=850;this.KC=(new Fa(2,2)).Na();this.gE=5E3;this.vD=Wh;this.UC=Ck;this.Gv=this.yC=null;this.xn=-1}z.Ta(Kh,bh); z.ka("ToolManager",Kh);var Wh;Kh.WheelScroll=Wh=z.s(Kh,"WheelScroll",0);var Vh;Kh.WheelZoom=Vh=z.s(Kh,"WheelZoom",1);Kh.WheelNone=z.s(Kh,"WheelNone",2);var Ck;Kh.GestureZoom=Ck=z.s(Kh,"GestureZoom",3);var Dk;Kh.GestureCancel=Dk=z.s(Kh,"GestureCancel",4);var Ek;Kh.GestureNone=Ek=z.s(Kh,"GestureNone",5);z.defineProperty(Kh,{Gu:"mouseWheelBehavior"},function(){return this.vD},function(a){z.Ca(a,Kh,Kh,"mouseWheelBehavior");this.vD=a}); -z.defineProperty(Kh,{oq:"gestureBehavior"},function(){return this.UC},function(a){z.Ca(a,Kh,Kh,"gestureBehavior");this.UC=a});Kh.prototype.initializeStandardTools=function(){this.FH=new ak;this.gG=new $h;this.tJ=new pj;this.tG=new Qj;this.dK=new Xj;this.TF=new ua;this.Ee=new Ph;this.rI=new ik;this.PJ=new jk;this.pA=new dk;this.IB=new kk;this.WH=new wa;this.XH=new Zj}; +z.defineProperty(Kh,{nq:"gestureBehavior"},function(){return this.UC},function(a){z.Ca(a,Kh,Kh,"gestureBehavior");this.UC=a});Kh.prototype.initializeStandardTools=function(){this.FH=new ak;this.gG=new $h;this.tJ=new pj;this.tG=new Qj;this.dK=new Xj;this.TF=new ua;this.Ee=new Ph;this.rI=new ik;this.PJ=new jk;this.pA=new dk;this.IB=new kk;this.WH=new wa;this.XH=new Zj}; Kh.prototype.updateAdornments=function(a){var b=this.cm;if(b instanceof ea&&this.Gv===a){var c=b.Ab;(null!==a?c.ba===a:null===c)?this.showToolTip(b,c):this.hideToolTip()}}; -Kh.prototype.doMouseDown=function(){var a=this.g;if(null!==a){var b=a.U;b.Hj&&this.oq===Dk&&(b.bubbles=!1);if(b.vu){this.cancelWaitAfter();if(this.oq===Ek){b.bubbles=!0;return}if(this.oq===Dk)return;if(a.fb.canStartMultiTouch()){a.fb.standardPinchZoomStart();return}}var c=a.sa;c.lA&&0!==c.Vh&&z.trace("WARNING: In ToolManager.doMouseDown: UndoManager.transactionLevel is not zero");for(var c=this.nf.length,d=0;de.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.w(nh,{eL:"animationReasons"},function(){return this.rv}); -nh.prototype.canStart=function(){return!0};nh.prototype.prepareAutomaticAnimation=nh.prototype.lo=function(a){this.pf&&(this.kk||this.ca.Zn)&&(this.rv.add(a),this.canStart(a)&&(this.jk&&this.Ii(),this.yc=!0))};function Vk(a){if(a.pf&&(a.rv.clear(),a.yc))if(!a.Do)a.yc=!1;else if(0===a.Co){var b=+new Date;a.Co=b;requestAnimationFrame(function(){if(!1!==a.yc&&!a.jk&&a.Co===b){var c=a.ca;c.Dj("temporaryPixelRatio")&&(c.zk=1);al(c);a.yc=!1;c.Ka("AnimationStarting");bl(a,b)}})}} +function nh(){this.zC=Hk;this.Fr=this.Gr=this.ca=null;this.Bo=this.Hr=this.Ir=0;this.Co=this.yc=this.kp=this.jk=!1;this.kk=this.pf=!0;this.Ev=this.Dv=this.uC=null;this.tC=0;this.Fv=null;this.rv=new K("string");this.mz=600;this.uH=new M(0,0);this.iC=this.hC=this.kE=!1;this.en=new oa(O,Ik)}z.ka("AnimationManager",nh);nh.prototype.$c=function(a){this.ca=a};function Hk(a,b,c,d){a/=d/2;return 1>a?c/2*a*a+b:-c/2*(--a*(a-2)-1)+b}z.w(nh,{eL:"animationReasons"},function(){return this.rv}); +nh.prototype.canStart=function(){return!0};nh.prototype.prepareAutomaticAnimation=nh.prototype.ko=function(a){this.pf&&(this.kk||this.ca.Zn)&&(this.rv.add(a),this.canStart(a)&&(this.jk&&this.Ii(),this.yc=!0))};function Vk(a){if(a.pf&&(a.rv.clear(),a.yc))if(!a.Co)a.yc=!1;else if(0===a.Bo){var b=+new Date;a.Bo=b;requestAnimationFrame(function(){if(!1!==a.yc&&!a.jk&&a.Bo===b){var c=a.ca;c.Dj("temporaryPixelRatio")&&(c.zk=1);al(c);a.yc=!1;c.Ka("AnimationStarting");bl(a,b)}})}} function cl(a,b,c,d,e,g){if(a.yc&&(u&&z.l(b,O,nh,"addPropToAnimation:obj"),!("position"===c&&d.O(e)||b instanceof D&&!b.CF))){var h=a.en;if(h.contains(b)){var h=h.qa(b),k=h.start,l=h.end;void 0===k[c]&&(k[c]=dl(d));h.sx&&void 0!==l[c]?h.cu[c]=dl(e):(g||(h.cu[c]=dl(e)),l[c]=dl(e));g&&0===c.indexOf("position:")&&(h.cu.location=dl(b.location))}else k=new na,l=new na,k[c]=dl(d),l[c]=dl(e),d=l,e=k.position,e instanceof M&&!e.F()&&a.rv.contains("Expand SubGraph")&&e.assign(d.position),k=new Ik(k,l,g),g&& -0===c.indexOf("position:")&&(k.cu.location=dl(b.location)),h.add(b,k);a.Do=!0}}function dl(a){return a instanceof M?a.copy():a instanceof Fa?a.copy():a} -function bl(a,b){var c;function d(){if(!1!==g.jk&&g.Co===b){var a=+new Date,c=a>s?m:a-r;el(g);fl(g,e,q,h,c,m);g.Dv&&g.Dv();Vi(e);gl(g);a>s?hl(g):requestAnimationFrame(d)}}void 0===c&&(c=new na);var e=a.ca;if(null!==e){a.jk=!0;var g=a,h=c.GL||a.zC,k=c.fM||null,l=c.gM||null,m=c.duration||a.mz,n=a.uH;for(c=a.en.j;c.next();){var p=c.value.start.position;p instanceof M&&(p.F()||p.assign(n))}a.uC=h;a.Dv=k;a.Ev=l;a.tC=m;a.Fv=a.en;var q=a.Fv;for(c=q.j;c.next();)k=c.value.end,k["position:placeholder"]&&(l= -k["position:placeholder"],n=l.cb(hc),n.x+=l.padding.left,n.y+=l.padding.top,k["position:placeholder"]=n);el(a);fl(a,e,q,h,0,m);Vi(a.ca);gl(a);var r=+new Date,s=r+m;g.Co===b&&requestAnimationFrame(function(){d()})}} +0===c.indexOf("position:")&&(k.cu.location=dl(b.location)),h.add(b,k);a.Co=!0}}function dl(a){return a instanceof M?a.copy():a instanceof Fa?a.copy():a} +function bl(a,b){var c;function d(){if(!1!==g.jk&&g.Bo===b){var a=+new Date,c=a>s?m:a-r;el(g);fl(g,e,q,h,c,m);g.Dv&&g.Dv();Vi(e);gl(g);a>s?hl(g):requestAnimationFrame(d)}}void 0===c&&(c=new na);var e=a.ca;if(null!==e){a.jk=!0;var g=a,h=c.GL||a.zC,k=c.fM||null,l=c.gM||null,m=c.duration||a.mz,n=a.uH;for(c=a.en.j;c.next();){var p=c.value.start.position;p instanceof M&&(p.F()||p.assign(n))}a.uC=h;a.Dv=k;a.Ev=l;a.tC=m;a.Fv=a.en;var q=a.Fv;for(c=q.j;c.next();)k=c.value.end,k["position:placeholder"]&&(l= +k["position:placeholder"],n=l.cb(hc),n.x+=l.padding.left,n.y+=l.padding.top,k["position:placeholder"]=n);el(a);fl(a,e,q,h,0,m);Vi(a.ca);gl(a);var r=+new Date,s=r+m;g.Bo===b&&requestAnimationFrame(function(){d()})}} var il={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.zy(d(e,b.x,c.x-b.x,g),d(e,b.y,c.y-b.y,g)):a.position=new M(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.Z,k=c.Z;c=k.x+k.width/2-h.width/2;h=k.y+k.height/2-h.height/2;e!==g?a.zy(d(e,b.x,c-b.x,g),d(e,b.y,h-b.y,g)):a.position=new M(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.zy(d(e,b.x,c.x-b.x,g),d(e,b.y,c.y-b.y,g)): -a.position=new M(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 el(a){if(!a.lp){var b=a.ca;a.kE=b.Eb;a.hC=b.Ve;a.iC=b.Zu;b.Eb=!0;b.Ve=!0;b.Zu=!0;a.lp=!0}}function gl(a){var b=a.ca;b.Eb=a.kE;b.Ve=a.hC;b.Zu=a.iC;a.lp=!1} +a.position=new M(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 el(a){if(!a.kp){var b=a.ca;a.kE=b.Eb;a.hC=b.Ve;a.iC=b.Zu;b.Eb=!0;b.Ve=!0;b.Zu=!0;a.kp=!0}}function gl(a){var b=a.ca;b.Eb=a.kE;b.Ve=a.hC;b.Zu=a.iC;a.kp=!1} function fl(a,b,c,d,e,g){for(c=c.j;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!==il[m])il[m](h,l[m],k[m],d,e,g)}d=b.RA;b.RA=!0;m=a.zC;0!==a.Ir&&0!==a.Hr&&(c=a.Ir,b.Rb=m(e,c,a.Hr-c,g));null!==a.Gr&&null!==a.Fr&&(c=a.Gr,a=a.Fr,b.ub=new M(m(e,c.x,a.x-c.x,g),m(e,c.y,a.y-c.y,g)));b.RA=d} -nh.prototype.stopAnimation=nh.prototype.Ii=function(){!0===this.yc&&(this.yc=!1,this.Do&&this.ca.Te());this.jk&&this.pf&&hl(this)}; -function hl(a){a.jk=!1;a.Do=!1;el(a);for(var b=a.ca,c=a.uC,d=a.tC,e=a.Fv.j;e.next();){var g=e.key,h=e.value,k=h.start,l=h.end,m=h.cu,n;for(n in l)if(void 0!==il[n]){var p=n;!h.sx||"position:node"!==p&&"position:placeholder"!==p||(p="position");il[p](g,k[n],void 0!==m[n]?m[n]:h.sx?k[n]:l[n],c,d,d)}h.sx&&void 0!==m.location&&(g.location=m.location);h.ny&&g.Kd(!1)}for(c=a.ca.links;c.next();)d=c.value,null!==d.Gp&&(d.points=d.Gp,d.Gp=null);b.$x.clear();b.zk=null;b.Bc();b.ra();b.hg();jl(b);gl(a);a.Ev&& -a.Ev();a.Co=0;a.Fv=null;a.Ev=null;a.Dv=null;a.Gr=null;a.Fr=null;a.Ir=0;a.Hr=0;a.en=new oa(O,Ik);b.Ka("AnimationFinished");b.Te()}function kl(a,b,c){var d=b.Z,e=c.Z,g=null;c instanceof F&&(g=c.placeholder);null!==g?(d=g.cb(hc),d.x+=g.padding.left,d.y+=g.padding.top,cl(a,b,"position",d,b.position,!1)):cl(a,b,"position",new M(e.x+e.width/2-d.width/2,e.y+e.height/2-d.height/2),b.position,!1);cl(a,b,"scale",.01,b.scale,!1);if(b instanceof F)for(b=b.Oc;b.next();)g=b.value,g instanceof E&&kl(a,g,c)} -function ll(a,b,c){if(b.isVisible()){var d=null;c instanceof F&&(d=c.placeholder);null!==d?cl(a,b,"position:placeholder",b.position,d,!0):cl(a,b,"position:node",b.position,c,!0);cl(a,b,"scale",b.scale,.01,!0);a.yc&&(d=a.en,d.contains(b)&&(d.qa(b).ny=!0));if(b instanceof F)for(b=b.Oc;b.next();)d=b.value,d instanceof E&&ll(a,d,c)}}function ml(a,b,c){a.yc&&(null===a.Gr&&b.F()&&null===a.Fr&&(a.Gr=b.copy()),a.Fr=c.copy(),a.Do=!0)} -function nl(a,b,c){a.yc&&a.ca.Zn&&(0===a.Ir&&0===a.Hr&&(a.Ir=b),a.Hr=c,a.Do=!0)}z.defineProperty(nh,{isEnabled:"isEnabled"},function(){return this.pf},function(a){z.h(a,"boolean",nh,"isEnabled");this.pf=a});z.defineProperty(nh,{duration:"duration"},function(){return this.mz},function(a){z.h(a,"number",nh,"duration");1>a&&z.wa(a,">= 1",nh,"duration");this.mz=a});z.w(nh,{wf:"isAnimating"},function(){return this.jk});z.w(nh,{jJ:"isTicking"},function(){return this.lp}); -z.defineProperty(nh,{KF:"isInitial"},function(){return this.kk},function(a){z.h(a,"boolean",nh,"isInitial");this.kk=a});function Ik(a,b,c){this.start=a;this.end=b;this.cu=new na;this.sx=c;this.ny=!1}function ah(){0a&&z.wa(a,">= 1",nh,"duration");this.mz=a});z.w(nh,{wf:"isAnimating"},function(){return this.jk});z.w(nh,{jJ:"isTicking"},function(){return this.kp}); +z.defineProperty(nh,{KF:"isInitial"},function(){return this.kk},function(a){z.h(a,"boolean",nh,"isInitial");this.kk=a});function Ik(a,b,c){this.start=a;this.end=b;this.cu=new na;this.sx=c;this.ny=!1}function ah(){0=a)return b;for(var c=0,d=0,e=0,g=0,h=0,k=this.pb.j;k.next();){var l=k.value;l instanceof F?e++:l instanceof E?d++:l instanceof H?g++:l instanceof ea?h++:c++}k="";0=d.count)a=d.count;else if(d.fa(a)===b)return-1;d.Zd(a,b);b.ou(c);d=this.g;null!==d&&(c?d.ra():d.rq(b));tl(this,a,b);return a}; +f.Mf=function(a,b){if(this.visible){var c;c=void 0===b?a.yb:b;for(var d=this.pb.o,e=d.length,g=0;g=d.count)a=d.count;else if(d.fa(a)===b)return-1;d.Yd(a,b);b.ou(c);d=this.g;null!==d&&(c?d.ra():d.qq(b));tl(this,a,b);return a}; f.vf=function(a,b,c){if(!c&&b.layer!==this&&null!==b.layer)return b.layer.vf(a,b,c);var d=this.pb;if(0>a||a>=d.length){if(a=d.indexOf(b),0>a)return-1}else if(d.fa(a)!==b&&(a=d.indexOf(b),0>a))return-1;b.pu(c);d.md(a);d=this.g;null!==d&&(c?d.ra():d.vf(b));b.fw=null;return a}; -function tl(a,b,c){b=ul(a,b,c);if(c instanceof F&&null!==c&&isNaN(c.yo)){if(0!==c.Oc.count){for(var d=-1,e=a.pb.o,g=e.length,h=0;hd&&k.Qa===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.fa(g).yo;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.md(b);a.Zd(g,c);return g}for(h=NaN;0<=--g&&(h=a.fa(g).yo,isNaN(h)););}else if(!isNaN(l)&&l=d){k--;if(k===b)break;a.md(b);a.Zd(k,c);return k}for(l=NaN;++kd&&k.Qa===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.fa(g).xo;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.md(b);a.Yd(g,c);return g}for(h=NaN;0<=--g&&(h=a.fa(g).xo,isNaN(h)););}else if(!isNaN(l)&&l=d){k--;if(k===b)break;a.md(b);a.Yd(k,c);return k}for(l=NaN;++ka||1e[1]&&(z.trace("Warning: You have entered a license key for GoJS version 1.7 or later, but this library is version "+ +function C(a){function b(){window.document.removeEventListener("DOMContentLoaded",b,!1);vl(c)}1e[1]&&(z.trace("Warning: You have entered a license key for GoJS version 1.7 or later, but this library is version "+ z.vfo+". This license key will do nothing until you upgrade to GoJS 1.7 or later."),z.xx.licenseKey=!0);this.Dl=1;this.Wm=0;this.mD=new M;this.iE=500;this.tv=new M;this.qt=null;this.cd=this.Al=!1}z.ka("Diagram",C); -C.prototype.clear=C.prototype.clear=function(){var a=null;null!==this.Cd&&(a=this.Cd.ba);this.ia.clear();for(var b=this.bc.length,c=0;c=a)return b;for(var c=this.bc.j;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.ca instanceof C?b.ca:null}; z.defineProperty(C,{Aj:"div"},function(){return this.Tb},function(a){null!==a&&z.l(a,HTMLDivElement,C,"div");if(this.Tb!==a){wl=[];var b=this.Tb;null!==b?(b.ca=void 0,b.innerHTML="",null!==this.Lb&&(this.Lb.removeEventListener("touchstart",this.WG,!1),this.Lb.removeEventListener("touchmove",this.VG,!1),this.Lb.removeEventListener("touchend",this.UG,!1),this.Lb.Fd.ca=null),b=this.ib,null!==b&&(b.nf.each(function(a){a.cancelWaitAfter()}),b.jg.each(function(a){a.cancelWaitAfter()}),b.kg.each(function(a){a.cancelWaitAfter()})), -b.cancelWaitAfter(),this.fb.doCancel(),this.pd=this.Lb=null,window.removeEventListener("resize",this.dH,!1),window.removeEventListener("mousemove",this.Cq,!0),window.removeEventListener("mousedown",this.Bq,!0),window.removeEventListener("mouseup",this.Eq,!0),window.removeEventListener("mousewheel",this.Qh,!0),window.removeEventListener("DOMMouseScroll",this.Qh,!0),window.removeEventListener("mouseout",this.Dq,!0)):this.sh=!1;this.Tb=null;if(null!==a){if(b=a.ca)b.Aj=null;Il(this,a);this.Iq()}}}); -function Ll(a){var b=a.Lb;b.addEventListener("touchstart",a.WG,!1);b.addEventListener("touchmove",a.VG,!1);b.addEventListener("touchend",a.UG,!1);b.addEventListener("mousemove",a.Cq,!1);b.addEventListener("mousedown",a.Bq,!1);b.addEventListener("mouseup",a.Eq,!1);b.addEventListener("mousewheel",a.Qh,!1);b.addEventListener("DOMMouseScroll",a.Qh,!1);b.addEventListener("mouseout",a.Dq,!1);b.addEventListener("keydown",a.mJ,!1);b.addEventListener("keyup",a.nJ,!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.ib.oq===Dk&&b.preventDefault()},!1);b.addEventListener("pointerdown",a.QJ,!1);b.addEventListener("pointermove",a.SJ,!1);b.addEventListener("pointerleave",a.RJ,!1);window.addEventListener("resize",a.dH,!1)}C.prototype.computePixelRatio=function(){return null!==this.zk?this.zk:this.rH};C.prototype.doMouseMove=function(){this.fb.doMouseMove()}; +b.cancelWaitAfter(),this.fb.doCancel(),this.pd=this.Lb=null,window.removeEventListener("resize",this.dH,!1),window.removeEventListener("mousemove",this.Bq,!0),window.removeEventListener("mousedown",this.Aq,!0),window.removeEventListener("mouseup",this.Dq,!0),window.removeEventListener("mousewheel",this.Qh,!0),window.removeEventListener("DOMMouseScroll",this.Qh,!0),window.removeEventListener("mouseout",this.Cq,!0)):this.sh=!1;this.Tb=null;if(null!==a){if(b=a.ca)b.Aj=null;Il(this,a);this.Iq()}}}); +function Ll(a){var b=a.Lb;b.addEventListener("touchstart",a.WG,!1);b.addEventListener("touchmove",a.VG,!1);b.addEventListener("touchend",a.UG,!1);b.addEventListener("mousemove",a.Bq,!1);b.addEventListener("mousedown",a.Aq,!1);b.addEventListener("mouseup",a.Dq,!1);b.addEventListener("mousewheel",a.Qh,!1);b.addEventListener("DOMMouseScroll",a.Qh,!1);b.addEventListener("mouseout",a.Cq,!1);b.addEventListener("keydown",a.mJ,!1);b.addEventListener("keyup",a.nJ,!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.ib.nq===Dk&&b.preventDefault()},!1);b.addEventListener("pointerdown",a.QJ,!1);b.addEventListener("pointermove",a.SJ,!1);b.addEventListener("pointerleave",a.RJ,!1);window.addEventListener("resize",a.dH,!1)}C.prototype.computePixelRatio=function(){return null!==this.zk?this.zk:this.rH};C.prototype.doMouseMove=function(){this.fb.doMouseMove()}; C.prototype.doMouseDown=function(){this.fb.doMouseDown()};C.prototype.doMouseUp=function(){this.fb.doMouseUp()};C.prototype.doMouseWheel=function(){this.fb.doMouseWheel()};C.prototype.doKeyDown=function(){this.fb.doKeyDown()};C.prototype.doKeyUp=function(){this.fb.doKeyUp()};C.prototype.doFocus=function(){this.focus()};C.prototype.focus=C.prototype.focus=function(){this.Lb&&this.Lb.focus()}; -function al(a){if(null!==a.Lb){var b=a.Tb;if(0!==b.clientWidth&&0!==b.clientHeight){var c=a.wl?a.Ud:0,d=a.hk?a.Ud:0,e=a.rd;a.rd=a.computePixelRatio();a.rd!==e&&(a.bs=!0,a.Te());if(b.clientWidth!==a.Ob+c||b.clientHeight!==a.Sb+d)a.Qm=!0,a.Ne=!0,b=a.Wb,null!==b&&b.Vx&&a.Zl===Qh&&b.N(),a.je||a.Te()}}} +function al(a){if(null!==a.Lb){var b=a.Tb;if(0!==b.clientWidth&&0!==b.clientHeight){var c=a.wl?a.Td:0,d=a.hk?a.Td:0,e=a.rd;a.rd=a.computePixelRatio();a.rd!==e&&(a.bs=!0,a.Te());if(b.clientWidth!==a.Ob+c||b.clientHeight!==a.Sb+d)a.Qm=!0,a.Ne=!0,b=a.Wb,null!==b&&b.Vx&&a.Zl===Qh&&b.N(),a.ie||a.Te()}}} function Fl(a){var b=new ah;b.name="Background";a.Lt(b);b=new ah;b.name="";a.Lt(b);b=new ah;b.name="Foreground";a.Lt(b);b=new ah;b.name="Adornment";b.Wc=!0;a.Lt(b);b=new ah;b.name="Tool";b.Wc=!0;b.DF=!0;a.Lt(b);b=new ah;b.name="Grid";b.Df=!1;b.qg=!1;b.Wc=!0;a.KH(b,a.hm("Background"))} function Ml(a){a.Cd=new I(Nl);a.Cd.name="GRID";var b=new Y;b.Jb="LineH";b.stroke="lightgray";b.mb=.5;b.interval=1;a.Cd.add(b);b=new Y;b.Jb="LineH";b.stroke="gray";b.mb=.5;b.interval=5;a.Cd.add(b);b=new Y;b.Jb="LineH";b.stroke="gray";b.mb=1;b.interval=10;a.Cd.add(b);b=new Y;b.Jb="LineV";b.stroke="lightgray";b.mb=.5;b.interval=1;a.Cd.add(b);b=new Y;b.Jb="LineV";b.stroke="gray";b.mb=.5;b.interval=5;a.Cd.add(b);b=new Y;b.Jb="LineV";b.stroke="gray";b.mb=1;b.interval=10;a.Cd.add(b);b=new D;b.add(a.Cd); -b.Lf="Grid";b.yo=0;b.Qx=!1;b.CF=!1;b.qg=!1;b.ay="GRID";a.add(b);a.pb.remove(b);a.Cd.visible=!1}C.prototype.tH=function(){this.ca.isEnabled?this.ca.qI(this):Ol(this.ca)};C.prototype.xD=function(a){this.ca.isEnabled?(this.ca.Sz=!0,this.ca.Uz=a.target.scrollTop,this.ca.Tz=a.target.scrollLeft):Ol(this.ca)}; +b.Lf="Grid";b.xo=0;b.Qx=!1;b.CF=!1;b.qg=!1;b.ay="GRID";a.add(b);a.pb.remove(b);a.Cd.visible=!1}C.prototype.tH=function(){this.ca.isEnabled?this.ca.qI(this):Ol(this.ca)};C.prototype.xD=function(a){this.ca.isEnabled?(this.ca.Sz=!0,this.ca.Uz=a.target.scrollTop,this.ca.Tz=a.target.scrollLeft):Ol(this.ca)}; C.prototype.diagramScroll=C.prototype.qI=function(a){if(this.Sz&&null!==this.Lb){this.Gw=!0;var b=this.fd,c=this.yb,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;s=a.scrollLeft;if(this.fs)switch(this.Qz){case "negative":s=s+a.scrollWidth-a.clientWidth;break;case "reverse":s=a.scrollWidth-s-a.clientWidth}var v=s;el&&(this.position=s.m(-(this.Kw.scrollWidth-this.Ob)+v-this.Ob/r+k,this.position.y))),a.xH&&this.Be&&(bn&&(this.position=s.m(this.position.x,-(this.Kw.scrollHeight-this.Sb)+a.scrollTop-this.Sb/r+m))),z.A(s),Pl(this),this.Qm=this.Gw=!1,b=this.fd,c=this.yb,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.ht.style.width="1px"),h>=g&&b>=c&&m<=n&&(this.ht.style.height="1px"))}};C.prototype.computeBounds=C.prototype.Jh=function(){0c&&(e=c),ea.Oh&&(e=a.Oh),e):b===Wl?(e=l>k?(h-a.Ud)/d:(g-a.Ud)/e,e>c&&(e=c),ea.Oh&&(e=a.Oh),e):a.scale}C.prototype.zoomToFit=C.prototype.zoomToFit=function(){this.scale=Sl(this,Vl)}; -C.prototype.zoomToRect=function(a,b){void 0===b&&(b=Vl);var c=a.width,d=a.height;if(!(0===c||0===d||isNaN(c)&&isNaN(d))){var e=1;if(b===Vl||b===Wl)if(isNaN(c))e=this.yb.height*this.scale/d;else if(isNaN(d))e=this.yb.width*this.scale/c;else var e=this.Ob,g=this.Sb,e=b===Wl?g/d>e/c?(g-(this.hk?this.Ud:0))/d:(e-(this.wl?this.Ud:0))/c:Math.min(g/d,e/c);this.scale=e;this.position=new M(a.x,a.y)}};z.defineProperty(C,{RA:null},function(){return this.cd},function(a){this.cd=a}); +function Rl(a,b){if((b||a.sh)&&!a.cd&&null!==a.Lb&&!a.Ya.wf&&a.fd.F()){a.cd=!0;var c=a.Gm;b&&a.yl!==Qh&&(c=a.yl);var d=c!==Qh?Sl(a,c):a.scale,c=a.yb.copy(),e=a.Ob/d,g=a.Sb/d,h=null,k=a.Ya;k.yc&&(h=a.ub.copy());a.position.Za();var l=a.Jo;b&&!l.jd()&&a.ep.jd()&&(l=a.ep);Tl(a,a.ub,a.fd,e,g,l,b);a.position.freeze();null!==h&&ml(k,h,a.ub);e=a.scale;a.scale=d;a.cd=!1;d=a.yb;d.Vc(c)||a.Lu(c,d,e,a.scale,!1)}} +function Sl(a,b){var c=a.xb.vx;if(null===a.Lb)return c;a.ik&&Ul(a,a.Jh());var d=a.fd;if(!d.F())return c;var e=d.width,d=d.height,g=a.Ob,h=a.Sb,k=g/e,l=h/d;return b===Vl?(e=Math.min(l,k),e>c&&(e=c),ea.Oh&&(e=a.Oh),e):b===Wl?(e=l>k?(h-a.Td)/d:(g-a.Td)/e,e>c&&(e=c),ea.Oh&&(e=a.Oh),e):a.scale}C.prototype.zoomToFit=C.prototype.zoomToFit=function(){this.scale=Sl(this,Vl)}; +C.prototype.zoomToRect=function(a,b){void 0===b&&(b=Vl);var c=a.width,d=a.height;if(!(0===c||0===d||isNaN(c)&&isNaN(d))){var e=1;if(b===Vl||b===Wl)if(isNaN(c))e=this.yb.height*this.scale/d;else if(isNaN(d))e=this.yb.width*this.scale/c;else var e=this.Ob,g=this.Sb,e=b===Wl?g/d>e/c?(g-(this.hk?this.Td:0))/d:(e-(this.wl?this.Td:0))/c:Math.min(g/d,e/c);this.scale=e;this.position=new M(a.x,a.y)}};z.defineProperty(C,{RA:null},function(){return this.cd},function(a){this.cd=a}); C.prototype.alignDocument=function(a,b){this.ik&&Ul(this,this.Jh());var c=this.fd,d=this.yb;this.position=new M(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 Tl(a,b,c,d,e,g,h){var k=b.x,l=b.y;if(h||a.uB===xl)g.jd()&&(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.xG,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.mJ=function(a){if(!this.ca.isEnabled)return!1;var b=this.ca.Ub;Xl(this.ca,this.ca,a,b,!1);b.key=String.fromCharCode(a.which);b.gm=!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.ca.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.ca,b,a):(a.cancelBubble=!0,a.preventDefault(),a.stopPropagation(),!1)}; C.prototype.nJ=function(a){if(!this.ca.isEnabled)return!1;var b=this.ca.Ub;Xl(this.ca,this.ca,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.ca.doKeyUp(); -return ia(this.ca,b,a)};C.prototype.bp=function(a){var b=this.Lb;if(null===b)return new M(0,0);var c=this.Ob,d=this.Sb,b=b.getBoundingClientRect(),c=a.clientX-c/b.width*b.left;a=a.clientY-d/b.height*b.top;return null!==this.Jc?(a=new M(c,a),ub(a,this.Jc),a):new M(c,a)}; -function Yl(a,b,c){var d=a.Lb,e=a.Ob,g=a.Sb,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.m(h,k);null!==a.Jc?(b=z.Fb(h,k),a.Jc.Ci(b),c.ha.assign(b),z.A(b)):c.ha.m(h,k)} -function Zf(a,b,c,d){var e=null;if(void 0!==b.targetTouches){if(2>b.targetTouches.length)return;e=b.targetTouches[c]}else if(null!==a.nj[0])e=a.nj[c];else return;c=a.Lb;b=a.Ob;a=a.Sb;var g=0,h=0;null!==c&&null!==e&&(c=c.getBoundingClientRect(),g=e.clientX-b/c.width*c.left,h=e.clientY-a/c.height*c.top);d.m(g,h)}C.prototype.invalidateDocumentBounds=C.prototype.Bc=function(){this.ik||(this.ik=!0,this.Te(!0))};function jl(a){a.je||Li(a);a.ik&&Ul(a,a.Jh())} -C.prototype.redraw=C.prototype.Iq=function(){this.cd||this.je||(this.ra(),am(this),Pl(this),this.Bc(),this.hg())};C.prototype.isUpdateRequested=function(){return this.Zf};C.prototype.delayInitialization=function(a){void 0===a&&(a=null);var b=this.Ya,c=b.isEnabled;b.Ii();b.isEnabled=!1;Vi(this);this.sh=!1;b.isEnabled=c;null!==a&&z.setTimeout(a,1)}; -C.prototype.requestUpdate=C.prototype.Te=function(a){void 0===a&&(a=!1);if(!0!==this.Zf&&!(this.cd||!1===a&&this.je)){this.Zf=!0;var b=this;requestAnimationFrame(function(){b.Zf&&b.hg()})}};C.prototype.maybeUpdate=C.prototype.hg=function(){if(!this.$o||this.Zf)this.$o&&(this.$o=!1),Vi(this)};function bm(a,b){a.Ya.wf||a.cd||!a.Qm||Ol(a)||(b&&Li(a),Rl(a,!1))} -function Vi(a){if(!a.je&&(a.Zf=!1,null!==a.Tb)){a.je=!0;var b=a.Ya,c=a.Pz;if(!b.lp&&0!==c.length){for(var d=c.o,e=d.length,g=0;gb;b++){var c=a.Cg.j;if(null===c||0===a.Cg.count)break;a.Cg=new K(O);a.QB(c,a.Cg);u&&22===b&&z.trace("failure to validate parts")}a.og.each(function(a){a instanceof F&&0!==(a.Ha&65536)!==!1&&(a.Ha^=65536)})}} -C.prototype.QB=function(a,b){for(a.reset();a.next();){var c=a.value;!c.re()||c instanceof F||(c.sm()?(Bk(c,Infinity,Infinity),c.rc()):b.add(c))}for(a.reset();a.next();)c=a.value,c instanceof F&&c.isVisible()&&Bm(this,c);for(a.reset();a.next();)c=a.value,c instanceof H&&c.isVisible()&&(c.sm()?(Bk(c,Infinity,Infinity),c.rc()):b.add(c));for(a.reset();a.next();)c=a.value,c instanceof ea&&c.isVisible()&&(c.sm()?(Bk(c,Infinity,Infinity),c.rc()):b.add(c))}; -function Bm(a,b){for(var c=z.tb(),d=z.tb(),e=b.Oc;e.next();){var g=e.value;g.isVisible()&&(g instanceof F?(Cm(g)||Dm(g)||Em(g))&&Bm(a,g):g instanceof H?g.aa===b||g.ea===b?d.push(g):c.push(g):(Bk(g,Infinity,Infinity),g.rc()))}for(var e=c.length,h=0;hb.targetTouches.length)return;e=b.targetTouches[c]}else if(null!==a.nj[0])e=a.nj[c];else return;c=a.Lb;b=a.Ob;a=a.Sb;var g=0,h=0;null!==c&&null!==e&&(c=c.getBoundingClientRect(),g=e.clientX-b/c.width*c.left,h=e.clientY-a/c.height*c.top);d.m(g,h)}C.prototype.invalidateDocumentBounds=C.prototype.Bc=function(){this.ik||(this.ik=!0,this.Te(!0))};function jl(a){a.ie||Li(a);a.ik&&Ul(a,a.Jh())} +C.prototype.redraw=C.prototype.Iq=function(){this.cd||this.ie||(this.ra(),am(this),Pl(this),this.Bc(),this.hg())};C.prototype.isUpdateRequested=function(){return this.Zf};C.prototype.delayInitialization=function(a){void 0===a&&(a=null);var b=this.Ya,c=b.isEnabled;b.Ii();b.isEnabled=!1;Vi(this);this.sh=!1;b.isEnabled=c;null!==a&&z.setTimeout(a,1)}; +C.prototype.requestUpdate=C.prototype.Te=function(a){void 0===a&&(a=!1);if(!0!==this.Zf&&!(this.cd||!1===a&&this.ie)){this.Zf=!0;var b=this;requestAnimationFrame(function(){b.Zf&&b.hg()})}};C.prototype.maybeUpdate=C.prototype.hg=function(){if(!this.Zo||this.Zf)this.Zo&&(this.Zo=!1),Vi(this)};function bm(a,b){a.Ya.wf||a.cd||!a.Qm||Ol(a)||(b&&Li(a),Rl(a,!1))} +function Vi(a){if(!a.ie&&(a.Zf=!1,null!==a.Tb)){a.ie=!0;var b=a.Ya,c=a.Pz;if(!b.kp&&0!==c.length){for(var d=c.o,e=d.length,g=0;gb;b++){var c=a.Cg.j;if(null===c||0===a.Cg.count)break;a.Cg=new K(O);a.QB(c,a.Cg);u&&22===b&&z.trace("failure to validate parts")}a.og.each(function(a){a instanceof F&&0!==(a.Ha&65536)!==!1&&(a.Ha^=65536)})}} +C.prototype.QB=function(a,b){for(a.reset();a.next();){var c=a.value;!c.qe()||c instanceof F||(c.sm()?(Bk(c,Infinity,Infinity),c.qc()):b.add(c))}for(a.reset();a.next();)c=a.value,c instanceof F&&c.isVisible()&&Bm(this,c);for(a.reset();a.next();)c=a.value,c instanceof H&&c.isVisible()&&(c.sm()?(Bk(c,Infinity,Infinity),c.qc()):b.add(c));for(a.reset();a.next();)c=a.value,c instanceof ea&&c.isVisible()&&(c.sm()?(Bk(c,Infinity,Infinity),c.qc()):b.add(c))}; +function Bm(a,b){for(var c=z.tb(),d=z.tb(),e=b.Oc;e.next();){var g=e.value;g.isVisible()&&(g instanceof F?(Cm(g)||Dm(g)||Em(g))&&Bm(a,g):g instanceof H?g.aa===b||g.ea===b?d.push(g):c.push(g):(Bk(g,Infinity,Infinity),g.qc()))}for(var e=c.length,h=0;hx+1&& -(N=Math.max((t-x)*c+a.Ob,N)),q+k+1p+1&&(G=Math.max((B-p)*c+a.Sb,G)),r+l+1x+1&&(N=Math.max((t-x)*c+a.Ob,N)),q+1p+1&&(G=Math.max((B-p)*c+l,G)),r+1x+1&&(k=a.position.x*c));if(a.fs)switch(a.Qz){case "negative":k=-(b.scrollWidth-k-b.clientWidth);break;case "reverse":k=b.scrollWidth-k-b.clientWidth}b.scrollLeft=k;a.OA&&a.Be&&(r+1p+1&&(b.scrollTop=a.position.y*c));h&&(a.bs=!0);m=a.Ob;n=a.Sb;b.style.width=m+(a.wl?a.Ud:0)+"px";b.style.height=n+(a.hk?a.Ud:0)+"px";a.Sz=!1;return d!==m||e!== +function Ol(a){var b=a.Lb;if(null===b)return!0;var c=a.Tb,d=a.Ob,e=a.Sb,g=a.mE.copy();if(!g.F())return!0;var h=!1,k=a.wl?a.Td:0,l=a.hk?a.Td:0,m=c.clientWidth||d+k,n=c.clientHeight||e+l;if(m!==d+k||n!==e+l)a.wl=!1,a.hk=!1,l=k=0,a.Ob=m,a.Sb=n,h=a.bs=!0;a.Qm=!1;var p=a.yb,c=a.fd,m=c.width,n=c.height,q=p.width,r=p.height,s=c.x,v=p.x,t=c.right,x=p.right+k,y=c.y,B=p.y,A=c.bottom,p=p.bottom+l,N="1px",G="1px",c=a.scale;a.uB===xl&&mx+1&& +(N=Math.max((t-x)*c+a.Ob,N)),q+k+1p+1&&(G=Math.max((A-p)*c+a.Sb,G)),r+l+1x+1&&(N=Math.max((t-x)*c+a.Ob,N)),q+1p+1&&(G=Math.max((A-p)*c+l,G)),r+1x+1&&(k=a.position.x*c));if(a.fs)switch(a.Qz){case "negative":k=-(b.scrollWidth-k-b.clientWidth);break;case "reverse":k=b.scrollWidth-k-b.clientWidth}b.scrollLeft=k;a.OA&&a.Be&&(r+1p+1&&(b.scrollTop=a.position.y*c));h&&(a.bs=!0);m=a.Ob;n=a.Sb;b.style.width=m+(a.wl?a.Td:0)+"px";b.style.height=n+(a.hk?a.Td:0)+"px";a.Sz=!1;return d!==m||e!== n||a.Ya.yc?(p=a.yb,a.Lu(g,p,c,a.scale,h),!1):!0} -C.prototype.add=C.prototype.add=function(a){z.l(a,D,C,"add:part");var b=a.g;if(b!==this){null!==b&&z.k("Cannot add part "+a.toString()+" to "+this.toString()+". It is already a part of "+b.toString());this.cr&&(a.El="Tool");var c=a.Lf,b=this.hm(c);null===b&&(b=this.hm(""));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.rq(99999999,a,a.g===this),0<=c&&this.ld(sg,"parts",b,null,a,null,c),b.Wc||this.Bc(),a.N(Lm),c=a.Yx,null!== +C.prototype.add=C.prototype.add=function(a){z.l(a,D,C,"add:part");var b=a.g;if(b!==this){null!==b&&z.k("Cannot add part "+a.toString()+" to "+this.toString()+". It is already a part of "+b.toString());this.cr&&(a.El="Tool");var c=a.Lf,b=this.hm(c);null===b&&(b=this.hm(""));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.qq(99999999,a,a.g===this),0<=c&&this.ld(sg,"parts",b,null,a,null,c),b.Wc||this.Bc(),a.N(Lm),c=a.Yx,null!== c&&c(a,null,b))}}; -C.prototype.rq=function(a){if(a instanceof E){if(this.zp.add(a),a instanceof F){var b=a.Qa;null===b?this.Pl.add(a):b.cn.add(a);b=a.Wb;null!==b&&(b.g=this)}}else a instanceof H?this.sp.add(a):a instanceof ea||this.pb.add(a);var c=this;Mm(a,function(a){Nm(c,a)});a.Qb&&a.K();b=a.data;null!==b&&(a instanceof ea||(a instanceof H?this.Zj.add(b,a):this.Ti.add(b,a)),Mm(a,function(a){Om(c,a)}));!0!==Dm(a)&&!0!==Em(a)||this.Cg.add(a);Pm(a,!0,this);Qm(a)?(a.Z.F()&&this.ra(sl(a,a.Z)),this.Bc()):a.isVisible()&& +C.prototype.qq=function(a){if(a instanceof E){if(this.yp.add(a),a instanceof F){var b=a.Qa;null===b?this.Pl.add(a):b.cn.add(a);b=a.Wb;null!==b&&(b.g=this)}}else a instanceof H?this.rp.add(a):a instanceof ea||this.pb.add(a);var c=this;Mm(a,function(a){Nm(c,a)});a.Qb&&a.K();b=a.data;null!==b&&(a instanceof ea||(a instanceof H?this.Zj.add(b,a):this.Ti.add(b,a)),Mm(a,function(a){Om(c,a)}));!0!==Dm(a)&&!0!==Em(a)||this.Cg.add(a);Pm(a,!0,this);Qm(a)?(a.Z.F()&&this.ra(sl(a,a.Z)),this.Bc()):a.isVisible()&& a.Z.F()&&this.ra(sl(a,a.Z));this.Te()}; -C.prototype.vf=function(a){a.Vt();if(a instanceof E){if(this.zp.remove(a),a instanceof F){var b=a.Qa;null===b?this.Pl.remove(a):b.cn.remove(a);b=a.Wb;null!==b&&(b.g=null)}}else a instanceof H?this.sp.remove(a):a instanceof ea||this.pb.remove(a);var c=this;Mm(a,function(a){Rm(c,a)});b=a.data;null!==b&&(a instanceof ea||(a instanceof H?this.Zj.remove(b):this.Ti.remove(b)),Mm(a,function(a){Sm(c,a)}));this.Cg.remove(a);Qm(a)?(a.Z.F()&&this.ra(sl(a,a.Z)),this.Bc()):a.isVisible()&&a.Z.F()&&this.ra(sl(a, +C.prototype.vf=function(a){a.Vt();if(a instanceof E){if(this.yp.remove(a),a instanceof F){var b=a.Qa;null===b?this.Pl.remove(a):b.cn.remove(a);b=a.Wb;null!==b&&(b.g=null)}}else a instanceof H?this.rp.remove(a):a instanceof ea||this.pb.remove(a);var c=this;Mm(a,function(a){Rm(c,a)});b=a.data;null!==b&&(a instanceof ea||(a instanceof H?this.Zj.remove(b):this.Ti.remove(b)),Mm(a,function(a){Sm(c,a)}));this.Cg.remove(a);Qm(a)?(a.Z.F()&&this.ra(sl(a,a.Z)),this.Bc()):a.isVisible()&&a.Z.F()&&this.ra(sl(a, a.Z));this.Te()};C.prototype.remove=C.prototype.remove=function(a){z.l(a,D,C,"remove:part");Tm(this,a,!0)};function Tm(a,b,c){var d=b.layer;null!==d&&d.g===a&&(b.gb=!1,b.Wg=!1,b.N(Um),c&&b.Mn(),c=d.vf(-1,b,!1),0<=c&&a.ld(tg,"parts",d,b,null,c,null),a=b.Yx,null!==a&&a(b,d,null))} -C.prototype.removeParts=C.prototype.rB=function(a,b){if(z.isArray(a))for(var c=z.bb(a),d=0;dd&&this.Bc()}; -C.prototype.addLayerAfter=function(a,b){Vm(this,a,b);a.$c(this);var c=this.bc,d=c.indexOf(a);0<=d&&(c.remove(a),null!==this.ye&&this.ld(tg,"layers",this,a,null,d,null));for(var e=c.count,g=0;gd&&this.Bc()}; -C.prototype.removeLayer=function(a){z.l(a,ah,C,"removeLayer:layer");a.g!==this&&z.k("Cannot remove a Layer from another Diagram: "+a+" of "+a.g);if(""!==a.name){var b=this.bc,c=b.indexOf(a);if(b.remove(a)){for(b=a.pb.copy().j;b.next();){var d=b.value,e=d.Lf;d.Lf=e!==a.name?e:""}null!==this.ye&&this.ld(tg,"layers",this,a,null,c,null);this.ra();this.Bc()}}};C.prototype.findLayer=C.prototype.hm=function(a){for(var b=this.ao;b.next();){var c=b.value;if(c.name===a)return c}return null}; +b+"'; a Layer with the same name is already present in this Diagram.")}}C.prototype.addLayer=C.prototype.Lt=function(a){Vm(this,a,null);a.$c(this);var b=this.bc,c=b.count-1;if(!a.Wc)for(;0<=c&&b.fa(c).Wc;)c--;b.Yd(c+1,a);null!==this.xe&&this.ld(sg,"layers",this,null,a,null,c+1);this.ra();this.Bc()}; +C.prototype.addLayerBefore=C.prototype.KH=function(a,b){Vm(this,a,b);a.$c(this);var c=this.bc,d=c.indexOf(a);0<=d&&(c.remove(a),null!==this.xe&&this.ld(tg,"layers",this,a,null,d,null));for(var e=c.count,g=0;gd&&this.Bc()}; +C.prototype.addLayerAfter=function(a,b){Vm(this,a,b);a.$c(this);var c=this.bc,d=c.indexOf(a);0<=d&&(c.remove(a),null!==this.xe&&this.ld(tg,"layers",this,a,null,d,null));for(var e=c.count,g=0;gd&&this.Bc()}; +C.prototype.removeLayer=function(a){z.l(a,ah,C,"removeLayer:layer");a.g!==this&&z.k("Cannot remove a Layer from another Diagram: "+a+" of "+a.g);if(""!==a.name){var b=this.bc,c=b.indexOf(a);if(b.remove(a)){for(b=a.pb.copy().j;b.next();){var d=b.value,e=d.Lf;d.Lf=e!==a.name?e:""}null!==this.xe&&this.ld(tg,"layers",this,a,null,c,null);this.ra();this.Bc()}}};C.prototype.findLayer=C.prototype.hm=function(a){for(var b=this.ao;b.next();){var c=b.value;if(c.name===a)return c}return null}; C.prototype.addModelChangedListener=C.prototype.MH=function(a){z.h(a,"function",C,"addModelChangedListener:listener");null===this.vh&&(this.vh=new J("function"));this.vh.add(a);this.ia.An(a)};C.prototype.removeModelChangedListener=function(a){z.h(a,"function",C,"removeModelChangedListener:listener");null!==this.vh&&(this.vh.remove(a),0===this.vh.count&&(this.vh=null));this.ia.Ou(a)}; C.prototype.addChangedListener=C.prototype.An=function(a){z.h(a,"function",C,"addChangedListener:listener");null===this.Oi&&(this.Oi=new J("function"));this.Oi.add(a)};C.prototype.removeChangedListener=C.prototype.Ou=function(a){z.h(a,"function",C,"removeChangedListener:listener");null!==this.Oi&&(this.Oi.remove(a),0===this.Oi.count&&(this.Oi=null))}; C.prototype.mx=function(a){this.Eb||this.sa.wF(a);a.Kc!==rg&&(this.Fi=!0);if(null!==this.Oi){var b=this.Oi,c=b.length;if(1===c)b=b.fa(0),b(a);else if(0!==c)for(var d=b.nc(),e=0;ea.Oh&&(c=a.Oh);e=z.Fb(a.ub.x+h/b-h/c,a.ub.y+k/b-k/c);a.position=e;z.A(e);a.Rb=c;a.Lu(d,a.yb,b,c,!1);a.cd=!1;Rl(a, -!1);c=a.Ya;c.yc&&nl(c,b,a.Rb);a.ra();am(a)}}C.prototype.Lu=function(a,b,c,d,e){a.O(b)||(void 0===e&&(e=!1),e||am(this),Pl(this),d=this.Wb,null===d||!d.Vx||this.Zl!==Qh||e||a.width===b.width&&a.height===b.height||d.N(),d=this.fb,!0===this.Sm&&d instanceof Kh&&(this.U.ha=this.NB(this.U.te),Fk(d,this)),this.cd||this.BF(a,b),dm(this),this.Eh.scale=c,this.Eh.position.x=a.x,this.Eh.position.y=a.y,this.Eh.bounds.set(a),this.Eh.isScroll=e,this.Ka("ViewportBoundsChanged",this.Eh,a))}; +function Wm(a,b,c){if(a.cd||a.ie)a.Rb=c,c=a.Ya,c.yc&&nl(c,b,a.Rb);else if(a.cd=!0,null===a.Lb)a.Rb=c;else{var d=a.yb.copy(),e=a.Ob,g=a.Sb;d.width=a.Ob/b;d.height=a.Sb/b;var h=a.Dm.x,k=a.Dm.y,l=a.JE;isNaN(h)&&(l.Gj()?l.Fj(sc)?h=0:l.Fj(xc)&&(h=e-1):h=l.jd()?l.x*(e-1):e/2);isNaN(k)&&(l.Gj()?l.Fj(rc)?k=0:l.Fj(yc)&&(k=g-1):k=l.jd()?l.y*(g-1):g/2);null!==a.wG&&(c=a.wG(a,c));ca.Oh&&(c=a.Oh);e=z.Fb(a.ub.x+h/b-h/c,a.ub.y+k/b-k/c);a.position=e;z.A(e);a.Rb=c;a.Lu(d,a.yb,b,c,!1);a.cd=!1;Rl(a, +!1);c=a.Ya;c.yc&&nl(c,b,a.Rb);a.ra();am(a)}}C.prototype.Lu=function(a,b,c,d,e){a.O(b)||(void 0===e&&(e=!1),e||am(this),Pl(this),d=this.Wb,null===d||!d.Vx||this.Zl!==Qh||e||a.width===b.width&&a.height===b.height||d.N(),d=this.fb,!0===this.Sm&&d instanceof Kh&&(this.U.ha=this.NB(this.U.se),Fk(d,this)),this.cd||this.BF(a,b),dm(this),this.Eh.scale=c,this.Eh.position.x=a.x,this.Eh.position.y=a.y,this.Eh.bounds.set(a),this.Eh.isScroll=e,this.Ka("ViewportBoundsChanged",this.Eh,a))}; function dm(a,b){void 0===b&&(b=null);var c=a.Cd;if(null!==c&&c.visible){for(var d=z.Am(),e=1,g=1,h=c.va.o,k=h.length,l=0;ln||(Xm(m.Jb)?g=g*n/Te(g,n):e=e*n/Te(e,n))}h=c.Kx;d.m(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.Of();g=a.yb;e.m(g.x,g.y,g.width,g.height);for(h=a.ww.j;h.next();)g=h.value.yb,g.F()&&Rb(e,g.x,g.y,g.width,g.height);if(!e.F()){z.Mb(e);return}k=e.width;l=e.height;g=e.x;h=e.y;z.Mb(e)}c.width=k+2*d.width;c.height= l+2*d.height;e=z.P();tb(g,h,0,0,d.width,d.height,e);e.offset(-d.width,-d.height);z.Qk(d);c.ba.location=e;z.A(e)}}C.prototype.clearSelection=C.prototype.ox=function(){var a=0l)){var m=l;kn(k)&&m++;k.vf(m);ln(k,m,l)}}}}function Om(a,b){var c=b.cj;if(z.isArray(c)){var d=a.Um.qa(c);if(null===d)d=[],d.push(b),a.Um.add(c,d);else{for(c=0;cthis.scale&&(this.scale=a)):z.wa(a,"> 0",C,"minScale"))}); z.defineProperty(C,{Oh:"maxScale"},function(){return this.kw},function(a){z.p(a,C,"maxScale");var b=this.kw;b!==a&&(0 0",C,"maxScale"))});z.defineProperty(C,{Dm:"zoomPoint"},function(){return this.ax},function(a){this.ax.O(a)||(z.l(a,M,C,"zoomPoint"),this.ax=a=a.V())}); -z.defineProperty(C,{JE:"contentAlignment"},function(){return this.Ko},function(a){var b=this.Ko;b.O(a)||(z.l(a,R,C,"contentAlignment"),this.Ko=a=a.V(),this.i("contentAlignment",b,a),Rl(this,!1))});z.defineProperty(C,{LL:"initialContentAlignment"},function(){return this.fp},function(a){var b=this.fp;b.O(a)||(z.l(a,R,C,"initialContentAlignment"),this.fp=a=a.V(),this.i("initialContentAlignment",b,a))}); -z.defineProperty(C,{padding:"padding"},function(){return this.sf},function(a){"number"===typeof a?a=new Kb(a):z.l(a,Kb,C,"padding");var b=this.sf;b.O(a)||(this.sf=a=a.V(),this.Bc(),this.i("padding",b,a))});z.w(C,{og:"nodes"},function(){return this.zp.j});z.w(C,{links:"links"},function(){return this.sp.j});z.w(C,{Gi:"parts"},function(){return this.pb.j}); -C.prototype.findTopLevelNodesAndLinks=function(){for(var a=new K(D),b=this.zp.j;b.next();){var c=b.value;c.wq&&a.add(c)}for(b=this.sp.j;b.next();)c=b.value,c.wq&&a.add(c);return a.j};C.prototype.findTopLevelGroups=function(){return this.Pl.j};z.defineProperty(C,{Wb:"layout"},function(){return this.we},function(a){var b=this.we;b!==a&&(z.l(a,ch,C,"layout"),null!==b&&(b.g=null,b.group=null),this.we=a,a.g=this,a.group=null,this.sv=!0,this.i("layout",b,a),this.Te())}); +z.defineProperty(C,{JE:"contentAlignment"},function(){return this.Jo},function(a){var b=this.Jo;b.O(a)||(z.l(a,R,C,"contentAlignment"),this.Jo=a=a.V(),this.i("contentAlignment",b,a),Rl(this,!1))});z.defineProperty(C,{LL:"initialContentAlignment"},function(){return this.ep},function(a){var b=this.ep;b.O(a)||(z.l(a,R,C,"initialContentAlignment"),this.ep=a=a.V(),this.i("initialContentAlignment",b,a))}); +z.defineProperty(C,{padding:"padding"},function(){return this.sf},function(a){"number"===typeof a?a=new Kb(a):z.l(a,Kb,C,"padding");var b=this.sf;b.O(a)||(this.sf=a=a.V(),this.Bc(),this.i("padding",b,a))});z.w(C,{og:"nodes"},function(){return this.yp.j});z.w(C,{links:"links"},function(){return this.rp.j});z.w(C,{Gi:"parts"},function(){return this.pb.j}); +C.prototype.findTopLevelNodesAndLinks=function(){for(var a=new K(D),b=this.yp.j;b.next();){var c=b.value;c.vq&&a.add(c)}for(b=this.rp.j;b.next();)c=b.value,c.vq&&a.add(c);return a.j};C.prototype.findTopLevelGroups=function(){return this.Pl.j};z.defineProperty(C,{Wb:"layout"},function(){return this.ve},function(a){var b=this.ve;b!==a&&(z.l(a,ch,C,"layout"),null!==b&&(b.g=null,b.group=null),this.ve=a,a.g=this,a.group=null,this.sv=!0,this.i("layout",b,a),this.Te())}); C.prototype.layoutDiagram=function(a){Li(this);a&&qn(this,!0);em(this,!1)};function qn(a,b){for(var c=a.Pl.j;c.next();)yn(a,c.value,b);null!==a.Wb&&(b?a.Wb.Jf=!1:a.Wb.N())}function yn(a,b,c){if(null!==b){for(var d=b.cn.j;d.next();)yn(a,d.value,c);null!==b.Wb&&(c?b.Wb.Jf=!1:b.Wb.N())}} -function em(a,b){if(!a.gz){var c=a.Wb,d=a.ab;a.ab=!0;try{var e=a.sa.Vh;0===e&&a.$b("Layout");var g=a.Ya;1!==a.sa.Vh||g.wf||g.yc||b||g.lo("Layout");for(var h=a.Pl.j;h.next();)zn(a,h.value,b);c.Jf||b&&!c.MF&&0!==e||(c.doLayout(a),Li(a),c.Jf=!0)}finally{0===e&&a.Wd("Layout"),a.sv=!c.Jf,a.ab=d}}}function zn(a,b,c){if(null!==b){for(var d=b.cn.j;d.next();)zn(a,d.value,c);d=b.Wb;null===d||d.Jf||c&&!d.MF||(b.io=!b.location.F(),d.doLayout(b),b.N(An),d.Jf=!0,Bm(a,b))}} -z.defineProperty(C,{be:"isTreePathToChildren"},function(){return this.dw},function(a){var b=this.dw;if(b!==a&&(z.h(a,"boolean",C,"isTreePathToChildren"),this.dw=a,this.i("isTreePathToChildren",b,a),!this.sa.lb))for(a=this.og;a.next();)Bn(a.value)});C.prototype.findTreeRoots=function(){for(var a=new J(E),b=this.og;b.next();){var c=b.value;c.wq&&null===c.Pn()&&a.add(c)}return a.j}; +function em(a,b){if(!a.gz){var c=a.Wb,d=a.ab;a.ab=!0;try{var e=a.sa.Vh;0===e&&a.$b("Layout");var g=a.Ya;1!==a.sa.Vh||g.wf||g.yc||b||g.ko("Layout");for(var h=a.Pl.j;h.next();)zn(a,h.value,b);c.Jf||b&&!c.MF&&0!==e||(c.doLayout(a),Li(a),c.Jf=!0)}finally{0===e&&a.Vd("Layout"),a.sv=!c.Jf,a.ab=d}}}function zn(a,b,c){if(null!==b){for(var d=b.cn.j;d.next();)zn(a,d.value,c);d=b.Wb;null===d||d.Jf||c&&!d.MF||(b.io=!b.location.F(),d.doLayout(b),b.N(An),d.Jf=!0,Bm(a,b))}} +z.defineProperty(C,{ae:"isTreePathToChildren"},function(){return this.dw},function(a){var b=this.dw;if(b!==a&&(z.h(a,"boolean",C,"isTreePathToChildren"),this.dw=a,this.i("isTreePathToChildren",b,a),!this.sa.lb))for(a=this.og;a.next();)Bn(a.value)});C.prototype.findTreeRoots=function(){for(var a=new J(E),b=this.og;b.next();){var c=b.value;c.vq&&null===c.Pn()&&a.add(c)}return a.j}; z.defineProperty(C,{OB:"treeCollapsePolicy"},function(){return this.Ww},function(a){var b=this.Ww;b!==a&&(a!==zl&&a!==Ym&&a!==Zm&&z.k("Unknown Diagram.treeCollapsePolicy: "+a),this.Ww=a,this.i("treeCollapsePolicy",b,a))});z.defineProperty(C,{Nh:null},function(){return this.$C},function(a){this.$C=a}); function yl(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 oa("string",J),d=new oa("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.iz=c;a.hz=d} function Ia(a,b){var c=a.hz.qa(b);return null!==c?c:a.hz.qa(b.toLowerCase())}function Cn(a,b){var c=a.iz.qa(b);if(null!==c)return c;c=a.iz.qa(b.toLowerCase());if(null!==c)return c;z.k("Unknown DiagramEvent name: "+b);return null}C.prototype.addDiagramListener=C.prototype.gA=function(a,b){z.h(a,"string",C,"addDiagramListener:name");z.h(b,"function",C,"addDiagramListener:listener");var c=Cn(this,a);null!==c&&c.add(b)}; -C.prototype.removeDiagramListener=C.prototype.jG=function(a,b){z.h(a,"string",C,"removeDiagramListener:name");z.h(b,"function",C,"addDiagramListener:listener");var c=Cn(this,a);null!==c&&c.remove(b)};C.prototype.raiseDiagramEvent=C.prototype.Ka=function(a,b,c){u&&z.h(a,"string",C,"raiseDiagramEvent:name");var d=Cn(this,a),e=new $f;e.g=this;e.name=Ia(this,a);void 0!==b&&(e.HB=b);void 0!==c&&(e.lB=c);a=d.length;if(1===a)d=d.fa(0),d(e);else if(0!==a)for(b=d.nc(),c=0;c=d.top&&0>=d.left&&0>=d.right&&0>=d.bottom)return c;var e=a.yb,g=a.scale,e=z.fh(0,0,e.width*g,e.height*g),h=z.Fb(0,0);if(b.x>=e.x&&b.xe.x+e.width-d.right&&(k=Math.max(a.Tu,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.Uu,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.Vc(Dd)||(c=new M(c.x+h.x/g,c.y+h.y/g));z.Mb(e);z.A(h);return c}C.prototype.makeSvg=C.prototype.makeSVG=function(a){void 0===a&&(a=new na);a.context="svg";a=Kn(this,a);return null!==a?a.ym:null}; C.prototype.makeImage=function(a){void 0===a&&(a=new na);var b=(a.document||document).createElement("img");b.src=this.vJ(a);return b}; C.prototype.makeImageData=C.prototype.vJ=function(a){void 0===a&&(a=new na);var b=Kn(this,a);if(null!==b){var c=a.returnType,c=void 0===c?"string":c.toLowerCase();switch(c){case "imagedata":return b.Mk.getImageData(0,0,b.width,b.height);case "blob":b=b.Fd;c=a.callback;if("function"!==typeof c){z.k('Error: Diagram.makeImageData called with "returnType: toBlob", but no "callback" function property defined.');break}if("function"===typeof b.uK)return b.uK(c,a.type,a.details),"toBlob";if("function"=== typeof b.KJ)return c(b.KJ(a.type,a.details)),"msToBlob";c(null);break;default:return b.toDataURL(a.type,a.details)}}return""};var Ln=!1; function Kn(a,b){a.Ya.Ii();a.hg();if(null===a.Lb)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 Fa(Infinity,Infinity):new Fa(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 Kb(l):l instanceof Kb||(l=new Kb(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.Vo=!1;da(a.pd,!0);var s=new ma(null,p),v=s.Mk,t=s;if(!(d||e||k||h))return s.width=a.Ob+Math.ceil(l.left+l.right),s.height=a.Sb+Math.ceil(l.top+l.bottom),"svg"===b.context&&(v=t=new md(s.Fd,p,q),v instanceof md&& -(a.Vo=!0)),Im(a,v,l,new Fa(s.width,s.height),a.Rb,a.ub,k,m,r,n),a.Vo=!0,t;var x=a.xb.vx,y=new M(0,0),A=a.fd.copy();A.sK(a.padding);if(r)for(var B=!0,B=a.bc.o,N=B.length,G=0;Gx?(e=x,h=A.width,aa=A.height):(h=g.width,aa=g.height)):(h=A.width*e,aa=A.height*e):(e=x,h=A.width,aa=A.height);null!==l?(h+=fa,aa+=B):l=new Kb(0);null!==g&&(d=g.width,g=g.height,"svg"!==b.context&&c&&!Ln&&(h>d||aa>g)&&(z.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."), -Ln=!0),isNaN(d)&&(d=2E3),isNaN(g)&&(g=2E3),isFinite(d)&&(h=Math.min(h,d)),isFinite(g)&&(aa=Math.min(aa,g)));s.width=Math.ceil(h);s.height=Math.ceil(aa);"svg"===b.context&&(v=t=new md(s.Fd,p,q),v instanceof md&&(a.Vo=!0));Im(a,v,l,new Fa(Math.ceil(h),Math.ceil(aa)),e,y,k,m,r,n);a.Vo=!0;return t}C.inherit=function(a,b){z.h(a,"function",C,"inherit");z.h(b,"function",C,"inherit");b.yH&&z.k("Cannot inherit from "+z.uf(b));z.Ta(a,b)}; +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 Kb(l):l instanceof Kb||(l=new Kb(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.Uo=!1;da(a.pd,!0);var s=new ma(null,p),v=s.Mk,t=s;if(!(d||e||k||h))return s.width=a.Ob+Math.ceil(l.left+l.right),s.height=a.Sb+Math.ceil(l.top+l.bottom),"svg"===b.context&&(v=t=new md(s.Fd,p,q),v instanceof md&& +(a.Uo=!0)),Im(a,v,l,new Fa(s.width,s.height),a.Rb,a.ub,k,m,r,n),a.Uo=!0,t;var x=a.xb.vx,y=new M(0,0),B=a.fd.copy();B.sK(a.padding);if(r)for(var A=!0,A=a.bc.o,N=A.length,G=0;Gx?(e=x,h=B.width,aa=B.height):(h=g.width,aa=g.height)):(h=B.width*e,aa=B.height*e):(e=x,h=B.width,aa=B.height);null!==l?(h+=fa,aa+=A):l=new Kb(0);null!==g&&(d=g.width,g=g.height,"svg"!==b.context&&c&&!Ln&&(h>d||aa>g)&&(z.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."), +Ln=!0),isNaN(d)&&(d=2E3),isNaN(g)&&(g=2E3),isFinite(d)&&(h=Math.min(h,d)),isFinite(g)&&(aa=Math.min(aa,g)));s.width=Math.ceil(h);s.height=Math.ceil(aa);"svg"===b.context&&(v=t=new md(s.Fd,p,q),v instanceof md&&(a.Uo=!0));Im(a,v,l,new Fa(Math.ceil(h),Math.ceil(aa)),e,y,k,m,r,n);a.Uo=!0;return t}C.inherit=function(a,b){z.h(a,"function",C,"inherit");z.h(b,"function",C,"inherit");b.yH&&z.k("Cannot inherit from "+z.uf(b));z.Ta(a,b)}; function Hl(){this.BH="63ad05bbe23a1786468a4c741b6d2";this.Xi=this.BH===this._tk?!0:null} function Mn(a){var b="f",c=window[z.Sg("76a715b2f73f148a")][z.Sg("72ba13b5")],d=z.Sg;if(window[d("7da7")]&&window[d("7da7")][d("76a115b6ed251eaf4692")]){a.Xi=!0;var e=window[d("7da7")][d("76a115b6ed251eaf4692")],e=d(e).split(d("39e9"));if(6>e.length)return;var g=d(e[1]).split(".");if("7da71ca0"!==e[4])return;var h=d(z[d("6cae19")]).split(".");if(g[0]>h[0]||g[0]===h[0]&&g[1]>=h[1]){g=c[d("76ad18b4f73e")];for(h=c[d("73a612b6fb191d")](d("35e7"))+2;h g&&d(e[2])!==d("7da71ca0ad381e90")&&(g=b[d("73a612b6fb191d")](d("76a715b2ef3e149757")));0>g&&(g=b[d("73a612b6fb191d")](d("76a715b2ef3e149757")));a.Xi=!(0<=g&&gg&&d(z.adym)!==d("7da71ca0ad381e90")&&(g=b[d("73a612b6fb191d")](d("76a715b2ef3e149757")));a.Xi=!(0<=g&&gb.timeStamp-a.Wm)b.preventDefault();else if(a.Al)b.preventDefault();else{a.ed=a.Ub;a.Ub=c;Xl(a,a,b,c,!0);c.gm=!0;c.Qe=b.detail;if(z.GF||z.HF)b.timeStamp-a.Wmb.timeStamp-a.Wm){b.preventDefault();return}a.Wm=b.timeStamp}if(z.Xn&&null!==a.qt)a.qt=null,b.preventDefault();else{a.ed= -a.Ub;a.Ub=c;Xl(a,a,b,c,!0);c.up=!0;c.Qe=b.detail;if(z.GF||z.HF)c.Qe=a.Dl;c.bubbles=b.bubbles;b.target.ca&&(c.eh=b.target.ca);a.HG(b,null,new M,c.eh)||(a.doMouseUp(),yi(a),ia(a,c,b))}}};a.Qh=function(b){if(a.isEnabled){var c=a.ed;a.ed=a.Ub;a.Ub=c;Xl(a,a,b,c,!0);c.bubbles=!0;c.fm=void 0!==b.wheelDelta?b.wheelDelta:-40*b.detail;a.doMouseWheel();ia(a,c,b)}};a.Dq=function(){if(a.isEnabled){a.Sm=!1;var b=a.fb;b.cancelWaitAfter();b instanceof Kh&&b.hideToolTip()}};a.WG=function(b){if(a.isEnabled){a.zt=!1; +c.style.position="absolute";c.style.overflow="auto";c.style.width=a.Ob+"px";c.style.height=a.Sb+"px";c.style.zIndex="1";e.style.position="absolute";e.style.width="1px";e.style.height="1px";a.Tb.appendChild(c);c.appendChild(e);c.onscroll=a.tH;c.onmousedown=a.xD;c.ontouchstart=a.xD;c.ca=a;c.wH=!0;c.xH=!0;a.Kw=c;a.ht=e;a.qB=z.NE(function(){a.zk=null;a.ra()},300,!1);a.dH=z.NE(function(){al(a)},250,!1);a.preventDefault=function(a){a.preventDefault();return!1};a.Bq=function(b){if(a.isEnabled){a.Sm=!0;var c= +a.ed;z.Xn&&c.Hj?(b.preventDefault(),b.simulated=!0,a.qt=b):(a.ed=a.Ub,a.Ub=c,Xl(a,a,b,c,!0),a.Ay(b,null,b.target.ca)||(a.doMouseMove(),a.fb.isBeyondDragSize()&&(a.Dl=0),ia(a,c,b)))}};a.Aq=function(b){if(a.isEnabled){a.Sm=!0;var c=a.ed;if(z.Xn&&null!==a.qt)a.qt=b,b.preventDefault();else if(z.Xn&&400>b.timeStamp-a.Wm)b.preventDefault();else if(a.Al)b.preventDefault();else{a.ed=a.Ub;a.Ub=c;Xl(a,a,b,c,!0);c.gm=!0;c.Qe=b.detail;if(z.GF||z.HF)b.timeStamp-a.Wmb.timeStamp-a.Wm){b.preventDefault();return}a.Wm=b.timeStamp}if(z.Xn&&null!==a.qt)a.qt=null,b.preventDefault();else{a.ed= +a.Ub;a.Ub=c;Xl(a,a,b,c,!0);c.up=!0;c.Qe=b.detail;if(z.GF||z.HF)c.Qe=a.Dl;c.bubbles=b.bubbles;b.target.ca&&(c.eh=b.target.ca);a.HG(b,null,new M,c.eh)||(a.doMouseUp(),yi(a),ia(a,c,b))}}};a.Qh=function(b){if(a.isEnabled){var c=a.ed;a.ed=a.Ub;a.Ub=c;Xl(a,a,b,c,!0);c.bubbles=!0;c.fm=void 0!==b.wheelDelta?b.wheelDelta:-40*b.detail;a.doMouseWheel();ia(a,c,b)}};a.Cq=function(){if(a.isEnabled){a.Sm=!1;var b=a.fb;b.cancelWaitAfter();b instanceof Kh&&b.hideToolTip()}};a.WG=function(b){if(a.isEnabled){a.zt=!1; a.Al=!0;var c=a.ed;a.ed=a.Ub;a.Ub=c;Zl(a,b,b.targetTouches[0],c,1a.Aw)){var c= @@ -1007,24 +1008,24 @@ a.nj;c[0].pointerId===b.pointerId&&(c[0]=b);c[1].pointerId===b.pointerId&&(c[1]= function Nn(a){1a)&&z.wa(a,"0 <= loc <= 1",Ea,"addColorStop:loc");z.h(b,"string",Ea,"addColorStop:color");u&&!Da(b)&&z.k('Color "'+b+'" is not a valid color string for Brush.addColorStop');null===this.ph&&(this.ph=new oa("number","string"));this.ph.add(a,b);this.da===Zg&&(this.type=$g);this.qh=null}; -z.defineProperty(Ea,{type:"type"},function(){return this.da},function(a){this.I&&z.pa(this,a);z.Ca(a,Ea,Ea,"type");this.da=a;this.start.ae()&&(a===$g?this.start=ic:a===Bd&&(this.start=mc));this.end.ae()&&(a===$g?this.end=pc:a===Bd&&(this.end=mc));this.qh=null});z.defineProperty(Ea,{color:"color"},function(){return this.Io},function(a){this.I&&z.pa(this,a);u&&!Da(a)&&z.k('Color "'+a+'" is not a valid color string for Brush.color');this.Io=a;this.qh=null}); -z.defineProperty(Ea,{start:"start"},function(){return this.Lp},function(a){this.I&&z.pa(this,a);z.l(a,R,Ea,"start");this.Lp=a.V();this.qh=null});z.defineProperty(Ea,{end:"end"},function(){return this.Xo},function(a){this.I&&z.pa(this,a);z.l(a,R,Ea,"end");this.Xo=a.V();this.qh=null});z.defineProperty(Ea,{$u:"startRadius"},function(){return this.Rw},function(a){this.I&&z.pa(this,a);z.p(a,Ea,"startRadius");0>a&&z.wa(a,">= zero",Ea,"startRadius");this.Rw=a;this.qh=null}); +z.defineProperty(Ea,{type:"type"},function(){return this.da},function(a){this.I&&z.pa(this,a);z.Ca(a,Ea,Ea,"type");this.da=a;this.start.$d()&&(a===$g?this.start=ic:a===Bd&&(this.start=mc));this.end.$d()&&(a===$g?this.end=pc:a===Bd&&(this.end=mc));this.qh=null});z.defineProperty(Ea,{color:"color"},function(){return this.Ho},function(a){this.I&&z.pa(this,a);u&&!Da(a)&&z.k('Color "'+a+'" is not a valid color string for Brush.color');this.Ho=a;this.qh=null}); +z.defineProperty(Ea,{start:"start"},function(){return this.Kp},function(a){this.I&&z.pa(this,a);z.l(a,R,Ea,"start");this.Kp=a.V();this.qh=null});z.defineProperty(Ea,{end:"end"},function(){return this.Wo},function(a){this.I&&z.pa(this,a);z.l(a,R,Ea,"end");this.Wo=a.V();this.qh=null});z.defineProperty(Ea,{$u:"startRadius"},function(){return this.Rw},function(a){this.I&&z.pa(this,a);z.p(a,Ea,"startRadius");0>a&&z.wa(a,">= zero",Ea,"startRadius");this.Rw=a;this.qh=null}); z.defineProperty(Ea,{bu:"endRadius"},function(){return this.Nv},function(a){this.I&&z.pa(this,a);z.p(a,Ea,"endRadius");0>a&&z.wa(a,">= zero",Ea,"endRadius");this.Nv=a;this.qh=null});z.defineProperty(Ea,{Jk:"colorStops"},function(){return this.ph},function(a){this.I&&z.pa(this,a);u&&z.l(a,oa,Ea,"colorStops");this.ph=a;this.qh=null});z.defineProperty(Ea,{pattern:"pattern"},function(){return this.zw},function(a){this.I&&z.pa(this,a);this.zw=a;this.qh=null}); Ea.randomColor=function(a,b){void 0===a&&(a=128);u&&(z.p(a,Ea,"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 Xn=(new ma(null)).Mk,Da;Ea.isValidColor=Da=function(a){if("black"===a)return!0;if(""===a)return!1;u&&z.h(a,"string",Ea,"isValidColor");Xn.fillStyle="#000000";var b=Xn.fillStyle;Xn.fillStyle=a;if(Xn.fillStyle!==b)return!0;Xn.fillStyle="#FFFFFF";b=Xn.fillStyle;Xn.fillStyle=a;return Xn.fillStyle!==b};var Yn=new Wn,Zn=new Wn,$n=new Wn,ao=new Wn;Ea.lighten=function(a){return bo(a)}; @@ -1035,15 +1036,15 @@ ao.mg;c=-.969266*$n.Pc+1.8760108*$n.Md+.041556*$n.kd;d=.0556434*$n.Pc+-.2040259* 255,h=Yn.kd/255,k=Math.max(e,g,h),d=Math.min(e,g,h),l=k-d,d=(k+d)/2;if(0===l)c=e=0;else{switch(k){case e:c=(g-h)/l%6;break;case g:c=(h-e)/l+2;break;case h:c=(e-g)/l+4}c*=60;0>c&&(c+=360);e=l/(1-Math.abs(2*d-1))}Zn.Pc=Math.round(c);Zn.Md=Math.round(100*e);Zn.kd=Math.round(100*d);Zn.mg=Yn.mg;Zn.kd=Math.min(100,Math.max(0,Zn.kd+100*a));return"hsla("+Zn.Pc+", "+Zn.Md+"%, "+Zn.kd+"%, "+Zn.mg+")";default:return z.k("Unknown color space: "+b),"rgba(0, 0, 0, 1)"}} function co(a){Xn.clearRect(0,0,1,1);Xn.fillStyle="#000000";var b=Xn.fillStyle;Xn.fillStyle=a;Xn.fillStyle!==b?(Xn.fillRect(0,0,1,1),a=Xn.getImageData(0,0,1,1).data,Yn.Pc=a[0],Yn.Md=a[1],Yn.kd=a[2],Yn.mg=a[3]/255):(Xn.fillStyle="#FFFFFF",b=Xn.fillStyle,Xn.fillStyle=a,Xn.fillStyle===b&&u&&z.k('Color "'+a+'" is not a valid color string for RGBA color conversion'),Yn.Pc=0,Yn.Md=0,Yn.kd=0,Yn.mg=1)}function ho(a){a/=255;return.04045>=a?a/12.92:Math.pow((a+.055)/1.055,2.4)} function no(a){return.0031308>=a?12.92*a:1.055*Math.pow(a,1/2.4)-.055}var mo=216/24389,lo=24389/27,jo=[95.047,100,108.883];function io(a){return a>mo?Math.pow(a,1/3):(lo*a+16)/116}function ko(a){var b=a*a*a;return b>mo?b:(116*a-16)/lo} -function O(){z.xc(this);this.T=4225027;this.Hc=1;this.Ah=null;this.Xb="";this.ic=this.Kb=null;this.ub=(new M(NaN,NaN)).freeze();this.Ye=ie;this.li=Sd;this.ki=ge;this.Jc=new Ga;this.Li=new Ga;this.ej=new Ga;this.Rb=this.Uo=1;this.rg=0;this.Mg=oo;this.an=Nd;this.Dd=(new w(NaN,NaN,NaN,NaN)).freeze();this.ac=(new w(NaN,NaN,NaN,NaN)).freeze();this.Tc=(new w(0,0,NaN,NaN)).freeze();this.Y=this.Us=this.Vs=null;this.Fm=this.ue=Rc;this.et=0;this.pj=1;this.pr=0;this.Qi=1;this.ut=null;this.it=-Infinity;this.on= -0;this.pn=Dd;this.qn=nj;this.xr="";this.Ec=this.ma=null;this.Fo=-1;this.hn=this.un=this.ug=this.rl=this.Kp=null}z.Ai(O);z.ka("GraphObject",O); -O.prototype.cloneProtected=function(a){a.T=this.T|6144;a.Hc=this.Hc;a.Xb=this.Xb;a.Kb=this.Kb;a.ic=this.ic;a.ub.assign(this.ub);a.Ye=this.Ye.V();a.li=this.li.V();a.ki=this.ki.V();a.ej=this.ej.copy();a.Rb=this.Rb;a.rg=this.rg;a.Mg=this.Mg;a.an=this.an.V();a.Dd.assign(this.Dd);a.ac.assign(this.ac);a.Tc.assign(this.Tc);a.Us=this.Us;null!==this.Y&&(a.Y=this.Y.copy());a.ue=this.ue.V();a.Fm=this.Fm.V();a.et=this.et;a.pj=this.pj;a.pr=this.pr;a.Qi=this.Qi;a.ut=this.ut;a.it=this.it;a.on=this.on;a.pn=this.pn.V(); -a.qn=this.qn;a.xr=this.xr;null!==this.ma&&(a.ma=this.ma.copy());a.Ec=this.Ec;a.Fo=this.Fo;null!==this.rl&&(a.rl=z.am(this.rl));null!==this.ug&&(a.ug=this.ug.copy());a.un=this.un};O.prototype.addCopyProperty=O.prototype.JH=function(a){var b=this.rl;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.ld=function(a,b,c,d,e,g,h){var k=this.ba;if(null!==k&&(k.mo(a,b,c,d,e,g,h),zo(this)&&c===this&&a===bg&&Ao(this,k,b),c===k&&0!==(k.T&16777216)&&null!==k.data))for(a=this.va.o,c=a.length,d=0;dk;)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.ld=function(a,b,c,d,e,g,h){var k=this.ba;if(null!==k&&(k.lo(a,b,c,d,e,g,h),zo(this)&&c===this&&a===bg&&Ao(this,k,b),c===k&&0!==(k.T&16777216)&&null!==k.data))for(a=this.va.o,c=a.length,d=0;da&&(a+=360));return a};O.prototype.getDocumentScale=O.prototype.Cj=function(){if(0!==(this.T&4096)===!1)return this.Uo;var a=this.Rb;return null!==this.Q?a*this.Q.Cj():a};O.prototype.getLocalPoint=O.prototype.mF=function(a,b){void 0===b&&(b=new M);b.assign(a);this.Gh.Ci(b);return b}; +(l=!0))));z.A(m);z.Mb(c);!l&&(Oe(a,e,g)||Oe(a,g,h)||Oe(a,h,k)||Oe(a,k,e))&&(l=!0)}z.A(e);z.A(g);z.A(h);z.A(k);return l};O.prototype.getDocumentPoint=O.prototype.cb=function(a,b){void 0===b&&(b=new M);if(a instanceof R){a.$d()&&z.k("getDocumentPoint:s Spot must be specific: "+a.toString());var c=this.Ja;b.m(a.x*c.width+a.offsetX,a.y*c.height+a.offsetY)}else b.set(a);this.Gh.wb(b);return b}; +O.prototype.getDocumentAngle=O.prototype.Rn=function(){var a;a=this.Gh;1===a.m11&&0===a.m12?a=0:(a=180*Math.atan2(a.m12,a.m11)/Math.PI,0>a&&(a+=360));return a};O.prototype.getDocumentScale=O.prototype.Cj=function(){if(0!==(this.T&4096)===!1)return this.To;var a=this.Rb;return null!==this.Q?a*this.Q.Cj():a};O.prototype.getLocalPoint=O.prototype.mF=function(a,b){void 0===b&&(b=new M);b.assign(a);this.Gh.Ci(b);return b}; O.prototype.getNearestIntersectionPoint=O.prototype.nF=function(a,b,c){return this.Tn(a.x,a.y,b.x,b.y,c)};f=O.prototype;f.Tn=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.Xl)return g=this.Z,Ge(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.m(0,0);d=this.Ja;c=Ge(0,0,d.width,d.height,h,a,b,c,e);e.transform(g);return c}; function Bk(a,b,c,d,e){if(!1!==Cm(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.Da,k=0;a.mb&&(k=a.mb);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(Eo(a,!0)){case Tj:k=g=0;l&&(c=b=Infinity);break;case gf:isFinite(b)&&b>d&&(g=b);isFinite(c)&& -c>e&&(k=c);break;case qo:isFinite(b)&&b>d&&(g=b);k=0;l&&(c=Infinity);break;case po:isFinite(c)&&c>e&&(k=c),g=0,l&&(b=Infinity)}var l=a.mf,m=a.ig;g>l.width&&m.widthl.height&&m.heighte&&(k=c);break;case qo:isFinite(b)&&b>d&&(g=b);k=0;l&&(c=Infinity);break;case po:isFinite(c)&&c>e&&(k=c),g=0,l&&(b=Infinity)}var l=a.mf,m=a.ig;g>l.width&&m.widthl.height&&m.heighta.height||this.gi.rf>a.width))&&(c=!0);this.T=c?this.T|256:this.T&-257;this.ac.F()|| +f.qc=function(a,b,c,d,e){this.$i();var g=z.Of();g.assign(this.ac);this.ac.Za();if(!1===Dm(this)){var h=this.ac;h.x=a;h.y=b;h.width=c;h.height=d}else this.wj(a,b,c,d);this.ac.freeze();this.ug=void 0===e?null:e;c=!1;void 0!==e?c=!0:null!==this.Q&&(e=this.Q.Tc,d=this.Ea,null!==this.Xl&&(d=this.ac),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 pa&&(a=this.Tc,this.jw>a.height||this.gi.rf>a.width))&&(c=!0);this.T=c?this.T|256:this.T&-257;this.ac.F()|| z.k("Non-real actualBounds has been set. Object "+this+", actualBounds: "+this.ac.toString());this.gy(g,this.ac);Fo(this,!1);z.Mb(g)};f.wj=function(){}; function Go(a,b,c,d,e){var g=a.Z;g.x=b;g.y=c;g.width=d;g.height=e;if(!a.Da.F()){g=a.Dd;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=Eo(a,!0);c===d&&g===e&&(b=Tj);switch(b){case Tj:if(c>d||g>e)cm(a,!0),Bk(a,c>d?d:c,g>e?e:g);break;case gf:cm(a,!0);Bk(a,d,e,0,0);break;case qo:cm(a,!0);Bk(a,d,g,0,0);break;case po:cm(a,!0),Bk(a,c,e,0,0)}}} -f.gy=function(a,b){var c=this.ba;null!==c&&null!==c.g&&(c.oo!==this&&c.rG!==this&&c.vG!==this||Ho(c,!0),this.ra(),Bb(a,b)||(c.pm(),this.sw(c)))};f.sw=function(a){null!==this.vd&&(Ho(a,!0),a instanceof E&&Io(a,this))};z.defineProperty(O,{Tq:"shadowVisible"},function(){return this.un},function(a){var b=this.un;b!==a&&(u&&null!==a&&z.h(a,"boolean",O,"shadowVisible"),this.un=a,this.ra(),this.i("shadowVisible",b,a))}); +f.gy=function(a,b){var c=this.ba;null!==c&&null!==c.g&&(c.no!==this&&c.rG!==this&&c.vG!==this||Ho(c,!0),this.ra(),Bb(a,b)||(c.pm(),this.sw(c)))};f.sw=function(a){null!==this.vd&&(Ho(a,!0),a instanceof E&&Io(a,this))};z.defineProperty(O,{Tq:"shadowVisible"},function(){return this.un},function(a){var b=this.un;b!==a&&(u&&null!==a&&z.h(a,"boolean",O,"shadowVisible"),this.un=a,this.ra(),this.i("shadowVisible",b,a))}); O.prototype.Fe=function(a,b){if(this.visible){var c=this.ac;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 md)a:{if(this.visible){var g=null,h=a.Wx;if(this instanceof I&&(this.type===Jo||this.type===Ko))Lo(this,a,b);else{var k=this.ac;if(0!==k.width&&0!==k.height&&!isNaN(k.x)&&!isNaN(k.y)){var l=this.transform,m=this.Q;0!==(this.T&4096)===!0&&Mo(this);var c=0!==(this.T&256),n=!1;this instanceof pa&&(a.font=this.font);if(c){n=m.jh()?m.Ja:m.Z;if(null!==this.ug)var p=this.ug,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;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 v=this,q=!0;if(!v.isVisible())break a}a.Lh.Yb=[1,0,0,1,0,0];r=!1;q&&this.Vk&&b.Dj("drawShadows")&&(s=this.tn, -a.FB(s.x*b.scale*b.rd,s.y*b.scale*b.rd,v.Lg),a.ro(),a.shadowColor=v.sn);v=!1;this.ba&&b.Dj("drawShadows")&&(v=this.ba.Vk);!0===this.Tq?(a.ro(),!1===r&&v&&(od(a,1,0,0,1,0,0),a.hb(),r=!0)):!1===this.Tq&&a.qo();null!==this.ic&&(No(this,a,this.ic,!0,!0),!1===r&&v&&(od(a,1,0,0,1,0,0),a.hb(),r=!0),this.ic instanceof Ea&&this.ic.type===Bd?(a.beginPath(),a.rect(k.x,k.y,k.width,k.height),a.Tg(this.ic)):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.Lh.Yb= -[l.m11,l.m12,l.m21,l.m22,l.dx,l.dy];if(null!==this.Kb){!1===r&&v&&(od(a,1,0,0,1,0,0),a.hb(),r=!0);var p=this.Ja,l=k=0,s=p.width,p=p.height,t=0;this instanceof Y&&(p=this.nb.sb,k=p.x,l=p.y,s=p.width,p=p.height,t=this.ef);No(this,a,this.Kb,!0,!1);this.Kb instanceof Ea&&this.Kb.type===Bd?(a.beginPath(),a.rect(k-t/2,l-t/2,s+t,p+t),a.Tg(this.Kb)):a.fillRect(k-t/2,l-t/2,s+t,p+t)}v&&(null!==this.Kb||null!==this.ic||null!==m&&0!==(m.T&512)||null!==m&&(m.type===Kl||m.type===Rj)&&m.Xd()!==this)?(Oo(this,!0), -null===this.Tq&&a.qo()):Oo(this,!1);this.Ok(a,b);v&&0!==(this.T&512)===!0&&a.ro();q&&v&&a.qo();c&&(a.restore(),n&&a.Gf.pop());this instanceof I&&(g=a.Gf.pop());!0===r&&a.Gf.pop();null!==a.$E&&(null===g&&(h===a.Wx?(od(a,1,0,0,1,0,0),g=a.Gf.pop()):g=a.Wx),a.$E(this,g))}}}}else{if(this instanceof I&&(this.type===Jo||this.type===Ko)){Lo(this,a,b);1!==d&&(a.globalAlpha=e);return}this instanceof H&&this.fo(!1);u&&u.xj&&u.vI(a,this);g=this.transform;h=this.Q;0!==(this.T&4096)===!0&&Mo(this);m=0!==(this.T& +a.FB(s.x*b.scale*b.rd,s.y*b.scale*b.rd,v.Lg),a.qo(),a.shadowColor=v.sn);v=!1;this.ba&&b.Dj("drawShadows")&&(v=this.ba.Vk);!0===this.Tq?(a.qo(),!1===r&&v&&(od(a,1,0,0,1,0,0),a.hb(),r=!0)):!1===this.Tq&&a.po();null!==this.ic&&(No(this,a,this.ic,!0,!0),!1===r&&v&&(od(a,1,0,0,1,0,0),a.hb(),r=!0),this.ic instanceof Ea&&this.ic.type===Bd?(a.beginPath(),a.rect(k.x,k.y,k.width,k.height),a.Tg(this.ic)):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.Lh.Yb= +[l.m11,l.m12,l.m21,l.m22,l.dx,l.dy];if(null!==this.Kb){!1===r&&v&&(od(a,1,0,0,1,0,0),a.hb(),r=!0);var p=this.Ja,l=k=0,s=p.width,p=p.height,t=0;this instanceof Y&&(p=this.nb.sb,k=p.x,l=p.y,s=p.width,p=p.height,t=this.ef);No(this,a,this.Kb,!0,!1);this.Kb instanceof Ea&&this.Kb.type===Bd?(a.beginPath(),a.rect(k-t/2,l-t/2,s+t,p+t),a.Tg(this.Kb)):a.fillRect(k-t/2,l-t/2,s+t,p+t)}v&&(null!==this.Kb||null!==this.ic||null!==m&&0!==(m.T&512)||null!==m&&(m.type===Kl||m.type===Rj)&&m.Wd()!==this)?(Oo(this,!0), +null===this.Tq&&a.po()):Oo(this,!1);this.Ok(a,b);v&&0!==(this.T&512)===!0&&a.qo();q&&v&&a.po();c&&(a.restore(),n&&a.Gf.pop());this instanceof I&&(g=a.Gf.pop());!0===r&&a.Gf.pop();null!==a.$E&&(null===g&&(h===a.Wx?(od(a,1,0,0,1,0,0),g=a.Gf.pop()):g=a.Wx),a.$E(this,g))}}}}else{if(this instanceof I&&(this.type===Jo||this.type===Ko)){Lo(this,a,b);1!==d&&(a.globalAlpha=e);return}this instanceof H&&this.fo(!1);u&&u.xj&&u.vI(a,this);g=this.transform;h=this.Q;0!==(this.T&4096)===!0&&Mo(this);m=0!==(this.T& 256);a.Wt&&(m=!1);this instanceof pa&&(a.font=this.font);if(m){u&&u.ZE&&z.trace("clip"+this.toString());n=h.jh()?h.Ja:h.Z;null!==this.ug?(v=this.ug,k=v.x,l=v.y,q=v.width,v=v.height):(k=Math.max(c.x,n.x),l=Math.max(c.y,n.y),q=Math.min(c.right,n.right)-k,v=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.ZE&&u.xI(a,k,l,q,v);a.save();a.beginPath();a.rect(k,l,q,v);a.clip()}n=!1;if(this instanceof D){n=!0;if(!this.isVisible()){1!== -d&&(a.globalAlpha=e);return}this.Vk&&b.Dj("drawShadows")&&(k=this.tn,a.FB(k.x*b.scale*b.rd,k.y*b.scale*b.rd,this.Lg),a.ro(),a.shadowColor=this.sn)}k=!1;this.ba&&b.Dj("drawShadows")&&(k=this.ba.Vk);!0===this.Tq?a.ro():!1===this.Tq&&a.qo();null!==this.ic&&(No(this,a,this.ic,!0,!0),this.ic instanceof Ea&&this.ic.type===Bd?(a.beginPath(),a.rect(c.x,c.y,c.width,c.height),a.Tg(this.ic)):a.fillRect(c.x,c.y,c.width,c.height));g.uu()||a.transform(g.m11,g.m12,g.m21,g.m22,g.dx,g.dy);null!==this.Kb&&(v=this.Ja, -l=c=0,q=v.width,v=v.height,r=0,this instanceof Y&&(v=this.nb.sb,c=v.x,l=v.y,q=v.width,v=v.height,r=this.ef),No(this,a,this.Kb,!0,!1),this.Kb instanceof Ea&&this.Kb.type===Bd?(a.beginPath(),a.rect(c-r/2,l-r/2,q+r,v+r),a.Tg(this.Kb)):a.fillRect(c-r/2,l-r/2,q+r,v+r));u&&u.xj&&u.wI(a,this);k&&(null!==this.Kb||null!==this.ic||null!==h&&0!==(h.T&512)||null!==h&&(h.type===Kl||h.type===Rj)&&h.Xd()!==this)?(Oo(this,!0),null===this.Tq&&a.qo()):Oo(this,!1);this.Ok(a,b);k&&0!==(this.T&512)===!0&&a.ro();n&&k&& -a.qo();m?(a.restore(),this instanceof I?da(a,!0):da(a,!1)):g.uu()||(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)}}}; +d&&(a.globalAlpha=e);return}this.Vk&&b.Dj("drawShadows")&&(k=this.tn,a.FB(k.x*b.scale*b.rd,k.y*b.scale*b.rd,this.Lg),a.qo(),a.shadowColor=this.sn)}k=!1;this.ba&&b.Dj("drawShadows")&&(k=this.ba.Vk);!0===this.Tq?a.qo():!1===this.Tq&&a.po();null!==this.ic&&(No(this,a,this.ic,!0,!0),this.ic instanceof Ea&&this.ic.type===Bd?(a.beginPath(),a.rect(c.x,c.y,c.width,c.height),a.Tg(this.ic)):a.fillRect(c.x,c.y,c.width,c.height));g.uu()||a.transform(g.m11,g.m12,g.m21,g.m22,g.dx,g.dy);null!==this.Kb&&(v=this.Ja, +l=c=0,q=v.width,v=v.height,r=0,this instanceof Y&&(v=this.nb.sb,c=v.x,l=v.y,q=v.width,v=v.height,r=this.ef),No(this,a,this.Kb,!0,!1),this.Kb instanceof Ea&&this.Kb.type===Bd?(a.beginPath(),a.rect(c-r/2,l-r/2,q+r,v+r),a.Tg(this.Kb)):a.fillRect(c-r/2,l-r/2,q+r,v+r));u&&u.xj&&u.wI(a,this);k&&(null!==this.Kb||null!==this.ic||null!==h&&0!==(h.T&512)||null!==h&&(h.type===Kl||h.type===Rj)&&h.Wd()!==this)?(Oo(this,!0),null===this.Tq&&a.po()):Oo(this,!1);this.Ok(a,b);k&&0!==(this.T&512)===!0&&a.qo();n&&k&& +a.po();m?(a.restore(),this instanceof I?da(a,!0):da(a,!1)):g.uu()||(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 Lo(a,b,c){var d=a.ac;0===d.width||0===d.height||isNaN(d.x)||isNaN(d.y)||(null!==a.ic&&(No(a,b,a.ic,!0,!0),a.ic instanceof Ea&&a.ic.type===Bd?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.Tg(a.ic)):b.fillRect(d.x,d.y,d.width,d.height)),null!==a.Kb&&(No(a,b,a.Kb,!0,!1),a.Kb instanceof Ea&&a.Kb.type===Bd?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.Tg(a.Kb)):b.fillRect(d.x,d.y,d.width,d.height)),a.Ok(b,c))}O.prototype.Ok=function(){}; -function No(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===Zg)d?b.fillStyle=c.color:b.strokeStyle=c.color;else{var k,h=a.Ja,g=h.width,h=h.height;if(e)var l=a.Z,g=l.width,h=l.height;var m=b instanceof Ad;if(m&&c.qh&&(c.type===Tn||c.Jo===g&&c.az===h))k=c.qh;else{var n=l=0,p=0,q=0,r=0,s=0,s=r=0;e&&(l=a.Z,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===$g)k=b.createLinearGradient(l,n,p,q);else if(c.type===Bd)s=isNaN(c.bu)?Math.max(g,h)/2:c.bu,isNaN(c.$u)?(r=0,s=Math.max(g,h)/2):r=c.$u,k=b.createRadialGradient(l,n,r,p,q,s);else if(c.type===Tn)try{k=b.createPattern(c.pattern,"repeat")}catch(v){k=null}else z.hc(c.type,"Brush type");if(c.type!==Tn&&(e=c.Jk,null!==e))for(e=e.j;e.next();)k.addColorStop(e.key,e.value);if(m&&(c.qh=k,null!==k&&(c.Jo=g,c.az=h),null===k&&c.type===Tn&&-1!==c.Jo)){c.Jo=-1;var t=a.g;null!==t&& --1===c.Jo&&z.setTimeout(function(){t.Iq()},600)}}d?b.fillStyle=k:b.strokeStyle=k}}}O.prototype.isContainedBy=O.prototype.rm=function(a){if(a instanceof I)a:{if(this!==a&&null!==a)for(var b=this.Q;null!==b;){if(b===a){a=!0;break a}b=b.Q}a=!1}else a=!1;return a};O.prototype.isVisibleObject=O.prototype.Jj=function(){if(!this.visible)return!1;var a=this.Q;return null!==a?a.Jj():!0}; +function No(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===Zg)d?b.fillStyle=c.color:b.strokeStyle=c.color;else{var k,h=a.Ja,g=h.width,h=h.height;if(e)var l=a.Z,g=l.width,h=l.height;var m=b instanceof Ad;if(m&&c.qh&&(c.type===Tn||c.Io===g&&c.az===h))k=c.qh;else{var n=l=0,p=0,q=0,r=0,s=0,s=r=0;e&&(l=a.Z,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===$g)k=b.createLinearGradient(l,n,p,q);else if(c.type===Bd)s=isNaN(c.bu)?Math.max(g,h)/2:c.bu,isNaN(c.$u)?(r=0,s=Math.max(g,h)/2):r=c.$u,k=b.createRadialGradient(l,n,r,p,q,s);else if(c.type===Tn)try{k=b.createPattern(c.pattern,"repeat")}catch(v){k=null}else z.hc(c.type,"Brush type");if(c.type!==Tn&&(e=c.Jk,null!==e))for(e=e.j;e.next();)k.addColorStop(e.key,e.value);if(m&&(c.qh=k,null!==k&&(c.Io=g,c.az=h),null===k&&c.type===Tn&&-1!==c.Io)){c.Io=-1;var t=a.g;null!==t&& +-1===c.Io&&z.setTimeout(function(){t.Iq()},600)}}d?b.fillStyle=k:b.strokeStyle=k}}}O.prototype.isContainedBy=O.prototype.rm=function(a){if(a instanceof I)a:{if(this!==a&&null!==a)for(var b=this.Q;null!==b;){if(b===a){a=!0;break a}b=b.Q}a=!1}else a=!1;return a};O.prototype.isVisibleObject=O.prototype.Jj=function(){if(!this.visible)return!1;var a=this.Q;return null!==a?a.Jj():!0}; O.prototype.isEnabledObject=O.prototype.su=function(){for(var a=this instanceof I?this:this.Q;null!==a&&a.isEnabled;)a=a.Q;return null===a};z.defineProperty(O,{aF:"enabledChanged"},function(){return null!==this.ma?this.ma.Nr:null},function(a){uo(this);var b=this.ma.Nr;b!==a&&(null!==a&&z.h(a,"function",O,"enabledChanged"),this.ma.Nr=a,this.i("enabledChanged",b,a))}); -function Mo(a){if(0!==(a.T&2048)===!0){var b=a.Jc;b.reset();if(!a.ac.F()||!a.Dd.F()){Po(a,!1);return}b.translate(a.ac.x,a.ac.y);b.translate(-a.Ea.x,-a.Ea.y);var c=a.Ja;Co(a,b,c.x,c.y,c.width,c.height);Po(a,!1);Qo(a,!0)}0!==(a.T&4096)===!0&&(b=a.Q,null===b?(a.Li.set(a.Jc),a.Uo=a.scale,Qo(a,!1)):null!==b.Gh&&(c=a.Li,c.reset(),b.jh()?c.multiply(b.Li):null!==b.Q&&c.multiply(b.Q.Li),c.multiply(a.Jc),a.Uo=a.scale*b.Uo,Qo(a,!1)))} +function Mo(a){if(0!==(a.T&2048)===!0){var b=a.Jc;b.reset();if(!a.ac.F()||!a.Dd.F()){Po(a,!1);return}b.translate(a.ac.x,a.ac.y);b.translate(-a.Ea.x,-a.Ea.y);var c=a.Ja;Co(a,b,c.x,c.y,c.width,c.height);Po(a,!1);Qo(a,!0)}0!==(a.T&4096)===!0&&(b=a.Q,null===b?(a.Li.set(a.Jc),a.To=a.scale,Qo(a,!1)):null!==b.Gh&&(c=a.Li,c.reset(),b.jh()?c.multiply(b.Li):null!==b.Q&&c.multiply(b.Q.Li),c.multiply(a.Jc),a.To=a.scale*b.To,Qo(a,!1)))} function Co(a,b,c,d,e,g){1!==a.scale&&b.scale(a.scale);if(0!==a.angle){var h=mc;a.yf&&a.yf.jd()&&(h=a.yf);var k=z.P();if(a instanceof D&&a.cc!==a)for(c=a.cc,d=c.Ja,k.Xu(d.x,d.y,d.width,d.height,h),c.ej.wb(k),k.offset(-c.Ea.x,-c.Ea.y),h=c.Q;null!==h&&h!==a;)h.ej.wb(k),k.offset(-h.Ea.x,-h.Ea.y),h=h.Q;else k.Xu(c,d,e,g,h);b.rotate(a.angle,k.x,k.y);z.A(k)}}f=O.prototype;f.K=function(a){void 0===a&&(a=!1);if(!0!==Cm(this)){cm(this,!0);Fo(this,!0);var b=this.Q;null===b||a||b.K()}}; -f.uq=function(){!0!==Cm(this)&&(cm(this,!0),Fo(this,!0))};function Ro(a){if(!1===Dm(a)){var b=a.Q;null!==b?b.K():a instanceof D&&(b=a.g,null!==b&&(b.Cg.add(a),a instanceof E&&a.gg(),b.Te()));Fo(a,!0)}}f.$i=function(){0!==(this.T&2048)===!1&&(Po(this,!0),Qo(this,!0))};f.QA=function(){Qo(this,!0)};f.ra=function(){var a=this.ba;null!==a&&a.ra()}; -function Eo(a,b){var c=a.stretch,d=a.Q;if(null!==d&&d.da===ha)return So(a,d.pe(a.Zb),d.oe(a.column),b);if(null!==d&&d.da===Kl&&d.Xd()===a)return To(a,gf,b);if(c===oo){if(null!==d){if(d.da===Rj&&d.Xd()===a)return To(a,gf,b);c=d.me;return c===oo?To(a,Tj,b):To(a,c,b)}return To(a,Tj,b)}return To(a,c,b)} -function So(a,b,c,d){var e=a.stretch;if(e!==oo)return To(a,e,d);var g=e=null;switch(b.stretch){case po:g=!0;break;case gf:g=!0}switch(c.stretch){case qo:e=!0;break;case gf:e=!0}b=a.Q.me;null===e&&(e=b===qo||b===gf);null===g&&(g=b===po||b===gf);return!0===e&&!0===g?To(a,gf,d):!0===e?To(a,qo,d):!0===g?To(a,po,d):To(a,Tj,d)} +f.tq=function(){!0!==Cm(this)&&(cm(this,!0),Fo(this,!0))};function Ro(a){if(!1===Dm(a)){var b=a.Q;null!==b?b.K():a instanceof D&&(b=a.g,null!==b&&(b.Cg.add(a),a instanceof E&&a.gg(),b.Te()));Fo(a,!0)}}f.$i=function(){0!==(this.T&2048)===!1&&(Po(this,!0),Qo(this,!0))};f.QA=function(){Qo(this,!0)};f.ra=function(){var a=this.ba;null!==a&&a.ra()}; +function Eo(a,b){var c=a.stretch,d=a.Q;if(null!==d&&d.da===ha)return So(a,d.oe(a.Zb),d.ne(a.column),b);if(null!==d&&d.da===Kl&&d.Wd()===a)return To(a,gf,b);if(c===oo){if(null!==d){if(d.da===Rj&&d.Wd()===a)return To(a,gf,b);c=d.le;return c===oo?To(a,Tj,b):To(a,c,b)}return To(a,Tj,b)}return To(a,c,b)} +function So(a,b,c,d){var e=a.stretch;if(e!==oo)return To(a,e,d);var g=e=null;switch(b.stretch){case po:g=!0;break;case gf:g=!0}switch(c.stretch){case qo:e=!0;break;case gf:e=!0}b=a.Q.le;null===e&&(e=b===qo||b===gf);null===g&&(g=b===po||b===gf);return!0===e&&!0===g?To(a,gf,d):!0===e?To(a,qo,d):!0===g?To(a,po,d):To(a,Tj,d)} function To(a,b,c){if(c)return b;if(b===Tj)return Tj;c=a.Da;if(c.F())return Tj;a=a.angle;if(!isNaN(c.width))if(90!==a&&270!==a){if(b===qo)return Tj;if(b===gf)return po}else{if(b===po)return Tj;if(b===gf)return qo}if(!isNaN(c.height))if(90!==a&&270!==a){if(b===po)return Tj;if(b===gf)return qo}else{if(b===qo)return Tj;if(b===gf)return po}return b} z.defineProperty(O,{Pq:"segmentOrientation"},function(){return this.qn},function(a){var b=this.qn;b!==a&&(u&&z.Ca(a,H,O,"segmentOrientation"),this.qn=a,this.K(),this.i("segmentOrientation",b,a),a===nj&&(this.angle=0))});z.defineProperty(O,{Ue:"segmentIndex"},function(){return this.it},function(a){u&&z.h(a,"number",O,"segmentIndex");a=Math.round(a);var b=this.it;b!==a&&(this.it=a,this.K(),this.i("segmentIndex",b,a))}); z.defineProperty(O,{vB:"segmentFraction"},function(){return this.on},function(a){u&&z.h(a,"number",O,"segmentFraction");isNaN(a)?a=0:0>a?a=0:1a&&z.wa(a,">= 0",O,"column"),this.pr=a,this.K(),this.i("column",b,a))}); +z.defineProperty(O,{alignment:"alignment"},function(){return this.te},function(a){var b=this.te;b.O(a)||(u&&z.l(a,R,O,"alignment"),a.$d()&&!a.hd()&&z.k("GraphObject.alignment for "+this+" must be a real Spot or Spot.Default, not: "+a),this.te=a=a.V(),Ro(this),this.i("alignment",b,a))});z.defineProperty(O,{column:"column"},function(){return this.pr},function(a){u&&z.p(a,O,"column");a=Math.round(a);var b=this.pr;b!==a&&(0>a&&z.wa(a,">= 0",O,"column"),this.pr=a,this.K(),this.i("column",b,a))}); z.defineProperty(O,{bI:"columnSpan"},function(){return this.Qi},function(a){u&&z.h(a,"number",O,"columnSpan");a=Math.round(a);var b=this.Qi;b!==a&&(1>a&&z.wa(a,">= 1",O,"columnSpan"),this.Qi=a,this.K(),this.i("columnSpan",b,a))});z.defineProperty(O,{Zb:"row"},function(){return this.et},function(a){u&&z.p(a,O,"row");a=Math.round(a);var b=this.et;b!==a&&(0>a&&z.wa(a,">= 0",O,"row"),this.et=a,this.K(),this.i("row",b,a))}); z.defineProperty(O,{rowSpan:"rowSpan"},function(){return this.pj},function(a){u&&z.h(a,"number",O,"rowSpan");a=Math.round(a);var b=this.pj;b!==a&&(1>a&&z.wa(a,">= 1",O,"rowSpan"),this.pj=a,this.K(),this.i("rowSpan",b,a))});z.defineProperty(O,{By:"spanAllocation"},function(){return this.ut},function(a){var b=this.ut;b!==a&&(null!==a&&z.h(a,"function",O,"spanAllocation"),this.ut=a,this.K(),this.i("spanAllocation",b,a))}); -z.defineProperty(O,{Fh:"alignmentFocus"},function(){return this.Fm},function(a){var b=this.Fm;b.O(a)||(u&&z.l(a,R,O,"alignmentFocus"),!a.ae()||a.hd()||a.O(gc)&&this instanceof E||z.k("GraphObject.alignmentFocus must be a real Spot or Spot.Default, not: "+a),this.Fm=a=a.V(),this.K(),this.i("alignmentFocus",b,a))}); -z.defineProperty(O,{vd:"portId"},function(){return this.Us},function(a){var b=this.Us;if(b!==a){u&&null!==a&&z.h(a,"string",O,"portId");var c=this.ba;null===c||c instanceof E||(z.k("Cannot set portID on a Link: "+a),c=null);null!==b&&null!==c&&Xo(c,this);this.Us=a;if(null!==a&&c){c.Tk=!0;null===c.Sd&&Yo(c);var d=this.vd;null!==d&&c.Sd.add(d,this)}this.i("portId",b,a)}});function Zo(a){var b=a.ba;if(b instanceof E&&(null!==a.vd||a===b.port)){var c=b.g;null===c||c.sa.lb||Io(b,a)}} -function Uo(a){var b=a.g;null===b||b.sa.lb||(a instanceof I?a instanceof E?a.gg():$o(a,a,function(a){Zo(a)}):Zo(a))}z.defineProperty(O,{Hb:"toSpot"},function(){return null!==this.Y?this.Y.Ek:gc},function(a){this.Yd();var b=this.Y.Ek;b.O(a)||(u&&z.l(a,R,O,"toSpot"),a=a.V(),this.Y.Ek=a,this.i("toSpot",b,a),Zo(this))}); -z.defineProperty(O,{Bm:"toEndSegmentLength"},function(){return null!==this.Y?this.Y.Ck:10},function(a){this.Yd();var b=this.Y.Ck;b!==a&&(u&&z.h(a,"number",O,"toEndSegmentLength"),0>a&&z.wa(a,">= 0",O,"toEndSegmentLength"),this.Y.Ck=a,this.i("toEndSegmentLength",b,a),Zo(this))}); -z.defineProperty(O,{bv:"toEndSegmentDirection"},function(){return null!==this.Y?this.Y.Bk:xo},function(a){this.Yd();var b=this.Y.Bk;b!==a&&(z.Nn("GraphObject.toEndSegmentDirection","2.0"),u&&z.Ca(a,E,O,"toEndSegmentDirection"),this.Y.Bk=a,this.i("toEndSegmentDirection",b,a),Zo(this))});z.defineProperty(O,{cv:"toShortLength"},function(){return null!==this.Y?this.Y.Dk:0},function(a){this.Yd();var b=this.Y.Dk;b!==a&&(u&&z.h(a,"number",O,"toShortLength"),this.Y.Dk=a,this.i("toShortLength",b,a),Zo(this))}); -z.defineProperty(O,{QG:"toLinkable"},function(){return null!==this.Y?this.Y.Dt:null},function(a){this.Yd();var b=this.Y.Dt;b!==a&&(u&&null!==a&&z.h(a,"boolean",O,"toLinkable"),this.Y.Dt=a,this.i("toLinkable",b,a))});z.defineProperty(O,{yK:"toMaxLinks"},function(){return null!==this.Y?this.Y.Et:Infinity},function(a){this.Yd();var b=this.Y.Et;b!==a&&(u&&z.h(a,"number",O,"toMaxLinks"),0>a&&z.wa(a,">= 0",O,"toMaxLinks"),this.Y.Et=a,this.i("toMaxLinks",b,a))}); -z.defineProperty(O,{Gb:"fromSpot"},function(){return null!==this.Y?this.Y.fk:gc},function(a){this.Yd();var b=this.Y.fk;b.O(a)||(u&&z.l(a,R,O,"fromSpot"),a=a.V(),this.Y.fk=a,this.i("fromSpot",b,a),Zo(this))});z.defineProperty(O,{lm:"fromEndSegmentLength"},function(){return null!==this.Y?this.Y.dk:10},function(a){this.Yd();var b=this.Y.dk;b!==a&&(u&&z.h(a,"number",O,"fromEndSegmentLength"),0>a&&z.wa(a,">= 0",O,"fromEndSegmentLength"),this.Y.dk=a,this.i("fromEndSegmentLength",b,a),Zo(this))}); -z.defineProperty(O,{ju:"fromEndSegmentDirection"},function(){return null!==this.Y?this.Y.ck:xo},function(a){this.Yd();var b=this.Y.ck;b!==a&&(z.Nn("GraphObject.fromEndSegmentDirection","2.0"),u&&z.Ca(a,E,O,"fromEndSegmentDirection"),this.Y.ck=a,this.i("fromEndSegmentDirection",b,a),Zo(this))}); -z.defineProperty(O,{ku:"fromShortLength"},function(){return null!==this.Y?this.Y.ek:0},function(a){this.Yd();var b=this.Y.ek;b!==a&&(u&&z.h(a,"number",O,"fromShortLength"),this.Y.ek=a,this.i("fromShortLength",b,a),Zo(this))});z.defineProperty(O,{kF:"fromLinkable"},function(){return null!==this.Y?this.Y.Rr:null},function(a){this.Yd();var b=this.Y.Rr;b!==a&&(u&&null!==a&&z.h(a,"boolean",O,"fromLinkable"),this.Y.Rr=a,this.i("fromLinkable",b,a))}); -z.defineProperty(O,{GA:"fromMaxLinks"},function(){return null!==this.Y?this.Y.Sr:Infinity},function(a){this.Yd();var b=this.Y.Sr;b!==a&&(u&&z.h(a,"number",O,"fromMaxLinks"),0>a&&z.wa(a,">= 0",O,"fromMaxLinks"),this.Y.Sr=a,this.i("fromMaxLinks",b,a))});z.defineProperty(O,{cursor:"cursor"},function(){return this.xr},function(a){var b=this.xr;b!==a&&(z.h(a,"string",O,"cursor"),this.xr=a,this.i("cursor",b,a))}); +z.defineProperty(O,{Fh:"alignmentFocus"},function(){return this.Fm},function(a){var b=this.Fm;b.O(a)||(u&&z.l(a,R,O,"alignmentFocus"),!a.$d()||a.hd()||a.O(gc)&&this instanceof E||z.k("GraphObject.alignmentFocus must be a real Spot or Spot.Default, not: "+a),this.Fm=a=a.V(),this.K(),this.i("alignmentFocus",b,a))}); +z.defineProperty(O,{vd:"portId"},function(){return this.Us},function(a){var b=this.Us;if(b!==a){u&&null!==a&&z.h(a,"string",O,"portId");var c=this.ba;null===c||c instanceof E||(z.k("Cannot set portID on a Link: "+a),c=null);null!==b&&null!==c&&Xo(c,this);this.Us=a;if(null!==a&&c){c.Tk=!0;null===c.ze&&Yo(c);var d=this.vd;null!==d&&c.ze.add(d,this)}this.i("portId",b,a)}});function Zo(a){var b=a.ba;if(b instanceof E&&(null!==a.vd||a===b.port)){var c=b.g;null===c||c.sa.lb||Io(b,a)}} +function Uo(a){var b=a.g;null===b||b.sa.lb||(a instanceof I?a instanceof E?a.gg():$o(a,a,function(a){Zo(a)}):Zo(a))}z.defineProperty(O,{Hb:"toSpot"},function(){return null!==this.Y?this.Y.Ek:gc},function(a){this.Xd();var b=this.Y.Ek;b.O(a)||(u&&z.l(a,R,O,"toSpot"),a=a.V(),this.Y.Ek=a,this.i("toSpot",b,a),Zo(this))}); +z.defineProperty(O,{Bm:"toEndSegmentLength"},function(){return null!==this.Y?this.Y.Ck:10},function(a){this.Xd();var b=this.Y.Ck;b!==a&&(u&&z.h(a,"number",O,"toEndSegmentLength"),0>a&&z.wa(a,">= 0",O,"toEndSegmentLength"),this.Y.Ck=a,this.i("toEndSegmentLength",b,a),Zo(this))}); +z.defineProperty(O,{bv:"toEndSegmentDirection"},function(){return null!==this.Y?this.Y.Bk:xo},function(a){this.Xd();var b=this.Y.Bk;b!==a&&(z.Nn("GraphObject.toEndSegmentDirection","2.0"),u&&z.Ca(a,E,O,"toEndSegmentDirection"),this.Y.Bk=a,this.i("toEndSegmentDirection",b,a),Zo(this))});z.defineProperty(O,{cv:"toShortLength"},function(){return null!==this.Y?this.Y.Dk:0},function(a){this.Xd();var b=this.Y.Dk;b!==a&&(u&&z.h(a,"number",O,"toShortLength"),this.Y.Dk=a,this.i("toShortLength",b,a),Zo(this))}); +z.defineProperty(O,{QG:"toLinkable"},function(){return null!==this.Y?this.Y.Dt:null},function(a){this.Xd();var b=this.Y.Dt;b!==a&&(u&&null!==a&&z.h(a,"boolean",O,"toLinkable"),this.Y.Dt=a,this.i("toLinkable",b,a))});z.defineProperty(O,{yK:"toMaxLinks"},function(){return null!==this.Y?this.Y.Et:Infinity},function(a){this.Xd();var b=this.Y.Et;b!==a&&(u&&z.h(a,"number",O,"toMaxLinks"),0>a&&z.wa(a,">= 0",O,"toMaxLinks"),this.Y.Et=a,this.i("toMaxLinks",b,a))}); +z.defineProperty(O,{Gb:"fromSpot"},function(){return null!==this.Y?this.Y.fk:gc},function(a){this.Xd();var b=this.Y.fk;b.O(a)||(u&&z.l(a,R,O,"fromSpot"),a=a.V(),this.Y.fk=a,this.i("fromSpot",b,a),Zo(this))});z.defineProperty(O,{lm:"fromEndSegmentLength"},function(){return null!==this.Y?this.Y.dk:10},function(a){this.Xd();var b=this.Y.dk;b!==a&&(u&&z.h(a,"number",O,"fromEndSegmentLength"),0>a&&z.wa(a,">= 0",O,"fromEndSegmentLength"),this.Y.dk=a,this.i("fromEndSegmentLength",b,a),Zo(this))}); +z.defineProperty(O,{ju:"fromEndSegmentDirection"},function(){return null!==this.Y?this.Y.ck:xo},function(a){this.Xd();var b=this.Y.ck;b!==a&&(z.Nn("GraphObject.fromEndSegmentDirection","2.0"),u&&z.Ca(a,E,O,"fromEndSegmentDirection"),this.Y.ck=a,this.i("fromEndSegmentDirection",b,a),Zo(this))}); +z.defineProperty(O,{ku:"fromShortLength"},function(){return null!==this.Y?this.Y.ek:0},function(a){this.Xd();var b=this.Y.ek;b!==a&&(u&&z.h(a,"number",O,"fromShortLength"),this.Y.ek=a,this.i("fromShortLength",b,a),Zo(this))});z.defineProperty(O,{kF:"fromLinkable"},function(){return null!==this.Y?this.Y.Rr:null},function(a){this.Xd();var b=this.Y.Rr;b!==a&&(u&&null!==a&&z.h(a,"boolean",O,"fromLinkable"),this.Y.Rr=a,this.i("fromLinkable",b,a))}); +z.defineProperty(O,{GA:"fromMaxLinks"},function(){return null!==this.Y?this.Y.Sr:Infinity},function(a){this.Xd();var b=this.Y.Sr;b!==a&&(u&&z.h(a,"number",O,"fromMaxLinks"),0>a&&z.wa(a,">= 0",O,"fromMaxLinks"),this.Y.Sr=a,this.i("fromMaxLinks",b,a))});z.defineProperty(O,{cursor:"cursor"},function(){return this.xr},function(a){var b=this.xr;b!==a&&(z.h(a,"string",O,"cursor"),this.xr=a,this.i("cursor",b,a))}); z.defineProperty(O,{click:"click"},function(){return null!==this.ma?this.ma.Pi:null},function(a){uo(this);var b=this.ma.Pi;b!==a&&(null!==a&&z.h(a,"function",O,"click"),this.ma.Pi=a,this.i("click",b,a))});z.defineProperty(O,{au:"doubleClick"},function(){return null!==this.ma?this.ma.Wi:null},function(a){uo(this);var b=this.ma.Wi;b!==a&&(null!==a&&z.h(a,"function",O,"doubleClick"),this.ma.Wi=a,this.i("doubleClick",b,a))}); z.defineProperty(O,{oA:"contextClick"},function(){return null!==this.ma?this.ma.Ri:null},function(a){uo(this);var b=this.ma.Ri;b!==a&&(null!==a&&z.h(a,"function",O,"contextClick"),this.ma.Ri=a,this.i("contextClick",b,a))});z.defineProperty(O,{Eu:"mouseEnter"},function(){return null!==this.ma?this.ma.Fs:null},function(a){uo(this);var b=this.ma.Fs;b!==a&&(null!==a&&z.h(a,"function",O,"mouseEnter"),this.ma.Fs=a,this.i("mouseEnter",b,a))}); z.defineProperty(O,{Fu:"mouseLeave"},function(){return null!==this.ma?this.ma.Gs:null},function(a){uo(this);var b=this.ma.Gs;b!==a&&(null!==a&&z.h(a,"function",O,"mouseLeave"),this.ma.Gs=a,this.i("mouseLeave",b,a))});z.defineProperty(O,{eB:"mouseOver"},function(){return null!==this.ma?this.ma.jj:null},function(a){uo(this);var b=this.ma.jj;b!==a&&(null!==a&&z.h(a,"function",O,"mouseOver"),this.ma.jj=a,this.i("mouseOver",b,a))}); @@ -1126,7 +1127,7 @@ O.make=bp=function(a,b){var c=arguments,d=null,e=null;if("function"===typeof a)e 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.Je=!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.Je=!1,a.index=e);e=new na;for(c in b)"row"!==c&&"column"!==c&&(e[c]=b[c]);z.Vu(a,e)}else z.Vu(a,b);else z.k('Unknown initializer "'+b+'" for object being constructed by GraphObject.make: '+a)}var cp=new oa("string","function"); O.getBuilders=function(){var a=new oa("string","function"),b;for(b in cp)if(b!==b.toLowerCase()){var c=cp[b];"function"===typeof c&&a.add(b,c)}a.freeze();return a};var ep;O.defineBuilder=ep=function(a,b){z.h(a,"string",O,"defineBuilder:name");z.h(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);cp.add(a,b)};var fp; @@ -1138,19 +1139,19 @@ a.Nc=!0;d.ud?e.collapseTree(d):e.expandTree(d)}}};return a}); ep("SubGraphExpanderButton",function(){var a=bp("Button",{_subGraphExpandedFigure:"MinusLine",_subGraphCollapsedFigure:"PlusLine"},bp(Y,{name:"ButtonIcon",Jb:"MinusLine",Da:Ud},(new sh("figure","isSubGraphExpanded",function(a,c){var d=c.Q;return a?d._subGraphExpandedFigure:d._subGraphCollapsedFigure})).ey()));a.click=function(a,c){var d=c.ba;d instanceof ea&&(d=d.$f);if(d instanceof F){var e=d.g;if(null!==e){e=e.xb;if(d.Ke){if(!e.canCollapseSubGraph(d))return}else if(!e.canExpandSubGraph(d))return;a.Nc= !0;d.Ke?e.collapseSubGraph(d):e.expandSubGraph(d)}}};return a});ep("ContextMenuButton",function(){var a=bp("Button");a.stretch=qo;var b=a.Gd("ButtonBorder");b instanceof Y&&(b.Jb="Rectangle",b.C=new R(0,0,2,3),b.D=new R(1,1,-2,-2));return a}); ep("PanelExpanderButton",function(a){var b=fp(a,"COLLAPSIBLE"),c=bp("Button",{_buttonExpandedFigure:"TriangleUp",_buttonCollapsedFigure:"TriangleDown"},bp(Y,"TriangleUp",{name:"ButtonIcon",Da:new Fa(6,4)},(new sh("figure","visible",function(a){return a?c._buttonExpandedFigure:c._buttonCollapsedFigure})).ey(b)));a=c.Gd("ButtonBorder");a instanceof Y&&(a.stroke=null,a.fill="transparent");c.click=function(a,c){var g=c.g;if(null!==g&&!g.kb){var h=c.jm();null===h&&(h=c.ba);null!==h&&(h=h.Gd(b),null!== -h&&(g.$b("Collapse/Expand Panel"),h.visible=!h.visible,g.Wd("Collapse/Expand Panel")))}};return c}); -ep("CheckBoxButton",function(a){var b=fp(a);a=bp("Button",{"ButtonBorder.fill":"white","ButtonBorder.stroke":"gray",width:14,height:14},bp(Y,{name:"ButtonIcon",HI:"M0 4 L3 9 9 0",mb:2,stretch:gf,HA:Vj,visible:!1},""!==b?(new sh("visible",b)).wJ():[]));a.click=function(a,d){var e=a.g;if(!(null===e||e.kb||""!==b&&e.ia.kb)){a.Nc=!0;var g=d.Gd("ButtonIcon");e.$b("checkbox");g.visible=!g.visible;"function"===typeof d._doClick&&d._doClick(a,d);e.Wd("checkbox")}};return a}); +h&&(g.$b("Collapse/Expand Panel"),h.visible=!h.visible,g.Vd("Collapse/Expand Panel")))}};return c}); +ep("CheckBoxButton",function(a){var b=fp(a);a=bp("Button",{"ButtonBorder.fill":"white","ButtonBorder.stroke":"gray",width:14,height:14},bp(Y,{name:"ButtonIcon",HI:"M0 4 L3 9 9 0",mb:2,stretch:gf,HA:Vj,visible:!1},""!==b?(new sh("visible",b)).wJ():[]));a.click=function(a,d){var e=a.g;if(!(null===e||e.kb||""!==b&&e.ia.kb)){a.Nc=!0;var g=d.Gd("ButtonIcon");e.$b("checkbox");g.visible=!g.visible;"function"===typeof d._doClick&&d._doClick(a,d);e.Vd("checkbox")}};return a}); ep("CheckBox",function(a){a=fp(a);a=bp("CheckBoxButton",a,{name:"Button",margin:new Kb(0,1,0,0)});var b=bp(I,"Horizontal",a,{qu:!0,margin:1,_buttonFillNormal:a._buttonFillNormal,_buttonStrokeNormal:a._buttonStrokeNormal,_buttonFillOver:a._buttonFillOver,_buttonStrokeOver:a._buttonStrokeOver,_buttonFillDisabled:a._buttonFillDisabled,Eu:a.Eu,Fu:a.Fu,click:a.click,_buttonClick:a.click});a.Eu=null;a.Fu=null;a.click=null;return b}); function vo(){this.Nr=this.Si=this.sj=this.Zq=this.br=this.ar=this.$q=this.gj=this.Es=this.Ds=this.hj=this.ij=this.jj=this.Gs=this.Fs=this.Ri=this.Wi=this.Pi=null}vo.prototype.copy=function(){var a=new vo;a.Pi=this.Pi;a.Wi=this.Wi;a.Ri=this.Ri;a.Fs=this.Fs;a.Gs=this.Gs;a.jj=this.jj;a.ij=this.ij;a.hj=this.hj;a.Ds=this.Ds;a.Es=this.Es;a.gj=this.gj;a.$q=this.$q;a.ar=this.ar;a.br=this.br;a.Zq=this.Zq;a.sj=this.sj;a.Si=this.Si;a.Nr=this.Nr;return a}; -function I(a){O.call(this);void 0===a?0===arguments.length?this.da=Yj:z.k("invalid argument to Panel constructor: undefined"):(z.Ca(a,I,I,"type"),this.da=a);this.va=new J(O);this.sf=Nd;this.da===Nl&&(this.Yn=!0);this.Br=Rc;this.Vi=oo;this.da===ha&&gp(this);this.Up=Vj;this.Zr=Wd;this.$r=Dd;this.Wr=0;this.Vr=100;this.Yr=10;this.Xr=0;this.pl=this.he=this.gk=this.Nm=this.Pm=null;this.ls=NaN;this.Eg=this.cj=null;this.np="category";this.Dg=null;this.uj=new w(NaN,NaN,NaN,NaN);this.Ak=this.ft=this.wn=null; -this.Wj=""}z.Ta(I,O);z.Ai(I);z.ka("Panel",I);function gp(a){a.$j=Nd;a.bi=1;a.Ui=null;a.Km=null;a.ai=1;a.$h=null;a.Jm=null;a.ke=[];a.fe=[];a.nn=hp;a.Im=hp;a.tj=0;a.dj=0} -I.prototype.cloneProtected=function(a){O.prototype.cloneProtected.call(this,a);a.da=this.da;a.sf=this.sf.V();a.Br=this.Br.V();a.Vi=this.Vi;if(a.da===ha){a.$j=this.$j.V();a.bi=this.bi;a.Ui=this.Ui;a.Km=this.Km;a.ai=this.ai;a.$h=this.$h;a.Jm=this.Jm;var b=[];if(0a&&z.wa(a,">= 0",I,"padding"),a=new Kb(a)):(z.l(a,Kb,I,"padding"),0>a.left&&z.wa(a.left,">= 0",I,"padding:value.left"),0>a.right&&z.wa(a.right,">= 0",I,"padding:value.right"),0>a.top&&z.wa(a.top,">= 0",I,"padding:value.top"),0>a.bottom&&z.wa(a.bottom,">= 0",I,"padding:value.bottom"));var b=this.sf;b.O(a)||(this.sf=a=a.V(),this.K(),this.i("padding",b,a))}); -z.defineProperty(I,{em:"defaultAlignment"},function(){return this.Br},function(a){var b=this.Br;b.O(a)||(u&&z.l(a,R,I,"defaultAlignment"),this.Br=a=a.V(),this.K(),this.i("defaultAlignment",b,a))});z.defineProperty(I,{me:"defaultStretch"},function(){return this.Vi},function(a){var b=this.Vi;b!==a&&(z.Ca(a,O,I,"defaultStretch"),this.Vi=a,this.K(),this.i("defaultStretch",b,a))}); +z.defineProperty(I,{em:"defaultAlignment"},function(){return this.Br},function(a){var b=this.Br;b.O(a)||(u&&z.l(a,R,I,"defaultAlignment"),this.Br=a=a.V(),this.K(),this.i("defaultAlignment",b,a))});z.defineProperty(I,{le:"defaultStretch"},function(){return this.Vi},function(a){var b=this.Vi;b!==a&&(z.Ca(a,O,I,"defaultStretch"),this.Vi=a,this.K(),this.i("defaultStretch",b,a))}); z.defineProperty(I,{vL:"defaultSeparatorPadding"},function(){return void 0===this.$j?Nd:this.$j},function(a){if(void 0!==this.$j){"number"===typeof a?a=new Kb(a):u&&z.l(a,Kb,I,"defaultSeparatorPadding");var b=this.$j;b.O(a)||(this.$j=a=a.V(),this.K(),this.i("defaultSeparatorPadding",b,a))}}); z.defineProperty(I,{tL:"defaultRowSeparatorStroke"},function(){return void 0===this.Ui?null:this.Ui},function(a){var b=this.Ui;b!==a&&(null===a||"string"===typeof a||a instanceof Ea)&&(a instanceof Ea&&a.freeze(),this.Ui=a,this.ra(),this.i("defaultRowSeparatorStroke",b,a))}); z.defineProperty(I,{uL:"defaultRowSeparatorStrokeWidth"},function(){return void 0===this.bi?1:this.bi},function(a){if(void 0!==this.bi){var b=this.bi;b!==a&&isFinite(a)&&0<=a&&(this.bi=a,this.K(),this.i("defaultRowSeparatorStrokeWidth",b,a))}}); @@ -1158,144 +1159,144 @@ z.defineProperty(I,{sL:"defaultRowSeparatorDashArray"},function(){return void 0= this.i("defaultRowSeparatorDashArray",b,a)}}});z.defineProperty(I,{nL:"defaultColumnSeparatorStroke"},function(){return void 0===this.$h?null:this.$h},function(a){if(void 0!==this.$h){var b=this.$h;b!==a&&(null===a||"string"===typeof a||a instanceof Ea)&&(a instanceof Ea&&a.freeze(),this.$h=a,this.ra(),this.i("defaultColumnSeparatorStroke",b,a))}}); z.defineProperty(I,{oL:"defaultColumnSeparatorStrokeWidth"},function(){return void 0===this.ai?1:this.ai},function(a){if(void 0!==this.ai){var b=this.ai;b!==a&&isFinite(a)&&0<=a&&(this.ai=a,this.K(),this.i("defaultColumnSeparatorStrokeWidth",b,a))}}); z.defineProperty(I,{mL:"defaultColumnSeparatorDashArray"},function(){return void 0===this.Jm?null:this.Jm},function(a){if(void 0!==this.Jm){var b=this.Jm;if(b!==a){null===a||Array.isArray(a)||z.hc(a,"Array",I,"defaultColumnSeparatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;e=c&&(c=1);var d=this.Kx,e=d.width,d=d.height,g=this.Ja,h=g.width,g=g.height,k=Math.ceil(h/e),l=Math.ceil(g/d),m=this.tF;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*v*c))){var s=n[r],t=!1,A=!0,B=y.MG;null!==B&&(t=!0,A=a.AA(B,y.Oe));if("LineV"===y.Jb){a.lineWidth=y.mb;No(this,a,y.stroke,!1,!1);a.beginPath();for(var N=x=Math.floor(-m.x/e);N<=x+k;N++){var G=N*e+m.x;0<=G&&G=e&&(e=1);d=c.Z;h=this.va.o;g=this.Pm;k=h.length;for(l=0;lthis.LA*q.interval*e))for(r=q.Ea,v=q.mb*q.scale,s=q.Fh,s.ae()&&(s=ic),p=0;pg.height)continue}else if(l.position>g.width)continue;var m=l.Rq;isNaN(m)&&(m=c?a.bi:a.ai);var n=l.Qq;null===n&&(n=c?a.Ui:a.$h);if(0!==m&&null!==n){No(a,b,n,!1,!1);var n=!1,p=!0,q=l.jK;null!==q&&(n=!0,void 0!==b.setLineDash?(b.setLineDash(q),b.lineDashOffset=a.Oe):void 0!==b.webkitLineDash?(b.webkitLineDash=q,b.webkitLineDashOffset=a.Oe):void 0!==b.mozDash? +e*v*c))){var s=n[r],t=!1,B=!0,A=y.MG;null!==A&&(t=!0,B=a.AA(A,y.Oe));if("LineV"===y.Jb){a.lineWidth=y.mb;No(this,a,y.stroke,!1,!1);a.beginPath();for(var N=x=Math.floor(-m.x/e);N<=x+k;N++){var G=N*e+m.x;0<=G&&G=e&&(e=1);d=c.Z;h=this.va.o;g=this.Pm;k=h.length;for(l=0;lthis.LA*q.interval*e))for(r=q.Ea,v=q.mb*q.scale,s=q.Fh,s.$d()&&(s=ic),p=0;pg.height)continue}else if(l.position>g.width)continue;var m=l.Rq;isNaN(m)&&(m=c?a.bi:a.ai);var n=l.Qq;null===n&&(n=c?a.Ui:a.$h);if(0!==m&&null!==n){No(a,b,n,!1,!1);var n=!1,p=!0,q=l.jK;null!==q&&(n=!0,void 0!==b.setLineDash?(b.setLineDash(q),b.lineDashOffset=a.Oe):void 0!==b.webkitLineDash?(b.webkitLineDash=q,b.webkitLineDashOffset=a.Oe):void 0!==b.mozDash? (b.mozDash=q,b.mozDashOffset=a.Oe):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?yo(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?yo(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.bl),b.lineDashOffset=0):void 0!==b.webkitLineDash?(b.webkitLineDash=z.bl,b.webkitLineDashOffset= 0):void 0!==b.mozDash&&(b.mozDash=null,b.mozDashOffset=0))}}}} function Ip(a,b,c,d,e){for(var g=d.length,h=a.Z,k=0;km)){var n=l.gf(),p=l.Rq;isNaN(p)&&(p=c?a.bi:a.ai);var q=l.Qq;null===q&&(q=c?a.Ui:a.$h);null===q&&(p=0);n-=p;p=l.position+p;n+=l.Ra;p+n>m&&(n=m-p);0>=n||(m=a.padding,No(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 Gp(a,b,c){if(0!==a%b)return!1;b=c.length;for(var d=0;dm&&e.set(s),z.A(s));z.A(n);g&&e.transform(h)}return c}; -f.K=function(a){O.prototype.K.call(this,a);if(this.da===Kl||this.da===kj)a=this.Xd(),null!==a&&a.K(!0);a=this.va.o;for(var b=a.length,c=0;cm&&e.set(s),z.A(s));z.A(n);g&&e.transform(h)}return c}; +f.K=function(a){O.prototype.K.call(this,a);if(this.da===Kl||this.da===kj)a=this.Wd(),null!==a&&a.K(!0);a=this.va.o;for(var b=a.length,c=0;cvc&&(Kd=Math.max(vc-jg,0));var xj=0===ba.Ra;ba.Ra+=Kd;vc= -Math.max(vc-(Kd+(xj?jg:0)),0)}1!==ga.Qi||Lc!==Tj&&Lc!==po||(ba=this.oe(zc),jg=ba.gf(),Kd=Math.max(Yc-ba.Ra,0),Kd+jg>kc&&(Kd=Math.max(kc-jg,0)),xj=0===ba.Ra,ba.Ra+=Kd,kc=Math.max(kc-(Kd+(xj?jg:0)),0));Nk&&ga.uq()}}}z.Ba(Bf);for(var ae=0,be=0,kb=this.bq,la=0;la=this.Oq);lb++)ba=this.pe(ga.Zb+lb),Ef.height+=Math.max(ba.Lj,isNaN(ba.tf)?ba.zf:Math.min(ba.tf,ba.zf));for(lb=1;lb=this.bq);lb++)ba=this.oe(ga.column+lb),Ef.width+=Math.max(ba.Lj,isNaN(ba.tf)?ba.zf:Math.min(ba.tf,ba.zf));Eb.width+=Ef.width;Eb.height+=Ef.height;Ac=ga.margin;ld=Ac.right+Ac.left;Lg=Ac.top+Ac.bottom;Bk(ga,Eb.width,Eb.height,zh,Af);for(var $d=ga.Ea,Yc=Math.max($d.width+ld,0),Je=Math.max($d.height+Lg,0),wc=0,lb=0;lb=this.Oq);lb++)ba= -this.pe(ga.Zb+lb),wc+=ba.total||0;if(wc=Jb)&&!(ga.Zb+lb>=this.Oq);lb++){var ba=this.pe(ga.Zb+lb),Yb=ba.$a||0,lg=Gf(ga,ba,Ff);u&&"number"!==typeof lg&&z.k(ga+" spanAllocation does not return a number: "+lg);ba.Ra=Math.min(ba.zf,Yb+lg);ba.$a!==Yb&&(Jb-=ba.$a-Yb)}for(;0Yb&&(ba.Ra=Math.min(ba.zf,Yb+Jb),ba.$a!==Yb&&(Jb-=ba.$a-Yb));if(0===ba.index)break;ba=this.pe(ba.index-1)}}for(var Ah= -0,lb=0;lb=this.bq);lb++)ba=this.oe(ga.column+lb),Ah+=ba.total||0;if(Ah=Jb)&&!(ga.column+lb>=this.bq);lb++)ba=this.oe(ga.column+lb),Yb=ba.$a||0,lg=Gf(ga,ba,Ff),u&&"number"!==typeof lg&&z.k(ga+" spanAllocation does not return a number: "+lg),ba.Ra=Math.min(ba.zf,Yb+lg),ba.$a!==Yb&&(Jb-=ba.$a-Yb);for(;0Yb&&(ba.Ra=Math.min(ba.zf,Yb+Jb),ba.$a!==Yb&&(Jb-=ba.$a-Yb));if(0=== -ba.index)break;ba=this.oe(ba.index-1)}}}z.Ba(hg);z.Qk(Ef);z.Qk(Eb);for(var Ke=0,Pg=0,Lc=Eo(this,!0),mg=this.Da,Hf=this.mf,Le=be=ae=0,Me=0,kb=this.bq,la=0;laCh)Bk(ec,Infinity,Infinity),ve=ec.Ea,cf.Wh(ve),this.oh.add(ve);else{var ud=ec.Ue,pt=ec.vB,kp=ec.Fh;kp.ae()&&(kp=mc);var og=ec.Pq,aw=ec.wB,Sk=0,Tk=0,mm=0;if(ud<-Ch||ud>=Ch){var qt=Qg.WF,Jf= +Ko&&(Jd.column=ga.column);fi.push(Jd)}}}kb=fi.length;0===kb&&(this.oe(0),this.ne(0));for(var Pb=[],la=0;lavc&&(Kd=Math.max(vc-jg,0));var xj=0===ba.Ra;ba.Ra+=Kd;vc= +Math.max(vc-(Kd+(xj?jg:0)),0)}1!==ga.Qi||Lc!==Tj&&Lc!==po||(ba=this.ne(zc),jg=ba.gf(),Kd=Math.max(Yc-ba.Ra,0),Kd+jg>kc&&(Kd=Math.max(kc-jg,0)),xj=0===ba.Ra,ba.Ra+=Kd,kc=Math.max(kc-(Kd+(xj?jg:0)),0));Nk&&ga.tq()}}}z.Ba(Bf);for(var ae=0,be=0,kb=this.aq,la=0;la=this.Oq);lb++)ba=this.oe(ga.Zb+lb),Ef.height+=Math.max(ba.Lj,isNaN(ba.tf)?ba.zf:Math.min(ba.tf,ba.zf));for(lb=1;lb=this.aq);lb++)ba=this.ne(ga.column+lb),Ef.width+=Math.max(ba.Lj,isNaN(ba.tf)?ba.zf:Math.min(ba.tf,ba.zf));Eb.width+=Ef.width;Eb.height+=Ef.height;Ac=ga.margin;ld=Ac.right+Ac.left;Lg=Ac.top+Ac.bottom;Bk(ga,Eb.width,Eb.height,zh,Af);for(var $d=ga.Ea,Yc=Math.max($d.width+ld,0),Je=Math.max($d.height+Lg,0),wc=0,lb=0;lb=this.Oq);lb++)ba= +this.oe(ga.Zb+lb),wc+=ba.total||0;if(wc=Jb)&&!(ga.Zb+lb>=this.Oq);lb++){var ba=this.oe(ga.Zb+lb),Yb=ba.$a||0,lg=Gf(ga,ba,Ff);u&&"number"!==typeof lg&&z.k(ga+" spanAllocation does not return a number: "+lg);ba.Ra=Math.min(ba.zf,Yb+lg);ba.$a!==Yb&&(Jb-=ba.$a-Yb)}for(;0Yb&&(ba.Ra=Math.min(ba.zf,Yb+Jb),ba.$a!==Yb&&(Jb-=ba.$a-Yb));if(0===ba.index)break;ba=this.oe(ba.index-1)}}for(var Ah= +0,lb=0;lb=this.aq);lb++)ba=this.ne(ga.column+lb),Ah+=ba.total||0;if(Ah=Jb)&&!(ga.column+lb>=this.aq);lb++)ba=this.ne(ga.column+lb),Yb=ba.$a||0,lg=Gf(ga,ba,Ff),u&&"number"!==typeof lg&&z.k(ga+" spanAllocation does not return a number: "+lg),ba.Ra=Math.min(ba.zf,Yb+lg),ba.$a!==Yb&&(Jb-=ba.$a-Yb);for(;0Yb&&(ba.Ra=Math.min(ba.zf,Yb+Jb),ba.$a!==Yb&&(Jb-=ba.$a-Yb));if(0=== +ba.index)break;ba=this.ne(ba.index-1)}}}z.Ba(hg);z.Qk(Ef);z.Qk(Eb);for(var Ke=0,Pg=0,Lc=Eo(this,!0),mg=this.Da,Hf=this.mf,Le=be=ae=0,Me=0,kb=this.aq,la=0;laCh)Bk(ec,Infinity,Infinity),ve=ec.Ea,cf.Wh(ve),this.oh.add(ve);else{var ud=ec.Ue,pt=ec.vB,kp=ec.Fh;kp.$d()&&(kp=mc);var og=ec.Pq,aw=ec.wB,Sk=0,Tk=0,mm=0;if(ud<-Ch||ud>=Ch){var qt=Qg.WF,Jf= Qg.VF;og!==nj&&(mm=Qg.computeAngle(ec,og,Jf),ec.rg=mm);Sk=qt.x-Rg.x;Tk=qt.y-Rg.y}else{var Ld,df;if(0<=ud)Ld=Sg.fa(ud),df=udst+10?0<=ud?ni.Lc(Ld):Ld.Lc(ni):st>rt+10?0<=ud?df.Lc(oi):oi.Lc(df):0<=ud?ni.Lc(oi):oi.Lc(ni)}else Jf=0<=ud?Ld.Lc(df):df.Lc(Ld);og!==nj&& -(mm=Qg.computeAngle(ec,og,Jf),ec.rg=mm);Sk=Ld.x+(df.x-Ld.x)*pt-Rg.x;Tk=Ld.y+(df.y-Ld.y)*pt-Rg.y}Bk(ec,Infinity,Infinity);var ve=ec.Ea,km=ec.Ja,Uk=0;ec instanceof Y&&(Uk=ec.mb);var pi=km.width+Uk,Aj=km.height+Uk;Tg.reset();Tg.translate(-ve.x,-ve.y);Tg.scale(ec.scale,ec.scale);Tg.rotate(og===nj?ec.angle:Jf,pi/2,Aj/2);og!==Pp&&og!==Qp||Tg.rotate(90,pi/2,Aj/2);og!==Rp&&og!==Sp||Tg.rotate(-90,pi/2,Aj/2);og===Tp&&(45Jf||225Jf)&&Tg.rotate(-Jf,pi/2,Aj/2);var Fj=new w(0,0,pi,Aj);Rk.po(Fj, -kp);Tg.wb(Rk);var bw=-Rk.x+Uk/2,cw=-Rk.y+Uk/2;Ug.assign(aw);isNaN(Ug.x)&&(Ug.x=0<=ud?pi/2+3:-(pi/2+3));isNaN(Ug.y)&&(Ug.y=-(Aj/2+3));Ug.rotate(Jf);Sk+=Ug.x;Tk+=Ug.y;Fj.set(ve);Fj.x=Sk+bw;Fj.y=Tk+cw;this.oh.add(Fj);cf.Wh(Fj)}}if(this.af)for(var tt=this.Kf;tt.next();)Bk(tt.value,Infinity,Infinity);this.uj=cf;var lp=this.fj;lp.m(lp.x+cf.x,lp.y+cf.y);Ab(e,cf.width||0,cf.height||0);z.Ie(Tg);z.A(Rk);z.A(Ug)}break;case "Grid":break;case "Graduated":var dw=a,ew=b,fw=c,gw=d,Vg=this.Xd();this.Nm=[];var Gj= +(mm=Qg.computeAngle(ec,og,Jf),ec.rg=mm);Sk=Ld.x+(df.x-Ld.x)*pt-Rg.x;Tk=Ld.y+(df.y-Ld.y)*pt-Rg.y}Bk(ec,Infinity,Infinity);var ve=ec.Ea,km=ec.Ja,Uk=0;ec instanceof Y&&(Uk=ec.mb);var pi=km.width+Uk,Aj=km.height+Uk;Tg.reset();Tg.translate(-ve.x,-ve.y);Tg.scale(ec.scale,ec.scale);Tg.rotate(og===nj?ec.angle:Jf,pi/2,Aj/2);og!==Pp&&og!==Qp||Tg.rotate(90,pi/2,Aj/2);og!==Rp&&og!==Sp||Tg.rotate(-90,pi/2,Aj/2);og===Tp&&(45Jf||225Jf)&&Tg.rotate(-Jf,pi/2,Aj/2);var Fj=new w(0,0,pi,Aj);Rk.oo(Fj, +kp);Tg.wb(Rk);var bw=-Rk.x+Uk/2,cw=-Rk.y+Uk/2;Ug.assign(aw);isNaN(Ug.x)&&(Ug.x=0<=ud?pi/2+3:-(pi/2+3));isNaN(Ug.y)&&(Ug.y=-(Aj/2+3));Ug.rotate(Jf);Sk+=Ug.x;Tk+=Ug.y;Fj.set(ve);Fj.x=Sk+bw;Fj.y=Tk+cw;this.oh.add(Fj);cf.Wh(Fj)}}if(this.af)for(var tt=this.Kf;tt.next();)Bk(tt.value,Infinity,Infinity);this.uj=cf;var lp=this.fj;lp.m(lp.x+cf.x,lp.y+cf.y);Ab(e,cf.width||0,cf.height||0);z.Ie(Tg);z.A(Rk);z.A(Ug)}break;case "Grid":break;case "Graduated":var dw=a,ew=b,fw=c,gw=d,Vg=this.Wd();this.Nm=[];var Gj= Vg.margin,hw=Gj.right+Gj.left,iw=Gj.top+Gj.bottom;Bk(Vg,dw,ew,fw,gw);var ut=Vg.Ea,jw=ut.height,kw=Math.max(ut.width+hw,0),lw=Math.max(jw+iw,0),vt=new w(-Gj.left,-Gj.top,kw,lw);this.Nm.push(vt);e.assign(vt);for(var Wk=Vg.Ff,wt=Vg.mb,mp=Wk.DA,Hj=Wk.Gx,qi=Wk.EA,mw=mp.length,np=0,op=0,Ij=z.tb(),pp=0;ppvd&&(vd+=360);xt.push(vd)}np=yt;op=zt}Ij.push(xt)}var At; if(null===this.gk){for(var Bt=[],rp=this.va.o,Ct=rp.length,sp=0;spow&&Dt.push(Et)}}}this.gk=Bt}At=this.gk;var Ft=this.va.o,pw=Ft.length,Dh=0,Gt=0,Ht=qi;this.Pm=[];for(var nm=[],om=0;omJt*It*qi/this.Jx)){var ee=this.sF,Kt=At[om],ri=Hj[0][0],Kf=0,wd=0,Gt=qi*Eh.rF-1E-4,Ht=qi*Eh.pF+1E-4,Kj=Jt*It;if(eethis.Sk+Kj&&(si=Math.floor((ee-this.Sk)/Kj),ee-=si*Kj);for(;ee<=this.KA;){var up;a:{for(var qw=Kt.length,vp=0;vpqi&&(Dh=qi),Gt<=Dh&&Dh<=Ht)){for(var vd=Ij[Kf][wd],Lj=Hj[Kf][wd];Kf ri&&wdpm?0vm;vm++){switch(vm){case 0:fe.m(sm,tm);break;case 1:fe.m(sm+zp,tm);break;case 2:fe.m(sm,tm+Ap);break;case 3:fe.m(sm+zp,tm+Ap)}fe.rotate(St+Fh.angle);fe.offset(Qt,Rt);0===um&&0===vm?ui.m(fe.x,fe.y,0,0):ui.Ki(fe);fe.offset(-Qt,-Rt);fe.rotate(-St-Fh.angle)}z.A(fe);this.Nm.push(ui);Rb(tw, -ui.x,ui.y,ui.width,ui.height)}else if(ti instanceof pa){var Zk=ti,Tt=xp,ww=e;null===this.Ak&&(this.Ak=new pa);var Lf=this.Ak;Hp(Zk,Lf);var Cp=Zk.Fh;Cp.ae()&&(Cp=ic);for(var Gh=Zk.Pq,xw=Zk.wB,vi=null,wm=0,xm=0,Wg=0,Dp=0,yw=Tt.length,ym=0;ymWg||225Wg)&&Xg.rotate(-Wg,Oj/2,Pj/2);var Ut=z.fh(0,0,Oj,Pj),$k=z.P();$k.po(Ut,Cp);Xg.wb($k);var zw=-$k.x,Aw=-$k.y,Yg=z.P();Yg.assign(xw);isNaN(Yg.x)&&(Yg.x=Oj/2+3);isNaN(Yg.y)&&(Yg.y=-(Pj/2+3));Yg.rotate(Wg);var wm=wm+(Yg.x+zw),xm=xm+(Yg.y+Aw),Ep=new w(wm,xm,Hh.width,Hh.height),Bw=new w(Hh.x,Hh.y,Hh.width,Hh.height),Cw=new w(Nj.x,Nj.y,Nj.width, -Nj.height),Vt=new Up;Vt.cq(Lf.gi);qg.push(Dp);qg.push(Lf.xe);qg.push(Vt);qg.push(Ep);qg.push(Bw);qg.push(Cw);0===ym?vi=Ep.copy():vi.Wh(Ep);z.A(Yg);z.A($k);z.Mb(Ut);z.Ie(Xg)}this.Nm.push(vi);Rb(ww,vi.x,vi.y,vi.width,vi.height)}cm(ti,!1)}}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 ef=e.width,ff=e.height,zm=this.padding,Dw=zm.top+ -zm.bottom,ef=ef+(zm.left+zm.right),ff=ff+Dw;isFinite(g.width)&&(ef=g.width);isFinite(g.height)&&(ff=g.height);ef=Math.min(k.width,ef);ff=Math.min(k.height,ff);ef=Math.max(h.width,ef);ff=Math.max(h.height,ff);ef=Math.max(c,ef);ff=Math.max(d,ff);e.width=ef;e.height=ff;Ab(this.Tc,ef,ff);Bo(this,0,0,ef,ff)};I.prototype.findMainElement=I.prototype.Xd=function(){if(null===this.wn){var a=this.va.o,b=a.length;if(0===b)return null;for(var c=0;cvm;vm++){switch(vm){case 0:fe.m(sm,tm);break;case 1:fe.m(sm+zp,tm);break;case 2:fe.m(sm,tm+Ap);break;case 3:fe.m(sm+zp,tm+Ap)}fe.rotate(St+Fh.angle);fe.offset(Qt,Rt);0===um&&0===vm?ui.m(fe.x,fe.y,0,0):ui.Ki(fe);fe.offset(-Qt,-Rt);fe.rotate(-St-Fh.angle)}z.A(fe);this.Nm.push(ui);Rb(tw, +ui.x,ui.y,ui.width,ui.height)}else if(ti instanceof pa){var Zk=ti,Tt=xp,ww=e;null===this.Ak&&(this.Ak=new pa);var Lf=this.Ak;Hp(Zk,Lf);var Cp=Zk.Fh;Cp.$d()&&(Cp=ic);for(var Gh=Zk.Pq,xw=Zk.wB,vi=null,wm=0,xm=0,Wg=0,Dp=0,yw=Tt.length,ym=0;ymWg||225Wg)&&Xg.rotate(-Wg,Oj/2,Pj/2);var Ut=z.fh(0,0,Oj,Pj),$k=z.P();$k.oo(Ut,Cp);Xg.wb($k);var zw=-$k.x,Aw=-$k.y,Yg=z.P();Yg.assign(xw);isNaN(Yg.x)&&(Yg.x=Oj/2+3);isNaN(Yg.y)&&(Yg.y=-(Pj/2+3));Yg.rotate(Wg);var wm=wm+(Yg.x+zw),xm=xm+(Yg.y+Aw),Ep=new w(wm,xm,Hh.width,Hh.height),Bw=new w(Hh.x,Hh.y,Hh.width,Hh.height),Cw=new w(Nj.x,Nj.y,Nj.width, +Nj.height),Vt=new Up;Vt.bq(Lf.gi);qg.push(Dp);qg.push(Lf.we);qg.push(Vt);qg.push(Ep);qg.push(Bw);qg.push(Cw);0===ym?vi=Ep.copy():vi.Wh(Ep);z.A(Yg);z.A($k);z.Mb(Ut);z.Ie(Xg)}this.Nm.push(vi);Rb(ww,vi.x,vi.y,vi.width,vi.height)}cm(ti,!1)}}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 ef=e.width,ff=e.height,zm=this.padding,Dw=zm.top+ +zm.bottom,ef=ef+(zm.left+zm.right),ff=ff+Dw;isFinite(g.width)&&(ef=g.width);isFinite(g.height)&&(ff=g.height);ef=Math.min(k.width,ef);ff=Math.min(k.height,ff);ef=Math.max(h.width,ef);ff=Math.max(h.height,ff);ef=Math.max(c,ef);ff=Math.max(d,ff);e.width=ef;e.height=ff;Ab(this.Tc,ef,ff);Bo(this,0,0,ef,ff)};I.prototype.findMainElement=I.prototype.Wd=function(){if(null===this.wn){var a=this.va.o,b=a.length;if(0===b)return null;for(var c=0;cc||p>d)this.K(),Bk(this,n>c?c:n,p>d?d:p);break;case gf:this.K(!0);Bk(this,c+r,d+s,0,0);break;case qo:this.K(!0);Bk(this,c+r,p+s,0,0);break;case po:this.K(!0),Bk(this,n+r,d+s,0,0)}}k=this.Z;k.x=a;k.y=b; -k.width=c;k.height=d;var v=this.da.Xb;switch(v){case "Position":for(var t=g.length,x=e.x-this.padding.left,y=e.y-this.padding.top,A=0;A=this.Oq);kb++){var fi=this.pe(Ua+kb);Kc.height+=fi.total}for(kb=1;kb=this.bq);kb++){var tj=this.oe(Jg+kb);Kc.width+=tj.total}var la=Xd.$a+Kc.width,ga=yh.$a+Kc.height;h.x=dc;h.y=Xb;h.width=la;h.height=ga;var kd=dc,Kk=Xb,Lk=la,zc=ga;dc+la>e.width&&(Lk=Math.max(e.width-dc,0));Xb+ga>e.height&&(zc=Math.max(e.height-Xb,0));var Jd=wb.alignment,Qb=0,Bf=0,hg=0,Cf=0;if(Jd.hd()){Jd=this.em;Jd.jd()||(Jd=mc);var Qb=Jd.x,Bf=Jd.y,hg=Jd.offsetX,Cf=Jd.offsetY,Yd=Xd.alignment, -Zd=yh.alignment;Yd.jd()&&(Qb=Yd.x,hg=Yd.offsetX);Zd.jd()&&(Bf=Zd.y,Cf=Zd.offsetY)}else Qb=Jd.x,Bf=Jd.y,hg=Jd.offsetX,Cf=Jd.offsetY;if(isNaN(Qb)||isNaN(Bf))Bf=Qb=.5,Cf=hg=0;var kc=zh.width,vc=zh.height,af=wb.margin,ba=af.left+af.right,gi=af.top+af.bottom,ig=So(wb,yh,Xd,!1);!isNaN(wb.Da.width)||ig!==gf&&ig!==qo||(kc=Math.max(la-ba,0));!isNaN(wb.Da.height)||ig!==gf&&ig!==po||(vc=Math.max(ga-gi,0));var uj=wb.mf,vj=wb.ig,kc=Math.min(uj.width,kc),vc=Math.min(uj.height,vc),kc=Math.max(vj.width,kc),vc=Math.max(vj.height, -vc),Kd=vc+gi;h.x+=h.width*Qb-(kc+ba)*Qb+hg+af.left;h.y+=h.height*Bf-Kd*Bf+Cf+af.top;wb.visible&&(Sb(kd,Kk,Lk,zc,h.x,h.y,zh.width,zh.height)?wb.rc(h.x,h.y,kc,vc):wb.rc(h.x,h.y,kc,vc,new w(kd,Kk,Lk,zc)))}else{wb.$i();wb.ac.Za();var hb=wb.ac;hb.x=Af.type===Jo?jd:dc;hb.y=Af.type===Ko?Ib:Xb;hb.width=zh.width;hb.height=zh.height;wb.ac.freeze();Fo(wb,!1)}}}}z.Qk(Kc);for(Ua=0;Ua<$e;Ua++)wb=g[Ua],Af=wb instanceof I?wb:null,null===Af||Af.type!==Jo&&Af.type!==Ko||(hb=wb.ac,wb.Tc.Za(),wb.Tc.m(0,0,hb.width,hb.height), -wb.Tc.freeze());break;case "Viewbox":var sb=g[0],hi=sb.Ea,wj=sb.margin,Mk=wj.top+wj.bottom,Nk=Math.max(hi.width+(wj.right+wj.left),0),Ac=Math.max(hi.height+Mk,0),ld=sb.alignment;ld.hd()&&(ld=this.em);ld.jd()||(ld=mc);h.x=e.width*ld.x-Nk*ld.x+ld.offsetX;h.y=e.height*ld.y-Ac*ld.y+ld.offsetY;h.width=hi.width;h.height=hi.height;sb.rc(h.x,h.y,h.width,h.height);break;case "Link":var Lg=g.length,Lc=this instanceof ea,ii=Lc?this.$f:this;if(ii instanceof H){var Ok=Lc?null:ii.path;if(null!==this.oh){var fm= -this.oh.o,$d=0;if(null!==Ok&&$d=Df){var Ef=this.WF,lb=this.VF;Ng!==nj&&(Og=this.computeAngle(Mc, +k.width=c;k.height=d;var v=this.da.Xb;switch(v){case "Position":for(var t=g.length,x=e.x-this.padding.left,y=e.y-this.padding.top,B=0;B=this.Oq);kb++){var fi=this.oe(Ua+kb);Kc.height+=fi.total}for(kb=1;kb=this.aq);kb++){var tj=this.ne(Jg+kb);Kc.width+=tj.total}var la=Xd.$a+Kc.width,ga=yh.$a+Kc.height;h.x=dc;h.y=Xb;h.width=la;h.height=ga;var kd=dc,Kk=Xb,Lk=la,zc=ga;dc+la>e.width&&(Lk=Math.max(e.width-dc,0));Xb+ga>e.height&&(zc=Math.max(e.height-Xb,0));var Jd=wb.alignment,Pb=0,Bf=0,hg=0,Cf=0;if(Jd.hd()){Jd=this.em;Jd.jd()||(Jd=mc);var Pb=Jd.x,Bf=Jd.y,hg=Jd.offsetX,Cf=Jd.offsetY,Yd=Xd.alignment, +Zd=yh.alignment;Yd.jd()&&(Pb=Yd.x,hg=Yd.offsetX);Zd.jd()&&(Bf=Zd.y,Cf=Zd.offsetY)}else Pb=Jd.x,Bf=Jd.y,hg=Jd.offsetX,Cf=Jd.offsetY;if(isNaN(Pb)||isNaN(Bf))Bf=Pb=.5,Cf=hg=0;var kc=zh.width,vc=zh.height,af=wb.margin,ba=af.left+af.right,gi=af.top+af.bottom,ig=So(wb,yh,Xd,!1);!isNaN(wb.Da.width)||ig!==gf&&ig!==qo||(kc=Math.max(la-ba,0));!isNaN(wb.Da.height)||ig!==gf&&ig!==po||(vc=Math.max(ga-gi,0));var uj=wb.mf,vj=wb.ig,kc=Math.min(uj.width,kc),vc=Math.min(uj.height,vc),kc=Math.max(vj.width,kc),vc=Math.max(vj.height, +vc),Kd=vc+gi;h.x+=h.width*Pb-(kc+ba)*Pb+hg+af.left;h.y+=h.height*Bf-Kd*Bf+Cf+af.top;wb.visible&&(Sb(kd,Kk,Lk,zc,h.x,h.y,zh.width,zh.height)?wb.qc(h.x,h.y,kc,vc):wb.qc(h.x,h.y,kc,vc,new w(kd,Kk,Lk,zc)))}else{wb.$i();wb.ac.Za();var hb=wb.ac;hb.x=Af.type===Jo?jd:dc;hb.y=Af.type===Ko?Ib:Xb;hb.width=zh.width;hb.height=zh.height;wb.ac.freeze();Fo(wb,!1)}}}}z.Qk(Kc);for(Ua=0;Ua<$e;Ua++)wb=g[Ua],Af=wb instanceof I?wb:null,null===Af||Af.type!==Jo&&Af.type!==Ko||(hb=wb.ac,wb.Tc.Za(),wb.Tc.m(0,0,hb.width,hb.height), +wb.Tc.freeze());break;case "Viewbox":var sb=g[0],hi=sb.Ea,wj=sb.margin,Mk=wj.top+wj.bottom,Nk=Math.max(hi.width+(wj.right+wj.left),0),Ac=Math.max(hi.height+Mk,0),ld=sb.alignment;ld.hd()&&(ld=this.em);ld.jd()||(ld=mc);h.x=e.width*ld.x-Nk*ld.x+ld.offsetX;h.y=e.height*ld.y-Ac*ld.y+ld.offsetY;h.width=hi.width;h.height=hi.height;sb.qc(h.x,h.y,h.width,h.height);break;case "Link":var Lg=g.length,Lc=this instanceof ea,ii=Lc?this.$f:this;if(ii instanceof H){var Ok=Lc?null:ii.path;if(null!==this.oh){var fm= +this.oh.o,$d=0;if(null!==Ok&&$d=Df){var Ef=this.WF,lb=this.VF;Ng!==nj&&(Og=this.computeAngle(Mc, Ng,lb),Mc.angle=Og);ce=Ef.x;de=Ef.y}else{var wc=void 0,Jb=void 0;if(0<=Zc)wc=kg.o[Zc],Jb=ZcAh+10?0<=Zc?Gf.Lc(wc):wc.Lc(Gf):Ah>lg+10?0<=Zc?Jb.Lc(Yb):Yb.Lc(Jb):0<=Zc?Gf.Lc(Yb):Yb.Lc(Gf)}else lb=0<=Zc?wc.Lc(Jb):Jb.Lc(wc);Ng!==nj&&(Og=this.computeAngle(Mc, -Ng,lb),Mc.angle=Og);ce=wc.x+(Jb.x-wc.x)*Pk;de=wc.y+(Jb.y-wc.y)*Pk}if(Mg.O(gc))Mc.location=new M(ce,de);else{Mg.ae()&&(Mg=mc);var Ke=z.Pf();Ke.reset();Ke.scale(Mc.scale,Mc.scale);Ke.rotate(Mc.angle,0,0);var Pg=Mc.Ja,mg=z.fh(0,0,Pg.width,Pg.height),Hf=z.P();Hf.po(mg,Mg);Ke.wb(Hf);var Le=-Hf.x,Me=-Hf.y,If=Eb.copy();isNaN(If.x)&&(If.x=0<=Zc?Hf.x+3:-(Hf.x+3));isNaN(If.y)&&(If.y=-(Hf.y+3));If.rotate(lb);ce+=If.x;de+=If.y;Ke.ZG(mg);var Le=Le+mg.x,Me=Me+mg.y,yj=z.Fb(ce+Le,de+Me);Mc.move(yj);z.A(yj);z.A(Hf); -z.Mb(mg);z.Ie(Ke)}}Lc?this.fo(!1):ii.fo(!1)}break;case "Grid":break;case "Graduated":if(null!==this.Nm){var td=this.Xd(),zj=this.Pm,ki=this.Nm,li=0,bf=ki[li];li++;td.rc(bf.x-e.x,bf.y-e.y,bf.width,bf.height);for(var ue=g.length,ng=0;ngp.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.Pf();p.set(h);if(null!==m?m.Pk(a,b,c,d,e,p):Do(n,a,d,p))null!== b&&(n=b(n)),null===n||null!==c&&!c(n)||e.add(n);z.Ie(p)}}}void 0===g&&z.Ie(h);return d}void 0===g&&z.Ie(h);return!1};function Zp(a,b,c,d){for(var e=a.va.o,g=e.length;g--;){var h=e[g];if(h.visible){var k=h.Z,l=a.Ja;k.x>l.width||k.y>l.height||0>k.x+k.width||0>k.y+k.height||(h instanceof I&&Zp(h,b,c,d),null!==b&&(h=b(h)),null===h||null!==c&&!c(h)||d.add(h))}}} f.On=function(a,b,c,d,e,g){if(!1===this.qg)return!1;void 0===c&&(c=null);void 0===d&&(d=null);var h=this.Ja,k=this.jh(),l=k?a:ub(z.Fb(a.x,a.y),this.transform),m=k?b:ub(z.Fb(b.x,b.y),this.transform),n=l.Ef(m),p=0s.width||r.y>s.height||0>r.x+r.width||0>r.y+r.height||(q.jh()?(r=q.transform,ub(k.set(a),r),ub(l.set(b),r)):(k.set(a),l.set(b)),r=q,q=q instanceof I?q:null,null!==q?!q.On(k,l,c,d,e,g):!r.hF(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 Kp(a){var b=a.C;if(void 0===b||b===Rc)b=null;null===b&&a instanceof Y&&(a=a.Ff,null!==a&&(b=a.C));null===b&&(b=hc);return b}function Lp(a){var b=a.D;if(void 0===b||b===Rc)b=null;null===b&&a instanceof Y&&(a=a.Ff,null!==a&&(b=a.D));null===b&&(b=qc);return b}I.prototype.add=I.prototype.add=function(a){z.l(a,O,I,"add:element");this.Zd(this.va.count,a)};I.prototype.elt=I.prototype.fa=function(a){return this.va.fa(a)}; -I.prototype.insertAt=I.prototype.Zd=function(a,b){b instanceof D&&z.k("Cannot add a Part to a Panel: "+b);if(this===b||this.rm(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.Q;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: "+ +p:h}return!1};function Kp(a){var b=a.C;if(void 0===b||b===Rc)b=null;null===b&&a instanceof Y&&(a=a.Ff,null!==a&&(b=a.C));null===b&&(b=hc);return b}function Lp(a){var b=a.D;if(void 0===b||b===Rc)b=null;null===b&&a instanceof Y&&(a=a.Ff,null!==a&&(b=a.D));null===b&&(b=qc);return b}I.prototype.add=I.prototype.add=function(a){z.l(a,O,I,"add:element");this.Yd(this.va.count,a)};I.prototype.elt=I.prototype.fa=function(a){return this.va.fa(a)}; +I.prototype.insertAt=I.prototype.Yd=function(a,b){b instanceof D&&z.k("Cannot add a Part to a Panel: "+b);if(this===b||this.rm(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.Q;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.da!==Nl||b instanceof Y||z.k("Can only add Shapes to a Grid Panel, not: "+b);this.da!==Fp||b instanceof Y||b instanceof pa||z.k("Can only add Shapes or TextBlocks to a Graduated Panel, not: "+b);b.wm(this);b.hn=null;if(null!==this.Wk){var d=b.data;null!==d&&"object"===typeof d&&(null===this.Dg&&(this.Dg=new oa(Object,I)),this.Dg.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.md(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.Zd(a,b);this.K();b.K();null!==b.vd?this.Tk=!0:b instanceof I&&!0===b.Tk&&(this.Tk=!0);this.gk=null;c=this.ba;null!==c&&(c.Jl=null,c.rk=NaN,this.Tk&&c instanceof E&&(c.Tk=!0),c.Tk&&(c.Sd=null),e=this.g,null!==e&&e.sa.lb||(-1!==d&&c.ld(tg,"elements",this,b,null,d,null),c.ld(sg,"elements",this,null,b,null,a),this.su()||$p(this,b,!1)))}; +a>=e.count)return;e.md(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.Yd(a,b);this.K();b.K();null!==b.vd?this.Tk=!0:b instanceof I&&!0===b.Tk&&(this.Tk=!0);this.gk=null;c=this.ba;null!==c&&(c.Jl=null,c.rk=NaN,this.Tk&&c instanceof E&&(c.Tk=!0),c.Tk&&(c.ze=null),e=this.g,null!==e&&e.sa.lb||(-1!==d&&c.ld(tg,"elements",this,b,null,d,null),c.ld(sg,"elements",this,null,b,null,a),this.su()||$p(this,b,!1)))}; z.defineProperty(I,{Tk:null},function(){return 0!==(this.T&8388608)},function(a){0!==(this.T&8388608)!==a&&(this.T^=8388608)});function aq(a,b){a.T=b?a.T|16777216:a.T&-16777217}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.wa(a,">= 0",I,"getRowDefinition:idx");a=Math.round(a);var b=this.ke;if(void 0===b[a]){var c=new mh;c.wm(this);c.Je=!0;c.index=a;b[a]=c}return b[a]};I.prototype.removeRowDefinition=I.prototype.lG=function(a){u&&z.p(a,I,"removeRowDefinition:idx");0>a&&z.wa(a,">= 0",I,"removeRowDefinition:idx");a=Math.round(a);var b=this.ke;this.ld(tg,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.K()}; -z.w(I,{bq:"columnCount"},function(){return void 0===this.fe?0:this.fe.length});I.prototype.getColumnDefinition=I.prototype.oe=function(a){u&&z.p(a,I,"getColumnDefinition:idx");0>a&&z.wa(a,">= 0",I,"getColumnDefinition:idx");a=Math.round(a);var b=this.fe;if(void 0===b[a]){var c=new mh;c.wm(this);c.Je=!1;c.index=a;b[a]=c}return b[a]}; -I.prototype.removeColumnDefinition=I.prototype.iG=function(a){u&&z.p(a,I,"removeColumnDefinition:idx");0>a&&z.wa(a,">= 0",I,"removeColumnDefinition:idx");a=Math.round(a);var b=this.fe;this.ld(tg,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.K()}; +I.prototype.vf=function(a){var b=this.va,c=b.fa(a);c.hn=null;c.wm(null);if(null!==this.Dg){var d=c.data;"object"===typeof d&&this.Dg.remove(d)}b.md(a);cm(this,!1);this.K();this.wn===c&&(this.wn=null);this.gk=null;b=this.ba;null!==b&&(b.Jl=null,b.rk=NaN,b.pe(),d=this.g,null!==d&&d.sa.lb||b.ld(tg,"elements",this,c,null,a,null))};z.w(I,{Oq:"rowCount"},function(){return void 0===this.je?0:this.je.length}); +I.prototype.getRowDefinition=I.prototype.oe=function(a){u&&z.p(a,I,"getRowDefinition:idx");0>a&&z.wa(a,">= 0",I,"getRowDefinition:idx");a=Math.round(a);var b=this.je;if(void 0===b[a]){var c=new mh;c.wm(this);c.Je=!0;c.index=a;b[a]=c}return b[a]};I.prototype.removeRowDefinition=I.prototype.lG=function(a){u&&z.p(a,I,"removeRowDefinition:idx");0>a&&z.wa(a,">= 0",I,"removeRowDefinition:idx");a=Math.round(a);var b=this.je;this.ld(tg,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.K()}; +z.w(I,{aq:"columnCount"},function(){return void 0===this.ee?0:this.ee.length});I.prototype.getColumnDefinition=I.prototype.ne=function(a){u&&z.p(a,I,"getColumnDefinition:idx");0>a&&z.wa(a,">= 0",I,"getColumnDefinition:idx");a=Math.round(a);var b=this.ee;if(void 0===b[a]){var c=new mh;c.wm(this);c.Je=!1;c.index=a;b[a]=c}return b[a]}; +I.prototype.removeColumnDefinition=I.prototype.iG=function(a){u&&z.p(a,I,"removeColumnDefinition:idx");0>a&&z.wa(a,">= 0",I,"removeColumnDefinition:idx");a=Math.round(a);var b=this.ee;this.ld(tg,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.K()}; z.defineProperty(I,{fK:"rowSizing"},function(){return void 0===this.nn?hp:this.nn},function(a){if(void 0!==this.nn){var b=this.nn;b!==a&&(a!==hp&&a!==Np&&z.k("Panel.rowSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.nn=a,this.K(),this.i("rowSizing",b,a))}}); z.defineProperty(I,{aI:"columnSizing"},function(){return void 0===this.Im?hp:this.Im},function(a){if(void 0!==this.Im){var b=this.Im;b!==a&&(a!==hp&&a!==Np&&z.k("Panel.columnSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.Im=a,this.K(),this.i("columnSizing",b,a))}}); z.defineProperty(I,{TG:"topIndex"},function(){return void 0===this.tj?0:this.tj},function(a){if(void 0!==this.tj){var b=this.tj;b!==a&&((!isFinite(a)||0>a)&&z.k("Panel.topIndex must be greater than zero and a real number, not: "+a),this.tj=a,this.K(),this.i("topIndex",b,a))}}); -z.defineProperty(I,{RF:"leftIndex"},function(){return void 0===this.dj?0:this.dj},function(a){if(void 0!==this.dj){var b=this.dj;b!==a&&((!isFinite(a)||0>a)&&z.k("Panel.leftIndex must be greater than zero and a real number, not: "+a),this.dj=a,this.K(),this.i("leftIndex",b,a))}});I.prototype.findRowForLocalY=function(a){if(0>a)return-1;if(this.type!==ha)return NaN;for(var b=0,c=this.ke,d=c.length,e=this.tj;ea)return-1;if(this.type!==ha)return NaN;for(var b=0,c=this.fe,d=c.length,e=this.dj;ea)&&z.k("Panel.leftIndex must be greater than zero and a real number, not: "+a),this.dj=a,this.K(),this.i("leftIndex",b,a))}});I.prototype.findRowForLocalY=function(a){if(0>a)return-1;if(this.type!==ha)return NaN;for(var b=0,c=this.je,d=c.length,e=this.tj;ea)return-1;if(this.type!==ha)return NaN;for(var b=0,c=this.ee,d=c.length,e=this.dj;e=c.elements.count&&!(c instanceof D)){if(1===c.elements.count){var d=null!==c.Wk;if(!d)for(var e=b.j;e.next();)if("itemArray"=== -e.value.av){d=!0;break}}d||(z.trace("Auto, Spot, or Graduated Panel should not have zero or one elements: "+c.toString()+" in "+a.toString()),bq=!0)}}))}var bq=!1;I.prototype.copyTemplate=function(){var a=this.copy();a.FK(function(a){a instanceof I&&(a.pl=null,a.he=null);var c=a.Ec;null!==c&&(a.Ec=null,c.each(function(c){a.bind(c.copy())}))});return a}; +function Nh(a){var b=a.pl;if(null===b)null!==a.data&&z.k("Template cannot have .data be non-null: "+a),a.pl=b=new J(sh);else if(b.I)return;var c=new J(O);aq(a,!1);$o(a,a,function(a,d){var e=d.Ec;if(null!==e)for(Vo(d,!1),e=e.j;e.next();){var g=e.value;g.mode===uh&&Vo(d,!0);var h=g.Wq;null!==h&&("/"===h&&aq(a,!0),h=vh(g,a,d),null!==h&&(c.add(h),null===h.Jp&&(h.Jp=new J(sh)),h.Jp.add(g)));b.add(g)}if(d instanceof I&&d.type===ha){if(0=c.elements.count&&!(c instanceof D)){if(1===c.elements.count){var d=null!==c.Wk;if(!d)for(var e=b.j;e.next();)if("itemArray"=== +e.value.av){d=!0;break}}d||(z.trace("Auto, Spot, or Graduated Panel should not have zero or one elements: "+c.toString()+" in "+a.toString()),bq=!0)}}))}var bq=!1;I.prototype.copyTemplate=function(){var a=this.copy();a.FK(function(a){a instanceof I&&(a.pl=null,a.ge=null);var c=a.Ec;null!==c&&(a.Ec=null,c.each(function(c){a.bind(c.copy())}))});return a}; I.prototype.updateTargetBindings=I.prototype.Nb=function(a){var b=this.pl;if(null!==b)for(void 0===a&&(a=""),b=b.j;b.next();){var c=b.value,d=c.JG;if(""===a||""===d||d===a)if(d=c.av,null!==c.fI||""!==d){var d=this.data,e=c.Wq;if(null!==e)d=""===e?this:"/"===e?this:"."===e?this:".."===e?this:this.Gd(e);else{var g=this.g;null!==g&&c.Ux&&(d=g.ia.Xk)}if(null===d)u&&z.trace("Binding error: missing GraphObject named "+e+" in "+this.toString());else{var g=this,h=c.zm;if(-1!==h){if(g=this.Cx(h),null===g)continue}else null!== -c.Ng&&(g=c.Ng);"/"===e?d=g.ba:"."===e?d=g:".."===e&&(d=g.Q);e=c.At;if(0!==e){if(!(g instanceof I))continue;h=g;1===e?g=h.oe(c.Rp):2===e&&(g=h.pe(c.Rp))}void 0!==g&&c.bH(g,d)}}}}; +c.Ng&&(g=c.Ng);"/"===e?d=g.ba:"."===e?d=g:".."===e&&(d=g.Q);e=c.At;if(0!==e){if(!(g instanceof I))continue;h=g;1===e?g=h.ne(c.Qp):2===e&&(g=h.oe(c.Qp))}void 0!==g&&c.bH(g,d)}}}}; z.defineProperty(I,{Wk:"itemArray"},function(){return this.cj},function(a){var b=this.cj;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.g;null!==c&&null!==b&&Sm(c,this);this.cj=a;null!==c&&null!==a&&Om(c,this);this.i("itemArray",b,a);null!==c&&c.sa.lb||this.pB()}});function kn(a){return a.type===Rj||a.type===Kl||a.type===kj||a.type===ha&&0a;)this.vf(this.va.length-1);a=this.Wk;if(null!==a)for(var b=z.bb(a),c=0;cc)){var d;d=cq(a,b);var e=a.lJ,g=null;null!==e&&(g=e.qa(d));null===g&&(dq||(dq=!0,z.trace('No item template Panel found for category "'+d+'" on '+a),z.trace(" Using default item template."),d=new I,e=new pa,e.bind(new sh("text","",ka)),d.add(e),eq=d),g=eq);d=g;null!==d&&(Nh(d),d=d.copy(),0!==(d.T&16777216)&&(e=a.jm(),null!==e&&aq(e,!0)),"object"===typeof b&&(null===a.Dg&&(a.Dg=new oa(Object,I)),a.Dg.add(b,d)),e=c,kn(a)&&e++,a.Zd(e,d),d.he=b,ln(a,e, -c),d.he=null,d.data=b)}}function ln(a,b,c){for(a=a.va;bc)){var d;d=cq(a,b);var e=a.lJ,g=null;null!==e&&(g=e.qa(d));null===g&&(dq||(dq=!0,z.trace('No item template Panel found for category "'+d+'" on '+a),z.trace(" Using default item template."),d=new I,e=new pa,e.bind(new sh("text","",ka)),d.add(e),eq=d),g=eq);d=g;null!==d&&(Nh(d),d=d.copy(),0!==(d.T&16777216)&&(e=a.jm(),null!==e&&aq(e,!0)),"object"===typeof b&&(null===a.Dg&&(a.Dg=new oa(Object,I)),a.Dg.add(b,d)),e=c,kn(a)&&e++,a.Yd(e,d),d.ge=b,ln(a,e, +c),d.ge=null,d.data=b)}}function ln(a,b,c){for(a=a.va;ba&&z.wa(a,">= 0",mh,"height"),this.tf=a,this.Ra=this.$a,null!==this.Q&&this.Q.K(),this.sd("height",b,a))});z.defineProperty(mh,{width:"width"},function(){return this.tf},function(a){var b=this.tf;b!==a&&(u&&z.h(a,"number",mh,"width"),0>a&&z.wa(a,">= 0",mh,"width"),this.tf=a,this.Ra=this.$a,null!==this.Q&&this.Q.K(),this.sd("width",b,a))}); z.defineProperty(mh,{Lj:"minimum"},function(){return this.tk},function(a){var b=this.tk;b!==a&&(u&&z.h(a,"number",mh,"minimum"),(0>a||!isFinite(a))&&z.wa(a,">= 0",mh,"minimum"),this.tk=a,this.Ra=this.$a,null!==this.Q&&this.Q.K(),this.sd("minimum",b,a))});z.defineProperty(mh,{zf:"maximum"},function(){return this.sk},function(a){var b=this.sk;b!==a&&(u&&z.h(a,"number",mh,"maximum"),0>a&&z.wa(a,">= 0",mh,"maximum"),this.sk=a,this.Ra=this.$a,null!==this.Q&&this.Q.K(),this.sd("maximum",b,a))}); -z.defineProperty(mh,{alignment:"alignment"},function(){return this.ue},function(a){var b=this.ue;b.O(a)||(u&&z.l(a,R,mh,"alignment"),this.ue=a.V(),null!==this.Q&&this.Q.K(),this.sd("alignment",b,a))});z.defineProperty(mh,{stretch:"stretch"},function(){return this.Mg},function(a){var b=this.Mg;b!==a&&(u&&z.Ca(a,O,mh,"stretch"),this.Mg=a,null!==this.Q&&this.Q.K(),this.sd("stretch",b,a))}); +z.defineProperty(mh,{alignment:"alignment"},function(){return this.te},function(a){var b=this.te;b.O(a)||(u&&z.l(a,R,mh,"alignment"),this.te=a.V(),null!==this.Q&&this.Q.K(),this.sd("alignment",b,a))});z.defineProperty(mh,{stretch:"stretch"},function(){return this.Mg},function(a){var b=this.Mg;b!==a&&(u&&z.Ca(a,O,mh,"stretch"),this.Mg=a,null!==this.Q&&this.Q.K(),this.sd("stretch",b,a))}); z.defineProperty(mh,{CG:"separatorPadding"},function(){return this.xk},function(a){"number"===typeof a?a=new Kb(a):null!==a&&u&&z.l(a,Kb,mh,"separatorPadding");var b=this.xk;null!==a&&null!==b&&b.O(a)||(null!==a&&(a=a.V()),this.xk=a,null!==this.Q&&this.Q.K(),this.sd("separatorPadding",b,a))}); z.defineProperty(mh,{Qq:"separatorStroke"},function(){return this.mt},function(a){var b=this.mt;b!==a&&(null===a||"string"===typeof a||a instanceof Ea)&&(a instanceof Ea&&a.freeze(),this.mt=a,null!==this.Q&&this.Q.K(),this.sd("separatorStroke",b,a))});z.defineProperty(mh,{Rq:"separatorStrokeWidth"},function(){return this.nt},function(a){var b=this.nt;b!==a&&(this.nt=a,null!==this.Q&&this.Q.K(),this.sd("separatorStrokeWidth",b,a))}); z.defineProperty(mh,{jK:"separatorDashArray"},function(){return this.ni},function(a){var b=this.ni;if(b!==a){null===a||Array.isArray(a)||z.hc(a,"Array",mh,"separatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;ee)){for(var g=d.Ea,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,v=q=0,t=z.tb(),x=2;xp&&(p=1);for(var e=c=p,m=h/2,n=0===m?!1:!0,x=0,q=t[x],p=q[0],s=q[1],r=q[2],q=q[3],y=0;.1<=v;){0===y&&(n?(e=c,e-=m,v-=m,n=!1):e=c,0===e&&(e=1));if(e>v){z.Ba(t);return}e> -q?(y=e-q,e=q):y=0;var A=Math.sqrt(e*e/(1+r*r));0>p&&(A=-A);k+=A;l+=r*A;a.translate(k,l);a.rotate(s);a.translate(-(h/2),-(g/2));0===y&&d.Ok(a,b);a.translate(h/2,g/2);a.rotate(-s);a.translate(-k,-l);v-=e;q-=e;if(0!==y){x++;if(x===t.length){z.Ba(t);return}q=t[x];p=q[0];s=q[1];r=q[2];q=q[3];e=y}}z.Ba(t)}} -Y.prototype.Ok=function(a,b){if(null!==this.Ac||null!==this.Pd){null!==this.Pd&&No(this,a,this.Pd,!0,!1);null!==this.Ac&&No(this,a,this.Ac,!1,!1);var c=this.ef;if(0===c){var d=this.ba;d instanceof ea&&d.type===kj&&"Selection"===d.sc&&d.Ab instanceof Y&&d.$f.Xd()===d.Ab&&(c=d.Ab.mb)}a.lineWidth=c;a.lineJoin=this.Pp;a.lineCap=this.Np;a.miterLimit=this.vn;var e=!1;this.ba&&b.Dj("drawShadows")&&(e=this.ba.Vk);var g=!0;null!==this.Ac&&null===this.Pd&&(g=!1);var d=!1,h=!0,k=this.MG;null!==k&&(d=!0,h=a.AA(k, +q?(y=e-q,e=q):y=0;var B=Math.sqrt(e*e/(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===y&&d.Ok(a,b);a.translate(h/2,g/2);a.rotate(-s);a.translate(-k,-l);v-=e;q-=e;if(0!==y){x++;if(x===t.length){z.Ba(t);return}q=t[x];p=q[0];s=q[1];r=q[2];q=q[3];e=y}}z.Ba(t)}} +Y.prototype.Ok=function(a,b){if(null!==this.Ac||null!==this.Pd){null!==this.Pd&&No(this,a,this.Pd,!0,!1);null!==this.Ac&&No(this,a,this.Ac,!1,!1);var c=this.ef;if(0===c){var d=this.ba;d instanceof ea&&d.type===kj&&"Selection"===d.rc&&d.Ab instanceof Y&&d.$f.Wd()===d.Ab&&(c=d.Ab.mb)}a.lineWidth=c;a.lineJoin=this.Op;a.lineCap=this.Mp;a.miterLimit=this.vn;var e=!1;this.ba&&b.Dj("drawShadows")&&(e=this.ba.Vk);var g=!0;null!==this.Ac&&null===this.Pd&&(g=!1);var d=!1,h=!0,k=this.MG;null!==k&&(d=!0,h=a.AA(k, this.Oe));var l=this.nb;if(null!==l){if(l.da===hf)a.beginPath(),d&&!h?yo(a,l.zc,l.Ic,l.Bb,l.Ib,k,this.Oe):(a.moveTo(l.zc,l.Ic),a.lineTo(l.Bb,l.Ib)),null!==this.Pd&&a.Tg(this.Pd),0!==c&&null!==this.Ac&&a.Rj();else if(l.da===jf){var m=l.zc,n=l.Ic,p=l.Bb,q=l.Ib,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.Tg(this.Pd));if(null!==this.Ac){var s=p=0,v=0;g&&e&&(p=a.shadowOffsetX,s=a.shadowOffsetY,v=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY= 0,a.shadowBlur=0);d&&!h?(h=z.tb(),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(),hq(a,h,k,this.Oe),a.Rj(),z.Ba(h)):0!==c&&(a.beginPath(),a.rect(l,r,m,n),a.Rj());g&&e&&(a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=v)}}else if(l.da===kf)m=l.zc,n=l.Ic,p=l.Bb,q=l.Ib,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+Cd*l,n-r,m+l,n-Cd*r,m+l,n),a.bezierCurveTo(m+ l,n+Cd*r,m+Cd*l,n+r,m,n+r),a.bezierCurveTo(m-Cd*l,n+r,m-l,n+Cd*r,m-l,n),a.bezierCurveTo(m-l,n-Cd*r,m-Cd*l,n-r,m,n-r),a.closePath(),null!==this.Pd&&a.Tg(this.Pd),d&&!h&&(h=z.tb(),ye(m,n-r,m+Cd*l,n-r,m+l,n-Cd*r,m+l,n,.5,h),ye(m+l,n,m+l,n+Cd*r,m+Cd*l,n+r,m,n+r,.5,h),ye(m,n+r,m-Cd*l,n+r,m-l,n+Cd*r,m-l,n,.5,h),ye(m-l,n,m-l,n-Cd*r,m-Cd*l,n-r,m,n-r,.5,h),a.beginPath(),hq(a,h,k,this.Oe),z.Ba(h)),0!==c&&null!==this.Ac&&(g&&e?(p=a.shadowOffsetX,s=a.shadowOffsetY,v=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY= 0,a.shadowBlur=0,a.Rj(),a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=v):a.Rj());else if(l.da===We){r=l.bk;n=r.length;for(q=0;qx.Bf);else{var t=Rf(x,m),y=t.length;if(0===y){a.lineTo(x.oa,x.xa);break}for(var A=0;Ax.Bf);else{var t=Rf(x,m),y=t.length;if(0===y){a.lineTo(x.oa,x.xa);break}for(var B=0;Be)){var g=.001,h=c.length,k=b[0],l=b[1];if(4===e)yo(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.tb(),v=2;vr&&(g=r);g>p?(t=g-p,g=p):t=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!==t){v++;if(v===s.length){z.Ba(s);return}p=s[v];n=p[0];q=p[1];p=p[2];g=t}else e=!e}z.Ba(s)}}}Y.prototype.getDocumentPoint=Y.prototype.cb=function(a,b){void 0===b&&(b=new M);if(a instanceof R){a.ae()&&z.k("getDocumentPoint Spot must be a real, specific Spot, not: "+a.toString());var c=this.Ja,d=this.mb;b.m(a.x*(c.width+d)-d/2+c.x+a.offsetX,a.y*(c.height+d)-d/2+c.y+a.offsetY)}else b.set(a);this.Gh.wb(b);return b}; +q*x;e?a.lineTo(k,l):a.moveTo(k,l);r-=g;p-=g;if(0!==t){v++;if(v===s.length){z.Ba(s);return}p=s[v];n=p[0];q=p[1];p=p[2];g=t}else e=!e}z.Ba(s)}}}Y.prototype.getDocumentPoint=Y.prototype.cb=function(a,b){void 0===b&&(b=new M);if(a instanceof R){a.$d()&&z.k("getDocumentPoint Spot must be a real, specific Spot, not: "+a.toString());var c=this.Ja,d=this.mb;b.m(a.x*(c.width+d)-d/2+c.x+a.offsetX,a.y*(c.height+d)-d/2+c.y+a.offsetY)}else b.set(a);this.Gh.wb(b);return b}; Y.prototype.Kk=function(a,b){var c=this.Ff;if(null===c||null===this.fill&&null===this.stroke)return!1;var d=c.sb,e=this.mb/2;c.type!==hf||b||(e+=2);var g=z.Of();g.assign(d);g.fg(e+2,e+2);if(!g.Oa(a))return z.Mb(g),!1;d=e+1E-4;if(c.type===hf){if(null===this.stroke)return!1;d=(c.G-c.na)*(a.x-c.na)+(c.H-c.la)*(a.y-c.la);if(0>(c.na-c.G)*(a.x-c.G)+(c.la-c.H)*(a.y-c.H)||0>d)return!1;z.Mb(g);return qe(c.na,c.la,c.G,c.H,e,a.x,a.y)}if(c.type===jf){var h=c.na,k=c.la,l=c.G,m=c.H;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.fg(-d,-d);if(g.Oa(a))return z.Mb(g),!1;g.fg(d,d)}null!==this.stroke&&g.fg(e,e);e=g.Oa(a);z.Mb(g);return e}if(c.type===kf){var h=c.na,k=c.la,l=c.G,m=c.H,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.Mb(g),!1;h+=d;k+=d}null!==this.stroke&&(h+=e,k+=e);z.Mb(g);return 0>=h||0>=k?!1:1>=c*c/(h*h)+n*n/(k*k)}if(c.type=== We)return z.Mb(g),null===this.fill?Uf(c,a.x,a.y,e):c.Oa(a,e,1=this.mb)n=Fe(p.zc,p.Ic,p.Bb,p.Ib,g,h,k,l,e);else{var r=0,s=0;p.zc===p.Bb?(r=m,s=0):(b=(p.Ib-p.Ic)/(p.Bb-p.zc),s=m/Math.sqrt(1+b*b),r=s*b);d=z.tb();b=new M;Fe(p.zc+ r,p.Ic+s,p.Bb+r,p.Ib+s,g,h,k,l,b)&&d.push(b);b=new M;Fe(p.zc-r,p.Ic-s,p.Bb-r,p.Ib-s,g,h,k,l,b)&&d.push(b);b=new M;Fe(p.zc+r,p.Ic+s,p.zc-r,p.Ic-s,g,h,k,l,b)&&d.push(b);b=new M;Fe(p.Bb+r,p.Ib+s,p.Bb-r,p.Ib-s,g,h,k,l,b)&&d.push(b);b=d.length;if(0===b)return z.Ba(d),!1;n=!0;s=Infinity;for(r=0;rMath.abs(c)){n=h-b-c*(g-d);if(0>a*a*c*c+t*t-n*n){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(a*a*c*c+t*t-n*n);k=(-(a*a*c*n)+a*t*m)/(t*t+a*a*c*c)+d;a=(-(a*a*c*n)-a*t*m)/(t*t+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);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||Db(l.y,e))&&(l.ye||Db(l.x,e))&&(l.x=h&&d<=a}a=h&&g<=a} -Y.prototype.hF=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.Kk(a,!0))return!0;var e=a.Ef(b);b=e;1.5e)return!0;return!1}if(c&&null!==this.fill&&this.Kk(a,!0))return!0;var e=a.Ef(b);b=e;1.5=e||yb(b,g,0,-p)>=e||yb(b,g,0,p)>=e||yb(b,g,n,0)>= -e?!1:!0}else if(g.type===We){h=g.sb;k=h.x;l=h.y;m=h.x+h.width;h=h.y+h.height;if(a.x>m&&a.xh&&a.ye&&xb(a.x,a.y,k,l,m,l)>e&&xb(a.x,a.y,m,h,k,h)>e&&xb(a.x,a.y,m,h,m,l)>e)return!1;b=Math.sqrt(e);if(c){if(null===this.fill?Uf(g,a.x,a.y,b):g.Oa(a,b,!0))return!0}else{c=g.mc;for(b=0;be)return!1;l=k.Db.o;m=l.length;for(h=0;he)return!1;break;case Nf:g=z.tb(); -ye(n,p,q.Dc,q.Zc,q.Rh,q.Sh,q.G,q.H,.8,g);n=d(g,a);z.Ba(g);if(n)return!1;n=q.G;p=q.H;if(a.iq(n,p)>e)return!1;break;case Of:g=z.tb();Ce(n,p,q.Dc,q.Zc,q.G,q.H,.8,g);n=d(g,a);z.Ba(g);if(n)return!1;n=q.G;p=q.H;if(a.iq(n,p)>e)return!1;break;case Pf:case Qf:var r=q.type===Pf?Rf(q,k):Sf(q,k,n,p),s=r.length;if(0===s){n=q.oa;p=q.xa;if(a.iq(n,p)>e)return!1;break}q=null;g=z.tb();for(b=0;bm&&a.xh&&a.ye&&xb(a.x,a.y,k,l,m,l)>e&&xb(a.x,a.y,m,h,k,h)>e&&xb(a.x,a.y,m,h,m,l)>e)return!1;b=Math.sqrt(e);if(c){if(null===this.fill?Uf(g,a.x,a.y,b):g.Oa(a,b,!0))return!0}else{c=g.mc;for(b=0;be)return!1;l=k.Db.o;m=l.length;for(h=0;he)return!1;break;case Nf:g=z.tb(); +ye(n,p,q.Dc,q.Zc,q.Rh,q.Sh,q.G,q.H,.8,g);n=d(g,a);z.Ba(g);if(n)return!1;n=q.G;p=q.H;if(a.hq(n,p)>e)return!1;break;case Of:g=z.tb();Ce(n,p,q.Dc,q.Zc,q.G,q.H,.8,g);n=d(g,a);z.Ba(g);if(n)return!1;n=q.G;p=q.H;if(a.hq(n,p)>e)return!1;break;case Pf:case Qf:var r=q.type===Pf?Rf(q,k):Sf(q,k,n,p),s=r.length;if(0===s){n=q.oa;p=q.xa;if(a.hq(n,p)>e)return!1;break}q=null;g=z.tb();for(b=0;b= 0",Y,"strokeWidth:value")}); -z.defineProperty(Y,{AM:"strokeCap"},function(){return this.Np},function(a){var b=this.Np;b!==a&&("string"!==typeof a||"butt"!==a&&"round"!==a&&"square"!==a?z.wa(a,'"butt", "round", or "square"',Y,"strokeCap"):(this.Np=a,this.ra(),this.i("strokeCap",b,a)))}); -z.defineProperty(Y,{CM:"strokeJoin"},function(){return this.Pp},function(a){var b=this.Pp;b!==a&&("string"!==typeof a||"miter"!==a&&"bevel"!==a&&"round"!==a?z.wa(a,'"miter", "bevel", or "round"',Y,"strokeJoin"):(this.Pp=a,this.ra(),this.i("strokeJoin",b,a)))}); +z.defineProperty(Y,{AM:"strokeCap"},function(){return this.Mp},function(a){var b=this.Mp;b!==a&&("string"!==typeof a||"butt"!==a&&"round"!==a&&"square"!==a?z.wa(a,'"butt", "round", or "square"',Y,"strokeCap"):(this.Mp=a,this.ra(),this.i("strokeCap",b,a)))}); +z.defineProperty(Y,{CM:"strokeJoin"},function(){return this.Op},function(a){var b=this.Op;b!==a&&("string"!==typeof a||"miter"!==a&&"bevel"!==a&&"round"!==a?z.wa(a,'"miter", "bevel", or "round"',Y,"strokeJoin"):(this.Op=a,this.ra(),this.i("strokeJoin",b,a)))}); z.defineProperty(Y,{DM:"strokeMiterLimit"},function(){return this.vn},function(a){var b=this.vn;if(b!==a)if(u&&z.p(a,Y,"strokeMiterLimit"),1<=a){this.vn=a;this.ra();var c=this.ba;null!==c&&(c.rk=NaN);this.i("strokeMiterLimit",b,a)}else z.wa(a,"value >= 1",Y,"strokeWidth:value")}); -z.defineProperty(Y,{MG:"strokeDashArray"},function(){return this.Op},function(a){var b=this.Op;if(b!==a){null===a||Array.isArray(a)||z.hc(a,"Array",Y,"strokeDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;ea?a=0:1a?a=0:1a?a=0:1a?a=0:1a?a=0:1n*l*l&&(h=!0);b.pd!==a&&(h=!1);!1===b.Dj("textGreeking")&&(h=!1);n=this.si;l=this.ti;switch(this.gu){case so:a.translate(c, -0);a.scale(-1,1);break;case ro:a.translate(0,d);a.scale(1,-1);break;case to:a.translate(c,d),a.scale(-1,-1)}var m=this.xe,p=(n+e+l)*m;d>p&&(k=this.Rl,k=k.y*d-k.y*p+k.offsetY);for(var p=this.gi,q=0;qc&&(r=c);var k=k+n,v=s,s=a,t=k,x=c,y=e,A=g,B=0;h?("left"===A?B=0:"right"===A?B=x-r:"center"===A&&(B=(x-r)/2),s.fillRect(0+B,t+.25*y,r,1)):("left"===A?B=0:"right"===A?B=x:"center"===A&&(B=x/2),s.fillText(v,0+B,t+y-.25*y),v=y/20|0,0===v&&(v=1),"right"===A?B-=r:"center"=== -A&&(B-=r/2),this.mk&&(s.beginPath(),s.lineWidth=v,s.moveTo(0+B,t+y-.2*y),s.lineTo(0+B+r,t+y-.2*y),s.stroke()),this.lk&&(s.beginPath(),s.lineWidth=v,t=t+y-y/2.2|0,0!==v%2&&(t+=.5),s.moveTo(0+B,t),s.lineTo(0+B+r,t),s.stroke()));k+=e+l}switch(this.gu){case so:a.scale(-1,1);a.translate(-c,0);break;case ro:a.scale(1,-1);a.translate(0,-d);break;case to:a.scale(-1,-1),a.translate(-c,-d)}}}; +pa.prototype.Ok=function(a,b){if(null!==this.Ac&&0!==this.Ud.length&&null!==this.xg){var c=this.Ja.width,d=this.Ja.height,e=Gq(this),g=a.textAlign=this.Nl,h=b.fs;"start"===g&&(g=h?"right":"left");"end"===g&&(g=h?"left":"right");No(this,a,this.Ac,!0,!1);(this.mk||this.lk)&&No(this,a,this.Ac,!1,!1);var k=0,h=!1,l=z.Fb(0,0);this.Gh.wb(l);var m=z.Fb(0,e);this.Gh.wb(m);var n=l.Ef(m);z.A(l);z.A(m);l=b.scale;8>n*l*l&&(h=!0);b.pd!==a&&(h=!1);!1===b.Dj("textGreeking")&&(h=!1);n=this.si;l=this.ti;switch(this.gu){case so:a.translate(c, +0);a.scale(-1,1);break;case ro:a.translate(0,d);a.scale(1,-1);break;case to:a.translate(c,d),a.scale(-1,-1)}var m=this.we,p=(n+e+l)*m;d>p&&(k=this.Rl,k=k.y*d-k.y*p+k.offsetY);for(var p=this.gi,q=0;qc&&(r=c);var k=k+n,v=s,s=a,t=k,x=c,y=e,B=g,A=0;h?("left"===B?A=0:"right"===B?A=x-r:"center"===B&&(A=(x-r)/2),s.fillRect(0+A,t+.25*y,r,1)):("left"===B?A=0:"right"===B?A=x:"center"===B&&(A=x/2),s.fillText(v,0+A,t+y-.25*y),v=y/20|0,0===v&&(v=1),"right"===B?A-=r:"center"=== +B&&(A-=r/2),this.mk&&(s.beginPath(),s.lineWidth=v,s.moveTo(0+A,t+y-.2*y),s.lineTo(0+A+r,t+y-.2*y),s.stroke()),this.lk&&(s.beginPath(),s.lineWidth=v,t=t+y-y/2.2|0,0!==v%2&&(t+=.5),s.moveTo(0+A,t),s.lineTo(0+A+r,t),s.stroke()));k+=e+l}switch(this.gu){case so:a.scale(-1,1);a.translate(-c,0);break;case ro:a.scale(1,-1);a.translate(0,-d);break;case to:a.scale(-1,-1),a.translate(-c,-d)}}}; pa.prototype.computeAngle=function(a,b){var c=0;switch(a){default:case nj:c=0;break;case oq:c=b;break;case Pp:c=b+90;break;case Rp:c=b-90;break;case Hq:c=b+180;break;case Iq:c=Re(b);90c&&(c-=180);break;case Qp:c=Re(b+90);90c&&(c-=180);break;case Sp:c=Re(b-90);90c&&(c-=180);break;case Tp:c=Re(b);if(45c||225c)return 0;90c&&(c-=180)}return Re(c)}; -pa.prototype.Aq=function(a,b,c,d){this.qp=a;var e=this.gi;e.reset();var g=0,h=0;if(isNaN(this.Da.width)){g=this.Vd.replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(0===g.length)g=0;else if(this.Tx){for(var k=h=0,l=!1;!l;){var m=g.indexOf("\n",k);-1===m&&(m=g.length,l=!0);k=Jq(g.substr(k,m-k).replace(/^\s+|\s+$/g,""),this.xg);k>h&&(h=k);k=m+1}g=h}else h=g.indexOf("\n",0),0<=h&&(g=g.substr(0,h)),g=k=Jq(g,this.xg);g=Math.min(g,a/this.scale);g=Math.max(8,g)}else g=this.Da.width;null!==this.Q&&(g=Math.min(g, +pa.prototype.zq=function(a,b,c,d){this.pp=a;var e=this.gi;e.reset();var g=0,h=0;if(isNaN(this.Da.width)){g=this.Ud.replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(0===g.length)g=0;else if(this.Tx){for(var k=h=0,l=!1;!l;){var m=g.indexOf("\n",k);-1===m&&(m=g.length,l=!0);k=Jq(g.substr(k,m-k).replace(/^\s+|\s+$/g,""),this.xg);k>h&&(h=k);k=m+1}g=h}else h=g.indexOf("\n",0),0<=h&&(g=g.substr(0,h)),g=k=Jq(g,this.xg);g=Math.min(g,a/this.scale);g=Math.max(8,g)}else g=this.Da.width;null!==this.Q&&(g=Math.min(g, this.Q.mf.width),g=Math.max(g,this.Q.ig.width));h=Fq(this,g,e);m=h=isNaN(this.Da.height)?Math.min(h,b/this.scale):this.Da.height;if(0!==e.rf&&1!==e.Xe.length&&this.lj===Cq&&(b=this.xg,l=this.lj===Cq?Kq(b):0,k=this.si+this.ti,k=Math.max(0,Gq(this)+k),m=Math.min(this.yJ-1,Math.max(Math.floor(m/k+.01)-1,0)),!(m+1>=e.Xe.length))){k=e.Xe[m];for(a=Math.max(1,a-l);Jq(k,b)>a&&1=a.uh)return new Fa(0,l);if(a.Gk===Aq){c.vj=1;g=Jq(b,k);if(0===h||g<=d)return c.rf=g,c.Cf.push(c.rf),c.Xe.push(b),new Fa(g,l);var m=Lq(b);b=b.substr(m.length);for(var n=Lq(b),g=Jq(m+n,k);0d&&1d;){n=1;g=Jq(m.substr(0,n),k);for(h=0;g<=d;)n++,h=g,g=Jq(m.substr(0,n),k);1===n?(c.Cf[a.xe+p]=g,e=Math.max(e,g)):(c.Cf[a.xe+p]=h,e=Math.max(e,h));n--;1>n&&(n=1);c.Xe[a.xe+p]=m.substr(0,n);p++;m=m.substr(n);if(a.xe+p>a.uh)break}n=Lq(b);for(g=Jq(m+n,k);0a.uh))break}c.vj=Math.min(a.uh,p);c.rf=Math.max(c.rf,e);return new Fa(c.rf,l*c.vj)}function Lq(a){for(var b=a.length,c=0;c=b?a:a.substr(0,c)} +e.rf=Math.max(e.rf,a);this.we=e.vj}if(this.eH===Bq||isNaN(this.Da.width))g=e.rf,isNaN(this.Da.width)&&(g=Math.max(8,g));g=Math.max(c,g);h=Math.max(d,h);Ab(this.Tc,g,h);Bo(this,0,0,g,h)};pa.prototype.wj=function(a,b,c,d){Go(this,a,b,c,d)}; +function Eq(a,b,c,d){b=b.replace(/^\s+|\s+$/g,"");var e=0,g=0,h=0,k=a.xg,g=a.si+a.ti,l=Math.max(0,Gq(a)+g),h=a.lj===Cq?Kq(k):0;if(a.we>=a.uh)return new Fa(0,l);if(a.Gk===Aq){c.vj=1;g=Jq(b,k);if(0===h||g<=d)return c.rf=g,c.Cf.push(c.rf),c.Xe.push(b),new Fa(g,l);var m=Lq(b);b=b.substr(m.length);for(var n=Lq(b),g=Jq(m+n,k);0d&&1d;){n=1;g=Jq(m.substr(0,n),k);for(h=0;g<=d;)n++,h=g,g=Jq(m.substr(0,n),k);1===n?(c.Cf[a.we+p]=g,e=Math.max(e,g)):(c.Cf[a.we+p]=h,e=Math.max(e,h));n--;1>n&&(n=1);c.Xe[a.we+p]=m.substr(0,n);p++;m=m.substr(n);if(a.we+p>a.uh)break}n=Lq(b);for(g=Jq(m+n,k);0a.uh))break}c.vj=Math.min(a.uh,p);c.rf=Math.max(c.rf,e);return new Fa(c.rf,l*c.vj)}function Lq(a){for(var b=a.length,c=0;c=b?a:a.substr(0,c)} function Jq(a,b){yq!==b&&(yq=zq.font=b);return zq.measureText(a).width}function Gq(a){if(null!==a.Mm)return a.Mm;var b=a.xg;yq!==b&&(yq=zq.font=b);var c=0;void 0!==tq[b]&&5E3>uq?c=tq[b]:(c=1.3*zq.measureText("M").width,tq[b]=c,uq++);return a.Mm=c}function Kq(a){yq!==a&&(yq=zq.font=a);var b=0;void 0!==vq[a]&&5E3>wq?b=vq[a]:(b=zq.measureText(xq).width,vq[a]=b,wq++);return b} -function Fq(a,b,c){var d=a.Vd.replace(/\r\n/g,"\n").replace(/\r/g,"\n"),e=a.si+a.ti,e=Math.max(0,Gq(a)+e);if(0===d.length)return c.rf=0,a.xe=1,e;if(!a.Tx){var g=d.indexOf("\n",0);0<=g&&(d=d.substr(0,g))}for(var g=0,h=a.xe=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.Gk!==Aq?(c.vj=0,h=Eq(a,h,c,b),g+=h.height,a.xe+=c.vj):(Eq(a,h,c,b),g+=e,a.xe++),a.xe===a.uh&&(l=!0)),h=k+1;return a.jw=g} +function Fq(a,b,c){var d=a.Ud.replace(/\r\n/g,"\n").replace(/\r/g,"\n"),e=a.si+a.ti,e=Math.max(0,Gq(a)+e);if(0===d.length)return c.rf=0,a.we=1,e;if(!a.Tx){var g=d.indexOf("\n",0);0<=g&&(d=d.substr(0,g))}for(var g=0,h=a.we=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.Gk!==Aq?(c.vj=0,h=Eq(a,h,c,b),g+=h.height,a.we+=c.vj):(Eq(a,h,c,b),g+=e,a.we++),a.we===a.uh&&(l=!0)),h=k+1;return a.jw=g} z.defineProperty(pa,{JB:"textValidation"},function(){return this.Ol},function(a){var b=this.Ol;b!==a&&(null!==a&&z.h(a,"function",pa,"textValidation"),this.Ol=a,this.i("textValidation",b,a))});z.defineProperty(pa,{OG:"textEdited"},function(){return this.Bt},function(a){var b=this.Bt;b!==a&&(null!==a&&z.h(a,"function",pa,"textEdited"),this.Bt=a,this.i("textEdited",b,a))}); z.defineProperty(pa,{xM:"spacingAbove"},function(){return this.si},function(a){var b=this.si;b!==a&&(u&&z.h(a,"number",pa,"spacingAbove"),this.si=a,this.i("spacingAbove",b,a))});z.defineProperty(pa,{yM:"spacingBelow"},function(){return this.ti},function(a){var b=this.ti;b!==a&&(u&&z.h(a,"number",pa,"spacingBelow"),this.ti=a,this.i("spacingBelow",b,a))}); z.defineProperty(pa,{yJ:"maxLines"},function(){return this.uh},function(a){var b=this.uh;b!==a&&(u&&z.h(a,"number",pa,"maxLines"),a=Math.floor(a),0>=a&&z.wa(a,"> 0",pa,"maxLines"),this.uh=a,this.i("maxLines",b,a),this.K())});z.w(pa,{$L:"metrics"},function(){return this.gi});z.defineProperty(pa,{hL:"choices"},function(){return this.or},function(a){var b=this.or;b!==a&&(null===a||Array.isArray(a)||z.hc(a,"Array",pa,"choices:value"),this.or=a,this.i("choices",b,a))}); -function Up(){this.rf=this.vj=0;this.Cf=[];this.Xe=[]}Up.prototype.reset=function(){this.rf=this.vj=0;this.Cf=[];this.Xe=[]};Up.prototype.cq=function(a){this.vj=a.vj;this.rf=a.rf;this.Cf=z.am(a.Cf);this.Xe=z.am(a.Xe)};z.w(Up,{fL:"arrSize"},function(){return this.Cf});z.w(Up,{gL:"arrText"},function(){return this.Xe});z.w(Up,{ZL:"maxLineWidth"},function(){return this.rf}); -function Cl(){O.call(this);this.Ze=null;this.tt="";this.yk=je;this.ep=gf;this.wi=this.$e=null;this.dp=mc;this.wg=Tj;this.Qp=null;this.Bz=!1;this.Zo=!0;this.Ip=null}z.Ta(Cl,O);z.ka("Picture",Cl);Cl.prototype.cloneProtected=function(a){O.prototype.cloneProtected.call(this,a);a.element=this.Ze;a.tt=this.tt;a.yk=this.yk.V();a.ep=this.ep;a.wg=this.wg;a.$e=this.$e;a.wi=this.wi;a.dp=this.dp.V();a.Zo=this.Zo;a.Ip=this.Ip}; -Cl.prototype.qc=function(a){a===Tj||a===Vj||a===Wj?this.XI=a:O.prototype.qc.call(this,a)};Cl.prototype.toString=function(){return"Picture("+this.source+")#"+z.Hd(this)};var Mq=new na,Nq=0,wl=[];function Oq(){var a=wl;if(0===a.length)for(var b=window.document.getElementsByTagName("canvas"),c=b.length,d=0;d=d.width&&(e=e+r.offsetX+(n*r.x-d.width*r.x));p>=d.height&&(g=g+r.offsetY+(p*r.y-d.height*r.y));k=Math.min(d.width,n);h=Math.min(d.height,p);break;case gf:n=d.width;p=d.height;break;case Vj:case Wj:var s=0;q===Vj?(s=Math.min(d.height/p,d.width/n),n*=s,p*=s):q===Wj&&(s=Math.max(d.height/p,d.width/n),n*=s,p*=s,n>=d.width&&(e=(e+r.offsetX+(n*r.x-d.width*r.x)/n)*k),p>=d.height&&(g=(g+r.offsetY+(p*r.y-d.height*r.y)/p)*h),k*=1/(n/d.width),h*=1/(p/d.height), -n=d.width,p=d.height)}var q=this.Cj()*b.scale,v=k*h/(n*q*p*q),s=Mq[this.source],q=null;if(void 0!==s&&16s.Xp.length&&(Tq(s,4,l,m),Tq(s,16,l,m));for(var l=s.Xp,m=l.length,q=l[0],t=0;t=d.width&&(e=e+r.offsetX+(n*r.x-d.width*r.x));p>=d.height&&(g=g+r.offsetY+(p*r.y-d.height*r.y));k=Math.min(d.width,n);h=Math.min(d.height,p);break;case gf:n=d.width;p=d.height;break;case Vj:case Wj:var s=0;q===Vj?(s=Math.min(d.height/p,d.width/n),n*=s,p*=s):q===Wj&&(s=Math.max(d.height/p,d.width/n),n*=s,p*=s,n>=d.width&&(e=(e+r.offsetX+(n*r.x-d.width*r.x)/n)*k),p>=d.height&&(g=(g+r.offsetY+(p*r.y-d.height*r.y)/p)*h),k*=1/(n/d.width),h*=1/(p/d.height), +n=d.width,p=d.height)}var q=this.Cj()*b.scale,v=k*h/(n*q*p*q),s=Mq[this.source],q=null;if(void 0!==s&&16s.Wp.length&&(Tq(s,4,l,m),Tq(s,16,l,m));for(var l=s.Wp,m=l.length,q=l[0],t=0;ta)a=.2;var d=z.v();S(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);V(d);S(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.hb(!1);b=d.q;b.C=new R(a/2,a/2);b.D=new R(1-a/2,1-a/2);z.u(d);return b},ExternalProcess:function(a,b,c){a=z.v();S(a,.5*b,0,!0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,.5*c);V(a); S(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.hb(!1);b=a.q;b.C=new R(.25,.25);b.D=new R(.75,.75);z.u(a);return b},File:function(a,b,c){a=z.v();S(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);V(a);S(a,.75*b,0,!1);a.lineTo(.75*b,.25*c);a.lineTo(1*b,.25*c);a.hb(!1);b=a.q;b.C=new R(0,.25);b.D=qc;z.u(a);return b},Interrupt:function(a,b,c){a=z.v();S(a,1*b, .5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);S(a,1*b,.5*c,!1);a.lineTo(1*b,1*c);S(a,1*b,.5*c,!1);a.lineTo(1*b,0);b=a.q;b.C=new R(0,.25);b.D=new R(.5,.75);z.u(a);return b},InternalStorage:function(a,b,c){var d=a?a.Qc:NaN;a=a?a.Mu:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.1);var e=z.v();S(e,0,0,!0);e.lineTo(1*b,0);e.lineTo(1*b,1*c);e.lineTo(0,1*c);V(e);S(e,d*b,0,!1);e.lineTo(d*b,1*c);e.moveTo(0,a*c);e.lineTo(1*b,a*c);e.hb(!1);b=e.q;b.C=new R(d,a);b.D=qc;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*Cd;S(a,1*b,.5*c,!0);U(a,1*b,(.5+g)*c,(.5+g)*b,1*c,.5*b,1*c);U(a,(.5-g)*b,1*c,0,(.5+g)*c,0,.5*c);U(a,0,(.5-g)*c,(.5-g)*b,0,.5*b,0);U(a,(.5+g)*b,0,1*b,(.5-g)*c,1*b,.5*c);S(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.hb(!1);b=a.q;b.me=Vj;z.u(a);return b},LinedDocument:function(a,b,c){c/=.8;a=z.v();S(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);U(a,.5*b,.4*c,.5*b,1*c,0,.7*c);V(a);S(a,.1* +c){a=z.v();var d=1/Math.SQRT2,e=(1-1/Math.SQRT2)/2,g=.5*Cd;S(a,1*b,.5*c,!0);U(a,1*b,(.5+g)*c,(.5+g)*b,1*c,.5*b,1*c);U(a,(.5-g)*b,1*c,0,(.5+g)*c,0,.5*c);U(a,0,(.5-g)*c,(.5-g)*b,0,.5*b,0);U(a,(.5+g)*b,0,1*b,(.5-g)*c,1*b,.5*c);S(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.hb(!1);b=a.q;b.le=Vj;z.u(a);return b},LinedDocument:function(a,b,c){c/=.8;a=z.v();S(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);U(a,.5*b,.4*c,.5*b,1*c,0,.7*c);V(a);S(a,.1* b,0,!1);a.lineTo(.1*b,.75*c);a.hb(!1);b=a.q;b.C=new R(.1,0);b.D=new R(1,.6);z.u(a);return b},LoopLimit:function(a,b,c){a=z.v();S(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);V(a);b=a.q;b.C=new R(0,.25);b.D=qc;z.u(a);return b},SequentialData:"MagneticTape",MagneticTape:function(a,b,c){a=z.v();var d=.5*Cd;S(a,.5*b,1*c,!0);U(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);U(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);U(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);U(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 R(.15,.15);b.D=new R(.85,.8);z.u(a);return b},ManualInput:function(a,b,c){a=z.v();S(a,1*b,0,!0);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.25*c);V(a);b=a.q;b.C=new R(0,.25);b.D=qc;z.u(a);return b},MessageFromUser:function(a,b,c){a=a?a.Qc:NaN;isNaN(a)&&(a=.7);var d=z.v();S(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);V(d);b=d.q;b.C=hc;b.D=new R(a,1);z.u(d);return b}, MicroformProcessing:function(a,b,c){a=a?a.Qc:NaN;isNaN(a)&&(a=.25);var d=z.v();S(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);V(d);b=d.q;b.C=new R(0,a);b.D=new R(1,1-a);z.u(d);return b},MicroformRecording:function(a,b,c){a=z.v();S(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);V(a);b=a.q;b.C=new R(0,.25);b.D=new R(1,.75);z.u(a);return b},MultiDocument:function(a,b,c){c/=.8;a=z.v(); S(a,b,0,!0);a.lineTo(b,.5*c);U(a,.96*b,.47*c,.93*b,.45*c,.9*b,.44*c);a.lineTo(.9*b,.6*c);U(a,.86*b,.57*c,.83*b,.55*c,.8*b,.54*c);a.lineTo(.8*b,.7*c);U(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);V(a);S(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.hb(!1);b=a.q;b.C=new R(0,.25);b.D=new R(.8,.77);z.u(a);return b},MultiProcess:function(a,b,c){a=z.v(); S(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);V(a);S(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.hb(!1);b=a.q;b.C=new R(0,.2);b.D=new R(.8,1);z.u(a);return b},OfflineStorage:function(a,b,c){a=a?a.Qc:NaN;isNaN(a)&&(a=.1);var d=1-a,e=z.v();S(e,0,0,!0);e.lineTo(1* b,0);e.lineTo(.5*b,1*c);V(e);S(e,.5*a*b,a*c,!1);e.lineTo((1-.5*a)*b,a*c);e.hb(!1);b=e.q;b.C=new R(d/4+.5*a,a);b.D=new R(3*d/4+.5*a,a+.5*d);z.u(e);return b},OffPageConnector:function(a,b,c){a=z.v();S(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);V(a);b=a.q;b.C=hc;b.D=new R(.75,1);z.u(a);return b},Or:function(a,b,c){a=z.v();var d=.5*Cd;S(a,1*b,.5*c,!0);U(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);U(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);U(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);U(a, -(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,.5*c,!1);a.lineTo(0,.5*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,0);a.hb(!1);b=a.q;b.me=Vj;z.u(a);return b},PaperTape:function(a,b,c){c/=.8;a=z.v();S(a,0,.7*c,!0);a.lineTo(0,.3*c);U(a,.5*b,.6*c,.5*b,0,1*b,.3*c);a.lineTo(1*b,.7*c);U(a,.5*b,.4*c,.5*b,1*c,0,.7*c);V(a);b=a.q;b.C=new R(0,.49);b.D=new R(1,.75);z.u(a);return b},PrimitiveFromCall:function(a,b,c){var d=a?a.Qc:NaN;a=a?a.Mu:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=z.v();S(e,0,0,!0);e.lineTo(1*b,0);e.lineTo((1- +(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,.5*c,!1);a.lineTo(0,.5*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,0);a.hb(!1);b=a.q;b.le=Vj;z.u(a);return b},PaperTape:function(a,b,c){c/=.8;a=z.v();S(a,0,.7*c,!0);a.lineTo(0,.3*c);U(a,.5*b,.6*c,.5*b,0,1*b,.3*c);a.lineTo(1*b,.7*c);U(a,.5*b,.4*c,.5*b,1*c,0,.7*c);V(a);b=a.q;b.C=new R(0,.49);b.D=new R(1,.75);z.u(a);return b},PrimitiveFromCall:function(a,b,c){var d=a?a.Qc:NaN;a=a?a.Mu:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=z.v();S(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);V(e);b=e.q;b.C=new R(d,0);b.D=new R(1-a,1);z.u(e);return b},PrimitiveToCall:function(a,b,c){var d=a?a.Qc:NaN;a=a?a.Mu:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=z.v();S(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);V(e);b=e.q;b.C=new R(d,0);b.D=new R(1-a,1);z.u(e);return b},Subroutine:"Procedure",Procedure:function(a,b,c){a=a?a.Qc:NaN;isNaN(a)&&(a=.1);var d=z.v();S(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0, 1*c);V(d);S(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.hb(!1);b=d.q;b.C=new R(a,0);b.D=new R(1-a,1);z.u(d);return b},Process:function(a,b,c){a=a?a.Qc:NaN;isNaN(a)&&(a=.1);var d=z.v();S(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);V(d);S(d,a*b,0,!1);d.lineTo(a*b,1*c);d.hb(!1);b=d.q;b.C=new R(a,0);b.D=qc;z.u(d);return b},Sort:function(a,b,c){a=z.v();S(a,.5*b,0,!0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,.5*c);V(a);S(a,0,.5*c,!1);a.lineTo(1*b,.5* c);a.hb(!1);b=a.q;b.C=new R(.25,.25);b.D=new R(.75,.5);z.u(a);return b},Start:function(a,b,c){a=z.v();S(a,.25*b,0,!0);S(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);S(a,.25*b,0,!1);a.lineTo(.25*b,1*c);a.moveTo(.75*b,0);a.lineTo(.75*b,1*c);a.hb(!1);b=a.q;b.C=new R(.25,0);b.D=new R(.75,1);z.u(a);return b},Terminator:function(a,b,c){a=z.v();S(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 R(.23,0); b.D=new R(.77,1);z.u(a);return b},TransmittalTape:function(a,b,c){a=a?a.Qc:NaN;isNaN(a)&&(a=.1);var d=z.v();S(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);V(d);b=d.q;b.C=hc;b.D=new R(1,1-a);z.u(d);return b},AndGate:function(a,b,c){a=z.v();var d=.5*Cd;S(a,0,0,!0);a.lineTo(.5*b,0);U(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);U(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);a.lineTo(0,1*c);V(a);b=a.q;b.C=hc;b.D=new R(.55,1);z.u(a);return b},Buffer:function(a,b,c){a=z.v();S(a, 0,0,!0);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);V(a);b=a.q;b.C=new R(0,.25);b.D=new R(.5,.75);z.u(a);return b},Clock:function(a,b,c){a=z.v();var d=.5*Cd;S(a,1*b,.5*c,!0);U(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);U(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);U(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);U(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);S(a,1*b,.5*c,!1);a.lineTo(1*b,.5*c);S(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.hb(!1);b=a.q;b.me=Vj;z.u(a);return b},Ground:function(a,b,c){a=z.v();S(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*Cd;S(a,.8*b,.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.8*b,.5*c);S(a,1*b,.5*c,!0);U(a,1*b,(.5+d)*c,(.9+d)*b,.6*c,.9*b,.6*c);U(a,(.9-d)*b,.6*c,.8*b,(.5+d)*c,.8*b,.5*c);U(a,.8*b,(.5-d)*c,(.9-d)*b,.4* +b,.75*c);a.hb(!1);b=a.q;b.le=Vj;z.u(a);return b},Ground:function(a,b,c){a=z.v();S(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*Cd;S(a,.8*b,.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.8*b,.5*c);S(a,1*b,.5*c,!0);U(a,1*b,(.5+d)*c,(.9+d)*b,.6*c,.9*b,.6*c);U(a,(.9-d)*b,.6*c,.8*b,(.5+d)*c,.8*b,.5*c);U(a,.8*b,(.5-d)*c,(.9-d)*b,.4* c,.9*b,.4*c);U(a,(.9+d)*b,.4*c,1*b,(.5-d)*c,1*b,.5*c);b=a.q;b.C=new R(0,.25);b.D=new R(.4,.75);z.u(a);return b},NandGate:function(a,b,c){a=z.v();var d=.5*Cd,e=.4*Cd,g=.1*Cd;S(a,.8*b,.5*c,!0);U(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);U(a,(.4+d)*b,0,.8*b,(.5-e)*c,.8*b,.5*c);S(a,1*b,.5*c,!0);U(a,1*b,(.5+g)*c,(.9+g)*b,.6*c,.9*b,.6*c);U(a,(.9-g)*b,.6*c,.8*b,(.5+g)*c,.8*b,.5*c);U(a,.8*b,(.5-g)*c,(.9-g)*b,.4*c,.9*b,.4*c);U(a,(.9+g)*b,.4*c,1*b,(.5-g)*c,1*b,.5* c);b=a.q;b.C=new R(0,.05);b.D=new R(.55,.95);z.u(a);return b},NorGate:function(a,b,c){a=z.v();var d=.5,e=Cd*d,g=0,h=.5;S(a,.8*b,.5*c,!0);U(a,.7*b,(h+e)*c,(g+e)*b,(h+d)*c,0,1*c);U(a,.25*b,.75*c,.25*b,.25*c,0,0);U(a,(g+e)*b,(h-d)*c,.7*b,(h-e)*c,.8*b,.5*c);d=.1;e=.1*Cd;g=.9;h=.5;S(a,(g-d)*b,h*c,!0);U(a,(g-d)*b,(h-e)*c,(g-e)*b,(h-d)*c,g*b,(h-d)*c);U(a,(g+e)*b,(h-d)*c,(g+d)*b,(h-e)*c,(g+d)*b,h*c);U(a,(g+d)*b,(h+e)*c,(g+e)*b,(h+d)*c,g*b,(h+d)*c);U(a,(g-e)*b,(h+d)*c,(g-d)*b,(h+e)*c,(g-d)*b,h*c);b=a.q;b.C= new R(.2,.25);b.D=new R(.6,.75);z.u(a);return b},OrGate:function(a,b,c){a=z.v();var d=.5*Cd;S(a,0,0,!0);U(a,(0+d+d)*b,0*c,.8*b,(.5-d)*c,1*b,.5*c);U(a,.8*b,(.5+d)*c,(0+d+d)*b,1*c,0,1*c);U(a,.25*b,.75*c,.25*b,.25*c,0,0);V(a);b=a.q;b.C=new R(.2,.25);b.D=new R(.75,.75);z.u(a);return b},XnorGate:function(a,b,c){a=z.v();var d=.5,e=Cd*d,g=.2,h=.5;S(a,.1*b,0,!1);U(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);S(a,.8*b,.5*c,!0);U(a,.7*b,(h+e)*c,(g+e)*b,(h+d)*c,.2*b,1*c);U(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);U(a,(g+e)* b,(h-d)*c,.7*b,(h-e)*c,.8*b,.5*c);d=.1;e=.1*Cd;g=.9;h=.5;S(a,(g-d)*b,h*c,!0);U(a,(g-d)*b,(h-e)*c,(g-e)*b,(h-d)*c,g*b,(h-d)*c);U(a,(g+e)*b,(h-d)*c,(g+d)*b,(h-e)*c,(g+d)*b,h*c);U(a,(g+d)*b,(h+e)*c,(g+e)*b,(h+d)*c,g*b,(h+d)*c);U(a,(g-e)*b,(h+d)*c,(g-d)*b,(h+e)*c,(g-d)*b,h*c);b=a.q;b.C=new R(.4,.25);b.D=new R(.65,.75);z.u(a);return b},XorGate:function(a,b,c){a=z.v();var d=.5*Cd;S(a,.1*b,0,!1);U(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);S(a,.2*b,0,!0);U(a,(.2+d)*b,0*c,.9*b,(.5-d)*c,1*b,.5*c);U(a,.9*b,(.5+d)* c,(.2+d)*b,1*c,.2*b,1*c);U(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);V(a);b=a.q;b.C=new R(.4,.25);b.D=new R(.8,.75);z.u(a);return b},Capacitor:function(a,b,c){a=z.v();S(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();S(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*Cd,e=.1;S(a,(e-.5* d)*b,c,!1);U(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.3;U(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);U(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.5;U(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);U(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.7;U(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);U(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.9;U(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*Cd;S(a,0*b,.5*c,!1);U(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);U(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);U(a,1*b,(.5+d)* -c,(.5+d)*b,1*c,.5*b,1*c);U(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b,.5*c);a.moveTo(.1*b,.5*c);U(a,.5*b,0*c,.5*b,1*c,.9*b,.5*c);b=a.q;b.me=Vj;z.u(a);return b},DCvoltageSource:function(a,b,c){a=z.v();S(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();S(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 R(0,.25);b.D=new R(.5,.75);z.u(a);return b},Wifi:function(a,b,c){var d=b,e=c; +c,(.5+d)*b,1*c,.5*b,1*c);U(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b,.5*c);a.moveTo(.1*b,.5*c);U(a,.5*b,0*c,.5*b,1*c,.9*b,.5*c);b=a.q;b.le=Vj;z.u(a);return b},DCvoltageSource:function(a,b,c){a=z.v();S(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();S(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 R(0,.25);b.D=new R(.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*Cd,h=.8,k=0,l=.5,d=(d-b)/2,e=(e-c)/2;S(a,k*b+d,(l+h)*c+e,!0);U(a,(k-g)*b+d,(l+h)*c+e,(k-h)*b+d,(l+g)*c+e,(k-h)*b+d,l*c+e);U(a,(k-h)*b+d,(l-g)*c+e,(k-g)*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);U(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);U(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);V(a);g=.4*Cd;h=.4;k=.2;l=.5;S(a,k*b+d,(l+h)*c+e,!0);U(a,(k-g)*b+d,(l+h)*c+e,(k-h)*b+d,(l+g)*c+e,(k-h)*b+d,l*c+e);U(a,(k-h)*b+d,(l-g)*c+e,(k-g)*b+d,(l-h)*c+e,k* b+d,(l-h)*c+e);U(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);U(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);V(a);g=.2*Cd;h=.2;l=k=.5;S(a,(k-h)*b+d,l*c+e,!0);U(a,(k-h)*b+d,(l-g)*c+e,(k-g)*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);U(a,(k+g)*b+d,(l-h)*c+e,(k+h)*b+d,(l-g)*c+e,(k+h)*b+d,l*c+e);U(a,(k+h)*b+d,(l+g)*c+e,(k+g)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);U(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*Cd;h=.4;k=.8;l=.5;S(a,k*b+d,(l-h)*c+e,!0);U(a,(k+g)*b+d,(l- h)*c+e,(k+h)*b+d,(l-g)*c+e,(k+h)*b+d,l*c+e);U(a,(k+h)*b+d,(l+g)*c+e,(k+g)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);U(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);U(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);V(a);g=.8*Cd;h=.8;k=1;l=.5;S(a,k*b+d,(l-h)*c+e,!0);U(a,(k+g)*b+d,(l-h)*c+e,(k+h)*b+d,(l-g)*c+e,(k+h)*b+d,l*c+e);U(a,(k+h)*b+d,(l+g)*c+e,(k+g)*b+d,(l+h)*c+e,k*b+d,(l+h)*c+e);U(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);U(a,(k+h-.5*g)*b+d,(l-g)*c+ @@ -1521,7 +1522,7 @@ e,k*b+d,(l-h)*c+e,k*b+d,(l-h)*c+e);V(a);b=a.q;z.u(a);return b},Email:function(a, a.lineTo(.4*b,.6*c);a.lineTo(.1*b,.6*c);a.lineTo(.1*b,1*c);V(a);S(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);V(a);S(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.hb(!1);b=a.q;z.u(a);return b},Power:function(a,b,c){a=z.v();var d=.4*Cd,e=.4,g=z.P(),h=z.P(),k=z.P(),l=z.P();ze(.5,.5-e,.5+d,.5-e,.5+e,.5-d,.5+e,.5,.5,g,g,h,k,l);var m=z.Fb(h.x, h.y);S(a,h.x*b,h.y*c,!0);U(a,k.x*b,k.y*c,l.x*b,l.y*c,(.5+e)*b,.5*c);U(a,(.5+e)*b,(.5+d)*c,(.5+d)*b,(.5+e)*c,.5*b,(.5+e)*c);U(a,(.5-d)*b,(.5+e)*c,(.5-e)*b,(.5+d)*c,(.5-e)*b,.5*c);ze(.5-e,.5,.5-e,.5-d,.5-d,.5-e,.5,.5-e,.5,k,l,h,g,g);U(a,k.x*b,k.y*c,l.x*b,l.y*c,h.x*b,h.y*c);d=.3*Cd;e=.3;ze(.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);U(a,l.x*b,l.y*c,k.x*b,k.y*c,(.5-e)*b,.5*c);U(a,(.5-e)*b,(.5+d)*c,(.5-d)*b,(.5+e)*c,.5*b,(.5+e)*c);U(a,(.5+d)*b,(.5+e)*c,(.5+e)*b,(.5+d)*c,(.5+ e)*b,.5*c);ze(.5,.5-e,.5+d,.5-e,.5+e,.5-d,.5+e,.5,.5,g,g,h,k,l);U(a,l.x*b,l.y*c,k.x*b,k.y*c,h.x*b,h.y*c);V(a);S(a,.45*b,0,!0);a.lineTo(.45*b,.5*c);a.lineTo(.55*b,.5*c);a.lineTo(.55*b,0);V(a);z.A(g);z.A(h);z.A(k);z.A(l);z.A(m);b=a.q;b.C=new R(.25,.55);b.D=new R(.75,.8);z.u(a);return b},Fallout:function(a,b,c){a=z.v();var d=.5*Cd;S(a,0*b,.5*c,!0);U(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);U(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);U(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);U(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b, -.5*c);var e=d=0;S(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;V(a);S(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;V(a);S(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);V(a);b=a.q;b.me=Vj;z.u(a);return b},IrritationHazard:function(a,b,c){a=z.v();S(a,.2*b,0*c,!0);a.lineTo(.5*b,.3*c);a.lineTo(.8* +.5*c);var e=d=0;S(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;V(a);S(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;V(a);S(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);V(a);b=a.q;b.le=Vj;z.u(a);return b},IrritationHazard:function(a,b,c){a=z.v();S(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);V(a);b=a.q;b.C=new R(.3,.3);b.D=new R(.7,.7);z.u(a);return b},ElectricalHazard:function(a,b,c){a=z.v();S(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);V(a);b=a.q;z.u(a);return b},FireHazard:function(a,b,c){a=z.v();S(a,.1*b,1*c,!0);U(a,-.25*b,.63*c,.45*b,.44*c,.29*b,0*c);U(a,.48*b,.17*c,.54*b,.35*c,.51*b,.42*c);U(a,.59*b,.29*c,.58*b,.28*c,.59*b,.18*c);U(a,.8*b,.34*c,.88*b,.43*c,.75*b,.6*c);U(a,.87*b,.48*c,.88*b,.43*c,.88*b,.31*c);U(a,1.17*b,.76*c,.82*b,.8*c,.9*b,1*c);V(a);b=a.q;b.C=new R(.05,.645);b.D=new R(.884,.908);z.u(a);return b},BpmnActivityLoop:function(a,b,c){a=z.v();var d=4*(Math.SQRT2-1)/3*.5;S(a,.65*b,1*c, !1);U(a,(1-d+0)*b,1*c,1*b,(.5+d+0)*c,1*b,.5*c);U(a,1*b,(.5-d+0)*c,(.5+d+0)*b,0*c,.5*b,0*c);U(a,(.5-d+0)*b,0*c,0*b,(.5-d+0)*c,0*b,.5*c);U(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();S(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();S(a,0,0,!1);a.lineTo(1* @@ -1530,7 +1531,7 @@ b,c){a=z.v();S(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=z.v();S(a,0,0,!1);S(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);U(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);U(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;U(a,(.5-(e+d)/2)*b,(d+(d+g)/2)*c,(.5-d)*b,(d+g)*c,(.5-d)*b,d*c);U(a,(.5-d)*b,(d-g)*c,(.5-e)*b,(d-d)*c,.5*b,(d-d)*c); U(a,(.5+e)*b,(d-d)*c,(.5+d)*b,(d-g)*c,(.5+d)*b,d*c);U(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);S(a,.2*b,1*c,!1);a.lineTo(.2*b,.8*c);S(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();S(a,.1*b,0,!0);a.lineTo(.9*b,0);a.lineTo(.9*b,1*c);a.lineTo(.1*b,1*c);V(a);S(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.hb(!1);b=a.q;z.u(a);return b},BpmnEventError:function(a,b,c){a=z.v();S(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);V(a);b=a.q;z.u(a);return b},BpmnEventEscalation:function(a,b,c){a=z.v();S(a,0,0,!1);S(a,1*b,1*c,!1);S(a,.1*b,1*c,!0);a.lineTo(.5*b,0);a.lineTo(.9*b,1*c);a.lineTo(.5*b,.5*c);V(a);b=a.q;z.u(a);return b},BpmnEventTimer:function(a,b,c){a= -z.v();var d=.5*Cd;S(a,1*b,.5*c,!0);U(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);U(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);U(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);U(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);S(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.hb(!1);b=a.q;b.me=Vj;z.u(a);return b}},Yq;for(Yq in iq)iq[Yq.toLowerCase()]=Yq; +z.v();var d=.5*Cd;S(a,1*b,.5*c,!0);U(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);U(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);U(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);U(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);S(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.hb(!1);b=a.q;b.le=Vj;z.u(a);return b}},Yq;for(Yq in iq)iq[Yq.toLowerCase()]=Yq; var pq={"":"",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", @@ -1541,182 +1542,182 @@ TriangleLine:"F1 m 8,4 l -8,-4 0,8 8,-4 z m 0.5,4 l 0,-8",CircleEndedArrow:"F1 m 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 mq(a){var b=ne[a];if(void 0===b){var c=a.toLowerCase();if("none"===c)return"None";b=ne[c];if(void 0===b){var d=null,e;for(e in pq)if(e.toLowerCase()===c){d=e;break}if(null!==d)return a=of(pq[d],!1),ne[d]=a,c!==d&&(ne[c]=d),d}}return"string"===typeof b?b:b instanceof Ve?a:null} -function D(a){0===arguments.length?I.call(this):I.call(this,a);this.S=2408959;this.El=this.Ni="";this.ct=this.$s=this.jt=this.ns=null;this.lt="";this.lh=this.as=this.kt=this.rn=null;this.bt="";this.Dp=null;this.at=ie;this.dt="";this.Fp=null;this.Vd="";this.fw=this.qr=this.ql=null;this.fj=(new M(NaN,NaN)).freeze();this.ss="";this.Hl=null;this.ts=hc;this.Bs=Qd;this.us=Rd;this.Jr=null;this.os=Zq;this.tn=Pd;this.sn="gray";this.Lg=4;this.nD=-1;this.Kt=NaN;this.kH=new w;this.Jl=null;this.rk=NaN} -z.Ta(D,I);z.ka("Part",D);D.prototype.cloneProtected=function(a){I.prototype.cloneProtected.call(this,a);a.S=this.S&-4097|49152;a.Ni=this.Ni;a.El=this.El;a.ns=this.ns;a.jt=this.jt;a.$s=this.$s;a.ct=this.ct;a.lt=this.lt;a.kt=this.kt;a.as=this.as;a.lh=null;a.bt=this.bt;a.at=this.at.V();a.dt=this.dt;a.Vd=this.Vd;a.qr=this.qr;a.fj.assign(this.fj);a.ss=this.ss;a.ts=this.ts.V();a.Bs=this.Bs.V();a.us=this.us.V();a.Jr=this.Jr;a.os=this.os;a.tn=this.tn.V();a.sn=this.sn;a.Lg=this.Lg;a.Kt=this.Kt}; -D.prototype.Bi=function(a){I.prototype.Bi.call(this,a);a.pm();a.rn=null;a.Dp=null;a.Fp=null;a.Hl=null;a.Jl=null};D.prototype.toString=function(){var a=z.uf(Object.getPrototypeOf(this))+"#"+z.Hd(this);null!==this.data&&(a+="("+ka(this.data)+")");return a};D.LayoutNone=0;var Lm;D.LayoutAdded=Lm=1;var Um;D.LayoutRemoved=Um=2;D.LayoutShown=4;D.LayoutHidden=8;D.LayoutNodeSized=16;var An;D.LayoutGroupLayout=An=32;D.LayoutNodeReplaced=64;var Zq;D.LayoutStandard=Zq=Lm|Um|28|An|64;D.LayoutAll=16777215; -D.prototype.mo=function(a,b,c,d,e,g,h){var k=this.g;null!==k&&(a===sg&&"elements"===b?e instanceof I?Mm(e,function(a){Om(k,a);Nm(k,a)}):e instanceof Cl&&mn(k,e):a===tg&&"elements"===b&&(e instanceof I?Mm(e,function(a){Sm(k,a);Rm(k,a)}):e instanceof Cl&&nn(k,e)),k.ld(a,b,c,d,e,g,h))};D.prototype.updateTargetBindings=D.prototype.Nb=function(a){I.prototype.Nb.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.AJ)){this.S^=4096;var d=!1;if(null!==c){d=c.Eb;c.Eb=!0;var e=c.selection;e.Za();a?e.add(this):e.remove(this);e.freeze()}this.i("isSelected",b,a);this.qe();a=this.iK;null!==a&&a(this);null!==c&&(c.Te(),c.Eb=d)}}}); +z.defineProperty(D,{BG:"selectionAdorned"},function(){return 0!==(this.S&32)},function(a){var b=0!==(this.S&32);b!==a&&(u&&z.h(a,"boolean",D,"selectionAdorned"),this.S^=32,this.i("selectionAdorned",b,a),this.pe())});z.defineProperty(D,{Qx:"isInDocumentBounds"},function(){return 0!==(this.S&64)},function(a){var b=0!==(this.S&64);if(b!==a){u&&z.h(a,"boolean",D,"isInDocumentBounds");this.S^=64;var c=this.g;null!==c&&c.Bc();this.i("isInDocumentBounds",b,a)}}); +z.defineProperty(D,{TA:"isLayoutPositioned"},function(){return 0!==(this.S&128)},function(a){var b=0!==(this.S&128);b!==a&&(u&&z.h(a,"boolean",D,"isLayoutPositioned"),this.S^=128,this.i("isLayoutPositioned",b,a),this.N(a?4:8))});z.defineProperty(D,{Zk:"selectable"},function(){return 0!==(this.S&256)},function(a){var b=0!==(this.S&256);b!==a&&(u&&z.h(a,"boolean",D,"selectable"),this.S^=256,this.i("selectable",b,a),this.pe())}); +z.defineProperty(D,{oG:"reshapable"},function(){return 0!==(this.S&512)},function(a){var b=0!==(this.S&512);b!==a&&(u&&z.h(a,"boolean",D,"reshapable"),this.S^=512,this.i("reshapable",b,a),this.pe())});z.defineProperty(D,{pG:"resizable"},function(){return 0!==(this.S&1024)},function(a){var b=0!==(this.S&1024);b!==a&&(u&&z.h(a,"boolean",D,"resizable"),this.S^=1024,this.i("resizable",b,a),this.pe())}); +z.defineProperty(D,{uG:"rotatable"},function(){return 0!==(this.S&2048)},function(a){var b=0!==(this.S&2048);b!==a&&(u&&z.h(a,"boolean",D,"rotatable"),this.S^=2048,this.i("rotatable",b,a),this.pe())}); +z.defineProperty(D,{gb:"isSelected"},function(){return 0!==(this.S&4096)},function(a){var b=0!==(this.S&4096);if(b!==a){u&&z.h(a,"boolean",D,"isSelected");var c=this.g;if(!a||this.canSelect()&&!(null!==c&&c.selection.count>=c.AJ)){this.S^=4096;var d=!1;if(null!==c){d=c.Eb;c.Eb=!0;var e=c.selection;e.Za();a?e.add(this):e.remove(this);e.freeze()}this.i("isSelected",b,a);this.pe();a=this.iK;null!==a&&a(this);null!==c&&(c.Te(),c.Eb=d)}}}); z.defineProperty(D,{Wg:"isHighlighted"},function(){return 0!==(this.S&524288)},function(a){var b=0!==(this.S&524288);if(b!==a){u&&z.h(a,"boolean",D,"isHighlighted");this.S^=524288;var c=this.g;null!==c&&(c=c.om,c.Za(),a?c.add(this):c.remove(this),c.freeze());this.i("isHighlighted",b,a);this.ra();a=this.VI;null!==a&&a(this)}}); z.defineProperty(D,{Vk:"isShadowed"},function(){return 0!==(this.S&8192)},function(a){var b=0!==(this.S&8192);b!==a&&(u&&z.h(a,"boolean",D,"isShadowed"),this.S^=8192,this.i("isShadowed",b,a),this.ra())});function Em(a){return 0!==(a.S&32768)}function ar(a,b){a.S=b?a.S|32768:a.S&-32769}function Ho(a,b){a.S=b?a.S|65536:a.S&-65537}function ol(a){return 0!==(a.S&131072)}D.prototype.Mf=function(a){this.S=a?this.S|131072:this.S&-131073};function jr(a,b){a.S=b?a.S|1048576:a.S&-1048577} z.defineProperty(D,{CF:"isAnimated"},function(){return 0!==(this.S&262144)},function(a){var b=0!==(this.S&262144);b!==a&&(u&&z.h(a,"boolean",D,"isAnimated"),this.S^=262144,this.i("isAnimated",b,a))});z.defineProperty(D,{VI:"highlightedChanged"},function(){return this.as},function(a){var b=this.as;b!==a&&(null!==a&&z.h(a,"function",D,"highlightedChanged"),this.as=a,this.i("highlightedChanged",b,a))}); z.defineProperty(D,{vy:"selectionObjectName"},function(){return this.lt},function(a){var b=this.lt;b!==a&&(u&&z.h(a,"string",D,"selectionObjectName"),this.lt=a,this.rn=null,this.i("selectionObjectName",b,a))});z.defineProperty(D,{hK:"selectionAdornmentTemplate"},function(){return this.jt},function(a){var b=this.jt;b!==a&&(u&&z.l(a,ea,D,"selectionAdornmentTemplate"),this instanceof H&&(a.type=kj),this.jt=a,this.i("selectionAdornmentTemplate",b,a))}); -z.w(D,{oo:"selectionObject"},function(){if(null===this.rn){var a=this.vy;null!==a&&""!==a?(a=this.Gd(a),this.rn=null!==a?a:this):this instanceof H?(a=this.path,this.rn=null!==a?a:this):this.rn=this}return this.rn});z.defineProperty(D,{iK:"selectionChanged"},function(){return this.kt},function(a){var b=this.kt;b!==a&&(null!==a&&z.h(a,"function",D,"selectionChanged"),this.kt=a,this.i("selectionChanged",b,a))}); -z.defineProperty(D,{qG:"resizeAdornmentTemplate"},function(){return this.$s},function(a){var b=this.$s;b!==a&&(u&&z.l(a,ea,D,"resizeAdornmentTemplate"),this.$s=a,this.i("resizeAdornmentTemplate",b,a))});z.defineProperty(D,{sG:"resizeObjectName"},function(){return this.bt},function(a){var b=this.bt;b!==a&&(u&&z.h(a,"string",D,"resizeObjectName"),this.bt=a,this.Dp=null,this.i("resizeObjectName",b,a))}); -z.w(D,{rG:"resizeObject"},function(){if(null===this.Dp){var a=this.sG;null!==a&&""!==a?(a=this.Gd(a),this.Dp=null!==a?a:this):this.Dp=this}return this.Dp});z.defineProperty(D,{$J:"resizeCellSize"},function(){return this.at},function(a){var b=this.at;b.O(a)||(u&&z.l(a,Fa,D,"resizeCellSize"),this.at=a=a.V(),this.i("resizeCellSize",b,a))}); -z.defineProperty(D,{bK:"rotateAdornmentTemplate"},function(){return this.ct},function(a){var b=this.ct;b!==a&&(u&&z.l(a,ea,D,"rotateAdornmentTemplate"),this.ct=a,this.i("rotateAdornmentTemplate",b,a))});z.defineProperty(D,{cK:"rotateObjectName"},function(){return this.dt},function(a){var b=this.dt;b!==a&&(u&&z.h(a,"string",D,"rotateObjectName"),this.dt=a,this.Fp=null,this.i("rotateObjectName",b,a))}); -z.w(D,{vG:"rotateObject"},function(){if(null===this.Fp){var a=this.cK;null!==a&&""!==a?(a=this.Gd(a),this.Fp=null!==a?a:this):this.Fp=this}return this.Fp});z.defineProperty(D,{text:"text"},function(){return this.Vd},function(a){var b=this.Vd;b!==a&&(u&&z.h(a,"string",D,"text"),this.Vd=a,this.i("text",b,a))}); -z.defineProperty(D,{Qa:"containingGroup"},function(){return this.ql},function(a){if(this.re()){var b=this.ql;if(b!==a){u&&null!==a&&z.l(a,F,D,"containingGroup");null===a||this!==a&&!a.Ei(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.N(Um);var c=this.g;null!==b?kr(b,this):this instanceof F&&null!==c&&c.Pl.remove(this);this.ql=a;null!==a?lr(a,this):this instanceof +z.w(D,{no:"selectionObject"},function(){if(null===this.rn){var a=this.vy;null!==a&&""!==a?(a=this.Gd(a),this.rn=null!==a?a:this):this instanceof H?(a=this.path,this.rn=null!==a?a:this):this.rn=this}return this.rn});z.defineProperty(D,{iK:"selectionChanged"},function(){return this.kt},function(a){var b=this.kt;b!==a&&(null!==a&&z.h(a,"function",D,"selectionChanged"),this.kt=a,this.i("selectionChanged",b,a))}); +z.defineProperty(D,{qG:"resizeAdornmentTemplate"},function(){return this.$s},function(a){var b=this.$s;b!==a&&(u&&z.l(a,ea,D,"resizeAdornmentTemplate"),this.$s=a,this.i("resizeAdornmentTemplate",b,a))});z.defineProperty(D,{sG:"resizeObjectName"},function(){return this.bt},function(a){var b=this.bt;b!==a&&(u&&z.h(a,"string",D,"resizeObjectName"),this.bt=a,this.Cp=null,this.i("resizeObjectName",b,a))}); +z.w(D,{rG:"resizeObject"},function(){if(null===this.Cp){var a=this.sG;null!==a&&""!==a?(a=this.Gd(a),this.Cp=null!==a?a:this):this.Cp=this}return this.Cp});z.defineProperty(D,{$J:"resizeCellSize"},function(){return this.at},function(a){var b=this.at;b.O(a)||(u&&z.l(a,Fa,D,"resizeCellSize"),this.at=a=a.V(),this.i("resizeCellSize",b,a))}); +z.defineProperty(D,{bK:"rotateAdornmentTemplate"},function(){return this.ct},function(a){var b=this.ct;b!==a&&(u&&z.l(a,ea,D,"rotateAdornmentTemplate"),this.ct=a,this.i("rotateAdornmentTemplate",b,a))});z.defineProperty(D,{cK:"rotateObjectName"},function(){return this.dt},function(a){var b=this.dt;b!==a&&(u&&z.h(a,"string",D,"rotateObjectName"),this.dt=a,this.Ep=null,this.i("rotateObjectName",b,a))}); +z.w(D,{vG:"rotateObject"},function(){if(null===this.Ep){var a=this.cK;null!==a&&""!==a?(a=this.Gd(a),this.Ep=null!==a?a:this):this.Ep=this}return this.Ep});z.defineProperty(D,{text:"text"},function(){return this.Ud},function(a){var b=this.Ud;b!==a&&(u&&z.h(a,"string",D,"text"),this.Ud=a,this.i("text",b,a))}); +z.defineProperty(D,{Qa:"containingGroup"},function(){return this.ql},function(a){if(this.qe()){var b=this.ql;if(b!==a){u&&null!==a&&z.l(a,F,D,"containingGroup");null===a||this!==a&&!a.Ei(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.N(Um);var c=this.g;null!==b?kr(b,this):this instanceof F&&null!==c&&c.Pl.remove(this);this.ql=a;null!==a?lr(a,this):this instanceof F&&null!==c&&c.Pl.add(this);this.N(Lm);if(null!==c){var d=this.data,e=c.ia;null!==d&&e instanceof X&&e.zB(d,e.Cb(null!==a?a.data:null))}d=this.IE;null!==d&&(e=!0,null!==c&&(e=c.ab,c.ab=!0),d(this,b,a),null!==c&&(c.ab=e));if(this instanceof F)for(c=new K(D),Lh(c,this,!0,0,!0),c=c.j;c.next();)if(d=c.value,d instanceof E)for(d=d.Jd;d.next();)pn(d.value);if(this instanceof E)for(d=this.Jd;d.next();)pn(d.value);this.i("containingGroup",b,a);null!==a&&(b=a.layer,null!==b&&tl(b,-1,a))}}else z.k("cannot set the Part.containingGroup of a Link or Adornment")}); f=D.prototype;f.pm=function(){var a=this.Qa;null!==a&&(a.K(),null!==a.Qb&&a.Qb.K(),a.gg())};f.ra=function(){var a=this.g;null!==a&&!Dm(this)&&!Em(this)&&this.isVisible()&&this.ac.F()&&a.ra(sl(this,this.ac))};f.K=function(){I.prototype.K.call(this);var a=this.g;null!==a&&(a.Cg.add(this),this instanceof E&&null!==this.Cc&&Ro(this.Cc),a.Te(!0))};f.ou=function(a){a||(a=this.ql,null!==a&&lr(a,this))};f.pu=function(a){a||(a=this.ql,null!==a&&kr(a,this))}; f.Mn=function(){var a=this.data;if(null!==a){var b=this.g;null!==b&&(b=b.ia,null!==b&&b.qy(a))}};z.defineProperty(D,{IE:"containingGroupChanged"},function(){return this.qr},function(a){var b=this.qr;b!==a&&(null!==a&&z.h(a,"function",D,"containingGroupChanged"),this.qr=a,this.i("containingGroupChanged",b,a))});D.prototype.findSubGraphLevel=function(){return mr(this,this)};function mr(a,b){var c=b.Qa;return null!==c?1+mr(a,c):b instanceof E&&(c=b.Cc,null!==c)?mr(a,c):0} -D.prototype.findTopLevelPart=function(){return nr(this,this)};function nr(a,b){var c=b.Qa;return null!==c?nr(a,c):b instanceof E&&(c=b.Cc,null!==c)?nr(a,c):b}z.w(D,{wq:"isTopLevel"},function(){return null!==this.Qa||this instanceof E&&this.xf?!1:!0});D.prototype.isMemberOf=D.prototype.Ei=function(a){return a instanceof F?or(this,this,a):!1};function or(a,b,c){if(b===c||null===c)return!1;var d=b.Qa;return null===d||d!==c&&!or(a,d,c)?b instanceof E&&(b=b.Cc,null!==b)?or(a,b,c):!1:!0} +D.prototype.findTopLevelPart=function(){return nr(this,this)};function nr(a,b){var c=b.Qa;return null!==c?nr(a,c):b instanceof E&&(c=b.Cc,null!==c)?nr(a,c):b}z.w(D,{vq:"isTopLevel"},function(){return null!==this.Qa||this instanceof E&&this.xf?!1:!0});D.prototype.isMemberOf=D.prototype.Ei=function(a){return a instanceof F?or(this,this,a):!1};function or(a,b,c){if(b===c||null===c)return!1;var d=b.Qa;return null===d||d!==c&&!or(a,d,c)?b instanceof E&&(b=b.Cc,null!==b)?or(a,b,c):!1:!0} D.prototype.findCommonContainingGroup=D.prototype.BI=function(a){if(null===a)return null;u&&z.l(a,D,D,"findCommonContainingGroup:other");if(this===a)return this.Qa;for(var b=this;null!==b;)b instanceof F&&jr(b,!0),b=b.Qa;for(var c=null,b=a;null!==b;){if(0!==(b.S&1048576)){c=b;break}b=b.Qa}for(b=this;null!==b;)b instanceof F&&jr(b,!1),b=b.Qa;return c}; z.defineProperty(D,{pJ:"layoutConditions"},function(){return this.os},function(a){var b=this.os;b!==a&&(u&&z.h(a,"number",D,"layoutConditions"),this.os=a,this.i("layoutConditions",b,a))});D.prototype.canLayout=function(){if(!this.TA||!this.isVisible())return!1;var a=this.layer;return null!==a&&a.Wc||this instanceof E&&this.xf?!1:!0}; D.prototype.invalidateLayout=D.prototype.N=function(a){void 0===a&&(a=16777215);var b;this.TA&&0!==(a&this.pJ)?(b=this.layer,null!==b&&b.Wc||this instanceof E&&this.xf?b=!1:(b=this.g,b=null!==b&&b.sa.lb?!1:!0)):b=!1;if(b)if(b=this.ql,null!==b){var c=b.Wb;null!==c?c.N():b.N(a)}else a=this.g,null!==a&&(c=a.Wb,null!==c&&c.N())};function Qm(a){if(!a.isVisible())return!1;a=a.layer;return null!==a&&a.Wc?!1:!0} z.defineProperty(D,{VE:"dragComputation"},function(){return this.Jr},function(a){var b=this.Jr;b!==a&&(null!==a&&z.h(a,"function",D,"dragComputation"),this.Jr=a,this.i("dragComputation",b,a))});z.defineProperty(D,{mK:"shadowOffset"},function(){return this.tn},function(a){var b=this.tn;b.O(a)||(u&&z.l(a,M,D,"shadowOffset"),this.tn=a=a.V(),this.ra(),this.i("shadowOffset",b,a))}); z.defineProperty(D,{shadowColor:"shadowColor"},function(){return this.sn},function(a){var b=this.sn;b!==a&&(u&&z.h(a,"string",D,"shadowColor"),this.sn=a,this.ra(),this.i("shadowColor",b,a))});z.defineProperty(D,{shadowBlur:"shadowBlur"},function(){return this.Lg},function(a){var b=this.Lg;b!==a&&(u&&z.h(a,"number",D,"shadowBlur"),this.Lg=a,this.ra(),this.i("shadowBlur",b,a))}); -function ea(a){0===arguments.length?D.call(this,Yj):D.call(this,a);this.S&=-257;this.El="Adornment";this.Qb=this.oh=this.Rc=null}z.Ta(ea,D);z.ka("Adornment",ea);ea.prototype.toString=function(){var a=this.$f;return"Adornment("+this.sc+")"+(null!==a?a.toString():"")};ea.prototype.updateRelationshipsFromData=function(){}; +function ea(a){0===arguments.length?D.call(this,Yj):D.call(this,a);this.S&=-257;this.El="Adornment";this.Qb=this.oh=this.Rc=null}z.Ta(ea,D);z.ka("Adornment",ea);ea.prototype.toString=function(){var a=this.$f;return"Adornment("+this.rc+")"+(null!==a?a.toString():"")};ea.prototype.updateRelationshipsFromData=function(){}; ea.prototype.fo=function(a){var b=this.Ab.ba,c=this.Ab;if(b instanceof H&&c instanceof Y){var d=b.path,c=d.Ff;b.fo(a);c=d.Ff;a=this.va.o;b=a.length;for(d=0;da&&(a=1);var b=this.g;if(null!==b&&!b.Nh){b.Nh=!0;var c=new K(E);c.add(this);Ar(this,c,b.be,a,b.Ya,this,b.OB===zl);b.Nh=!1}}; +E.prototype.findTreeParentLink=E.prototype.Pn=function(){var a=!0,b=this.g;null!==b&&(a=b.ae);b=this.xc.j;if(a)for(;b.next();){if(a=b.value,a.Xc&&a.aa!==this)return a}else for(;b.next();)if(a=b.value,a.Xc&&a.ea!==this)return a;return null}; +E.prototype.findTreeParentNode=E.prototype.km=function(){var a=this.Fk;if(null===a)return null;if(a instanceof E)return a;var b=!0,a=this.g;null!==a&&(b=a.ae);a=this.xc.j;if(b)for(;a.next();){if(b=a.value,b.Xc&&(b=b.aa,b!==this))return this.Fk=b}else for(;a.next();)if(b=a.value,b.Xc&&(b=b.ea,b!==this))return this.Fk=b;return this.Fk=null};E.prototype.findTreeParentChain=function(){function a(b,d){if(null!==b){d.add(b);var e=b.Pn();null!==e&&(d.add(e),a(b.km(),d))}}var b=new K(D);a(this,b);return b}; +E.prototype.findTreeLevel=function(){return zr(this,this)};function zr(a,b){var c=b.km();return null===c?0:1+zr(a,c)}E.prototype.findTreeChildrenLinks=E.prototype.Fx=function(){var a=!0,b=this.g;null!==b&&(a=b.ae);var b=new Va(this.xc),c=this;b.Gq=a?function(a){return a.Xc&&a.aa===c?!0:!1}:function(a){return a.Xc&&a.ea===c?!0:!1};return b}; +E.prototype.findTreeChildrenNodes=E.prototype.iF=function(){var a=!0,b=this.g;null!==b&&(a=b.ae);var c=b=null,d=this.xc.j;if(a)for(;d.next();)a=d.value,a.Xc&&a.aa===this&&(a=a.ea,null!==b?b.add(a):null!==c&&c!==a?(b=new J(E),b.add(c),b.add(a)):c=a);else for(;d.next();)a=d.value,a.Xc&&a.ea===this&&(a=a.aa,null!==b?b.add(a):null!==c&&c!==a?(b=new J(E),b.add(c),b.add(a)):c=a);return null!==b?b.j:null!==c?new Qa(c):Na}; +E.prototype.findTreeParts=function(a){void 0===a&&(a=Infinity);z.h(a,"number",E,"findTreeParts:level");var b=new K(D);Lh(b,this,!1,a,!0);return b};E.prototype.collapseTree=E.prototype.collapseTree=function(a){void 0===a&&(a=1);z.p(a,E,"collapseTree:level");1>a&&(a=1);var b=this.g;if(null!==b&&!b.Nh){b.Nh=!0;var c=new K(E);c.add(this);Ar(this,c,b.ae,a,b.Ya,this,b.OB===zl);b.Nh=!1}}; function Ar(a,b,c,d,e,g,h){if(1a&&(a=2);var b=this.g;if(null!==b&&!b.Nh){b.Nh=!0;var c=new K(E);c.add(this);Cr(this,c,b.be,a,b.Ya,this,b.OB===zl);b.Nh=!1}};function Cr(a,b,c,d,e,g,h){for(var k=g===a?!1:a.ud,l=c?a.Dx():a.Ug();l.next();){var m=l.value;m.Xc&&(k||m.kh||m.gc(),m=m.JA(a),null!==m&&m!==a&&!b.contains(m)&&(b.add(m),k||(m.Kd(!0),m.pm(),h&&kl(e,m,g)),2a&&(a=2);var b=this.g;if(null!==b&&!b.Nh){b.Nh=!0;var c=new K(E);c.add(this);Cr(this,c,b.ae,a,b.Ya,this,b.OB===zl);b.Nh=!1}};function Cr(a,b,c,d,e,g,h){for(var k=g===a?!1:a.ud,l=c?a.Dx():a.Ug();l.next();){var m=l.value;m.Xc&&(k||m.kh||m.gc(),m=m.JA(a),null!==m&&m!==a&&!b.contains(m)&&(b.add(m),k||(m.Kd(!0),m.pm(),h&&kl(e,m,g)),2a&&(a-=180);break;case Qp:a=Re(c+90);90a&&(a-=180);break;case Sp:a=Re(c-90);90a&&(a-=180);break;case Tp:a=Re(c);if(45a||225a)return 0;90a&&(a-=180)}return Re(a)}; -z.defineProperty(H,{aa:"fromNode"},function(){return this.yg},function(a){var b=this.yg;if(b!==a){u&&null!==a&&z.l(a,E,H,"fromNode");var c=this.gd;null!==b&&(this.Og!==b&&xr(b,this,c),Ir(this),this.N(Um));this.yg=a;null!==a&&this.Kd(a.isVisible());this.Yi=null;this.gc();var d=this.g;if(null!==d){var e=this.data,g=d.ia;if(null!==e)if(g instanceof X){var h=null!==a?a.data:null;g.xB(e,g.Cb(h))}else g instanceof Cg&&(h=null!==a?a.data:null,d.be?g.Hi(e,g.Cb(h)):(null!==b&&g.Hi(b.data,void 0),g.Hi(h,g.Cb(null!== +z.defineProperty(H,{aa:"fromNode"},function(){return this.yg},function(a){var b=this.yg;if(b!==a){u&&null!==a&&z.l(a,E,H,"fromNode");var c=this.gd;null!==b&&(this.Og!==b&&xr(b,this,c),Ir(this),this.N(Um));this.yg=a;null!==a&&this.Kd(a.isVisible());this.Yi=null;this.gc();var d=this.g;if(null!==d){var e=this.data,g=d.ia;if(null!==e)if(g instanceof X){var h=null!==a?a.data:null;g.xB(e,g.Cb(h))}else g instanceof Cg&&(h=null!==a?a.data:null,d.ae?g.Hi(e,g.Cb(h)):(null!==b&&g.Hi(b.data,void 0),g.Hi(h,g.Cb(null!== this.Og?this.Og.data:null))))}e=this.gd;g=this.lF;null!==g&&(h=!0,null!==d&&(h=d.ab,d.ab=!0),g(this,c,e),null!==d&&(d.ab=h));null!==a&&(this.Og!==a&&wr(a,this,e),Jr(this),this.N(Lm));this.i("fromNode",b,a);pn(this)}}); z.defineProperty(H,{dg:"fromPortId"},function(){return this.ci},function(a){var b=this.ci;if(b!==a){u&&z.h(a,"string",H,"fromPortId");var c=this.gd;null!==c&&vr(this.aa,c);Ir(this);this.ci=a;var d=this.gd;null!==d&&vr(this.aa,d);var e=this.g;if(null!==e){var g=this.data,h=e.ia;null!==g&&h instanceof X&&h.yB(g,a)}c!==d&&(this.Yi=null,this.gc(),g=this.lF,null!==g&&(h=!0,null!==e&&(h=e.ab,e.ab=!0),g(this,c,d),null!==e&&(e.ab=h)));Jr(this);this.i("fromPortId",b,a)}}); z.w(H,{gd:"fromPort"},function(){var a=this.yg;return null===a?null:a.im(this.ci)});z.defineProperty(H,{lF:"fromPortChanged"},function(){return this.Tr},function(a){var b=this.Tr;b!==a&&(null!==a&&z.h(a,"function",H,"fromPortChanged"),this.Tr=a,this.i("fromPortChanged",b,a))}); -z.defineProperty(H,{ea:"toNode"},function(){return this.Og},function(a){var b=this.Og;if(b!==a){u&&null!==a&&z.l(a,E,H,"toNode");var c=this.Nd;null!==b&&(this.yg!==b&&xr(b,this,c),Ir(this),this.N(Um));this.Og=a;null!==a&&this.Kd(a.isVisible());this.Yi=null;this.gc();var d=this.g;if(null!==d){var e=this.data,g=d.ia;if(null!==e)if(g instanceof X){var h=null!==a?a.data:null;g.DB(e,g.Cb(h))}else g instanceof Cg&&(h=null!==a?a.data:null,d.be?(null!==b&&g.Hi(b.data,void 0),g.Hi(h,g.Cb(null!==this.yg?this.yg.data: +z.defineProperty(H,{ea:"toNode"},function(){return this.Og},function(a){var b=this.Og;if(b!==a){u&&null!==a&&z.l(a,E,H,"toNode");var c=this.Nd;null!==b&&(this.yg!==b&&xr(b,this,c),Ir(this),this.N(Um));this.Og=a;null!==a&&this.Kd(a.isVisible());this.Yi=null;this.gc();var d=this.g;if(null!==d){var e=this.data,g=d.ia;if(null!==e)if(g instanceof X){var h=null!==a?a.data:null;g.DB(e,g.Cb(h))}else g instanceof Cg&&(h=null!==a?a.data:null,d.ae?(null!==b&&g.Hi(b.data,void 0),g.Hi(h,g.Cb(null!==this.yg?this.yg.data: null))):g.Hi(e,g.Cb(h)))}e=this.Nd;g=this.RG;null!==g&&(h=!0,null!==d&&(h=d.ab,d.ab=!0),g(this,c,e),null!==d&&(d.ab=h));null!==a&&(this.yg!==a&&wr(a,this,e),Jr(this),this.N(Lm));this.i("toNode",b,a);pn(this)}}); z.defineProperty(H,{ih:"toPortId"},function(){return this.xi},function(a){var b=this.xi;if(b!==a){u&&z.h(a,"string",H,"toPortId");var c=this.Nd;null!==c&&vr(this.ea,c);Ir(this);this.xi=a;var d=this.Nd;null!==d&&vr(this.ea,d);var e=this.g;if(null!==e){var g=this.data,h=e.ia;null!==g&&h instanceof X&&h.EB(g,a)}c!==d&&(this.Yi=null,this.gc(),g=this.RG,null!==g&&(h=!0,null!==e&&(h=e.ab,e.ab=!0),g(this,c,d),null!==e&&(e.ab=h)));Jr(this);this.i("toPortId",b,a)}}); -z.w(H,{Nd:"toPort"},function(){var a=this.Og;return null===a?null:a.im(this.xi)});z.defineProperty(H,{RG:"toPortChanged"},function(){return this.Ft},function(a){var b=this.Ft;b!==a&&(null!==a&&z.h(a,"function",H,"toPortChanged"),this.Ft=a,this.i("toPortChanged",b,a))});z.defineProperty(H,{Gb:"fromSpot"},function(){return null!==this.Y?this.Y.fk:Rc},function(a){this.Yd();var b=this.Y.fk;b.O(a)||(u&&z.l(a,R,H,"fromSpot"),a=a.V(),this.Y.fk=a,this.i("fromSpot",b,a),this.gc())}); -z.defineProperty(H,{lm:"fromEndSegmentLength"},function(){return null!==this.Y?this.Y.dk:NaN},function(a){this.Yd();var b=this.Y.dk;b!==a&&(u&&z.h(a,"number",H,"fromEndSegmentLength"),0>a&&z.wa(a,">= 0",H,"fromEndSegmentLength"),this.Y.dk=a,this.i("fromEndSegmentLength",b,a),this.gc())}); -z.defineProperty(H,{ju:"fromEndSegmentDirection"},function(){return null!==this.Y?this.Y.ck:qr},function(a){this.Yd();var b=this.Y.ck;b!==a&&(z.Nn("Link.fromEndSegmentDirection","2.0"),u&&z.Ca(a,E,H,"fromEndSegmentDirection"),this.Y.ck=a,this.i("fromEndSegmentDirection",b,a),this.gc())}); -z.defineProperty(H,{ku:"fromShortLength"},function(){return null!==this.Y?this.Y.ek:NaN},function(a){this.Yd();var b=this.Y.ek;b!==a&&(u&&z.h(a,"number",H,"fromShortLength"),this.Y.ek=a,this.i("fromShortLength",b,a),this.gc())});z.defineProperty(H,{Hb:"toSpot"},function(){return null!==this.Y?this.Y.Ek:Rc},function(a){this.Yd();var b=this.Y.Ek;b.O(a)||(u&&z.l(a,R,H,"toSpot"),a=a.V(),this.Y.Ek=a,this.i("toSpot",b,a),this.gc())}); -z.defineProperty(H,{Bm:"toEndSegmentLength"},function(){return null!==this.Y?this.Y.Ck:NaN},function(a){this.Yd();var b=this.Y.Ck;b!==a&&(u&&z.h(a,"number",H,"toEndSegmentLength"),0>a&&z.wa(a,">= 0",H,"toEndSegmentLength"),this.Y.Ck=a,this.i("toEndSegmentLength",b,a),this.gc())}); -z.defineProperty(H,{bv:"toEndSegmentDirection"},function(){return null!==this.Y?this.Y.Bk:qr},function(a){this.Yd();var b=this.Y.Bk;b!==a&&(z.Nn("Link.toEndSegmentDirection","2.0"),u&&z.Ca(a,E,H,"toEndSegmentDirection"),this.Y.Bk=a,this.i("toEndSegmentDirection",b,a),this.gc())});z.defineProperty(H,{cv:"toShortLength"},function(){return null!==this.Y?this.Y.Dk:NaN},function(a){this.Yd();var b=this.Y.Dk;b!==a&&(u&&z.h(a,"number",H,"toShortLength"),this.Y.Dk=a,this.i("toShortLength",b,a),this.gc())}); +z.w(H,{Nd:"toPort"},function(){var a=this.Og;return null===a?null:a.im(this.xi)});z.defineProperty(H,{RG:"toPortChanged"},function(){return this.Ft},function(a){var b=this.Ft;b!==a&&(null!==a&&z.h(a,"function",H,"toPortChanged"),this.Ft=a,this.i("toPortChanged",b,a))});z.defineProperty(H,{Gb:"fromSpot"},function(){return null!==this.Y?this.Y.fk:Rc},function(a){this.Xd();var b=this.Y.fk;b.O(a)||(u&&z.l(a,R,H,"fromSpot"),a=a.V(),this.Y.fk=a,this.i("fromSpot",b,a),this.gc())}); +z.defineProperty(H,{lm:"fromEndSegmentLength"},function(){return null!==this.Y?this.Y.dk:NaN},function(a){this.Xd();var b=this.Y.dk;b!==a&&(u&&z.h(a,"number",H,"fromEndSegmentLength"),0>a&&z.wa(a,">= 0",H,"fromEndSegmentLength"),this.Y.dk=a,this.i("fromEndSegmentLength",b,a),this.gc())}); +z.defineProperty(H,{ju:"fromEndSegmentDirection"},function(){return null!==this.Y?this.Y.ck:qr},function(a){this.Xd();var b=this.Y.ck;b!==a&&(z.Nn("Link.fromEndSegmentDirection","2.0"),u&&z.Ca(a,E,H,"fromEndSegmentDirection"),this.Y.ck=a,this.i("fromEndSegmentDirection",b,a),this.gc())}); +z.defineProperty(H,{ku:"fromShortLength"},function(){return null!==this.Y?this.Y.ek:NaN},function(a){this.Xd();var b=this.Y.ek;b!==a&&(u&&z.h(a,"number",H,"fromShortLength"),this.Y.ek=a,this.i("fromShortLength",b,a),this.gc())});z.defineProperty(H,{Hb:"toSpot"},function(){return null!==this.Y?this.Y.Ek:Rc},function(a){this.Xd();var b=this.Y.Ek;b.O(a)||(u&&z.l(a,R,H,"toSpot"),a=a.V(),this.Y.Ek=a,this.i("toSpot",b,a),this.gc())}); +z.defineProperty(H,{Bm:"toEndSegmentLength"},function(){return null!==this.Y?this.Y.Ck:NaN},function(a){this.Xd();var b=this.Y.Ck;b!==a&&(u&&z.h(a,"number",H,"toEndSegmentLength"),0>a&&z.wa(a,">= 0",H,"toEndSegmentLength"),this.Y.Ck=a,this.i("toEndSegmentLength",b,a),this.gc())}); +z.defineProperty(H,{bv:"toEndSegmentDirection"},function(){return null!==this.Y?this.Y.Bk:qr},function(a){this.Xd();var b=this.Y.Bk;b!==a&&(z.Nn("Link.toEndSegmentDirection","2.0"),u&&z.Ca(a,E,H,"toEndSegmentDirection"),this.Y.Bk=a,this.i("toEndSegmentDirection",b,a),this.gc())});z.defineProperty(H,{cv:"toShortLength"},function(){return null!==this.Y?this.Y.Dk:NaN},function(a){this.Xd();var b=this.Y.Dk;b!==a&&(u&&z.h(a,"number",H,"toShortLength"),this.Y.Dk=a,this.i("toShortLength",b,a),this.gc())}); function pn(a){var b=a.aa,c=a.ea;null!==b?null!==c?Kr(a,b.BI(c)):Kr(a,null):Kr(a,null)}function Kr(a,b){var c=a.ql;if(c!==b){null!==c&&kr(c,a);a.ql=b;null!==b&&lr(b,a);var d=a.IE;if(null!==d){var e=!0,g=a.g;null!==g&&(e=g.ab,g.ab=!0);d(a,c,b);null!==g&&(g.ab=e)}!a.kh||a.YD!==c&&a.ZD!==c||a.gc()}}H.prototype.pm=function(){var a=this.Qa;null!==a&&this.aa!==a&&this.ea!==a&&a.px&&D.prototype.pm.call(this)}; H.prototype.getOtherNode=H.prototype.JA=function(a){u&&z.l(a,E,H,"getOtherNode:node");var b=this.aa;return a===b?this.ea:b};H.prototype.getOtherPort=function(a){u&&z.l(a,O,H,"getOtherPort:port");var b=this.gd;return a===b?this.Nd:b};z.w(H,{NL:"isLabeledLink"},function(){return null===this.af?!1:0=d&&(h=d-1);var l=this.n(h-1),g=this.n(h);xe(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.n(0),g=this.n(1),b=Math.min(e.x,g.x),c=Math.min(e.y,g.y),a.m(e.x,e.y,0,0),a.Ki(g),h=2;hc&&(c=-c)):Db(c.y,d.y)?(c=d.x-c.x,0>c&&(c=-c)):c=Math.sqrt(c.Ef(d)),g.push(c),e+=c;for(d=h=c=0;ce/2)break;c+=d;h++}z.Ba(g);b=this.n(h);g=this.n(h+1);b.x===g.x?b.y>g.y?a.m(b.x,b.y-(e/2-c)):a.m(b.x,b.y+(e/2-c)):b.y===g.y?b.x>g.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*(g.x-b.x),b.y+c*(g.y-b.y)));return a};z.w(H,{VF:"midAngle"},function(){this.vo();return this.computeMidAngle()}); -H.prototype.computeMidAngle=function(){var a=this.ua;if(2>a)return NaN;if(this.computeCurve()===Dj&&4<=a&&!this.uc){var b=(a-1)/3|0,c=3*(b/2|0);if(1===b%2){var c=Math.floor(c),b=this.n(c),d=this.n(c+1),a=this.n(c+2),c=this.n(c+3),e=d.x,d=d.y,g=a.x,a=a.y,h=(e+g)/2,k=(d+a)/2;return zb(((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(0=d&&(h=d-1);var l=this.n(h-1),g=this.n(h);xe(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.n(0),g=this.n(1),b=Math.min(e.x,g.x),c=Math.min(e.y,g.y),a.m(e.x,e.y,0,0),a.Ki(g),h=2;hc&&(c=-c)):Db(c.y,d.y)?(c=d.x-c.x,0>c&&(c=-c)):c=Math.sqrt(c.Ef(d)),g.push(c),e+=c;for(d=h=c=0;ce/2)break;c+=d;h++}z.Ba(g);b=this.n(h);g=this.n(h+1);b.x===g.x?b.y>g.y?a.m(b.x,b.y-(e/2-c)):a.m(b.x,b.y+(e/2-c)):b.y===g.y?b.x>g.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*(g.x-b.x),b.y+c*(g.y-b.y)));return a};z.w(H,{VF:"midAngle"},function(){this.uo();return this.computeMidAngle()}); +H.prototype.computeMidAngle=function(){var a=this.ua;if(2>a)return NaN;if(this.computeCurve()===Dj&&4<=a&&!this.tc){var b=(a-1)/3|0,c=3*(b/2|0);if(1===b%2){var c=Math.floor(c),b=this.n(c),d=this.n(c+1),a=this.n(c+2),c=this.n(c+3),e=d.x,d=d.y,g=a.x,a=a.y,h=(e+g)/2,k=(d+a)/2;return zb(((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.Lc(a):b.Lc(a):b.Lc(d);b=this.n(c-1);d=this.n(c);a=this.n(c+1);c=b.Ef(d);e=d.Ef(a);return c>e+10?b.Lc(d):e>c+10?d.Lc(a):b.Lc(a)}; z.defineProperty(H,{points:"points"},function(){return this.dd},function(a){var b=this.dd;if(b!==a){var c=null;if(Array.isArray(a)){var d=0===a.length%2;if(d)for(var e=0;em&&(p=-p),v=(0>l?-1:1)*p+r,t=n*(v- -r)+s);var r=h.x+2*k/3,s=h.y+2*l/3,x=r,y=s;Q(l,0)?y=0l?-1:1)*p+r,y=n*(x-r)+s);this.aq();this.zi(h);this.Ul(v,t);this.Ul(x,y);this.zi(q);this.dh(0,this.getLinkPoint(b,c,d,!0,!1,e,g));this.dh(3,this.getLinkPoint(e,g,a,!1,!1,b,c))}else d=this.getLinkPoint(b,c,d,!0,!1,e,g),a=this.getLinkPoint(e,g,a,!1,!1,b,c),this.hasCurviness()?(q=a.x-d.x,e=a.y-d.y,g=this.computeCurviness(),b=d.x+q/2,c=d.y+e/2,h=b,k=c,Q(e,0)?k=0g&&(h=-h),h=(0>e?-1:1)*h+b, -k=q*(h-b)+c),this.zi(d),this.Ul(h,k)):this.zi(d),this.zi(a)}else{p=this.Di;q&&(n&&p||m)&&this.aq();var A=m?this.computeCurviness():0,p=this.getLinkPoint(b,c,d,!0,n,e,g),r=v=s=0;if(n||!k||m)if(t=this.computeEndSegmentLength(b,c,d,!0),r=this.getLinkDirection(b,c,p,d,!0,n,e,g),m&&(k||d.O(a)||!n&&1===d.x+a.x&&1===d.y+a.y)&&(r-=n?90:30,0>A&&(r-=180)),0>r?r+=360:360<=r&&(r-=360),m&&(t+=Math.abs(A)*(n?1:2)),0===r?s=t:90===r?v=t:180===r?s=-t:270===r?v=-t:(s=t*Math.cos(r*Math.PI/180),v=t*Math.sin(r*Math.PI/ -180)),d.ae()&&m){var B=c.cb(mc,z.P()),N=z.Fb(B.x+1E3*s,B.y+1E3*v);this.getLinkPointFromPoint(b,c,B,N,!0,p);z.A(B);z.A(N)}var t=this.getLinkPoint(e,g,a,!1,n,b,c),G=y=x=0;if(n||!l||m)B=this.computeEndSegmentLength(e,g,a,!1),G=this.getLinkDirection(e,g,t,a,!1,n,b,c),m&&(l||d.O(a)||!n&&1===d.x+a.x&&1===d.y+a.y)&&(G+=n?0:30,0>A&&(G+=180)),0>G?G+=360:360<=G&&(G-=360),m&&(B+=Math.abs(A)*(n?1:2)),0===G?x=B:90===G?y=B:180===G?x=-B:270===G?y=-B:(x=B*Math.cos(G*Math.PI/180),y=B*Math.sin(G*Math.PI/180)),a.ae()&& -m&&(B=g.cb(mc,z.P()),N=z.Fb(B.x+1E3*x,B.y+1E3*y),this.getLinkPointFromPoint(e,g,B,N,!1,t),z.A(B),z.A(N));a=p;if(n||!k||m)a=new M(p.x+s,p.y+v);d=t;if(n||!l||m)d=new M(t.x+x,t.y+y);!q&&!n&&k&&3m&&(p=-p),v=(0>l?-1:1)*p+r,t=n*(v- +r)+s);var r=h.x+2*k/3,s=h.y+2*l/3,x=r,y=s;Q(l,0)?y=0l?-1:1)*p+r,y=n*(x-r)+s);this.$p();this.zi(h);this.Ul(v,t);this.Ul(x,y);this.zi(q);this.dh(0,this.getLinkPoint(b,c,d,!0,!1,e,g));this.dh(3,this.getLinkPoint(e,g,a,!1,!1,b,c))}else d=this.getLinkPoint(b,c,d,!0,!1,e,g),a=this.getLinkPoint(e,g,a,!1,!1,b,c),this.hasCurviness()?(q=a.x-d.x,e=a.y-d.y,g=this.computeCurviness(),b=d.x+q/2,c=d.y+e/2,h=b,k=c,Q(e,0)?k=0g&&(h=-h),h=(0>e?-1:1)*h+b, +k=q*(h-b)+c),this.zi(d),this.Ul(h,k)):this.zi(d),this.zi(a)}else{p=this.Di;q&&(n&&p||m)&&this.$p();var B=m?this.computeCurviness():0,p=this.getLinkPoint(b,c,d,!0,n,e,g),r=v=s=0;if(n||!k||m)if(t=this.computeEndSegmentLength(b,c,d,!0),r=this.getLinkDirection(b,c,p,d,!0,n,e,g),m&&(k||d.O(a)||!n&&1===d.x+a.x&&1===d.y+a.y)&&(r-=n?90:30,0>B&&(r-=180)),0>r?r+=360:360<=r&&(r-=360),m&&(t+=Math.abs(B)*(n?1:2)),0===r?s=t:90===r?v=t:180===r?s=-t:270===r?v=-t:(s=t*Math.cos(r*Math.PI/180),v=t*Math.sin(r*Math.PI/ +180)),d.$d()&&m){var A=c.cb(mc,z.P()),N=z.Fb(A.x+1E3*s,A.y+1E3*v);this.getLinkPointFromPoint(b,c,A,N,!0,p);z.A(A);z.A(N)}var t=this.getLinkPoint(e,g,a,!1,n,b,c),G=y=x=0;if(n||!l||m)A=this.computeEndSegmentLength(e,g,a,!1),G=this.getLinkDirection(e,g,t,a,!1,n,b,c),m&&(l||d.O(a)||!n&&1===d.x+a.x&&1===d.y+a.y)&&(G+=n?0:30,0>B&&(G+=180)),0>G?G+=360:360<=G&&(G-=360),m&&(A+=Math.abs(B)*(n?1:2)),0===G?x=A:90===G?y=A:180===G?x=-A:270===G?y=-A:(x=A*Math.cos(G*Math.PI/180),y=A*Math.sin(G*Math.PI/180)),a.$d()&& +m&&(A=g.cb(mc,z.P()),N=z.Fb(A.x+1E3*x,A.y+1E3*y),this.getLinkPointFromPoint(e,g,A,N,!1,t),z.A(A),z.A(N));a=p;if(n||!k||m)a=new M(p.x+s,p.y+v);d=t;if(n||!l||m)d=new M(t.x+x,t.y+y);!q&&!n&&k&&3Math.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} H.prototype.getLinkPointFromPoint=function(a,b,c,d,e,g){void 0===g&&(g=new M);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.Q;null===e||e.jh()||(e=e.Q);if(null===e)e=d.x,h=d.y,k=c.x,l=c.y;else{a=e.Gh;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.Tn(e,h,k,l, g);null!==a&&g.transform(a);return g};function Rr(a,b){var c=b.Vs;null===c&&(c=new Sr,c.port=b,c.Yc=b.ba,b.Vs=c);return Tr(c,a)} -H.prototype.getLinkPoint=function(a,b,c,d,e,g,h,k){void 0===k&&(k=new M);if(c.jd())return b.cb(c,k),k;if(c.Gj()){var l=Rr(this,b);if(null!==l){k.assign(l.yq);if(e&&this.ty===Hr){var m=Rr(this,h);if(null!==m&&l.Kn=n.y&&a.y<=n.y+n.height?k.y=a.y:(c.Fj(rc)||c.Fj(yc))&&a.x>=n.x&&a.x<=n.x+n.width&&(k.x=a.x);z.A(l);z.A(m)}}return k}}c=b.cb(mc,z.P());l=g=null;this.ua> +H.prototype.getLinkPoint=function(a,b,c,d,e,g,h,k){void 0===k&&(k=new M);if(c.jd())return b.cb(c,k),k;if(c.Gj()){var l=Rr(this,b);if(null!==l){k.assign(l.xq);if(e&&this.ty===Hr){var m=Rr(this,h);if(null!==m&&l.Kn=n.y&&a.y<=n.y+n.height?k.y=a.y:(c.Fj(rc)||c.Fj(yc))&&a.x>=n.x&&a.x<=n.x+n.width&&(k.x=a.x);z.A(l);z.A(m)}}return k}}c=b.cb(mc,z.P());l=g=null;this.ua> (e?6:2)?(l=d?this.n(1):this.n(this.ua-2),e&&(l=Qr(c,l.copy()))):(g=z.P(),l=h.cb(mc,g),e&&(l=Qr(c,l)),z.A(g));this.getLinkPointFromPoint(a,b,c,l,d,k);z.A(c);return k}; H.prototype.getLinkDirection=function(a,b,c,d,e,g,h,k){a:if(d.jd())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.n(1):this.n(this.ua-2),n=g?Qr(l,n.copy()):c):(m=z.P(),n=k.cb(mc,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.ae()&&h.Ei(a)&&(c+=180,360<=c&&(c-=360));a=qr;a=e?this.ju:this.bv;a===qr&&(a=e?b.ju:b.bv);switch(a){case rr:b=b.Rn();c+=b;360<=c&&(c-=360);break;case qr:case xo:b=b.Rn();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}; +l.y)?n.x>=l.x?0:180:n.y>=l.y?90:270;z.A(l)}d.$d()&&h.Ei(a)&&(c+=180,360<=c&&(c-=360));a=qr;a=e?this.ju:this.bv;a===qr&&(a=e?b.ju:b.bv);switch(a){case rr:b=b.Rn();c+=b;360<=c&&(c-=360);break;case qr:case xo:b=b.Rn();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}; H.prototype.computeEndSegmentLength=function(a,b,c,d){if(null!==b&&c.Gj()&&(a=Rr(this,b),null!==a))return a.zx;a=NaN;a=d?this.lm:this.Bm;null!==b&&isNaN(a)&&(a=d?b.lm:b.Bm);isNaN(a)&&(a=10);return a};H.prototype.computeSpot=function(a){return a?Or(this,this.gd):Pr(this,this.Nd)};function Or(a,b){if(null===b)return mc;var c=a.Gb;c.hd()&&null!==b&&(c=b.Gb);return c===Rc?gc:c}function Pr(a,b){if(null===b)return mc;var c=a.Hb;c.hd()&&null!==b&&(c=b.Hb);return c===Rc?gc:c} -H.prototype.computeOtherPoint=function(a,b){var c=b.cb(mc),d;d=b.Vs;d=null!==d?Tr(d,this):null;null!==d&&(c=d.yq);return c};H.prototype.computeShortLength=function(a){if(a){if(a=this.ku,isNaN(a)){var b=this.gd;null!==b&&(a=b.ku)}}else a=this.cv,isNaN(a)&&(b=this.Nd,null!==b&&(a=b.cv));return isNaN(a)?0:a}; +H.prototype.computeOtherPoint=function(a,b){var c=b.cb(mc),d;d=b.Vs;d=null!==d?Tr(d,this):null;null!==d&&(c=d.xq);return c};H.prototype.computeShortLength=function(a){if(a){if(a=this.ku,isNaN(a)){var b=this.gd;null!==b&&(a=b.ku)}}else a=this.cv,isNaN(a)&&(b=this.Nd,null!==b&&(a=b.cv));return isNaN(a)?0:a}; H.prototype.Pk=function(a,b,c,d,e,g){if(!1===this.qg)return!1;void 0===b&&(b=null);void 0===c&&(c=null);var h=g;void 0===g&&(h=z.Pf(),h.reset());h.multiply(this.transform);if(this.Hn(a,h))return Zp(this,b,c,e),void 0===g&&z.Ie(h),!0;if(this.Vg(a,h)){var k=!1;if(!this.Yn)for(var l=this.va.o,m=l.length;m--;){var n=l[m];if(n.visible||n===this.cc){var p=n.Z,q=this.Ja;if(!(p.x>q.width||p.y>q.height||0>p.x+p.width||0>p.y+p.height)){p=z.Pf();p.set(h);if(n instanceof I)k=n.Pk(a,b,c,d,e,p);else if(this.path=== -n){var k=n,r=a,s=d,q=p;if(!1===k.qg)k=!1;else if(q.multiply(k.transform),s)b:{var v=r,t=q;if(k.Hn(v,t))k=!0;else{if(void 0===t&&(t=k.transform,v.Lk(k.Z))){k=!0;break b}var q=v.left,r=v.right,s=v.top,v=v.bottom,x=z.P(),y=z.P(),A=z.P(),B=z.Pf();B.set(t);B.fB(k.transform);B.Mx();y.x=r;y.y=s;y.transform(B);x.x=q;x.y=s;x.transform(B);t=!1;lq(k,x,y,A)?t=!0:(x.x=r,x.y=v,x.transform(B),lq(k,x,y,A)?t=!0:(y.x=q,y.y=v,y.transform(B),lq(k,x,y,A)?t=!0:(x.x=q,x.y=s,x.transform(B),lq(k,x,y,A)&&(t=!0))));z.Ie(B); -z.A(x);z.A(y);z.A(A);k=t}}else k=k.Hn(r,q)}else k=Do(n,a,d,p);k&&(null!==b&&(n=b(n)),n&&(null===c||c(n))&&e.add(n));z.Ie(p)}}}void 0===g&&z.Ie(h);return k||null!==this.background||null!==this.Xl}void 0===g&&z.Ie(h);return!1};z.w(H,{uc:"isOrthogonal"},function(){return 2===(this.kn.value&2)});z.w(H,{Di:"isAvoiding"},function(){return 4===(this.kn.value&4)});H.prototype.computeCurve=function(){if(null===this.Yi){var a=this.gd,b=this.uc;this.Yi=null!==a&&a===this.Nd&&!b}return this.Yi?Dj:this.hf}; +n){var k=n,r=a,s=d,q=p;if(!1===k.qg)k=!1;else if(q.multiply(k.transform),s)b:{var v=r,t=q;if(k.Hn(v,t))k=!0;else{if(void 0===t&&(t=k.transform,v.Lk(k.Z))){k=!0;break b}var q=v.left,r=v.right,s=v.top,v=v.bottom,x=z.P(),y=z.P(),B=z.P(),A=z.Pf();A.set(t);A.fB(k.transform);A.Mx();y.x=r;y.y=s;y.transform(A);x.x=q;x.y=s;x.transform(A);t=!1;lq(k,x,y,B)?t=!0:(x.x=r,x.y=v,x.transform(A),lq(k,x,y,B)?t=!0:(y.x=q,y.y=v,y.transform(A),lq(k,x,y,B)?t=!0:(x.x=q,x.y=s,x.transform(A),lq(k,x,y,B)&&(t=!0))));z.Ie(A); +z.A(x);z.A(y);z.A(B);k=t}}else k=k.Hn(r,q)}else k=Do(n,a,d,p);k&&(null!==b&&(n=b(n)),n&&(null===c||c(n))&&e.add(n));z.Ie(p)}}}void 0===g&&z.Ie(h);return k||null!==this.background||null!==this.Xl}void 0===g&&z.Ie(h);return!1};z.w(H,{tc:"isOrthogonal"},function(){return 2===(this.kn.value&2)});z.w(H,{Di:"isAvoiding"},function(){return 4===(this.kn.value&4)});H.prototype.computeCurve=function(){if(null===this.Yi){var a=this.gd,b=this.tc;this.Yi=null!==a&&a===this.Nd&&!b}return this.Yi?Dj:this.hf}; H.prototype.computeCorner=function(){if(this.hf===Dj)return 0;var a=this.sA;if(isNaN(a)||0>a)a=10;return a};H.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;Db(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.dh(a,b);for(a+= +H.prototype.adjustPoints=function(a,b,c,d){var e=this.Ot;if(this.tc){if(e===Fr)return!1;e===Gr&&(e=Er)}switch(e){case Fr:var g=this.n(a),h=this.n(c);if(!g.Vc(b)||!h.Vc(d)){var e=g.x,g=g.y,k=h.x-e,l=h.y-g,m=Math.sqrt(k*k+l*l);if(!Db(m,0)){var n=0;Db(k,0)?n=0>l?-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;Db(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.dh(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.ja(a,h+b*Math.cos(k),p+b*Math.sin(k)));this.dh(c,d)}}return!0;case Gr:g=this.n(a);p=this.n(c);if(!g.Vc(b)||!p.Vc(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.dh(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.Z.copy(),k=g.Z.copy();if(h.F()&&k.F()){h.fg(8,8);k.fg(8,8);h.Ki(a);k.Ki(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 M(c.x,a.y),m=new M(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.Oa(a)||h.Oa(c))?l.y=this.computeMidOrthoPosition(a.y,c.y,!0):c.yh.left&&l.x=h.t c.y,!0),m.x=c.x,m.y=l.y):180===d&&c.x=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.Oa(a)||h.Oa(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 M(a.x,Math.min((a.y+c.y)/2,a.y)),m=new M(c.x,l.y)}else l.x=180===d||(90===d||270===d)&&c.xk&&0!==Vr(e,c.x,c.y)){Wr(this,e,c.x,c.y,d,!0);d=this.n(2);if(4>this.ua)0===b||180===b?(d.x=a.x,d.y=c.y):(d.x=c.x,d.y=a.y),this.ja(2,d.x,d.y),this.B(3,d.x,d.y);else if(c=this.n(3),0===b|| -180===b)Q(d.x,c.x)?(b=0===b?Math.max(d.x,a.x):Math.min(d.x,a.x),this.ja(2,b,a.y),this.ja(3,b,c.y)):Q(d.y,c.y)?(Math.abs(a.y-d.y)<=e.Yp/2&&(this.ja(2,d.x,a.y),this.ja(3,c.x,a.y)),this.B(2,d.x,a.y)):this.ja(2,a.x,d.y);else if(90===b||270===b)Q(d.y,c.y)?(b=90===b?Math.max(d.y,a.y):Math.min(d.y,a.y),this.ja(2,a.x,b),this.ja(3,c.x,b)):Q(d.x,c.x)?(Math.abs(a.x-d.x)<=e.$p/2&&(this.ja(2,a.x,d.y),this.ja(3,a.x,c.y)),this.B(2,a.x,d.y)):this.ja(2,d.x,a.y);a=!0}else a=!1}else a=!1;a||(this.zi(l),this.zi(m))}}; +h.fg(2*e.Zp,2*e.Xp),Ur(e,a,b,c,d,h),k=Vr(e,c.x,c.y),e.abort||999999!==k||(Fn(e),k=e.IG,h.fg(e.Zp*k,e.Xp*k),Ur(e,a,b,c,d,h),k=Vr(e,c.x,c.y)),e.abort||999999!==k||(Fn(e),k=e.QF,h.fg(e.Zp*k,e.Xp*k),Ur(e,a,b,c,d,h),k=Vr(e,c.x,c.y)),!e.abort&&999999===k&&e.cH&&(Fn(e),Ur(e,a,b,c,d,e.sb),k=Vr(e,c.x,c.y)),!e.abort&&999999>k&&0!==Vr(e,c.x,c.y)){Wr(this,e,c.x,c.y,d,!0);d=this.n(2);if(4>this.ua)0===b||180===b?(d.x=a.x,d.y=c.y):(d.x=c.x,d.y=a.y),this.ja(2,d.x,d.y),this.B(3,d.x,d.y);else if(c=this.n(3),0===b|| +180===b)Q(d.x,c.x)?(b=0===b?Math.max(d.x,a.x):Math.min(d.x,a.x),this.ja(2,b,a.y),this.ja(3,b,c.y)):Q(d.y,c.y)?(Math.abs(a.y-d.y)<=e.Xp/2&&(this.ja(2,d.x,a.y),this.ja(3,c.x,a.y)),this.B(2,d.x,a.y)):this.ja(2,a.x,d.y);else if(90===b||270===b)Q(d.y,c.y)?(b=90===b?Math.max(d.y,a.y):Math.min(d.y,a.y),this.ja(2,a.x,b),this.ja(3,c.x,b)):Q(d.x,c.x)?(Math.abs(a.x-d.x)<=e.Zp/2&&(this.ja(2,a.x,d.y),this.ja(3,a.x,c.y)),this.B(2,a.x,d.y)):this.ja(2,d.x,a.y);a=!0}else a=!1}else a=!1;a||(this.zi(l),this.zi(m))}}; H.prototype.computeMidOrthoPosition=function(a,b){if(this.hasCurviness()){var c=this.computeCurviness();return(a+b)/2+c}return(a+b)/2};function Th(a){if(null===a.g||!a.Di)return!1;var b=a.points.o,c=b.length;if(4>c)return!1;a=ja(a.g,!0,a.Qa,null);for(var d=1;da)return new Ve(hf);var b=!1,c=this.g;null!==c&&Lr(this)&&c.sl.contains(this)&&null!==this.Cw&&(b=!0);var d=c=0,e=this.n(0).copy(),g=e.copy(),c=this.dd.o,h=this.computeCurve();if(h===Dj&&3<=a&&!Db(this.Uq,0))if(3===a)var k=this.n(1),c=Math.min(e.x,k.x),d=Math.min(e.y,k.y),k=this.n(2),c=Math.min(c,k.x),d=Math.min(d,k.y);else{if(this.uc)for(k=0;k=a&&(k=a-1),c=this.n(k), -g.x=Math.min(c.x,g.x),g.y=Math.min(c.y,g.y);c=g.x;d=g.y}else{for(k=0;kx?r>q?(v.x=y-B,v.y=q-B,t.x=y+s,t.y=q+s):(v.x=y-B,v.y=q+B,t.x=y+s,t.y=q-s):r>q?(v.x=y+B,v.y=q-B,t.x=y-s,t.y=q+s):(v.x=y+B,v.y=q+B,t.x=y-s,t.y=q-s));Db(x,y)&&Db(q,r)&&(q>p?(A>y?(v.x= -y-B,v.y=q-B,t.x=y+s):(v.x=y+B,v.y=q-B,t.x=y-s),t.y=q+s):(A>y?(v.x=y-B,v.y=q+B,t.x=y+s):(v.x=y+B,v.y=q+B,t.x=y-s),t.y=q-s));if(Db(x,y)&&Db(y,A)||Db(p,q)&&Db(q,r))x=.5*(x+A),p=.5*(p+r),v.x=x,v.y=p,t.x=x,t.y=p;1===k?(e.x=.5*(b.x+m.x),e.y=.5*(b.y+m.y)):2===k&&Db(b.x,this.n(0).x)&&Db(b.y,this.n(0).y)&&(e.x=.5*(b.x+m.x),e.y=.5*(b.y+m.y));U(l,e.x-c,e.y-d,h.x-c,h.y-d,m.x-c,m.y-d);g.set(h);e.set(a);b=m}}k=b.x;b=b.y;g=this.n(this.ua-1);0!==this.computeShortLength(!1)&&(g=Xr(this,g.copy(),!1,Dd));k=.5*(k+g.x); +function Wr(a,b,c,d,e,g){var h=b.Zp,k=b.Xp,l=Vr(b,c,d),m=c,n=d;for(0===e?m+=h:90===e?n+=k:180===e?m-=h:n-=k;1a)return new Ve(hf);var b=!1,c=this.g;null!==c&&Lr(this)&&c.sl.contains(this)&&null!==this.Cw&&(b=!0);var d=c=0,e=this.n(0).copy(),g=e.copy(),c=this.dd.o,h=this.computeCurve();if(h===Dj&&3<=a&&!Db(this.Uq,0))if(3===a)var k=this.n(1),c=Math.min(e.x,k.x),d=Math.min(e.y,k.y),k=this.n(2),c=Math.min(c,k.x),d=Math.min(d,k.y);else{if(this.tc)for(k=0;k=a&&(k=a-1),c=this.n(k), +g.x=Math.min(c.x,g.x),g.y=Math.min(c.y,g.y);c=g.x;d=g.y}else{for(k=0;kx?r>q?(v.x=y-A,v.y=q-A,t.x=y+s,t.y=q+s):(v.x=y-A,v.y=q+A,t.x=y+s,t.y=q-s):r>q?(v.x=y+A,v.y=q-A,t.x=y-s,t.y=q+s):(v.x=y+A,v.y=q+A,t.x=y-s,t.y=q-s));Db(x,y)&&Db(q,r)&&(q>p?(B>y?(v.x= +y-A,v.y=q-A,t.x=y+s):(v.x=y+A,v.y=q-A,t.x=y-s),t.y=q+s):(B>y?(v.x=y-A,v.y=q+A,t.x=y+s):(v.x=y+A,v.y=q+A,t.x=y-s),t.y=q-s));if(Db(x,y)&&Db(y,B)||Db(p,q)&&Db(q,r))x=.5*(x+B),p=.5*(p+r),v.x=x,v.y=p,t.x=x,t.y=p;1===k?(e.x=.5*(b.x+m.x),e.y=.5*(b.y+m.y)):2===k&&Db(b.x,this.n(0).x)&&Db(b.y,this.n(0).y)&&(e.x=.5*(b.x+m.x),e.y=.5*(b.y+m.y));U(l,e.x-c,e.y-d,h.x-c,h.y-d,m.x-c,m.y-d);g.set(h);e.set(a);b=m}}k=b.x;b=b.y;g=this.n(this.ua-1);0!==this.computeShortLength(!1)&&(g=Xr(this,g.copy(),!1,Dd));k=.5*(k+g.x); b=.5*(b+g.y);U(l,a.x-c,a.y-d,k-c,b-d,g.x-c,g.y-d)}else for(k=3;k=a&&(k=a-1),g=this.n(k-1),e=this.n(k),k===a-1&&0!==this.computeShortLength(!1)&&(e=Xr(this,e.copy(),!1,Dd)),U(l,b.x-c,b.y-d,g.x-c,g.y-d,e.x-c,e.y-d);else{g=z.P();g.assign(this.n(0));for(k=1;k=a-1){g!==v&&(0!==this.computeShortLength(!1)&&(v=Xr(this,v.copy(),!1,Dd)),$r(this,l,-c,-d,g,v,b));break}k=Yr(this,v,k+1,kn.x?v.x-s:v.x+s,B=t.y>v.y?v.y+y:v.y-y,$r(this,e,h,m,n,new M(q,A),p),pf(e,v.x+h,v.y+m,r+h,B+m),x.m(r,B))):Q(n.x,v.x)&&Q(v.y,t.y)?(s=this.computeCorner(),y=Math.min(s,Math.abs(v.y-n.y)/2),y=s=Math.min(y,Math.abs(t.x-v.x)/2),Q(s,0)?($r(this,e,h,m,n,v,p),x.assign(v)):(q=v.x,B=A=v.y,A=v.y>n.y?v.y-y:v.y+y,r=t.x>v.x?v.x+s:v.x-s,$r(this,e, -h,m,n,new M(q,A),p),pf(e,v.x+h,v.y+m,r+h,B+m),x.m(r,B))):($r(this,e,h,m,n,v,p),x.assign(v))}z.A(g)}c=l.q;z.u(l)}else l=this.n(1).copy(),l.x-=c,l.y-=d,0!==this.computeShortLength(!0)&&(e=Xr(this,e,!0,g)),0!==this.computeShortLength(!1)&&(l=Xr(this,l,!1,g)),c=new Ve(hf),c.na=e.x,c.la=e.y,c.G=l.x,c.H=l.y;return c}; +t.x)?(s=this.computeCorner(),s=Math.min(s,Math.abs(v.x-n.x)/2),s=y=Math.min(s,Math.abs(t.y-v.y)/2),Q(s,0)?($r(this,e,h,m,n,v,p),x.assign(v)):(q=v.x,B=v.y,r=q,A=B,q=v.x>n.x?v.x-s:v.x+s,A=t.y>v.y?v.y+y:v.y-y,$r(this,e,h,m,n,new M(q,B),p),pf(e,v.x+h,v.y+m,r+h,A+m),x.m(r,A))):Q(n.x,v.x)&&Q(v.y,t.y)?(s=this.computeCorner(),y=Math.min(s,Math.abs(v.y-n.y)/2),y=s=Math.min(y,Math.abs(t.x-v.x)/2),Q(s,0)?($r(this,e,h,m,n,v,p),x.assign(v)):(q=v.x,A=B=v.y,B=v.y>n.y?v.y-y:v.y+y,r=t.x>v.x?v.x+s:v.x-s,$r(this,e, +h,m,n,new M(q,B),p),pf(e,v.x+h,v.y+m,r+h,A+m),x.m(r,A))):($r(this,e,h,m,n,v,p),x.assign(v))}z.A(g)}c=l.q;z.u(l)}else l=this.n(1).copy(),l.x-=c,l.y-=d,0!==this.computeShortLength(!0)&&(e=Xr(this,e,!0,g)),0!==this.computeShortLength(!1)&&(l=Xr(this,l,!1,g)),c=new Ve(hf),c.na=e.x,c.la=e.y,c.G=l.x,c.H=l.y;return c}; function Zr(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 Db(a,0)?b:Db(b,0)?a:Math.sqrt(a*a+b*b)} function Xr(a,b,c,d){var e=a.ua;if(2>e)return b;if(c){var g=a.n(1);c=g.x-d.x;d=g.y-d.y;g=Zr(b.x,b.y,c,d);if(0===g)return b;e=2===e?.5*g:g;a=a.computeShortLength(!0);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.n(e-2);c=g.x-d.x;d=g.y-d.y;g=Zr(b.x,b.y,c,d);if(0===g)return b;e=2===e?.5*g:g;a=a.computeShortLength(!1);a>e&&(a=e);c=a*(b.x-c)/g;a=a*(b.y-d)/g;b.x-=c;b.y-=a}return b} function Yr(a,b,c,d){for(var e=a.ua,g=b;Db(b.x,g.x)&&Db(b.y,g.y);){if(c>=e)return e-1;g=a.n(c++)}if(!Db(b.x,g.x)&&!Db(b.y,g.y))return c-1;for(var h=g;Db(b.x,g.x)&&Db(g.x,h.x)&&(!d||(b.y>=g.y?g.y>=h.y:g.y<=h.y))||Db(b.y,g.y)&&Db(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.n(c++)}return c-2} function $r(a,b,c,d,e,g,h){if(!h&&Lr(a)){h=[];var k=0;a.isVisible()&&(k=as(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.hf===mj?S(b,n,p,!1,!1):U(b,l,q,n,q,n,p)}else if(Q(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.hf===mj?S(b,n,p,!1,!1):U(b,q,l,q,p,n,p)}}b.lineTo(g.x+c,g.y+d)} -function as(a,b,c,d){var e=a.g;if(null===e||b.O(c))return 0;for(e=e.ao;e.next();){var g=e.value;if(null!==g&&g.visible)for(var g=g.pb.o,h=g.length,k=0;kh.x&&n.x>m.x||m.xh.y&&n.y>m.y||m.yv&&Math.min(h,x)q&&!Q(h,x)){n.x=v;n.y=q;n=!0;break a}}else if(!Q(q,s)&&Q(h,x)&&Math.min(q,s)h&&Math.min(v,t)p&&!Q(v,t)){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(H,{fu:"firstPickIndex"},function(){var a;2>=this.ua?a=0:((a=this.uc)||(a=this.computeSpot(!0)!==gc),a=a?1:0);return a});z.w(H,{Xx:"lastPickIndex"},function(){var a=this.ua;if(0===a)a=0;else if(2>=a)a-=1;else{var b;(b=this.uc)||(b=this.computeSpot(!1)!==gc);a=b?a-2:a-1}return a});function Lr(a){a=a.hf;return a===lj||a===mj} +s)>h&&Math.min(v,t)p&&!Q(v,t)){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(H,{fu:"firstPickIndex"},function(){var a;2>=this.ua?a=0:((a=this.tc)||(a=this.computeSpot(!0)!==gc),a=a?1:0);return a});z.w(H,{Xx:"lastPickIndex"},function(){var a=this.ua;if(0===a)a=0;else if(2>=a)a-=1;else{var b;(b=this.tc)||(b=this.computeSpot(!1)!==gc);a=b?a-2:a-1}return a});function Lr(a){a=a.hf;return a===lj||a===mj} function Nr(a,b){if(b||Lr(a)){var c=a.g;null===c||c.sl.contains(a)||null===a.Cw||c.sl.add(a,a.Cw)}}function oj(a,b){var c=a.layer;if(null!==c&&c.visible&&!c.Wc){var d=c.g;if(null!==d)for(var e=!1,d=d.ao;d.next();){var g=d.value;if(g.visible)if(g===c)for(var e=!0,h=!1,g=g.pb.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.Wf=Math.floor((a.x-this.ee)/this.ee)*this.ee;this.Xf=Math.floor((b-this.Od)/this.Od)*this.Od;this.vs=Math.ceil((c+2*this.ee)/this.ee)*this.ee;this.ws=Math.ceil((d+2*this.Od)/this.Od)*this.Od;a=1+(Math.ceil((this.vs-this.Wf)/this.ee)|0);b=1+(Math.ceil((this.ws-this.Xf)/this.Od)|0);if(null===this.zd||this.ynthis.vs||a+cthis.ws||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.yn)|0;for(c=Math.min(b+e-1,this.zn)|0;a<=d;a++)for(e=b;e<=c;e++)if(0===this.zd[a][e])return!1;return!0}; +function Jr(a){var b=a.yg;if(null!==b){var c=a.Og;if(null!==c){var d=a.ci;a=a.xi;for(var e=null,g=null,h=b.xc.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.Wf=Math.floor((a.x-this.de)/this.de)*this.de;this.Xf=Math.floor((b-this.Od)/this.Od)*this.Od;this.vs=Math.ceil((c+2*this.de)/this.de)*this.de;this.ws=Math.ceil((d+2*this.Od)/this.Od)*this.Od;a=1+(Math.ceil((this.vs-this.Wf)/this.de)|0);b=1+(Math.ceil((this.ws-this.Xf)/this.Od)|0);if(null===this.zd||this.ynthis.vs||a+cthis.ws||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.yn)|0;for(c=Math.min(b+e-1,this.zn)|0;a<=d;a++)for(e=b;e<=c;e++)if(0===this.zd[a][e])return!1;return!0}; function es(a,b,c,d,e,g,h,k,l){if(!(bh||cl)){var m,n;m=b|0;n=c|0;var p=a.zd[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.zd[m][n]);)a.zd[m][n]=p,p+=1,e?n+=d:m+=d;m=e?n:m;if(e)if(0m;c+=d)es(a,b,c,1,!e,g,h,k,l),es(a,b,c,-1,!e,g,h,k,l);else if(0m;b+=d)es(a,b,c,1,!e,g,h,k,l),es(a,b,c,-1,!e,g,h, k,l)}}function fs(a,b,c,d,e,g,h,k,l){b|=0;c|=0;var m=0,n=1;for(a.zd[b][c]=n;0===m&&b>g&&bk&&cg&&bk&&c=Math.abs(h-b)&&1>=Math.abs(k-d))a.abort=!0;else{var l=g.x,m=g.y,n=g.x+g.width,p=g.y+g.height,l=l-a.Wf,l=l/a.ee,m=m-a.Xf,m=m/a.Od,n=n-a.Wf,n=n/a.ee,p=p-a.Xf,p=p/a.Od;g=Math.max(0,Math.min(a.yn,l|0));n=Math.min(a.yn,Math.max(0,n|0));m=Math.max(0,Math.min(a.zn,m|0));p=Math.min(a.zn,Math.max(0,p|0));h|=0;k|=0;b|=0;d|=0;l=90===c|| -270===c;fs(a,h,k,0===c||90===c?1:-1,l,g,n,m,p);fs(a,h,k,1,!l,g,n,m,p);fs(a,h,k,-1,!l,g,n,m,p);gs(a,b,d,0===e||90===e?1:-1,90===e||270===e,g,n,m,p);gs(a,b,d,1,!(90===e||270===e),g,n,m,p);gs(a,b,d,-1,!(90===e||270===e),g,n,m,p);a.abort||(es(a,h,k,1,!1,g,n,m,p),es(a,h,k,-1,!1,g,n,m,p),es(a,h,k,1,!0,g,n,m,p),es(a,h,k,-1,!0,g,n,m,p))}}}function Sr(){z.xc(this);this.port=this.Yc=null;this.lg=[];this.Fq=!1}z.ne(Sr,{Yc:!0,port:!0,lg:!0,Fq:!0}); +function Ur(a,b,c,d,e,g){if(null!==a.zd){a.abort=!1;var h=b.x,k=b.y;if(ds(a,h,k)&&(h-=a.Wf,h/=a.de,k-=a.Xf,k/=a.Od,b=d.x,d=d.y,ds(a,b,d)))if(b-=a.Wf,b/=a.de,d-=a.Xf,d/=a.Od,1>=Math.abs(h-b)&&1>=Math.abs(k-d))a.abort=!0;else{var l=g.x,m=g.y,n=g.x+g.width,p=g.y+g.height,l=l-a.Wf,l=l/a.de,m=m-a.Xf,m=m/a.Od,n=n-a.Wf,n=n/a.de,p=p-a.Xf,p=p/a.Od;g=Math.max(0,Math.min(a.yn,l|0));n=Math.min(a.yn,Math.max(0,n|0));m=Math.max(0,Math.min(a.zn,m|0));p=Math.min(a.zn,Math.max(0,p|0));h|=0;k|=0;b|=0;d|=0;l=90===c|| +270===c;fs(a,h,k,0===c||90===c?1:-1,l,g,n,m,p);fs(a,h,k,1,!l,g,n,m,p);fs(a,h,k,-1,!l,g,n,m,p);gs(a,b,d,0===e||90===e?1:-1,90===e||270===e,g,n,m,p);gs(a,b,d,1,!(90===e||270===e),g,n,m,p);gs(a,b,d,-1,!(90===e||270===e),g,n,m,p);a.abort||(es(a,h,k,1,!1,g,n,m,p),es(a,h,k,-1,!1,g,n,m,p),es(a,h,k,1,!0,g,n,m,p),es(a,h,k,-1,!0,g,n,m,p))}}}function Sr(){z.wc(this);this.port=this.Yc=null;this.lg=[];this.Eq=!1}z.me(Sr,{Yc:!0,port:!0,lg:!0,Eq:!0}); Sr.prototype.toString=function(){for(var a=this.lg,b=this.Yc.toString()+" "+a.length.toString()+":",c=0;c=c?180:0}a=180*Math.atan2(a.height,a.width)/Math.PI;switch(b){case z.ad|z.xd:return c>a&&c<=180+a?180:270;case z.xd|z.od:return c>180-a&&c<=360-a?270:0;case z.od|z.nd:return c>a&&c<=180+a?90:0;case z.nd|z.ad:return c>180-a&&c<=360-a?180:90;case z.ad|z.xd|z.od:return 90180+a&&c<=360- -a?270:0;case z.xd|z.od|z.nd:return 180a&&180>=c?90:0;case z.od|z.nd|z.ad:return c>a&&c<=180-a?90:c>180-a&&270>=c?180:0;case z.nd|z.ad|z.xd:return c>180-a&&c<=180+a?180:c>180+a?270:90}d&&b!==(z.ad|z.xd|z.od|z.nd)&&(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}Sr.prototype.tq=function(){this.lg.length=0}; -function Tr(a,b){var c=a.lg;if(0===c.length){a:if(!a.Fq){c=a.Fq;a.Fq=!0;var d,e=null,g=a.Yc,g=g instanceof F?g:null;if(null===g||g.Ke)d=a.Yc.dF(a.port.vd);else{if(!g.Z.F()){a.Fq=c;break a}e=g;d=e.cF()}var h=a.lg.length=0,k=a.port.cb(hc,z.P()),l=a.port.cb(qc,z.P()),g=z.fh(k.x,k.y,0,0);g.Ki(l);z.A(k);z.A(l);k=z.Fb(g.x+g.width/2,g.y+g.height/2);for(d=d.j;d.next();)if(l=d.value,l.isVisible()){var m=l.gd===a.port||l.aa.Ei(e),n=l.computeSpot(m);if(n.Gj()&&(m=m?l.Nd:l.gd,null!==m)){var p=m.ba;if(null!== -p){var m=l.computeOtherPoint(p,m),p=k.Lc(m),n=hs(g,n,p,l.uc),q=0;0===n?(q=z.od,180Math.abs(G)?(A= -Math.abs(G)/q,q=Math.abs(G)):A=1;break;case z.ad:r>Math.abs(N)?(A=Math.abs(N)/r,r=Math.abs(N)):A=1;break;case z.xd:m>Math.abs(G)?(A=Math.abs(G)/m,m=Math.abs(G)):A=1;break;default:case z.od:p>Math.abs(N)?(A=Math.abs(N)/p,p=Math.abs(N)):A=1}y=0}var T=v.yq;if(e===sr){t=v.link.computeThickness();t*=A;T.set(B);switch(x){case z.nd:T.x=B.x+G/2+q/2-y-t/2;break;case z.ad:T.y=B.y+N/2+r/2-y-t/2;break;case z.xd:T.x=B.x+G/2-m/2+y+t/2;break;default:case z.od:T.y=B.y+N/2-p/2+y+t/2}y+=t}else t=.5,e===pr&&(t=(v.qq+ -1)/(v.Kn+1)),T.x=B.x+G*t,T.y=B.y+N*t}z.A(k);z.A(d);z.A(l);z.A(n);B=a.lg;for(G=0;Gb.Le?1:a.angleb.angle?1:0}; -Sr.prototype.computeEndSegmentLength=function(a){var b=a.link,c=b.computeEndSegmentLength(this.Yc,this.port,gc,b.gd===this.port),d=a.qq;if(0>d)return c;var e=a.Kn;if(1>=e||!b.uc)return c;var b=a.hy,g=a.yq;if(a.Le===z.ad||a.Le===z.nd)d=e-1-d;return((a=a.Le===z.ad||a.Le===z.od)?b.ya&&180>=c?90:0;case z.od|z.nd|z.ad:return c>a&&c<=180-a?90:c>180-a&&270>=c?180:0;case z.nd|z.ad|z.xd:return c>180-a&&c<=180+a?180:c>180+a?270:90}d&&b!==(z.ad|z.xd|z.od|z.nd)&&(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}Sr.prototype.sq=function(){this.lg.length=0}; +function Tr(a,b){var c=a.lg;if(0===c.length){a:if(!a.Eq){c=a.Eq;a.Eq=!0;var d,e=null,g=a.Yc,g=g instanceof F?g:null;if(null===g||g.Ke)d=a.Yc.dF(a.port.vd);else{if(!g.Z.F()){a.Eq=c;break a}e=g;d=e.cF()}var h=a.lg.length=0,k=a.port.cb(hc,z.P()),l=a.port.cb(qc,z.P()),g=z.fh(k.x,k.y,0,0);g.Ki(l);z.A(k);z.A(l);k=z.Fb(g.x+g.width/2,g.y+g.height/2);for(d=d.j;d.next();)if(l=d.value,l.isVisible()){var m=l.gd===a.port||l.aa.Ei(e),n=l.computeSpot(m);if(n.Gj()&&(m=m?l.Nd:l.gd,null!==m)){var p=m.ba;if(null!== +p){var m=l.computeOtherPoint(p,m),p=k.Lc(m),n=hs(g,n,p,l.tc),q=0;0===n?(q=z.od,180Math.abs(G)?(B= +Math.abs(G)/q,q=Math.abs(G)):B=1;break;case z.ad:r>Math.abs(N)?(B=Math.abs(N)/r,r=Math.abs(N)):B=1;break;case z.xd:m>Math.abs(G)?(B=Math.abs(G)/m,m=Math.abs(G)):B=1;break;default:case z.od:p>Math.abs(N)?(B=Math.abs(N)/p,p=Math.abs(N)):B=1}y=0}var T=v.xq;if(e===sr){t=v.link.computeThickness();t*=B;T.set(A);switch(x){case z.nd:T.x=A.x+G/2+q/2-y-t/2;break;case z.ad:T.y=A.y+N/2+r/2-y-t/2;break;case z.xd:T.x=A.x+G/2-m/2+y+t/2;break;default:case z.od:T.y=A.y+N/2-p/2+y+t/2}y+=t}else t=.5,e===pr&&(t=(v.pq+ +1)/(v.Kn+1)),T.x=A.x+G*t,T.y=A.y+N*t}z.A(k);z.A(d);z.A(l);z.A(n);A=a.lg;for(G=0;Gb.Le?1:a.angleb.angle?1:0}; +Sr.prototype.computeEndSegmentLength=function(a){var b=a.link,c=b.computeEndSegmentLength(this.Yc,this.port,gc,b.gd===this.port),d=a.pq;if(0>d)return c;var e=a.Kn;if(1>=e||!b.tc)return c;var b=a.hy,g=a.xq;if(a.Le===z.ad||a.Le===z.nd)d=e-1-d;return((a=a.Le===z.ad||a.Le===z.od)?b.ye&&(e=k.right);k.bottom>g&&(g=k.bottom)}}isFinite(c)&&isFinite(d)?a.m(c,d,e-c,g-d):(b=b.location,c=this.padding,a.m(b.x+c.left,b.y+c.top,0,0));return a}; z.defineProperty(F,{io:null},function(){return 0!==(this.Ha&32768)},function(a){0!==(this.Ha&32768)!==a&&(this.Ha^=32768)});z.defineProperty(Sj,{padding:"padding"},function(){return this.sf},function(a){"number"===typeof a?a=new Kb(a):z.l(a,Kb,Sj,"padding");var b=this.sf;b.O(a)||(this.sf=a=a.V(),this.i("padding",b,a))}); -function ch(){0=c-1?(h=0,e=d,g+=k+20,k=0):h++}null!==a&&a.Wd("Layout")}this.Jf=!0};ch.prototype.io=function(a){return!a.location.F()||a instanceof F&&a.io?!0:!1}; -function ls(a,b,c,d,e,g,h,k){for(c=c.j;c.next();){var l=c.value;d&&!l.wq||null!==e&&!e(l)||!l.canLayout()||(g&&l instanceof E?l.xf||(l instanceof F?null===l.Wb?ls(a,b,l.Oc,!1,e,g,h,k):(ms(l),b.add(l)):(ms(l),b.add(l))):h&&l instanceof H?b.add(l):!k||!l.re()||l instanceof E||(ms(l),b.add(l)))}}function ms(a){var b=a.Z;(0===b.width||0===b.height||isNaN(b.width)||isNaN(b.height))&&a.kf()} +m=m.height;l.moveTo(e,g);l.io=!1;e+=Math.max(n,50)+20;k=Math.max(k,Math.max(m,50));h>=c-1?(h=0,e=d,g+=k+20,k=0):h++}null!==a&&a.Vd("Layout")}this.Jf=!0};ch.prototype.io=function(a){return!a.location.F()||a instanceof F&&a.io?!0:!1}; +function ls(a,b,c,d,e,g,h,k){for(c=c.j;c.next();){var l=c.value;d&&!l.vq||null!==e&&!e(l)||!l.canLayout()||(g&&l instanceof E?l.xf||(l instanceof F?null===l.Wb?ls(a,b,l.Oc,!1,e,g,h,k):(ms(l),b.add(l)):(ms(l),b.add(l))):h&&l instanceof H?b.add(l):!k||!l.qe()||l instanceof E||(ms(l),b.add(l)))}}function ms(a){var b=a.Z;(0===b.width||0===b.height||isNaN(b.width)||isNaN(b.height))&&a.kf()} ch.prototype.collectParts=ch.prototype.YH=function(a){var b=new K(D);a instanceof C?(ls(this,b,a.og,!0,null,!0,!0,!0),ls(this,b,a.links,!0,null,!0,!0,!0),ls(this,b,a.Gi,!0,null,!0,!0,!0)):a instanceof F?ls(this,b,a.Oc,!1,null,!0,!0,!0):ls(this,b,a.j,!1,null,!0,!0,!0);return b};z.defineProperty(ch,{Ce:"arrangementOrigin"},function(){return this.hr},function(a){z.l(a,M,ch,"arrangementOrigin");this.hr.O(a)||(this.hr.assign(a),this.N())}); -ch.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.cb(hc),(isNaN(c.x)||isNaN(c.y))&&c.set(a),c.x+=b.padding.left,c.y+=b.padding.top);return c}return a};function ya(){z.xc(this);this.we=null;this.clear()}z.ka("LayoutNetwork",ya); +ch.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.cb(hc),(isNaN(c.x)||isNaN(c.y))&&c.set(a),c.x+=b.padding.left,c.y+=b.padding.top);return c}return a};function ya(){z.wc(this);this.ve=null;this.clear()}z.ka("LayoutNetwork",ya); ya.prototype.clear=function(){if(this.vertexes)for(var a=this.vertexes.j;a.next();){var b=a.value;b.clear();b.network=null}if(this.edges)for(a=this.edges.j;a.next();)b=a.value,b.clear(),b.network=null;this.vertexes=new K(za);this.edges=new K(Aa);this.jB=new oa(E,za);this.WA=new oa(H,Aa)}; -ya.prototype.toString=function(a){void 0===a&&(a=0);var b="LayoutNetwork"+(null!==this.Wb?"("+this.Wb.toString()+")":"");if(0>=a)return b;b+=" vertexes: "+this.vertexes.count+" edges: "+this.edges.count;if(1=a)return b;b+=" vertexes: "+this.vertexes.count+" edges: "+this.edges.count;if(1d?1:0):1:null!==d?-1:0}; +z.w(za,{pK:"sourceVertexes"},function(){for(var a=new K(za),b=this.vc;b.next();)a.add(b.value.fromVertex);return a.j});z.w(za,{pI:"destinationVertexes"},function(){for(var a=new K(za),b=this.sc;b.next();)a.add(b.value.toVertex);return a.j});z.w(za,{vertexes:"vertexes"},function(){for(var a=new K(za),b=this.vc;b.next();)a.add(b.value.fromVertex);for(b=this.sc;b.next();)a.add(b.value.toVertex);return a.j});z.w(za,{vc:"sourceEdges"},function(){return this.of.j});z.w(za,{sc:"destinationEdges"},function(){return this.jf.j}); +z.w(za,{edges:"edges"},function(){for(var a=new J(Aa),b=this.vc;b.next();)a.add(b.value);for(b=this.sc;b.next();)a.add(b.value);return a.j});z.w(za,{AI:"edgesCount"},function(){return this.of.count+this.jf.count});var rs;za.standardComparer=rs=function(a,b){u&&z.l(a,za,za,"standardComparer:m");u&&z.l(b,za,za,"standardComparer:n");var c=a.Qd,d=b.Qd;return c?d?(c=c.text,d=d.text,cd?1:0):1:null!==d?-1:0}; za.smartComparer=function(a,b){u&&z.l(a,za,za,"smartComparer:m");u&&z.l(b,za,za,"smartComparer:n");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=g&&0>=h&&(g=1);a=this.spacing.width;isFinite(a)||(a=0);c=this.spacing.height;isFinite(c)||(c=0);null!==b&&b.$b("Layout");d=[];switch(this.alignment){case As:var k=a,l=c,m=Math.max(this.Zp.width,1);if(!isFinite(m))for(var n=m=0;ng-1||0h)d.push(new w(0,x,h+k,A)),y=0,t=v,x+=A,A=0;A=Math.max(A,N);N=0;switch(s){case zs:N=-q.width;break;default:N=0}p.moveTo(t+N,x);switch(s){case zs:t-=B;break; -default:t+=B}y++}d.push(new w(0,x,h+k,A));break;case ss:k=g;l=a;m=c;n=Math.max(this.Zp.width,1);p=x=B=0;q=z.P();for(g=0;g=B&&(h-=B);for(var B=N=0,G=Math.max(this.Zp.height,1),fa=p=0,W=!0,P=z.P(),g=0;gk-1||0h){d.push(new w(0,W?y-p:y,h+l,fa+p+m));for(T=0;TB&&(e.width+=e.x-B,e.x=B)}for(k=g=h=e=0;k=g&&0>=h&&(g=1);a=this.spacing.width;isFinite(a)||(a=0);c=this.spacing.height;isFinite(c)||(c=0);null!==b&&b.$b("Layout");d=[];switch(this.alignment){case As:var k=a,l=c,m=Math.max(this.Yp.width,1);if(!isFinite(m))for(var n=m=0;ng-1||0h)d.push(new w(0,x,h+k,B)),y=0,t=v,x+=B,B=0;B=Math.max(B,N);N=0;switch(s){case zs:N=-q.width;break;default:N=0}p.moveTo(t+N,x);switch(s){case zs:t-=A;break; +default:t+=A}y++}d.push(new w(0,x,h+k,B));break;case ss:k=g;l=a;m=c;n=Math.max(this.Yp.width,1);p=x=A=0;q=z.P();for(g=0;g=A&&(h-=A);for(var A=N=0,G=Math.max(this.Yp.height,1),fa=p=0,W=!0,P=z.P(),g=0;gk-1||0h){d.push(new w(0,W?y-p:y,h+l,fa+p+m));for(T=0;TA&&(e.width+=e.x-A,e.x=A)}for(k=g=h=e=0;kd?1:0}; On.smartComparer=function(a,b){u&&z.l(a,D,On,"standardComparer:a");u&&z.l(b,D,On,"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.oa=0,a.xa=0);else{var b=new J(Ts);b.Uc(a.j);a=new J(Ts);var c=new J(Ts),d;d=this.sort(b);var e=this.nz,g=this.RC,h=this.ie,k=this.Wo,l=this.oz,m=this.Lr,b=this.tl,n=this.hE,p=this.Qg,q=this.zv,e=this.ag,g=this.by,h=this.UJ;if(!isFinite(h)|| +Bs.prototype.doLayout=function(a){null===a&&z.k("Layout.doLayout(collection) argument must not be null but a Diagram, a Group, or an Iterable of Parts");null===this.network&&(this.network=this.makeNetwork(a));a=this.network.vertexes;if(1>=a.count)1===a.count&&(a=a.first(),a.oa=0,a.xa=0);else{var b=new J(Ts);b.Uc(a.j);a=new J(Ts);var c=new J(Ts),d;d=this.sort(b);var e=this.nz,g=this.RC,h=this.he,k=this.Vo,l=this.oz,m=this.Lr,b=this.tl,n=this.hE,p=this.Qg,q=this.zv,e=this.ag,g=this.by,h=this.UJ;if(!isFinite(h)|| 0>=h)h=NaN;k=this.RH;if(!isFinite(k)||0>=k)k=1;l=this.Me;isFinite(l)||(l=0);m=this.Bf;if(!isFinite(m)||360m)m=360;b=this.spacing;isFinite(b)||(b=NaN);e===Qs&&g===Rs?e=Cs:e===Qs&&g!==Rs&&(g=Rs,e=this.ag);if((this.direction===Ls||this.direction===Ms)&&this.sorting!==Fs){for(var r=0;!(r>=d.length);r+=2){a.add(d.fa(r));if(r+1>=d.length)break;c.add(d.fa(r+1))}this.direction===Ls?(this.ag===Qs&&a.reverse(),d=new J(Ts),d.Uc(a),d.Uc(c)):(this.ag===Qs&&c.reverse(),d=new J(Ts),d.Uc(c),d.Uc(a))}for(var s= d.length,v=n=0,r=0;rm&&(0===r||r===d.length-1)&&(t/=2);n+=t;v++}if(isNaN(h)||e===Qs){isNaN(b)&&(b=6);if(e!==Cs&&e!==Qs){t=-Infinity;for(r=0;rh?(h=r,p=h*k):q=v/(360<=m?s:s-1)}this.nz=e;this.RC=g;this.ie=h;this.Wo=k;this.oz=l;this.Lr=m;this.tl=b;this.hE=n;this.Qg=p;this.zv=q;b=d;d=this.nz;e=this.ie;g=this.oz;k=this.Lr;l=this.tl;m=this.Qg;n=this.zv;if(this.direction!==Ls&&this.direction!==Ms||d!==Qs)if(this.direction===Ls||this.direction===Ms){h=0;switch(d){case Ps:h=180*Xs(this,e,m,g,n)/Math.PI;break;case Cs:n=b=0;h=a.first();null!==h&&(b=Us(h,Math.PI/2));h=c.first();null!==h&&(n=Us(h,Math.PI/2));h=180*Xs(this,e,m,g,l+(b+ +m*Math.PI/180);r>h?(h=r,p=h*k):q=v/(360<=m?s:s-1)}this.nz=e;this.RC=g;this.he=h;this.Vo=k;this.oz=l;this.Lr=m;this.tl=b;this.hE=n;this.Qg=p;this.zv=q;b=d;d=this.nz;e=this.he;g=this.oz;k=this.Lr;l=this.tl;m=this.Qg;n=this.zv;if(this.direction!==Ls&&this.direction!==Ms||d!==Qs)if(this.direction===Ls||this.direction===Ms){h=0;switch(d){case Ps:h=180*Xs(this,e,m,g,n)/Math.PI;break;case Cs:n=b=0;h=a.first();null!==h&&(b=Us(h,Math.PI/2));h=c.first();null!==h&&(n=Us(h,Math.PI/2));h=180*Xs(this,e,m,g,l+(b+ n)/2)/Math.PI;break;case Os:h=k/b.length}if(this.direction===Ls){switch(d){case Ps:Ys(this,a,g,Ns);break;case Cs:Zs(this,a,g,Ns);break;case Os:$s(this,a,k/2,g,Ns)}switch(d){case Ps:Ys(this,c,g+h,Es);break;case Cs:Zs(this,c,g+h,Es);break;case Os:$s(this,c,k/2,g+h,Es)}}else{switch(d){case Ps:Ys(this,c,g,Ns);break;case Cs:Zs(this,c,g,Ns);break;case Os:$s(this,c,k/2,g,Ns)}switch(d){case Ps:Ys(this,a,g+h,Es);break;case Cs:Zs(this,a,g+h,Es);break;case Os:$s(this,a,k/2,g+h,Es)}}}else switch(d){case Ps:Ys(this, b,g,this.direction);break;case Cs:Zs(this,b,g,this.direction);break;case Os:$s(this,b,k,g,this.direction);break;case Qs:at(this,b,k,g,this.direction)}else at(this,b,k,g-k/2,Es)}this.updateParts();this.network=null;this.Jf=!0}; -function $s(a,b,c,d,e){var g=a.Lr,h=a.ie;a=a.Qg;d=d*Math.PI/180;c=c*Math.PI/180;for(var k=b.length,l=0;lc){for(g=d+(e===Es?g:-g);0>g;)g+=360;g%=360;180c){for(g=d+(e===Es?g:-g);0>g;)g+=360;g%=360;180=n.length-1)break;dt(a,l,m,n,p,e,g)||et(a,l,m,n,p,e,g);l=g.x;m=g.y}z.A(g);a.fn++;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.fn?a.ie-h/(2*Math.PI):5>n.length&&10=p.length-1)break;dt(a,l,m,p,q,e,n)||et(a,l,m,p,q,e,n);l=n.x;m=n.y}z.A(n);a.fn++;if(!(23a.fn?a.ie-g/(2*Math.PI):a.ie-(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 et(a,b,c,d,e,g,h){var k=a.ie,l=a.Qg,m=0,n=0;a=(d[e].height+d[e+1].height)/2+a.tl;d=!1;if(0<=b!==(g===Es)){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}Bs.prototype.commitLayout=function(){this.commitNodes();this.wu&&this.commitLinks()}; +h=Math.min(h,-n[n.length-1].height);a.Zw.compare(h,n);1a.fn?a.he-h/(2*Math.PI):5>n.length&&10=p.length-1)break;dt(a,l,m,p,q,e,n)||et(a,l,m,p,q,e,n);l=n.x;m=n.y}z.A(n);a.fn++;if(!(23a.fn?a.he-g/(2*Math.PI):a.he-(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 et(a,b,c,d,e,g,h){var k=a.he,l=a.Qg,m=0,n=0;a=(d[e].height+d[e+1].height)/2+a.tl;d=!1;if(0<=b!==(g===Es)){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}Bs.prototype.commitLayout=function(){this.commitNodes();this.wu&&this.commitLinks()}; Bs.prototype.commitNodes=function(){for(var a=this.GH,b=this.network.vertexes.j;b.next();){var c=b.value;c.x+=a.x;c.y+=a.y;c.commit()}};Bs.prototype.commitLinks=function(){for(var a=this.network.edges.j;a.next();)a.value.commit()}; -function Ws(a,b,c,d,e){var g=a.vH;if(.001>Math.abs(a.Wo-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 Vs(a,b,c,d,e){var g=0,g=void 0!==d&&void 0!==e?Ws(a,1,c,d,e):Ws(a,1,c);return b/g} -function Xs(a,b,c,d,e){if(.001>Math.abs(a.Wo-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}} -Bs.prototype.sort=function(a){switch(this.sorting){case Js:break;case Ks:a.reverse();break;case Hs:a.sort(this.comparer);break;case Is:a.sort(this.comparer);a.reverse();break;case Fs:for(var b=[],c=0;ce&&(e=k,g=h)}else for(h=0;he&&(e=k,g=h);d.add(a.fa(g));b[g]=-1;g=a.fa(g);e=0;for(h=g.wc;h.next();)e=a.indexOf(h.value.fromVertex),0>e||0<=b[e]&& -b[e]++;for(g=g.tc;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.wc;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])&&v.push(p===c.length-1?0:p+1);if(0===v.length)for(p=0;pN.indexOf(W)||PN.indexOf(W)|| -P=t?l+1:l)),y+=l=t&&l++,B>=t&&B++,l>B&&(N=B,B=l,l=N),B-l<(c.length+2)/2===(lMath.abs(a.Vo-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 Vs(a,b,c,d,e){var g=0,g=void 0!==d&&void 0!==e?Ws(a,1,c,d,e):Ws(a,1,c);return b/g} +function Xs(a,b,c,d,e){if(.001>Math.abs(a.Vo-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}} +Bs.prototype.sort=function(a){switch(this.sorting){case Js:break;case Ks:a.reverse();break;case Hs:a.sort(this.comparer);break;case Is:a.sort(this.comparer);a.reverse();break;case Fs:for(var b=[],c=0;ce&&(e=k,g=h)}else for(h=0;he&&(e=k,g=h);d.add(a.fa(g));b[g]=-1;g=a.fa(g);e=0;for(h=g.vc;h.next();)e=a.indexOf(h.value.fromVertex),0>e||0<=b[e]&& +b[e]++;for(g=g.sc;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.vc;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])&&v.push(p===c.length-1?0:p+1);if(0===v.length)for(p=0;pN.indexOf(W)||PN.indexOf(W)|| +P=t?l+1:l)),y+=l=t&&l++,A>=t&&A++,l>A&&(N=A,A=l,l=N),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.N())}); z.defineProperty(Bs,{ag:"arrangement"},function(){return this.yd},function(a){this.yd!==a&&(z.Ca(a,Bs,Bs,"arrangement"),a===Qs||a===Cs||a===Ps||a===Os)&&(this.yd=a,this.N())});z.defineProperty(Bs,{direction:"direction"},function(){return this.ga},function(a){this.ga!==a&&(z.Ca(a,Bs,Bs,"direction"),a===Es||a===Ns||a===Ls||a===Ms)&&(this.ga=a,this.N())}); z.defineProperty(Bs,{sorting:"sorting"},function(){return this.qi},function(a){this.qi!==a&&(z.Ca(a,Bs,Bs,"sorting"),a===Js||a===Ks||a===Hs||Is||a===Fs)&&(this.qi=a,this.N())});z.defineProperty(Bs,{comparer:"comparer"},function(){return this.Zh},function(a){this.Zh!==a&&(z.h(a,"function",Bs,"comparer"),this.Zh=a,this.N())});z.defineProperty(Bs,{spacing:"spacing"},function(){return this.ri},function(a){this.ri!==a&&(z.h(a,"number",Bs,"spacing"),this.ri=a,this.N())}); -z.defineProperty(Bs,{by:"nodeDiameterFormula"},function(){return this.Ms},function(a){this.Ms!==a&&(z.Ca(a,Bs,Bs,"nodeDiameterFormula"),a===Gs||a===Rs)&&(this.Ms=a,this.N())});z.w(Bs,{HH:"actualXRadius"},function(){return this.ie});z.w(Bs,{IH:"actualYRadius"},function(){return this.Qg});z.w(Bs,{JK:"actualSpacing"},function(){return this.tl});z.w(Bs,{GH:"actualCenter"},function(){return isNaN(this.Ce.x)||isNaN(this.Ce.y)?new M(0,0):new M(this.Ce.x+this.HH,this.Ce.y+this.IH)});var Cs; +z.defineProperty(Bs,{by:"nodeDiameterFormula"},function(){return this.Ms},function(a){this.Ms!==a&&(z.Ca(a,Bs,Bs,"nodeDiameterFormula"),a===Gs||a===Rs)&&(this.Ms=a,this.N())});z.w(Bs,{HH:"actualXRadius"},function(){return this.he});z.w(Bs,{IH:"actualYRadius"},function(){return this.Qg});z.w(Bs,{JK:"actualSpacing"},function(){return this.tl});z.w(Bs,{GH:"actualCenter"},function(){return isNaN(this.Ce.x)||isNaN(this.Ce.y)?new M(0,0):new M(this.Ce.x+this.HH,this.Ce.y+this.IH)});var Cs; Bs.ConstantSpacing=Cs=z.s(Bs,"ConstantSpacing",0);var Ps;Bs.ConstantDistance=Ps=z.s(Bs,"ConstantDistance",1);var Os;Bs.ConstantAngle=Os=z.s(Bs,"ConstantAngle",2);var Qs;Bs.Packed=Qs=z.s(Bs,"Packed",3);var Es;Bs.Clockwise=Es=z.s(Bs,"Clockwise",4);var Ns;Bs.Counterclockwise=Ns=z.s(Bs,"Counterclockwise",5);var Ls;Bs.BidirectionalLeft=Ls=z.s(Bs,"BidirectionalLeft",6);var Ms;Bs.BidirectionalRight=Ms=z.s(Bs,"BidirectionalRight",7);var Js;Bs.Forwards=Js=z.s(Bs,"Forwards",8);var Ks; -Bs.Reverse=Ks=z.s(Bs,"Reverse",9);var Hs;Bs.Ascending=Hs=z.s(Bs,"Ascending",10);var Is;Bs.Descending=Is=z.s(Bs,"Descending",11);var Fs;Bs.Optimized=Fs=z.s(Bs,"Optimized",12);var Gs;Bs.Pythagorean=Gs=z.s(Bs,"Pythagorean",13);var Rs;Bs.Circular=Rs=z.s(Bs,"Circular",14);function Ds(){this.nq=-Infinity;this.Yq=this.xo=null} -Ds.prototype.compare=function(a,b){if(0this.nq||Math.abs(a)a&&0this.mq||Math.abs(a)a&&0g?(e=n.x+n.width/2,k=n.y+n.height/2,l[0]=new M(n.x+n.width+d.width,n.y),l[1]=new M(n.x,n.y+n.height+d.height),g=2):(p=Wt(l,g, -e,k,n.width,n.height,d),q=l[p],r=new M(q.x+n.width+d.width,q.y),s=new M(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().sb,d=this.network.vertexes.j;d.next();){if(d.value.sb.Vg(c)&&(a++,2a.network.vertexes.count)return!1;null===a.Pg?a.Pg=new J(bu):a.Pg.clear();a.Pg.Uc(a.network.vertexes);var c=a.Pg;c.sort(function(a,b){return null===a||null===b||a===b?0:b.pg-a.pg});for(var d=c.count-1;0<=d&&1>=c.fa(d).pg;)d--;return 1=h))){for(var m=0,n=0,p=l.count-h;ps&&(s=1);m=pe((m+s+n*n*4/(h*h))/s);h=(m-1)*p/2;m=(m-1)*q/2;g.sb=new w(l-r.x-h,k-r.y-m,p+2*h,q+2*m);g.focus=new M(r.x+h,r.y+m)}a.network=d;return c} function au(a,b,c){u&&(z.l(b,ht,gt,"popNetwork:oldnet"),z.p(c,gt,"popNetwork:level"));for(c=a.network.vertexes.j;c.next();){var d=c.value;d.network=b;if(null!==d.Uh){var e=d.Uh.fa(d.tB);d.pg=e.Iy;var g=e.WB,h=e.XB;d.sb=new w(d.oa-g,d.xa-h,e.Jy,e.Hy);d.focus=new M(g,h);d.tB--}}for(c=a.network.edges.j;c.next();)c.value.network=b;a.network=b} function cu(a,b,c){u&&(z.l(b,bu,gt,"surroundNode:oldnet"),z.p(c,gt,"surroundNode:level"));var d=b.Gn;if(null!==d&&0!==d.count){c=b.oa;var e=b.xa,g=b.width,h=b.height;null!==b.Uh&&0=p.pg?l++:(k=!0,m++,h+=Math.atan2(b.xa-p.xa,b.oa-p.oa))}if(0!==l)for(0>1)+m)*(0===k%2?1:-1);l.oa=c+n*Math.cos(p);l.xa=e+n*Math.sin(p);k++}}} function Wt(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,pe(d*d+e*e)):e+ck+m?e>l+h?(d=d-k-m,e=e-l-h,pe(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.oa,e=d,g=c.xa,h=g,c=1;ch-g)?b.sort(function(a,b){return null===a||null===b||a===b?0:a.oa-b.oa}):b.sort(function(a,b){return null===a||null===b||a===b?0:a.xa-b.xa});for(var h=a.di,m=0,n=0,p=0,c=0;cr?(p=Math.abs(e.R.bottom-k.R.y),p=(1+p)*s):ds?(n=a.my,null===n&&(a.my=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.di/20,50);for(e=0;ed&&(g=d),h<-d?h=-d:h>d&&(h=d),k.oa+=g,k.xa+=h,c=Math.max(c,g*g+h*h));return c>a.bF*a.bF}gt.prototype.moveFixedVertex=function(){}; gt.prototype.commitLayout=function(){this.AB();this.commitNodes();this.wu&&this.commitLinks()};gt.prototype.AB=function(){if(this.Sq)for(var a=this.network.edges.j;a.next();){var b=a.value.link;null!==b&&(b.Gb=Rc,b.Hb=Rc)}};gt.prototype.commitNodes=function(){var a=0,b=0;if(this.QH){var c=z.Of();this.Jh(this.network,c);b=this.Ce;a=b.x-c.x;b=b.y-c.y;z.Mb(c)}for(var c=z.Of(),d=this.network.vertexes.j;d.next();){var e=d.value;if(0!==a||0!==b)c.assign(e.sb),c.x+=a,c.y+=b,e.sb=c;e.commit()}z.Mb(c)}; -gt.prototype.commitLinks=function(){for(var a=this.network.edges.j;a.next();)a.value.commit()};gt.prototype.springStiffness=function(a){a=a.stiffness;return isNaN(a)?this.So:a};gt.prototype.springLength=function(a){a=a.length;return isNaN(a)?this.Ro:a};gt.prototype.electricalCharge=function(a){a=a.charge;return isNaN(a)?this.Po:a};gt.prototype.electricalFieldX=function(){return 0};gt.prototype.electricalFieldY=function(){return 0}; -gt.prototype.gravitationalMass=function(a){a=a.mass;return isNaN(a)?this.Qo:a};gt.prototype.gravitationalFieldX=function(){return 0};gt.prototype.gravitationalFieldY=function(){return 0};gt.prototype.isFixed=function(a){return a.isFixed};z.w(gt,{lL:"currentIteration"},function(){return this.ms});z.defineProperty(gt,{AE:"arrangementSpacing"},function(){return this.sg},function(a){z.l(a,Fa,gt,"arrangementSpacing");this.sg.O(a)||(this.sg.assign(a),this.N())}); +gt.prototype.commitLinks=function(){for(var a=this.network.edges.j;a.next();)a.value.commit()};gt.prototype.springStiffness=function(a){a=a.stiffness;return isNaN(a)?this.Ro:a};gt.prototype.springLength=function(a){a=a.length;return isNaN(a)?this.Qo:a};gt.prototype.electricalCharge=function(a){a=a.charge;return isNaN(a)?this.Oo:a};gt.prototype.electricalFieldX=function(){return 0};gt.prototype.electricalFieldY=function(){return 0}; +gt.prototype.gravitationalMass=function(a){a=a.mass;return isNaN(a)?this.Po:a};gt.prototype.gravitationalFieldX=function(){return 0};gt.prototype.gravitationalFieldY=function(){return 0};gt.prototype.isFixed=function(a){return a.isFixed};z.w(gt,{lL:"currentIteration"},function(){return this.ms});z.defineProperty(gt,{AE:"arrangementSpacing"},function(){return this.sg},function(a){z.l(a,Fa,gt,"arrangementSpacing");this.sg.O(a)||(this.sg.assign(a),this.N())}); z.defineProperty(gt,{QH:"arrangesToOrigin"},function(){return this.ir},function(a){this.ir!==a&&(z.h(a,"boolean",gt,"arrangesToOrigin"),this.ir=a,this.N())});z.defineProperty(gt,{Sq:"setsPortSpots"},function(){return this.pi},function(a){this.pi!==a&&(z.h(a,"boolean",gt,"setsPortSpots"),this.pi=a,this.N())});z.defineProperty(gt,{comments:"comments"},function(){return this.Yh},function(a){this.Yh!==a&&(z.h(a,"boolean",gt,"comments"),this.Yh=a,this.N())}); -z.defineProperty(gt,{$A:"maxIterations"},function(){return this.wp},function(a){this.wp!==a&&(z.h(a,"number",gt,"maxIterations"),0<=a&&(this.wp=a,this.N()))});z.defineProperty(gt,{bF:"epsilonDistance"},function(){return this.Pr},function(a){this.Pr!==a&&(z.h(a,"number",gt,"epsilonDistance"),0b.toVertex.index&&(this.network.sy(b),b.rev=!0);break;case iu:for(b=this.network.vertexes.j;b.next();)a=b.value,a.hq=-1,a.finish=-1;for(a=this.network.edges.j;a.next();)a.value.forest=!1;this.Is=0;for(b.reset();b.next();)c=b.value,0===c.wc.count&&su(this,c);for(b.reset();b.next();)c=b.value,-1===c.hq&&su(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.hqb.toVertex.index&&(this.network.sy(b),b.rev=!0);break;case iu:for(b=this.network.vertexes.j;b.next();)a=b.value,a.gq=-1,a.finish=-1;for(a=this.network.edges.j;a.next();)a.value.forest=!1;this.Is=0;for(b.reset();b.next();)c=b.value,0===c.vc.count&&su(this,c);for(b.reset();b.next();)c=b.value,-1===c.gq&&su(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.gqs&&0s&&0b[this.Vf]&&(this.iw=b[c]-1,this.Vf=c),b[c]s&&0s&&0b[this.Vf]&&(this.iw=b[c]-1,this.Vf=c),b[c]h)for(var p=h+1;pn;p--)l=d[p],l.near===m&&l.Dn===m.Dn||k++;var m=0,q,r=q=p=l=0,s,v=0,t=0;s=0;var x;if(0<=c)for(n=d[h].of,m=0;mh)for(var p=h+1;pn;p--)l=d[p],l.near===m&&l.Dn===m.Dn||k++;var m=0,q,r=q=p=l=0,s,v=0,t=0;s=0;var x;if(0<=c)for(n=d[h].of,m=0;mv||l===v&&q>s)&&k++,tl||v===l&&s>q)&&k++);if(0>=c)for(n=d[h].jf,m=0;mv||l===v&&p>t)&&k++, -sl||v===l&&t>p)&&k++);g[h*e+h]=k;for(n=h+1;n=c)for(k=d[h].jf,x=d[n].jf,m=0;ml||v===l&&t>p)&&k++);g[h*e+h]=k;for(n=h+1;n=c)for(k=d[h].jf,x=d[n].jf,m=0;m=c&&(l=k.of);var m=null;0<=c&&(m=k.jf);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.of);var m=null;0<=c&&(m=k.jf);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.of);var m=null;0<=c&&(m=k.jf);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)}wu(a,b,d);return g}function Eu(a,b,c,d,e,g){if(b.component===d){b.component=c;var h=0,k=0;if(e)for(var l=b.tc;l.next();){var k=l.value,m=k.toVertex,h=b.layer-m.layer,k=a.linkMinLength(k);h===k&&Eu(a,m,c,d,e,g)}if(g)for(l=b.wc;l.next();)k=l.value,m=k.fromVertex,h=m.layer-b.layer,k=a.linkMinLength(k),h===k&&Eu(a,m,c,d,e,g)}} -function Fu(a,b,c,d,e,g){if(b.component===d){b.component=c;if(e)for(var h=b.tc;h.next();)Fu(a,h.value.toVertex,c,d,e,g);if(g)for(b=b.wc;b.next();)Fu(a,b.value.fromVertex,c,d,e,g)}}function pu(a){for(a=a.vertexes.j;a.next();){var b=a.value;if(b.valid)return b}return null}function qu(a){for(a=a.vertexes.j;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.tc;d.next();)if(d.value.toVertex.valid){c=!1;break}if(c)return b}}return null} -function ru(a){for(a=a.vertexes.j;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.wc;d.next();)if(d.value.fromVertex.valid){c=!1;break}if(c)return b}}return null}function su(a,b){b.hq=a.Is;a.Is++;for(var c=b.tc;c.next();){var d=c.value,e=d.toVertex;-1===e.hq&&(d.forest=!0,su(a,e))}b.finish=a.Is;a.Is++} -hu.prototype.assignLayers=function(){switch(this.rp){case Gu:Hu(this);break;case Iu:for(var a=0,b=this.network.vertexes.j;b.next();)a=Ju(this,b.value),this.zb=Math.max(a,this.zb);for(b.reset();b.next();)a=b.value,a.layer=this.zb-a.layer;break;default:case ju:Hu(this);for(b=this.network.vertexes.j;b.next();)b.value.valid=!1;for(b.reset();b.next();)a=b.value,0===a.wc.count&&Ku(this,a);a=Infinity;for(b.reset();b.next();)a=Math.min(a,b.value.layer);this.zb=-1;for(b.reset();b.next();){var c=b.value;c.layer-= -a;this.zb=Math.max(this.zb,c.layer)}}};function Hu(a){for(var b=a.network.vertexes.j;b.next();){var c=Lu(a,b.value);a.zb=Math.max(c,a.zb)}}function Lu(a,b){var c=0;if(-1===b.layer){for(var d=b.tc;d.next();)var e=d.value,g=e.toVertex,e=a.linkMinLength(e),c=Math.max(c,Lu(a,g)+e);b.layer=c}else c=b.layer;return c}function Ju(a,b){var c=0;if(-1===b.layer){for(var d=b.wc;d.next();)var e=d.value,g=e.fromVertex,e=a.linkMinLength(e),c=Math.max(c,Ju(a,g)+e);b.layer=c}else c=b.layer;return c} -function Ku(a,b){if(!b.valid){b.valid=!0;for(var c=b.tc;c.next();)Ku(a,c.value.toVertex);for(c=a.network.vertexes.j;c.next();)c.value.component=-1;for(var d=b.of.o,e=d.length,g=0;gk&&Eu(a,h.fromVertex,0,-1,!0,!1)}for(Eu(a,b,1,-1,!0,!0);0!==b.component;){for(var k=0,d=Infinity,l=0,m=null,n=a.network.vertexes.j;n.next();){var p=n.value;if(1===p.component){for(var q=0,r=!1,s=p.of.o,e=s.length,g=0;g=c&&(l=k.of);var m=null;0<=c&&(m=k.jf);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)}wu(a,b,d);return g}function Eu(a,b,c,d,e,g){if(b.component===d){b.component=c;var h=0,k=0;if(e)for(var l=b.sc;l.next();){var k=l.value,m=k.toVertex,h=b.layer-m.layer,k=a.linkMinLength(k);h===k&&Eu(a,m,c,d,e,g)}if(g)for(l=b.vc;l.next();)k=l.value,m=k.fromVertex,h=m.layer-b.layer,k=a.linkMinLength(k),h===k&&Eu(a,m,c,d,e,g)}} +function Fu(a,b,c,d,e,g){if(b.component===d){b.component=c;if(e)for(var h=b.sc;h.next();)Fu(a,h.value.toVertex,c,d,e,g);if(g)for(b=b.vc;b.next();)Fu(a,b.value.fromVertex,c,d,e,g)}}function pu(a){for(a=a.vertexes.j;a.next();){var b=a.value;if(b.valid)return b}return null}function qu(a){for(a=a.vertexes.j;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.sc;d.next();)if(d.value.toVertex.valid){c=!1;break}if(c)return b}}return null} +function ru(a){for(a=a.vertexes.j;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.vc;d.next();)if(d.value.fromVertex.valid){c=!1;break}if(c)return b}}return null}function su(a,b){b.gq=a.Is;a.Is++;for(var c=b.sc;c.next();){var d=c.value,e=d.toVertex;-1===e.gq&&(d.forest=!0,su(a,e))}b.finish=a.Is;a.Is++} +hu.prototype.assignLayers=function(){switch(this.qp){case Gu:Hu(this);break;case Iu:for(var a=0,b=this.network.vertexes.j;b.next();)a=Ju(this,b.value),this.zb=Math.max(a,this.zb);for(b.reset();b.next();)a=b.value,a.layer=this.zb-a.layer;break;default:case ju:Hu(this);for(b=this.network.vertexes.j;b.next();)b.value.valid=!1;for(b.reset();b.next();)a=b.value,0===a.vc.count&&Ku(this,a);a=Infinity;for(b.reset();b.next();)a=Math.min(a,b.value.layer);this.zb=-1;for(b.reset();b.next();){var c=b.value;c.layer-= +a;this.zb=Math.max(this.zb,c.layer)}}};function Hu(a){for(var b=a.network.vertexes.j;b.next();){var c=Lu(a,b.value);a.zb=Math.max(c,a.zb)}}function Lu(a,b){var c=0;if(-1===b.layer){for(var d=b.sc;d.next();)var e=d.value,g=e.toVertex,e=a.linkMinLength(e),c=Math.max(c,Lu(a,g)+e);b.layer=c}else c=b.layer;return c}function Ju(a,b){var c=0;if(-1===b.layer){for(var d=b.vc;d.next();)var e=d.value,g=e.fromVertex,e=a.linkMinLength(e),c=Math.max(c,Ju(a,g)+e);b.layer=c}else c=b.layer;return c} +function Ku(a,b){if(!b.valid){b.valid=!0;for(var c=b.sc;c.next();)Ku(a,c.value.toVertex);for(c=a.network.vertexes.j;c.next();)c.value.component=-1;for(var d=b.of.o,e=d.length,g=0;gk&&Eu(a,h.fromVertex,0,-1,!0,!1)}for(Eu(a,b,1,-1,!0,!0);0!==b.component;){for(var k=0,d=Infinity,l=0,m=null,n=a.network.vertexes.j;n.next();){var p=n.value;if(1===p.component){for(var q=0,r=!1,s=p.of.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 uu(a,b,c){return 90===a.ga?c&&!b.rev||!c&&b.rev?270:90:180===a.ga?c&&!b.rev||!c&&b.rev?0:180:270===a.ga?c&&!b.rev||!c&&b.rev?90:270:c&&!b.rev||!c&&b.rev?180:0} -hu.prototype.initializeIndices=function(){switch(this.gp){default:case Mu:for(var a=this.network.vertexes.j;a.next();){var b=a.value,c=b.layer;b.index=this.ve[c];this.ve[c]++}break;case ku:a=this.network.vertexes.j;for(b=this.zb;0<=b;b--)for(a.reset();a.next();)c=a.value,c.layer===b&&-1===c.index&&Nu(this,c);break;case Ou:for(a=this.network.vertexes.j,b=0;b<=this.zb;b++)for(a.reset();a.next();)c=a.value,c.layer===b&&-1===c.index&&Pu(this,c)}}; -function Nu(a,b){var c=b.layer;b.index=a.ve[c];a.ve[c]++;for(var c=b.jf.nc(),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=Ru(this,d,-1)||g;e=this.countCrossings();e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=c;d>=h;d--)g=Ru(this,d,1)||g;e=this.countCrossings();e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=Ru(this,d,1)||g;e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1, +e=h;d--)g=Ru(this,d,-1)||g;e=this.countCrossings();e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=c;d>=h;d--)g=Ru(this,d,1)||g;e=this.countCrossings();e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=Ru(this,d,1)||g;e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1, d=h;d<=c;d++)g=Ru(this,d,-1)||g;e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=c;d>=h;d--)g=Ru(this,d,0)||g;e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=Ru(this,d,0)||g;e>=a?zu(this,b):(a=e,b=yu(this))}break;default:case lu:for(c=this.zb,h=0,k=a+1;(d=this.countCrossings())=h;d--)g=Ru(this,d,-1)||g;e=this.countCrossings();e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=c;d>=h;d--)g=Ru(this,d,1)||g;e=this.countCrossings(); e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=Ru(this,d,1)||g;e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=Ru(this,d,-1)||g;e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=c;d>=h;d--)g=Ru(this,d,0)||g;e>=a?zu(this,b):(a=e,b=yu(this));for(g=!0;g;)for(g=!1,d=h;d<=c;d++)g=Ru(this,d,0)||g;e>=a?zu(this,b):(a=e,b=yu(this))}}zu(this,b)}; -function Qu(a,b,c){u&&(z.p(b,hu,"medianBarycenterCrossingReduction:unfixedLayer"),z.p(c,hu,"medianBarycenterCrossingReduction:direction"));var d=0,e=vu(a,b),g=a.ve[b],h=Du(a,b,c);c=Cu(a,b,c);for(d=0;dg+1&&(q+=4*(y-g),r+=4*(y-(g+1)))}B=d[g].tc.j;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].wc.j;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].tc.j;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],N=k[d[g].index],G=h[d[g+1].index],T=k[d[g+1].index];-1!==B&&(A+=Math.abs(B-s),y+=Math.abs(B-x));-1!==N&&(A+=Math.abs(N-s),y+=Math.abs(N-x));-1!==G&&(A+=Math.abs(G-v),y+=Math.abs(G-t));-1!==T&&(A+=Math.abs(T-v),y+=Math.abs(T-t));if(rg+1&&(q+=4*(y-g),r+=4*(y-(g+1)))}A=d[g].sc.j;for(A.reset();A.next();)if(B=A.value,B.valid&&B.toVertex.layer===b){B=B.toVertex;for(y=0;d[y]!==B;)y++;y===g+1&&(r+=1)}A=d[g+1].vc.j;for(A.reset();A.next();)if(B=A.value,B.valid&&B.fromVertex.layer===b){B=B.fromVertex;for(y=0;d[y]!==B;)y++;yg+1&&(q+=4*(y-(g+1)),r+=4*(y-g))}A=d[g+1].sc.j;for(A.reset();A.next();)if(B=A.value, +B.valid&&B.toVertex.layer===b){B=B.toVertex;for(y=0;d[y]!==B;)y++;y===g&&(q+=1)}var y=B=0,A=h[d[g].index],N=k[d[g].index],G=h[d[g+1].index],T=k[d[g+1].index];-1!==A&&(B+=Math.abs(A-s),y+=Math.abs(A-x));-1!==N&&(B+=Math.abs(N-s),y+=Math.abs(N-x));-1!==G&&(B+=Math.abs(G-v),y+=Math.abs(G-t));-1!==T&&(B+=Math.abs(T-v),y+=Math.abs(T-t));if(r>1)+8*d;this.Pb*=8}if(0!==(this.mj&Vu))for(b=!0;b;){b=!1;for(a=this.Vf+1;a<=this.zb;a++)b=Wu(this,a,1)||b; for(a=this.Vf-1;0<=a;a--)b=Wu(this,a,-1)||b;b=Wu(this,this.Vf,0)||b}if(0!==(this.mj&Xu)){for(a=this.Vf+1;a<=this.zb;a++)Yu(this,a,1);for(a=this.Vf-1;0<=a;a--)Yu(this,a,-1);Yu(this,this.Vf,0)}c&&(Zu(this,-1),Zu(this,1));if(0!==(this.mj&Vu))for(b=!0;b;){b=!1;b=Wu(this,this.Vf,0)||b;for(a=this.Vf+1;a<=this.zb;a++)b=Wu(this,a,0)||b;for(a=this.Vf-1;0<=a;a--)b=Wu(this,a,0)||b}}; function Wu(a,b,c){u&&(z.p(b,hu,"bendStraighten:unfixedLayer"),z.p(c,hu,"bendStraighten:direction"));for(var d=!1;$u(a,b,c);)d=!0;return d} -function $u(a,b,c){u&&(z.p(b,hu,"shiftbendStraighten:unfixedLayer"),z.p(c,hu,"shiftbendStraighten:direction"));var d=0,e=vu(a,b),g=a.ve[b],h=Cu(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,v=0,t=0,x=0,y=0;if(0>=c)for(var A=e[d].wc.j;A.next();){var B=A.value;B.valid&&B.fromVertex.layer!==b&&(t=xu(B),x=B.portFromColOffset,y=B.portToColOffset,B=B.fromVertex.column,q+=(Math.abs(n+y-(B+x))+1)*t,s+=(Math.abs(r+y-(B+x))+1)*t,v+=(Math.abs(p+y-(B+x))+1)*t)}if(0<=c)for(A=e[d].tc.j;A.next();)B=A.value,B.valid&&B.toVertex.layer!==b&&(t=xu(B),x=B.portFromColOffset,y=B.portToColOffset,B=B.toVertex.column,q+=(Math.abs(n+x-(B+y))+1)*t,s+=(Math.abs(r+x-(B+y))+1)*t,v+=(Math.abs(p+x-(B+y))+1)*t);y= -x=t=0;A=h[e[d].index];B=k[e[d].index];-1!==A&&(t+=Math.abs(A-n),x+=Math.abs(A-r),y+=Math.abs(A-p));-1!==B&&(t+=Math.abs(B-n),x+=Math.abs(B-r),y+=Math.abs(B-p));if(sc)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,v=0,t=0,x=0,y=0;if(0>=c)for(var B=e[d].vc.j;B.next();){var A=B.value;A.valid&&A.fromVertex.layer!==b&&(t=xu(A),x=A.portFromColOffset,y=A.portToColOffset,A=A.fromVertex.column,q+=(Math.abs(n+y-(A+x))+1)*t,s+=(Math.abs(r+y-(A+x))+1)*t,v+=(Math.abs(p+y-(A+x))+1)*t)}if(0<=c)for(B=e[d].sc.j;B.next();)A=B.value,A.valid&&A.toVertex.layer!==b&&(t=xu(A),x=A.portFromColOffset,y=A.portToColOffset,A=A.toVertex.column,q+=(Math.abs(n+x-(A+y))+1)*t,s+=(Math.abs(r+x-(A+y))+1)*t,v+=(Math.abs(p+x-(A+y))+1)*t);y= +x=t=0;B=h[e[d].index];A=k[e[d].index];-1!==B&&(t+=Math.abs(B-n),x+=Math.abs(B-r),y+=Math.abs(B-p));-1!==A&&(t+=Math.abs(A-n),x+=Math.abs(A-r),y+=Math.abs(A-p));if(s=c[d]?n=q:p<=c[d]&&(n=p));n!==k&&(h=!0,e[d].column=n)}wu(a,b,e);a.normalize()} function av(a,b){u&&(z.p(b,hu,"packAux:column"),z.p(1,hu,"packAux:direction"));for(var c=!0,d=a.network.vertexes.j;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 bv(a,b){u&&(z.p(b,hu,"tightPackAux:column"),z.p(1,hu,"tightPackAux:direction"));for(var c=b,c=b+1,d=0,e=[],g=[],d=0;d<=a.zb;d++)e[d]=!1,g[d]=!1;for(var h=a.network.vertexes.j;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.zb;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 Zu(a,b){u&&z.p(b,hu,"componentPack:direction");for(var c=0;c<=a.Pb;c++)for(;av(a,c););a.normalize();for(c=0;ce?zu(a,d):hb)for(c=a.Pb;0<=c;c--)for(d=yu(a),e=Bu(a),g=e+1;ee?zu(a,d):hc)for(d.reset();d.next();)e=d.value,e.column+a.nodeMinColumnSpace(e,!1)>=b&&(e.component=a.Hg);a.Hg++;for(d.reset();d.next();)b=d.value,-1===b.component&&(Fu(a,b,a.Hg,-1,!0,!0),a.Hg++);var g=0;b=[];for(g=0;gc)for(k=a.Pb;0c)for(d.reset();d.next();)c=d.value,e[c.component]&&(c.column+=1)} +0;gc)for(d.reset();d.next();)c=d.value,e[c.component]&&(c.column+=1)} hu.prototype.commitLayout=function(){if(this.Sq)for(var a=tu(this,!0),b=tu(this,!1),c=this.network.edges.j;c.next();){var d=c.value.link;null!==d&&(d.Gb=a,d.Hb=b)}this.commitNodes();this.mA();this.wu&&this.commitLinks()};function tu(a,b){return 270===a.ga?b?$c:cd:90===a.ga?b?cd:$c:180===a.ga?b?ad:bd:b?bd:ad} hu.prototype.commitNodes=function(){this.Fg=[];this.Uf=[];this.Tf=[];this.Vb=[];for(var a=0;a<=this.zb;a++)this.Fg[a]=0,this.Uf[a]=0,this.Tf[a]=0,this.Vb[a]=0;for(a=this.network.vertexes.j;a.next();){var b=a.value,c=b.layer;this.Fg[c]=Math.max(this.Fg[c],this.nodeMinLayerSpace(b,!0));this.Uf[c]=Math.max(this.Uf[c],this.nodeMinLayerSpace(b,!1))}for(var b=0,d=this.Xm,c=0;c<=this.zb;c++){var e=d;0>=this.Fg[c]+this.Uf[c]&&(e=0);0=Ma.R.bottom?(xa=Ma.R.y+Ma.R.height,b.B(P++,qa,xa+Ya),b.B(P++,qa,xa),b.B(P++, qa,xa-bb)):(b.B(P++,qa,ra+Ya),b.B(P++,qa,ra),b.B(P++,qa,ra-bb)):270===this.ga?ra<=Ma.R.y?(xa=Ma.R.y,b.B(P++,qa,xa-bb),b.B(P++,qa,xa),b.B(P++,qa,xa+Ya)):(b.B(P++,qa,ra-bb),b.B(P++,qa,ra),b.B(P++,qa,ra+Ya)):0===this.ga&&(qa>=Ma.R.right?(xa=Ma.R.x+Ma.R.width,b.B(P++,xa+Ya,ra),b.B(P++,xa,ra),b.B(P++,xa-bb,ra)):(b.B(P++,qa+Ya,ra),b.B(P++,qa,ra),b.B(P++,qa-bb,ra)));else{b.B(P++,db,vb);var Fd=0;if(180===this.ga||0===this.ga){if(180===this.ga?qa>=Ma.R.right:qa<=Ma.R.x)Fd=(0===this.ga?-bb:Ya)/2;b.B(P++,db+ Fd,ra)}else{if(270===this.ga?ra>=Ma.R.bottom:ra<=Ma.R.y)Fd=(90===this.ga?-bb:Ya)/2;b.B(P++,qa,vb+Fd)}b.B(P++,qa,ra)}else bb=Math.max(10,this.Fg[va.layer]),Ya=Math.max(10,this.Uf[va.layer]),180===this.ga?(T&&b.B(P++,qa-bb,ra),b.B(P++,qa,ra),T&&b.B(P++,qa+Ya,ra)):90===this.ga?(T&&b.B(P++,qa,ra+Ya),b.B(P++,qa,ra),T&&b.B(P++,qa,ra-bb)):270===this.ga?(T&&b.B(P++,qa,ra-bb),b.B(P++,qa,ra),T&&b.B(P++,qa,ra+Ya)):(T&&b.B(P++,qa+Ya,ra),b.B(P++,qa,ra),T&&b.B(P++,qa-bb,ra));Ma=va}if(null===k||b.computeSpot(!1)!== -gc||fa)if(db=b.n(P-1).x,vb=b.n(P-1).y,qa=b.n(P).x,ra=b.n(P).y,fa){var uf=this.Uf[sa.layer],ac=0;180===this.ga||0===this.ga?(ac=vb,ac>=sa.R.y&&ac<=sa.R.bottom&&(180===this.ga?qa>=sa.R.x:qa<=sa.R.right)&&(xa=sa.oa+(180===this.ga?-uf:uf),ac=ac=sa.R.x&&ac<=sa.R.right&&(270===this.ga?ra>=sa.R.y:ra<=sa.R.bottom)&&(xa=sa.xa+(270===this.ga?-uf:uf),ac=ac=sa.R.x?(xa=sa.R.x+sa.R.width,b.ja(P-2,xa,vb),b.ja(P-1,xa+Ya,vb)):90===this.ga&&ra<=sa.R.bottom?(xa=sa.R.y,b.ja(P-2,db,xa),b.ja(P-1,db,xa-bb)):270===this.ga&&ra>=sa.R.y?(xa=sa.R.y+sa.R.height,b.ja(P-2,db,xa),b.ja(P-1,db,xa+Ya)):0===this.ga&&qa<=sa.R.right&&(xa=sa.R.x,b.ja(P-2,xa,vb),b.ja(P-1,xa-bb,vb));else{bb=Math.max(10, -this.Fg[sa.layer]);Ya=Math.max(10,this.Uf[sa.layer]);Fd=0;if(180===this.ga||0===this.ga){if(180===this.ga?qa<=sa.R.x:qa>=sa.R.right)Fd=(0===this.ga?Ya:-bb)/2;b.B(P++,qa+Fd,vb)}else{if(270===this.ga?ra<=sa.R.y:ra>=sa.R.bottom)Fd=(90===this.ga?Ya:-bb)/2;b.B(P++,db,ra+Fd)}b.B(P++,qa,ra)}}else{for(;null!==sa&&sa!==Ma;){Pa=va=null;for(var Gg=sa.tc.j;Gg.next();){var Hg=Gg.value;if(Hg.link===c.link&&(va=Hg.toVertex,Pa=Hg.fromVertex,null!==Pa.Qd&&(Pa=null),null===va.Qd))break}var db=0,vb=0,qa=0,ra=0,jb=0, +gc||fa)if(db=b.n(P-1).x,vb=b.n(P-1).y,qa=b.n(P).x,ra=b.n(P).y,fa){var uf=this.Uf[sa.layer],ac=0;180===this.ga||0===this.ga?(ac=vb,ac>=sa.R.y&&ac<=sa.R.bottom&&(180===this.ga?qa>=sa.R.x:qa<=sa.R.right)&&(xa=sa.oa+(180===this.ga?-uf:uf),ac=ac=sa.R.x&&ac<=sa.R.right&&(270===this.ga?ra>=sa.R.y:ra<=sa.R.bottom)&&(xa=sa.xa+(270===this.ga?-uf:uf),ac=ac=sa.R.x?(xa=sa.R.x+sa.R.width,b.ja(P-2,xa,vb),b.ja(P-1,xa+Ya,vb)):90===this.ga&&ra<=sa.R.bottom?(xa=sa.R.y,b.ja(P-2,db,xa),b.ja(P-1,db,xa-bb)):270===this.ga&&ra>=sa.R.y?(xa=sa.R.y+sa.R.height,b.ja(P-2,db,xa),b.ja(P-1,db,xa+Ya)):0===this.ga&&qa<=sa.R.right&&(xa=sa.R.x,b.ja(P-2,xa,vb),b.ja(P-1,xa-bb,vb));else{bb=Math.max(10, +this.Fg[sa.layer]);Ya=Math.max(10,this.Uf[sa.layer]);Fd=0;if(180===this.ga||0===this.ga){if(180===this.ga?qa<=sa.R.x:qa>=sa.R.right)Fd=(0===this.ga?Ya:-bb)/2;b.B(P++,qa+Fd,vb)}else{if(270===this.ga?ra<=sa.R.y:ra>=sa.R.bottom)Fd=(90===this.ga?Ya:-bb)/2;b.B(P++,db,ra+Fd)}b.B(P++,qa,ra)}}else{for(;null!==sa&&sa!==Ma;){Pa=va=null;for(var Gg=sa.sc.j;Gg.next();){var Hg=Gg.value;if(Hg.link===c.link&&(va=Hg.toVertex,Pa=Hg.fromVertex,null!==Pa.Qd&&(Pa=null),null===va.Qd))break}var db=0,vb=0,qa=0,ra=0,jb=0, bb=0,Ya=0;if(va!==Ma)if(db=b.n(P-1).x,vb=b.n(P-1).y,qa=va.oa,ra=va.xa,fa)if(180===this.ga||0===this.ga){var re=null!==Pa?Pa.xa:vb;re!==ra&&(jb=this.Vb[va.layer],2===P&&(jb=0===this.ga?Math.max(jb,db):Math.min(jb,db)),b.B(P++,jb,vb),b.B(P++,jb,ra))}else{var fd=null!==Pa?Pa.oa:db;fd!==qa&&(jb=this.Vb[va.layer],2===P&&(jb=90===this.ga?Math.max(jb,vb):Math.min(jb,vb)),b.B(P++,db,jb),b.B(P++,qa,jb))}else bb=Math.max(10,this.Fg[va.layer]),Ya=Math.max(10,this.Uf[va.layer]),180===this.ga?(b.B(P++,qa+Ya,ra), T&&b.B(P++,qa,ra),b.B(P++,qa-bb,ra)):90===this.ga?(b.B(P++,qa,ra-bb),T&&b.B(P++,qa,ra),b.B(P++,qa,ra+Ya)):270===this.ga?(b.B(P++,qa,ra+Ya),T&&b.B(P++,qa,ra),b.B(P++,qa,ra-bb)):(b.B(P++,qa-bb,ra),T&&b.B(P++,qa,ra),b.B(P++,qa+Ya,ra));sa=va}fa&&(db=b.n(P-1).x,vb=b.n(P-1).y,qa=b.n(P).x,ra=b.n(P).y,180===this.ga||0===this.ga?vb!==ra&&(jb=0===this.ga?Math.min(Math.max((qa+db)/2,this.Vb[Ma.layer]),qa):Math.max(Math.min((qa+db)/2,this.Vb[Ma.layer]),qa),b.B(P++,jb,vb),b.B(P++,jb,ra)):db!==qa&&(jb=90===this.ga? Math.min(Math.max((ra+vb)/2,this.Vb[Ma.layer]),ra):Math.max(Math.min((ra+vb)/2,this.Vb[Ma.layer]),ra),b.B(P++,db,jb),b.B(P++,qa,jb)))}if(null!==d&&T){if(null!==h){if(b.computeSpot(!0)===gc){var Jc=b.n(0),se=b.n(2);Jc.O(se)||b.ja(1,(Jc.x+se.x)/2,(Jc.y+se.y)/2)}G=b.getLinkPoint(e,h,gc,!0,!1,g,k);G.F()||G.set(e.Z.$l);b.ja(0,G.x,G.y)}null!==k&&(b.computeSpot(!1)===gc&&(Jc=b.n(b.ua-1),se=b.n(b.ua-3),Jc.O(se)||b.ja(b.ua-2,(Jc.x+se.x)/2,(Jc.y+se.y)/2)),G=b.getLinkPoint(g,k,gc,!1,!1,e,h),G.F()||G.set(g.Z.$l), -b.ja(b.ua-1,G.x,G.y))}b.yj();c.commit()}}}for(var te=new J(H),cg=this.network.edges.j;cg.next();){var vf=cg.value.link;null!==vf&&vf.uc&&!te.contains(vf)&&te.add(vf)}if(0bc.y&&(Tb=hd.y>bc.y?0:gd.xUb.x&&(rd=di.x>Ub.x?0:Wb.yb.layer?1:a.ffb.ff?1:a.Deb.De?1:0:0};hu.prototype.yG=function(a,b){return a instanceof dv&&b instanceof dv&&a!==b?a.firstb.first||a.Jib.Ji||a.ffb.ff?1:a.Deb.De?1:0:0}; -hu.prototype.uy=function(a,b){return a instanceof dv&&b instanceof dv&&a!==b?a.seb.se||a.Jib.Ji||a.ffb.ff?1:a.Deb.De?1:0:0};function ev(a,b){u&&(z.p(a,hu,"isApprox:a"),z.p(b,hu,"isApprox:b"));var c=a-b;return-1c}function fv(a,b,c,d){u&&(z.p(a,hu,"isUnoccupied2:px"),z.p(b,hu,"isUnoccupied2:py"),z.p(c,hu,"isUnoccupied2:qx"),z.p(d,hu,"isUnoccupied2:qy"));return!0} -function vu(a,b){var c,d=a.ve[b];if(d>=a.wh.length){c=[];for(var e=0;ebc.y&&(Tb=hd.y>bc.y?0:gd.xUb.x&&(rd=di.x>Ub.x?0:Wb.yb.layer?1:a.ffb.ff?1:a.Deb.De?1:0:0};hu.prototype.yG=function(a,b){return a instanceof dv&&b instanceof dv&&a!==b?a.firstb.first||a.Jib.Ji||a.ffb.ff?1:a.Deb.De?1:0:0}; +hu.prototype.uy=function(a,b){return a instanceof dv&&b instanceof dv&&a!==b?a.reb.re||a.Jib.Ji||a.ffb.ff?1:a.Deb.De?1:0:0};function ev(a,b){u&&(z.p(a,hu,"isApprox:a"),z.p(b,hu,"isApprox:b"));var c=a-b;return-1c}function fv(a,b,c,d){u&&(z.p(a,hu,"isUnoccupied2:px"),z.p(b,hu,"isUnoccupied2:py"),z.p(c,hu,"isUnoccupied2:qx"),z.p(d,hu,"isUnoccupied2:qy"));return!0} +function vu(a,b){var c,d=a.ue[b];if(d>=a.wh.length){c=[];for(var e=0;ea&&(this.mj=a,this.N()))});z.defineProperty(hu,{Sq:"setsPortSpots"},function(){return this.pi},function(a){this.pi!==a&&(z.h(a,"boolean",hu,"setsPortSpots"),this.pi=a,this.N())});z.defineProperty(hu,{SF:"linkSpacing"},function(){return this.rs},function(a){this.rs!==a&&(z.h(a,"number",hu,"linkSpacing"),0<=a&&(this.rs=a,this.N()))});z.w(hu,{xJ:"maxLayer"},function(){return this.zb}); z.w(hu,{XL:"maxIndex"},function(){return this.iw});z.w(hu,{WL:"maxColumn"},function(){return this.Pb});z.w(hu,{bM:"minIndexLayer"},function(){return this.As});z.w(hu,{YL:"maxIndexLayer"},function(){return this.Vf});var iu;hu.CycleDepthFirst=iu=z.s(hu,"CycleDepthFirst",0);var ou;hu.CycleGreedy=ou=z.s(hu,"CycleGreedy",1);var ju;hu.LayerOptimalLinkLength=ju=z.s(hu,"LayerOptimalLinkLength",0);var Gu;hu.LayerLongestPathSink=Gu=z.s(hu,"LayerLongestPathSink",1);var Iu; hu.LayerLongestPathSource=Iu=z.s(hu,"LayerLongestPathSource",2);var ku;hu.InitDepthFirstOut=ku=z.s(hu,"InitDepthFirstOut",0);var Ou;hu.InitDepthFirstIn=Ou=z.s(hu,"InitDepthFirstIn",1);var Mu;hu.InitNaive=Mu=z.s(hu,"InitNaive",2);var Su;hu.AggressiveNone=Su=z.s(hu,"AggressiveNone",0);var lu;hu.AggressiveLess=lu=z.s(hu,"AggressiveLess",1);var Tu;hu.AggressiveMore=Tu=z.s(hu,"AggressiveMore",2);hu.PackNone=0;var Uu;hu.PackExpand=Uu=1;var Vu;hu.PackStraighten=Vu=2;var Xu;hu.PackMedian=Xu=4;var mu; -hu.PackAll=mu=7;function dv(){this.index=this.De=this.ff=this.se=this.first=this.layer=0;this.link=null;this.Ji=0}z.ne(dv,{layer:!0,first:!0,se:!0,ff:!0,De:!0,index:!0,link:!0,Ji:!0});function nu(){ya.call(this)}z.Ta(nu,ya);z.ka("LayeredDigraphNetwork",nu);nu.prototype.createVertex=function(){return new gv};nu.prototype.createEdge=function(){return new hv}; -function gv(){za.call(this);this.index=this.column=this.layer=-1;this.component=NaN;this.near=null;this.valid=!1;this.finish=this.hq=NaN;this.Dn=0;this.gB=this.hB=null}z.Ta(gv,za);z.ka("LayeredDigraphVertex",gv);function hv(){Aa.call(this);this.forest=this.rev=this.valid=!1;this.portToPos=this.portFromPos=NaN;this.portToColOffset=this.portFromColOffset=0}z.Ta(hv,Aa);z.ka("LayeredDigraphEdge",hv); +hu.PackAll=mu=7;function dv(){this.index=this.De=this.ff=this.re=this.first=this.layer=0;this.link=null;this.Ji=0}z.me(dv,{layer:!0,first:!0,re:!0,ff:!0,De:!0,index:!0,link:!0,Ji:!0});function nu(){ya.call(this)}z.Ta(nu,ya);z.ka("LayeredDigraphNetwork",nu);nu.prototype.createVertex=function(){return new gv};nu.prototype.createEdge=function(){return new hv}; +function gv(){za.call(this);this.index=this.column=this.layer=-1;this.component=NaN;this.near=null;this.valid=!1;this.finish=this.gq=NaN;this.Dn=0;this.gB=this.hB=null}z.Ta(gv,za);z.ka("LayeredDigraphVertex",gv);function hv(){Aa.call(this);this.forest=this.rev=this.valid=!1;this.portToPos=this.portFromPos=NaN;this.portToColOffset=this.portFromColOffset=0}z.Ta(hv,Aa);z.ka("LayeredDigraphEdge",hv); function Z(){0b.level)return!1;a.removeChild(c.parent,c)}return!0} Z.prototype.removeChild=function(a,b){if(null!==a&&null!==b){u&&z.l(a,nv,Z,"removeChild:p");u&&z.l(b,nv,Z,"removeChild:c");for(var c=a.children,d=0,e=0;eg?Yv(a,k,va,A,B):Zv(a,k,va,A,B);va=W.x;A=W.width;B=W.height;break;case Mv:for(m=0;ms&&(Pxa&&(Iw(a,-xa,0,Ma,m-1),Jw(G,-xa,0),Jw(T,-xa,0),xa=0)}n.ta.m(xa,aa);A=Math.max(A,fa);B=Math.max(B,N+(0===Oa?0:x)+Pa.height);P=fa}else{0s&&(aaxa&&(Iw(a,0,-xa,Ma,m-1),Jw(G,0,-xa),Jw(T,0,-xa),xa=0);n.ta.m(P,xa);B=Math.max(B,W);A=Math.max(A,N+(0===Oa?0:x)+Pa.width);aa=W}sa++}0< -Oa&&(b?(B+=Math.max(0,c),Ph&&(h=0),135q&&(q=0),p===Nv&&(l+=v/2+a.W.y),k+=d+c):b?(null===a.comments?d>A&&(p=Nw(p,d-A,0),k=p.x,l=p.y,A=d,h=0):A=Lw(a,A,h),0>h&&(k-=h,h=0),135B&&(p=Nw(p,0,e-B),k=p.x,l=p.y,B=e,q=0):B=Mw(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].m(h+d,0),p[1].m(p[0].x,e),p[2].yg?Yv(a,k,va,B,A):Zv(a,k,va,B,A);va=W.x;B=W.width;A=W.height;break;case Mv:for(m=0;ms&&(Pxa&&(Iw(a,-xa,0,Ma,m-1),Jw(G,-xa,0),Jw(T,-xa,0),xa=0)}n.ta.m(xa,aa);B=Math.max(B,fa);A=Math.max(A,N+(0===Oa?0:x)+Pa.height);P=fa}else{0s&&(aaxa&&(Iw(a,0,-xa,Ma,m-1),Jw(G,0,-xa),Jw(T,0,-xa),xa=0);n.ta.m(P,xa);A=Math.max(A,W);B=Math.max(B,N+(0===Oa?0:x)+Pa.width);aa=W}sa++}0< +Oa&&(b?(A+=Math.max(0,c),Ph&&(h=0),135q&&(q=0),p===Nv&&(l+=v/2+a.W.y),k+=d+c):b?(null===a.comments?d>B&&(p=Nw(p,d-B,0),k=p.x,l=p.y,B=d,h=0):B=Lw(a,B,h),0>h&&(k-=h,h=0),135A&&(p=Nw(p,0,e-A),k=p.x,l=p.y,A=e,q=0):A=Mw(a,A,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].m(h+d,0),p[1].m(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].m(0,q+e),p[1].m(d,p[0].y),p[2].xc?Yv(b,e,sa,N,G):Zv(b,e,sa,N,G);sa=G.x;N=G.width;G=G.height;break;case Mv:for(k=0;kr&&(far&&(Wp&&(p=0),135A&&(A=0));b.Wa.m(p,A);b.rb.m(N,G)}} +W+Ma+va.height),N=Math.max(N,T+(0===P?0:y)+va.width),W+=Ma+va.height),aa++;0p&&(p=0),135B&&(B=0));b.Wa.m(p,B);b.rb.m(N,G)}} function Yv(a,b,c,d,e){u&&z.l(a,nv,Z,"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.rb.width;e=h.rb.height;return new w(c,0,d,e)}for(var k=a.nodeSpacing,l=a.rowSpacing,m=90===Tv(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.ta.x&&(c=Rw(a,h.ta.x,!1,c,k))):(h.ta.m(d+b,c+k/2-h.W.y-h.Wa.y),d=Math.max(d,Math.max(x,p)+b+s.width),m=c+k/2-h.W.y-h.Wa.y,e=Math.max(e,m+s.height),0>m&&(e-=m),0>h.ta.y&&(c=Rw(a,h.ta.y,!0,c,k))));return new w(c,0,d,e)} @@ -2079,11 +2080,11 @@ function Qw(a){u&&z.l(a,nv,Z,"fixRelativePostions:lastchild");return null===a.pa function Lw(a,b,c){u&&z.l(a,nv,Z,"calculateSubwidth:v");switch(a.alignment){case Jv:case Kw:var d=b;c+a.width>d&&(d=c+a.width);0>c&&(d-=c);return d;case Uv:return a.width>b?a.width:b;case Vv:return 2*a.W.x>b?a.width:b+a.width-2*a.W.x;case Lv:case Av:return d=Math.min(0,c),c=Math.max(b,c+a.width),Math.max(a.width,c-d);case Mv:return a.width-a.W.x+a.nodeSpacing/2+b;case Nv:return Math.max(a.width,a.W.x+a.nodeSpacing/2+b);default:return b}} function Mw(a,b,c){u&&z.l(a,nv,Z,"calculateSubheight:v");switch(a.alignment){case Jv:case Kw:var d=b;c+a.height>d&&(d=c+a.height);0>c&&(d-=c);return d;case Uv:return a.height>b?a.height:b;case Vv:return 2*a.W.y>b?a.height:b+a.height-2*a.W.y;case Lv:case Av:return d=Math.min(0,c),c=Math.max(b,c+a.height),Math.max(a.height,c-d);case Mv:return a.height-a.W.y+a.nodeSpacing/2+b;case Nv:return Math.max(a.height,a.W.y+a.nodeSpacing/2+b);default:return b}} function Nw(a,b,c){u&&z.l(a,Ca,Z,"alignOffset:align");switch(a){case Kw:b/=2;c/=2;break;case Jv:b/=2;c/=2;break;case Uv:c=b=0;break;case Vv:break;default:z.k("Unhandled alignment value "+a.toString())}return new M(b,c)}function Fw(a,b,c,d,e,g){u&&z.l(a,nv,Z,"shiftRelPosAlign:v");u&&z.l(b,Ca,Z,"shiftRelPosAlign:align");b=Nw(b,c,d);Iw(a,b.x,b.y,e,g)}function Iw(a,b,c,d,e){u&&z.l(a,nv,Z,"shiftRelPos:v");if(0!==b||0!==c)for(a=a.children;d<=e;d++){var g=a[d].ta;g.x+=b;g.y+=c}} -function Gw(a,b,c,d){u&&(z.l(b,nv,Z,"recordMidPoints:v"),z.h(c,"number",Z,"recordMidPoints:x"),z.h(d,"number",Z,"recordMidPoints:y"));var e=b.parent;switch(a.Sf){case jv:for(a=b.wc;a.next();)b=a.value,b.fromVertex===e&&b.Zs.m(c,d);break;case qv:for(a=b.tc;a.next();)b=a.value,b.toVertex===e&&b.Zs.m(c,d);break;default:z.k("Unhandled path value "+a.Sf.toString())}}function Jw(a,b,c){for(var d=0;dp.length||null===q||2>q.length))for(m= -l=0;lt&&e.ye.y&&tb.length||null===l||2>l.length)d=null;else{n=Ew(a,b.length+l.length);for(d=g=e=0;gt&&e.ye.y&&tb.length||null===l||2>l.length)d=null;else{n=Ew(a,b.length+l.length);for(d=g=e=0;ge;)t=l[g++],n[d++].m(t.x+m,t.y);l=Ew(a,d);for(e=0;ep.length||null===g||2>g.length)e=null;else{n=Ew(a,p.length+g.length);for(m=x=l=0;lg;)e=p[l++], -n[m++].m(e.x,e.y);e=Ew(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=Ew(a,b.length+l.length);for(d=g=e=0;ge;)t=l[g++],n[d++].m(t.x,t.y+m);l=Ew(a,d);for(e=0;ep.length||null===g||2>g.length)e=null;else{n=Ew(a,p.length+g.length);for(m=x=l=0;lg;)e=p[l++],n[m++].m(e.x,e.y);e=Ew(a,m);for(l=0;l=a?0:135>=a?90:225>=a?180:315>=a?270:0} +Z.prototype.setPortSpots=function(a){u&&z.l(a,nv,Z,"setPortSpots:v");var b=a.alignment;if(Kv(b)){u&&z.l(a,nv,Z,"setPortSpotsBus:v");u&&z.l(b,Ca,Z,"setPortSpots:align");var c=this.Sf===jv,d=Tv(a),e;switch(d){case 0:e=bd;break;case 90:e=cd;break;case 180:e=ad;break;default:e=$c}var g=a.children,h=g.length;switch(b){case Lv:case Av:for(b=0;b=a?0:135>=a?90:225>=a?180:315>=a?270:0} function Wv(a){u&&z.l(a,nv,Z,"computeLayerSpacing:v");var b=Tv(a),b=90===b||270===b,c=a.layerSpacing;if(0q.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-Xv(c))))):c.alignment===Uv?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-Xv(c))))):c.alignment===Uv?(r=d.left+b.x,0===b.x&&n.xq.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-Xv(c))))):c.alignment===Uv?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-Xv(c))))):c.alignment===Uv?(r=d.left+b.x,0===b.x&&n.x any; + valueFunction: () => any; } /** @@ -8500,7 +8500,7 @@ declare namespace go { */ updateAdornments(part: Part): void; - updateResizeHandles(elt: GraphObject, angle: number); // undocumented + updateResizeHandles(elt: GraphObject, angle: number): void; // undocumented } /** diff --git a/release/go.js b/release/go.js index 0cdb906dc..11ed09172 100644 --- a/release/go.js +++ b/release/go.js @@ -1,9 +1,9 @@ /* - * GoJS v1.7.2 JavaScript Library for HTML Diagrams + * GoJS v1.7.3 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-2017 by Northwoods Software Corporation. All Rights Reserved. - * THIS SOFTWARE IS LICENSED. THE LICENSE AGREEMENT IS AT: https://gojs.net/1.7.2/doc/license.html. + * THIS SOFTWARE IS LICENSED. THE LICENSE AGREEMENT IS AT: https://gojs.net/1.7.3/doc/license.html. */ (function(window) { var g,da={};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 f.apply(a,e.concat(d.call(arguments)))}function c(){}var d=Array.prototype.slice,e=d.call(arguments,1),f=this;c.prototype=this.prototype;b.prototype=new c;return b}); @@ -17,7 +17,7 @@ b,c,d){c=v.getTypeName(c);void 0!==d&&(c+="."+d);v.k(c+" is not in the range "+b window.console.log(a)},Ww:{},Ct:function(a,b){!0!==v.Ww[a]&&(v.Ww[a]=!0,window.console&&window.console.log(a+" is deprecated in "+b+", see the GoJS change log for more information."))},Ta:function(a){return"object"===typeof a&&null!==a},isArray:function(a){return Array.isArray(a)||a instanceof NodeList||a instanceof HTMLCollection},pI:function(a){return Array.isArray(a)},Kz:function(a,b,c){v.isArray(a)||v.yd(a,"Array or NodeList or HTMLCollection",b,c)},Xa:function(a){return a.length},Fl:function(a){return Array.prototype.slice.call(a)}, Ea:function(a,b){Array.isArray(a);return a[b]},bE:function(a,b,c){Array.isArray(a)?a[b]=c:v.k("Cannot replace an object in an HTMLCollection or NodeList at "+b)},Cl:function(a,b){if(Array.isArray(a))return a.indexOf(b);for(var c=a.length,d=0;d=a.length?a.push(c):a.splice(b,0,c):v.k("Cannot insert an object into an HTMLCollection or NodeList: "+c+" at "+b)},Eg: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)},ly:[],K:function(){var a=v.ly.pop();return void 0===a?new y:a},xb:function(a,b){var c=v.ly.pop();if(void 0===c)return new y(a,b);c.x=a;c.y=b;return c},v:function(a){v.ly.push(a)},xB:[],gm:function(){var a=v.xB.pop();return void 0===a?new ia:a},yk:function(a){v.xB.push(a)},my:[],Ef:function(){var a=v.my.pop();return void 0===a?new B:a},Ug:function(a,b,c,d){var e=v.my.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},Gb:function(a){v.my.push(a)},yB:[],Ff:function(){var a=v.yB.pop();return void 0===a?new ja:a},we:function(a){v.yB.push(a)},ny:null,s:function(){var a=v.ny;return null!==a?(v.ny=null,a):new ka},q:function(a){a.reset();v.ny=a},wB:[],lb:function(){var a=v.wB.pop();return void 0===a?[]:a},wa:function(a){a.length=0;v.wB.push(a)},Jk:Object.freeze([]),km:1,pc:function(a){a.__gohashid=v.km++},Up:function(a){var b=a.__gohashid;void 0===b&&(b=v.km++,a.__gohashid=b);return b},Kd:function(a){return a.__gohashid}, +c;e.height=d;return e},Gb:function(a){v.my.push(a)},yB:[],Ff:function(){var a=v.yB.pop();return void 0===a?new ja:a},we:function(a){v.yB.push(a)},ny:null,s:function(){var a=v.ny;return null!==a?(v.ny=null,a):new ka},q:function(a){a.reset();v.ny=a},wB:[],lb:function(){var a=v.wB.pop();return void 0===a?[]:a},wa:function(a){a.length=0;v.wB.push(a)},Jk:Object.freeze([]),km:1,oc:function(a){a.__gohashid=v.km++},Tp:function(a){var b=a.__gohashid;void 0===b&&(b=v.km++,a.__gohashid=b);return b},Kd:function(a){return a.__gohashid}, ga:function(a,b){b.xy=a;da[a]=b},Ma:function(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a},ii:function(a){a.MG=!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}},YJ:!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}},ae:function(a,b){for(var c in b)b[c]=!0;a.prototype.IG=b},getTypeName:function(a){return void 0===a?"":"string"===typeof a?a:"function"===typeof a?v.lf(a):null===a?"*":""},lf:function(a){if("function"===typeof a){if(a.xy)return a.xy;if(a.name)return a.name;var b=a.toString(),c=b.indexOf("("),b=b.substring(9,c).trim();if(""!==b)return a.xy=b}else if("object"===typeof a&&a.constructor)return v.lf(a.constructor); @@ -25,9 +25,9 @@ return typeof a},p:function(a,b,c){v.j(a,"function","Util.defineEnumValue:classf b)try{"function"===typeof b?b(a,c):"function"===typeof a.setAttribute?a.setAttribute(b,c):a[b]=c}catch(d){}},Bu: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;cc;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.Fg("7ca11abfd7330390")](v.Fg(c[d-1]),10,15*d+0);b[v.Fg("7ca11abfd022028846")]=v.Fg("39f046ebb36e4b");for(d=1;5>d;d++)b[v.Fg("7ca11abfd7330390")](v.Fg(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 ea(a,b,2);Object.freeze(c);a[b]=c;var d=a.Nu;d instanceof la||(d=new la("string",ea),a.Nu=d);d.add(b,c);return c};return a}();function ea(a,b,c){v.pc(this);this.MB=a;this.Qb=b;this.RG=c}v.ga("EnumValue",ea);ea.prototype.toString=function(){return v.lf(this.MB)+"."+this.Qb};v.u(ea,{Ge:"classType"},function(){return this.MB});v.u(ea,{name:"name"},function(){return this.Qb});v.u(ea,{value:"value"},function(){return this.RG}); +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 ea(a,b,2);Object.freeze(c);a[b]=c;var d=a.Nu;d instanceof la||(d=new la("string",ea),a.Nu=d);d.add(b,c);return c};return a}();function ea(a,b,c){v.oc(this);this.MB=a;this.Qb=b;this.RG=c}v.ga("EnumValue",ea);ea.prototype.toString=function(){return v.lf(this.MB)+"."+this.Qb};v.u(ea,{Ge:"classType"},function(){return this.MB});v.u(ea,{name:"name"},function(){return this.Qb});v.u(ea,{value:"value"},function(){return this.RG}); var qa;ea.findName=qa=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.Nu;return c instanceof la?c.na(b):null};function sa(){this.KB=[]}sa.prototype.toString=function(){return this.KB.join("")};sa.prototype.add=function(a){""!==a&&this.KB.push(a)};function ua(){} function va(a){void 0===a&&(a=42);this.seed=a;this.hy=48271;this.Mu=2147483647;this.vB=this.Mu/this.hy;this.uG=this.Mu%this.hy;this.tG=1/this.Mu;this.random()}va.prototype.random=function(){var a=this.seed%this.vB*this.hy-this.seed/this.vB*this.uG;this.seed=0this.key)return!1;v.Oa(a)}var a=a.n,b=a.length,c=++this.Uc,d=this.Vh;if(null!==d)for(;ca||a>=b.length)&&v.Fa(a,"0 <= i < length",I,"elt:i");return b[a]};I.prototype.setElt=I.prototype.set=I.prototype.Rg=function(a,b){var c=this.n;(0>a||a>=c.length)&&v.Fa(a,"0 <= i < length",I,"setElt:i");this.Q&&v.ma(this,a);c[a]=b};I.prototype.first=I.prototype.first=function(){var a=this.n;return 0===a.length?null:a[0]}; @@ -61,20 +61,20 @@ Ca.prototype.next=Ca.prototype.hasNext=Ca.prototype.next=function(){var a=this.X Ca.prototype.any=function(a){var b=this.Xh;b.$b=null;var c=b.G;this.hb=null;for(var d=b.Da;null!==d;){if(a(d.value))return!0;b.G!==c&&v.Oa(b);d=d.Wa}return!1};Ca.prototype.all=function(a){var b=this.Xh;b.$b=null;var c=b.G;this.hb=null;for(var d=b.Da;null!==d;){if(!a(d.value))return!1;b.G!==c&&v.Oa(b);d=d.Wa}return!0};Ca.prototype.each=function(a){var b=this.Xh;b.$b=null;var c=b.G;this.hb=null;for(var d=b.Da;null!==d;)a(d.value),b.G!==c&&v.Oa(b),d=d.Wa;return this}; Ca.prototype.map=function(a){var b=this.Xh;b.$b=null;for(var c=new I,d=b.G,e=b.Da;null!==e;)c.add(a(e.value)),b.G!==d&&v.Oa(b),e=e.Wa;return c.i};Ca.prototype.filter=function(a){var b=this.Xh;b.$b=null;for(var c=new I(b.ka),d=b.G,e=b.Da;null!==e;){var f=e.value;a(f)&&c.add(f);b.G!==d&&v.Oa(b);e=e.Wa}return c.i};Ca.prototype.concat=function(a){this.Xh.$b=null;return new za(this,a.i)};v.u(Ca,{count:"count"},function(){return this.Xh.od}); Ca.prototype.Hf=function(){this.value=this.key=null;this.ib=-1;this.Xh.$b=this};Ca.prototype.toString=function(){return null!==this.hb?"SetIterator@"+this.hb.value:"SetIterator"}; -function J(a){v.pc(this);this.Q=!1;void 0===a||null===a?this.ka=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.ka=a:v.Fa(a,"the string 'object', 'number' or 'string'","Set constructor: type"):"function"===typeof a?this.ka=a===Object?"object":a===String?"string":a===Number?"number":a:v.Fa(a,"null, a primitive type name, or a class type","Set constructor: type");this.pd={};this.od=0;this.$b=null;this.G=0;this.Qh=this.Da=null}v.ga("Set",J); +function J(a){v.oc(this);this.Q=!1;void 0===a||null===a?this.ka=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.ka=a:v.Fa(a,"the string 'object', 'number' or 'string'","Set constructor: type"):"function"===typeof a?this.ka=a===Object?"object":a===String?"string":a===Number?"number":a:v.Fa(a,"null, a primitive type name, or a class type","Set constructor: type");this.pd={};this.od=0;this.$b=null;this.G=0;this.Qh=this.Da=null}v.ga("Set",J); J.prototype.Hc=function(){var a=this.G;a++;999999999=this.od)return xa;var a=this.$b;return null!==a?(a.reset(),a):new Ca(this)});function Ea(a){this.Ia=a;this.reset()}v.ae(Ea,{key:!0,value:!0});v.u(Ea,{i:"iterator"},function(){return this});Ea.prototype.reset=Ea.prototype.reset=function(){this.ib=this.Ia.G;this.hb=null}; Ea.prototype.next=Ea.prototype.hasNext=Ea.prototype.next=function(){var a=this.Ia;if(a.G!==this.ib){if(null===this.key)return!1;v.Oa(a)}var b=this.hb,b=null===b?a.Da:b.Wa;if(null!==b)return this.hb=b,this.value=this.key=a=b.key,!0;this.Hf();return!1};Ea.prototype.first=Ea.prototype.first=function(){var a=this.Ia;this.ib=a.G;a=a.Da;return null!==a?(this.hb=a,this.value=this.key=a=a.key):null}; Ea.prototype.any=function(a){var b=this.Ia,c=b.G;this.hb=null;for(var d=b.Da;null!==d;){if(a(d.key))return!0;b.G!==c&&v.Oa(b);d=d.Wa}return!1};Ea.prototype.all=function(a){var b=this.Ia,c=b.G;this.hb=null;for(var d=b.Da;null!==d;){if(!a(d.key))return!1;b.G!==c&&v.Oa(b);d=d.Wa}return!0};Ea.prototype.each=function(a){var b=this.Ia,c=b.G;this.hb=null;for(var d=b.Da;null!==d;)a(d.key),b.G!==c&&v.Oa(b),d=d.Wa;return this}; Ea.prototype.map=function(a){var b=this.Ia,c=b.G;this.hb=null;for(var d=new I,e=b.Da;null!==e;)d.add(a(e.key)),b.G!==c&&v.Oa(b),e=e.Wa;return d.i};Ea.prototype.filter=function(a){var b=this.Ia,c=b.G;this.hb=null;for(var d=new I(b.Ki),e=b.Da;null!==e;){var f=e.key;a(f)&&d.add(f);b.G!==c&&v.Oa(b);e=e.Wa}return d.i};Ea.prototype.concat=function(a){return new za(this,a.i)};v.u(Ea,{count:"count"},function(){return this.Ia.od});Ea.prototype.Hf=function(){this.value=this.key=null;this.ib=-1}; -Ea.prototype.toString=function(){return null!==this.hb?"MapKeySetIterator@"+this.hb.value:"MapKeySetIterator"};function Fa(a){v.pc(this);this.Q=!0;this.Ia=a}v.Ma(Fa,J);Fa.prototype.freeze=function(){return this};Fa.prototype.Ra=function(){return this};Fa.prototype.toString=function(){return"MapKeySet("+this.Ia.toString()+")"};Fa.prototype.add=Fa.prototype.set=Fa.prototype.add=function(){v.k("This Set is read-only: "+this.toString());return!1}; +Ea.prototype.toString=function(){return null!==this.hb?"MapKeySetIterator@"+this.hb.value:"MapKeySetIterator"};function Fa(a){v.oc(this);this.Q=!0;this.Ia=a}v.Ma(Fa,J);Fa.prototype.freeze=function(){return this};Fa.prototype.Ra=function(){return this};Fa.prototype.toString=function(){return"MapKeySet("+this.Ia.toString()+")"};Fa.prototype.add=Fa.prototype.set=Fa.prototype.add=function(){v.k("This Set is read-only: "+this.toString());return!1}; Fa.prototype.contains=Fa.prototype.has=Fa.prototype.contains=function(a){return this.Ia.contains(a)};Fa.prototype.remove=Fa.prototype["delete"]=Fa.prototype.remove=function(){v.k("This Set is read-only: "+this.toString());return!1};Fa.prototype.clear=Fa.prototype.clear=function(){v.k("This Set is read-only: "+this.toString())};Fa.prototype.first=Fa.prototype.first=function(){var a=this.Ia.Da;return null!==a?a.key:null}; Fa.prototype.any=function(a){for(var b=this.Ia.Da;null!==b;){if(a(b.key))return!0;b=b.Wa}return!1};Fa.prototype.all=function(a){for(var b=this.Ia.Da;null!==b;){if(!a(b.key))return!1;b=b.Wa}return!0};Fa.prototype.each=function(a){for(var b=this.Ia.Da;null!==b;)a(b.key),b=b.Wa;return this};Fa.prototype.map=function(a){for(var b=new J,c=this.Ia.Da;null!==c;)b.add(a(c.key)),c=c.Wa;return b}; Fa.prototype.filter=function(a){for(var b=new J(this.Ia.Ki),c=this.Ia.Da;null!==c;){var d=c.key;a(d)&&b.add(d);c=c.Wa}return b};Fa.prototype.concat=function(a){return this.eG().Kc(a)};Fa.prototype.copy=function(){return new Fa(this.Ia)};Fa.prototype.toSet=Fa.prototype.eG=function(){var a=new J(this.Ia.Ki),b=this.Ia.pd,c;for(c in b)a.add(b[c].key);return a};Fa.prototype.toArray=Fa.prototype.fc=function(){var a=this.Ia.pd,b=Array(this.Ia.od),c=0,d;for(d in a)b[c]=a[d].key,c++;return b}; @@ -82,28 +82,28 @@ Fa.prototype.toList=function(){var a=new I(this.ka),b=this.Ia.pd,c;for(c in b)a. Ha.prototype.next=Ha.prototype.hasNext=Ha.prototype.next=function(){var a=this.Ia;if(a.G!==this.ib){if(null===this.key)return!1;v.Oa(a)}var b=this.hb,b=null===b?a.Da:b.Wa;if(null!==b)return this.hb=b,this.value=b.value,this.key=b.key,!0;this.Hf();return!1};Ha.prototype.first=Ha.prototype.first=function(){var a=this.Ia;this.ib=a.G;a=a.Da;if(null!==a){this.hb=a;var b=a.value;this.key=a.key;return this.value=b}return null}; Ha.prototype.any=function(a){var b=this.Ia;b.Xj=null;var c=b.G;this.hb=null;for(var d=b.Da;null!==d;){if(a(d.value))return!0;b.G!==c&&v.Oa(b);d=d.Wa}return!1};Ha.prototype.all=function(a){var b=this.Ia;b.Xj=null;var c=b.G;this.hb=null;for(var d=b.Da;null!==d;){if(!a(d.value))return!1;b.G!==c&&v.Oa(b);d=d.Wa}return!0};Ha.prototype.each=function(a){var b=this.Ia;b.Xj=null;var c=b.G;this.hb=null;for(var d=b.Da;null!==d;)a(d.value),b.G!==c&&v.Oa(b),d=d.Wa;return this}; Ha.prototype.map=function(a){var b=this.Ia;b.Xj=null;var c=b.G;this.hb=null;for(var d=new I,e=b.Da;null!==e;)d.add(a(e.value)),b.G!==c&&v.Oa(b),e=e.Wa;return d.i};Ha.prototype.filter=function(a){var b=this.Ia;b.Xj=null;var c=b.G;this.hb=null;for(var d=new I(b.Ki),e=b.Da;null!==e;){var f=e.value;a(f)&&d.add(f);b.G!==c&&v.Oa(b);e=e.Wa}return d.i};Ha.prototype.concat=function(a){this.Ia.Xj=null;return new za(this,a.i)};v.u(Ha,{count:"count"},function(){return this.Ia.od}); -Ha.prototype.Hf=function(){this.value=this.key=null;this.ib=-1;this.Ia.Xj=this};Ha.prototype.toString=function(){return null!==this.hb?"MapValueSetIterator@"+this.hb.value:"MapValueSetIterator"};function Da(a,b){this.key=a;this.value=b;this.ep=this.Wa=null}v.ae(Da,{key:!0,value:!0});Da.prototype.toString=function(){return"{"+this.key+":"+this.value+"}"};function Ka(a){this.Ia=a;this.reset()}v.ae(Ka,{key:!0,value:!0});v.u(Ka,{i:"iterator"},function(){return this}); +Ha.prototype.Hf=function(){this.value=this.key=null;this.ib=-1;this.Ia.Xj=this};Ha.prototype.toString=function(){return null!==this.hb?"MapValueSetIterator@"+this.hb.value:"MapValueSetIterator"};function Da(a,b){this.key=a;this.value=b;this.dp=this.Wa=null}v.ae(Da,{key:!0,value:!0});Da.prototype.toString=function(){return"{"+this.key+":"+this.value+"}"};function Ka(a){this.Ia=a;this.reset()}v.ae(Ka,{key:!0,value:!0});v.u(Ka,{i:"iterator"},function(){return this}); Ka.prototype.reset=Ka.prototype.reset=function(){var a=this.Ia;a.$b=null;this.ib=a.G;this.hb=null};Ka.prototype.next=Ka.prototype.hasNext=Ka.prototype.next=function(){var a=this.Ia;if(a.G!==this.ib){if(null===this.key)return!1;v.Oa(a)}var b=this.hb,b=null===b?a.Da:b.Wa;if(null!==b)return this.hb=b,this.key=b.key,this.value=b.value,!0;this.Hf();return!1}; Ka.prototype.first=Ka.prototype.first=function(){var a=this.Ia;this.ib=a.G;a=a.Da;return null!==a?(this.hb=a,this.key=a.key,this.value=a.value,a):null};Ka.prototype.any=function(a){var b=this.Ia;b.$b=null;var c=b.G;this.hb=null;for(var d=b.Da;null!==d;){if(a(d))return!0;b.G!==c&&v.Oa(b);d=d.Wa}return!1};Ka.prototype.all=function(a){var b=this.Ia;b.$b=null;var c=b.G;this.hb=null;for(var d=b.Da;null!==d;){if(!a(d))return!1;b.G!==c&&v.Oa(b);d=d.Wa}return!0}; Ka.prototype.each=function(a){var b=this.Ia;b.$b=null;var c=b.G;this.hb=null;for(var d=b.Da;null!==d;)a(d),b.G!==c&&v.Oa(b),d=d.Wa;return this};Ka.prototype.map=function(a){var b=this.Ia;b.$b=null;var c=b.G;this.hb=null;for(var d=new I,e=b.Da;null!==e;)d.add(a(e)),b.G!==c&&v.Oa(b),e=e.Wa;return d.i};Ka.prototype.filter=function(a){var b=this.Ia;b.$b=null;var c=b.G;this.hb=null;for(var d=new I,e=b.Da;null!==e;)a(e)&&d.add(e),b.G!==c&&v.Oa(b),e=e.Wa;return d.i}; Ka.prototype.concat=function(a){this.Ia.$b=null;return new za(this,a.i)};v.u(Ka,{count:"count"},function(){return this.Ia.od});Ka.prototype.Hf=function(){this.value=this.key=null;this.ib=-1;this.Ia.$b=this};Ka.prototype.toString=function(){return null!==this.hb?"MapIterator@"+this.hb:"MapIterator"}; -function la(a,b){v.pc(this);this.Q=!1;void 0===a||null===a?this.Ki=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.Ki=a:v.Fa(a,"the string 'object', 'number' or 'string'","Map constructor: keytype"):"function"===typeof a?this.Ki=a===Object?"object":a===String?"string":a===Number?"number":a:v.Fa(a,"null, a primitive type name, or a class type","Map constructor: keytype");void 0===b||null===b?this.lt=null:"string"===typeof b?"object"===b||"string"===b||"boolean"===b||"number"=== +function la(a,b){v.oc(this);this.Q=!1;void 0===a||null===a?this.Ki=null:"string"===typeof a?"object"===a||"string"===a||"number"===a?this.Ki=a:v.Fa(a,"the string 'object', 'number' or 'string'","Map constructor: keytype"):"function"===typeof a?this.Ki=a===Object?"object":a===String?"string":a===Number?"number":a:v.Fa(a,"null, a primitive type name, or a class type","Map constructor: keytype");void 0===b||null===b?this.lt=null:"string"===typeof b?"object"===b||"string"===b||"boolean"===b||"number"=== b||"function"===b?this.lt=b:v.Fa(b,"the string 'object', 'number', 'string', 'boolean', or 'function'","Map constructor: valtype"):"function"===typeof b?this.lt=b===Object?"object":b===String?"string":b===Number?"number":b===Boolean?"boolean":b===Function?"function":b:v.Fa(b,"null, a primitive type name, or a class type","Map constructor: valtype");this.pd={};this.od=0;this.Xj=this.$b=null;this.G=0;this.Qh=this.Da=null}v.ga("Map",la); la.prototype.Hc=function(){var a=this.G;a++;999999999=this.count)return xa;var a=this.$b;return null!==a?(a.reset(),a):new Ka(this)});v.u(la,{hF:"iteratorKeys"},function(){return 0>=this.count?xa:new Ea(this)});v.u(la,{iF:"iteratorValues"},function(){if(0>=this.count)return xa;var a=this.Xj;return null!==a?(a.reset(),a):new Ha(this)});function y(a,b){void 0===a?this.y=this.x=0:(this.x=a,this.y=b)}v.ga("Point",y);v.ii(y);v.ae(y,{x:!0,y:!0});y.prototype.assign=function(a){this.x=a.x;this.y=a.y}; y.prototype.setTo=y.prototype.l=function(a,b){this.x=a;this.y=b;return this};y.prototype.set=y.prototype.set=function(a){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};y.prototype.Ga=function(){Object.freeze(this);return this};y.prototype.S=function(){return Object.isFrozen(this)?this:this.copy().freeze()};y.prototype.freeze=function(){return this};y.prototype.Ra=function(){Object.isFrozen(this)&&v.k("cannot thaw constant: "+this);return this}; 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.L=function(a){return a instanceof y?this.x===a.x&&this.y===a.y:!1}; -y.prototype.equalTo=y.prototype.Zw=function(a,b){return this.x===a&&this.y===b};y.prototype.equalsApprox=y.prototype.Lc=function(a){return K(this.x,a.x)&&K(this.y,a.y)};y.prototype.add=y.prototype.add=function(a){this.x+=a.x;this.y+=a.y;return this};y.prototype.subtract=y.prototype.Vn=function(a){this.x-=a.x;this.y-=a.y;return this};y.prototype.offset=y.prototype.offset=function(a,b){this.x+=a;this.y+=b;return this}; +y.prototype.equalTo=y.prototype.Zw=function(a,b){return this.x===a&&this.y===b};y.prototype.equalsApprox=y.prototype.Lc=function(a){return K(this.x,a.x)&&K(this.y,a.y)};y.prototype.add=y.prototype.add=function(a){this.x+=a.x;this.y+=a.y;return this};y.prototype.subtract=y.prototype.Un=function(a){this.x-=a.x;this.y-=a.y;return this};y.prototype.offset=y.prototype.offset=function(a,b){this.x+=a;this.y+=b;return this}; y.prototype.rotate=y.prototype.rotate=function(a){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.wf=function(a){var b=a.x-this.x;a=a.y-this.y;return b*b+a*a}; -y.prototype.distanceSquared=y.prototype.Op=function(a,b){var c=a-this.x,d=b-this.y;return c*c+d*d};y.prototype.normalize=y.prototype.normalize=function(){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.Sn=function(a,b){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.Du=function(a,b,c,d,e){this.x=a+e.x*c+e.offsetX;this.y=b+e.y*d+e.offsetY;return this};y.prototype.transform=function(a){a.ob(this);return this};function Ra(a,b){b.ki(a);return a}var Sa; +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.Rn=function(a,b){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.Du=function(a,b,c,d,e){this.x=a+e.x*c+e.offsetX;this.y=b+e.y*d+e.offsetY;return this};y.prototype.transform=function(a){a.ob(this);return this};function Ra(a,b){b.ki(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 Va;y.direction=Va=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.H=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)}v.ga("Size",ia);v.ii(ia);v.ae(ia,{width:!0,height:!0});ia.prototype.assign=function(a){this.width=a.width;this.height=a.height};ia.prototype.setTo=ia.prototype.l=function(a,b){this.width=a;this.height=b;return this};ia.prototype.set=ia.prototype.set=function(a){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};ia.prototype.Ga=function(){Object.freeze(this);return this};ia.prototype.S=function(){return Object.isFrozen(this)?this:this.copy().freeze()};ia.prototype.freeze=function(){return this};ia.prototype.Ra=function(){Object.isFrozen(this)&&v.k("cannot thaw constant: "+this);return this}; @@ -141,15 +141,15 @@ ja.prototype.transformRect=ja.prototype.lG=function(a){var b=a.x,c=a.y,d=b+a.wid 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)}v.ga("Spot",L);v.ii(L);v.ae(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.l=function(a,b,c,d){this.x=a;this.y=b;this.offsetX=c;this.offsetY=d;return this}; L.prototype.set=L.prototype.set=function(a){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};L.prototype.Ga=function(){Object.freeze(this);return this};L.prototype.S=function(){return Object.isFrozen(this)?this:this.copy().freeze()};L.prototype.freeze=function(){return this}; L.prototype.Ra=function(){Object.isFrozen(this)&&v.k("cannot thaw constant: "+this);return this};function rb(a,b){a.x=NaN;a.y=NaN;a.offsetX=b;return a}var ub; -L.parse=ub=function(a){if("string"===typeof a){a=a.trim();if("None"===a)return vb;if("TopLeft"===a)return xb;if("Top"===a||"TopCenter"===a||"MiddleTop"===a)return yb;if("TopRight"===a)return Ab;if("Left"===a||"LeftCenter"===a||"MiddleLeft"===a)return Fb;if("Center"===a)return Gb;if("Right"===a||"RightCenter"===a||"MiddleRight"===a)return Hb;if("BottomLeft"===a)return Kb;if("Bottom"===a||"BottomCenter"===a||"MiddleBottom"===a)return Lb;if("BottomRight"===a)return Mb;if("TopSide"===a)return Sb;if("LeftSide"=== +L.parse=ub=function(a){if("string"===typeof a){a=a.trim();if("None"===a)return vb;if("TopLeft"===a)return xb;if("Top"===a||"TopCenter"===a||"MiddleTop"===a)return yb;if("TopRight"===a)return Ab;if("Left"===a||"LeftCenter"===a||"MiddleLeft"===a)return Fb;if("Center"===a)return Gb;if("Right"===a||"RightCenter"===a||"MiddleRight"===a)return Jb;if("BottomLeft"===a)return Kb;if("Bottom"===a||"BottomCenter"===a||"MiddleBottom"===a)return Lb;if("BottomRight"===a)return Mb;if("TopSide"===a)return Sb;if("LeftSide"=== a)return Tb;if("RightSide"===a)return Ub;if("BottomSide"===a)return $b;if("TopBottomSides"===a)return ac;if("LeftRightSides"===a)return bc;if("TopLeftSides"===a)return cc;if("TopRightSides"===a)return dc;if("BottomLeftSides"===a)return gc;if("BottomRightSides"===a)return hc;if("NotTopSide"===a)return ic;if("NotLeftSide"===a)return jc;if("NotRightSide"===a)return kc;if("NotBottomSide"===a)return lc;if("AllSides"===a)return mc;if("Default"===a)return nc;a=a.split(" ");for(var b=0,c=0;""===a[b];)b++; var d=a[b++];void 0!==d&&0=2*Math.PI?(Mc(a,b,c,d,e,e+Math.PI,h),Mc(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 Lc(a,b,c,d,e,f,h){var k=new Dc;k.Sb=[b,c,d,e,f,h];b={};Oc(a,"g",b,k);k=a.addElement("g",b);a.yf.push(k)} g.Za=function(){if(0!==this.shadowOffsetX||0!==this.shadowOffsetY||0!==this.shadowBlur){var a="SHADOW"+v.km++,b=this.addElement("filter",{id:a,x:"-100%",y:"-100%",width:"300%",height:"300%"},null),c,d,e,f,h;c=Kc(this,"feGaussianBlur",{"in":"SourceAlpha",result:"blur",JL:this.shadowBlur/2});d=Kc(this,"feFlood",{"in":"blur",result:"flood","flood-color":this.shadowColor});e=Kc(this,"feComposite",{"in":"flood",in2:"blur",operator:"in",result:"comp"});f=Kc(this,"feOffset",{"in":"comp",result:"offsetBlur", -dx:this.shadowOffsetX,dy:this.shadowOffsetY});h=Kc(this,"feMerge",{});h.appendChild(Kc(this,"feMergeNode",{"in":"offsetBlur"}));h.appendChild(Kc(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.ko?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.ko?this.clip():this.fill()};g.yj=function(){this.ko||this.stroke()};v.defineProperty(Sc,{yt:"clipInsteadOfFill"},function(){return this.ko},function(a){this.ko=a});g=Sc.prototype; -g.dB=function(a,b,c){this.Ss=a;this.Ts=b;this.yg=c};g.Tn=function(){this.shadowBlur=this.shadowOffsetY=this.shadowOffsetX=0};g.Un=function(){this.shadowOffsetX=this.Ss;this.shadowOffsetY=this.Ts;this.shadowBlur=this.yg};g.Yz=function(a,b){var c=this.ya;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.Gg=function(a){if(a instanceof ha&&a.type===Xc){var b=a.mo;a=a.zy;a>b?(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.jo?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.jo?this.clip():this.fill()};g.yj=function(){this.jo||this.stroke()};v.defineProperty(Sc,{yt:"clipInsteadOfFill"},function(){return this.jo},function(a){this.jo=a});g=Sc.prototype; +g.dB=function(a,b,c){this.Ss=a;this.Ts=b;this.yg=c};g.Sn=function(){this.shadowBlur=this.shadowOffsetY=this.shadowOffsetX=0};g.Tn=function(){this.shadowOffsetX=this.Ss;this.shadowOffsetY=this.Ts;this.shadowBlur=this.yg};g.Yz=function(a,b){var c=this.ya;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.Vz=function(){var a=this.ya;void 0!==a.setLineDash?(a.setLineDash(v.Jk),a.lineDashOffset=0):void 0!==a.webkitLineDash?(a.webkitLineDash=v.Jk,a.webkitLineDashOffset=0):void 0!==a.mozDash&&(a.mozDash=null,a.mozDashOffset=0)};function Yc(a,b){b&&(a.vy="");a.wy="";a.uy=""} var Zc=(Math.sqrt(2)-1)/3*4,$c=(new y(0,0)).Ga(),ad=(new B(0,0,0,0)).Ga(),hd=(new mb(0,0,0,0)).Ga(),id=(new mb(2,2,2,2)).Ga(),jd=(new y(6,6)).Ga(),kd=(new y(-Infinity,-Infinity)).Ga(),ld=(new y(Infinity,Infinity)).Ga(),md=(new ia(0,0)).Ga(),nd=(new ia(1,1)).Ga(),ud=(new ia(6,6)).Ga(),vd=(new ia(8,8)).Ga(),wd=(new ia(10,10)).Ga(),xd=(new ia(Infinity,Infinity)).Ga(),yd=(new y(NaN,NaN)).Ga(),zd=(new ia(NaN,NaN)).Ga(),Jd=(new B(NaN,NaN,NaN,NaN)).Ga(),Kd=(new L(.156,.156)).Ga(),Ld=(new L(.844,.844)).Ga(), Md=new ua,Nd=new ua,Od=null;function Pd(a){if(0>=a)return 0;var b=Od;if(null===b){for(var b=[],c=0;2E3>=c;c++)b[c]=Math.sqrt(c);Od=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=q&&(q=1E-6);if(Qd(a,b,h,k,q,c,d)&&Qd(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,u=(b+d)/2;c=(c+e)/2;d=(d+f)/2;e=(e+h)/2;f=(f+k)/2;var t=(s+c)/2,x=(u+d)/2;c=(c+e)/2;d=(d+f)/2;var w=(t+c)/2,z=(x+d)/2, -A=(n-l)*(n-l)+(p-m)*(p-m),H=!1;he(a,b,s,u,t,x,w,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(Qd(a,b,h,k,q,c,d)&&Qd(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,u=(b+d)/2;c=(c+e)/2;d=(d+f)/2;e=(e+h)/2;f=(f+k)/2;var t=(s+c)/2,x=(u+d)/2;c=(c+e)/2;d=(d+f)/2;var w=(t+c)/2,A=(x+d)/2, +z=(n-l)*(n-l)+(p-m)*(p-m),H=!1;he(a,b,s,u,t,x,w,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(Qd(a,b,h,k,q,c,d)&&Qd(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,u=((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,u=(b+d)/2,t=(c+e)/2,x=(d+f)/2;e=(e+h)/2;f=(f+k)/2;d=(s+t)/2;c=(u+x)/2;var t=(t+e)/2,x=(x+f)/2, -w=(d+t)/2,z=(c+x)/2,r=r+ie(a,b,s,u,d,c,w,z,l,m,n,p,q),r=r+ie(w,z,t,x,e,f,h,k,l,m,n,p,q)}return r} +w=(d+t)/2,A=(c+x)/2,r=r+ie(a,b,s,u,d,c,w,A,l,m,n,p,q),r=r+ie(w,A,t,x,e,f,h,k,l,m,n,p,q)}return r} function Oa(a,b,c,d,e,f,h){if($a(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($a(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($a(k,h))return Oa(a,b,c,d,e,f,l),!1;e=(h*a-k*e+f-b)/(h-k);if($a(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 ke(a,b,c,d,e,f,h,k,l){var m=1E21,n=a,p=b;if(je(a,b,a,d,e,f,h,k,l)){var q=(l.x-e)*(l.x-e)+(l.y-f)*(l.y-f);qm} @@ -207,22 +207,22 @@ function te(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,0c,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.ja.toString()+" "+this.ha.toString()+"L"+this.C.toString()+" "+this.D.toString():"M"+this.ja.toFixed(a)+" "+this.ha.toFixed(a)+"L"+this.C.toFixed(a)+" "+this.D.toFixed(a);case De:var b=new B(this.ja,this.ha,0,0);b.mG(this.C,this.D,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 Ke:b=new B(this.ja,this.ha,0,0);b.mG(this.C,this.D,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 ze:for(var b="",c=this.dc.n,d=c.length,e=0;e=u-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.yd(a,"string",ye,"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),u=l.length,t=v.s(),x=!1,w=!1,z=!0;!(m>=u-1);)if(p=n,n=d(),""!==n)switch(n.toUpperCase()){case "X":z=!0;w=x=!1;break;case "M":var A=f();null===t.Ub||!0===z?(N(t,A.x,A.y,x,!1,!w),z=!1):t.moveTo(A.x,A.y);for(q=s;!c();)A=f(),t.lineTo(A.x,A.y);break;case "L":for(;!c();)A=f(),t.lineTo(A.x,A.y);break;case "H":for(;!c();)s=A=new y((n===n.toLowerCase()?s.x:0)+parseFloat(d()),s.y),t.lineTo(s.x,s.y);break;case "V":for(;!c();)s=A=new y(s.x,(n===n.toLowerCase()?s.y:0)+parseFloat(d())),t.lineTo(s.x,s.y);break; -case "C":for(;!c();){var H=e(),C=h(),A=f();O(t,H.x,H.y,C.x,C.y,A.x,A.y)}break;case "S":for(;!c();)H=k(),C=h(),A=f(),O(t,H.x,H.y,C.x,C.y,A.x,A.y);break;case "Q":for(;!c();)C=h(),A=f(),Pe(t,C.x,C.y,A.x,A.y);break;case "T":for(;!c();)r=C=k(),A=f(),Pe(t,C.x,C.y,A.x,A.y);break;case "B":for(;!c();){var A=parseFloat(d()),H=parseFloat(d()),C=parseFloat(d()),R=parseFloat(d()),ba=parseFloat(d()),U=ba,M=!1;c()||(U=parseFloat(d()),c()||(M=0!==parseFloat(d())));n===n.toLowerCase()&&(C+=s.x,R+=s.y);t.arcTo(A,H, -C,R,ba,U,M)}break;case "A":for(;!c();)H=Math.abs(parseFloat(d())),C=Math.abs(parseFloat(d())),R=parseFloat(d()),ba=!!parseFloat(d()),U=!!parseFloat(d()),A=f(),Qe(t,H,C,R,ba,U,A.x,A.y);break;case "Z":A=t.o.dc.n[t.o.dc.length-1];P(t);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]/)?x=!0:Re(t);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]/)?w=!0:t.Za(!1)}q=t.o;v.q(t);if(b)for(t=q.dc.i;t.next();)A=t.value,A.Zt=!0;return q};function Se(a,b){for(var c=a.length,d=v.K(),e=0;e=u-1);)if(p=n,n=d(),""!==n)switch(n.toUpperCase()){case "X":A=!0;w=x=!1;break;case "M":var z=f();null===t.Ub||!0===A?(N(t,z.x,z.y,x,!1,!w),A=!1):t.moveTo(z.x,z.y);for(q=s;!c();)z=f(),t.lineTo(z.x,z.y);break;case "L":for(;!c();)z=f(),t.lineTo(z.x,z.y);break;case "H":for(;!c();)s=z=new y((n===n.toLowerCase()?s.x:0)+parseFloat(d()),s.y),t.lineTo(s.x,s.y);break;case "V":for(;!c();)s=z=new y(s.x,(n===n.toLowerCase()?s.y:0)+parseFloat(d())),t.lineTo(s.x,s.y);break; +case "C":for(;!c();){var H=e(),C=h(),z=f();O(t,H.x,H.y,C.x,C.y,z.x,z.y)}break;case "S":for(;!c();)H=k(),C=h(),z=f(),O(t,H.x,H.y,C.x,C.y,z.x,z.y);break;case "Q":for(;!c();)C=h(),z=f(),Pe(t,C.x,C.y,z.x,z.y);break;case "T":for(;!c();)r=C=k(),z=f(),Pe(t,C.x,C.y,z.x,z.y);break;case "B":for(;!c();){var z=parseFloat(d()),H=parseFloat(d()),C=parseFloat(d()),R=parseFloat(d()),ba=parseFloat(d()),U=ba,M=!1;c()||(U=parseFloat(d()),c()||(M=0!==parseFloat(d())));n===n.toLowerCase()&&(C+=s.x,R+=s.y);t.arcTo(z,H, +C,R,ba,U,M)}break;case "A":for(;!c();)H=Math.abs(parseFloat(d())),C=Math.abs(parseFloat(d())),R=parseFloat(d()),ba=!!parseFloat(d()),U=!!parseFloat(d()),z=f(),Qe(t,H,C,R,ba,U,z.x,z.y);break;case "Z":z=t.o.dc.n[t.o.dc.length-1];P(t);s=q;break;case "F":z="";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{z=l[m+H];break}z.match(/[Mm]/)?x=!0:Re(t);break;case "U":z="";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{z=l[m+H];break}z.match(/[Mm]/)?w=!0:t.Za(!1)}q=t.o;v.q(t);if(b)for(t=q.dc.i;t.next();)z=t.value,z.Zt=!0;return q};function Se(a,b){for(var c=a.length,d=v.K(),e=0;eh&&(h+=360),s.Ae+=h);0>a&&(s.Ae=180-s.Ae,s.sf=-s.sf);0>d&&(s.Ae=-s.Ae,s.sf=-s.sf);s.radiusX*=Math.sqrt(a*a+c*c);void 0!==s.radiusY&&(s.radiusY*=Math.sqrt(b*b+d*d));break;case gf:h=s.C;k=s.D;s.C=h* a+k*c+e;s.D=h*b+k*d+f;0!==b&&(h=180*Math.atan2(b,a)/Math.PI,0>h&&(h+=360),s.Cj+=h);0>a&&(s.Cj=180-s.Cj,s.Ul=!s.Ul);0>d&&(s.Cj=-s.Cj,s.Ul=!s.Ul);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.ab=!0;return this}; -ye.prototype.Ha=function(a,b,c,d){var e=a.x,f=a.y,h=this.kb.x-20;a=a.y;for(var k=0,l=0,m=0,n=0,p=0,q=0,r=this.dc.n,s=r.length,u=0;u=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?a=0:1=f)return d=(f-h)/p,c=c[k],k=c[2*n],e=c[2*n+1],b.l(k+(c[2*n+2]-k)*d,e+(c[2*n+3]-e)*d),b;h+=p}b.l(NaN,NaN);return b}; ye.prototype.getFractionForPoint=ye.prototype.SH=function(a){if(this.type===Ce){var b=this.ja,c=this.ha,d=this.C,e=this.D;if(b!==d||c!==e){var f=a.x;a=a.y;var h=0,k=0;return b===d?(c=k?k===c?0:1:Math.abs(a-c)/(k-h)):c===e?(b=k?k===b?0:1:Math.abs(f-b)/(k-h)):((f-b)*(f-b)+(a-c)*(a-c))/((d-b)*(d-b)+(e-c)*(e-c))}}else if(this.type===De){if(b=this.ja,c=this.ha,d=this.C,e=this.D,b!==d||c!==e){var h=d-b,k=e-c,l=2*h+2*k,f=a.x; a=a.y;f=Math.min(Math.max(f,b),d);a=Math.min(Math.max(a,c),e);var b=Math.abs(f-b),d=Math.abs(f-d),c=Math.abs(a-c),e=Math.abs(a-e),m=Math.min(b,d,c,e);if(m===c)return f/l;if(m===d)return(h+a)/l;if(m===e)return(2*h+k-f)/l;if(m===b)return(2*h+2*k-a)/l}}else{for(var e=this.aA,h=this.hx,k=this.bA,l=v.K(),c=Infinity,b=d=0,f=e.length,n=m=0,p=0;pa?0:1a?0:1a?"M"+this.ja.toString()+" "+this.ha.toString():"M"+this.ja.toFixed(a)+" "+this.ha.toFixed(a),c=this.vb.n,d=c.length,e=0;ea&&(a+=360),this.Dd=a,this.We=0,this.lh=Math.max(d,0),this.xg=Math.max(e,0),this.So="boolean"===typeof h?!!h:!1,this.lo=!!k):(this.Dd=d,this.We=e,a===ff&&(f=Math.max(f,0)),this.lh=f,"number"===typeof h?(a===ff&&(h=Math.max(h,0)),this.xg=h):this.xg=0,this.lo=this.So=!1);this.Ph=!1;this.ab= -!0;this.hg=null}v.ga("PathSegment",nf);v.ii(nf);nf.prototype.copy=function(){var a=new nf;a.ka=this.ka;a.yb=this.yb;a.Fb=this.Fb;a.Dd=this.Dd;a.We=this.We;a.lh=this.lh;a.xg=this.xg;a.So=this.So;a.lo=this.lo;a.Ph=this.Ph;a.ab=this.ab;return a}; +function nf(a,b,c,d,e,f,h,k){v.oc(this);this.Q=!1;void 0===a&&(a=Me);this.ka=a;this.yb=void 0!==b?b:0;this.Fb=void 0!==c?c:0;void 0===d&&(d=0);void 0===e&&(e=0);void 0===f&&(f=0);void 0===h&&(h=0);a===gf?(a=f%360,0>a&&(a+=360),this.Dd=a,this.We=0,this.lh=Math.max(d,0),this.xg=Math.max(e,0),this.Ro="boolean"===typeof h?!!h:!1,this.ko=!!k):(this.Dd=d,this.We=e,a===ff&&(f=Math.max(f,0)),this.lh=f,"number"===typeof h?(a===ff&&(h=Math.max(h,0)),this.xg=h):this.xg=0,this.ko=this.Ro=!1);this.Ph=!1;this.ab= +!0;this.hg=null}v.ga("PathSegment",nf);v.ii(nf);nf.prototype.copy=function(){var a=new nf;a.ka=this.ka;a.yb=this.yb;a.Fb=this.Fb;a.Dd=this.Dd;a.We=this.We;a.lh=this.lh;a.xg=this.xg;a.Ro=this.Ro;a.ko=this.ko;a.Ph=this.Ph;a.ab=this.ab;return a}; nf.prototype.equalsApprox=nf.prototype.Lc=function(a){if(!(a instanceof nf)||this.type!==a.type||this.ox!==a.ox)return!1;switch(this.type){case cf:case Me:return K(this.C,a.C)&&K(this.D,a.D);case df:return K(this.C,a.C)&&K(this.D,a.D)&&K(this.uc,a.uc)&&K(this.Rc,a.Rc)&&K(this.Ah,a.Ah)&&K(this.Bh,a.Bh);case ef:return K(this.C,a.C)&&K(this.D,a.D)&&K(this.uc,a.uc)&&K(this.Rc,a.Rc);case ff:return K(this.Ae,a.Ae)&&K(this.sf,a.sf)&&K(this.la,a.la)&&K(this.sa,a.sa)&&K(this.radiusX,a.radiusX)&&K(this.radiusY, -a.radiusY);case gf:return this.Ul===a.Ul&&this.tx===a.tx&&K(this.Cj,a.Cj)&&K(this.C,a.C)&&K(this.D,a.D)&&K(this.radiusX,a.radiusX)&&K(this.radiusY,a.radiusY);default:return!1}};nf.prototype.ic=function(a){a.Ge===nf?this.type=a:v.Aj(this,a)}; +a.radiusY);case gf:return this.Ul===a.Ul&&this.tx===a.tx&&K(this.Cj,a.Cj)&&K(this.C,a.C)&&K(this.D,a.D)&&K(this.radiusX,a.radiusX)&&K(this.radiusY,a.radiusY);default:return!1}};nf.prototype.hc=function(a){a.Ge===nf?this.type=a:v.Aj(this,a)}; nf.prototype.toString=function(a){void 0===a&&(a=-1);var b="";switch(this.type){case cf:b=0>a?"M"+this.C.toString()+" "+this.D.toString():"M"+this.C.toFixed(a)+" "+this.D.toFixed(a);break;case Me:b=0>a?"L"+this.C.toString()+" "+this.D.toString():"L"+this.C.toFixed(a)+" "+this.D.toFixed(a);break;case df:b=0>a?"C"+this.uc.toString()+" "+this.Rc.toString()+" "+this.Ah.toString()+" "+this.Bh.toString()+" "+this.C.toString()+" "+this.D.toString():"C"+this.uc.toFixed(a)+" "+this.Rc.toFixed(a)+" "+this.Ah.toFixed(a)+ " "+this.Bh.toFixed(a)+" "+this.C.toFixed(a)+" "+this.D.toFixed(a);break;case ef:b=0>a?"Q"+this.uc.toString()+" "+this.Rc.toString()+" "+this.C.toString()+" "+this.D.toString():"Q"+this.uc.toFixed(a)+" "+this.Rc.toFixed(a)+" "+this.C.toFixed(a)+" "+this.D.toFixed(a);break;case ff:b=0>a?"B"+this.Ae.toString()+" "+this.sf.toString()+" "+this.la.toString()+" "+this.sa.toString()+" "+this.radiusX:"B"+this.Ae.toFixed(a)+" "+this.sf.toFixed(a)+" "+this.la.toFixed(a)+" "+this.sa.toFixed(a)+" "+this.radiusX; break;case gf:b=0>a?"A"+this.radiusX.toString()+" "+this.radiusY.toString()+" "+this.Cj.toString()+" "+(this.tx?1:0)+" "+(this.Ul?1:0)+" "+this.C.toString()+" "+this.D.toString():"A"+this.radiusX.toFixed(a)+" "+this.radiusY.toFixed(a)+" "+this.Cj.toFixed(a)+" "+(this.tx?1:0)+" "+(this.Ul?1:0)+" "+this.C.toFixed(a)+" "+this.D.toFixed(a);break;default:b=this.type.toString()}return b+(this.Ph?"z":"")};var cf;nf.Move=cf=v.p(nf,"Move",0);var Me;nf.Line=Me=v.p(nf,"Line",1);var df; nf.Bezier=df=v.p(nf,"Bezier",2);var ef;nf.QuadraticBezier=ef=v.p(nf,"QuadraticBezier",3);var ff;nf.Arc=ff=v.p(nf,"Arc",4);var gf;nf.SvgArc=gf=v.p(nf,"SvgArc",4);nf.prototype.freeze=function(){this.Q=!0;return this};nf.prototype.Ra=function(){this.Q=!1;return this};nf.prototype.close=nf.prototype.close=function(){this.Ph=!0;return this}; function hf(a,b){if(null!==a.hg&&!1===b.ab)return a.hg;var c=a.radiusX,d=a.radiusY;void 0===d&&(d=c);if(0===c||0===d)return a.hg=[],a.hg;var e=a.Dd,f=a.We,h=ve(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=ve(b>f?b:f,n,n+h,!0);f=v.Ff();f.reset();f.translate(c,d);f.rotate(a.Dd,0,0);f.scale(l,r);Se(b,f);v.we(f);a.hg=b;return a.hg} v.defineProperty(nf,{ox:"isClosed"},function(){return this.Ph},function(a){this.Ph!==a&&(this.Ph=a,this.ab=!0)});v.defineProperty(nf,{type:"type"},function(){return this.ka},function(a){this.Q&&v.ma(this,a);this.ka=a;this.ab=!0});v.defineProperty(nf,{C:"endX"},function(){return this.yb},function(a){this.Q&&v.ma(this,a);this.yb=a;this.ab=!0});v.defineProperty(nf,{D:"endY"},function(){return this.Fb},function(a){this.Q&&v.ma(this,a);this.Fb=a;this.ab=!0}); v.defineProperty(nf,{uc:"point1X"},function(){return this.Dd},function(a){this.Q&&v.ma(this,a);this.Dd=a;this.ab=!0});v.defineProperty(nf,{Rc:"point1Y"},function(){return this.We},function(a){this.Q&&v.ma(this,a);this.We=a;this.ab=!0});v.defineProperty(nf,{Ah:"point2X"},function(){return this.lh},function(a){this.Q&&v.ma(this,a);this.lh=a;this.ab=!0});v.defineProperty(nf,{Bh:"point2Y"},function(){return this.xg},function(a){this.Q&&v.ma(this,a);this.xg=a;this.ab=!0}); v.defineProperty(nf,{la:"centerX"},function(){return this.Dd},function(a){this.Q&&v.ma(this,a);this.Dd=a;this.ab=!0});v.defineProperty(nf,{sa:"centerY"},function(){return this.We},function(a){this.Q&&v.ma(this,a);this.We=a;this.ab=!0});v.defineProperty(nf,{radiusX:"radiusX"},function(){return this.lh},function(a){0>a&&v.Fa(a,">= zero",nf,"radiusX");this.Q&&v.ma(this,a);this.lh=a;this.ab=!0}); v.defineProperty(nf,{radiusY:"radiusY"},function(){return this.xg},function(a){0>a&&v.Fa(a,">= zero",nf,"radiusY");this.Q&&v.ma(this,a);this.xg=a;this.ab=!0});v.defineProperty(nf,{Ae:"startAngle"},function(){return this.yb},function(a){this.yb!==a&&(this.Q&&v.ma(this,a),a%=360,0>a&&(a+=360),this.yb=a,this.ab=!0)});v.defineProperty(nf,{sf:"sweepAngle"},function(){return this.Fb},function(a){this.Q&&v.ma(this,a);360a&&(a=-360);this.Fb=a;this.ab=!0}); -v.defineProperty(nf,{Ul:"isClockwiseArc"},function(){return this.lo},function(a){this.Q&&v.ma(this,a);this.lo=a;this.ab=!0});v.defineProperty(nf,{tx:"isLargeArc"},function(){return this.So},function(a){this.Q&&v.ma(this,a);this.So=a;this.ab=!0});v.defineProperty(nf,{Cj:"xAxisRotation"},function(){return this.Dd},function(a){a%=360;0>a&&(a+=360);this.Q&&v.ma(this,a);this.Dd=a;this.ab=!0}); +v.defineProperty(nf,{Ul:"isClockwiseArc"},function(){return this.ko},function(a){this.Q&&v.ma(this,a);this.ko=a;this.ab=!0});v.defineProperty(nf,{tx:"isLargeArc"},function(){return this.Ro},function(a){this.Q&&v.ma(this,a);this.Ro=a;this.ab=!0});v.defineProperty(nf,{Cj:"xAxisRotation"},function(){return this.Dd},function(a){a%=360;0>a&&(a+=360);this.Q&&v.ma(this,a);this.Dd=a;this.ab=!0}); function pf(){this.Z=null;this.Bz=(new y(0,0)).freeze();this.Iy=(new y(0,0)).freeze();this.av=this.Vv=0;this.bv=1;this.Lv="";this.Aw=this.qv=!1;this.nv=this.cv=0;this.Ej=this.yv=this.Iv=!1;this.rr=null;this.yw=0;this.Ag=this.xw=null}v.ga("InputEvent",pf); pf.prototype.copy=function(){var a=new pf;a.Z=this.Z;a.Bz.assign(this.ef);a.Iy.assign(this.da);a.Vv=this.Vv;a.av=this.av;a.bv=this.bv;a.Lv=this.Lv;a.qv=this.qv;a.Aw=this.Aw;a.cv=this.cv;a.nv=this.nv;a.Iv=this.Iv;a.yv=this.yv;a.Ej=this.Ej;a.rr=this.rr;a.yw=this.yw;a.xw=this.xw;a.Ag=this.Ag;return a}; pf.prototype.toString=function(){var a="^";0!==this.wd&&(a+="M:"+this.wd);0!==this.button&&(a+="B:"+this.button);""!==this.key&&(a+="K:"+this.key);0!==this.He&&(a+="C:"+this.He);0!==this.Kl&&(a+="D:"+this.Kl);this.Cc&&(a+="h");this.bubbles&&(a+="b");null!==this.da&&(a+="@"+this.da.toString());return a};v.defineProperty(pf,{g:"diagram"},function(){return this.Z},function(a){this.Z=a});v.defineProperty(pf,{ef:"viewPoint"},function(){return this.Bz},function(a){v.F(a,y,pf,"viewPoint");this.Bz.assign(a)}); @@ -281,27 +281,27 @@ v.defineProperty(pf,{right:"right"},function(){var a=this.event;return null!==a& function Jf(){this.Z=null;this.Qb="";this.cw=this.vw=null;this.Pq=!1}v.ga("DiagramEvent",Jf);Jf.prototype.copy=function(){var a=new Jf;a.Z=this.Z;a.Qb=this.Qb;a.vw=this.vw;a.cw=this.cw;a.Pq=this.Pq;return a};Jf.prototype.toString=function(){var a="*"+this.name;null!==this.fB&&(a+=":"+this.fB.toString());null!==this.JA&&(a+="("+this.JA.toString()+")");return a};v.defineProperty(Jf,{g:"diagram"},function(){return this.Z},function(a){this.Z=a}); v.defineProperty(Jf,{name:"name"},function(){return this.Qb},function(a){this.Qb=a});v.defineProperty(Jf,{fB:"subject"},function(){return this.vw},function(a){this.vw=a});v.defineProperty(Jf,{JA:"parameter"},function(){return this.cw},function(a){this.cw=a});v.defineProperty(Jf,{cancel:"cancel"},function(){return this.Pq},function(a){this.Pq!==a&&v.Ct("DiagramEvent.cancel","2.0");this.Pq=a});function Kf(){this.Qq=Lf;this.Rm=this.Uv="";this.ns=this.os=this.rs=this.ss=this.qs=this.Z=this.me=null} v.ga("ChangedEvent",Kf);var Mf;Kf.Transaction=Mf=v.p(Kf,"Transaction",-1);var Lf;Kf.Property=Lf=v.p(Kf,"Property",0);var Nf;Kf.Insert=Nf=v.p(Kf,"Insert",1);var Of;Kf.Remove=Of=v.p(Kf,"Remove",2);Kf.prototype.clear=Kf.prototype.clear=function(){this.ns=this.os=this.rs=this.ss=this.qs=this.Z=this.me=null}; -Kf.prototype.copy=function(){var a=new Kf;a.Qq=this.Qq;a.Uv=this.Uv;a.Rm=this.Rm;a.me=this.me;a.Z=this.Z;a.qs=this.qs;var b=this.ss;a.ss=v.Ta(b)&&"function"===typeof b.S?b.S():b;b=this.rs;a.rs=v.Ta(b)&&"function"===typeof b.S?b.S():b;b=this.os;a.os=v.Ta(b)&&"function"===typeof b.S?b.S():b;b=this.ns;a.ns=v.Ta(b)&&"function"===typeof b.S?b.S():b;return a};Kf.prototype.ic=function(a){a.Ge===Kf?this.zc=a:v.Aj(this,a)}; +Kf.prototype.copy=function(){var a=new Kf;a.Qq=this.Qq;a.Uv=this.Uv;a.Rm=this.Rm;a.me=this.me;a.Z=this.Z;a.qs=this.qs;var b=this.ss;a.ss=v.Ta(b)&&"function"===typeof b.S?b.S():b;b=this.rs;a.rs=v.Ta(b)&&"function"===typeof b.S?b.S():b;b=this.os;a.os=v.Ta(b)&&"function"===typeof b.S?b.S():b;b=this.ns;a.ns=v.Ta(b)&&"function"===typeof b.S?b.S():b;return a};Kf.prototype.hc=function(a){a.Ge===Kf?this.zc=a:v.Aj(this,a)}; Kf.prototype.toString=function(){var a="",a=this.zc===Mf?a+"* ":this.zc===Lf?a+(null!==this.ca?"!m":"!d"):a+((null!==this.ca?"!m":"!d")+this.zc);this.propertyName&&"string"===typeof this.propertyName&&(a+=" "+this.propertyName);this.rf&&this.rf!==this.propertyName&&(a+=" "+this.rf);a+=": ";this.zc===Mf?null!==this.oldValue&&(a+=" "+this.oldValue):(null!==this.object&&(a+=Pf(this.object)),null!==this.oldValue&&(a+=" old: "+Pf(this.oldValue)),null!==this.vj&&(a+=" "+this.vj),null!==this.newValue&& (a+=" new: "+Pf(this.newValue)),null!==this.uj&&(a+=" "+this.uj));return a};Kf.prototype.getValue=Kf.prototype.na=function(a){return a?this.oldValue:this.newValue};Kf.prototype.getParam=function(a){return a?this.vj:this.uj};Kf.prototype.canUndo=Kf.prototype.canUndo=function(){return null!==this.ca||null!==this.g?!0:!1};Kf.prototype.undo=Kf.prototype.undo=function(){this.canUndo()&&(null!==this.ca?this.ca.ln(this,!0):null!==this.g&&this.g.ln(this,!0))}; Kf.prototype.canRedo=Kf.prototype.canRedo=function(){return null!==this.ca||null!==this.g?!0:!1};Kf.prototype.redo=Kf.prototype.redo=function(){this.canRedo()&&(null!==this.ca?this.ca.ln(this,!1):null!==this.g&&this.g.ln(this,!1))};v.defineProperty(Kf,{ca:"model"},function(){return this.me},function(a){this.me=a});v.defineProperty(Kf,{g:"diagram"},function(){return this.Z},function(a){this.Z=a});v.defineProperty(Kf,{zc:"change"},function(){return this.Qq},function(a){this.Qq=a}); v.defineProperty(Kf,{rf:"modelChange"},function(){return this.Uv},function(a){this.Uv=a});v.defineProperty(Kf,{propertyName:"propertyName"},function(){return this.Rm},function(a){this.Rm=a});v.u(Kf,{gF:"isTransactionFinished"},function(){return this.Qq===Mf&&("CommittedTransaction"===this.Rm||"FinishedUndo"===this.Rm||"FinishedRedo"===this.Rm)});v.defineProperty(Kf,{object:"object"},function(){return this.qs},function(a){this.qs=a}); v.defineProperty(Kf,{oldValue:"oldValue"},function(){return this.ss},function(a){this.ss=a});v.defineProperty(Kf,{vj:"oldParam"},function(){return this.rs},function(a){this.rs=a});v.defineProperty(Kf,{newValue:"newValue"},function(){return this.os},function(a){this.os=a});v.defineProperty(Kf,{uj:"newParam"},function(){return this.ns},function(a){this.ns=a}); -function F(a){1d)return;v.Eg(a.Ee,d)}vg(a,"nodeDataArray",Of,"nodeDataArray",a,b,null,d,null);a.Ju(b)} F.prototype.removeNodeDataCollection=function(a){if(v.isArray(a))for(var b=v.Xa(a),c=0;cb&&(b=v.Xa(a));v.ph(a,b,c);vg(this,"",Nf,"",a,null,c,null,b)};F.prototype.removeArrayItem=F.prototype.zF=function(a,b){void 0===b&&(b=-1);a===this.Ee&&v.k("Model.removeArrayItem should not be called on the Model.nodeDataArray");-1===b&&(b=v.Xa(a)-1);var c=v.Ea(a,b);v.Eg(a,b);vg(this,"",Of,"",a,c,null,b,null)}; v.defineProperty(F,{Nn:"nodeCategoryProperty"},function(){return this.Mm},function(a){var b=this.Mm;b!==a&&(wg(a,F,"nodeCategoryProperty"),this.Mm=a,this.h("nodeCategoryProperty",b,a))});F.prototype.getCategoryForNodeData=F.prototype.fA=function(a){if(null===a)return"";var b=this.Mm;if(""===b)return"";b=v.sb(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.Vx=function(a,b){v.j(b,"string",F,"setCategoryForNodeData:cat");if(null!==a){var c=this.Mm;if(""!==c)if(this.Ie(a)){var d=v.sb(a,c);void 0===d&&(d="");d!==b&&(v.Na(a,c,b),vg(this,"nodeCategory",Lf,c,a,d,b))}else v.Na(a,c,b)}}; -function Q(a,b){2v.Cl(d,a.newValue)&&v.ph(d,c,a.newValue));return}}else if(a.zc=== Of){c=a.vj;if("linkDataArray"===a.rf){d=a.oldValue;v.Ta(d)&&"number"===typeof c&&(e=this.Sf(d),b?(this.Ni.add(d),v.Ea(this.gf,c)!==d&&v.ph(this.gf,c,d),void 0!==e&&this.cd.add(e,d)):(this.Ni.remove(d),v.Ea(this.gf,c)===d&&v.Eg(this.gf,c),void 0!==e&&this.cd.remove(e)));return}if("linkLabelKeys"===a.rf){d=this.zk(a.object);v.isArray(d)&&"number"===typeof c&&(b?0>v.Cl(d,a.newValue)&&v.ph(d,c,a.newValue):(c=v.Cl(d,a.newValue),0<=c&&v.Eg(d,c)));return}}F.prototype.ln.call(this,a,b)}; v.defineProperty(Q,{Iz:"archetypeNodeData"},function(){return this.nm},function(a){var b=this.nm;b!==a&&(null!==a&&v.F(a,Object,Q,"archetypeNodeData"),this.nm=a,this.h("archetypeNodeData",b,a))});Q.prototype.Ln=function(a){if(void 0!==a){var b=this.nm;if(null!==b){var c=this.ve(a);null===c&&(c=this.copyNodeData(b),v.Na(c,this.ck,a),this.yl(c))}return a}}; @@ -371,18 +371,18 @@ Q.prototype.getLabelKeysForLinkData=Q.prototype.zk=function(a){if(null===a)retur Q.prototype.setLabelKeysForLinkData=Q.prototype.TF=function(a,b){v.Kz(b,Q,"setLabelKeysForLinkData:arr");if(null!==a){var c=this.tg;if(""!==c)if(this.sh(a)){var d=v.sb(a,c);void 0===d&&(d=v.Jk);if(d!==b){for(var e=v.Xa(d),f=0;fe||(v.Eg(d,e),this.sh(a)&&(Wg(this,b,a),vg(this,"linkLabelKeys",Of,c,a,b,null,e,null)))}else void 0!==d&&v.k(c+" property is not an Array; cannot removeLabelKeyforLinkData: "+a)}}}; -v.defineProperty(Q,{Lg:"linkDataArray"},function(){return this.gf},function(a){var b=this.gf;if(b!==a){v.Kz(a,Q,"linkDataArray");this.cd.clear();for(var c=v.Xa(a),d=0;dd)return;v.Eg(a.gf,d)}vg(a,"linkDataArray",Of,"linkDataArray",a,b,null,d,null);c=a.Ql(b);Wg(a,c,b);c=a.Rl(b);Wg(a,c,b);d=a.zk(b);if(v.isArray(d))for(var e=v.Xa(d),f=0;fa.Fh&&v.trace("Ending transaction without having started a transaction: "+c);var d=1===a.Fh;d&&b&&a.ed("CommittingTransaction",c,a.hj);var e=0;if(0a.mj;e--)f=d.fa(e),null!==f&&f.clear(), +function hh(a,b,c){if(a.eb)return!1;a.Lz&&1>a.Fh&&v.trace("Ending transaction without having started a transaction: "+c);var d=1===a.Fh;d&&b&&a.ed("CommittingTransaction",c,a.hj);var e=0;if(0a.mj;e--)f=d.fa(e),null!==f&&f.clear(), d.$c(e),a.cz=!0;e=a.mF;0===e&&(e=1);0=e&&(f=d.fa(0),null!==f&&f.clear(),d.$c(0),a.bh--);d.add(b);a.bh++;d.freeze();f=b}a.ed("CommittedTransaction",c,f)}else{a.Ji=!0;try{a.isEnabled&&null!==f&&(f.Xt=!0,f.undo())}finally{a.ed("RolledBackTransaction",c,f),a.Ji=!1}null!==f&&f.clear()}a.mv=null;return!0}if(a.isEnabled&&!b&&null!==f){a=e;c=f.Qf;for(b=c.count-1;b>=a;b--)d=c.fa(b),null!==d&&d.undo(),c.Ra(),c.$c(b);c.freeze()}return!1} Qf.prototype.canUndo=Qf.prototype.canUndo=function(){if(!this.isEnabled||0=this.Fh&&!this.Sy&&(a=a.g,null!==a&&!1===a.Fn||v.trace("Change not within a transaction: "+c.toString()))}}; Qf.prototype.skipsEvent=function(a){if(null===a||0>a.zc.value)return!0;a=a.object;if(a instanceof G){if(a=a.layer,null!==a&&a.Mc)return!0}else if(a instanceof qg&&a.Mc)return!0;return!1};v.u(Qf,{QI:"models"},function(){return this.iz.i});v.defineProperty(Qf,{isEnabled:"isEnabled"},function(){return this.ff},function(a){this.ff=a});v.u(Qf,{jG:"transactionToUndo"},function(){return 0<=this.mj&&this.mj<=this.history.count-1?this.history.fa(this.mj):null}); v.u(Qf,{iG:"transactionToRedo"},function(){return this.mjb.wh||(b.scale=a))};sg.prototype.canDecreaseZoom=function(a){void 0===a&&(a=1/this.gy);v.Zd(a,sg,"canDecreaseZoom:factor");var b=this.g;if(null===b||b.Dl!==Dh)return!1;a*=b.scale;return ab.wh?!1:b.Mw}; sg.prototype.increaseZoom=function(a){void 0===a&&(a=this.gy);v.Zd(a,sg,"increaseZoom:factor");var b=this.g;null!==b&&b.Dl===Dh&&(a*=b.scale,ab.wh||(b.scale=a))};sg.prototype.canIncreaseZoom=function(a){void 0===a&&(a=this.gy);v.Zd(a,sg,"canIncreaseZoom:factor");var b=this.g;if(null===b||b.Dl!==Dh)return!1;a*=b.scale;return ab.wh?!1:b.Mw};sg.prototype.resetZoom=function(a){void 0===a&&(a=this.Uw);v.Zd(a,sg,"resetZoom:newscale");var b=this.g;null===b||ab.wh||(b.scale=a)}; sg.prototype.canResetZoom=function(a){void 0===a&&(a=this.Uw);v.Zd(a,sg,"canResetZoom:newscale");var b=this.g;return null===b||ab.wh?!1:b.Mw};sg.prototype.zoomToFit=function(){var a=this.g;if(null!==a){var b=a.scale,c=a.position;b===this.Ez&&!isNaN(this.dz)&&a.se.L(this.Dz)?(a.scale=this.dz,a.position=this.MC,this.Ez=NaN,this.Dz=ad):(this.dz=b,this.MC=c.copy(),a.zoomToFit(),this.Ez=a.scale,this.Dz=a.se.copy())}};sg.prototype.canZoomToFit=function(){var a=this.g;return null===a?!1:a.Mw}; -sg.prototype.scrollToPart=function(a){void 0===a&&(a=null);null!==a&&v.F(a,S,sg,"part");var b=this.g;if(null!==b){if(null===a){try{null!==this.$i&&(this.$i.next()?a=this.$i.value:this.$i=null)}catch(c){this.$i=null}null===a&&(0e||Math.abs(b.y-a.y)>d};v.u(rg,{g:"diagram"},function(){return this.Z});v.defineProperty(rg,{name:"name"},function(){return this.Qb},function(a){v.j(a,"string",rg,"name");this.Qb=a}); v.defineProperty(rg,{isEnabled:"isEnabled"},function(){return this.ff},function(a){v.j(a,"boolean",rg,"isEnabled");this.ff=a});v.defineProperty(rg,{ta:"isActive"},function(){return this.zC},function(a){v.j(a,"boolean",rg,"isActive");this.zC=a});v.defineProperty(rg,{Gf:"transactionResult"},function(){return this.KD},function(a){null!==a&&v.j(a,"string",rg,"transactionResult");this.KD=a}); -function qh(){0e&&(e=k),l>f&&(f=l))}}Infinity===c?b.l(0,0,0,0):b.l(c,d,e-c,f-d)} -function vi(a,b){if(null===a.bc){var c=a.g;if(!(null===c||b&&(c.bb||c.zf))&&null!==a.Wb){var d=c.pa;d.isEnabled&&d.bF?null!==d.hj&&0c.ra)){var d=a.g;if(null!==d&&!d.bb&&(d=a.Yi,null!==d)){var e=null,f=null;null===c.W&&(e=Fi(a,c.m(0),!1),null!==e&&(f=e.V));var h=null,k=null;null===c.aa&&(h=Fi(a,c.m(c.ra-1),!0),null!==h&&(k=h.V));d.isValidLink(f,e,k,h)?b?(c.Kp=c.m(0),c.Lp=c.m(c.ra-1),c.zj=!1,c.W=f,null!==e&&(c.Ig=e.Qd),c.aa=k,null!==h&&(c.Eh=h.Qd)):Gi(d,f,e,k,h):Gi(d,null,null,null,null)}}}qh.prototype.doDragOver=function(){}; +function Ci(a,b){var c=a.gd;if(null!==c&&!(2>c.ra)){var d=a.g;if(null!==d&&!d.bb&&(d=a.Yi,null!==d)){var e=null,f=null;null===c.W&&(e=Fi(a,c.m(0),!1),null!==e&&(f=e.V));var h=null,k=null;null===c.aa&&(h=Fi(a,c.m(c.ra-1),!0),null!==h&&(k=h.V));d.isValidLink(f,e,k,h)?b?(c.Jp=c.m(0),c.Kp=c.m(c.ra-1),c.zj=!1,c.W=f,null!==e&&(c.Ig=e.Qd),c.aa=k,null!==h&&(c.Eh=h.Qd)):Gi(d,f,e,k,h):Gi(d,null,null,null,null)}}}qh.prototype.doDragOver=function(){}; function Hi(a,b){var c=a.g;if(null!==c){a.jj&&Ci(a,!0);Th(a);var d=Di(c,b,null,function(b){return!Ai(a,b)}),e=c.R;e.Pe=d;if(null!==d){e.Cc=!1;for(var f=d;null!==f;){var h=f.AA;if(null!==h&&(h(e,f),e.Cc))break;f=Ei(f)}}else h=c.AA,null!==h&&h(e);if(a.ta||null!==Mh){for(e=(a.bc||a.Wb).i;e.next();)f=e.key,f instanceof T&&f.ge.each(function(a){a.zj=!1});a.doDropOnto(b,d);if(a.ta||null!==Mh){d=v.Ef();for(e=c.selection.i;e.next();)f=e.value,f instanceof T&&Ii(c,f.getAvoidableRect(d));v.Gb(d)}}}} -qh.prototype.doDropOnto=function(){};qh.prototype.doMouseMove=function(){if(this.ta){var a=this.g;if(null!==a&&null!==this.sn&&null!==this.Wb){var b=!1,c=!1;this.mayCopy()?(b=!0,a.cc="copy",vi(this,!1),this.at(this.bc),wi(this,this.bc,!1),this.gp(this.bc)):this.mayMove()?(c=!0,a.cc="default",Wh(this),wi(this,this.Wb,!0)):this.mayDragOut()?(a.cc="no-drop",vi(this,!1),wi(this,this.bc,!1)):Wh(this);Bi(this,a.R.da,c,b)}}}; -qh.prototype.doMouseUp=function(){if(this.ta){var a=this.g;if(null!==a){var b=!1,c=this.mayCopy();c&&null!==this.bc?(Wh(this),vi(this,!0),this.at(this.bc),wi(this,this.bc,!1),this.gp(this.bc),null!==this.bc&&a.PF(this.bc.Bj())):(b=!0,Wh(this),this.mayMove()&&(wi(this,this.Wb,!0),Bi(this,a.R.da,!0,!1)));this.mr=!0;Hi(this,a.R.da);if(this.ta){this.bc=null;if(b&&null!==this.Wb)for(b=this.Wb.i;b.next();){var d=b.key;d instanceof T&&(d=d.La,null===d||null===d.placeholder||this.Wb.contains(d)||d.placeholder.I())}a.tc(); -this.gp(this.Wb);this.Gf=c?"Copy":"Move";a.Ca(c?"SelectionCopied":"SelectionMoved",a.selection)}this.stopTool()}}};qh.prototype.mayCopy=function(){if(!this.XE)return!1;var a=this.g;if(null===a||a.bb||a.zf||!a.Bp||!a.qk||(v.Dk?!a.R.alt:!a.R.control))return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.ee()&&b.canCopy())return!0}return null!==this.gd&&this.jj&&this.gd.canCopy()?!0:!1}; +qh.prototype.doDropOnto=function(){};qh.prototype.doMouseMove=function(){if(this.ta){var a=this.g;if(null!==a&&null!==this.sn&&null!==this.Wb){var b=!1,c=!1;this.mayCopy()?(b=!0,a.cc="copy",vi(this,!1),this.at(this.bc),wi(this,this.bc,!1),this.fp(this.bc)):this.mayMove()?(c=!0,a.cc="default",Wh(this),wi(this,this.Wb,!0)):this.mayDragOut()?(a.cc="no-drop",vi(this,!1),wi(this,this.bc,!1)):Wh(this);Bi(this,a.R.da,c,b)}}}; +qh.prototype.doMouseUp=function(){if(this.ta){var a=this.g;if(null!==a){var b=!1,c=this.mayCopy();c&&null!==this.bc?(Wh(this),vi(this,!0),this.at(this.bc),wi(this,this.bc,!1),this.fp(this.bc),null!==this.bc&&a.PF(this.bc.Bj())):(b=!0,Wh(this),this.mayMove()&&(wi(this,this.Wb,!0),Bi(this,a.R.da,!0,!1)));this.mr=!0;Hi(this,a.R.da);if(this.ta){this.bc=null;if(b&&null!==this.Wb)for(b=this.Wb.i;b.next();){var d=b.key;d instanceof T&&(d=d.La,null===d||null===d.placeholder||this.Wb.contains(d)||d.placeholder.I())}a.tc(); +this.fp(this.Wb);this.Gf=c?"Copy":"Move";a.Ca(c?"SelectionCopied":"SelectionMoved",a.selection)}this.stopTool()}}};qh.prototype.mayCopy=function(){if(!this.XE)return!1;var a=this.g;if(null===a||a.bb||a.zf||!a.Ap||!a.qk||(v.Dk?!a.R.alt:!a.R.control))return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.ee()&&b.canCopy())return!0}return null!==this.gd&&this.jj&&this.gd.canCopy()?!0:!1}; qh.prototype.mayDragOut=function(){if(!this.XE)return!1;var a=this.g;if(null===a||!a.ut||!a.qk||a.Bl)return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.ee()&&b.canCopy())return!0}return null!==this.gd&&this.jj&&this.gd.canCopy()?!0:!1};qh.prototype.mayMove=function(){var a=this.g;if(null===a||a.bb||!a.Bl)return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.ee()&&b.canMove())return!0}return null!==this.gd&&this.jj&&this.gd.canMove()?!0:!1};var Uh=new I(qh),Mh=null,Nh=null; -qh.prototype.getDraggingSource=function(){return Mh};qh.prototype.mayDragIn=function(){var a=this.g;if(null===a||!a.XD||a.bb||a.zf||!a.Bp)return!1;var b=Mh;return null===b||null===b.g||b.g.ca.Il!==a.ca.Il?!1:!0};qh.prototype.doSimulatedDragEnter=function(){if(this.mayDragIn()){var a=this.g;a.Qa.oi();Ji(a);a=Mh;null!==a&&null!==a.g&&(a.g.cc="copy")}};qh.prototype.doSimulatedDragLeave=function(){var a=Mh;null!==a&&a.doSimulatedDragOut();this.doCancel()}; +qh.prototype.getDraggingSource=function(){return Mh};qh.prototype.mayDragIn=function(){var a=this.g;if(null===a||!a.XD||a.bb||a.zf||!a.Ap)return!1;var b=Mh;return null===b||null===b.g||b.g.ca.Il!==a.ca.Il?!1:!0};qh.prototype.doSimulatedDragEnter=function(){if(this.mayDragIn()){var a=this.g;a.Qa.oi();Ji(a);a=Mh;null!==a&&null!==a.g&&(a.g.cc="copy")}};qh.prototype.doSimulatedDragLeave=function(){var a=Mh;null!==a&&a.doSimulatedDragOut();this.doCancel()}; qh.prototype.doSimulatedDragOver=function(){var a=this.g;if(null!==a){var b=Mh;null!==b&&null!==b.Wb&&this.mayDragIn()&&(a.cc="copy",Ki(this,b.Wb.Bj(),!1),wi(this,this.bc,!1),Bi(this,a.R.da,!1,!0))}}; qh.prototype.doSimulatedDrop=function(){var a=this.g;if(null!==a){var b=Mh;if(null!==b){var c=b.g;b.mr=!0;Wh(this);this.mayDragIn()&&(this.Tb("Drop"),Ki(this,b.Wb.Bj(),!0),wi(this,this.bc,!1),null!==this.bc&&a.PF(this.bc.Bj()),Hi(this,a.R.da),a.tc(),b=a.selection,null!==this.bc?this.Gf="ExternalCopy":b=new J(S),this.bc=null,a.doFocus(),a.Ca("ExternalObjectsDropped",b,c),this.Ik())}}}; -function Ki(a,b,c){if(null===a.bc){var d=a.g;if(null!==d&&!d.bb&&!d.zf){d.wb=!c;d.Fq=!c;a.Hk=d.R.da;d=d.Jp(b,d,!0);c=v.Ef();ui(b,c);var e=c.x+c.width/2,f=c.y+c.height/2;v.Gb(c);var h=a.tw;c=new la(S);var k=v.K();for(b=b.i;b.next();){var l=b.value;if(l.ee()&&l.canCopy()){var m=l.location,l=d.na(l);k.l(h.x-(e-m.x),h.y-(f-m.y));l.location=k;l.af();c.add(l,Qh(k))}}v.v(k);for(d=d.i;d.next();)e=d.value,e instanceof W&&e.canCopy()&&c.add(e,Qh());a.bc=c;Lh(a,c.Bj());null!==a.gd&&(c=a.gd,d=c.Rn,c.Zl(a.Hk.x- +function Ki(a,b,c){if(null===a.bc){var d=a.g;if(null!==d&&!d.bb&&!d.zf){d.wb=!c;d.Fq=!c;a.Hk=d.R.da;d=d.Ip(b,d,!0);c=v.Ef();ui(b,c);var e=c.x+c.width/2,f=c.y+c.height/2;v.Gb(c);var h=a.tw;c=new la(S);var k=v.K();for(b=b.i;b.next();){var l=b.value;if(l.ee()&&l.canCopy()){var m=l.location,l=d.na(l);k.l(h.x-(e-m.x),h.y-(f-m.y));l.location=k;l.af();c.add(l,Qh(k))}}v.v(k);for(d=d.i;d.next();)e=d.value,e instanceof W&&e.canCopy()&&c.add(e,Qh());a.bc=c;Lh(a,c.Bj());null!==a.gd&&(c=a.gd,d=c.Qn,c.Zl(a.Hk.x- (d.x+d.width/2),a.Hk.y-(d.y+d.height/2)))}}}qh.prototype.doSimulatedDragOut=function(){var a=this.g;null!==a&&(this.mayCopy()||this.mayMove()?a.cc="":a.cc="no-drop")};function Rh(a){this.point=a;this.UF=$c}v.ga("DraggingInfo",Rh);function xi(a,b,c){this.Qc=a;this.info=b;this.$H=c} function Li(){0=d&&(d=.1);for(var e=this,f=b.un(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.V;if(k instanceof T){var l=h.Va(Gb,v.K()),m=c.x-l.x,n=c.y-l.y;v.v(l);l=m*m+n*n;lc){if(null!==this.nc&&a===this.Mg&&b===this.Ng)return!0;var d=b.Qd;null===d&&(d="");if(a.bx(d).count>=c)return!1}return!0}; -Li.prototype.isValidTo=function(a,b){if(null===a||null===b)return this.$p;if(null!==this.g&&this.g.Ya===this&&(null!==a.layer&&!a.layer.vt||!0!==b.cG))return!1;var c=b.OJ;if(Infinity>c){if(null!==this.nc&&a===this.Og&&b===this.Pg)return!0;var d=b.Qd;null===d&&(d="");if(a.Hg(d).count>=c)return!1}return!0};Li.prototype.isInSameNode=function(a,b){if(null===a||null===b)return!1;if(a===b)return!0;var c=a.V,d=b.V;return null!==c&&c===d}; +c instanceof T&&(null===c.layer||c.layer.vt))?b:null};Li.prototype.isValidFrom=function(a,b){if(null===a||null===b)return this.Zp;if(null!==this.g&&this.g.Ya===this&&(null!==a.layer&&!a.layer.vt||!0!==b.EE))return!1;var c=b.dA;if(Infinity>c){if(null!==this.mc&&a===this.Mg&&b===this.Ng)return!0;var d=b.Qd;null===d&&(d="");if(a.bx(d).count>=c)return!1}return!0}; +Li.prototype.isValidTo=function(a,b){if(null===a||null===b)return this.Zp;if(null!==this.g&&this.g.Ya===this&&(null!==a.layer&&!a.layer.vt||!0!==b.cG))return!1;var c=b.OJ;if(Infinity>c){if(null!==this.mc&&a===this.Og&&b===this.Pg)return!0;var d=b.Qd;null===d&&(d="");if(a.Hg(d).count>=c)return!1}return!0};Li.prototype.isInSameNode=function(a,b){if(null===a||null===b)return!1;if(a===b)return!0;var c=a.V,d=b.V;return null!==c&&c===d}; Li.prototype.isLinked=function(a,b){if(null===a||null===b)return!1;var c=a.V;if(!(c instanceof T))return!1;var d=a.Qd;null===d&&(d="");var e=b.V;if(!(e instanceof T))return!1;var f=b.Qd;null===f&&(f="");for(e=e.Hg(f);e.next();)if(f=e.value,f.W===c&&f.Ig===d)return!0;return!1}; -Li.prototype.isValidLink=function(a,b,c,d){if(!this.isValidFrom(a,b)||!this.isValidTo(c,d)||!(null===b||null===d||(b.QH&&d.NJ||!this.isInSameNode(b,d))&&(b.PH&&d.MJ||!this.isLinked(b,d)))||null!==this.nc&&(null!==a&&this.isLabelDependentOnLink(a,this.nc)||null!==c&&this.isLabelDependentOnLink(c,this.nc))||null!==a&&null!==c&&(null===a.data&&null!==c.data||null!==a.data&&null===c.data)||!this.isValidCycle(a,c,this.nc))return!1;if(null!==a){var e=a.Bx;if(null!==e&&!e(a,b,c,d,this.nc))return!1}if(null!== -c&&(e=c.Bx,null!==e&&!e(a,b,c,d,this.nc)))return!1;e=this.Bx;return null!==e?e(a,b,c,d,this.nc):!0};Li.prototype.isLabelDependentOnLink=function(a,b){if(null===a)return!1;var c=a.Oc;if(null===c)return!1;if(c===b)return!0;var d=new J(T);d.add(a);return Mi(this,c,b,d)};function Mi(a,b,c,d){if(b===c)return!0;var e=b.W;if(null!==e&&e.of&&(d.add(e),Mi(a,e.Oc,c,d)))return!0;b=b.aa;return null!==b&&b.of&&(d.add(b),Mi(a,b.Oc,c,d))?!0:!1} -Li.prototype.isValidCycle=function(a,b,c){void 0===c&&(c=null);if(null===a||null===b)return this.$p;var d=null!==this.g?this.g.UJ:Ni;if(d!==Ni){if(d===Oi){if(null!==c&&!c.Nc)return!0;for(d=b.ge;d.next();){var e=d.value;if(e!==c&&e.Nc&&e.aa===b)return!1}return!Pi(this,a,b,c,!0)}if(d===Qi){if(null!==c&&!c.Nc)return!0;for(d=a.ge;d.next();)if(e=d.value,e!==c&&e.Nc&&e.W===a)return!1;return!Pi(this,a,b,c,!0)}if(d===Ri)return a===b?a=!0:(d=new J(T),d.add(b),a=Si(this,d,a,b,c)),!a;if(d===Ti)return!Pi(this, +Li.prototype.isValidLink=function(a,b,c,d){if(!this.isValidFrom(a,b)||!this.isValidTo(c,d)||!(null===b||null===d||(b.QH&&d.NJ||!this.isInSameNode(b,d))&&(b.PH&&d.MJ||!this.isLinked(b,d)))||null!==this.mc&&(null!==a&&this.isLabelDependentOnLink(a,this.mc)||null!==c&&this.isLabelDependentOnLink(c,this.mc))||null!==a&&null!==c&&(null===a.data&&null!==c.data||null!==a.data&&null===c.data)||!this.isValidCycle(a,c,this.mc))return!1;if(null!==a){var e=a.Bx;if(null!==e&&!e(a,b,c,d,this.mc))return!1}if(null!== +c&&(e=c.Bx,null!==e&&!e(a,b,c,d,this.mc)))return!1;e=this.Bx;return null!==e?e(a,b,c,d,this.mc):!0};Li.prototype.isLabelDependentOnLink=function(a,b){if(null===a)return!1;var c=a.Oc;if(null===c)return!1;if(c===b)return!0;var d=new J(T);d.add(a);return Mi(this,c,b,d)};function Mi(a,b,c,d){if(b===c)return!0;var e=b.W;if(null!==e&&e.of&&(d.add(e),Mi(a,e.Oc,c,d)))return!0;b=b.aa;return null!==b&&b.of&&(d.add(b),Mi(a,b.Oc,c,d))?!0:!1} +Li.prototype.isValidCycle=function(a,b,c){void 0===c&&(c=null);if(null===a||null===b)return this.Zp;var d=null!==this.g?this.g.UJ:Ni;if(d!==Ni){if(d===Oi){if(null!==c&&!c.Nc)return!0;for(d=b.ge;d.next();){var e=d.value;if(e!==c&&e.Nc&&e.aa===b)return!1}return!Pi(this,a,b,c,!0)}if(d===Qi){if(null!==c&&!c.Nc)return!0;for(d=a.ge;d.next();)if(e=d.value,e!==c&&e.Nc&&e.W===a)return!1;return!Pi(this,a,b,c,!0)}if(d===Ri)return a===b?a=!0:(d=new J(T),d.add(b),a=Si(this,d,a,b,c)),!a;if(d===Ti)return!Pi(this, a,b,c,!1);if(d===Ui)return a===b?a=!0:(d=new J(T),d.add(b),a=Vi(this,d,a,b,c)),!a}return!0};function Pi(a,b,c,d,e){if(b===c)return!0;if(null===b||null===c)return!1;for(var f=b.ge;f.next();){var h=f.value;if(h!==d&&(!e||h.Nc)&&h.aa===b&&(h=h.W,h!==b&&Pi(a,h,c,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.ge;f.next();){var h=f.value;if(h!==e&&h.aa===c&&(h=h.W,h!==c&&Si(a,b,h,d,e)))return!0}return!1} function Vi(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.ge;f.next();){var h=f.value;if(h!==e){var k=h.W,h=h.aa,k=k===c?h:k;if(k!==c&&Vi(a,b,k,d,e))return!0}}return!1}v.defineProperty(Li,{Bx:"linkValidation"},function(){return this.ml},function(a){null!==a&&v.j(a,"function",Li,"linkValidation");this.ml=a});v.defineProperty(Li,{Kx:"portTargeted"},function(){return this.jD},function(a){null!==a&&v.j(a,"function",Li,"portTargeted");this.jD=a}); function Wi(){0b.Kt+1&&cb.Kt+1&&c=c.x)d=0>=c.y?d+225:1<=c.y?d+135:d+180;else if(1<=c.x)0>=c.y?d+=315:1<=c.y&&(d+=45);else if(0>=c.y)d+=270;else if(1<=c.y)d+=90;else break a;0>d?d+=360:360<=d&&(d-=360);a.cursor=22.5>d?"e-resize":67.5>d?"se-resize":112.5>d?"s-resize":157.5>d?"sw-resize":202.5>d?"w-resize":247.5>d?"nw-resize":292.5>d?"n-resize":337.5>d? "ne-resize":"e-resize"}else if(a instanceof D)for(c=a.elements;c.next();)this.updateResizeHandles(c.value,b)};v.defineProperty(vj,{Rt:"handleArchetype"},function(){return this.bl},function(a){null!==a&&v.F(a,G,vj,"handleArchetype");this.bl=a});v.u(vj,{handle:"handle"},function(){return this.gc});v.defineProperty(vj,{rb:"adornedObject"},function(){return this.Fc},function(a){null!==a&&v.F(a,G,vj,"adornedObject");this.Fc=a}); vj.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.g;return null!==a&&!a.bb&&a.wt&&a.R.left?null!==this.findToolHandleAt(a.Bc.da,this.name):!1}; -vj.prototype.doActivate=function(){var a=this.g;null!==a&&(this.gc=this.findToolHandleAt(a.Bc.da,this.name),null!==this.gc&&(this.Fc=this.gc.V.rb,this.cp.set(this.rb.Va(this.handle.alignment.uF())),this.eD.set(this.Fc.V.location),this.$C.set(this.Fc.Ba),this.Oy=this.computeCellSize(),this.Qy=this.computeMinSize(),this.Py=this.computeMaxSize(),a.bf=!0,this.XC=a.Qa.isEnabled,a.Qa.isEnabled=!1,this.Tb(this.name),this.ta=!0))}; +vj.prototype.doActivate=function(){var a=this.g;null!==a&&(this.gc=this.findToolHandleAt(a.Bc.da,this.name),null!==this.gc&&(this.Fc=this.gc.V.rb,this.bp.set(this.rb.Va(this.handle.alignment.uF())),this.eD.set(this.Fc.V.location),this.$C.set(this.Fc.Ba),this.Oy=this.computeCellSize(),this.Qy=this.computeMinSize(),this.Py=this.computeMaxSize(),a.bf=!0,this.XC=a.Qa.isEnabled,a.Qa.isEnabled=!1,this.Tb(this.name),this.ta=!0))}; vj.prototype.doDeactivate=function(){var a=this.g;null!==a&&(this.Ik(),this.Fc=this.gc=null,this.ta=a.bf=!1,a.Qa.isEnabled=this.XC)};vj.prototype.doCancel=function(){null!==this.rb&&(this.rb.Ba=this.vF,this.rb.V.location=this.ZI);this.stopTool()};vj.prototype.doMouseMove=function(){var a=this.g;if(this.ta&&null!==a){var b=this.Qy,c=this.Py,d=this.Oy,e=this.rb.GE(a.R.da,v.K()),f=this.computeReshape(),b=this.computeResize(e,this.handle.alignment,b,c,d,f);this.resize(b);a.Yf();v.v(e)}}; vj.prototype.doMouseUp=function(){var a=this.g;if(this.ta&&null!==a){var b=this.Qy,c=this.Py,d=this.Oy,e=this.rb.GE(a.R.da,v.K()),f=this.computeReshape(),b=this.computeResize(e,this.handle.alignment,b,c,d,f);this.resize(b);v.v(e);a.tc();this.Gf=this.name;a.Ca("PartResized",this.rb,this.vF)}this.stopTool()}; -vj.prototype.resize=function(a){if(null!==this.g){var b=this.rb,c=b.V;b.Ba=a.size;c.af();a=this.rb.Va(this.handle.alignment.uF());c instanceof V?(a=c.position.copy().Vn(a).add(this.cp),c.move(a)):c.location=c.location.copy().Vn(a).add(this.cp)}}; +vj.prototype.resize=function(a){if(null!==this.g){var b=this.rb,c=b.V;b.Ba=a.size;c.af();a=this.rb.Va(this.handle.alignment.uF());c instanceof V?(a=c.position.copy().Un(a).add(this.bp),c.move(a)):c.location=c.location.copy().Un(a).add(this.bp)}}; vj.prototype.computeResize=function(a,b,c,d,e,f){b.Od()&&(b=Gb);var h=this.rb.Ja,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.K();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};vj.prototype.computeReshape=function(){var a=yj;this.rb instanceof X&&(a=Kj(this.rb));return!(a===Lj||a===Mj||null!==this.g&&this.g.R.shift)};vj.prototype.computeMinSize=function(){var a=this.rb.yh.copy(),b=this.yh;!isNaN(b.width)&&b.width>a.width&&(a.width=b.width);!isNaN(b.height)&&b.height>a.height&&(a.height=b.height);return a}; vj.prototype.computeMaxSize=function(){var a=this.rb.Bf.copy(),b=this.Bf;!isNaN(b.width)&&b.widtha&&(a+=360));var b=Math.min(Math.abs(this.DJ),180),c=Math.min(Math.abs(this.CJ),b/2);(null===this.g||!this.g.R.shift)&&0b-c&&(a=(Math.floor(a/b)+1)*b));360<=a?a-=360:0>a&&(a+=360);return a};v.defineProperty(Nj,{DJ:"snapAngleMultiple"},function(){return this.qD},function(a){v.j(a,"number",Nj,"snapAngleMultiple");this.qD=a}); v.defineProperty(Nj,{CJ:"snapAngleEpsilon"},function(){return this.pD},function(a){v.j(a,"number",Nj,"snapAngleEpsilon");this.pD=a});v.u(Nj,{uL:"originalAngle"},function(){return this.Zv});function Pj(){0e.right&&(c.x-=d.width+5);c.xe.bottom&&(c.y-=d.height+5);c.ya.R.He?!1:!0};bk.prototype.doStart=function(){this.ta||null===this.Wg||this.doActivate()}; -bk.prototype.doActivate=function(){if(!this.ta){var a=this.g;if(null!==a){var b=this.Wg;null===b&&(b=a.Ke(a.R.da,function(a){return a instanceof Fh?a:null}));if(null!==b&&(this.Wg=b,null!==b.V)){this.ta=!0;this.ib=kk;var c=this.CH;null!==b.bG&&(c=b.bG);this.ik=this.Wg.copy();var d=new B(this.Wg.Va(xb),this.Wg.Va(Mb));a.uJ(d);if(c instanceof Sj)c.show(b,a,this);else{c.style.position="absolute";c.style.zIndex=100;c.textEditingTool=this;if("function"===typeof c.onActivate)c.onActivate();"function"=== +bk.prototype.doActivate=function(){if(!this.ta){var a=this.g;if(null!==a){var b=this.Wg;null===b&&(b=a.Ke(a.R.da,function(a){return a instanceof Fh?a:null}));if(null!==b&&(this.Wg=b,null!==b.V)){this.ta=!0;this.ib=kk;var c=this.CH;null!==b.bG&&(c=b.bG);this.ik=this.Wg.copy();var d=new B(this.Wg.Va(xb),this.Wg.Va(Mb));a.uJ(d);if(c instanceof Sj)c.show(b,a,this);else{c.style.position="absolute";c.style.zIndex="100";c.textEditingTool=this;if("function"===typeof c.onActivate)c.onActivate();"function"=== typeof c.focus&&c.focus();"function"===typeof c.select&&this.Ux&&(c.select(),c.setSelectionRange(0,9999));a.ij.appendChild(c)}this.vk=c}}}};bk.prototype.doCancel=function(){null!==this.ql&&(this.vk.style.border=this.ql,this.ql=null);this.stopTool()};bk.prototype.doMouseUp=function(){!this.ta&&this.canStart()&&this.doActivate()};bk.prototype.doMouseDown=function(){this.ta&&this.acceptText(gk)}; bk.prototype.acceptText=function(a){switch(a){case gk:if(this.ib===ok)"function"===typeof this.vk.focus&&this.vk.focus();else if(this.ib===kk||this.ib===nk||this.ib===lk)this.ib=mk,rk(this);break;case fk:case ik:case hk:if(ik===a&&!0===this.yz.ux)break;if(this.ib===kk||this.ib===nk||this.ib===lk)this.ib=mk,rk(this)}}; function rk(a){var b=a.Wg,c=a.g,d=a.vk;if(null!==b&&null!==d){var e=b.text,f=d.value,h="";d instanceof Sj?null!==d.oB&&(h=d.oB()):h="function"===typeof f?f():f;a.isValidText(b,e,h)?(a.Tb(a.name),a.ib=ok,d instanceof Sj?d.show(b,c,a):null!==a.ql&&(d.style.border=a.ql,a.ql=null),a.Gf=a.name,b.text=h,null!==b.aG&&b.aG(b,e,h),null!==c&&c.Ca("TextEdited",b,e),a.Ik(),a.stopTool(),null!==c&&c.doFocus()):(a.ib=nk,null!==b.Zz&&b.Zz(a,e,h),d instanceof Sj?d.show(b,c,a):(null===a.ql&&(a.ql=d.style.border,d.style.border= "3px solid red"),"function"===typeof d.focus&&d.focus()))}}bk.prototype.doDeactivate=function(){var a=this.g;if(null!==a){this.ib=dk;this.Wg=null;if(null!==this.vk){var b=this.vk;if(b instanceof Sj)b.Cn(a,this);else{if("function"===typeof b.onDeactivate)b.onDeactivate();null!==b&&a.ij.removeChild(b)}}this.ta=!1}};bk.prototype.doFocus=function(){pk(this)};bk.prototype.doBlur=function(){qk(this)}; function pk(a){if(null!==a.vk){var b=a.Dy;a.ib===kk&&(a.ib=lk);"function"===typeof b.select&&a.Ux&&(b.select(),b.setSelectionRange(0,9999))}}function qk(a){if(null!==a.vk){var b=a.Dy;"function"===typeof b.focus&&b.focus();"function"===typeof b.select&&a.Ux&&(b.select(),b.setSelectionRange(0,9999))}}bk.prototype.isValidText=function(a,b,c){v.F(a,Fh,bk,"isValidText:textblock");var d=this.hB;if(null!==d&&!d(a,b,c))return!1;d=a.hB;return null===d||d(a,b,c)?!0:!1}; v.defineProperty(bk,{hB:"textValidation"},function(){return this.tl},function(a){null!==a&&v.j(a,"function",bk,"textValidation");this.tl=a});v.defineProperty(bk,{pF:"minimumEditorScale"},function(){return this.SC},function(a){null!==a&&v.j(a,"number",bk,"minimumEditorScale");this.SC=a});v.defineProperty(bk,{Ux:"selectsTextOnActivate"},function(){return this.nD},function(a){null!==a&&v.j(a,"boolean",bk,"selectsTextOnActivate");this.nD=a}); -v.defineProperty(bk,{state:"state"},function(){return this.ib},function(a){this.ib!==a&&(v.nb(a,bk,bk,"starting"),this.ib=a)});bk.prototype.measureTemporaryTextBlock=bk.prototype.KI=function(a){var b=this.ik;b.text=a;sk(b,this.Wg.To,Infinity);return b};function kh(){rg.call(this);this.name="ToolManager";this.BG=new I(rg);this.CG=new I(rg);this.DG=new I(rg);this.wC=this.xC=850;this.lC=(new ia(2,2)).Ga();this.GD=5E3;this.WC=Kh;this.uC=tk;this.lv=this.$B=null;this.en=-1}v.Ma(kh,rg); +v.defineProperty(bk,{state:"state"},function(){return this.ib},function(a){this.ib!==a&&(v.nb(a,bk,bk,"starting"),this.ib=a)});bk.prototype.measureTemporaryTextBlock=bk.prototype.KI=function(a){var b=this.ik;b.text=a;sk(b,this.Wg.So,Infinity);return b};function kh(){rg.call(this);this.name="ToolManager";this.BG=new I(rg);this.CG=new I(rg);this.DG=new I(rg);this.wC=this.xC=850;this.lC=(new ia(2,2)).Ga();this.GD=5E3;this.WC=Kh;this.uC=tk;this.lv=this.$B=null;this.en=-1}v.Ma(kh,rg); v.ga("ToolManager",kh);var Kh;kh.WheelScroll=Kh=v.p(kh,"WheelScroll",0);var Jh;kh.WheelZoom=Jh=v.p(kh,"WheelZoom",1);kh.WheelNone=v.p(kh,"WheelNone",2);var tk;kh.GestureZoom=tk=v.p(kh,"GestureZoom",3);var uk;kh.GestureCancel=uk=v.p(kh,"GestureCancel",4);var vk;kh.GestureNone=vk=v.p(kh,"GestureNone",5);v.defineProperty(kh,{lu:"mouseWheelBehavior"},function(){return this.WC},function(a){v.nb(a,kh,kh,"mouseWheelBehavior");this.WC=a}); -v.defineProperty(kh,{Tp:"gestureBehavior"},function(){return this.uC},function(a){v.nb(a,kh,kh,"gestureBehavior");this.uC=a});kh.prototype.initializeStandardTools=function(){this.TG=new Qj;this.yF=new Oh;this.CI=new ej;this.JF=new vj;this.rJ=new Nj;this.lF=new Wi;this.te=new qh;this.HH=new Zj;this.$I=new ak;this.Pz=new Uj;this.gB=new bk;this.jH=new Rj;this.kH=new Pj}; +v.defineProperty(kh,{Sp:"gestureBehavior"},function(){return this.uC},function(a){v.nb(a,kh,kh,"gestureBehavior");this.uC=a});kh.prototype.initializeStandardTools=function(){this.TG=new Qj;this.yF=new Oh;this.CI=new ej;this.JF=new vj;this.rJ=new Nj;this.lF=new Wi;this.te=new qh;this.HH=new Zj;this.$I=new ak;this.Pz=new Uj;this.gB=new bk;this.jH=new Rj;this.kH=new Pj}; kh.prototype.updateAdornments=function(a){var b=this.Hl;if(b instanceof mh&&this.lv===a){var c=b.rb;(null!==a?c.V===a:null===c)?this.showToolTip(b,c):this.hideToolTip()}}; -kh.prototype.doMouseDown=function(){var a=this.g;if(null!==a){var b=a.R;b.pj&&this.Tp===uk&&(b.bubbles=!1);if(b.au){this.cancelWaitAfter();if(this.Tp===vk){b.bubbles=!0;return}if(this.Tp===uk)return;if(a.Ya.canStartMultiTouch()){a.Ya.standardPinchZoomStart();return}}var c=a.pa;c.Lz&&0!==c.Fh&&v.trace("WARNING: In ToolManager.doMouseDown: UndoManager.transactionLevel is not zero");for(var c=this.cf.length,d=0;de.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.u(Zg,{uK:"animationReasons"},function(){return this.Xu}); -Zg.prototype.canStart=function(){return!0};Zg.prototype.prepareAutomaticAnimation=Zg.prototype.Pn=function(a){this.ff&&(this.Sj||this.Z.Fn)&&(this.Xu.add(a),this.canStart(a)&&(this.Rj&&this.oi(),this.rc=!0))};function Ak(a){if(a.ff&&(a.Xu.clear(),a.rc))if(!a.ho)a.rc=!1;else if(0===a.fo){var b=+new Date;a.fo=b;requestAnimationFrame(function(){if(!1!==a.rc&&!a.Rj&&a.fo===b){var c=a.Z;c.lj("temporaryPixelRatio")&&(c.hk=1);Bk(c);a.rc=!1;c.Ca("AnimationStarting");Ck(a,b)}})}} +function Zg(){this.aC=yk;this.hr=this.ir=this.Z=null;this.eo=this.jr=this.kr=0;this.fo=this.rc=this.No=this.Rj=!1;this.Sj=this.ff=!0;this.jv=this.iv=this.WB=null;this.VB=0;this.kv=null;this.Xu=new J("string");this.Ly=600;this.HG=new y(0,0);this.JB=this.IB=this.LD=!1;this.Nm=new la(G,zk)}v.ga("AnimationManager",Zg);Zg.prototype.Sc=function(a){this.Z=a};function yk(a,b,c,d){a/=d/2;return 1>a?c/2*a*a+b:-c/2*(--a*(a-2)-1)+b}v.u(Zg,{uK:"animationReasons"},function(){return this.Xu}); +Zg.prototype.canStart=function(){return!0};Zg.prototype.prepareAutomaticAnimation=Zg.prototype.On=function(a){this.ff&&(this.Sj||this.Z.Fn)&&(this.Xu.add(a),this.canStart(a)&&(this.Rj&&this.oi(),this.rc=!0))};function Ak(a){if(a.ff&&(a.Xu.clear(),a.rc))if(!a.fo)a.rc=!1;else if(0===a.eo){var b=+new Date;a.eo=b;requestAnimationFrame(function(){if(!1!==a.rc&&!a.Rj&&a.eo===b){var c=a.Z;c.lj("temporaryPixelRatio")&&(c.hk=1);Bk(c);a.rc=!1;c.Ca("AnimationStarting");Ck(a,b)}})}} function Dk(a,b,c,d,e,f){if(!(!a.rc||"position"===c&&d.L(e)||b instanceof S&&!b.VE)){var h=a.Nm;if(h.contains(b)){var h=h.na(b),k=h.start,l=h.end;void 0===k[c]&&(k[c]=Ek(d));h.Rw&&void 0!==l[c]?h.Ft[c]=Ek(e):(f||(h.Ft[c]=Ek(e)),l[c]=Ek(e));f&&0===c.indexOf("position:")&&(h.Ft.location=Ek(b.location))}else k=new ua,l=new ua,k[c]=Ek(d),l[c]=Ek(e),d=l,e=k.position,e instanceof y&&!e.H()&&a.Xu.contains("Expand SubGraph")&&e.assign(d.position),k=new zk(k,l,f),f&&0===c.indexOf("position:")&&(k.Ft.location= -Ek(b.location)),h.add(b,k);a.ho=!0}}function Ek(a){return a instanceof y?a.copy():a instanceof ia?a.copy():a} -function Ck(a,b){var c;function d(){if(!1!==f.Rj&&f.fo===b){var a=+new Date,c=a>s?m:a-r;Fk(f);Sk(f,e,q,h,c,m);f.iv&&f.iv();Ji(e);Yk(f);a>s?Zk(f):requestAnimationFrame(d)}}void 0===c&&(c=new ua);var e=a.Z;if(null!==e){a.Rj=!0;var f=a,h=c.SK||a.aC,k=c.sL||null,l=c.tL||null,m=c.duration||a.Ly,n=a.HG;for(c=a.Nm.i;c.next();){var p=c.value.start.position;p instanceof y&&(p.H()||p.assign(n))}a.WB=h;a.iv=k;a.jv=l;a.VB=m;a.kv=a.Nm;var q=a.kv;for(c=q.i;c.next();)k=c.value.end,k["position:placeholder"]&&(l= -k["position:placeholder"],n=l.Va(xb),n.x+=l.padding.left,n.y+=l.padding.top,k["position:placeholder"]=n);Fk(a);Sk(a,e,q,h,0,m);Ji(a.Z);Yk(a);var r=+new Date,s=r+m;f.fo===b&&requestAnimationFrame(function(){d()})}} +Ek(b.location)),h.add(b,k);a.fo=!0}}function Ek(a){return a instanceof y?a.copy():a instanceof ia?a.copy():a} +function Ck(a,b){var c;function d(){if(!1!==f.Rj&&f.eo===b){var a=+new Date,c=a>s?m:a-r;Fk(f);Sk(f,e,q,h,c,m);f.iv&&f.iv();Ji(e);Yk(f);a>s?Zk(f):requestAnimationFrame(d)}}void 0===c&&(c=new ua);var e=a.Z;if(null!==e){a.Rj=!0;var f=a,h=c.SK||a.aC,k=c.sL||null,l=c.tL||null,m=c.duration||a.Ly,n=a.HG;for(c=a.Nm.i;c.next();){var p=c.value.start.position;p instanceof y&&(p.H()||p.assign(n))}a.WB=h;a.iv=k;a.jv=l;a.VB=m;a.kv=a.Nm;var q=a.kv;for(c=q.i;c.next();)k=c.value.end,k["position:placeholder"]&&(l= +k["position:placeholder"],n=l.Va(xb),n.x+=l.padding.left,n.y+=l.padding.top,k["position:placeholder"]=n);Fk(a);Sk(a,e,q,h,0,m);Ji(a.Z);Yk(a);var r=+new Date,s=r+m;f.eo===b&&requestAnimationFrame(function(){d()})}} var $k={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.Xx(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.Y,k=c.Y;c=k.x+k.width/2-h.width/2;h=k.y+k.height/2-h.height/2;e!==f?a.Xx(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.Xx(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 Fk(a){if(!a.Oo){var b=a.Z;a.LD=b.wb;a.IB=b.Oe;a.JB=b.Fu;b.wb=!0;b.Oe=!0;b.Fu=!0;a.Oo=!0}}function Yk(a){var b=a.Z;b.wb=a.LD;b.Oe=a.IB;b.Fu=a.JB;a.Oo=!1} -function Sk(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!==$k[m])$k[m](h,l[m],k[m],d,e,f)}d=b.oA;b.oA=!0;m=a.aC;0!==a.kr&&0!==a.jr&&(c=a.kr,b.Lb=m(e,c,a.jr-c,f));null!==a.ir&&null!==a.hr&&(c=a.ir,a=a.hr,b.mb=new y(m(e,c.x,a.x-c.x,f),m(e,c.y,a.y-c.y,f)));b.oA=d}Zg.prototype.stopAnimation=Zg.prototype.oi=function(){!0===this.rc&&(this.rc=!1,this.ho&&this.Z.Me());this.Rj&&this.ff&&Zk(this)}; -function Zk(a){a.Rj=!1;a.ho=!1;Fk(a);for(var b=a.Z,c=a.WB,d=a.VB,e=a.kv.i;e.next();){var f=e.key,h=e.value,k=h.start,l=h.end,m=h.Ft,n;for(n in l)if(void 0!==$k[n]){var p=n;!h.Rw||"position:node"!==p&&"position:placeholder"!==p||(p="position");$k[p](f,k[n],void 0!==m[n]?m[n]:h.Rw?k[n]:l[n],c,d,d)}h.Rw&&void 0!==m.location&&(f.location=m.location);h.Nx&&f.vd(!1)}for(c=a.Z.links;c.next();)d=c.value,null!==d.ip&&(d.points=d.ip,d.ip=null);b.Cx.clear();b.hk=null;b.tc();b.oa();b.Yf();al(b);Yk(a);a.jv&&a.jv(); -a.fo=0;a.kv=null;a.jv=null;a.iv=null;a.ir=null;a.hr=null;a.kr=0;a.jr=0;a.Nm=new la(G,zk);b.Ca("AnimationFinished");b.Me()}function bl(a,b,c){var d=b.Y,e=c.Y,f=null;c instanceof V&&(f=c.placeholder);null!==f?(d=f.Va(xb),d.x+=f.padding.left,d.y+=f.padding.top,Dk(a,b,"position",d,b.position,!1)):Dk(a,b,"position",new y(e.x+e.width/2-d.width/2,e.y+e.height/2-d.height/2),b.position,!1);Dk(a,b,"scale",.01,b.scale,!1);if(b instanceof V)for(b=b.Pc;b.next();)f=b.value,f instanceof T&&bl(a,f,c)} -function cl(a,b,c){if(b.isVisible()){var d=null;c instanceof V&&(d=c.placeholder);null!==d?Dk(a,b,"position:placeholder",b.position,d,!0):Dk(a,b,"position:node",b.position,c,!0);Dk(a,b,"scale",b.scale,.01,!0);a.rc&&(d=a.Nm,d.contains(b)&&(d.na(b).Nx=!0));if(b instanceof V)for(b=b.Pc;b.next();)d=b.value,d instanceof T&&cl(a,d,c)}}function dl(a,b,c){a.rc&&(null===a.ir&&b.H()&&null===a.hr&&(a.ir=b.copy()),a.hr=c.copy(),a.ho=!0)} -function el(a,b,c){a.rc&&a.Z.Fn&&(0===a.kr&&0===a.jr&&(a.kr=b),a.jr=c,a.ho=!0)}v.defineProperty(Zg,{isEnabled:"isEnabled"},function(){return this.ff},function(a){v.j(a,"boolean",Zg,"isEnabled");this.ff=a});v.defineProperty(Zg,{duration:"duration"},function(){return this.Ly},function(a){v.j(a,"number",Zg,"duration");1>a&&v.Fa(a,">= 1",Zg,"duration");this.Ly=a});v.u(Zg,{nf:"isAnimating"},function(){return this.Rj});v.u(Zg,{tI:"isTicking"},function(){return this.Oo}); -v.defineProperty(Zg,{cF:"isInitial"},function(){return this.Sj},function(a){v.j(a,"boolean",Zg,"isInitial");this.Sj=a});function zk(a,b,c){this.start=a;this.end=b;this.Ft=new ua;this.Rw=c;this.Nx=!1}function qg(){0a&&v.Fa(a,">= 1",Zg,"duration");this.Ly=a});v.u(Zg,{nf:"isAnimating"},function(){return this.Rj});v.u(Zg,{tI:"isTicking"},function(){return this.No}); +v.defineProperty(Zg,{cF:"isInitial"},function(){return this.Sj},function(a){v.j(a,"boolean",Zg,"isInitial");this.Sj=a});function zk(a,b,c){this.start=a;this.end=b;this.Ft=new ua;this.Rw=c;this.Nx=!1}function qg(){0=a)return b;for(var c=0,d=0,e=0,f=0,h=0,k=this.zb.i;k.next();){var l=k.value;l instanceof V?e++:l instanceof T?d++:l instanceof W?f++:l instanceof mh?h++:c++}k="";0=d.count)a=d.count;else if(d.fa(a)===b)return-1;d.Md(a,b);b.Tt(c);d=this.g;null!==d&&(c?d.oa():d.Wp(b));kl(this,a,b);return a}; +p||null!==d&&!d(p)||f.add(p)))}v.v(k);v.v(l);return f};g=qg.prototype;g.Cf=function(a,b){if(this.visible){var c;c=void 0===b?a.tb:b;for(var d=this.zb.n,e=d.length,f=0;f=d.count)a=d.count;else if(d.fa(a)===b)return-1;d.Md(a,b);b.Tt(c);d=this.g;null!==d&&(c?d.oa():d.Vp(b));kl(this,a,b);return a}; g.mf=function(a,b,c){if(!c&&b.layer!==this&&null!==b.layer)return b.layer.mf(a,b,c);var d=this.zb;if(0>a||a>=d.length){if(a=d.indexOf(b),0>a)return-1}else if(d.fa(a)!==b&&(a=d.indexOf(b),0>a))return-1;b.Ut(c);d.$c(a);d=this.g;null!==d&&(c?d.oa():d.mf(b));b.Mv=null;return a}; -function kl(a,b,c){b=ll(a,b,c);if(c instanceof V&&null!==c&&isNaN(c.ao)){if(0!==c.Pc.count){for(var d=-1,e=a.zb.n,f=e.length,h=0;hd&&k.La===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.fa(f).ao;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.$c(b);a.Md(f,c);return f}for(h=NaN;0<=--f&&(h=a.fa(f).ao,isNaN(h)););}else if(!isNaN(l)&&l=d){k--;if(k===b)break;a.$c(b);a.Md(k,c);return k}for(l=NaN;++kd&&k.La===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.fa(f).$n;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.$c(b);a.Md(f,c);return f}for(h=NaN;0<=--f&&(h=a.fa(f).$n,isNaN(h)););}else if(!isNaN(l)&&l=d){k--;if(k===b)break;a.$c(b);a.Md(k,c);return k}for(l=NaN;++ka||1e[1]&&(v.trace("Warning: You have entered a license key for GoJS version 1.7 or later, but this library is version "+ +NaN,NaN,NaN)).freeze();this.bw=new J(vl);wl(this);this.Ov=this.xv=this.Xv=this.dC=this.cC=this.eC=this.Yj=this.al=this.Ui=null;xl(this);this.qd=null;this.wv=!1;this.qo=null;this.$a=new kh;this.$a.initializeStandardTools();this.Ya=this.Bt=this.$a;this.pb=new sg;this.ca=new Q;this.aj=!0;this.Rb=new tg;this.aj=!1;this.qC=this.Jy=null;this.Cd=1;this.hk=null;this.dl=new yl;void 0!==a&&zl(this,a);var e=v.vfo.split(".");!0!==v.Ww.licenseKey&&"1"===e[0]&&7>e[1]&&(v.trace("Warning: You have entered a license key for GoJS version 1.7 or later, but this library is version "+ v.vfo+". This license key will do nothing until you upgrade to GoJS 1.7 or later."),v.Ww.licenseKey=!0);this.jl=1;this.Em=0;this.NC=new y;this.JD=500;this.Zu=new y;this.Us=null;this.Vc=this.gl=!1}v.ga("Diagram",E); -E.prototype.clear=E.prototype.clear=function(){var a=null;null!==this.qd&&(a=this.qd.V);this.ca.clear();for(var b=this.ac.length,c=0;c=a)return b;for(var c=this.ac.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.Z instanceof E?b.Z:null}; v.defineProperty(E,{ij:"div"},function(){return this.Nb},function(a){null!==a&&v.F(a,HTMLDivElement,E,"div");if(this.Nb!==a){nl=[];var b=this.Nb;null!==b?(b.Z=void 0,b.innerHTML="",null!==this.Eb&&(this.Eb.removeEventListener("touchstart",this.hG,!1),this.Eb.removeEventListener("touchmove",this.gG,!1),this.Eb.removeEventListener("touchend",this.fG,!1),this.Eb.td.Z=null),b=this.$a,null!==b&&(b.cf.each(function(a){a.cancelWaitAfter()}),b.Zf.each(function(a){a.cancelWaitAfter()}),b.$f.each(function(a){a.cancelWaitAfter()})), -b.cancelWaitAfter(),this.Ya.doCancel(),this.uf=this.Eb=null,window.removeEventListener("resize",this.qG,!1),window.removeEventListener("mousemove",this.fq,!0),window.removeEventListener("mousedown",this.eq,!0),window.removeEventListener("mouseup",this.hq,!0),window.removeEventListener("mousewheel",this.zh,!0),window.removeEventListener("DOMMouseScroll",this.zh,!0),window.removeEventListener("mouseout",this.gq,!0)):this.dh=!1;this.Nb=null;if(null!==a){if(b=a.Z)b.ij=null;zl(this,a);this.Mx()}}}); -function Cl(a){var b=a.Eb;b.addEventListener("touchstart",a.hG,!1);b.addEventListener("touchmove",a.gG,!1);b.addEventListener("touchend",a.fG,!1);b.addEventListener("mousemove",a.fq,!1);b.addEventListener("mousedown",a.eq,!1);b.addEventListener("mouseup",a.hq,!1);b.addEventListener("mousewheel",a.zh,!1);b.addEventListener("DOMMouseScroll",a.zh,!1);b.addEventListener("mouseout",a.gq,!1);b.addEventListener("keydown",a.vI,!1);b.addEventListener("keyup",a.wI,!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.$a.Tp===uk&&b.preventDefault()},!1);b.addEventListener("pointerdown",a.aJ,!1);b.addEventListener("pointermove",a.cJ,!1);b.addEventListener("pointerleave",a.bJ,!1);window.addEventListener("resize",a.qG,!1)}E.prototype.computePixelRatio=function(){return null!==this.hk?this.hk:this.EG};E.prototype.doMouseMove=function(){this.Ya.doMouseMove()}; +b.cancelWaitAfter(),this.Ya.doCancel(),this.uf=this.Eb=null,window.removeEventListener("resize",this.qG,!1),window.removeEventListener("mousemove",this.eq,!0),window.removeEventListener("mousedown",this.dq,!0),window.removeEventListener("mouseup",this.gq,!0),window.removeEventListener("mousewheel",this.zh,!0),window.removeEventListener("DOMMouseScroll",this.zh,!0),window.removeEventListener("mouseout",this.fq,!0)):this.dh=!1;this.Nb=null;if(null!==a){if(b=a.Z)b.ij=null;zl(this,a);this.Mx()}}}); +function Cl(a){var b=a.Eb;b.addEventListener("touchstart",a.hG,!1);b.addEventListener("touchmove",a.gG,!1);b.addEventListener("touchend",a.fG,!1);b.addEventListener("mousemove",a.eq,!1);b.addEventListener("mousedown",a.dq,!1);b.addEventListener("mouseup",a.gq,!1);b.addEventListener("mousewheel",a.zh,!1);b.addEventListener("DOMMouseScroll",a.zh,!1);b.addEventListener("mouseout",a.fq,!1);b.addEventListener("keydown",a.vI,!1);b.addEventListener("keyup",a.wI,!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.$a.Sp===uk&&b.preventDefault()},!1);b.addEventListener("pointerdown",a.aJ,!1);b.addEventListener("pointermove",a.cJ,!1);b.addEventListener("pointerleave",a.bJ,!1);window.addEventListener("resize",a.qG,!1)}E.prototype.computePixelRatio=function(){return null!==this.hk?this.hk:this.EG};E.prototype.doMouseMove=function(){this.Ya.doMouseMove()}; E.prototype.doMouseDown=function(){this.Ya.doMouseDown()};E.prototype.doMouseUp=function(){this.Ya.doMouseUp()};E.prototype.doMouseWheel=function(){this.Ya.doMouseWheel()};E.prototype.doKeyDown=function(){this.Ya.doKeyDown()};E.prototype.doKeyUp=function(){this.Ya.doKeyUp()};E.prototype.doFocus=function(){this.focus()};E.prototype.focus=E.prototype.focus=function(){this.Eb&&this.Eb.focus()}; function Bk(a){if(null!==a.Eb){var b=a.Nb;if(0!==b.clientWidth&&0!==b.clientHeight){var c=a.cl?a.Fd:0,d=a.Pj?a.Fd:0,e=a.Cd;a.Cd=a.computePixelRatio();a.Cd!==e&&(a.Er=!0,a.Me());if(b.clientWidth!==a.Ib+c||b.clientHeight!==a.Mb+d)a.ym=!0,a.De=!0,b=a.Rb,null!==b&&b.wx&&a.Dl===Dh&&b.J(),a.Xd||a.Me()}}} function wl(a){var b=new qg;b.name="Background";a.pt(b);b=new qg;b.name="";a.pt(b);b=new qg;b.name="Foreground";a.pt(b);b=new qg;b.name="Adornment";b.Mc=!0;a.pt(b);b=new qg;b.name="Tool";b.Mc=!0;b.WE=!0;a.pt(b);b=new qg;b.name="Grid";b.vf=!1;b.Qg=!1;b.Mc=!0;a.YG(b,a.Ht("Background"))} function Dl(a){a.qd=new D(El);a.qd.name="GRID";var b=new X;b.Cb="LineH";b.stroke="lightgray";b.fb=.5;b.interval=1;a.qd.add(b);b=new X;b.Cb="LineH";b.stroke="gray";b.fb=.5;b.interval=5;a.qd.add(b);b=new X;b.Cb="LineH";b.stroke="gray";b.fb=1;b.interval=10;a.qd.add(b);b=new X;b.Cb="LineV";b.stroke="lightgray";b.fb=.5;b.interval=1;a.qd.add(b);b=new X;b.Cb="LineV";b.stroke="gray";b.fb=.5;b.interval=5;a.qd.add(b);b=new X;b.Cb="LineV";b.stroke="gray";b.fb=1;b.interval=10;a.qd.add(b);b=new S;b.add(a.qd); -b.Xf="Grid";b.ao=0;b.qA=!1;b.VE=!1;b.Qg=!1;b.uA="GRID";a.add(b);a.zb.remove(b);a.qd.visible=!1}E.prototype.GG=function(){this.Z.isEnabled?this.Z.GH(this):Fl(this.Z)};E.prototype.YC=function(a){this.Z.isEnabled?(this.Z.pz=!0,this.Z.rz=a.target.scrollTop,this.Z.qz=a.target.scrollLeft):Fl(this.Z)}; +b.Xf="Grid";b.$n=0;b.qA=!1;b.VE=!1;b.Qg=!1;b.uA="GRID";a.add(b);a.zb.remove(b);a.qd.visible=!1}E.prototype.GG=function(){this.Z.isEnabled?this.Z.GH(this):Fl(this.Z)};E.prototype.YC=function(a){this.Z.isEnabled?(this.Z.pz=!0,this.Z.rz=a.target.scrollTop,this.Z.qz=a.target.scrollLeft):Fl(this.Z)}; E.prototype.diagramScroll=E.prototype.GH=function(a){if(this.pz&&null!==this.Eb){this.kw=!0;var b=this.se,c=this.tb,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;s=a.scrollLeft;if(this.Ir)switch(this.nz){case "negative":s=s+a.scrollWidth-a.clientWidth;break;case "reverse":s=a.scrollWidth-s-a.clientWidth}var u=s;el&&(this.position=s.l(-(this.ow.scrollWidth-this.Ib)+u-this.Ib/r+k,this.position.y))),a.LG&&this.pe&&(bn&&(this.position=s.l(this.position.x,-(this.ow.scrollHeight-this.Mb)+a.scrollTop-this.Mb/r+m))),v.v(s),Gl(this),this.ym=this.kw=!1,b=this.se,c=this.tb,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.Ls.style.width="1px"),h>=f&&b>=c&&m<=n&&(this.Ls.style.height="1px"))}};E.prototype.computeBounds=E.prototype.rh=function(){0c&&(e=c),ea.wh&&(e=a.wh),e):b===Nl?(e=l>k?(h-a.Fd)/d:(f-a.Fd)/e,e>c&&(e=c),ea.wh&&(e=a.wh),e):a.scale}E.prototype.zoomToFit=E.prototype.zoomToFit=function(){this.scale=Jl(this,Ml)}; E.prototype.zoomToRect=function(a,b){void 0===b&&(b=Ml);var c=a.width,d=a.height;if(!(0===c||0===d||isNaN(c)&&isNaN(d))){var e=1;if(b===Ml||b===Nl)if(isNaN(c))e=this.tb.height*this.scale/d;else if(isNaN(d))e=this.tb.width*this.scale/c;else var e=this.Ib,f=this.Mb,e=b===Nl?f/d>e/c?(f-(this.Pj?this.Fd:0))/d:(e-(this.cl?this.Fd:0))/c:Math.min(f/d,e/c);this.scale=e;this.position=new y(a.x,a.y)}};v.defineProperty(E,{oA:null},function(){return this.Vc},function(a){this.Vc=a}); E.prototype.alignDocument=function(a,b){this.Qj&&Ll(this,this.rh());var c=this.se,d=this.tb;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))}; @@ -769,41 +769,41 @@ E.prototype.wI=function(a){if(!this.Z.isEnabled)return!1;var b=this.Z.Pb;Ol(this return Sl(b,a)};E.prototype.wr=function(a){var b=this.Eb;if(null===b)return new y(0,0);var c=this.Ib,d=this.Mb,b=b.getBoundingClientRect(),c=a.clientX-c/b.width*b.left;a=a.clientY-d/b.height*b.top;return null!==this.fd?(a=new y(c,a),Ra(a,this.fd),a):new y(c,a)};function Pl(a,b,c){var d=a.Eb,e=a.Ib,f=a.Mb,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.ef.l(h,k);null!==a.fd?(b=v.xb(h,k),a.fd.ki(b),c.da.assign(b),v.v(b)):c.da.l(h,k)} function qf(a,b,c,d){var e=null;if(void 0!==b.targetTouches){if(2>b.targetTouches.length)return;e=b.targetTouches[c]}else if(null!==a.Xi[0])e=a.Xi[c];else return;c=a.Eb;b=a.Ib;a=a.Mb;var f=0,h=0;null!==c&&null!==e&&(c=c.getBoundingClientRect(),f=e.clientX-b/c.width*c.left,h=e.clientY-a/c.height*c.top);d.l(f,h)}E.prototype.invalidateDocumentBounds=E.prototype.tc=function(){this.Qj||(this.Qj=!0,this.Me(!0))};function al(a){a.Xd||zi(a);a.Qj&&Ll(a,a.rh())} E.prototype.redraw=E.prototype.Mx=function(){this.Vc||this.Xd||(this.oa(),Tl(this),Gl(this),this.tc(),this.Yf())};E.prototype.isUpdateRequested=function(){return this.Nf};E.prototype.delayInitialization=function(a){void 0===a&&(a=null);var b=this.Qa,c=b.isEnabled;b.oi();b.isEnabled=!1;Ji(this);this.dh=!1;b.isEnabled=c;null!==a&&v.setTimeout(a,1)}; -E.prototype.requestUpdate=E.prototype.Me=function(a){void 0===a&&(a=!1);if(!0!==this.Nf&&!(this.Vc||!1===a&&this.Xd)){this.Nf=!0;var b=this;requestAnimationFrame(function(){b.Nf&&b.Yf()})}};E.prototype.maybeUpdate=E.prototype.Yf=function(){if(!this.Do||this.Nf)this.Do&&(this.Do=!1),Ji(this)};function Ul(a,b){a.Qa.nf||a.Vc||!a.ym||Fl(a)||(b&&zi(a),Il(a,!1))} -function Ji(a){if(!a.Xd&&(a.Nf=!1,null!==a.Nb)){a.Xd=!0;var b=a.Qa,c=a.mz;if(!b.Oo&&0!==c.length){for(var d=c.n,e=d.length,f=0;fb;b++){var c=a.pg.i;if(null===c||0===a.pg.count)break;a.pg=new J(G);a.nB(c,a.pg)}a.dg.each(function(a){a instanceof V&&0!==(a.za&65536)!==!1&&(a.za^=65536)})}} -E.prototype.nB=function(a,b){for(a.reset();a.next();){var c=a.value;!c.ee()||c instanceof V||(c.Wl()?(sk(c,Infinity,Infinity),c.jc()):b.add(c))}for(a.reset();a.next();)c=a.value,c instanceof V&&c.isVisible()&&am(this,c);for(a.reset();a.next();)c=a.value,c instanceof W&&c.isVisible()&&(c.Wl()?(sk(c,Infinity,Infinity),c.jc()):b.add(c));for(a.reset();a.next();)c=a.value,c instanceof mh&&c.isVisible()&&(c.Wl()?(sk(c,Infinity,Infinity),c.jc()):b.add(c))}; -function am(a,b){for(var c=v.lb(),d=v.lb(),e=b.Pc;e.next();){var f=e.value;f.isVisible()&&(f instanceof V?(tm(f)||um(f)||vm(f))&&am(a,f):f instanceof W?f.W===b||f.aa===b?d.push(f):c.push(f):(sk(f,Infinity,Infinity),f.jc()))}for(var e=c.length,h=0;hx+1&& -(H=Math.max((t-x)*c+a.Ib,H)),q+k+1p+1&&(C=Math.max((A-p)*c+a.Mb,C)),r+l+1x+1&&(H=Math.max((t-x)*c+a.Ib,H)),q+1p+1&&(C=Math.max((A-p)*c+l,C)),r+1x+1&&(k=a.position.x*c));if(a.Ir)switch(a.nz){case "negative":k=-(b.scrollWidth-k-b.clientWidth);break;case "reverse":k=b.scrollWidth-k-b.clientWidth}b.scrollLeft=k;a.lA&&a.pe&&(r+1p+1&&(b.scrollTop=a.position.y*c));h&&(a.Er=!0);m=a.Ib;n=a.Mb;b.style.width=m+(a.cl?a.Fd:0)+"px";b.style.height=n+(a.Pj?a.Fd:0)+"px";a.pz=!1;return d!==m||e!== +function Fl(a){var b=a.Eb;if(null===b)return!0;var c=a.Nb,d=a.Ib,e=a.Mb,f=a.ND.copy();if(!f.H())return!0;var h=!1,k=a.cl?a.Fd:0,l=a.Pj?a.Fd:0,m=c.clientWidth||d+k,n=c.clientHeight||e+l;if(m!==d+k||n!==e+l)a.cl=!1,a.Pj=!1,l=k=0,a.Ib=m,a.Mb=n,h=a.Er=!0;a.ym=!1;var p=a.tb,c=a.se,m=c.width,n=c.height,q=p.width,r=p.height,s=c.x,u=p.x,t=c.right,x=p.right+k,w=c.y,A=p.y,z=c.bottom,p=p.bottom+l,H="1px",C="1px",c=a.scale;a.SA===ol&&mx+1&& +(H=Math.max((t-x)*c+a.Ib,H)),q+k+1p+1&&(C=Math.max((z-p)*c+a.Mb,C)),r+l+1x+1&&(H=Math.max((t-x)*c+a.Ib,H)),q+1p+1&&(C=Math.max((z-p)*c+l,C)),r+1x+1&&(k=a.position.x*c));if(a.Ir)switch(a.nz){case "negative":k=-(b.scrollWidth-k-b.clientWidth);break;case "reverse":k=b.scrollWidth-k-b.clientWidth}b.scrollLeft=k;a.lA&&a.pe&&(r+1p+1&&(b.scrollTop=a.position.y*c));h&&(a.Er=!0);m=a.Ib;n=a.Mb;b.style.width=m+(a.cl?a.Fd:0)+"px";b.style.height=n+(a.Pj?a.Fd:0)+"px";a.pz=!1;return d!==m||e!== n||a.Qa.rc?(p=a.tb,a.qu(f,p,c,a.scale,h),!1):!0} -E.prototype.add=E.prototype.add=function(a){v.F(a,S,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.Fq&&(a.kl="Tool");var c=a.Xf,b=this.Ht(c);null===b&&(b=this.Ht(""));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.Wp(99999999,a,a.g===this),0<=c&&this.Zc(Nf,"parts",b,null,a,null,c),b.Mc||this.tc(),a.J(Cm),c=a.zx,null!== +E.prototype.add=E.prototype.add=function(a){v.F(a,S,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.Fq&&(a.kl="Tool");var c=a.Xf,b=this.Ht(c);null===b&&(b=this.Ht(""));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.Vp(99999999,a,a.g===this),0<=c&&this.Zc(Nf,"parts",b,null,a,null,c),b.Mc||this.tc(),a.J(Cm),c=a.zx,null!== c&&c(a,null,b))}}; -E.prototype.Wp=function(a){if(a instanceof T){if(this.bp.add(a),a instanceof V){var b=a.La;null===b?this.ul.add(a):b.Zo.add(a);b=a.Rb;null!==b&&(b.g=this)}}else a instanceof W?this.Vo.add(a):a instanceof mh||this.zb.add(a);var c=this;Dm(a,function(a){Em(c,a)});a.Kb&&a.I();b=a.data;null!==b&&(a instanceof mh||(a instanceof W?this.Gj.add(b,a):this.zi.add(b,a)),Dm(a,function(a){Fm(c,a)}));!0!==um(a)&&!0!==vm(a)||this.pg.add(a);Gm(a,!0,this);Hm(a)?(a.Y.H()&&this.oa(jl(a,a.Y)),this.tc()):a.isVisible()&& +E.prototype.Vp=function(a){if(a instanceof T){if(this.ap.add(a),a instanceof V){var b=a.La;null===b?this.ul.add(a):b.Yo.add(a);b=a.Rb;null!==b&&(b.g=this)}}else a instanceof W?this.Uo.add(a):a instanceof mh||this.zb.add(a);var c=this;Dm(a,function(a){Em(c,a)});a.Kb&&a.I();b=a.data;null!==b&&(a instanceof mh||(a instanceof W?this.Gj.add(b,a):this.zi.add(b,a)),Dm(a,function(a){Fm(c,a)}));!0!==um(a)&&!0!==vm(a)||this.pg.add(a);Gm(a,!0,this);Hm(a)?(a.Y.H()&&this.oa(jl(a,a.Y)),this.tc()):a.isVisible()&& a.Y.H()&&this.oa(jl(a,a.Y));this.Me()}; -E.prototype.mf=function(a){a.xt();if(a instanceof T){if(this.bp.remove(a),a instanceof V){var b=a.La;null===b?this.ul.remove(a):b.Zo.remove(a);b=a.Rb;null!==b&&(b.g=null)}}else a instanceof W?this.Vo.remove(a):a instanceof mh||this.zb.remove(a);var c=this;Dm(a,function(a){Im(c,a)});b=a.data;null!==b&&(a instanceof mh||(a instanceof W?this.Gj.remove(b):this.zi.remove(b)),Dm(a,function(a){Jm(c,a)}));this.pg.remove(a);Hm(a)?(a.Y.H()&&this.oa(jl(a,a.Y)),this.tc()):a.isVisible()&&a.Y.H()&&this.oa(jl(a, +E.prototype.mf=function(a){a.xt();if(a instanceof T){if(this.ap.remove(a),a instanceof V){var b=a.La;null===b?this.ul.remove(a):b.Yo.remove(a);b=a.Rb;null!==b&&(b.g=null)}}else a instanceof W?this.Uo.remove(a):a instanceof mh||this.zb.remove(a);var c=this;Dm(a,function(a){Im(c,a)});b=a.data;null!==b&&(a instanceof mh||(a instanceof W?this.Gj.remove(b):this.zi.remove(b)),Dm(a,function(a){Jm(c,a)}));this.pg.remove(a);Hm(a)?(a.Y.H()&&this.oa(jl(a,a.Y)),this.tc()):a.isVisible()&&a.Y.H()&&this.oa(jl(a, a.Y));this.Me()};E.prototype.remove=E.prototype.remove=function(a){v.F(a,S,E,"remove:part");Km(this,a,!0)};function Km(a,b,c){var d=b.layer;null!==d&&d.g===a&&(b.cb=!1,b.Kg=!1,b.J(Lm),c&&b.tn(),c=d.mf(-1,b,!1),0<=c&&a.Zc(Of,"parts",d,b,null,c,null),a=b.zx,null!==a&&a(b,d,null))} -E.prototype.removeParts=E.prototype.PA=function(a,b){if(v.isArray(a))for(var c=v.Xa(a),d=0;dl)){var m=l;an(k)&&m++;k.mf(m);bn(k,m,l)}}}}function Fm(a,b){var c=b.Vj;if(v.isArray(c)){var d=a.Cm.na(c);if(null===d)d=[],d.push(b),a.Cm.add(c,d);else{for(c=0;cthis.scale&&(this.scale=a)):v.Fa(a,"> 0",E,"minScale"))}); v.defineProperty(E,{wh:"maxScale"},function(){return this.Rv},function(a){v.Zd(a,E,"maxScale");var b=this.Rv;b!==a&&(0 0",E,"maxScale"))});v.defineProperty(E,{jm:"zoomPoint"},function(){return this.Ew},function(a){this.Ew.L(a)||(v.F(a,y,E,"zoomPoint"),this.Ew=a=a.S())}); -v.defineProperty(E,{iE:"contentAlignment"},function(){return this.oo},function(a){var b=this.oo;b.L(a)||(v.F(a,L,E,"contentAlignment"),this.oo=a=a.S(),this.h("contentAlignment",b,a),Il(this,!1))});v.defineProperty(E,{XK:"initialContentAlignment"},function(){return this.Io},function(a){var b=this.Io;b.L(a)||(v.F(a,L,E,"initialContentAlignment"),this.Io=a=a.S(),this.h("initialContentAlignment",b,a))}); -v.defineProperty(E,{padding:"padding"},function(){return this.jf},function(a){"number"===typeof a?a=new mb(a):v.F(a,mb,E,"padding");var b=this.jf;b.L(a)||(this.jf=a=a.S(),this.tc(),this.h("padding",b,a))});v.u(E,{dg:"nodes"},function(){return this.bp.i});v.u(E,{links:"links"},function(){return this.Vo.i});v.u(E,{Gk:"parts"},function(){return this.zb.i}); -E.prototype.findTopLevelNodesAndLinks=function(){for(var a=new J(S),b=this.bp.i;b.next();){var c=b.value;c.Zp&&a.add(c)}for(b=this.Vo.i;b.next();)c=b.value,c.Zp&&a.add(c);return a.i};E.prototype.findTopLevelGroups=function(){return this.ul.i};v.defineProperty(E,{Rb:"layout"},function(){return this.ke},function(a){var b=this.ke;b!==a&&(v.F(a,tg,E,"layout"),null!==b&&(b.g=null,b.group=null),this.ke=a,a.g=this,a.group=null,this.Yu=!0,this.h("layout",b,a),this.Me())}); -E.prototype.layoutDiagram=function(a){zi(this);a&&gn(this,!0);Xl(this,!1)};function gn(a,b){for(var c=a.ul.i;c.next();)pn(a,c.value,b);null!==a.Rb&&(b?a.Rb.Af=!1:a.Rb.J())}function pn(a,b,c){if(null!==b){for(var d=b.Zo.i;d.next();)pn(a,d.value,c);null!==b.Rb&&(c?b.Rb.Af=!1:b.Rb.J())}} -function Xl(a,b){if(!a.Fy){var c=a.Rb,d=a.Ua;a.Ua=!0;try{var e=a.pa.Fh;0===e&&a.Tb("Layout");var f=a.Qa;1!==a.pa.Fh||f.nf||f.rc||b||f.Pn("Layout");for(var h=a.ul.i;h.next();)qn(a,h.value,b);c.Af||b&&!c.fF&&0!==e||(c.doLayout(a),zi(a),c.Af=!0)}finally{0===e&&a.Hd("Layout"),a.Yu=!c.Af,a.Ua=d}}}function qn(a,b,c){if(null!==b){for(var d=b.Zo.i;d.next();)qn(a,d.value,c);d=b.Rb;null===d||d.Af||c&&!d.fF||(b.Mn=!b.location.H(),d.doLayout(b),b.J(rn),d.Af=!0,am(a,b))}} -v.defineProperty(E,{Pd:"isTreePathToChildren"},function(){return this.Kv},function(a){var b=this.Kv;if(b!==a&&(v.j(a,"boolean",E,"isTreePathToChildren"),this.Kv=a,this.h("isTreePathToChildren",b,a),!this.pa.eb))for(a=this.dg;a.next();)sn(a.value)});E.prototype.findTreeRoots=function(){for(var a=new I(T),b=this.dg;b.next();){var c=b.value;c.Zp&&null===c.vn()&&a.add(c)}return a.i}; +v.defineProperty(E,{iE:"contentAlignment"},function(){return this.no},function(a){var b=this.no;b.L(a)||(v.F(a,L,E,"contentAlignment"),this.no=a=a.S(),this.h("contentAlignment",b,a),Il(this,!1))});v.defineProperty(E,{XK:"initialContentAlignment"},function(){return this.Ho},function(a){var b=this.Ho;b.L(a)||(v.F(a,L,E,"initialContentAlignment"),this.Ho=a=a.S(),this.h("initialContentAlignment",b,a))}); +v.defineProperty(E,{padding:"padding"},function(){return this.jf},function(a){"number"===typeof a?a=new mb(a):v.F(a,mb,E,"padding");var b=this.jf;b.L(a)||(this.jf=a=a.S(),this.tc(),this.h("padding",b,a))});v.u(E,{dg:"nodes"},function(){return this.ap.i});v.u(E,{links:"links"},function(){return this.Uo.i});v.u(E,{Gk:"parts"},function(){return this.zb.i}); +E.prototype.findTopLevelNodesAndLinks=function(){for(var a=new J(S),b=this.ap.i;b.next();){var c=b.value;c.Yp&&a.add(c)}for(b=this.Uo.i;b.next();)c=b.value,c.Yp&&a.add(c);return a.i};E.prototype.findTopLevelGroups=function(){return this.ul.i};v.defineProperty(E,{Rb:"layout"},function(){return this.ke},function(a){var b=this.ke;b!==a&&(v.F(a,tg,E,"layout"),null!==b&&(b.g=null,b.group=null),this.ke=a,a.g=this,a.group=null,this.Yu=!0,this.h("layout",b,a),this.Me())}); +E.prototype.layoutDiagram=function(a){zi(this);a&&gn(this,!0);Xl(this,!1)};function gn(a,b){for(var c=a.ul.i;c.next();)pn(a,c.value,b);null!==a.Rb&&(b?a.Rb.Af=!1:a.Rb.J())}function pn(a,b,c){if(null!==b){for(var d=b.Yo.i;d.next();)pn(a,d.value,c);null!==b.Rb&&(c?b.Rb.Af=!1:b.Rb.J())}} +function Xl(a,b){if(!a.Fy){var c=a.Rb,d=a.Ua;a.Ua=!0;try{var e=a.pa.Fh;0===e&&a.Tb("Layout");var f=a.Qa;1!==a.pa.Fh||f.nf||f.rc||b||f.On("Layout");for(var h=a.ul.i;h.next();)qn(a,h.value,b);c.Af||b&&!c.fF&&0!==e||(c.doLayout(a),zi(a),c.Af=!0)}finally{0===e&&a.Hd("Layout"),a.Yu=!c.Af,a.Ua=d}}}function qn(a,b,c){if(null!==b){for(var d=b.Yo.i;d.next();)qn(a,d.value,c);d=b.Rb;null===d||d.Af||c&&!d.fF||(b.Mn=!b.location.H(),d.doLayout(b),b.J(rn),d.Af=!0,am(a,b))}} +v.defineProperty(E,{Pd:"isTreePathToChildren"},function(){return this.Kv},function(a){var b=this.Kv;if(b!==a&&(v.j(a,"boolean",E,"isTreePathToChildren"),this.Kv=a,this.h("isTreePathToChildren",b,a),!this.pa.eb))for(a=this.dg;a.next();)sn(a.value)});E.prototype.findTreeRoots=function(){for(var a=new I(T),b=this.dg;b.next();){var c=b.value;c.Yp&&null===c.vn()&&a.add(c)}return a.i}; v.defineProperty(E,{lB:"treeCollapsePolicy"},function(){return this.zw},function(a){var b=this.zw;b!==a&&(a!==ql&&a!==Pm&&a!==Qm&&v.k("Unknown Diagram.treeCollapsePolicy: "+a),this.zw=a,this.h("treeCollapsePolicy",b,a))});v.defineProperty(E,{vh:null},function(){return this.AC},function(a){this.AC=a}); function pl(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 la("string",I),d=new la("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.Hy=c;a.Gy=d} function pa(a,b){var c=a.Gy.na(b);return null!==c?c:a.Gy.na(b.toLowerCase())}function tn(a,b){var c=a.Hy.na(b);if(null!==c)return c;c=a.Hy.na(b.toLowerCase());if(null!==c)return c;v.k("Unknown DiagramEvent name: "+b);return null}E.prototype.addDiagramListener=E.prototype.Fz=function(a,b){v.j(a,"string",E,"addDiagramListener:name");v.j(b,"function",E,"addDiagramListener:listener");var c=tn(this,a);null!==c&&c.add(b)}; -E.prototype.removeDiagramListener=E.prototype.BF=function(a,b){v.j(a,"string",E,"removeDiagramListener:name");v.j(b,"function",E,"addDiagramListener:listener");var c=tn(this,a);null!==c&&c.remove(b)};E.prototype.raiseDiagramEvent=E.prototype.Ca=function(a,b,c){var d=tn(this,a),e=new Jf;e.g=this;e.name=pa(this,a);void 0!==b&&(e.fB=b);void 0!==c&&(e.JA=c);a=d.length;if(1===a)d=d.fa(0),d(e);else if(0!==a)for(b=d.fc(),c=0;c=d.top&&0>=d.left&&0>=d.right&&0>=d.bottom)return c;var e=a.tb,f=a.scale,e=v.Ug(0,0,e.width*f,e.height*f),h=v.xb(0,0);if(b.x>=e.x&&b.xe.x+e.width-d.right&&(k=Math.max(a.yu,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.zu,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.Lc($c)||(c=new y(c.x+h.x/f,c.y+h.y/f));v.Gb(e);v.v(h);return c}E.prototype.makeSvg=E.prototype.makeSVG=function(a){void 0===a&&(a=new ua);a.context="svg";a=Cn(this,a);return null!==a?a.em:null}; E.prototype.makeImage=function(a){void 0===a&&(a=new ua);var b=(a.document||document).createElement("img");b.src=this.EI(a);return b}; E.prototype.makeImageData=E.prototype.EI=function(a){void 0===a&&(a=new ua);var b=Cn(this,a);if(null!==b){var c=a.returnType,c=void 0===c?"string":c.toLowerCase();switch(c){case "imagedata":return b.uk.getImageData(0,0,b.width,b.height);case "blob":b=b.td;c=a.callback;if("function"!==typeof c){v.k('Error: Diagram.makeImageData called with "returnType: toBlob", but no "callback" function property defined.');break}if("function"===typeof b.KJ)return b.KJ(c,a.type,a.details),"toBlob";if("function"=== typeof b.VI)return c(b.VI(a.type,a.details)),"msToBlob";c(null);break;default:return b.toDataURL(a.type,a.details)}}return""};var Dn=!1; function Cn(a,b){a.Qa.oi();a.Yf();if(null===a.Eb)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 mb(l):l instanceof mb||(l=new mb(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.zo=!1;Yc(a.uf,!0);var s=new Rc(null,p),u=s.uk,t=s;if(!(d||e||k||h))return s.width=a.Ib+Math.ceil(l.left+l.right),s.height=a.Mb+Math.ceil(l.top+l.bottom),"svg"===b.context&&(u=t=new Jc(s.td,p,q),u instanceof Jc&& -(a.zo=!0)),zm(a,u,l,new ia(s.width,s.height),a.Lb,a.mb,k,m,r,n),a.zo=!0,t;var x=a.pb.Uw,w=new y(0,0),z=a.se.copy();z.HJ(a.padding);if(r)for(var A=!0,A=a.ac.n,H=A.length,C=0;Cx?(e=x,h=z.width,Z=z.height):(h=f.width,Z=f.height)):(h=z.width*e,Z=z.height*e):(e=x,h=z.width,Z=z.height);null!==l?(h+=ba,Z+=A):l=new mb(0);null!==f&&(d=f.width,f=f.height,"svg"!==b.context&&c&&!Dn&&(h>d||Z>f)&&(v.trace("Diagram.makeImage(data): Diagram width or height is larger than the default max size. ("+Math.ceil(h)+"x"+Math.ceil(Z)+" vs 2000x2000) Consider increasing the max size."), -Dn=!0),isNaN(d)&&(d=2E3),isNaN(f)&&(f=2E3),isFinite(d)&&(h=Math.min(h,d)),isFinite(f)&&(Z=Math.min(Z,f)));s.width=Math.ceil(h);s.height=Math.ceil(Z);"svg"===b.context&&(u=t=new Jc(s.td,p,q),u instanceof Jc&&(a.zo=!0));zm(a,u,l,new ia(Math.ceil(h),Math.ceil(Z)),e,w,k,m,r,n);a.zo=!0;return t}E.inherit=function(a,b){v.j(a,"function",E,"inherit");v.j(b,"function",E,"inherit");b.MG&&v.k("Cannot inherit from "+v.lf(b));v.Ma(a,b)}; +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 mb(l):l instanceof mb||(l=new mb(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.yo=!1;Yc(a.uf,!0);var s=new Rc(null,p),u=s.uk,t=s;if(!(d||e||k||h))return s.width=a.Ib+Math.ceil(l.left+l.right),s.height=a.Mb+Math.ceil(l.top+l.bottom),"svg"===b.context&&(u=t=new Jc(s.td,p,q),u instanceof Jc&& +(a.yo=!0)),zm(a,u,l,new ia(s.width,s.height),a.Lb,a.mb,k,m,r,n),a.yo=!0,t;var x=a.pb.Uw,w=new y(0,0),A=a.se.copy();A.HJ(a.padding);if(r)for(var z=!0,z=a.ac.n,H=z.length,C=0;Cx?(e=x,h=A.width,Z=A.height):(h=f.width,Z=f.height)):(h=A.width*e,Z=A.height*e):(e=x,h=A.width,Z=A.height);null!==l?(h+=ba,Z+=z):l=new mb(0);null!==f&&(d=f.width,f=f.height,"svg"!==b.context&&c&&!Dn&&(h>d||Z>f)&&(v.trace("Diagram.makeImage(data): Diagram width or height is larger than the default max size. ("+Math.ceil(h)+"x"+Math.ceil(Z)+" vs 2000x2000) Consider increasing the max size."), +Dn=!0),isNaN(d)&&(d=2E3),isNaN(f)&&(f=2E3),isFinite(d)&&(h=Math.min(h,d)),isFinite(f)&&(Z=Math.min(Z,f)));s.width=Math.ceil(h);s.height=Math.ceil(Z);"svg"===b.context&&(u=t=new Jc(s.td,p,q),u instanceof Jc&&(a.yo=!0));zm(a,u,l,new ia(Math.ceil(h),Math.ceil(Z)),e,w,k,m,r,n);a.yo=!0;return t}E.inherit=function(a,b){v.j(a,"function",E,"inherit");v.j(b,"function",E,"inherit");b.MG&&v.k("Cannot inherit from "+v.lf(b));v.Ma(a,b)}; function yl(){this.PG="63ad05bbe23a1786468a4c741b6d2";this.Ei=this.PG===this._tk?!0:null} function En(a){var b="f",c=window[v.Fg("76a715b2f73f148a")][v.Fg("72ba13b5")],d=v.Fg;if(window[d("7da7")]&&window[d("7da7")][d("76a115b6ed251eaf4692")]){a.Ei=!0;var e=window[d("7da7")][d("76a115b6ed251eaf4692")],e=d(e).split(d("39e9"));if(6>e.length)return;var f=d(e[1]).split(".");if("7da71ca0"!==e[4])return;var h=d(v[d("6cae19")]).split(".");if(f[0]>h[0]||f[0]===h[0]&&f[1]>=h[1]){f=c[d("76ad18b4f73e")];for(h=c[d("73a612b6fb191d")](d("35e7"))+2;h f&&d(e[2])!==d("7da71ca0ad381e90")&&(f=b[d("73a612b6fb191d")](d("76a715b2ef3e149757")));0>f&&(f=b[d("73a612b6fb191d")](d("76a715b2ef3e149757")));a.Ei=!(0<=f&&ff&&d(v.adym)!==d("7da71ca0ad381e90")&&(f=b[d("73a612b6fb191d")](d("76a715b2ef3e149757")));a.Ei=!(0<=f&&fb.timeStamp-a.Em)b.preventDefault();else if(a.gl)b.preventDefault();else{a.Wc=a.Pb;a.Pb=c;Ol(a,a,b,c,!0);c.Ll=!0;c.He=b.detail;if(v.ZE||v.$E)b.timeStamp-a.Emb.timeStamp-a.Em){b.preventDefault();return}a.Em=b.timeStamp}if(v.Dn&&null!==a.Us)a.Us=null,b.preventDefault();else{a.Wc=a.Pb;a.Pb=c;Ol(a,a,b,c,!0);c.up=!0; -c.He=b.detail;if(v.ZE||v.$E)c.He=a.jl;c.bubbles=b.bubbles;b.target.Z&&(c.Tg=b.target.Z);a.VF(b,null,new y,c.Tg)||(a.doMouseUp(),Sh(a),Sl(c,b))}}};a.zh=function(b){if(a.isEnabled){var c=a.Wc;a.Wc=a.Pb;a.Pb=c;Ol(a,a,b,c,!0);c.bubbles=!0;c.Kl=void 0!==b.wheelDelta?b.wheelDelta:-40*b.detail;a.doMouseWheel();Sl(c,b)}};a.gq=function(){if(a.isEnabled){a.Am=!1;var b=a.Ya;b.cancelWaitAfter();b instanceof kh&&b.hideToolTip()}};a.hG=function(b){if(a.isEnabled){a.ct=!1;a.gl=!0;var c=a.Wc;a.Wc=a.Pb;a.Pb=c;Ql(a, +c.style.position="absolute";c.style.overflow="auto";c.style.width=a.Ib+"px";c.style.height=a.Mb+"px";c.style.zIndex="1";e.style.position="absolute";e.style.width="1px";e.style.height="1px";a.Nb.appendChild(c);c.appendChild(e);c.onscroll=a.GG;c.onmousedown=a.YC;c.ontouchstart=a.YC;c.Z=a;c.KG=!0;c.LG=!0;a.ow=c;a.Ls=e;a.OA=v.lE(function(){a.hk=null;a.oa()},300,!1);a.qG=v.lE(function(){Bk(a)},250,!1);a.preventDefault=function(a){a.preventDefault();return!1};a.eq=function(b){if(a.isEnabled){a.Am=!0;var c= +a.Wc;v.Dn&&c.pj?(b.preventDefault(),b.simulated=!0,a.Us=b):(a.Wc=a.Pb,a.Pb=c,Ol(a,a,b,c,!0),a.Yx(b,null,b.target.Z)||(a.doMouseMove(),a.Ya.isBeyondDragSize()&&(a.jl=0),Sl(c,b)))}};a.dq=function(b){if(a.isEnabled){a.Am=!0;var c=a.Wc;if(v.Dn&&null!==a.Us)a.Us=b,b.preventDefault();else if(v.Dn&&400>b.timeStamp-a.Em)b.preventDefault();else if(a.gl)b.preventDefault();else{a.Wc=a.Pb;a.Pb=c;Ol(a,a,b,c,!0);c.Ll=!0;c.He=b.detail;if(v.ZE||v.$E)b.timeStamp-a.Emb.timeStamp-a.Em){b.preventDefault();return}a.Em=b.timeStamp}if(v.Dn&&null!==a.Us)a.Us=null,b.preventDefault();else{a.Wc=a.Pb;a.Pb=c;Ol(a,a,b,c,!0);c.up=!0; +c.He=b.detail;if(v.ZE||v.$E)c.He=a.jl;c.bubbles=b.bubbles;b.target.Z&&(c.Tg=b.target.Z);a.VF(b,null,new y,c.Tg)||(a.doMouseUp(),Sh(a),Sl(c,b))}}};a.zh=function(b){if(a.isEnabled){var c=a.Wc;a.Wc=a.Pb;a.Pb=c;Ol(a,a,b,c,!0);c.bubbles=!0;c.Kl=void 0!==b.wheelDelta?b.wheelDelta:-40*b.detail;a.doMouseWheel();Sl(c,b)}};a.fq=function(){if(a.isEnabled){a.Am=!1;var b=a.Ya;b.cancelWaitAfter();b instanceof kh&&b.hideToolTip()}};a.hG=function(b){if(a.isEnabled){a.ct=!1;a.gl=!0;var c=a.Wc;a.Wc=a.Pb;a.Pb=c;Ql(a, b,b.targetTouches[0],c,1a.ew)){var c=a.Xi;c[0].pointerId===b.pointerId&&(c[0]= @@ -963,13 +963,13 @@ function Jn(a){var b=a.qh;if(null!==b){var c=a.dk;if(null!==c){a.De=!0;var c=c.t vl.prototype.qu=function(a,b,c,d,e){this.Vc||(Gl(this),this.oa(),Tl(this),this.tc(),Jn(this),this.mh.scale=c,this.mh.position.x=a.x,this.mh.position.y=a.y,this.mh.bounds.set(a),this.mh.isScroll=e,this.Ca("ViewportBoundsChanged",this.mh,a))};function Hn(){qh.call(this);this.pl=null}v.Ma(Hn,qh); Hn.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.g;if(null===a||!a.Bl||!a.vf)return!1;var b=a.IA;if(null===b)return!1;if(null===this.findDraggablePart()){var c=b.tb;this.pl=new y(c.width/2,c.height/2);a=a.Bc.da;b.position=new y(a.x-this.pl.x,a.y-this.pl.y)}return!0};Hn.prototype.doActivate=function(){this.pl=null;qh.prototype.doActivate.call(this)}; Hn.prototype.moveParts=function(){var a=this.g,b=a.IA;if(null!==b){var c=a.qh;if(null!==c){if(null===this.pl){var d=a.Bc.da,c=c.location;this.pl=new y(d.x-c.x,d.y-c.y)}a=a.R.da;b.position=new y(a.x-this.pl.x,a.y-this.pl.y)}}};function In(){vj.call(this)}v.Ma(In,vj);In.prototype.resize=function(a){var b=this.g.IA;if(null!==b){var c=b.tb.copy();b.position=a.position;(c.width!==a.width||c.height!==a.height)&&0a)&&v.Fa(a,"0 <= loc <= 1",ha,"addColorStop:loc");v.j(b,"string",ha,"addColorStop:color");null===this.$g&&(this.$g=new la("number","string"));this.$g.add(a,b);this.ka===og&&(this.type=pg);this.ah=null}; -v.defineProperty(ha,{type:"type"},function(){return this.ka},function(a){this.Q&&v.ma(this,a);v.nb(a,ha,ha,"type");this.ka=a;this.start.Od()&&(a===pg?this.start=yb:a===Xc&&(this.start=Gb));this.end.Od()&&(a===pg?this.end=Lb:a===Xc&&(this.end=Gb));this.ah=null});v.defineProperty(ha,{color:"color"},function(){return this.mo},function(a){this.Q&&v.ma(this,a);this.mo=a;this.ah=null}); -v.defineProperty(ha,{start:"start"},function(){return this.np},function(a){this.Q&&v.ma(this,a);v.F(a,L,ha,"start");this.np=a.S();this.ah=null});v.defineProperty(ha,{end:"end"},function(){return this.Bo},function(a){this.Q&&v.ma(this,a);v.F(a,L,ha,"end");this.Bo=a.S();this.ah=null});v.defineProperty(ha,{Gu:"startRadius"},function(){return this.uw},function(a){this.Q&&v.ma(this,a);v.Zd(a,ha,"startRadius");0>a&&v.Fa(a,">= zero",ha,"startRadius");this.uw=a;this.ah=null}); +v.defineProperty(ha,{type:"type"},function(){return this.ka},function(a){this.Q&&v.ma(this,a);v.nb(a,ha,ha,"type");this.ka=a;this.start.Od()&&(a===pg?this.start=yb:a===Xc&&(this.start=Gb));this.end.Od()&&(a===pg?this.end=Lb:a===Xc&&(this.end=Gb));this.ah=null});v.defineProperty(ha,{color:"color"},function(){return this.lo},function(a){this.Q&&v.ma(this,a);this.lo=a;this.ah=null}); +v.defineProperty(ha,{start:"start"},function(){return this.mp},function(a){this.Q&&v.ma(this,a);v.F(a,L,ha,"start");this.mp=a.S();this.ah=null});v.defineProperty(ha,{end:"end"},function(){return this.Ao},function(a){this.Q&&v.ma(this,a);v.F(a,L,ha,"end");this.Ao=a.S();this.ah=null});v.defineProperty(ha,{Gu:"startRadius"},function(){return this.uw},function(a){this.Q&&v.ma(this,a);v.Zd(a,ha,"startRadius");0>a&&v.Fa(a,">= zero",ha,"startRadius");this.uw=a;this.ah=null}); v.defineProperty(ha,{Et:"endRadius"},function(){return this.sv},function(a){this.Q&&v.ma(this,a);v.Zd(a,ha,"endRadius");0>a&&v.Fa(a,">= zero",ha,"endRadius");this.sv=a;this.ah=null});v.defineProperty(ha,{rk:"colorStops"},function(){return this.$g},function(a){this.Q&&v.ma(this,a);this.$g=a;this.ah=null});v.defineProperty(ha,{pattern:"pattern"},function(){return this.dw},function(a){this.Q&&v.ma(this,a);this.dw=a;this.ah=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 Pn=(new Rc(null)).uk,ga; ha.isValidColor=ga=function(a){if("black"===a)return!0;if(""===a)return!1;Pn.fillStyle="#000000";var b=Pn.fillStyle;Pn.fillStyle=a;if(Pn.fillStyle!==b)return!0;Pn.fillStyle="#FFFFFF";b=Pn.fillStyle;Pn.fillStyle=a;return Pn.fillStyle!==b};var Qn=new On,Rn=new On,Sn=new On,Tn=new On;ha.lighten=function(a){return Un(a)}; @@ -980,15 +980,15 @@ Tn.bg;c=-.969266*Sn.Dc+1.8760108*Sn.xd+.041556*Sn.Yc;d=.0556434*Sn.Dc+-.2040259* 255,h=Qn.Yc/255,k=Math.max(e,f,h),d=Math.min(e,f,h),l=k-d,d=(k+d)/2;if(0===l)c=e=0;else{switch(k){case e:c=(f-h)/l%6;break;case f:c=(h-e)/l+2;break;case h:c=(e-f)/l+4}c*=60;0>c&&(c+=360);e=l/(1-Math.abs(2*d-1))}Rn.Dc=Math.round(c);Rn.xd=Math.round(100*e);Rn.Yc=Math.round(100*d);Rn.bg=Qn.bg;Rn.Yc=Math.min(100,Math.max(0,Rn.Yc+100*a));return"hsla("+Rn.Dc+", "+Rn.xd+"%, "+Rn.Yc+"%, "+Rn.bg+")";default:return v.k("Unknown color space: "+b),"rgba(0, 0, 0, 1)"}} function Vn(a){Pn.clearRect(0,0,1,1);Pn.fillStyle="#000000";var b=Pn.fillStyle;Pn.fillStyle=a;Pn.fillStyle!==b?(Pn.fillRect(0,0,1,1),a=Pn.getImageData(0,0,1,1).data,Qn.Dc=a[0],Qn.xd=a[1],Qn.Yc=a[2],Qn.bg=a[3]/255):(Pn.fillStyle="#FFFFFF",Pn.fillStyle=a,Qn.Dc=0,Qn.xd=0,Qn.Yc=0,Qn.bg=1)}function Yn(a){a/=255;return.04045>=a?a/12.92:Math.pow((a+.055)/1.055,2.4)}function eo(a){return.0031308>=a?12.92*a:1.055*Math.pow(a,1/2.4)-.055}var co=216/24389,bo=24389/27,$n=[95.047,100,108.883]; function Zn(a){return a>co?Math.pow(a,1/3):(bo*a+16)/116}function ao(a){var b=a*a*a;return b>co?b:(116*a-16)/bo} -function G(){v.pc(this);this.P=4225027;this.xc=1;this.kh=null;this.Qb="";this.Zb=this.Db=null;this.mb=(new y(NaN,NaN)).freeze();this.Re=zd;this.Uh=md;this.Th=xd;this.fd=new ja;this.mm=new ja;this.Oi=new ja;this.Lb=this.yo=1;this.fg=0;this.zg=fo;this.Jm=hd;this.rd=(new B(NaN,NaN,NaN,NaN)).freeze();this.qc=(new B(NaN,NaN,NaN,NaN)).freeze();this.Ic=(new B(0,0,NaN,NaN)).freeze();this.U=this.xs=this.ys=null;this.lm=this.he=nc;this.Is=0;this.Zi=1;this.Sq=0;this.wi=1;this.Ys=null;this.Ms=-Infinity;this.Wm= -0;this.Xm=$c;this.Ym=cj;this.$q="";this.vc=this.ia=null;this.jo=-1;this.Qm=this.bn=this.ig=this.Yk=this.mp=null}v.ii(G);v.ga("GraphObject",G); -G.prototype.cloneProtected=function(a){a.P=this.P|6144;a.xc=this.xc;a.Qb=this.Qb;a.Db=this.Db;a.Zb=this.Zb;a.mb.assign(this.mb);a.Re=this.Re.S();a.Uh=this.Uh.S();a.Th=this.Th.S();a.Oi=this.Oi.copy();a.Lb=this.Lb;a.fg=this.fg;a.zg=this.zg;a.Jm=this.Jm.S();a.rd.assign(this.rd);a.qc.assign(this.qc);a.Ic.assign(this.Ic);a.xs=this.xs;null!==this.U&&(a.U=this.U.copy());a.he=this.he.S();a.lm=this.lm.S();a.Is=this.Is;a.Zi=this.Zi;a.Sq=this.Sq;a.wi=this.wi;a.Ys=this.Ys;a.Ms=this.Ms;a.Wm=this.Wm;a.Xm=this.Xm.S(); -a.Ym=this.Ym;a.$q=this.$q;null!==this.ia&&(a.ia=this.ia.copy());a.vc=this.vc;a.jo=this.jo;null!==this.Yk&&(a.Yk=v.Fl(this.Yk));null!==this.ig&&(a.ig=this.ig.copy());a.bn=this.bn};G.prototype.addCopyProperty=G.prototype.XG=function(a){var b=this.Yk;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.Zc=function(a,b,c,d,e,f,h){var k=this.V;if(null!==k&&(k.Qn(a,b,c,d,e,f,h),ro(this)&&c===this&&a===Lf&&so(this,k,b),c===k&&0!==(k.P&16777216)&&null!==k.data))for(a=this.xa.n,c=a.length,d=0;da&&(a+=360));return a};G.prototype.getDocumentScale=G.prototype.kj=function(){if(0!==(this.P&4096)===!1)return this.yo;var a=this.Lb;return null!==this.N?a*this.N.kj():a};G.prototype.getLocalPoint=G.prototype.GE=function(a,b){void 0===b&&(b=new y);b.assign(a);this.oh.ki(b);return b}; +G.prototype.getDocumentAngle=G.prototype.xn=function(){var a;a=this.oh;1===a.m11&&0===a.m12?a=0:(a=180*Math.atan2(a.m12,a.m11)/Math.PI,0>a&&(a+=360));return a};G.prototype.getDocumentScale=G.prototype.kj=function(){if(0!==(this.P&4096)===!1)return this.xo;var a=this.Lb;return null!==this.N?a*this.N.kj():a};G.prototype.getLocalPoint=G.prototype.GE=function(a,b){void 0===b&&(b=new y);b.assign(a);this.oh.ki(b);return b}; G.prototype.getNearestIntersectionPoint=G.prototype.HE=function(a,b,c){return this.zn(a.x,a.y,b.x,b.y,c)};g=G.prototype;g.zn=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.jn)return f=this.Y,ke(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.l(0,0);d=this.Ja;c=ke(0,0,d.width,d.height,h,a,b,c,e);e.transform(f);return c}; function sk(a,b,c,d,e){if(!1!==tm(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.Ba,k=0;a.fb&&(k=a.fb);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(wo(a,!0)){case yj:k=f=0;l&&(c=b=Infinity);break;case Be:isFinite(b)&&b>d&&(f=b);isFinite(c)&& -c>e&&(k=c);break;case io:isFinite(b)&&b>d&&(f=b);k=0;l&&(c=Infinity);break;case ho:isFinite(c)&&c>e&&(k=c),f=0,l&&(b=Infinity)}var l=a.Bf,m=a.yh;f>l.width&&m.widthl.height&&m.heighte&&(k=c);break;case io:isFinite(b)&&b>d&&(f=b);k=0;l&&(c=Infinity);break;case ho:isFinite(c)&&c>e&&(k=c),f=0,l&&(b=Infinity)}var l=a.Bf,m=a.yh;f>l.width&&m.widthl.height&&m.heighta.height||this.Mi.hf>a.width))&&(c=!0);this.P=c?this.P|256:this.P&-257;this.qc.H()|| -v.k("Non-real actualBounds has been set. Object "+this+", actualBounds: "+this.qc.toString());this.Fx(f,this.qc);xo(this,!1);v.Gb(f)};g.fj=function(){}; +g.ic=function(a,b,c,d,e){this.Hi();var f=v.Ef();f.assign(this.pc);this.pc.Ra();if(!1===um(this)){var h=this.pc;h.x=a;h.y=b;h.width=c;h.height=d}else this.fj(a,b,c,d);this.pc.freeze();this.ig=void 0===e?null:e;c=!1;void 0!==e?c=!0:null!==this.N&&(e=this.N.Ic,d=this.Aa,null!==this.jn&&(d=this.pc),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 Fh&&(a=this.Ic,this.Qv>a.height||this.Mi.hf>a.width))&&(c=!0);this.P=c?this.P|256:this.P&-257;this.pc.H()|| +v.k("Non-real actualBounds has been set. Object "+this+", actualBounds: "+this.pc.toString());this.Fx(f,this.pc);xo(this,!1);v.Gb(f)};g.fj=function(){}; function yo(a,b,c,d,e){var f=a.Y;f.x=b;f.y=c;f.width=d;f.height=e;if(!a.Ba.H()){f=a.rd;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=wo(a,!0);c===d&&f===e&&(b=yj);switch(b){case yj:if(c>d||f>e)Vl(a,!0),sk(a,c>d?d:c,f>e?e:f);break;case Be:Vl(a,!0);sk(a,d,e,0,0);break;case io:Vl(a,!0);sk(a,d,f,0,0);break;case ho:Vl(a,!0),sk(a,c,e,0,0)}}} g.Fx=function(a,b){var c=this.V;null!==c&&null!==c.g&&(c.Au!==this&&c.HF!==this&&c.KF!==this||zo(c,!0),this.oa(),Xa(a,b)||(c.Tl(),this.Yv(c)))};g.Yv=function(a){null!==this.Qd&&(zo(a,!0),a instanceof T&&Ao(a,this))};v.defineProperty(G,{vq:"shadowVisible"},function(){return this.bn},function(a){var b=this.bn;b!==a&&(this.bn=a,this.oa(),this.h("shadowVisible",b,a))}); -G.prototype.ue=function(a,b){if(this.visible){var c=this.qc;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 Jc)a:{if(this.visible){var f=null,h=a.xx;if(this instanceof D&&(this.type===Bo||this.type===Co))Do(this,a,b);else{var k=this.qc;if(0!==k.width&&0!==k.height&&!isNaN(k.x)&&!isNaN(k.y)){var l=this.transform,m=this.N;0!==(this.P&4096)===!0&&Eo(this);var c=0!==(this.P&256),n=!1;this instanceof +G.prototype.ue=function(a,b){if(this.visible){var c=this.pc;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 Jc)a:{if(this.visible){var f=null,h=a.xx;if(this instanceof D&&(this.type===Bo||this.type===Co))Do(this,a,b);else{var k=this.pc;if(0!==k.width&&0!==k.height&&!isNaN(k.x)&&!isNaN(k.y)){var l=this.transform,m=this.N;0!==(this.P&4096)===!0&&Eo(this);var c=0!==(this.P&256),n=!1;this instanceof Fh&&(a.font=this.font);if(c){n=m.Xg()?m.Ja:m.Y;if(null!==this.ig)var p=this.ig,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;Lc(a,1,0,0,1,0,0);a.save();a.beginPath();a.rect(q,r,s,p);a.clip()}q=!1;if(this instanceof S){var u=this,q=!0;if(!u.isVisible())break a}a.th.Sb=[1,0,0,1,0,0];r=!1;q&&this.Xl&&b.lj("drawShadows")&&(s=this.an, -a.dB(s.x*b.scale*b.Cd,s.y*b.scale*b.Cd,u.yg),a.Un(),a.shadowColor=u.$m);u=!1;this.V&&b.lj("drawShadows")&&(u=this.V.Xl);!0===this.vq?(a.Un(),!1===r&&u&&(Lc(a,1,0,0,1,0,0),a.Za(),r=!0)):!1===this.vq&&a.Tn();null!==this.Zb&&(Fo(this,a,this.Zb,!0,!0),!1===r&&u&&(Lc(a,1,0,0,1,0,0),a.Za(),r=!0),this.Zb instanceof ha&&this.Zb.type===Xc?(a.beginPath(),a.rect(k.x,k.y,k.width,k.height),a.Gg(this.Zb)):a.fillRect(k.x,k.y,k.width,k.height));this instanceof D?Lc(a,l.m11,l.m12,l.m21,l.m22,l.dx,l.dy):a.th.Sb=[l.m11, +a.dB(s.x*b.scale*b.Cd,s.y*b.scale*b.Cd,u.yg),a.Tn(),a.shadowColor=u.$m);u=!1;this.V&&b.lj("drawShadows")&&(u=this.V.Xl);!0===this.vq?(a.Tn(),!1===r&&u&&(Lc(a,1,0,0,1,0,0),a.Za(),r=!0)):!1===this.vq&&a.Sn();null!==this.Zb&&(Fo(this,a,this.Zb,!0,!0),!1===r&&u&&(Lc(a,1,0,0,1,0,0),a.Za(),r=!0),this.Zb instanceof ha&&this.Zb.type===Xc?(a.beginPath(),a.rect(k.x,k.y,k.width,k.height),a.Gg(this.Zb)):a.fillRect(k.x,k.y,k.width,k.height));this instanceof D?Lc(a,l.m11,l.m12,l.m21,l.m22,l.dx,l.dy):a.th.Sb=[l.m11, l.m12,l.m21,l.m22,l.dx,l.dy];if(null!==this.Db){!1===r&&u&&(Lc(a,1,0,0,1,0,0),a.Za(),r=!0);var p=this.Ja,l=k=0,s=p.width,p=p.height,t=0;this instanceof X&&(p=this.gb.kb,k=p.x,l=p.y,s=p.width,p=p.height,t=this.ei);Fo(this,a,this.Db,!0,!1);this.Db instanceof ha&&this.Db.type===Xc?(a.beginPath(),a.rect(k-t/2,l-t/2,s+t,p+t),a.Gg(this.Db)):a.fillRect(k-t/2,l-t/2,s+t,p+t)}u&&(null!==this.Db||null!==this.Zb||null!==m&&0!==(m.P&512)||null!==m&&(m.type===Bl||m.type===wj)&&m.Jd()!==this)?(Go(this,!0),null=== -this.vq&&a.Tn()):Go(this,!1);this.wk(a,b);u&&0!==(this.P&512)===!0&&a.Un();q&&u&&a.Tn();c&&(a.restore(),n&&a.yf.pop());this instanceof D&&(f=a.yf.pop());!0===r&&a.yf.pop();null!==a.tE&&(null===f&&(h===a.xx?(Lc(a,1,0,0,1,0,0),f=a.yf.pop()):f=a.xx),a.tE(this,f))}}}}else{if(this instanceof D&&(this.type===Bo||this.type===Co)){Do(this,a,b);1!==d&&(a.globalAlpha=e);return}this instanceof W&&this.Kn(!1);f=this.transform;h=this.N;0!==(this.P&4096)===!0&&Eo(this);m=0!==(this.P&256);a.yt&&(m=!1);this instanceof +this.vq&&a.Sn()):Go(this,!1);this.wk(a,b);u&&0!==(this.P&512)===!0&&a.Tn();q&&u&&a.Sn();c&&(a.restore(),n&&a.yf.pop());this instanceof D&&(f=a.yf.pop());!0===r&&a.yf.pop();null!==a.tE&&(null===f&&(h===a.xx?(Lc(a,1,0,0,1,0,0),f=a.yf.pop()):f=a.xx),a.tE(this,f))}}}}else{if(this instanceof D&&(this.type===Bo||this.type===Co)){Do(this,a,b);1!==d&&(a.globalAlpha=e);return}this instanceof W&&this.Kn(!1);f=this.transform;h=this.N;0!==(this.P&4096)===!0&&Eo(this);m=0!==(this.P&256);a.yt&&(m=!1);this instanceof Fh&&(a.font=this.font);if(m){n=h.Xg()?h.Ja:h.Y;null!==this.ig?(u=this.ig,k=u.x,l=u.y,q=u.width,u=u.height):(k=Math.max(c.x,n.x),l=Math.max(c.y,n.y),q=Math.min(c.right,n.right)-k,u=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,u);a.clip()}n=!1;if(this instanceof S){n=!0;if(!this.isVisible()){1!==d&&(a.globalAlpha=e);return}this.Xl&&b.lj("drawShadows")&&(k=this.an,a.dB(k.x*b.scale* -b.Cd,k.y*b.scale*b.Cd,this.yg),a.Un(),a.shadowColor=this.$m)}k=!1;this.V&&b.lj("drawShadows")&&(k=this.V.Xl);!0===this.vq?a.Un():!1===this.vq&&a.Tn();null!==this.Zb&&(Fo(this,a,this.Zb,!0,!0),this.Zb instanceof ha&&this.Zb.type===Xc?(a.beginPath(),a.rect(c.x,c.y,c.width,c.height),a.Gg(this.Zb)):a.fillRect(c.x,c.y,c.width,c.height));f.$t()||a.transform(f.m11,f.m12,f.m21,f.m22,f.dx,f.dy);null!==this.Db&&(u=this.Ja,l=c=0,q=u.width,u=u.height,r=0,this instanceof X&&(u=this.gb.kb,c=u.x,l=u.y,q=u.width, -u=u.height,r=this.ei),Fo(this,a,this.Db,!0,!1),this.Db instanceof ha&&this.Db.type===Xc?(a.beginPath(),a.rect(c-r/2,l-r/2,q+r,u+r),a.Gg(this.Db)):a.fillRect(c-r/2,l-r/2,q+r,u+r));k&&(null!==this.Db||null!==this.Zb||null!==h&&0!==(h.P&512)||null!==h&&(h.type===Bl||h.type===wj)&&h.Jd()!==this)?(Go(this,!0),null===this.vq&&a.Tn()):Go(this,!1);this.wk(a,b);k&&0!==(this.P&512)===!0&&a.Un();n&&k&&a.Tn();m?(a.restore(),this instanceof D?Yc(a,!0):Yc(a,!1)):f.$t()||(h=1/(f.m11*f.m22-f.m12*f.m21),a.transform(f.m22* +b.Cd,k.y*b.scale*b.Cd,this.yg),a.Tn(),a.shadowColor=this.$m)}k=!1;this.V&&b.lj("drawShadows")&&(k=this.V.Xl);!0===this.vq?a.Tn():!1===this.vq&&a.Sn();null!==this.Zb&&(Fo(this,a,this.Zb,!0,!0),this.Zb instanceof ha&&this.Zb.type===Xc?(a.beginPath(),a.rect(c.x,c.y,c.width,c.height),a.Gg(this.Zb)):a.fillRect(c.x,c.y,c.width,c.height));f.$t()||a.transform(f.m11,f.m12,f.m21,f.m22,f.dx,f.dy);null!==this.Db&&(u=this.Ja,l=c=0,q=u.width,u=u.height,r=0,this instanceof X&&(u=this.gb.kb,c=u.x,l=u.y,q=u.width, +u=u.height,r=this.ei),Fo(this,a,this.Db,!0,!1),this.Db instanceof ha&&this.Db.type===Xc?(a.beginPath(),a.rect(c-r/2,l-r/2,q+r,u+r),a.Gg(this.Db)):a.fillRect(c-r/2,l-r/2,q+r,u+r));k&&(null!==this.Db||null!==this.Zb||null!==h&&0!==(h.P&512)||null!==h&&(h.type===Bl||h.type===wj)&&h.Jd()!==this)?(Go(this,!0),null===this.vq&&a.Sn()):Go(this,!1);this.wk(a,b);k&&0!==(this.P&512)===!0&&a.Tn();n&&k&&a.Sn();m?(a.restore(),this instanceof D?Yc(a,!0):Yc(a,!1)):f.$t()||(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 Do(a,b,c){var d=a.qc;0===d.width||0===d.height||isNaN(d.x)||isNaN(d.y)||(null!==a.Zb&&(Fo(a,b,a.Zb,!0,!0),a.Zb instanceof ha&&a.Zb.type===Xc?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.Gg(a.Zb)):b.fillRect(d.x,d.y,d.width,d.height)),null!==a.Db&&(Fo(a,b,a.Db,!0,!1),a.Db instanceof ha&&a.Db.type===Xc?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.Gg(a.Db)):b.fillRect(d.x,d.y,d.width,d.height)),a.wk(b,c))}G.prototype.wk=function(){}; -function Fo(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===og)d?b.fillStyle=c.color:b.strokeStyle=c.color;else{var k,h=a.Ja,f=h.width,h=h.height;if(e)var l=a.Y,f=l.width,h=l.height;var m=b instanceof Sc;if(m&&c.ah&&(c.type===Ln||c.no===f&&c.zy===h))k=c.ah;else{var n=l=0,p=0,q=0,r=0,s=0,s=r=0;e&&(l=a.Y,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===pg)k=b.createLinearGradient(l,n,p,q);else if(c.type===Xc)s=isNaN(c.Et)?Math.max(f,h)/2:c.Et,isNaN(c.Gu)?(r=0,s=Math.max(f,h)/2):r=c.Gu,k=b.createRadialGradient(l,n,r,p,q,s);else if(c.type===Ln)try{k=b.createPattern(c.pattern,"repeat")}catch(u){k=null}else v.yd(c.type,"Brush type");if(c.type!==Ln&&(e=c.rk,null!==e))for(e=e.i;e.next();)k.addColorStop(e.key,e.value);if(m&&(c.ah=k,null!==k&&(c.no=f,c.zy=h),null===k&&c.type===Ln&&-1!==c.no)){c.no=-1;var t=a.g;null!==t&& --1===c.no&&v.setTimeout(function(){t.Mx()},600)}}d?b.fillStyle=k:b.strokeStyle=k}}}G.prototype.isContainedBy=G.prototype.Vl=function(a){if(a instanceof D)a:{if(this!==a&&null!==a)for(var b=this.N;null!==b;){if(b===a){a=!0;break a}b=b.N}a=!1}else a=!1;return a};G.prototype.isVisibleObject=G.prototype.rj=function(){if(!this.visible)return!1;var a=this.N;return null!==a?a.rj():!0}; +function Do(a,b,c){var d=a.pc;0===d.width||0===d.height||isNaN(d.x)||isNaN(d.y)||(null!==a.Zb&&(Fo(a,b,a.Zb,!0,!0),a.Zb instanceof ha&&a.Zb.type===Xc?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.Gg(a.Zb)):b.fillRect(d.x,d.y,d.width,d.height)),null!==a.Db&&(Fo(a,b,a.Db,!0,!1),a.Db instanceof ha&&a.Db.type===Xc?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),b.Gg(a.Db)):b.fillRect(d.x,d.y,d.width,d.height)),a.wk(b,c))}G.prototype.wk=function(){}; +function Fo(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===og)d?b.fillStyle=c.color:b.strokeStyle=c.color;else{var k,h=a.Ja,f=h.width,h=h.height;if(e)var l=a.Y,f=l.width,h=l.height;var m=b instanceof Sc;if(m&&c.ah&&(c.type===Ln||c.mo===f&&c.zy===h))k=c.ah;else{var n=l=0,p=0,q=0,r=0,s=0,s=r=0;e&&(l=a.Y,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===pg)k=b.createLinearGradient(l,n,p,q);else if(c.type===Xc)s=isNaN(c.Et)?Math.max(f,h)/2:c.Et,isNaN(c.Gu)?(r=0,s=Math.max(f,h)/2):r=c.Gu,k=b.createRadialGradient(l,n,r,p,q,s);else if(c.type===Ln)try{k=b.createPattern(c.pattern,"repeat")}catch(u){k=null}else v.yd(c.type,"Brush type");if(c.type!==Ln&&(e=c.rk,null!==e))for(e=e.i;e.next();)k.addColorStop(e.key,e.value);if(m&&(c.ah=k,null!==k&&(c.mo=f,c.zy=h),null===k&&c.type===Ln&&-1!==c.mo)){c.mo=-1;var t=a.g;null!==t&& +-1===c.mo&&v.setTimeout(function(){t.Mx()},600)}}d?b.fillStyle=k:b.strokeStyle=k}}}G.prototype.isContainedBy=G.prototype.Vl=function(a){if(a instanceof D)a:{if(this!==a&&null!==a)for(var b=this.N;null!==b;){if(b===a){a=!0;break a}b=b.N}a=!1}else a=!1;return a};G.prototype.isVisibleObject=G.prototype.rj=function(){if(!this.visible)return!1;var a=this.N;return null!==a?a.rj():!0}; G.prototype.isEnabledObject=G.prototype.Yt=function(){for(var a=this instanceof D?this:this.N;null!==a&&a.isEnabled;)a=a.N;return null===a};v.defineProperty(G,{uE:"enabledChanged"},function(){return null!==this.ia?this.ia.pr:null},function(a){mo(this);var b=this.ia.pr;b!==a&&(null!==a&&v.j(a,"function",G,"enabledChanged"),this.ia.pr=a,this.h("enabledChanged",b,a))}); -function Eo(a){if(0!==(a.P&2048)===!0){var b=a.fd;b.reset();if(!a.qc.H()||!a.rd.H()){Ho(a,!1);return}b.translate(a.qc.x,a.qc.y);b.translate(-a.Aa.x,-a.Aa.y);var c=a.Ja;uo(a,b,c.x,c.y,c.width,c.height);Ho(a,!1);Io(a,!0)}0!==(a.P&4096)===!0&&(b=a.N,null===b?(a.mm.set(a.fd),a.yo=a.scale,Io(a,!1)):null!==b.oh&&(c=a.mm,c.reset(),b.Xg()?c.multiply(b.mm):null!==b.N&&c.multiply(b.N.mm),c.multiply(a.fd),a.yo=a.scale*b.yo,Io(a,!1)))} +function Eo(a){if(0!==(a.P&2048)===!0){var b=a.fd;b.reset();if(!a.pc.H()||!a.rd.H()){Ho(a,!1);return}b.translate(a.pc.x,a.pc.y);b.translate(-a.Aa.x,-a.Aa.y);var c=a.Ja;uo(a,b,c.x,c.y,c.width,c.height);Ho(a,!1);Io(a,!0)}0!==(a.P&4096)===!0&&(b=a.N,null===b?(a.mm.set(a.fd),a.xo=a.scale,Io(a,!1)):null!==b.oh&&(c=a.mm,c.reset(),b.Xg()?c.multiply(b.mm):null!==b.N&&c.multiply(b.N.mm),c.multiply(a.fd),a.xo=a.scale*b.xo,Io(a,!1)))} function uo(a,b,c,d,e,f){1!==a.scale&&b.scale(a.scale);if(0!==a.angle){var h=Gb;a.pf&&a.pf.jd()&&(h=a.pf);var k=v.K();if(a instanceof S&&a.ec!==a)for(c=a.ec,d=c.Ja,k.Du(d.x,d.y,d.width,d.height,h),c.Oi.ob(k),k.offset(-c.Aa.x,-c.Aa.y),h=c.N;null!==h&&h!==a;)h.Oi.ob(k),k.offset(-h.Aa.x,-h.Aa.y),h=h.N;else k.Du(c,d,e,f,h);b.rotate(a.angle,k.x,k.y);v.v(k)}}g=G.prototype;g.I=function(a){void 0===a&&(a=!1);if(!0!==tm(this)){Vl(this,!0);xo(this,!0);var b=this.N;null===b||a||b.I()}}; -g.Yp=function(){!0!==tm(this)&&(Vl(this,!0),xo(this,!0))};function Jo(a){if(!1===um(a)){var b=a.N;null!==b?b.I():a instanceof S&&(b=a.g,null!==b&&(b.pg.add(a),a instanceof T&&a.Uf(),b.Me()));xo(a,!0)}}g.Hi=function(){0!==(this.P&2048)===!1&&(Ho(this,!0),Io(this,!0))};g.nA=function(){Io(this,!0)};g.oa=function(){var a=this.V;null!==a&&a.oa()}; +g.Xp=function(){!0!==tm(this)&&(Vl(this,!0),xo(this,!0))};function Jo(a){if(!1===um(a)){var b=a.N;null!==b?b.I():a instanceof S&&(b=a.g,null!==b&&(b.pg.add(a),a instanceof T&&a.Uf(),b.Me()));xo(a,!0)}}g.Hi=function(){0!==(this.P&2048)===!1&&(Ho(this,!0),Io(this,!0))};g.nA=function(){Io(this,!0)};g.oa=function(){var a=this.V;null!==a&&a.oa()}; function wo(a,b){var c=a.stretch,d=a.N;if(null!==d&&d.ka===Ko)return Lo(a,d.ce(a.Yb),d.be(a.column),b);if(null!==d&&d.ka===Bl&&d.Jd()===a)return Mo(a,Be,b);if(c===fo){if(null!==d){if(d.ka===wj&&d.Jd()===a)return Mo(a,Be,b);c=d.$d;return c===fo?Mo(a,yj,b):Mo(a,c,b)}return Mo(a,yj,b)}return Mo(a,c,b)} function Lo(a,b,c,d){var e=a.stretch;if(e!==fo)return Mo(a,e,d);var f=e=null;switch(b.stretch){case ho:f=!0;break;case Be:f=!0}switch(c.stretch){case io:e=!0;break;case Be:e=!0}b=a.N.$d;null===e&&(e=b===io||b===Be);null===f&&(f=b===ho||b===Be);return!0===e&&!0===f?Mo(a,Be,d):!0===e?Mo(a,io,d):!0===f?Mo(a,ho,d):Mo(a,yj,d)} function Mo(a,b,c){if(c)return b;if(b===yj)return yj;c=a.Ba;if(c.H())return yj;a=a.angle;if(!isNaN(c.width))if(90!==a&&270!==a){if(b===io)return yj;if(b===Be)return ho}else{if(b===ho)return yj;if(b===Be)return io}if(!isNaN(c.height))if(90!==a&&270!==a){if(b===ho)return yj;if(b===Be)return io}else{if(b===io)return yj;if(b===Be)return ho}return b} @@ -1035,7 +1035,7 @@ v.defineProperty(G,{nx:"isActionable"},function(){return 0!==(this.P&128)},funct v.defineProperty(G,{background:"background"},function(){return this.Db},function(a){var b=this.Db;b!==a&&(a instanceof ha&&a.freeze(),this.Db=a,this.oa(),this.h("background",b,a))});function Go(a,b){a.P=b?a.P|512:a.P&-513}function ro(a){return 0!==(a.P&1024)}function Oo(a,b){a.P=b?a.P|1024:a.P&-1025}function Ho(a,b){a.P=b?a.P|2048:a.P&-2049}function Io(a,b){a.P=b?a.P|4096:a.P&-4097}function tm(a){return 0!==(a.P&8192)}function Vl(a,b){a.P=b?a.P|8192:a.P&-8193} function um(a){return 0!==(a.P&16384)}function xo(a,b){a.P=b?a.P|16384:a.P&-16385}v.u(G,{V:"part"},function(){if(this instanceof S)return this;if(null!==this.Qm)return this.Qm;var a;for(a=this.N;a;){if(a instanceof S)return this.Qm=a;a=a.N}return null});v.u(G,{N:"panel"},function(){return this.kh});G.prototype.cm=function(a){this.kh=a};v.u(G,{layer:"layer"},function(){var a=this.V;return null!==a?a.layer:null},{configurable:!0}); v.u(G,{g:"diagram"},function(){var a=this.V;return null!==a?a.g:null},{configurable:!0});v.defineProperty(G,{position:"position"},function(){return this.mb},function(a){var b=a.x,c=a.y,d=this.mb,e=d.x,f=d.y;(e===b||isNaN(e)&&isNaN(b))&&(f===c||isNaN(f)&&isNaN(c))?this.aB():(a=a.S(),this.$A(a,d)&&this.h("position",d,a))});G.prototype.aB=function(){};G.prototype.$A=function(a){this.mb=a;Jo(this);this.Hi();return!0};G.prototype.Xx=function(a,b){this.mb.l(a,b);Po(this);this.Hi()}; -v.u(G,{Y:"actualBounds"},function(){return this.qc});v.defineProperty(G,{scale:"scale"},function(){return this.Lb},function(a){var b=this.Lb;b!==a&&(0>=a&&v.k("GraphObject.scale for "+this+" must be greater than zero, not: "+a),this.Lb=a,this.Hi(),this.I(),this.h("scale",b,a))});v.defineProperty(G,{angle:"angle"},function(){return this.fg},function(a){var b=this.fg;b!==a&&(a%=360,0>a&&(a+=360),b!==a&&(this.fg=a,this.I(),this.Hi(),this.h("angle",b,a)))}); +v.u(G,{Y:"actualBounds"},function(){return this.pc});v.defineProperty(G,{scale:"scale"},function(){return this.Lb},function(a){var b=this.Lb;b!==a&&(0>=a&&v.k("GraphObject.scale for "+this+" must be greater than zero, not: "+a),this.Lb=a,this.Hi(),this.I(),this.h("scale",b,a))});v.defineProperty(G,{angle:"angle"},function(){return this.fg},function(a){var b=this.fg;b!==a&&(a%=360,0>a&&(a+=360),b!==a&&(this.fg=a,this.I(),this.Hi(),this.h("angle",b,a)))}); v.defineProperty(G,{Ba:"desiredSize"},function(){return this.Re},function(a){var b=a.width,c=a.height,d=this.Re,e=d.width,f=d.height;(e===b||isNaN(e)&&isNaN(b))&&(f===c||isNaN(f)&&isNaN(c))||(this.Re=a=a.S(),this.I(),this instanceof X&&this.Le(),this.h("desiredSize",d,a),ro(this)&&(a=this.V,null!==a&&(so(this,a,"width"),so(this,a,"height"))))}); v.defineProperty(G,{width:"width"},function(){return this.Re.width},function(a){var b=this.Re.width;b===a||isNaN(b)&&isNaN(a)||(b=this.Re,this.Re=a=(new ia(a,this.Re.height)).freeze(),this.I(),this instanceof X&&this.Le(),this.h("desiredSize",b,a),ro(this)&&(a=this.V,null!==a&&so(this,a,"width")))}); v.defineProperty(G,{height:"height"},function(){return this.Re.height},function(a){var b=this.Re.height;b===a||isNaN(b)&&isNaN(a)||(b=this.Re,this.Re=a=(new ia(this.Re.width,a)).freeze(),this.I(),this instanceof X&&this.Le(),this.h("desiredSize",b,a),ro(this)&&(a=this.V,null!==a&&so(this,a,"height")))}); @@ -1067,7 +1067,7 @@ G.make=Vo=function(a,b){var c=arguments,d=null,e=null;if("function"===typeof a)e 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.xe=!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.xe=!1,a.index=e);e=new ua;for(c in b)"row"!==c&&"column"!==c&&(e[c]=b[c]);v.Bu(a,e)}else v.Bu(a,b);else v.k('Unknown initializer "'+b+'" for object being constructed by GraphObject.make: '+a)}var Wo=new la("string","function"); G.getBuilders=function(){var a=new la("string","function"),b;for(b in Wo)if(b!==b.toLowerCase()){var c=Wo[b];"function"===typeof c&&a.add(b,c)}a.freeze();return a};var Yo;G.defineBuilder=Yo=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);Wo.add(a,b)};var Zo; @@ -1083,11 +1083,11 @@ Yo("PanelExpanderButton",function(a){var b=Zo(a,"COLLAPSIBLE"),c=Vo("Button",{_b Yo("CheckBoxButton",function(a){var b=Zo(a);a=Vo("Button",{"ButtonBorder.fill":"white","ButtonBorder.stroke":"gray",width:14,height:14},Vo(X,{name:"ButtonIcon",RH:"M0 4 L3 9 9 0",fb:2,stretch:Be,eA:Lj,visible:!1},""!==b?(new dh("visible",b)).FI():[]));a.click=function(a,d){var e=a.g;if(!(null===e||e.bb||""!==b&&e.ca.bb)){a.Cc=!0;var f=d.ud("ButtonIcon");e.Tb("checkbox");f.visible=!f.visible;"function"===typeof d._doClick&&d._doClick(a,d);e.Hd("checkbox")}};return a}); Yo("CheckBox",function(a){a=Zo(a);a=Vo("CheckBoxButton",a,{name:"Button",margin:new mb(0,1,0,0)});var b=Vo(D,"Horizontal",a,{nx:!0,margin:1,_buttonFillNormal:a._buttonFillNormal,_buttonStrokeNormal:a._buttonStrokeNormal,_buttonFillOver:a._buttonFillOver,_buttonStrokeOver:a._buttonStrokeOver,_buttonFillDisabled:a._buttonFillDisabled,ju:a.ju,ku:a.ku,click:a.click,_buttonClick:a.click});a.ju=null;a.ku=null;a.click=null;return b}); function no(){this.pr=this.yi=this.bj=this.Bq=this.Eq=this.Dq=this.Cq=this.Qi=this.gs=this.fs=this.Ri=this.Si=this.Ti=this.js=this.hs=this.xi=this.Di=this.vi=null}no.prototype.copy=function(){var a=new no;a.vi=this.vi;a.Di=this.Di;a.xi=this.xi;a.hs=this.hs;a.js=this.js;a.Ti=this.Ti;a.Si=this.Si;a.Ri=this.Ri;a.fs=this.fs;a.gs=this.gs;a.Qi=this.Qi;a.Cq=this.Cq;a.Dq=this.Dq;a.Eq=this.Eq;a.Bq=this.Bq;a.bj=this.bj;a.yi=this.yi;a.pr=this.pr;return a}; -function D(a){G.call(this);void 0===a?0===arguments.length?this.ka=Oj:v.k("invalid argument to Panel constructor: undefined"):(v.nb(a,D,D,"type"),this.ka=a);this.xa=new I(G);this.jf=hd;this.ka===El&&(this.En=!0);this.dr=nc;this.Bi=fo;this.ka===Ko&&$o(this);this.zp=Lj;this.Br=wd;this.Cr=$c;this.yr=0;this.xr=100;this.Ar=10;this.zr=0;this.Wk=this.ie=this.Oj=this.vm=this.xm=null;this.Nr=NaN;this.rg=this.Vj=null;this.Qo="category";this.qg=null;this.dj=new B(NaN,NaN,NaN,NaN);this.ik=this.Js=this.dn=null; +function D(a){G.call(this);void 0===a?0===arguments.length?this.ka=Oj:v.k("invalid argument to Panel constructor: undefined"):(v.nb(a,D,D,"type"),this.ka=a);this.xa=new I(G);this.jf=hd;this.ka===El&&(this.En=!0);this.dr=nc;this.Bi=fo;this.ka===Ko&&$o(this);this.yp=Lj;this.Br=wd;this.Cr=$c;this.yr=0;this.xr=100;this.Ar=10;this.zr=0;this.Wk=this.ie=this.Oj=this.vm=this.xm=null;this.Nr=NaN;this.rg=this.Vj=null;this.Po="category";this.qg=null;this.dj=new B(NaN,NaN,NaN,NaN);this.ik=this.Js=this.dn=null; this.Dj=""}v.Ma(D,G);v.ii(D);v.ga("Panel",D);function $o(a){a.Hj=hd;a.Mh=1;a.Ai=null;a.sm=null;a.Lh=1;a.Kh=null;a.rm=null;a.Yd=[];a.Ud=[];a.Vm=ap;a.qm=ap;a.cj=0;a.Li=0} D.prototype.cloneProtected=function(a){G.prototype.cloneProtected.call(this,a);a.ka=this.ka;a.jf=this.jf.S();a.dr=this.dr.S();a.Bi=this.Bi;if(a.ka===Ko){a.Hj=this.Hj.S();a.Mh=this.Mh;a.Ai=this.Ai;a.sm=this.sm;a.Lh=this.Lh;a.Kh=this.Kh;a.rm=this.rm;var b=[];if(0a&&v.Fa(a,">= 0",D,"padding"),a=new mb(a)):(v.F(a,mb,D,"padding"),0>a.left&&v.Fa(a.left,">= 0",D,"padding:value.left"),0>a.right&&v.Fa(a.right,">= 0",D,"padding:value.right"),0>a.top&&v.Fa(a.top,">= 0",D,"padding:value.top"),0>a.bottom&&v.Fa(a.bottom,">= 0",D,"padding:value.bottom"));var b=this.jf;b.L(a)||(this.jf=a=a.S(),this.I(),this.h("padding",b,a))}); @@ -1099,18 +1099,18 @@ v.defineProperty(D,{JK:"defaultRowSeparatorDashArray"},function(){return void 0= this.h("defaultRowSeparatorDashArray",b,a)}}});v.defineProperty(D,{EK:"defaultColumnSeparatorStroke"},function(){return void 0===this.Kh?null:this.Kh},function(a){if(void 0!==this.Kh){var b=this.Kh;b!==a&&(null===a||"string"===typeof a||a instanceof ha)&&(a instanceof ha&&a.freeze(),this.Kh=a,this.oa(),this.h("defaultColumnSeparatorStroke",b,a))}}); v.defineProperty(D,{FK:"defaultColumnSeparatorStrokeWidth"},function(){return void 0===this.Lh?1:this.Lh},function(a){if(void 0!==this.Lh){var b=this.Lh;b!==a&&isFinite(a)&&0<=a&&(this.Lh=a,this.I(),this.h("defaultColumnSeparatorStrokeWidth",b,a))}}); v.defineProperty(D,{DK:"defaultColumnSeparatorDashArray"},function(){return void 0===this.rm?null:this.rm},function(a){if(void 0!==this.rm){var b=this.rm;if(b!==a){null===a||Array.isArray(a)||v.yd(a,"Array",D,"defaultColumnSeparatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;e=c&&(c=1);var d=this.lx,e=d.width,d=d.height,f=this.Ja,h=f.width,f=f.height,k=Math.ceil(h/e),l=Math.ceil(f/d),m=this.NE;a.save();a.beginPath();a.rect(0,0,h,f);a.clip();for(var n=[],p=this.xa.n,q=p.length,r=0;r -e*u*c))){var s=n[r],t=!1,z=!0,A=w.$F;null!==A&&(t=!0,z=a.Yz(A,w.Fe));if("LineV"===w.Cb){a.lineWidth=w.fb;Fo(this,a,w.stroke,!1,!1);a.beginPath();for(var H=x=Math.floor(-m.x/e);H<=x+k;H++){var C=H*e+m.x;0<=C&&C=e&&(e=1);d=c.Y;h=this.xa.n;f=this.xm;k=h.length;for(l=0;lthis.iA*q.interval*e))for(r=q.Aa,u=q.fb*q.scale,s=q.nh,s.Od()&&(s=yb),p=0;p=e&&(e=1);d=c.Y;h=this.xa.n;f=this.xm;k=h.length;for(l=0;lthis.iA*q.interval*e))for(r=q.Aa,u=q.fb*q.scale,s=q.nh,s.Od()&&(s=yb),p=0;pf.height)continue}else if(l.position>f.width)continue;var m=l.tq;isNaN(m)&&(m=c?a.Mh:a.Lh);var n=l.sq;null===n&&(n=c?a.Ai:a.Kh);if(0!==m&&null!==n){Fo(a,b,n,!1,!1);var n=!1,p=!0,q=l.yJ;null!==q&&(n=!0,void 0!==b.setLineDash?(b.setLineDash(q),b.lineDashOffset=a.Fe):void 0!==b.webkitLineDash?(b.webkitLineDash=q,b.webkitLineDashOffset=a.Fe):void 0!==b.mozDash? (b.mozDash=q,b.mozDashOffset=a.Fe):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?qo(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?qo(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.Jk),b.lineDashOffset=0):void 0!==b.webkitLineDash?(b.webkitLineDash=v.Jk,b.webkitLineDashOffset= 0):void 0!==b.mozDash&&(b.mozDash=null,b.mozDashOffset=0))}}}} @@ -1118,71 +1118,71 @@ function Cp(a,b,c,d,e){for(var f=d.length,h=a.Y,k=0;km&&e.set(s),v.v(s));v.v(n);f&&e.transform(h)}return c}; -g.I=function(a){G.prototype.I.call(this,a);if(this.ka===Bl||this.ka===$i)a=this.Jd(),null!==a&&a.I(!0);a=this.xa.n;for(var b=a.length,c=0;csc&&(Gd=Math.max(sc-eg,0));var qj=0===aa.Ka;aa.Ka+=Gd;sc=Math.max(sc-(Gd+(qj?eg:0)),0)}1!==ca.wi||Hc!==yj&&Hc!==ho||(aa=this.be(wc),eg=aa.Ye(),Gd=Math.max(Vc-aa.Ka,0),Gd+eg>fc&&(Gd=Math.max(fc-eg,0)),qj=0===aa.Ka,aa.Ka+=Gd,fc=Math.max(fc-(Gd+(qj?eg:0)),0));Kk&&ca.Yp()}}}v.wa(yf);for(var Yd=0,Zd=0,ib=this.Hp,fa=0;fasc&&(Gd=Math.max(sc-eg,0));var qj=0===aa.Ka;aa.Ka+=Gd;sc=Math.max(sc-(Gd+(qj?eg:0)),0)}1!==ca.wi||Hc!==yj&&Hc!==ho||(aa=this.be(wc),eg=aa.Ye(),Gd=Math.max(Vc-aa.Ka,0),Gd+eg>fc&&(Gd=Math.max(fc-eg,0)),qj=0===aa.Ka,aa.Ka+=Gd,fc=Math.max(fc-(Gd+(qj?eg:0)),0));Kk&&ca.Xp()}}}v.wa(yf);for(var Yd=0,Zd=0,ib=this.Gp,fa=0;fa=this.qq);jb++)aa=this.ce(ca.Yb+jb),Bf.height+=Math.max(aa.tj,isNaN(aa.kf)?aa.qf:Math.min(aa.kf,aa.qf));for(jb=1;jb=this.Hp);jb++)aa=this.be(ca.column+jb),Bf.width+=Math.max(aa.tj,isNaN(aa.kf)?aa.qf:Math.min(aa.kf,aa.qf));zb.width+=Bf.width;zb.height+= +(zb.width=Math.min(zb.width,qb.Ka));break;case ho:0!==fb.Ka&&(zb.height=Math.min(zb.height,fb.Ka))}isFinite(qb.width)&&(zb.width=qb.width);isFinite(fb.height)&&(zb.height=fb.height);Bf.l(0,0);for(var jb=1;jb=this.qq);jb++)aa=this.ce(ca.Yb+jb),Bf.height+=Math.max(aa.tj,isNaN(aa.kf)?aa.qf:Math.min(aa.kf,aa.qf));for(jb=1;jb=this.Gp);jb++)aa=this.be(ca.column+jb),Bf.width+=Math.max(aa.tj,isNaN(aa.kf)?aa.qf:Math.min(aa.kf,aa.qf));zb.width+=Bf.width;zb.height+= Bf.height;xc=ca.margin;gd=xc.right+xc.left;Gg=xc.top+xc.bottom;sk(ca,zb.width,zb.height,uh,xf);for(var Xd=ca.Aa,Vc=Math.max(Xd.width+gd,0),Ge=Math.max(Xd.height+Gg,0),tc=0,jb=0;jb=this.qq);jb++)aa=this.ce(ca.Yb+jb),tc+=aa.total||0;if(tc=Eb)&&!(ca.Yb+jb>=this.qq);jb++){var aa=this.ce(ca.Yb+jb),Rb=aa.Sa||0,rj=Df(ca,aa,Cf);aa.Ka=Math.min(aa.qf,Rb+rj);aa.Sa!==Rb&&(Eb-=aa.Sa-Rb)}for(;0Rb&&(aa.Ka=Math.min(aa.qf,Rb+Eb),aa.Sa!==Rb&&(Eb-=aa.Sa-Rb));if(0===aa.index)break;aa=this.ce(aa.index-1)}}for(var vh=0,jb=0;jb=this.Hp);jb++)aa=this.be(ca.column+jb),vh+=aa.total||0;if(vh=Eb)&&!(ca.column+jb>=this.Hp);jb++)aa=this.be(ca.column+jb),Rb=aa.Sa||0,rj=Df(ca,aa,Cf),aa.Ka=Math.min(aa.qf,Rb+rj),aa.Sa!==Rb&&(Eb-=aa.Sa-Rb);for(;0Rb&&(aa.Ka=Math.min(aa.qf, -Rb+Eb),aa.Sa!==Rb&&(Eb-=aa.Sa-Rb));if(0===aa.index)break;aa=this.be(aa.index-1)}}}v.wa(cg);v.yk(Bf);v.yk(zb);for(var He=0,Kg=0,Hc=wo(this,!0),gg=this.Ba,Ef=this.Bf,Ie=Zd=Yd=0,Je=0,ib=this.Hp,fa=0;faRb&&(aa.Ka=Math.min(aa.qf,Rb+Eb),aa.Sa!==Rb&&(Eb-=aa.Sa-Rb));if(0===aa.index)break;aa=this.ce(aa.index-1)}}for(var vh=0,jb=0;jb=this.Gp);jb++)aa=this.be(ca.column+jb),vh+=aa.total||0;if(vh=Eb)&&!(ca.column+jb>=this.Gp);jb++)aa=this.be(ca.column+jb),Rb=aa.Sa||0,rj=Df(ca,aa,Cf),aa.Ka=Math.min(aa.qf,Rb+rj),aa.Sa!==Rb&&(Eb-=aa.Sa-Rb);for(;0Rb&&(aa.Ka=Math.min(aa.qf, +Rb+Eb),aa.Sa!==Rb&&(Eb-=aa.Sa-Rb));if(0===aa.index)break;aa=this.be(aa.index-1)}}}v.wa(cg);v.yk(Bf);v.yk(zb);for(var He=0,Kg=0,Hc=wo(this,!0),gg=this.Ba,Ef=this.Bf,Ie=Zd=Yd=0,Je=0,ib=this.Gp,fa=0;faxh)sk(Zb,Infinity,Infinity),se=Zb.Aa,Ze.Gh(se),this.Zg.add(se);else{var rd=Zb.Ne,kt=Zb.TA,ep=Zb.nh;ep.Od()&&(ep=Gb);var ig=Zb.rq,Uv=Zb.UA,Pk=0,Qk=0,gm=0;if(rd< -xh||rd>=xh){var lt=Lg.oF,Gf=Lg.nF;ig!==cj&&(gm=Lg.computeAngle(Zb,ig,Gf),Zb.fg=gm);Pk=lt.x-Mg.x;Qk=lt.y-Mg.y}else{var Hd,$e;if(0<=rd)Hd=Ng.fa(rd),$e=rdnt+10?0<=rd?ki.Ac(Hd):Hd.Ac(ki):nt>mt+10?0<=rd?$e.Ac(li):li.Ac($e):0<=rd?ki.Ac(li):li.Ac(ki)}else Gf=0<=rd? Hd.Ac($e):$e.Ac(Hd);ig!==cj&&(gm=Lg.computeAngle(Zb,ig,Gf),Zb.fg=gm);Pk=Hd.x+($e.x-Hd.x)*kt-Mg.x;Qk=Hd.y+($e.y-Hd.y)*kt-Mg.y}sk(Zb,Infinity,Infinity);var se=Zb.Aa,em=Zb.Ja,Rk=0;Zb instanceof X&&(Rk=Zb.fb);var mi=em.width+Rk,uj=em.height+Rk;Og.reset();Og.translate(-se.x,-se.y);Og.scale(Zb.scale,Zb.scale);Og.rotate(ig===cj?Zb.angle:Gf,mi/2,uj/2);ig!==Jp&&ig!==Kp||Og.rotate(90,mi/2,uj/2);ig!==Lp&&ig!==Mp||Og.rotate(-90,mi/2,uj/2);ig===Np&&(45Gf||225Gf)&&Og.rotate(-Gf,mi/2,uj/2);var zj= -new B(0,0,mi,uj);Ok.Sn(zj,ep);Og.ob(Ok);var Vv=-Ok.x+Rk/2,Wv=-Ok.y+Rk/2;Pg.assign(Uv);isNaN(Pg.x)&&(Pg.x=0<=rd?mi/2+3:-(mi/2+3));isNaN(Pg.y)&&(Pg.y=-(uj/2+3));Pg.rotate(Gf);Pk+=Pg.x;Qk+=Pg.y;zj.set(se);zj.x=Pk+Vv;zj.y=Qk+Wv;this.Zg.add(zj);Ze.Gh(zj)}}if(this.Ue)for(var ot=this.Wf;ot.next();)sk(ot.value,Infinity,Infinity);this.dj=Ze;var fp=this.Pi;fp.l(fp.x+Ze.x,fp.y+Ze.y);Wa(e,Ze.width||0,Ze.height||0);v.we(Og);v.v(Ok);v.v(Pg)}break;case "Grid":break;case "Graduated":var Xv=a,Yv=b,Zv=c,$v=d,Qg=this.Jd(); +new B(0,0,mi,uj);Ok.Rn(zj,ep);Og.ob(Ok);var Vv=-Ok.x+Rk/2,Wv=-Ok.y+Rk/2;Pg.assign(Uv);isNaN(Pg.x)&&(Pg.x=0<=rd?mi/2+3:-(mi/2+3));isNaN(Pg.y)&&(Pg.y=-(uj/2+3));Pg.rotate(Gf);Pk+=Pg.x;Qk+=Pg.y;zj.set(se);zj.x=Pk+Vv;zj.y=Qk+Wv;this.Zg.add(zj);Ze.Gh(zj)}}if(this.Ue)for(var ot=this.Wf;ot.next();)sk(ot.value,Infinity,Infinity);this.dj=Ze;var fp=this.Pi;fp.l(fp.x+Ze.x,fp.y+Ze.y);Wa(e,Ze.width||0,Ze.height||0);v.we(Og);v.v(Ok);v.v(Pg)}break;case "Grid":break;case "Graduated":var Xv=a,Yv=b,Zv=c,$v=d,Qg=this.Jd(); this.vm=[];var Aj=Qg.margin,aw=Aj.right+Aj.left,bw=Aj.top+Aj.bottom;sk(Qg,Xv,Yv,Zv,$v);var pt=Qg.Aa,cw=pt.height,dw=Math.max(pt.width+aw,0),ew=Math.max(cw+bw,0),qt=new B(-Aj.left,-Aj.top,dw,ew);this.vm.push(qt);e.assign(qt);for(var Tk=Qg.xf,rt=Qg.fb,gp=Tk.aA,Bj=Tk.hx,ni=Tk.bA,fw=gp.length,hp=0,ip=0,Cj=v.lb(),jp=0;jpsd&&(sd+=360);st.push(sd)}hp= tt;ip=ut}Cj.push(st)}var vt;if(null===this.Oj){for(var wt=[],lp=this.xa.n,xt=lp.length,mp=0;mphw&&yt.push(zt)}}}this.Oj=wt}vt=this.Oj;var At=this.xa.n,iw=At.length,yh=0,Bt=0,Ct=ni;this.xm=[];for(var hm=[],im=0;imEt*Dt*ni/this.kx)){var be=this.ME,Ft=vt[im],oi=Bj[0][0],Hf=0,td=0,Bt=ni*zh.LE-1E-4,Ct=ni*zh.JE+1E-4,Ej=Et*Dt;if(bethis.Ak+Ej&&(pi=Math.floor((be-this.Ak)/Ej),be-=pi*Ej);for(;be<=this.hA;){var op;a:{for(var jw=Ft.length,pp=0;ppni&&(yh=ni),Bt<=yh&&yh<=Ct)){for(var sd=Cj[Hf][td],Fj= Bj[Hf][td];Hfoi&&tdjm?0om;om++){switch(om){case 0:ce.l(lm,mm);break;case 1:ce.l(lm+up,mm);break;case 2:ce.l(lm,mm+vp);break;case 3:ce.l(lm+up,mm+vp)}ce.rotate(Nt+Ah.angle);ce.offset(Lt,Mt);0===nm&&0===om?ri.l(ce.x,ce.y,0,0):ri.qi(ce);ce.offset(-Lt,-Mt);ce.rotate(-Nt-Ah.angle)}v.v(ce);this.vm.push(ri); +Infinity);Ah.fg=nw;var Jt=Ah.Aa,up=Jt.width,vp=Jt.height,Kt=v.Ug(0,0,up,vp),ce=v.K();ce.Rn(Kt,tp);v.Gb(Kt);for(var lm=-ce.x,mm=-ce.y,ri=new B,ow=It.length,nm=0;nmom;om++){switch(om){case 0:ce.l(lm,mm);break;case 1:ce.l(lm+up,mm);break;case 2:ce.l(lm,mm+vp);break;case 3:ce.l(lm+up,mm+vp)}ce.rotate(Nt+Ah.angle);ce.offset(Lt,Mt);0===nm&&0===om?ri.l(ce.x,ce.y,0,0):ri.qi(ce);ce.offset(-Lt,-Mt);ce.rotate(-Nt-Ah.angle)}v.v(ce);this.vm.push(ri); kb(mw,ri.x,ri.y,ri.width,ri.height)}else if(qi instanceof Fh){var Wk=qi,Ot=sp,pw=e;null===this.ik&&(this.ik=new Fh);var If=this.ik;Bp(Wk,If);var xp=Wk.nh;xp.Od()&&(xp=yb);for(var Bh=Wk.rq,qw=Wk.UA,si=null,pm=0,qm=0,Rg=0,yp=0,rw=Ot.length,rm=0;rmRg||225Rg)&&Sg.rotate(-Rg,Ij/2,Jj/2);var Pt=v.Ug(0,0,Ij,Jj),Xk=v.K();Xk.Sn(Pt,xp);Sg.ob(Xk);var sw=-Xk.x,tw=-Xk.y,Tg=v.K();Tg.assign(qw);isNaN(Tg.x)&&(Tg.x=Ij/2+3);isNaN(Tg.y)&&(Tg.y=-(Jj/2+3));Tg.rotate(Rg);var pm=pm+(Tg.x+sw),qm=qm+(Tg.y+tw),zp=new B(pm,qm,Ch.width,Ch.height),uw=new B(Ch.x,Ch.y,Ch.width,Ch.height),vw=new B(Hj.x,Hj.y,Hj.width, -Hj.height),Qt=new Op;Qt.Ip(If.Mi);kg.push(yp);kg.push(If.le);kg.push(Qt);kg.push(zp);kg.push(uw);kg.push(vw);0===rm?si=zp.copy():si.Gh(zp);v.v(Tg);v.v(Xk);v.Gb(Pt);v.we(Sg)}this.vm.push(si);kb(pw,si.x,si.y,si.width,si.height)}Vl(qi,!1)}}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 af=e.width,bf=e.height,sm=this.padding,ww=sm.top+ +Sg.rotate(Bh===cj?If.angle:Rg,Ij/2,Jj/2);Bh!==Jp&&Bh!==Kp||Sg.rotate(90,Ij/2,Jj/2);Bh!==Lp&&Bh!==Mp||Sg.rotate(-90,Ij/2,Jj/2);Bh===Np&&(45Rg||225Rg)&&Sg.rotate(-Rg,Ij/2,Jj/2);var Pt=v.Ug(0,0,Ij,Jj),Xk=v.K();Xk.Rn(Pt,xp);Sg.ob(Xk);var sw=-Xk.x,tw=-Xk.y,Tg=v.K();Tg.assign(qw);isNaN(Tg.x)&&(Tg.x=Ij/2+3);isNaN(Tg.y)&&(Tg.y=-(Jj/2+3));Tg.rotate(Rg);var pm=pm+(Tg.x+sw),qm=qm+(Tg.y+tw),zp=new B(pm,qm,Ch.width,Ch.height),uw=new B(Ch.x,Ch.y,Ch.width,Ch.height),vw=new B(Hj.x,Hj.y,Hj.width, +Hj.height),Qt=new Op;Qt.Hp(If.Mi);kg.push(yp);kg.push(If.le);kg.push(Qt);kg.push(zp);kg.push(uw);kg.push(vw);0===rm?si=zp.copy():si.Gh(zp);v.v(Tg);v.v(Xk);v.Gb(Pt);v.we(Sg)}this.vm.push(si);kb(pw,si.x,si.y,si.width,si.height)}Vl(qi,!1)}}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 af=e.width,bf=e.height,sm=this.padding,ww=sm.top+ sm.bottom,af=af+(sm.left+sm.right),bf=bf+ww;isFinite(f.width)&&(af=f.width);isFinite(f.height)&&(bf=f.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;Wa(this.Ic,af,bf);to(this,0,0,af,bf)};D.prototype.findMainElement=D.prototype.Jd=function(){if(null===this.dn){var a=this.xa.n,b=a.length;if(0===b)return null;for(var c=0;cc||p>d)this.I(),sk(this,n>c?c:n,p>d?d:p);break;case Be:this.I(!0);sk(this,c+r,d+s,0,0);break;case io:this.I(!0);sk(this,c+r,p+s,0,0);break;case ho:this.I(!0),sk(this,n+r,d+s,0,0)}}k=this.Y;k.x=a;k.y=b; -k.width=c;k.height=d;var u=this.ka.Qb;switch(u){case "Position":for(var t=f.length,x=e.x-this.padding.left,w=e.y-this.padding.top,z=0;z=this.qq);ib++){var ci=this.ce(Qa+ib);fd.height+=ci.total}for(ib=1;ib=this.Hp);ib++){var mj=this.be(Dg+ib);fd.width+=mj.total}var fa=Ud.Sa+fd.width,ca=th.Sa+fd.height;h.x=Yb;h.y=Qb;h.width=fa;h.height=ca;var Fg=Yb,Hk=Qb,Ik=fa,wc=ca;Yb+fa>e.width&&(Ik=Math.max(e.width-Yb,0));Qb+ca>e.height&&(wc=Math.max(e.height-Qb,0));var Fd=tb.alignment,Jb=0,yf=0,cg=0,zf=0;if(Fd.Xc()){Fd=this.Jl;Fd.jd()||(Fd=Gb);var Jb=Fd.x,yf=Fd.y,cg=Fd.offsetX,zf=Fd.offsetY,Vd=Ud.alignment, -Wd=th.alignment;Vd.jd()&&(Jb=Vd.x,cg=Vd.offsetX);Wd.jd()&&(yf=Wd.y,zf=Wd.offsetY)}else Jb=Fd.x,yf=Fd.y,cg=Fd.offsetX,zf=Fd.offsetY;if(isNaN(Jb)||isNaN(yf))yf=Jb=.5,zf=cg=0;var fc=uh.width,sc=uh.height,Xe=tb.margin,aa=Xe.left+Xe.right,di=Xe.top+Xe.bottom,dg=Lo(tb,th,Ud,!1);!isNaN(tb.Ba.width)||dg!==Be&&dg!==io||(fc=Math.max(fa-aa,0));!isNaN(tb.Ba.height)||dg!==Be&&dg!==ho||(sc=Math.max(ca-di,0));var nj=tb.Bf,oj=tb.yh,fc=Math.min(nj.width,fc),sc=Math.min(nj.height,sc),fc=Math.max(oj.width,fc),sc=Math.max(oj.height, -sc),Gd=sc+di;h.x+=h.width*Jb-(fc+aa)*Jb+cg+Xe.left;h.y+=h.height*yf-Gd*yf+zf+Xe.top;tb.visible&&(lb(Fg,Hk,Ik,wc,h.x,h.y,uh.width,uh.height)?tb.jc(h.x,h.y,fc,sc):tb.jc(h.x,h.y,fc,sc,new B(Fg,Hk,Ik,wc)))}else{tb.Hi();tb.qc.Ra();var fb=tb.qc;fb.x=xf.type===Bo?ed:Yb;fb.y=xf.type===Co?Db:Qb;fb.width=uh.width;fb.height=uh.height;tb.qc.freeze();xo(tb,!1)}}}}v.yk(fd);for(Qa=0;Qa=Af){var Bf=this.oF,jb=this.nF;Ig!==cj&&(Jg=this.computeAngle(Ic, +1;ib=this.qq);ib++){var ci=this.ce(Qa+ib);fd.height+=ci.total}for(ib=1;ib=this.Gp);ib++){var mj=this.be(Dg+ib);fd.width+=mj.total}var fa=Ud.Sa+fd.width,ca=th.Sa+fd.height;h.x=Yb;h.y=Qb;h.width=fa;h.height=ca;var Fg=Yb,Hk=Qb,Ik=fa,wc=ca;Yb+fa>e.width&&(Ik=Math.max(e.width-Yb,0));Qb+ca>e.height&&(wc=Math.max(e.height-Qb,0));var Fd=tb.alignment,Ib=0,yf=0,cg=0,zf=0;if(Fd.Xc()){Fd=this.Jl;Fd.jd()||(Fd=Gb);var Ib=Fd.x,yf=Fd.y,cg=Fd.offsetX,zf=Fd.offsetY,Vd=Ud.alignment, +Wd=th.alignment;Vd.jd()&&(Ib=Vd.x,cg=Vd.offsetX);Wd.jd()&&(yf=Wd.y,zf=Wd.offsetY)}else Ib=Fd.x,yf=Fd.y,cg=Fd.offsetX,zf=Fd.offsetY;if(isNaN(Ib)||isNaN(yf))yf=Ib=.5,zf=cg=0;var fc=uh.width,sc=uh.height,Xe=tb.margin,aa=Xe.left+Xe.right,di=Xe.top+Xe.bottom,dg=Lo(tb,th,Ud,!1);!isNaN(tb.Ba.width)||dg!==Be&&dg!==io||(fc=Math.max(fa-aa,0));!isNaN(tb.Ba.height)||dg!==Be&&dg!==ho||(sc=Math.max(ca-di,0));var nj=tb.Bf,oj=tb.yh,fc=Math.min(nj.width,fc),sc=Math.min(nj.height,sc),fc=Math.max(oj.width,fc),sc=Math.max(oj.height, +sc),Gd=sc+di;h.x+=h.width*Ib-(fc+aa)*Ib+cg+Xe.left;h.y+=h.height*yf-Gd*yf+zf+Xe.top;tb.visible&&(lb(Fg,Hk,Ik,wc,h.x,h.y,uh.width,uh.height)?tb.ic(h.x,h.y,fc,sc):tb.ic(h.x,h.y,fc,sc,new B(Fg,Hk,Ik,wc)))}else{tb.Hi();tb.pc.Ra();var fb=tb.pc;fb.x=xf.type===Bo?ed:Yb;fb.y=xf.type===Co?Db:Qb;fb.width=uh.width;fb.height=uh.height;tb.pc.freeze();xo(tb,!1)}}}}v.yk(fd);for(Qa=0;Qa=Af){var Bf=this.oF,jb=this.nF;Ig!==cj&&(Jg=this.computeAngle(Ic, Ig,jb),Ic.angle=Jg);$d=Bf.x;ae=Bf.y}else{var tc=void 0,Eb=void 0;if(0<=Wc)tc=fg.n[Wc],Eb=Wcvh+10?0<=Wc?Df.Ac(tc):tc.Ac(Df):vh>rj+10?0<=Wc?Eb.Ac(Rb):Rb.Ac(Eb):0<=Wc?Df.Ac(Rb):Rb.Ac(Df)}else jb=0<=Wc?tc.Ac(Eb):Eb.Ac(tc);Ig!==cj&&(Jg=this.computeAngle(Ic, -Ig,jb),Ic.angle=Jg);$d=tc.x+(Eb.x-tc.x)*Mk;ae=tc.y+(Eb.y-tc.y)*Mk}if(Hg.L(vb))Ic.location=new y($d,ae);else{Hg.Od()&&(Hg=Gb);var He=v.Ff();He.reset();He.scale(Ic.scale,Ic.scale);He.rotate(Ic.angle,0,0);var Kg=Ic.Ja,gg=v.Ug(0,0,Kg.width,Kg.height),Ef=v.K();Ef.Sn(gg,Hg);He.ob(Ef);var Ie=-Ef.x,Je=-Ef.y,Ff=zb.copy();isNaN(Ff.x)&&(Ff.x=0<=Wc?Ef.x+3:-(Ef.x+3));isNaN(Ff.y)&&(Ff.y=-(Ef.y+3));Ff.rotate(jb);$d+=Ff.x;ae+=Ff.y;He.lG(gg);var Ie=Ie+gg.x,Je=Je+gg.y,sj=v.xb($d+Ie,ae+Je);Ic.move(sj);v.v(sj);v.v(Ef); -v.Gb(gg);v.we(He)}}Hc?this.Kn(!1):fi.Kn(!1)}break;case "Grid":break;case "Graduated":if(null!==this.vm){var qd=this.Jd(),tj=this.xm,hi=this.vm,ii=0,Ye=hi[ii];ii++;qd.jc(Ye.x-e.x,Ye.y-e.y,Ye.width,Ye.height);for(var re=f.length,hg=0;hgs.width||r.y>s.height||0>r.x+r.width||0>r.y+r.height||(q.Xg()?(r=q.transform,Ra(k.set(a),r),Ra(l.set(b),r)):(k.set(a),l.set(b)),r=q,q=q instanceof D?q:null,null!==q?!q.un(k,l,c,d,e,f):!r.BE(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 Ep(a){var b=a.A;if(void 0===b||b===nc)b=null;null===b&&a instanceof X&&(a=a.xf,null!==a&&(b=a.A));null===b&&(b=xb);return b}function Fp(a){var b=a.B;if(void 0===b||b===nc)b=null;null===b&&a instanceof X&&(a=a.xf,null!==a&&(b=a.B));null===b&&(b=Mb);return b}D.prototype.add=D.prototype.add=function(a){v.F(a,G,D,"add:element");this.Md(this.xa.count,a)};D.prototype.elt=D.prototype.fa=function(a){return this.xa.fa(a)}; D.prototype.insertAt=D.prototype.Md=function(a,b){b instanceof S&&v.k("Cannot add a Part to a Panel: "+b);if(this===b||this.Vl(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.N;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.ka!==El||b instanceof X||v.k("Can only add Shapes to a Grid Panel, not: "+b);this.ka!==bp||b instanceof X||b instanceof Fh||v.k("Can only add Shapes or TextBlocks to a Graduated Panel, not: "+b);b.cm(this);b.Qm=null;if(null!==this.aq){var d=b.data;null!==d&&"object"===typeof d&&(null===this.qg&&(this.qg=new la(Object,D)),this.qg.add(d,b))}var e=this.xa,d=-1;if(c===this){for(var f=-1,h=this.xa.n,k=h.length,l=0;l=e.count&& +this.toString());this.ka!==El||b instanceof X||v.k("Can only add Shapes to a Grid Panel, not: "+b);this.ka!==bp||b instanceof X||b instanceof Fh||v.k("Can only add Shapes or TextBlocks to a Graduated Panel, not: "+b);b.cm(this);b.Qm=null;if(null!==this.$p){var d=b.data;null!==d&&"object"===typeof d&&(null===this.qg&&(this.qg=new la(Object,D)),this.qg.add(d,b))}var e=this.xa,d=-1;if(c===this){for(var f=-1,h=this.xa.n,k=h.length,l=0;l=e.count&& a>=e.count)return;e.$c(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.Md(a,b);this.I();b.I();null!==b.Qd?this.Bk=!0:b instanceof D&&!0===b.Bk&&(this.Bk=!0);this.Oj=null;c=this.V;null!==c&&(c.Lm=null,c.$j=NaN,this.Bk&&c instanceof T&&(c.Bk=!0),c.Bk&&(c.ne=null),e=this.g,null!==e&&e.pa.eb||(-1!==d&&c.Zc(Of,"elements",this,b,null,d,null),c.Zc(Nf,"elements",this,null,b,null,a),this.Yt()||Up(this,b,!1)))}; v.defineProperty(D,{Bk:null},function(){return 0!==(this.P&8388608)},function(a){0!==(this.P&8388608)!==a&&(this.P^=8388608)});function Vp(a,b){a.P=b?a.P|16777216:a.P&-16777217}D.prototype.remove=D.prototype.remove=function(a){v.F(a,G,D,"remove:element");for(var b=this.xa.n,c=b.length,d=-1,e=0;ea&&v.Fa(a,">= 0",D,"getRowDefinition:idx");a=Math.round(a);var b=this.Yd;if(void 0===b[a]){var c=new Yg;c.cm(this);c.xe=!0;c.index=a;b[a]=c}return b[a]};D.prototype.removeRowDefinition=D.prototype.DF=function(a){0>a&&v.Fa(a,">= 0",D,"removeRowDefinition:idx");a=Math.round(a);var b=this.Yd;this.Zc(Of,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.I()};v.u(D,{Hp:"columnCount"},function(){return void 0===this.Ud?0:this.Ud.length}); +D.prototype.getRowDefinition=D.prototype.ce=function(a){0>a&&v.Fa(a,">= 0",D,"getRowDefinition:idx");a=Math.round(a);var b=this.Yd;if(void 0===b[a]){var c=new Yg;c.cm(this);c.xe=!0;c.index=a;b[a]=c}return b[a]};D.prototype.removeRowDefinition=D.prototype.DF=function(a){0>a&&v.Fa(a,">= 0",D,"removeRowDefinition:idx");a=Math.round(a);var b=this.Yd;this.Zc(Of,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.I()};v.u(D,{Gp:"columnCount"},function(){return void 0===this.Ud?0:this.Ud.length}); D.prototype.getColumnDefinition=D.prototype.be=function(a){0>a&&v.Fa(a,">= 0",D,"getColumnDefinition:idx");a=Math.round(a);var b=this.Ud;if(void 0===b[a]){var c=new Yg;c.cm(this);c.xe=!1;c.index=a;b[a]=c}return b[a]};D.prototype.removeColumnDefinition=D.prototype.AF=function(a){0>a&&v.Fa(a,">= 0",D,"removeColumnDefinition:idx");a=Math.round(a);var b=this.Ud;this.Zc(Of,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.I()}; v.defineProperty(D,{tJ:"rowSizing"},function(){return void 0===this.Vm?ap:this.Vm},function(a){if(void 0!==this.Vm){var b=this.Vm;b!==a&&(a!==ap&&a!==Hp&&v.k("Panel.rowSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.Vm=a,this.I(),this.h("rowSizing",b,a))}}); v.defineProperty(D,{oH:"columnSizing"},function(){return void 0===this.qm?ap:this.qm},function(a){if(void 0!==this.qm){var b=this.qm;b!==a&&(a!==ap&&a!==Hp&&v.k("Panel.columnSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None, not: "+a),this.qm=a,this.I(),this.h("columnSizing",b,a))}}); @@ -1208,25 +1208,25 @@ D.prototype.findColumnForLocalX=function(a){if(0>a)return-1;if(this.type!==Ko)re D.prototype.graduatedValueForPoint=function(a){if(this.type!==bp)return NaN;var b=this.Jd(),c=b.xf,d=v.Ff();d.set(b.transform);d.mx();a.transform(d);v.we(d);return c.SH(a)*this.kx+this.Ak}; v.defineProperty(D,{data:"data"},function(){return this.ie},function(a){var b=this.ie;if(b!==a){var c=this instanceof S&&!(this instanceof mh);c&&v.j(a,"object",D,"data");oh(this);this.ie=a;var d=this.g;null!==d&&(c?this instanceof W?(null!==b&&d.Gj.remove(b),null!==a&&d.Gj.add(a,this)):this instanceof S&&(null!==b&&d.zi.remove(b),null!==a&&d.zi.add(a,this)):(c=this.N,null!==c&&null!==c.qg&&(null!==b&&c.qg.remove(b),null!==a&&c.qg.add(a,this))));this.h("data",b,a);null!==d&&d.pa.eb||null!==a&&this.Hb()}}); v.defineProperty(D,{cu:"itemIndex"},function(){return this.Nr},function(a){var b=this.Nr;b!==a&&(this.Nr=a,this.h("itemIndex",b,a))});function Uo(a){a=a.Wk;return null!==a&&a.Q} -function oh(a){var b=a.Wk;if(null===b)null!==a.data&&v.k("Template cannot have .data be non-null: "+a),a.Wk=b=new I(dh);else if(b.Q)return;var c=new I(G);Vp(a,!1);To(a,a,function(a,d){var e=d.vc;if(null!==e)for(Oo(d,!1),e=e.i;e.next();){var f=e.value;f.mode===fh&&Oo(d,!0);var h=f.yq;null!==h&&("/"===h&&Vp(a,!0),h=gh(f,a,d),null!==h&&(c.add(h),null===h.mp&&(h.mp=new I(dh)),h.mp.add(f)));b.add(f)}if(d instanceof D&&d.type===Ko){if(0a;)this.mf(this.xa.length-1);a=this.aq;if(null!==a)for(var b=v.Xa(a),c=0;ca;)this.mf(this.xa.length-1);a=this.$p;if(null!==a)for(var b=v.Xa(a),c=0;cc)){var d;d=Wp(a,b);var e=a.uI,f=null;null!==e&&(f=e.na(d));null===f&&(Xp||(Xp=!0,v.trace('No item template Panel found for category "'+d+'" on '+a),v.trace(" Using default item template."),d=new D,e=new Fh,e.bind(new dh("text","",Pf)),d.add(e),Yp=d),f=Yp);d=f;null!==d&&(oh(d),d=d.copy(),0!==(d.P&16777216)&&(e=a.Nl(),null!==e&&Vp(e,!0)),"object"===typeof b&&(null===a.qg&&(a.qg=new la(Object,D)),a.qg.add(b,d)),e=c,an(a)&&e++,a.Md(e,d),d.ie=b,bn(a,e, c),d.ie=null,d.data=b)}}function bn(a,b,c){for(a=a.xa;be)){for(var f=d.Aa,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,u=q=0,t=v.lb(),x=2;xp&&(p=1);for(var e=c=p,m=h/2,n=0===m?!1:!0,x=0,q=t[x],p=q[0],s=q[1],r=q[2],q=q[3],w=0;.1<=u;){0===w&&(n?(e=c,e-=m,u-=m,n=!1):e=c,0===e&&(e=1));if(e>u){v.wa(t);return}e> -q?(w=e-q,e=q):w=0;var z=Math.sqrt(e*e/(1+r*r));0>p&&(z=-z);k+=z;l+=r*z;a.translate(k,l);a.rotate(s);a.translate(-(h/2),-(f/2));0===w&&d.wk(a,b);a.translate(h/2,f/2);a.rotate(-s);a.translate(-k,-l);u-=e;q-=e;if(0!==w){x++;if(x===t.length){v.wa(t);return}q=t[x];p=q[0];s=q[1];r=q[2];q=q[3];e=w}}v.wa(t)}} -X.prototype.wk=function(a,b){if(null!==this.sc||null!==this.Ad){null!==this.Ad&&Fo(this,a,this.Ad,!0,!1);null!==this.sc&&Fo(this,a,this.sc,!1,!1);var c=this.ei;if(0===c){var d=this.V;d instanceof mh&&d.type===$i&&"Selection"===d.kc&&d.rb instanceof X&&d.Of.Jd()===d.rb&&(c=d.rb.fb)}a.lineWidth=c;a.lineJoin=this.rp;a.lineCap=this.pp;a.miterLimit=this.cn;var e=!1;this.V&&b.lj("drawShadows")&&(e=this.V.Xl);var f=!0;null!==this.sc&&null===this.Ad&&(f=!1);var d=!1,h=!0,k=this.$F;null!==k&&(d=!0,h=a.Yz(k, +q?(w=e-q,e=q):w=0;var A=Math.sqrt(e*e/(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===w&&d.wk(a,b);a.translate(h/2,f/2);a.rotate(-s);a.translate(-k,-l);u-=e;q-=e;if(0!==w){x++;if(x===t.length){v.wa(t);return}q=t[x];p=q[0];s=q[1];r=q[2];q=q[3];e=w}}v.wa(t)}} +X.prototype.wk=function(a,b){if(null!==this.sc||null!==this.Ad){null!==this.Ad&&Fo(this,a,this.Ad,!0,!1);null!==this.sc&&Fo(this,a,this.sc,!1,!1);var c=this.ei;if(0===c){var d=this.V;d instanceof mh&&d.type===$i&&"Selection"===d.jc&&d.rb instanceof X&&d.Of.Jd()===d.rb&&(c=d.rb.fb)}a.lineWidth=c;a.lineJoin=this.qp;a.lineCap=this.op;a.miterLimit=this.cn;var e=!1;this.V&&b.lj("drawShadows")&&(e=this.V.Xl);var f=!0;null!==this.sc&&null===this.Ad&&(f=!1);var d=!1,h=!0,k=this.$F;null!==k&&(d=!0,h=a.Yz(k, this.Fe));var l=this.gb;if(null!==l){if(l.ka===Ce)a.beginPath(),d&&!h?qo(a,l.yc,l.Jc,l.yb,l.Fb,k,this.Fe):(a.moveTo(l.yc,l.Jc),a.lineTo(l.yb,l.Fb)),null!==this.Ad&&a.Gg(this.Ad),0!==c&&null!==this.sc&&a.yj();else if(l.ka===De){var m=l.yc,n=l.Jc,p=l.yb,q=l.Fb,l=Math.min(m,p),r=Math.min(n,q),m=Math.abs(p-m),n=Math.abs(q-n);null!==this.Ad&&(a.beginPath(),a.rect(l,r,m,n),a.Gg(this.Ad));if(null!==this.sc){var s=p=0,u=0;f&&e&&(p=a.shadowOffsetX,s=a.shadowOffsetY,u=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY= 0,a.shadowBlur=0);d&&!h?(h=v.lb(),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(),aq(a,h,k,this.Fe),a.yj(),v.wa(h)):0!==c&&(a.beginPath(),a.rect(l,r,m,n),a.yj());f&&e&&(a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=u)}}else if(l.ka===Ke)m=l.yc,n=l.Jc,p=l.yb,q=l.Fb,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+Zc*l,n-r,m+l,n-Zc*r,m+l,n),a.bezierCurveTo(m+ l,n+Zc*r,m+Zc*l,n+r,m,n+r),a.bezierCurveTo(m-Zc*l,n+r,m-l,n+Zc*r,m-l,n),a.bezierCurveTo(m-l,n-Zc*r,m-Zc*l,n-r,m,n-r),a.closePath(),null!==this.Ad&&a.Gg(this.Ad),d&&!h&&(h=v.lb(),Td(m,n-r,m+Zc*l,n-r,m+l,n-Zc*r,m+l,n,.5,h),Td(m+l,n,m+l,n+Zc*r,m+Zc*l,n+r,m,n+r,.5,h),Td(m,n+r,m-Zc*l,n+r,m-l,n+Zc*r,m-l,n,.5,h),Td(m-l,n,m-l,n-Zc*r,m-Zc*l,n-r,m,n-r,.5,h),a.beginPath(),aq(a,h,k,this.Fe),v.wa(h)),0!==c&&null!==this.sc&&(f&&e?(p=a.shadowOffsetX,s=a.shadowOffsetY,u=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY= 0,a.shadowBlur=0,a.yj(),a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=u):a.yj());else if(l.ka===ze){r=l.Jj;n=r.length;for(q=0;qx.sf);else{var t=hf(x,m),w=t.length;if(0===w){a.lineTo(x.la,x.sa);break}for(var z=0;zx.sf);else{var t=hf(x,m),w=t.length;if(0===w){a.lineTo(x.la,x.sa);break}for(var A=0;A(c.ja-c.C)*(a.x-c.C)+(c.ha-c.D)*(a.y-c.D)||0>d)return!1;v.Gb(f);return Qd(c.ja,c.ha,c.C,c.D,e,a.x,a.y)}if(c.type===De){var h=c.ja,k=c.ha,l=c.C,m=c.D;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.Tf(-d,-d);if(f.Ha(a))return v.Gb(f),!1;f.Tf(d,d)}null!==this.stroke&&f.Tf(e,e);e=f.Ha(a);v.Gb(f);return e}if(c.type===Ke){var h=c.ja,k=c.ha,l=c.C,m=c.D,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.Gb(f),!1;h+=d;k+=d}null!==this.stroke&&(h+=e,k+=e);v.Gb(f);return 0>=h||0>=k?!1:1>=c*c/(h*h)+n*n/(k*k)}if(c.type=== ze)return v.Gb(f),null===this.fill?lf(c,a.x,a.y,e):c.Ha(a,e,1=this.fb)n=je(p.yc,p.Jc,p.yb,p.Fb,f,h,k,l,e);else{var r=0,s=0;p.yc===p.yb?(r=m,s=0):(b=(p.Fb-p.Jc)/(p.yb-p.yc),s=m/Math.sqrt(1+b*b),r=s*b);d=v.lb();b=new y;je(p.yc+ r,p.Jc+s,p.yb+r,p.Fb+s,f,h,k,l,b)&&d.push(b);b=new y;je(p.yc-r,p.Jc-s,p.yb-r,p.Fb-s,f,h,k,l,b)&&d.push(b);b=new y;je(p.yc+r,p.Jc+s,p.yc-r,p.Jc-s,f,h,k,l,b)&&d.push(b);b=new y;je(p.yb+r,p.Fb+s,p.yb-r,p.Fb-s,f,h,k,l,b)&&d.push(b);b=d.length;if(0===b)return v.wa(d),!1;n=!0;s=Infinity;for(r=0;rMath.abs(c)){n=h-b-c*(f-d);if(0>a*a*c*c+t*t-n*n){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(a*a*c*c+t*t-n*n);k=(-(a*a*c*n)+a*t*m)/(t*t+a*a*c*c)+d;a=(-(a*a*c*n)-a*t*m)/(t*t+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);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||$a(l.y,e))&&(l.ye||$a(l.x,e))&&(l.x=h&&d<=a}a=h&&f<=a} -X.prototype.BE=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.sk(a,!0))return!0;var e=a.wf(b);b=e;1.5e)return!0;return!1}if(c&&null!==this.fill&&this.sk(a,!0))return!0;var e=a.wf(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===ze){h=f.kb;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?lf(f,a.x,a.y,b):f.Ha(a,b,!0))return!0}else{c=f.dc;for(b=0;be)return!1;l=k.vb.n;m=l.length;for(h=0;he)return!1;break;case df:f=v.lb(); -Td(n,p,q.uc,q.Rc,q.Ah,q.Bh,q.C,q.D,.8,f);n=d(f,a);v.wa(f);if(n)return!1;n=q.C;p=q.D;if(a.Op(n,p)>e)return!1;break;case ef:f=v.lb();ge(n,p,q.uc,q.Rc,q.C,q.D,.8,f);n=d(f,a);v.wa(f);if(n)return!1;n=q.C;p=q.D;if(a.Op(n,p)>e)return!1;break;case ff:case gf:var r=q.type===ff?hf(q,k):jf(q,k,n,p),s=r.length;if(0===s){n=q.la;p=q.sa;if(a.Op(n,p)>e)return!1;break}q=null;f=v.lb();for(b=0;bm&&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?lf(f,a.x,a.y,b):f.Ha(a,b,!0))return!0}else{c=f.dc;for(b=0;be)return!1;l=k.vb.n;m=l.length;for(h=0;he)return!1;break;case df:f=v.lb(); +Td(n,p,q.uc,q.Rc,q.Ah,q.Bh,q.C,q.D,.8,f);n=d(f,a);v.wa(f);if(n)return!1;n=q.C;p=q.D;if(a.Np(n,p)>e)return!1;break;case ef:f=v.lb();ge(n,p,q.uc,q.Rc,q.C,q.D,.8,f);n=d(f,a);v.wa(f);if(n)return!1;n=q.C;p=q.D;if(a.Np(n,p)>e)return!1;break;case ff:case gf:var r=q.type===ff?hf(q,k):jf(q,k,n,p),s=r.length;if(0===s){n=q.la;p=q.sa;if(a.Np(n,p)>e)return!1;break}q=null;f=v.lb();for(b=0;b= 0",X,"strokeWidth:value")});v.defineProperty(X,{KL:"strokeCap"},function(){return this.pp},function(a){var b=this.pp;b!==a&&("string"!==typeof a||"butt"!==a&&"round"!==a&&"square"!==a?v.Fa(a,'"butt", "round", or "square"',X,"strokeCap"):(this.pp=a,this.oa(),this.h("strokeCap",b,a)))}); -v.defineProperty(X,{ML:"strokeJoin"},function(){return this.rp},function(a){var b=this.rp;b!==a&&("string"!==typeof a||"miter"!==a&&"bevel"!==a&&"round"!==a?v.Fa(a,'"miter", "bevel", or "round"',X,"strokeJoin"):(this.rp=a,this.oa(),this.h("strokeJoin",b,a)))});v.defineProperty(X,{NL:"strokeMiterLimit"},function(){return this.cn},function(a){var b=this.cn;if(b!==a)if(1<=a){this.cn=a;this.oa();var c=this.V;null!==c&&(c.$j=NaN);this.h("strokeMiterLimit",b,a)}else v.Fa(a,"value >= 1",X,"strokeWidth:value")}); -v.defineProperty(X,{$F:"strokeDashArray"},function(){return this.qp},function(a){var b=this.qp;if(b!==a){null===a||Array.isArray(a)||v.yd(a,"Array",X,"strokeDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;e= 0",X,"strokeWidth:value")});v.defineProperty(X,{KL:"strokeCap"},function(){return this.op},function(a){var b=this.op;b!==a&&("string"!==typeof a||"butt"!==a&&"round"!==a&&"square"!==a?v.Fa(a,'"butt", "round", or "square"',X,"strokeCap"):(this.op=a,this.oa(),this.h("strokeCap",b,a)))}); +v.defineProperty(X,{ML:"strokeJoin"},function(){return this.qp},function(a){var b=this.qp;b!==a&&("string"!==typeof a||"miter"!==a&&"bevel"!==a&&"round"!==a?v.Fa(a,'"miter", "bevel", or "round"',X,"strokeJoin"):(this.qp=a,this.oa(),this.h("strokeJoin",b,a)))});v.defineProperty(X,{NL:"strokeMiterLimit"},function(){return this.cn},function(a){var b=this.cn;if(b!==a)if(1<=a){this.cn=a;this.oa();var c=this.V;null!==c&&(c.$j=NaN);this.h("strokeMiterLimit",b,a)}else v.Fa(a,"value >= 1",X,"strokeWidth:value")}); +v.defineProperty(X,{$F:"strokeDashArray"},function(){return this.pp},function(a){var b=this.pp;if(b!==a){null===a||Array.isArray(a)||v.yd(a,"Array",X,"strokeDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;ea?a=0:1a?a=0:1a?a=0:1a?a=0:1a?a=0:1n*l*l&&(h=!0);b.uf!==a&&(h=!1);!1===b.lj("textGreeking")&&(h=!1);n=this.ai;l=this.bi;switch(this.Lt){case ko:a.translate(c, -0);a.scale(-1,1);break;case jo:a.translate(0,d);a.scale(1,-1);break;case lo:a.translate(c,d),a.scale(-1,-1)}var m=this.le,p=(n+e+l)*m;d>p&&(k=this.wl,k=k.y*d-k.y*p+k.offsetY);for(var p=this.Mi,q=0;qc&&(r=c);var k=k+n,u=s,s=a,t=k,x=c,w=e,z=f,A=0;h?("left"===z?A=0:"right"===z?A=x-r:"center"===z&&(A=(x-r)/2),s.fillRect(0+A,t+.25*w,r,1)):("left"===z?A=0:"right"===z?A=x:"center"===z&&(A=x/2),s.fillText(u,0+A,t+w-.25*w),u=w/20|0,0===u&&(u=1),"right"===z?A-=r:"center"=== -z&&(A-=r/2),this.Uj&&(s.beginPath(),s.lineWidth=u,s.moveTo(0+A,t+w-.2*w),s.lineTo(0+A+r,t+w-.2*w),s.stroke()),this.Tj&&(s.beginPath(),s.lineWidth=u,t=t+w-w/2.2|0,0!==u%2&&(t+=.5),s.moveTo(0+A,t),s.lineTo(0+A+r,t),s.stroke()));k+=e+l}switch(this.Lt){case ko:a.scale(-1,1);a.translate(-c,0);break;case jo:a.scale(1,-1);a.translate(0,-d);break;case lo:a.scale(-1,-1),a.translate(-c,-d)}}}; +0);a.scale(-1,1);break;case jo:a.translate(0,d);a.scale(1,-1);break;case lo:a.translate(c,d),a.scale(-1,-1)}var m=this.le,p=(n+e+l)*m;d>p&&(k=this.wl,k=k.y*d-k.y*p+k.offsetY);for(var p=this.Mi,q=0;qc&&(r=c);var k=k+n,u=s,s=a,t=k,x=c,w=e,A=f,z=0;h?("left"===A?z=0:"right"===A?z=x-r:"center"===A&&(z=(x-r)/2),s.fillRect(0+z,t+.25*w,r,1)):("left"===A?z=0:"right"===A?z=x:"center"===A&&(z=x/2),s.fillText(u,0+z,t+w-.25*w),u=w/20|0,0===u&&(u=1),"right"===A?z-=r:"center"=== +A&&(z-=r/2),this.Uj&&(s.beginPath(),s.lineWidth=u,s.moveTo(0+z,t+w-.2*w),s.lineTo(0+z+r,t+w-.2*w),s.stroke()),this.Tj&&(s.beginPath(),s.lineWidth=u,t=t+w-w/2.2|0,0!==u%2&&(t+=.5),s.moveTo(0+z,t),s.lineTo(0+z+r,t),s.stroke()));k+=e+l}switch(this.Lt){case ko:a.scale(-1,1);a.translate(-c,0);break;case jo:a.scale(1,-1);a.translate(0,-d);break;case lo:a.scale(-1,-1),a.translate(-c,-d)}}}; Fh.prototype.computeAngle=function(a,b){var c=0;switch(a){default:case cj:c=0;break;case hq:c=b;break;case Jp:c=b+90;break;case Lp:c=b-90;break;case zq:c=b+180;break;case Aq:c=ue(b);90c&&(c-=180);break;case Kp:c=ue(b+90);90c&&(c-=180);break;case Mp:c=ue(b-90);90c&&(c-=180);break;case Np:c=ue(b);if(45c||225c)return 0;90c&&(c-=180)}return ue(c)}; -Fh.prototype.dq=function(a,b,c,d){this.To=a;var e=this.Mi;e.reset();var f=0,h=0;if(isNaN(this.Ba.width)){f=this.Gd.replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(0===f.length)f=0;else if(this.ux){for(var k=h=0,l=!1;!l;){var m=f.indexOf("\n",k);-1===m&&(m=f.length,l=!0);k=Bq(f.substr(k,m-k).replace(/^\s+|\s+$/g,""),this.kg);k>h&&(h=k);k=m+1}f=h}else h=f.indexOf("\n",0),0<=h&&(f=f.substr(0,h)),f=k=Bq(f,this.kg);f=Math.min(f,a/this.scale);f=Math.max(8,f)}else f=this.Ba.width;null!==this.N&&(f=Math.min(f, +Fh.prototype.cq=function(a,b,c,d){this.So=a;var e=this.Mi;e.reset();var f=0,h=0;if(isNaN(this.Ba.width)){f=this.Gd.replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(0===f.length)f=0;else if(this.ux){for(var k=h=0,l=!1;!l;){var m=f.indexOf("\n",k);-1===m&&(m=f.length,l=!0);k=Bq(f.substr(k,m-k).replace(/^\s+|\s+$/g,""),this.kg);k>h&&(h=k);k=m+1}f=h}else h=f.indexOf("\n",0),0<=h&&(f=f.substr(0,h)),f=k=Bq(f,this.kg);f=Math.min(f,a/this.scale);f=Math.max(8,f)}else f=this.Ba.width;null!==this.N&&(f=Math.min(f, this.N.Bf.width),f=Math.max(f,this.N.yh.width));h=xq(this,f,e);m=h=isNaN(this.Ba.height)?Math.min(h,b/this.scale):this.Ba.height;if(0!==e.hf&&1!==e.Qe.length&&this.Vi===vq&&(b=this.kg,l=this.Vi===vq?Cq(b):0,k=this.ai+this.bi,k=Math.max(0,yq(this)+k),m=Math.min(this.HI-1,Math.max(Math.floor(m/k+.01)-1,0)),!(m+1>=e.Qe.length))){k=e.Qe[m];for(a=Math.max(1,a-l);Bq(k,b)>a&&1=a.eh)return new ia(0,l);if(a.ok===tq){c.ej=1;f=Bq(b,k);if(0===h||f<=d)return c.hf=f,c.tf.push(c.hf),c.Qe.push(b),new ia(f,l);var m=Dq(b);b=b.substr(m.length);for(var n=Dq(b),f=Bq(m+n,k);0d&&1=a&&v.Fa(a,"> 0",Fh,"maxLines"),this.eh=a,this.h("maxLines",b,a),this.I())});v.u(Fh,{mL:"metrics"},function(){return this.Mi}); -v.defineProperty(Fh,{yK:"choices"},function(){return this.Rq},function(a){var b=this.Rq;b!==a&&(null===a||Array.isArray(a)||v.yd(a,"Array",Fh,"choices:value"),this.Rq=a,this.h("choices",b,a))});function Op(){this.hf=this.ej=0;this.tf=[];this.Qe=[]}Op.prototype.reset=function(){this.hf=this.ej=0;this.tf=[];this.Qe=[]};Op.prototype.Ip=function(a){this.ej=a.ej;this.hf=a.hf;this.tf=v.Fl(a.tf);this.Qe=v.Fl(a.Qe)};v.u(Op,{vK:"arrSize"},function(){return this.tf});v.u(Op,{wK:"arrText"},function(){return this.Qe}); -v.u(Op,{lL:"maxLineWidth"},function(){return this.hf});function tl(){G.call(this);this.Se=null;this.Xs="";this.gk=Jd;this.Ho=Be;this.fi=this.Te=null;this.Go=Gb;this.jg=yj;this.sp=null;this.Zy=!1;this.uv=!0;this.kp=null}v.Ma(tl,G);v.ga("Picture",tl);tl.prototype.cloneProtected=function(a){G.prototype.cloneProtected.call(this,a);a.element=this.Se;a.Xs=this.Xs;a.gk=this.gk.S();a.Ho=this.Ho;a.jg=this.jg;a.Te=this.Te;a.fi=this.fi;a.Go=this.Go.S();a.uv=this.uv;a.kp=this.kp}; -tl.prototype.ic=function(a){a===yj||a===Lj||a===Mj?this.gI=a:G.prototype.ic.call(this,a)};tl.prototype.toString=function(){return"Picture("+this.source+")#"+v.Kd(this)};var Eq=new ua,Fq=0,nl=[];function Gq(){var a=nl;if(0===a.length)for(var b=window.document.getElementsByTagName("canvas"),c=b.length,d=0;d=d.width&&(e=e+r.offsetX+(n*r.x-d.width*r.x));p>=d.height&&(f=f+r.offsetY+(p*r.y-d.height*r.y));k=Math.min(d.width,n);h=Math.min(d.height,p);break;case Be:n=d.width;p=d.height;break;case Lj:case Mj:var s=0;q===Lj?(s=Math.min(d.height/p,d.width/n),n*=s,p*=s):q===Mj&&(s=Math.max(d.height/p,d.width/n),n*=s,p*=s,n>=d.width&&(e=(e+r.offsetX+(n*r.x-d.width*r.x)/n)*k),p>=d.height&&(f=(f+r.offsetY+(p*r.y-d.height*r.y)/p)*h),k*=1/(n/d.width),h*=1/(p/d.height), -n=d.width,p=d.height)}var q=this.kj()*b.scale,u=k*h/(n*q*p*q),s=Eq[this.source],q=null;if(void 0!==s&&16s.Cp.length&&(Lq(s,4,l,m),Lq(s,16,l,m));for(var l=s.Cp,m=l.length,q=l[0],t=0;t=d.width&&(e=e+r.offsetX+(n*r.x-d.width*r.x));p>=d.height&&(f=f+r.offsetY+(p*r.y-d.height*r.y));k=Math.min(d.width,n);h=Math.min(d.height,p);break;case Be:n=d.width;p=d.height;break;case Lj:case Mj:var s=0;q===Lj?(s=Math.min(d.height/p,d.width/n),n*=s,p*=s):q===Mj&&(s=Math.max(d.height/p,d.width/n),n*=s,p*=s,n>=d.width&&(e=(e+r.offsetX+(n*r.x-d.width*r.x)/n)*k),p>=d.height&&(f=(f+r.offsetY+(p*r.y-d.height*r.y)/p)*h),k*=1/(n/d.width),h*=1/(p/d.height), +n=d.width,p=d.height)}var q=this.kj()*b.scale,u=k*h/(n*q*p*q),s=Eq[this.source],q=null;if(void 0!==s&&16s.Bp.length&&(Lq(s,4,l,m),Lq(s,16,l,m));for(var l=s.Bp,m=l.length,q=l[0],t=0;th&&a.y>k&&a.righth&&b.y>k&&b.righta&&(a=1);var b=this.g;if(null!==b&&!b.vh){b.vh=!0;var c=new J(T);c.add(this);sr(this,c,b.Pd,a,b.Qa,this,b.lB===ql);b.vh=!1}}; function sr(a,b,c,d,e,f,h){if(1a&&(a=2);var b=this.g;if(null!==b&&!b.vh){b.vh=!0;var c=new J(T);c.add(this);ur(this,c,b.Pd,a,b.Qa,this,b.lB===ql);b.vh=!1}};function ur(a,b,c,d,e,f,h){for(var k=f===a?!1:a.kd,l=c?a.bx():a.Hg();l.next();){var m=l.value;m.Nc&&(k||m.Yg||m.Xb(),m=m.gA(a),null!==m&&m!==a&&!b.contains(m)&&(b.add(m),k||(m.vd(!0),m.Tl(),h&&bl(e,m,f)),2a&&(a-=180);break;case Kp:a=ue(c+90);90a&&(a-=180);break;case Mp:a=ue(c-90);90a&&(a-=180);break;case Np:a=ue(c);if(45a||225a)return 0;90a&&(a-=180)}return ue(a)}; @@ -1596,48 +1596,48 @@ this;a.each(function(a){a=b.Je(a);null!==a&&a.Oc===h&&(a.Oc=null)});d.each(funct v.defineProperty(W,{gJ:"relinkableFrom"},function(){return 0!==(this.Vb&1)},function(a){var b=0!==(this.Vb&1);b!==a&&(this.Vb^=1,this.h("relinkableFrom",b,a),this.de())});v.defineProperty(W,{hJ:"relinkableTo"},function(){return 0!==(this.Vb&2)},function(a){var b=0!==(this.Vb&2);b!==a&&(this.Vb^=2,this.h("relinkableTo",b,a),this.de())});W.prototype.canRelinkFrom=function(){if(!this.gJ)return!1;var a=this.layer;if(null===a)return!0;if(!a.hn)return!1;a=a.g;return null===a||a.hn?!0:!1}; W.prototype.canRelinkTo=function(){if(!this.hJ)return!1;var a=this.layer;if(null===a)return!0;if(!a.hn)return!1;a=a.g;return null===a||a.hn?!0:!1};v.defineProperty(W,{wu:"resegmentable"},function(){return 0!==(this.Vb&4)},function(a){var b=0!==(this.Vb&4);b!==a&&(this.Vb^=4,this.h("resegmentable",b,a),this.de())}); v.defineProperty(W,{Nc:"isTreeLink"},function(){return 0!==(this.Vb&8)},function(a){var b=0!==(this.Vb&8);b!==a&&(this.Vb^=8,this.h("isTreeLink",b,a),null!==this.W&&sn(this.W),null!==this.aa&&sn(this.aa))});v.u(W,{path:"path"},function(){var a=this.Jd();return a instanceof X?a:null}); -v.u(W,{Rn:"routeBounds"},function(){this.Yn();var a=new B;var b=Infinity,c=Infinity,d=this.ra;if(0===d)a.l(NaN,NaN,0,0);else{if(1===d)d=this.m(0),b=Math.min(d.x,b),c=Math.min(d.y,c),a.l(d.x,d.y,0,0);else if(2===d){var e=this.m(0),f=this.m(1),b=Math.min(e.x,f.x),c=Math.min(e.y,f.y);a.l(e.x,e.y,0,0);a.qi(f)}else if(this.computeCurve()===jj&&3<=d&&!this.mc)if(e=this.m(0),b=e.x,c=e.y,a.l(b,c,0,0),3===d)d=this.m(1),b=Math.min(d.x,b),c=Math.min(d.y,c),f=this.m(2),b=Math.min(f.x,b),c=Math.min(f.y,c),Sd(e.x, -e.y,d.x,d.y,d.x,d.y,f.x,f.y,.5,a);else for(var h=3;h=d&&(h=d-1);var l=this.m(h-1),f=this.m(h);Sd(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.m(0),f=this.m(1),b=Math.min(e.x,f.x),c=Math.min(e.y,f.y),a.l(e.x,e.y,0,0),a.qi(f),h=2;hc&&(c=-c)):$a(c.y,d.y)?(c=d.x-c.x,0>c&&(c=-c)):c=Math.sqrt(c.wf(d)),f.push(c),e+=c;for(d=h=c=0;ce/2)break;c+=d;h++}v.wa(f);b=this.m(h);f=this.m(h+1);b.x===f.x?b.y>f.y?a.l(b.x,b.y-(e/2-c)):a.l(b.x,b.y+(e/2-c)):b.y===f.y?b.x>f.x?a.l(b.x-(e/2-c),b.y):a.l(b.x+(e/2-c),b.y):(c=(e/2-c)/d,a.l(b.x+c*(f.x-b.x),b.y+c*(f.y-b.y)));return a};v.u(W,{nF:"midAngle"},function(){this.Yn();return this.computeMidAngle()}); -W.prototype.computeMidAngle=function(){var a=this.ra;if(2>a)return NaN;if(this.computeCurve()===jj&&4<=a&&!this.mc){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,f=a.x,a=a.y,h=(e+f)/2,k=(d+a)/2;return Va(((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(0=d&&(h=d-1);var l=this.m(h-1),f=this.m(h);Sd(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.m(0),f=this.m(1),b=Math.min(e.x,f.x),c=Math.min(e.y,f.y),a.l(e.x,e.y,0,0),a.qi(f),h=2;hc&&(c=-c)):$a(c.y,d.y)?(c=d.x-c.x,0>c&&(c=-c)):c=Math.sqrt(c.wf(d)),f.push(c),e+=c;for(d=h=c=0;ce/2)break;c+=d;h++}v.wa(f);b=this.m(h);f=this.m(h+1);b.x===f.x?b.y>f.y?a.l(b.x,b.y-(e/2-c)):a.l(b.x,b.y+(e/2-c)):b.y===f.y?b.x>f.x?a.l(b.x-(e/2-c),b.y):a.l(b.x+(e/2-c),b.y):(c=(e/2-c)/d,a.l(b.x+c*(f.x-b.x),b.y+c*(f.y-b.y)));return a};v.u(W,{nF:"midAngle"},function(){this.Xn();return this.computeMidAngle()}); +W.prototype.computeMidAngle=function(){var a=this.ra;if(2>a)return NaN;if(this.computeCurve()===jj&&4<=a&&!this.lc){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,f=a.x,a=a.y,h=(e+f)/2,k=(d+a)/2;return Va(((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.Ac(a):b.Ac(a):b.Ac(d);b=this.m(c-1);d=this.m(c);a=this.m(c+1);c=b.wf(d);e=d.wf(a);return c>e+10?b.Ac(d):e>c+10?d.Ac(a):b.Ac(a)}; v.defineProperty(W,{points:"points"},function(){return this.dd},function(a){var b=this.dd;if(b!==a){var c=null;if(Array.isArray(a)){var d=0===a.length%2;if(d)for(var e=0;em&&(p=-p),u=(0>l?-1:1)*p+r,t=n*(u- -r)+s);var r=h.x+2*k/3,s=h.y+2*l/3,x=r,w=s;K(l,0)?w=0l?-1:1)*p+r,w=n*(x-r)+s);this.Gp();this.hi(h);this.zl(u,t);this.zl(x,w);this.hi(q);this.Sg(0,this.getLinkPoint(b,c,d,!0,!1,e,f));this.Sg(3,this.getLinkPoint(e,f,a,!1,!1,b,c))}else d=this.getLinkPoint(b,c,d,!0,!1,e,f),a=this.getLinkPoint(e,f,a,!1,!1,b,c),this.hasCurviness()?(q=a.x-d.x,e=a.y-d.y,f=this.computeCurviness(),b=d.x+q/2,c=d.y+e/2,h=b,k=c,K(e,0)?k=0f&&(h=-h),h=(0>e?-1:1)*h+b, -k=q*(h-b)+c),this.hi(d),this.zl(h,k)):this.hi(d),this.hi(a)}else{p=this.Ck;q&&(n&&p||m)&&this.Gp();var z=m?this.computeCurviness():0,p=this.getLinkPoint(b,c,d,!0,n,e,f),r=u=s=0;if(n||!k||m)if(t=this.computeEndSegmentLength(b,c,d,!0),r=this.getLinkDirection(b,c,p,d,!0,n,e,f),m&&(k||d.L(a)||!n&&1===d.x+a.x&&1===d.y+a.y)&&(r-=n?90:30,0>z&&(r-=180)),0>r?r+=360:360<=r&&(r-=360),m&&(t+=Math.abs(z)*(n?1:2)),0===r?s=t:90===r?u=t:180===r?s=-t:270===r?u=-t:(s=t*Math.cos(r*Math.PI/180),u=t*Math.sin(r*Math.PI/ -180)),d.Od()&&m){var A=c.Va(Gb,v.K()),H=v.xb(A.x+1E3*s,A.y+1E3*u);this.getLinkPointFromPoint(b,c,A,H,!0,p);v.v(A);v.v(H)}var t=this.getLinkPoint(e,f,a,!1,n,b,c),C=w=x=0;if(n||!l||m)A=this.computeEndSegmentLength(e,f,a,!1),C=this.getLinkDirection(e,f,t,a,!1,n,b,c),m&&(l||d.L(a)||!n&&1===d.x+a.x&&1===d.y+a.y)&&(C+=n?0:30,0>z&&(C+=180)),0>C?C+=360:360<=C&&(C-=360),m&&(A+=Math.abs(z)*(n?1:2)),0===C?x=A:90===C?w=A:180===C?x=-A:270===C?w=-A:(x=A*Math.cos(C*Math.PI/180),w=A*Math.sin(C*Math.PI/180)),a.Od()&& -m&&(A=f.Va(Gb,v.K()),H=v.xb(A.x+1E3*x,A.y+1E3*w),this.getLinkPointFromPoint(e,f,A,H,!1,t),v.v(A),v.v(H));a=p;if(n||!k||m)a=new y(p.x+s,p.y+u);d=t;if(n||!l||m)d=new y(t.x+x,t.y+w);!q&&!n&&k&&3m&&(p=-p),u=(0>l?-1:1)*p+r,t=n*(u- +r)+s);var r=h.x+2*k/3,s=h.y+2*l/3,x=r,w=s;K(l,0)?w=0l?-1:1)*p+r,w=n*(x-r)+s);this.Fp();this.hi(h);this.zl(u,t);this.zl(x,w);this.hi(q);this.Sg(0,this.getLinkPoint(b,c,d,!0,!1,e,f));this.Sg(3,this.getLinkPoint(e,f,a,!1,!1,b,c))}else d=this.getLinkPoint(b,c,d,!0,!1,e,f),a=this.getLinkPoint(e,f,a,!1,!1,b,c),this.hasCurviness()?(q=a.x-d.x,e=a.y-d.y,f=this.computeCurviness(),b=d.x+q/2,c=d.y+e/2,h=b,k=c,K(e,0)?k=0f&&(h=-h),h=(0>e?-1:1)*h+b, +k=q*(h-b)+c),this.hi(d),this.zl(h,k)):this.hi(d),this.hi(a)}else{p=this.Ck;q&&(n&&p||m)&&this.Fp();var A=m?this.computeCurviness():0,p=this.getLinkPoint(b,c,d,!0,n,e,f),r=u=s=0;if(n||!k||m)if(t=this.computeEndSegmentLength(b,c,d,!0),r=this.getLinkDirection(b,c,p,d,!0,n,e,f),m&&(k||d.L(a)||!n&&1===d.x+a.x&&1===d.y+a.y)&&(r-=n?90:30,0>A&&(r-=180)),0>r?r+=360:360<=r&&(r-=360),m&&(t+=Math.abs(A)*(n?1:2)),0===r?s=t:90===r?u=t:180===r?s=-t:270===r?u=-t:(s=t*Math.cos(r*Math.PI/180),u=t*Math.sin(r*Math.PI/ +180)),d.Od()&&m){var z=c.Va(Gb,v.K()),H=v.xb(z.x+1E3*s,z.y+1E3*u);this.getLinkPointFromPoint(b,c,z,H,!0,p);v.v(z);v.v(H)}var t=this.getLinkPoint(e,f,a,!1,n,b,c),C=w=x=0;if(n||!l||m)z=this.computeEndSegmentLength(e,f,a,!1),C=this.getLinkDirection(e,f,t,a,!1,n,b,c),m&&(l||d.L(a)||!n&&1===d.x+a.x&&1===d.y+a.y)&&(C+=n?0:30,0>A&&(C+=180)),0>C?C+=360:360<=C&&(C-=360),m&&(z+=Math.abs(A)*(n?1:2)),0===C?x=z:90===C?w=z:180===C?x=-z:270===C?w=-z:(x=z*Math.cos(C*Math.PI/180),w=z*Math.sin(C*Math.PI/180)),a.Od()&& +m&&(z=f.Va(Gb,v.K()),H=v.xb(z.x+1E3*x,z.y+1E3*w),this.getLinkPointFromPoint(e,f,z,H,!1,t),v.v(z),v.v(H));a=p;if(n||!k||m)a=new y(p.x+s,p.y+u);d=t;if(n||!l||m)d=new y(t.x+x,t.y+w);!q&&!n&&k&&3Math.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.N;null===e||e.Xg()||(e=e.N);if(null===e)e=d.x,h=d.y,k=c.x,l=c.y;else{a=e.oh;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.zn(e,h,k,l, f);null!==a&&f.transform(a);return f};function Jr(a,b){var c=b.ys;null===c&&(c=new Kr,c.port=b,c.Qc=b.V,b.ys=c);return Lr(c,a)} -W.prototype.getLinkPoint=function(a,b,c,d,e,f,h,k){void 0===k&&(k=new y);if(c.jd())return b.Va(c,k),k;if(c.oj()){var l=Jr(this,b);if(null!==l){k.assign(l.bq);if(e&&this.Sx===zr){var m=Jr(this,h);if(null!==m&&l.rn=n.y&&a.y<=n.y+n.height?k.y=a.y:(c.nj(Sb)||c.nj($b))&&a.x>=n.x&&a.x<=n.x+n.width&&(k.x=a.x);v.v(l);v.v(m)}}return k}}c=b.Va(Gb,v.K());l=f=null;this.ra> +W.prototype.getLinkPoint=function(a,b,c,d,e,f,h,k){void 0===k&&(k=new y);if(c.jd())return b.Va(c,k),k;if(c.oj()){var l=Jr(this,b);if(null!==l){k.assign(l.aq);if(e&&this.Sx===zr){var m=Jr(this,h);if(null!==m&&l.rn=n.y&&a.y<=n.y+n.height?k.y=a.y:(c.nj(Sb)||c.nj($b))&&a.x>=n.x&&a.x<=n.x+n.width&&(k.x=a.x);v.v(l);v.v(m)}}return k}}c=b.Va(Gb,v.K());l=f=null;this.ra> (e?6:2)?(l=d?this.m(1):this.m(this.ra-2),e&&(l=Ir(c,l.copy()))):(f=v.K(),l=h.Va(Gb,f),e&&(l=Ir(c,l)),v.v(f));this.getLinkPointFromPoint(a,b,c,l,d,k);v.v(c);return k}; W.prototype.getLinkDirection=function(a,b,c,d,e,f,h,k){a:if(d.jd())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.m(1):this.m(this.ra-2),n=f?Ir(l,n.copy()):c):(m=v.K(),n=k.Va(Gb,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.Od()&&h.li(a)&&(c+=180,360<=c&&(c-=360));a=ir;a=e?this.Ot:this.Hu;a===ir&&(a=e?b.Ot:b.Hu);switch(a){case jr:b=b.xn();c+=b;360<=c&&(c-=360);break;case ir:case po:b=b.xn();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.oj()&&(a=Jr(this,b),null!==a))return a.Yw;a=NaN;a=d?this.Pl:this.hm;null!==b&&isNaN(a)&&(a=d?b.Pl:b.hm);isNaN(a)&&(a=10);return a};W.prototype.computeSpot=function(a){return a?Gr(this,this.hd):Hr(this,this.Td)};function Gr(a,b){if(null===b)return Gb;var c=a.Ab;c.Xc()&&null!==b&&(c=b.Ab);return c===nc?vb:c}function Hr(a,b){if(null===b)return Gb;var c=a.Bb;c.Xc()&&null!==b&&(c=b.Bb);return c===nc?vb:c} -W.prototype.computeOtherPoint=function(a,b){var c=b.Va(Gb),d;d=b.ys;d=null!==d?Lr(d,this):null;null!==d&&(c=d.bq);return c};W.prototype.computeShortLength=function(a){if(a){if(a=this.Pt,isNaN(a)){var b=this.hd;null!==b&&(a=b.Pt)}}else a=this.Iu,isNaN(a)&&(b=this.Td,null!==b&&(a=b.Iu));return isNaN(a)?0:a}; +W.prototype.computeOtherPoint=function(a,b){var c=b.Va(Gb),d;d=b.ys;d=null!==d?Lr(d,this):null;null!==d&&(c=d.aq);return c};W.prototype.computeShortLength=function(a){if(a){if(a=this.Pt,isNaN(a)){var b=this.hd;null!==b&&(a=b.Pt)}}else a=this.Iu,isNaN(a)&&(b=this.Td,null!==b&&(a=b.Iu));return isNaN(a)?0:a}; W.prototype.xk=function(a,b,c,d,e,f){if(!1===this.Qg)return!1;void 0===b&&(b=null);void 0===c&&(c=null);var h=f;void 0===f&&(h=v.Ff(),h.reset());h.multiply(this.transform);if(this.on(a,h))return Tp(this,b,c,e),void 0===f&&v.we(h),!0;if(this.Jg(a,h)){var k=!1;if(!this.En)for(var l=this.xa.n,m=l.length;m--;){var n=l[m];if(n.visible||n===this.ec){var p=n.Y,q=this.Ja;if(!(p.x>q.width||p.y>q.height||0>p.x+p.width||0>p.y+p.height)){p=v.Ff();p.set(h);if(n instanceof D)k=n.xk(a,b,c,d,e,p);else if(this.path=== -n){var k=n,r=a,s=d,q=p;if(!1===k.Qg)k=!1;else if(q.multiply(k.transform),s)b:{var u=r,t=q;if(k.on(u,t))k=!0;else{if(void 0===t&&(t=k.transform,u.tk(k.Y))){k=!0;break b}var q=u.left,r=u.right,s=u.top,u=u.bottom,x=v.K(),w=v.K(),z=v.K(),A=v.Ff();A.set(t);A.qF(k.transform);A.mx();w.x=r;w.y=s;w.transform(A);x.x=q;x.y=s;x.transform(A);t=!1;eq(k,x,w,z)?t=!0:(x.x=r,x.y=u,x.transform(A),eq(k,x,w,z)?t=!0:(w.x=q,w.y=u,w.transform(A),eq(k,x,w,z)?t=!0:(x.x=q,x.y=s,x.transform(A),eq(k,x,w,z)&&(t=!0))));v.we(A); -v.v(x);v.v(w);v.v(z);k=t}}else k=k.on(r,q)}else k=vo(n,a,d,p);k&&(null!==b&&(n=b(n)),n&&(null===c||c(n))&&e.add(n));v.we(p)}}}void 0===f&&v.we(h);return k||null!==this.background||null!==this.jn}void 0===f&&v.we(h);return!1};v.u(W,{mc:"isOrthogonal"},function(){return 2===(this.Sm.value&2)});v.u(W,{Ck:"isAvoiding"},function(){return 4===(this.Sm.value&4)});W.prototype.computeCurve=function(){if(null===this.Fi){var a=this.hd,b=this.mc;this.Fi=null!==a&&a===this.Td&&!b}return this.Fi?jj:this.Ze}; +n){var k=n,r=a,s=d,q=p;if(!1===k.Qg)k=!1;else if(q.multiply(k.transform),s)b:{var u=r,t=q;if(k.on(u,t))k=!0;else{if(void 0===t&&(t=k.transform,u.tk(k.Y))){k=!0;break b}var q=u.left,r=u.right,s=u.top,u=u.bottom,x=v.K(),w=v.K(),A=v.K(),z=v.Ff();z.set(t);z.qF(k.transform);z.mx();w.x=r;w.y=s;w.transform(z);x.x=q;x.y=s;x.transform(z);t=!1;eq(k,x,w,A)?t=!0:(x.x=r,x.y=u,x.transform(z),eq(k,x,w,A)?t=!0:(w.x=q,w.y=u,w.transform(z),eq(k,x,w,A)?t=!0:(x.x=q,x.y=s,x.transform(z),eq(k,x,w,A)&&(t=!0))));v.we(z); +v.v(x);v.v(w);v.v(A);k=t}}else k=k.on(r,q)}else k=vo(n,a,d,p);k&&(null!==b&&(n=b(n)),n&&(null===c||c(n))&&e.add(n));v.we(p)}}}void 0===f&&v.we(h);return k||null!==this.background||null!==this.jn}void 0===f&&v.we(h);return!1};v.u(W,{lc:"isOrthogonal"},function(){return 2===(this.Sm.value&2)});v.u(W,{Ck:"isAvoiding"},function(){return 4===(this.Sm.value&4)});W.prototype.computeCurve=function(){if(null===this.Fi){var a=this.hd,b=this.lc;this.Fi=null!==a&&a===this.Td&&!b}return this.Fi?jj:this.Ze}; W.prototype.computeCorner=function(){if(this.Ze===jj)return 0;var a=this.Sz;if(isNaN(a)||0>a)a=10;return a};W.prototype.findMidLabel=function(){for(var a=this.path,b=this.xa.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;$a(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.Sg(a,b);for(a+= +W.prototype.adjustPoints=function(a,b,c,d){var e=this.st;if(this.lc){if(e===xr)return!1;e===yr&&(e=wr)}switch(e){case xr:var f=this.m(a),h=this.m(c);if(!f.Lc(b)||!h.Lc(d)){var e=f.x,f=f.y,k=h.x-e,l=h.y-f,m=Math.sqrt(k*k+l*l);if(!$a(m,0)){var n=0;$a(k,0)?n=0>l?-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;$a(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.Sg(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.ea(a,h+b*Math.cos(k),p+b*Math.sin(k)));this.Sg(c,d)}}return!0;case yr:f=this.m(a);p=this.m(c);if(!f.Lc(b)||!p.Lc(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.Sg(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.Y.copy(),k=f.Y.copy();if(h.H()&&k.H()){h.Tf(8,8);k.Tf(8,8);h.qi(a);k.qi(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.Ha(a)||h.Ha(c))?l.y=this.computeMidOrthoPosition(a.y,c.y,!0):c.yh.left&&l.x=h.t c.y,!0),m.x=c.x,m.y=l.y):180===d&&c.x=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.Ha(a)||h.Ha(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!==Nr(e,c.x,c.y)){Or(this,e,c.x,c.y,d,!0);d=this.m(2);if(4>this.ra)0===b||180===b?(d.x=a.x,d.y=c.y):(d.x=c.x,d.y=a.y),this.ea(2,d.x,d.y),this.w(3,d.x,d.y);else if(c=this.m(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.ea(2,b,a.y),this.ea(3,b,c.y)):K(d.y,c.y)?(Math.abs(a.y-d.y)<=e.Dp/2&&(this.ea(2,d.x,a.y),this.ea(3,c.x,a.y)),this.w(2,d.x,a.y)):this.ea(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.ea(2,a.x,b),this.ea(3,c.x,b)):K(d.x,c.x)?(Math.abs(a.x-d.x)<=e.Fp/2&&(this.ea(2,a.x,d.y),this.ea(3,a.x,c.y)),this.w(2,a.x,d.y)):this.ea(2,d.x,a.y);a=!0}else a=!1}else a=!1;a||(this.hi(l),this.hi(m))}}; +h.Tf(2*e.Ep,2*e.Cp),Mr(e,a,b,c,d,h),k=Nr(e,c.x,c.y),e.abort||999999!==k||(xn(e),k=e.WF,h.Tf(e.Ep*k,e.Cp*k),Mr(e,a,b,c,d,h),k=Nr(e,c.x,c.y)),e.abort||999999!==k||(xn(e),k=e.jF,h.Tf(e.Ep*k,e.Cp*k),Mr(e,a,b,c,d,h),k=Nr(e,c.x,c.y)),!e.abort&&999999===k&&e.pG&&(xn(e),Mr(e,a,b,c,d,e.kb),k=Nr(e,c.x,c.y)),!e.abort&&999999>k&&0!==Nr(e,c.x,c.y)){Or(this,e,c.x,c.y,d,!0);d=this.m(2);if(4>this.ra)0===b||180===b?(d.x=a.x,d.y=c.y):(d.x=c.x,d.y=a.y),this.ea(2,d.x,d.y),this.w(3,d.x,d.y);else if(c=this.m(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.ea(2,b,a.y),this.ea(3,b,c.y)):K(d.y,c.y)?(Math.abs(a.y-d.y)<=e.Cp/2&&(this.ea(2,d.x,a.y),this.ea(3,c.x,a.y)),this.w(2,d.x,a.y)):this.ea(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.ea(2,a.x,b),this.ea(3,c.x,b)):K(d.x,c.x)?(Math.abs(a.x-d.x)<=e.Ep/2&&(this.ea(2,a.x,d.y),this.ea(3,a.x,c.y)),this.w(2,a.x,d.y)):this.ea(2,d.x,a.y);a=!0}else a=!1}else a=!1;a||(this.hi(l),this.hi(m))}}; W.prototype.computeMidOrthoPosition=function(a,b){if(this.hasCurviness()){var c=this.computeCurviness();return(a+b)/2+c}return(a+b)/2};function Hh(a){if(null===a.g||!a.Ck)return!1;var b=a.points.n,c=b.length;if(4>c)return!1;a=un(a.g,!0,a.La,null);for(var d=1;da)return new ye(Ce);var b=!1,c=this.g;null!==c&&Dr(this)&&c.Zk.contains(this)&&null!==this.gw&&(b=!0);var d=c=0,e=this.m(0).copy(),f=e.copy(),c=this.dd.n,h=this.computeCurve();if(h===jj&&3<=a&&!$a(this.wq,0))if(3===a)var k=this.m(1),c=Math.min(e.x,k.x),d=Math.min(e.y,k.y),k=this.m(2),c=Math.min(c,k.x),d=Math.min(d,k.y);else{if(this.mc)for(k=0;k=a&&(k=a-1),c=this.m(k), -f.x=Math.min(c.x,f.x),f.y=Math.min(c.y,f.y);c=f.x;d=f.y}else{for(k=0;kx?r>q?(u.x=w-A,u.y=q-A,t.x=w+s,t.y=q+s):(u.x=w-A,u.y=q+A,t.x=w+s,t.y=q-s):r>q?(u.x=w+A,u.y=q-A,t.x=w-s,t.y=q+s):(u.x=w+A,u.y=q+A,t.x=w-s,t.y=q-s));$a(x,w)&&$a(q,r)&&(q>p?(z>w?(u.x= -w-A,u.y=q-A,t.x=w+s):(u.x=w+A,u.y=q-A,t.x=w-s),t.y=q+s):(z>w?(u.x=w-A,u.y=q+A,t.x=w+s):(u.x=w+A,u.y=q+A,t.x=w-s),t.y=q-s));if($a(x,w)&&$a(w,z)||$a(p,q)&&$a(q,r))x=.5*(x+z),p=.5*(p+r),u.x=x,u.y=p,t.x=x,t.y=p;1===k?(e.x=.5*(b.x+m.x),e.y=.5*(b.y+m.y)):2===k&&$a(b.x,this.m(0).x)&&$a(b.y,this.m(0).y)&&(e.x=.5*(b.x+m.x),e.y=.5*(b.y+m.y));O(l,e.x-c,e.y-d,h.x-c,h.y-d,m.x-c,m.y-d);f.set(h);e.set(a);b=m}}k=b.x;b=b.y;f=this.m(this.ra-1);0!==this.computeShortLength(!1)&&(f=Pr(this,f.copy(),!1,$c));k=.5*(k+f.x); +W.prototype.makeGeometry=function(){var a=this.ra;if(2>a)return new ye(Ce);var b=!1,c=this.g;null!==c&&Dr(this)&&c.Zk.contains(this)&&null!==this.gw&&(b=!0);var d=c=0,e=this.m(0).copy(),f=e.copy(),c=this.dd.n,h=this.computeCurve();if(h===jj&&3<=a&&!$a(this.wq,0))if(3===a)var k=this.m(1),c=Math.min(e.x,k.x),d=Math.min(e.y,k.y),k=this.m(2),c=Math.min(c,k.x),d=Math.min(d,k.y);else{if(this.lc)for(k=0;k=a&&(k=a-1),c=this.m(k), +f.x=Math.min(c.x,f.x),f.y=Math.min(c.y,f.y);c=f.x;d=f.y}else{for(k=0;kx?r>q?(u.x=w-z,u.y=q-z,t.x=w+s,t.y=q+s):(u.x=w-z,u.y=q+z,t.x=w+s,t.y=q-s):r>q?(u.x=w+z,u.y=q-z,t.x=w-s,t.y=q+s):(u.x=w+z,u.y=q+z,t.x=w-s,t.y=q-s));$a(x,w)&&$a(q,r)&&(q>p?(A>w?(u.x= +w-z,u.y=q-z,t.x=w+s):(u.x=w+z,u.y=q-z,t.x=w-s),t.y=q+s):(A>w?(u.x=w-z,u.y=q+z,t.x=w+s):(u.x=w+z,u.y=q+z,t.x=w-s),t.y=q-s));if($a(x,w)&&$a(w,A)||$a(p,q)&&$a(q,r))x=.5*(x+A),p=.5*(p+r),u.x=x,u.y=p,t.x=x,t.y=p;1===k?(e.x=.5*(b.x+m.x),e.y=.5*(b.y+m.y)):2===k&&$a(b.x,this.m(0).x)&&$a(b.y,this.m(0).y)&&(e.x=.5*(b.x+m.x),e.y=.5*(b.y+m.y));O(l,e.x-c,e.y-d,h.x-c,h.y-d,m.x-c,m.y-d);f.set(h);e.set(a);b=m}}k=b.x;b=b.y;f=this.m(this.ra-1);0!==this.computeShortLength(!1)&&(f=Pr(this,f.copy(),!1,$c));k=.5*(k+f.x); b=.5*(b+f.y);O(l,a.x-c,a.y-d,k-c,b-d,f.x-c,f.y-d)}else for(k=3;k=a&&(k=a-1),f=this.m(k-1),e=this.m(k),k===a-1&&0!==this.computeShortLength(!1)&&(e=Pr(this,e.copy(),!1,$c)),O(l,b.x-c,b.y-d,f.x-c,f.y-d,e.x-c,e.y-d);else{f=v.K();f.assign(this.m(0));for(k=1;k=a-1){f!==u&&(0!==this.computeShortLength(!1)&&(u=Pr(this,u.copy(),!1,$c)),Sr(this,l,-c,-d,f,u,b));break}k=Qr(this,u,k+1,kn.x?u.x-s:u.x+s,A=t.y>u.y?u.y+w:u.y-w,Sr(this,e,h,m,n,new y(q,z),p),Pe(e,u.x+h,u.y+m,r+h,A+m),x.l(r,A))):K(n.x,u.x)&&K(u.y,t.y)?(s=this.computeCorner(),w=Math.min(s,Math.abs(u.y-n.y)/2),w=s=Math.min(w,Math.abs(t.x-u.x)/2),K(s,0)?(Sr(this,e,h,m,n,u,p),x.assign(u)):(q=u.x,A=z=u.y,z=u.y>n.y?u.y-w:u.y+w,r=t.x>u.x?u.x+s:u.x-s,Sr(this,e, -h,m,n,new y(q,z),p),Pe(e,u.x+h,u.y+m,r+h,A+m),x.l(r,A))):(Sr(this,e,h,m,n,u,p),x.assign(u))}v.v(f)}c=l.o;v.q(l)}else l=this.m(1).copy(),l.x-=c,l.y-=d,0!==this.computeShortLength(!0)&&(e=Pr(this,e,!0,f)),0!==this.computeShortLength(!1)&&(l=Pr(this,l,!1,f)),c=new ye(Ce),c.ja=e.x,c.ha=e.y,c.C=l.x,c.D=l.y;return c}; +t.x)?(s=this.computeCorner(),s=Math.min(s,Math.abs(u.x-n.x)/2),s=w=Math.min(s,Math.abs(t.y-u.y)/2),K(s,0)?(Sr(this,e,h,m,n,u,p),x.assign(u)):(q=u.x,A=u.y,r=q,z=A,q=u.x>n.x?u.x-s:u.x+s,z=t.y>u.y?u.y+w:u.y-w,Sr(this,e,h,m,n,new y(q,A),p),Pe(e,u.x+h,u.y+m,r+h,z+m),x.l(r,z))):K(n.x,u.x)&&K(u.y,t.y)?(s=this.computeCorner(),w=Math.min(s,Math.abs(u.y-n.y)/2),w=s=Math.min(w,Math.abs(t.x-u.x)/2),K(s,0)?(Sr(this,e,h,m,n,u,p),x.assign(u)):(q=u.x,z=A=u.y,A=u.y>n.y?u.y-w:u.y+w,r=t.x>u.x?u.x+s:u.x-s,Sr(this,e, +h,m,n,new y(q,A),p),Pe(e,u.x+h,u.y+m,r+h,z+m),x.l(r,z))):(Sr(this,e,h,m,n,u,p),x.assign(u))}v.v(f)}c=l.o;v.q(l)}else l=this.m(1).copy(),l.x-=c,l.y-=d,0!==this.computeShortLength(!0)&&(e=Pr(this,e,!0,f)),0!==this.computeShortLength(!1)&&(l=Pr(this,l,!1,f)),c=new ye(Ce),c.ja=e.x,c.ha=e.y,c.C=l.x,c.D=l.y;return c}; function Rr(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 $a(a,0)?b:$a(b,0)?a:Math.sqrt(a*a+b*b)} function Pr(a,b,c,d){var e=a.ra;if(2>e)return b;if(c){var f=a.m(1);c=f.x-d.x;d=f.y-d.y;f=Rr(b.x,b.y,c,d);if(0===f)return b;e=2===e?.5*f:f;a=a.computeShortLength(!0);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.m(e-2);c=f.x-d.x;d=f.y-d.y;f=Rr(b.x,b.y,c,d);if(0===f)return b;e=2===e?.5*f:f;a=a.computeShortLength(!1);a>e&&(a=e);c=a*(b.x-c)/f;a=a*(b.y-d)/f;b.x-=c;b.y-=a}return b} function Qr(a,b,c,d){for(var e=a.ra,f=b;$a(b.x,f.x)&&$a(b.y,f.y);){if(c>=e)return e-1;f=a.m(c++)}if(!$a(b.x,f.x)&&!$a(b.y,f.y))return c-1;for(var h=f;$a(b.x,f.x)&&$a(f.x,h.x)&&(!d||(b.y>=f.y?f.y>=h.y:f.y<=h.y))||$a(b.y,f.y)&&$a(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.m(c++)}return c-2} function Sr(a,b,c,d,e,f,h){if(!h&&Dr(a)){h=[];var k=0;a.isVisible()&&(k=Tr(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.Ze===bj?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.Ze===bj?N(b,n,p,!1,!1):O(b,q,l,q,p,n,p)}}b.lineTo(f.x+c,f.y+d)} -function Tr(a,b,c,d){var e=a.g;if(null===e||b.L(c))return 0;for(e=e.Ax;e.next();){var f=e.value;if(null!==f&&f.visible)for(var f=f.zb.n,h=f.length,k=0;kh.x&&n.x>m.x||m.xh.y&&n.y>m.y||m.yu&&Math.min(h,x)q&&!K(h,x)){n.x=u;n.y=q;n=!0;break a}}else if(!K(q,s)&&K(h,x)&&Math.min(q,s)h&&Math.min(u,t)p&&!K(u,t)){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,{Kt:"firstPickIndex"},function(){var a;2>=this.ra?a=0:((a=this.mc)||(a=this.computeSpot(!0)!==vb),a=a?1:0);return a});v.u(W,{yx:"lastPickIndex"},function(){var a=this.ra;if(0===a)a=0;else if(2>=a)a-=1;else{var b;(b=this.mc)||(b=this.computeSpot(!1)!==vb);a=b?a-2:a-1}return a});function Dr(a){a=a.Ze;return a===aj||a===bj} +s)>h&&Math.min(u,t)p&&!K(u,t)){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,{Kt:"firstPickIndex"},function(){var a;2>=this.ra?a=0:((a=this.lc)||(a=this.computeSpot(!0)!==vb),a=a?1:0);return a});v.u(W,{yx:"lastPickIndex"},function(){var a=this.ra;if(0===a)a=0;else if(2>=a)a-=1;else{var b;(b=this.lc)||(b=this.computeSpot(!1)!==vb);a=b?a-2:a-1}return a});function Dr(a){a=a.Ze;return a===aj||a===bj} function Fr(a,b){if(b||Dr(a)){var c=a.g;null===c||c.Zk.contains(a)||null===a.gw||c.Zk.add(a,a.gw)}}function dj(a,b){var c=a.layer;if(null!==c&&c.visible&&!c.Mc){var d=c.g;if(null!==d)for(var e=!1,d=d.Ax;d.next();){var f=d.value;if(f.visible)if(f===c)for(var e=!0,h=!1,f=f.zb.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.ug=Math.floor((a.x-this.Be)/this.Be)*this.Be;this.vg=Math.floor((b-this.Ce)/this.Ce)*this.Ce;this.Yr=Math.ceil((c+2*this.Be)/this.Be)*this.Be;this.Zr=Math.ceil((d+2*this.Ce)/this.Ce)*this.Ce;a=1+(Math.ceil((this.Yr-this.ug)/this.Be)|0);b=1+(Math.ceil((this.Zr-this.vg)/this.Ce)|0);if(null===this.zd||this.xpthis.Yr||a+cthis.Zr||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.xp)|0;for(c=Math.min(b+e-1,this.yp)|0;a<=d;a++)for(e=b;e<=c;e++)if(0===this.zd[a][e])return!1;return!0}; +function Br(a){var b=a.lg;if(null!==b){var c=a.Bg;if(null!==c){var d=a.Nh;a=a.gi;for(var e=null,f=null,h=b.qc.n,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.ug=Math.floor((a.x-this.Be)/this.Be)*this.Be;this.vg=Math.floor((b-this.Ce)/this.Ce)*this.Ce;this.Yr=Math.ceil((c+2*this.Be)/this.Be)*this.Be;this.Zr=Math.ceil((d+2*this.Ce)/this.Ce)*this.Ce;a=1+(Math.ceil((this.Yr-this.ug)/this.Be)|0);b=1+(Math.ceil((this.Zr-this.vg)/this.Ce)|0);if(null===this.zd||this.wpthis.Yr||a+cthis.Zr||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.wp)|0;for(c=Math.min(b+e-1,this.xp)|0;a<=d;a++)for(e=b;e<=c;e++)if(0===this.zd[a][e])return!1;return!0}; function Xr(a,b,c,d,e,f,h,k,l){if(!(bh||cl)){var m,n;m=b|0;n=c|0;var p=a.zd[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.zd[m][n]);)a.zd[m][n]=p,p+=1,e?n+=d:m+=d;m=e?n:m;if(e)if(0m;c+=d)Xr(a,b,c,1,!e,f,h,k,l),Xr(a,b,c,-1,!e,f,h,k,l);else if(0m;b+=d)Xr(a,b,c,1,!e,f,h,k,l),Xr(a,b,c,-1,!e,f,h, k,l)}}function Yr(a,b,c,d,e,f,h,k,l){b|=0;c|=0;var m=0,n=1;for(a.zd[b][c]=n;0===m&&b>f&&bk&&cf&&bk&&c=Math.abs(h-b)&&1>=Math.abs(k-d))a.abort=!0;else{var l=f.x,m=f.y,n=f.x+f.width,p=f.y+f.height,l=l-a.ug,l=l/a.Be,m=m-a.vg,m=m/a.Ce,n=n-a.ug,n=n/a.Be,p=p-a.vg,p=p/a.Ce;f=Math.max(0,Math.min(a.xp,l|0));n=Math.min(a.xp,Math.max(0,n|0));m=Math.max(0,Math.min(a.yp,m|0));p=Math.min(a.yp,Math.max(0,p|0));h|=0;k|=0;b|=0;d|=0;l=90===c|| -270===c;Yr(a,h,k,0===c||90===c?1:-1,l,f,n,m,p);Yr(a,h,k,1,!l,f,n,m,p);Yr(a,h,k,-1,!l,f,n,m,p);Zr(a,b,d,0===e||90===e?1:-1,90===e||270===e,f,n,m,p);Zr(a,b,d,1,!(90===e||270===e),f,n,m,p);Zr(a,b,d,-1,!(90===e||270===e),f,n,m,p);a.abort||(Xr(a,h,k,1,!1,f,n,m,p),Xr(a,h,k,-1,!1,f,n,m,p),Xr(a,h,k,1,!0,f,n,m,p),Xr(a,h,k,-1,!0,f,n,m,p))}}}function Kr(){v.pc(this);this.port=this.Qc=null;this.ag=[];this.iq=!1}v.ae(Kr,{Qc:!0,port:!0,ag:!0,iq:!0}); +function Mr(a,b,c,d,e,f){if(null!==a.zd){a.abort=!1;var h=b.x,k=b.y;if(Wr(a,h,k)&&(h-=a.ug,h/=a.Be,k-=a.vg,k/=a.Ce,b=d.x,d=d.y,Wr(a,b,d)))if(b-=a.ug,b/=a.Be,d-=a.vg,d/=a.Ce,1>=Math.abs(h-b)&&1>=Math.abs(k-d))a.abort=!0;else{var l=f.x,m=f.y,n=f.x+f.width,p=f.y+f.height,l=l-a.ug,l=l/a.Be,m=m-a.vg,m=m/a.Ce,n=n-a.ug,n=n/a.Be,p=p-a.vg,p=p/a.Ce;f=Math.max(0,Math.min(a.wp,l|0));n=Math.min(a.wp,Math.max(0,n|0));m=Math.max(0,Math.min(a.xp,m|0));p=Math.min(a.xp,Math.max(0,p|0));h|=0;k|=0;b|=0;d|=0;l=90===c|| +270===c;Yr(a,h,k,0===c||90===c?1:-1,l,f,n,m,p);Yr(a,h,k,1,!l,f,n,m,p);Yr(a,h,k,-1,!l,f,n,m,p);Zr(a,b,d,0===e||90===e?1:-1,90===e||270===e,f,n,m,p);Zr(a,b,d,1,!(90===e||270===e),f,n,m,p);Zr(a,b,d,-1,!(90===e||270===e),f,n,m,p);a.abort||(Xr(a,h,k,1,!1,f,n,m,p),Xr(a,h,k,-1,!1,f,n,m,p),Xr(a,h,k,1,!0,f,n,m,p),Xr(a,h,k,-1,!0,f,n,m,p))}}}function Kr(){v.oc(this);this.port=this.Qc=null;this.ag=[];this.hq=!1}v.ae(Kr,{Qc:!0,port:!0,ag:!0,hq:!0}); Kr.prototype.toString=function(){for(var a=this.ag,b=this.Qc.toString()+" "+a.length.toString()+":",c=0;c=c?180:0}a=180*Math.atan2(a.height,a.width)/Math.PI;switch(b){case v.Tc|v.md:return c>a&&c<=180+a?180:270;case v.md|v.bd:return c>180-a&&c<=360-a?270:0;case v.bd|v.ad:return c>a&&c<=180+a?90:0;case v.ad|v.Tc:return c>180-a&&c<=360-a?180:90;case v.Tc|v.md|v.bd:return 90180+a&&c<=360- -a?270:0;case v.md|v.bd|v.ad:return 180a&&180>=c?90:0;case v.bd|v.ad|v.Tc:return c>a&&c<=180-a?90:c>180-a&&270>=c?180:0;case v.ad|v.Tc|v.md:return c>180-a&&c<=180+a?180:c>180+a?270:90}d&&b!==(v.Tc|v.md|v.bd|v.ad)&&(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}Kr.prototype.Xp=function(){this.ag.length=0}; -function Lr(a,b){var c=a.ag;if(0===c.length){a:if(!a.iq){c=a.iq;a.iq=!0;var d,e=null,f=a.Qc,f=f instanceof V?f:null;if(null===f||f.ye)d=a.Qc.xE(a.port.Qd);else{if(!f.Y.H()){a.iq=c;break a}e=f;d=e.wE()}var h=a.ag.length=0,k=a.port.Va(xb,v.K()),l=a.port.Va(Mb,v.K()),f=v.Ug(k.x,k.y,0,0);f.qi(l);v.v(k);v.v(l);k=v.xb(f.x+f.width/2,f.y+f.height/2);for(d=d.i;d.next();)if(l=d.value,l.isVisible()){var m=l.hd===a.port||l.W.li(e),n=l.computeSpot(m);if(n.oj()&&(m=m?l.Td:l.hd,null!==m)){var p=m.V;if(null!==p){var m= -l.computeOtherPoint(p,m),p=k.Ac(m),n=$r(f,n,p,l.mc),q=0;0===n?(q=v.bd,180Math.abs(C)?(z=Math.abs(C)/ -q,q=Math.abs(C)):z=1;break;case v.Tc:r>Math.abs(H)?(z=Math.abs(H)/r,r=Math.abs(H)):z=1;break;case v.md:m>Math.abs(C)?(z=Math.abs(C)/m,m=Math.abs(C)):z=1;break;default:case v.bd:p>Math.abs(H)?(z=Math.abs(H)/p,p=Math.abs(H)):z=1}w=0}var R=u.bq;if(e===kr){t=u.link.computeThickness();t*=z;R.set(A);switch(x){case v.ad:R.x=A.x+C/2+q/2-w-t/2;break;case v.Tc:R.y=A.y+H/2+r/2-w-t/2;break;case v.md:R.x=A.x+C/2-m/2+w+t/2;break;default:case v.bd:R.y=A.y+H/2-p/2+w+t/2}w+=t}else t=.5,e===hr&&(t=(u.Vp+1)/(u.rn+1)), -R.x=A.x+C*t,R.y=A.y+H*t}v.v(k);v.v(d);v.v(l);v.v(n);A=a.ag;for(C=0;Cb.ze?1:a.angleb.angle?1:0}; -Kr.prototype.computeEndSegmentLength=function(a){var b=a.link,c=b.computeEndSegmentLength(this.Qc,this.port,vb,b.hd===this.port),d=a.Vp;if(0>d)return c;var e=a.rn;if(1>=e||!b.mc)return c;var b=a.Gx,f=a.bq;if(a.ze===v.Tc||a.ze===v.ad)d=e-1-d;return((a=a.ze===v.Tc||a.ze===v.bd)?b.ya&&180>=c?90:0;case v.bd|v.ad|v.Tc:return c>a&&c<=180-a?90:c>180-a&&270>=c?180:0;case v.ad|v.Tc|v.md:return c>180-a&&c<=180+a?180:c>180+a?270:90}d&&b!==(v.Tc|v.md|v.bd|v.ad)&&(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}Kr.prototype.Wp=function(){this.ag.length=0}; +function Lr(a,b){var c=a.ag;if(0===c.length){a:if(!a.hq){c=a.hq;a.hq=!0;var d,e=null,f=a.Qc,f=f instanceof V?f:null;if(null===f||f.ye)d=a.Qc.xE(a.port.Qd);else{if(!f.Y.H()){a.hq=c;break a}e=f;d=e.wE()}var h=a.ag.length=0,k=a.port.Va(xb,v.K()),l=a.port.Va(Mb,v.K()),f=v.Ug(k.x,k.y,0,0);f.qi(l);v.v(k);v.v(l);k=v.xb(f.x+f.width/2,f.y+f.height/2);for(d=d.i;d.next();)if(l=d.value,l.isVisible()){var m=l.hd===a.port||l.W.li(e),n=l.computeSpot(m);if(n.oj()&&(m=m?l.Td:l.hd,null!==m)){var p=m.V;if(null!==p){var m= +l.computeOtherPoint(p,m),p=k.Ac(m),n=$r(f,n,p,l.lc),q=0;0===n?(q=v.bd,180Math.abs(C)?(A=Math.abs(C)/ +q,q=Math.abs(C)):A=1;break;case v.Tc:r>Math.abs(H)?(A=Math.abs(H)/r,r=Math.abs(H)):A=1;break;case v.md:m>Math.abs(C)?(A=Math.abs(C)/m,m=Math.abs(C)):A=1;break;default:case v.bd:p>Math.abs(H)?(A=Math.abs(H)/p,p=Math.abs(H)):A=1}w=0}var R=u.aq;if(e===kr){t=u.link.computeThickness();t*=A;R.set(z);switch(x){case v.ad:R.x=z.x+C/2+q/2-w-t/2;break;case v.Tc:R.y=z.y+H/2+r/2-w-t/2;break;case v.md:R.x=z.x+C/2-m/2+w+t/2;break;default:case v.bd:R.y=z.y+H/2-p/2+w+t/2}w+=t}else t=.5,e===hr&&(t=(u.Up+1)/(u.rn+1)), +R.x=z.x+C*t,R.y=z.y+H*t}v.v(k);v.v(d);v.v(l);v.v(n);z=a.ag;for(C=0;Cb.ze?1:a.angleb.angle?1:0}; +Kr.prototype.computeEndSegmentLength=function(a){var b=a.link,c=b.computeEndSegmentLength(this.Qc,this.port,vb,b.hd===this.port),d=a.Up;if(0>d)return c;var e=a.rn;if(1>=e||!b.lc)return c;var b=a.Gx,f=a.aq;if(a.ze===v.Tc||a.ze===v.ad)d=e-1-d;return((a=a.ze===v.Tc||a.ze===v.bd)?b.ye&&(e=k.right);k.bottom>f&&(f=k.bottom)}}isFinite(c)&&isFinite(d)?a.l(c,d,e-c,f-d):(b=b.location,c=this.padding,a.l(b.x+c.left,b.y+c.top,0,0));return a}; v.defineProperty(V,{Mn:null},function(){return 0!==(this.za&32768)},function(a){0!==(this.za&32768)!==a&&(this.za^=32768)});v.defineProperty(xj,{padding:"padding"},function(){return this.jf},function(a){"number"===typeof a?a=new mb(a):v.F(a,mb,xj,"padding");var b=this.jf;b.L(a)||(this.jf=a=a.S(),this.h("padding",b,a))}); -function tg(){0=c-1?(h=0,e=d,f+=k+20,k=0):h++}null!==a&&a.Hd("Layout")}this.Af=!0};tg.prototype.Mn=function(a){return!a.location.H()||a instanceof V&&a.Mn?!0:!1}; -function ds(a,b,c,d,e,f,h,k){for(c=c.i;c.next();){var l=c.value;d&&!l.Zp||null!==e&&!e(l)||!l.canLayout()||(f&&l instanceof T?l.of||(l instanceof V?null===l.Rb?ds(a,b,l.Pc,!1,e,f,h,k):(es(l),b.add(l)):(es(l),b.add(l))):h&&l instanceof W?b.add(l):!k||!l.ee()||l instanceof T||(es(l),b.add(l)))}}function es(a){var b=a.Y;(0===b.width||0===b.height||isNaN(b.width)||isNaN(b.height))&&a.af()} +function ds(a,b,c,d,e,f,h,k){for(c=c.i;c.next();){var l=c.value;d&&!l.Yp||null!==e&&!e(l)||!l.canLayout()||(f&&l instanceof T?l.of||(l instanceof V?null===l.Rb?ds(a,b,l.Pc,!1,e,f,h,k):(es(l),b.add(l)):(es(l),b.add(l))):h&&l instanceof W?b.add(l):!k||!l.ee()||l instanceof T||(es(l),b.add(l)))}}function es(a){var b=a.Y;(0===b.width||0===b.height||isNaN(b.width)||isNaN(b.height))&&a.af()} tg.prototype.collectParts=tg.prototype.lH=function(a){var b=new J(S);a instanceof E?(ds(this,b,a.dg,!0,null,!0,!0,!0),ds(this,b,a.links,!0,null,!0,!0,!0),ds(this,b,a.Gk,!0,null,!0,!0,!0)):a instanceof V?ds(this,b,a.Pc,!1,null,!0,!0,!0):ds(this,b,a.i,!1,null,!0,!0,!0);return b};v.defineProperty(tg,{qe:"arrangementOrigin"},function(){return this.Kq},function(a){v.F(a,y,tg,"arrangementOrigin");this.Kq.L(a)||(this.Kq.assign(a),this.J())}); -tg.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.Va(xb),(isNaN(c.x)||isNaN(c.y))&&c.set(a),c.x+=b.padding.left,c.y+=b.padding.top);return c}return a};function ug(){v.pc(this);this.ke=null;this.clear()}v.ga("LayoutNetwork",ug); +tg.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.Va(xb),(isNaN(c.x)||isNaN(c.y))&&c.set(a),c.x+=b.padding.left,c.y+=b.padding.top);return c}return a};function ug(){v.oc(this);this.ke=null;this.clear()}v.ga("LayoutNetwork",ug); ug.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(fs);this.edges=new J(gs);this.HA=new la(T,fs);this.tA=new la(W,gs)}; ug.prototype.toString=function(a){void 0===a&&(a=0);var b="LayoutNetwork"+(null!==this.Rb?"("+this.Rb.toString()+")":"");if(0>=a)return b;b+=" vertexes: "+this.vertexes.count+" edges: "+this.edges.count;if(1d?1:0):1:null!==d?-1:0}; +fs.prototype.deleteSourceEdge=fs.prototype.pE=function(a){null!==a&&this.df.remove(a)};fs.prototype.addDestinationEdge=fs.prototype.UD=function(a){null!==a&&(this.$e.contains(a)||this.$e.add(a))};fs.prototype.deleteDestinationEdge=fs.prototype.oE=function(a){null!==a&&this.$e.remove(a)};v.u(fs,{EJ:"sourceVertexes"},function(){for(var a=new J(fs),b=this.nc;b.next();)a.add(b.value.fromVertex);return a.i}); +v.u(fs,{FH:"destinationVertexes"},function(){for(var a=new J(fs),b=this.kc;b.next();)a.add(b.value.toVertex);return a.i});v.u(fs,{vertexes:"vertexes"},function(){for(var a=new J(fs),b=this.nc;b.next();)a.add(b.value.fromVertex);for(b=this.kc;b.next();)a.add(b.value.toVertex);return a.i});v.u(fs,{nc:"sourceEdges"},function(){return this.df.i});v.u(fs,{kc:"destinationEdges"},function(){return this.$e.i}); +v.u(fs,{edges:"edges"},function(){for(var a=new I(gs),b=this.nc;b.next();)a.add(b.value);for(b=this.kc;b.next();)a.add(b.value);return a.i});v.u(fs,{KH:"edgesCount"},function(){return this.df.count+this.$e.count});var ls;fs.standardComparer=ls=function(a,b){var c=a.Bd,d=b.Bd;return c?d?(c=c.text,d=d.text,cd?1:0):1:null!==d?-1:0}; fs.smartComparer=function(a,b){if(null!==a){if(null!==b){var c=a.Bd,d=b.Bd;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.Tb("Layout");d=[];switch(this.alignment){case us:var k=a,l=c,m=Math.max(this.Ep.width,1);if(!isFinite(m))for(var n=m=0;nf-1||0h)d.push(new B(0,x,h+k,z)),w=0,t=u,x+=z,z=0;z=Math.max(z,H);H=0;switch(s){case ts:H=-q.width;break;default:H=0}p.moveTo(t+H,x);switch(s){case ts:t-=A;break; -default:t+=A}w++}d.push(new B(0,x,h+k,z));break;case ms:k=f;l=a;m=c;n=Math.max(this.Ep.width,1);p=x=A=0;q=v.K();for(f=0;f=A&&(h-=A);for(var A=H=0,C=Math.max(this.Ep.height,1),ba=p=0,U=!0,M=v.K(),f=0;fk-1||0h){d.push(new B(0,U?w-p:w,h+l,ba+p+m));for(R=0;RA&&(e.width+=e.x-A,e.x=A)}for(k=f=h=e=0;k=f&&0>=h&&(f=1);a=this.spacing.width;isFinite(a)||(a=0);c=this.spacing.height;isFinite(c)||(c=0);null!==b&&b.Tb("Layout");d=[];switch(this.alignment){case us:var k=a,l=c,m=Math.max(this.Dp.width,1);if(!isFinite(m))for(var n=m=0;nf-1||0h)d.push(new B(0,x,h+k,A)),w=0,t=u,x+=A,A=0;A=Math.max(A,H);H=0;switch(s){case ts:H=-q.width;break;default:H=0}p.moveTo(t+H,x);switch(s){case ts:t-=z;break; +default:t+=z}w++}d.push(new B(0,x,h+k,A));break;case ms:k=f;l=a;m=c;n=Math.max(this.Dp.width,1);p=x=z=0;q=v.K();for(f=0;f=z&&(h-=z);for(var z=H=0,C=Math.max(this.Dp.height,1),ba=p=0,U=!0,M=v.K(),f=0;fk-1||0h){d.push(new B(0,U?w-p:w,h+l,ba+p+m));for(R=0;Rz&&(e.width+=e.x-z,e.x=z)}for(k=f=h=e=0;kd?1:0}; Gn.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.la=0,a.sa=0);else{var b=new I(Ns);b.Kc(a.i);a=new I(Ns);var c=new I(Ns),d;d=this.sort(b);var e=this.My,f=this.rC,h=this.Wd,k=this.Ao,l=this.Ny,m=this.nr,b=this.$k,n=this.HD,p=this.Dg,q=this.ev,e=this.Pf,f=this.Dx,h=this.eJ;if(!isFinite(h)|| +vs.prototype.doLayout=function(a){null===a&&v.k("Layout.doLayout(collection) argument must not be null but a Diagram, a Group, or an Iterable of Parts");null===this.network&&(this.network=this.makeNetwork(a));a=this.network.vertexes;if(1>=a.count)1===a.count&&(a=a.first(),a.la=0,a.sa=0);else{var b=new I(Ns);b.Kc(a.i);a=new I(Ns);var c=new I(Ns),d;d=this.sort(b);var e=this.My,f=this.rC,h=this.Wd,k=this.zo,l=this.Ny,m=this.nr,b=this.$k,n=this.HD,p=this.Dg,q=this.ev,e=this.Pf,f=this.Dx,h=this.eJ;if(!isFinite(h)|| 0>=h)h=NaN;k=this.eH;if(!isFinite(k)||0>=k)k=1;l=this.Ae;isFinite(l)||(l=0);m=this.sf;if(!isFinite(m)||360m)m=360;b=this.spacing;isFinite(b)||(b=NaN);e===Ks&&f===Ls?e=ws:e===Ks&&f!==Ls&&(f=Ls,e=this.Pf);if((this.direction===Fs||this.direction===Gs)&&this.sorting!==zs){for(var r=0;!(r>=d.length);r+=2){a.add(d.fa(r));if(r+1>=d.length)break;c.add(d.fa(r+1))}this.direction===Fs?(this.Pf===Ks&&a.reverse(),d=new I(Ns),d.Kc(a),d.Kc(c)):(this.Pf===Ks&&c.reverse(),d=new I(Ns),d.Kc(c),d.Kc(a))}for(var s= d.length,u=n=0,r=0;rm&&(0===r||r===d.length-1)&&(t/=2);n+=t;u++}if(isNaN(h)||e===Ks){isNaN(b)&&(b=6);if(e!==ws&&e!==Ks){t=-Infinity;for(r=0;rh?(h=r,p=h*k):q=u/(360<=m?s:s-1)}this.My=e;this.rC=f;this.Wd=h;this.Ao=k;this.Ny=l;this.nr=m;this.$k=b;this.HD=n;this.Dg=p;this.ev=q;b=d;d=this.My;e=this.Wd;f=this.Ny;k=this.nr;l=this.$k;m=this.Dg;n=this.ev;if(this.direction!==Fs&&this.direction!==Gs||d!==Ks)if(this.direction===Fs||this.direction===Gs){h=0;switch(d){case Js:h=180*Rs(this,e,m,f,n)/Math.PI;break;case ws:n=b=0;h=a.first();null!==h&&(b=Os(h,Math.PI/2));h=c.first();null!==h&&(n=Os(h,Math.PI/2));h=180*Rs(this,e,m,f,l+(b+ +m*Math.PI/180);r>h?(h=r,p=h*k):q=u/(360<=m?s:s-1)}this.My=e;this.rC=f;this.Wd=h;this.zo=k;this.Ny=l;this.nr=m;this.$k=b;this.HD=n;this.Dg=p;this.ev=q;b=d;d=this.My;e=this.Wd;f=this.Ny;k=this.nr;l=this.$k;m=this.Dg;n=this.ev;if(this.direction!==Fs&&this.direction!==Gs||d!==Ks)if(this.direction===Fs||this.direction===Gs){h=0;switch(d){case Js:h=180*Rs(this,e,m,f,n)/Math.PI;break;case ws:n=b=0;h=a.first();null!==h&&(b=Os(h,Math.PI/2));h=c.first();null!==h&&(n=Os(h,Math.PI/2));h=180*Rs(this,e,m,f,l+(b+ n)/2)/Math.PI;break;case Is:h=k/b.length}if(this.direction===Fs){switch(d){case Js:Ss(this,a,f,Hs);break;case ws:Ts(this,a,f,Hs);break;case Is:Us(this,a,k/2,f,Hs)}switch(d){case Js:Ss(this,c,f+h,ys);break;case ws:Ts(this,c,f+h,ys);break;case Is:Us(this,c,k/2,f+h,ys)}}else{switch(d){case Js:Ss(this,c,f,Hs);break;case ws:Ts(this,c,f,Hs);break;case Is:Us(this,c,k/2,f,Hs)}switch(d){case Js:Ss(this,a,f+h,ys);break;case ws:Ts(this,a,f+h,ys);break;case Is:Us(this,a,k/2,f+h,ys)}}}else switch(d){case Js:Ss(this, b,f,this.direction);break;case ws:Ts(this,b,f,this.direction);break;case Is:Us(this,b,k,f,this.direction);break;case Ks:Vs(this,b,k,f,this.direction)}else Vs(this,b,k,f-k/2,ys)}this.updateParts();this.network=null;this.Af=!0}; function Us(a,b,c,d,e){var f=a.nr,h=a.Wd;a=a.Dg;d=d*Math.PI/180;c=c*Math.PI/180;for(var k=b.length,l=0;lc){for(f=d+(e===ys?f:-f);0>f;)f+=360;f%=360;180=n.length-1)break;Ys(a,l,m,n,p,e,f)||Zs(a,l,m,n,p,e,f);l=f.x;m=f.y}v.v(f);a.Om++;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.Om?a.Wd-h/(2*Math.PI):5>n.length&&10=p.length-1)break;Ys(a,l,m,p,q,e,n)||Zs(a,l,m,p,q,e,n);l=n.x;m=n.y}v.v(n);a.Om++;if(!(23=p.length-1)break;Ys(a,l,m,p,q,e,n)||Zs(a,l,m,p,q,e,n);l=n.x;m=n.y}v.v(n);a.Om++;if(!(23a.Om?a.Wd-f/(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 Zs(a,b,c,d,e,f,h){var k=a.Wd,l=a.Dg,m=0,n=0;a=(d[e].height+d[e+1].height)/2+a.$k;d=!1;if(0<=b!==(f===ys)){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}vs.prototype.commitLayout=function(){this.commitNodes();this.bu&&this.commitLinks()}; vs.prototype.commitNodes=function(){for(var a=this.UG,b=this.network.vertexes.i;b.next();){var c=b.value;c.x+=a.x;c.y+=a.y;c.commit()}};vs.prototype.commitLinks=function(){for(var a=this.network.edges.i;a.next();)a.value.commit()}; -function Qs(a,b,c,d,e){var f=a.JG;if(.001>Math.abs(a.Ao-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 Ps(a,b,c,d,e){var f=0,f=void 0!==d&&void 0!==e?Qs(a,1,c,d,e):Qs(a,1,c);return b/f} -function Rs(a,b,c,d,e){if(.001>Math.abs(a.Ao-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}} -vs.prototype.sort=function(a){switch(this.sorting){case Ds:break;case Es:a.reverse();break;case Bs:a.sort(this.comparer);break;case Cs:a.sort(this.comparer);a.reverse();break;case zs:for(var b=[],c=0;ce&&(e=k,f=h)}else for(h=0;he&&(e=k,f=h);d.add(a.fa(f));b[f]=-1;f=a.fa(f);e=0;for(h=f.oc;h.next();)e=a.indexOf(h.value.fromVertex),0>e||0<=b[e]&& -b[e]++;for(f=f.lc;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.oc;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])&&u.push(p===c.length-1?0:p+1);if(0===u.length)for(p=0;pH.indexOf(U)||MH.indexOf(U)||M< -z[U]&&z[U]=t?l+1:l)),w+=l=t&&l++,A>=t&&A++,l>A&&(H=A,A=l,l=H),A-l<(c.length+2)/2===(lMath.abs(a.zo-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 Ps(a,b,c,d,e){var f=0,f=void 0!==d&&void 0!==e?Qs(a,1,c,d,e):Qs(a,1,c);return b/f} +function Rs(a,b,c,d,e){if(.001>Math.abs(a.zo-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}} +vs.prototype.sort=function(a){switch(this.sorting){case Ds:break;case Es:a.reverse();break;case Bs:a.sort(this.comparer);break;case Cs:a.sort(this.comparer);a.reverse();break;case zs:for(var b=[],c=0;ce&&(e=k,f=h)}else for(h=0;he&&(e=k,f=h);d.add(a.fa(f));b[f]=-1;f=a.fa(f);e=0;for(h=f.nc;h.next();)e=a.indexOf(h.value.fromVertex),0>e||0<=b[e]&& +b[e]++;for(f=f.kc;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.nc;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])&&u.push(p===c.length-1?0:p+1);if(0===u.length)for(p=0;pH.indexOf(U)||MH.indexOf(U)||M< +A[U]&&A[U]=t?l+1:l)),w+=l=t&&l++,z>=t&&z++,l>z&&(H=z,z=l,l=H),z-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.J())}); v.defineProperty(vs,{Pf:"arrangement"},function(){return this.nd},function(a){this.nd!==a&&(v.nb(a,vs,vs,"arrangement"),a===Ks||a===ws||a===Js||a===Is)&&(this.nd=a,this.J())});v.defineProperty(vs,{direction:"direction"},function(){return this.ba},function(a){this.ba!==a&&(v.nb(a,vs,vs,"direction"),a===ys||a===Hs||a===Fs||a===Gs)&&(this.ba=a,this.J())}); v.defineProperty(vs,{sorting:"sorting"},function(){return this.Zh},function(a){this.Zh!==a&&(v.nb(a,vs,vs,"sorting"),a===Ds||a===Es||a===Bs||Cs||a===zs)&&(this.Zh=a,this.J())});v.defineProperty(vs,{comparer:"comparer"},function(){return this.Jh},function(a){this.Jh!==a&&(v.j(a,"function",vs,"comparer"),this.Jh=a,this.J())});v.defineProperty(vs,{spacing:"spacing"},function(){return this.$h},function(a){this.$h!==a&&(v.j(a,"number",vs,"spacing"),this.$h=a,this.J())}); v.defineProperty(vs,{Dx:"nodeDiameterFormula"},function(){return this.ps},function(a){this.ps!==a&&(v.nb(a,vs,vs,"nodeDiameterFormula"),a===As||a===Ls)&&(this.ps=a,this.J())});v.u(vs,{VG:"actualXRadius"},function(){return this.Wd});v.u(vs,{WG:"actualYRadius"},function(){return this.Dg});v.u(vs,{ZJ:"actualSpacing"},function(){return this.$k});v.u(vs,{UG:"actualCenter"},function(){return isNaN(this.qe.x)||isNaN(this.qe.y)?new y(0,0):new y(this.qe.x+this.VG,this.qe.y+this.WG)});var ws; vs.ConstantSpacing=ws=v.p(vs,"ConstantSpacing",0);var Js;vs.ConstantDistance=Js=v.p(vs,"ConstantDistance",1);var Is;vs.ConstantAngle=Is=v.p(vs,"ConstantAngle",2);var Ks;vs.Packed=Ks=v.p(vs,"Packed",3);var ys;vs.Clockwise=ys=v.p(vs,"Clockwise",4);var Hs;vs.Counterclockwise=Hs=v.p(vs,"Counterclockwise",5);var Fs;vs.BidirectionalLeft=Fs=v.p(vs,"BidirectionalLeft",6);var Gs;vs.BidirectionalRight=Gs=v.p(vs,"BidirectionalRight",7);var Ds;vs.Forwards=Ds=v.p(vs,"Forwards",8);var Es; -vs.Reverse=Es=v.p(vs,"Reverse",9);var Bs;vs.Ascending=Bs=v.p(vs,"Ascending",10);var Cs;vs.Descending=Cs=v.p(vs,"Descending",11);var zs;vs.Optimized=zs=v.p(vs,"Optimized",12);var As;vs.Pythagorean=As=v.p(vs,"Pythagorean",13);var Ls;vs.Circular=Ls=v.p(vs,"Circular",14);function xs(){this.Sp=-Infinity;this.Aq=this.$n=null} -xs.prototype.compare=function(a,b){if(0this.Sp||Math.abs(a)a&&0this.Rp||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=jt(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().kb,d=this.network.vertexes.i;d.next();){if(d.value.kb.Jg(c)&&(a++,2a.network.vertexes.count)return!1;null===a.Cg?a.Cg=new I(Vt):a.Cg.clear();a.Cg.Kc(a.network.vertexes);var c=a.Cg;c.sort(function(a,b){return null===a||null===b||a===b?0:b.eg-a.eg});for(var d=c.count-1;0<=d&&1>=c.fa(d).eg;)d--;return 1=h))){for(var m=0,n=0,p=l.count-h;ps&&(s=1);m=Pd((m+s+n*n*4/(h*h))/s);h=(m-1)*p/2;m=(m-1)*q/2;f.kb=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 Ut(a,b){for(var c=a.network.vertexes.i;c.next();){var d=c.value;d.network=b;if(null!==d.Dh){var e=d.Dh.fa(d.RA);d.eg=e.jy;var f=e.tB,h=e.uB;d.kb=new B(d.la-f,d.sa-h,e.ky,e.iy);d.focus=new y(f,h);d.RA--}}for(c=a.network.edges.i;c.next();)c.value.network=b;a.network=b} function Wt(a,b){var c=b.nn;if(null!==c&&0!==c.count){var d=b.la,e=b.sa,f=b.width,h=b.height;null!==b.Dh&&0=p.eg?l++:(k=!0,m++,h+=Math.atan2(b.sa-p.sa,b.la-p.la))}if(0!==l)for(0>1)+n)*(0===k%2?1:-1);l.la=d+p*Math.cos(q);l.sa=e+p*Math.sin(q);k++}}}function jt(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,Pd(d*d+e*e)):e+ck+m?e>l+h?(d=d-k-m,e=e-l-h,Pd(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.la,e=d,f=c.sa,h=f,c=1;ch-f)?b.sort(function(a,b){return null===a||null===b||a===b?0:a.la-b.la}):b.sort(function(a,b){return null===a||null===b||a===b?0:a.sa-b.sa});for(var h=a.Oh,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=Yt(k,e);1>s?(n=a.Lx,null===n&&(a.Lx=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.Lx,null===n&&(a.Lx=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.Oh/20,50);for(e=0;ed&&(f=d),h<-d?h=-d:h>d&&(h=d),k.la+=f,k.sa+=h,c=Math.max(c,f*f+h*h));return c>a.vE*a.vE}at.prototype.moveFixedVertex=function(){}; at.prototype.commitLayout=function(){this.ZA();this.commitNodes();this.bu&&this.commitLinks()};at.prototype.ZA=function(){if(this.uq)for(var a=this.network.edges.i;a.next();){var b=a.value.link;null!==b&&(b.Ab=nc,b.Bb=nc)}};at.prototype.commitNodes=function(){var a=0,b=0;if(this.dH){var c=v.Ef();this.rh(this.network,c);b=this.qe;a=b.x-c.x;b=b.y-c.y;v.Gb(c)}for(var c=v.Ef(),d=this.network.vertexes.i;d.next();){var e=d.value;if(0!==a||0!==b)c.assign(e.kb),c.x+=a,c.y+=b,e.kb=c;e.commit()}v.Gb(c)}; -at.prototype.commitLinks=function(){for(var a=this.network.edges.i;a.next();)a.value.commit()};at.prototype.springStiffness=function(a){a=a.stiffness;return isNaN(a)?this.wo:a};at.prototype.springLength=function(a){a=a.length;return isNaN(a)?this.vo:a};at.prototype.electricalCharge=function(a){a=a.charge;return isNaN(a)?this.to:a};at.prototype.electricalFieldX=function(){return 0};at.prototype.electricalFieldY=function(){return 0}; -at.prototype.gravitationalMass=function(a){a=a.mass;return isNaN(a)?this.uo:a};at.prototype.gravitationalFieldX=function(){return 0};at.prototype.gravitationalFieldY=function(){return 0};at.prototype.isFixed=function(a){return a.isFixed};v.u(at,{CK:"currentIteration"},function(){return this.Pr});v.defineProperty(at,{aE:"arrangementSpacing"},function(){return this.gg},function(a){v.F(a,ia,at,"arrangementSpacing");this.gg.L(a)||(this.gg.assign(a),this.J())}); +at.prototype.commitLinks=function(){for(var a=this.network.edges.i;a.next();)a.value.commit()};at.prototype.springStiffness=function(a){a=a.stiffness;return isNaN(a)?this.vo:a};at.prototype.springLength=function(a){a=a.length;return isNaN(a)?this.uo:a};at.prototype.electricalCharge=function(a){a=a.charge;return isNaN(a)?this.so:a};at.prototype.electricalFieldX=function(){return 0};at.prototype.electricalFieldY=function(){return 0}; +at.prototype.gravitationalMass=function(a){a=a.mass;return isNaN(a)?this.to:a};at.prototype.gravitationalFieldX=function(){return 0};at.prototype.gravitationalFieldY=function(){return 0};at.prototype.isFixed=function(a){return a.isFixed};v.u(at,{CK:"currentIteration"},function(){return this.Pr});v.defineProperty(at,{aE:"arrangementSpacing"},function(){return this.gg},function(a){v.F(a,ia,at,"arrangementSpacing");this.gg.L(a)||(this.gg.assign(a),this.J())}); v.defineProperty(at,{dH:"arrangesToOrigin"},function(){return this.Lq},function(a){this.Lq!==a&&(v.j(a,"boolean",at,"arrangesToOrigin"),this.Lq=a,this.J())});v.defineProperty(at,{uq:"setsPortSpots"},function(){return this.Yh},function(a){this.Yh!==a&&(v.j(a,"boolean",at,"setsPortSpots"),this.Yh=a,this.J())});v.defineProperty(at,{comments:"comments"},function(){return this.Ih},function(a){this.Ih!==a&&(v.j(a,"boolean",at,"comments"),this.Ih=a,this.J())}); -v.defineProperty(at,{yA:"maxIterations"},function(){return this.Yo},function(a){this.Yo!==a&&(v.j(a,"number",at,"maxIterations"),0<=a&&(this.Yo=a,this.J()))});v.defineProperty(at,{vE:"epsilonDistance"},function(){return this.qr},function(a){this.qr!==a&&(v.j(a,"number",at,"epsilonDistance"),0b.toVertex.index&&(this.network.Rx(b),b.rev=!0);break;case bu:for(b=this.network.vertexes.i;b.next();)a=b.value,a.Np=-1,a.finish=-1;for(a=this.network.edges.i;a.next();)a.value.forest=!1;this.ls=0;for(b.reset();b.next();)c=b.value,0===c.oc.count&&lu(this,c);for(b.reset();b.next();)c=b.value,-1===c.Np&&lu(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.Npb.toVertex.index&&(this.network.Rx(b),b.rev=!0);break;case bu:for(b=this.network.vertexes.i;b.next();)a=b.value,a.Mp=-1,a.finish=-1;for(a=this.network.edges.i;a.next();)a.value.forest=!1;this.ls=0;for(b.reset();b.next();)c=b.value,0===c.nc.count&&lu(this,c);for(b.reset();b.next();)c=b.value,-1===c.Mp&&lu(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.Mps&&0s&&0s&&0s&&0b[this.Lf]&&(this.Pv=b[c]-1,this.Lf=c),b[c]h)for(var p=h+1;pn;p--)l=d[p],l.near===m&&l.kn===m.kn||k++;var m=0,q,r=q=p=l=0,s,u=0,t=0;s=0;var x;if(0<=c)for(n=d[h].df,m=0;mu||l===u&&q>s)&&k++,tl||u===l&&s>q)&&k++);if(0>=c)for(n=d[h].$e,m=0;mu||l===u&&p>t)&&k++,sl||u===l&&t>p)&&k++);f[h*e+h]=k;for(n=h+1;n=c)for(k=d[h].$e,x=d[n].$e,m=0;mu||l===u&&q>s)&&k++,tl||u===l&&s>q)&&k++);if(0>=c)for(n=d[h].$e,m=0;mu||l===u&&p>t)&&k++,sl||u===l&&t>p)&&k++);f[h*e+h]=k;for(n=h+1;n=c)for(k=d[h].$e,x=d[n].$e,m=0;m=c&&(l=k.df);var m=null;0<=c&&(m=k.$e);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.df);var m=null;0<=c&&(m=k.$e);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)}pu(a,b,d);return f}function xu(a,b,c,d,e,f){if(b.component===d){b.component=c;var h=0,k=0;if(e)for(var l=b.lc;l.next();){var k=l.value,m=k.toVertex,h=b.layer-m.layer,k=a.linkMinLength(k);h===k&&xu(a,m,c,d,e,f)}if(f)for(l=b.oc;l.next();)k=l.value,m=k.fromVertex,h=m.layer-b.layer,k=a.linkMinLength(k),h===k&&xu(a,m,c,d,e,f)}} -function yu(a,b,c,d,e,f){if(b.component===d){b.component=c;if(e)for(var h=b.lc;h.next();)yu(a,h.value.toVertex,c,d,e,f);if(f)for(b=b.oc;b.next();)yu(a,b.value.fromVertex,c,d,e,f)}}function iu(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid)return b}return null}function ju(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.toVertex.valid){c=!1;break}if(c)return b}}return null} -function ku(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.oc;d.next();)if(d.value.fromVertex.valid){c=!1;break}if(c)return b}}return null}function lu(a,b){b.Np=a.ls;a.ls++;for(var c=b.lc;c.next();){var d=c.value,e=d.toVertex;-1===e.Np&&(d.forest=!0,lu(a,e))}b.finish=a.ls;a.ls++} -au.prototype.assignLayers=function(){switch(this.Uo){case zu:Au(this);break;case Bu:for(var a=0,b=this.network.vertexes.i;b.next();)a=Cu(this,b.value),this.qb=Math.max(a,this.qb);for(b.reset();b.next();)a=b.value,a.layer=this.qb-a.layer;break;default:case cu:Au(this);for(b=this.network.vertexes.i;b.next();)b.value.valid=!1;for(b.reset();b.next();)a=b.value,0===a.oc.count&&Du(this,a);a=Infinity;for(b.reset();b.next();)a=Math.min(a,b.value.layer);this.qb=-1;for(b.reset();b.next();){var c=b.value;c.layer-= -a;this.qb=Math.max(this.qb,c.layer)}}};function Au(a){for(var b=a.network.vertexes.i;b.next();){var c=Eu(a,b.value);a.qb=Math.max(c,a.qb)}}function Eu(a,b){var c=0;if(-1===b.layer){for(var d=b.lc;d.next();)var e=d.value,f=e.toVertex,e=a.linkMinLength(e),c=Math.max(c,Eu(a,f)+e);b.layer=c}else c=b.layer;return c}function Cu(a,b){var c=0;if(-1===b.layer){for(var d=b.oc;d.next();)var e=d.value,f=e.fromVertex,e=a.linkMinLength(e),c=Math.max(c,Cu(a,f)+e);b.layer=c}else c=b.layer;return c} -function Du(a,b){if(!b.valid){b.valid=!0;for(var c=b.lc;c.next();)Du(a,c.value.toVertex);for(c=a.network.vertexes.i;c.next();)c.value.component=-1;for(var d=b.df.n,e=d.length,f=0;fk&&xu(a,h.fromVertex,0,-1,!0,!1)}for(xu(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.df.n,e=s.length,f=0;f>1,f[h]=n&1?p[m]:p[m-1]+p[m]>>1)}pu(a,b,d);return f}function xu(a,b,c,d,e,f){if(b.component===d){b.component=c;var h=0,k=0;if(e)for(var l=b.kc;l.next();){var k=l.value,m=k.toVertex,h=b.layer-m.layer,k=a.linkMinLength(k);h===k&&xu(a,m,c,d,e,f)}if(f)for(l=b.nc;l.next();)k=l.value,m=k.fromVertex,h=m.layer-b.layer,k=a.linkMinLength(k),h===k&&xu(a,m,c,d,e,f)}} +function yu(a,b,c,d,e,f){if(b.component===d){b.component=c;if(e)for(var h=b.kc;h.next();)yu(a,h.value.toVertex,c,d,e,f);if(f)for(b=b.nc;b.next();)yu(a,b.value.fromVertex,c,d,e,f)}}function iu(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid)return b}return null}function ju(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.kc;d.next();)if(d.value.toVertex.valid){c=!1;break}if(c)return b}}return null} +function ku(a){for(a=a.vertexes.i;a.next();){var b=a.value;if(b.valid){for(var c=!0,d=b.nc;d.next();)if(d.value.fromVertex.valid){c=!1;break}if(c)return b}}return null}function lu(a,b){b.Mp=a.ls;a.ls++;for(var c=b.kc;c.next();){var d=c.value,e=d.toVertex;-1===e.Mp&&(d.forest=!0,lu(a,e))}b.finish=a.ls;a.ls++} +au.prototype.assignLayers=function(){switch(this.To){case zu:Au(this);break;case Bu:for(var a=0,b=this.network.vertexes.i;b.next();)a=Cu(this,b.value),this.qb=Math.max(a,this.qb);for(b.reset();b.next();)a=b.value,a.layer=this.qb-a.layer;break;default:case cu:Au(this);for(b=this.network.vertexes.i;b.next();)b.value.valid=!1;for(b.reset();b.next();)a=b.value,0===a.nc.count&&Du(this,a);a=Infinity;for(b.reset();b.next();)a=Math.min(a,b.value.layer);this.qb=-1;for(b.reset();b.next();){var c=b.value;c.layer-= +a;this.qb=Math.max(this.qb,c.layer)}}};function Au(a){for(var b=a.network.vertexes.i;b.next();){var c=Eu(a,b.value);a.qb=Math.max(c,a.qb)}}function Eu(a,b){var c=0;if(-1===b.layer){for(var d=b.kc;d.next();)var e=d.value,f=e.toVertex,e=a.linkMinLength(e),c=Math.max(c,Eu(a,f)+e);b.layer=c}else c=b.layer;return c}function Cu(a,b){var c=0;if(-1===b.layer){for(var d=b.nc;d.next();)var e=d.value,f=e.fromVertex,e=a.linkMinLength(e),c=Math.max(c,Cu(a,f)+e);b.layer=c}else c=b.layer;return c} +function Du(a,b){if(!b.valid){b.valid=!0;for(var c=b.kc;c.next();)Du(a,c.value.toVertex);for(c=a.network.vertexes.i;c.next();)c.value.component=-1;for(var d=b.df.n,e=d.length,f=0;fk&&xu(a,h.fromVertex,0,-1,!0,!1)}for(xu(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.df.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 nu(a,b,c){return 90===a.ba?c&&!b.rev||!c&&b.rev?270:90:180===a.ba?c&&!b.rev||!c&&b.rev?0:180:270===a.ba?c&&!b.rev||!c&&b.rev?90:270:c&&!b.rev||!c&&b.rev?180:0} -au.prototype.initializeIndices=function(){switch(this.Jo){default:case Fu:for(var a=this.network.vertexes.i;a.next();){var b=a.value,c=b.layer;b.index=this.je[c];this.je[c]++}break;case du:a=this.network.vertexes.i;for(b=this.qb;0<=b;b--)for(a.reset();a.next();)c=a.value,c.layer===b&&-1===c.index&&Gu(this,c);break;case Hu:for(a=this.network.vertexes.i,b=0;b<=this.qb;b++)for(a.reset();a.next();)c=a.value,c.layer===b&&-1===c.index&&Iu(this,c)}}; +au.prototype.initializeIndices=function(){switch(this.Io){default:case Fu:for(var a=this.network.vertexes.i;a.next();){var b=a.value,c=b.layer;b.index=this.je[c];this.je[c]++}break;case du:a=this.network.vertexes.i;for(b=this.qb;0<=b;b--)for(a.reset();a.next();)c=a.value,c.layer===b&&-1===c.index&&Gu(this,c);break;case Hu:for(a=this.network.vertexes.i,b=0;b<=this.qb;b++)for(a.reset();a.next();)c=a.value,c.layer===b&&-1===c.index&&Iu(this,c)}}; function Gu(a,b){var c=b.layer;b.index=a.je[c];a.je[c]++;for(var c=b.$e.fc(),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;e=h;d--)f=Ku(this,d,-1)||f;e=this.countCrossings();e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=c;d>=h;d--)f=Ku(this,d,1)||f;e=this.countCrossings();e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ku(this,d,1)||f;e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1, +e=h;d--)f=Ku(this,d,-1)||f;e=this.countCrossings();e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=c;d>=h;d--)f=Ku(this,d,1)||f;e=this.countCrossings();e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ku(this,d,1)||f;e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1, d=h;d<=c;d++)f=Ku(this,d,-1)||f;e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=c;d>=h;d--)f=Ku(this,d,0)||f;e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ku(this,d,0)||f;e>=a?su(this,b):(a=e,b=ru(this))}break;default:case eu:for(c=this.qb,h=0,k=a+1;(d=this.countCrossings())=h;d--)f=Ku(this,d,-1)||f;e=this.countCrossings();e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=c;d>=h;d--)f=Ku(this,d,1)||f;e=this.countCrossings(); e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ku(this,d,1)||f;e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ku(this,d,-1)||f;e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=c;d>=h;d--)f=Ku(this,d,0)||f;e>=a?su(this,b):(a=e,b=ru(this));for(f=!0;f;)for(f=!1,d=h;d<=c;d++)f=Ku(this,d,0)||f;e>=a?su(this,b):(a=e,b=ru(this))}}su(this,b)}; function Ju(a,b,c){var d=0,e=ou(a,b),f=a.je[b],h=wu(a,b,c);c=vu(a,b,c);for(d=0;df+1&&(q+=4*(w-f),r+=4*(w-(f+1)))}A=d[f].lc.i;for(A.reset();A.next();)if(z=A.value,z.valid&&z.toVertex.layer===b){z=z.toVertex;for(w=0;d[w]!==z;)w++;w===f+1&&(r+=1)}A=d[f+1].oc.i;for(A.reset();A.next();)if(z=A.value,z.valid&&z.fromVertex.layer===b){z=z.fromVertex;for(w=0;d[w]!==z;)w++;wf+1&&(q+=4*(w-(f+1)),r+=4*(w-f))}A=d[f+1].lc.i;for(A.reset();A.next();)if(z=A.value, -z.valid&&z.toVertex.layer===b){z=z.toVertex;for(w=0;d[w]!==z;)w++;w===f&&(q+=1)}var w=z=0,A=h[d[f].index],H=k[d[f].index],C=h[d[f+1].index],R=k[d[f+1].index];-1!==A&&(z+=Math.abs(A-s),w+=Math.abs(A-x));-1!==H&&(z+=Math.abs(H-s),w+=Math.abs(H-x));-1!==C&&(z+=Math.abs(C-u),w+=Math.abs(C-t));-1!==R&&(z+=Math.abs(R-u),w+=Math.abs(R-t));if(rf+1&&(q+=4*(w-f),r+=4*(w-(f+1)))}z=d[f].kc.i;for(z.reset();z.next();)if(A=z.value,A.valid&&A.toVertex.layer===b){A=A.toVertex;for(w=0;d[w]!==A;)w++;w===f+1&&(r+=1)}z=d[f+1].nc.i;for(z.reset();z.next();)if(A=z.value,A.valid&&A.fromVertex.layer===b){A=A.fromVertex;for(w=0;d[w]!==A;)w++;wf+1&&(q+=4*(w-(f+1)),r+=4*(w-f))}z=d[f+1].kc.i;for(z.reset();z.next();)if(A=z.value, +A.valid&&A.toVertex.layer===b){A=A.toVertex;for(w=0;d[w]!==A;)w++;w===f&&(q+=1)}var w=A=0,z=h[d[f].index],H=k[d[f].index],C=h[d[f+1].index],R=k[d[f+1].index];-1!==z&&(A+=Math.abs(z-s),w+=Math.abs(z-x));-1!==H&&(A+=Math.abs(H-s),w+=Math.abs(H-x));-1!==C&&(A+=Math.abs(C-u),w+=Math.abs(C-t));-1!==R&&(A+=Math.abs(R-u),w+=Math.abs(R-t));if(r>1)+8*d;this.Jb*=8}if(0!==(this.Wi&Ou))for(b=!0;b;){b=!1;for(a=this.Lf+1;a<=this.qb;a++)b=Pu(this,a,1)||b; for(a=this.Lf-1;0<=a;a--)b=Pu(this,a,-1)||b;b=Pu(this,this.Lf,0)||b}if(0!==(this.Wi&Qu)){for(a=this.Lf+1;a<=this.qb;a++)Ru(this,a,1);for(a=this.Lf-1;0<=a;a--)Ru(this,a,-1);Ru(this,this.Lf,0)}c&&(Su(this,-1),Su(this,1));if(0!==(this.Wi&Ou))for(b=!0;b;){b=!1;b=Pu(this,this.Lf,0)||b;for(a=this.Lf+1;a<=this.qb;a++)b=Pu(this,a,0)||b;for(a=this.Lf-1;0<=a;a--)b=Pu(this,a,0)||b}};function Pu(a,b,c){for(var d=!1;Tu(a,b,c);)d=!0;return d} -function Tu(a,b,c){var d=0,e=ou(a,b),f=a.je[b],h=vu(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,u=0,t=0,x=0,w=0;if(0>=c)for(var z=e[d].oc.i;z.next();){var A=z.value;A.valid&&A.fromVertex.layer!== -b&&(t=qu(A),x=A.portFromColOffset,w=A.portToColOffset,A=A.fromVertex.column,q+=(Math.abs(n+w-(A+x))+1)*t,s+=(Math.abs(r+w-(A+x))+1)*t,u+=(Math.abs(p+w-(A+x))+1)*t)}if(0<=c)for(z=e[d].lc.i;z.next();)A=z.value,A.valid&&A.toVertex.layer!==b&&(t=qu(A),x=A.portFromColOffset,w=A.portToColOffset,A=A.toVertex.column,q+=(Math.abs(n+x-(A+w))+1)*t,s+=(Math.abs(r+x-(A+w))+1)*t,u+=(Math.abs(p+x-(A+w))+1)*t);w=x=t=0;z=h[e[d].index];A=k[e[d].index];-1!==z&&(t+=Math.abs(z-n),x+=Math.abs(z-r),w+=Math.abs(z-p));-1!== -A&&(t+=Math.abs(A-n),x+=Math.abs(A-r),w+=Math.abs(A-p));if(sc)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,u=0,t=0,x=0,w=0;if(0>=c)for(var A=e[d].nc.i;A.next();){var z=A.value;z.valid&&z.fromVertex.layer!== +b&&(t=qu(z),x=z.portFromColOffset,w=z.portToColOffset,z=z.fromVertex.column,q+=(Math.abs(n+w-(z+x))+1)*t,s+=(Math.abs(r+w-(z+x))+1)*t,u+=(Math.abs(p+w-(z+x))+1)*t)}if(0<=c)for(A=e[d].kc.i;A.next();)z=A.value,z.valid&&z.toVertex.layer!==b&&(t=qu(z),x=z.portFromColOffset,w=z.portToColOffset,z=z.toVertex.column,q+=(Math.abs(n+x-(z+w))+1)*t,s+=(Math.abs(r+x-(z+w))+1)*t,u+=(Math.abs(p+x-(z+w))+1)*t);w=x=t=0;A=h[e[d].index];z=k[e[d].index];-1!==A&&(t+=Math.abs(A-n),x+=Math.abs(A-r),w+=Math.abs(A-p));-1!== +z&&(t+=Math.abs(z-n),x+=Math.abs(z-r),w+=Math.abs(z-p));if(s=c[d]?n=q:p<=c[d]&&(n=p));n!==k&&(h=!0,e[d].column=n)}pu(a,b,e);a.normalize()} function Uu(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} @@ -1907,76 +1907,76 @@ au.prototype.commitNodes=function(){this.sg=[];this.Kf=[];this.Jf=[];this.Ob=[]; e=Math.min(c.x,e);d=Math.min(c.y,d)}e=b.x-e;b=b.y-d;this.GB=new y(e,b);for(a.reset();a.next();)c=a.value,c.x+=e,c.y+=b,c.commit()}; au.prototype.Mz=function(){for(var a=0,b=this.Fm,c=0;c<=this.qb;c++)a+=this.sg[c],a+=this.Kf[c];for(var a=a+this.qb*b,b=[],c=this.Vd*this.Jb,d=this.GI;0<=d;d--)270===this.ba?0===d?b.push(new B(0,0,c,Math.abs(this.Ob[0]))):b.push(new B(0,this.Ob[d-1],c,Math.abs(this.Ob[d-1]-this.Ob[d]))):90===this.ba?0===d?b.push(new B(0,this.Ob[0],c,Math.abs(this.Ob[0]-a))):b.push(new B(0,this.Ob[d],c,Math.abs(this.Ob[d-1]-this.Ob[d]))):180===this.ba?0===d?b.push(new B(0,0,Math.abs(this.Ob[0]),c)):b.push(new B(this.Ob[d- 1],0,Math.abs(this.Ob[d-1]-this.Ob[d]),c)):0===d?b.push(new B(this.Ob[0],0,Math.abs(this.Ob[0]-a),c)):b.push(new B(this.Ob[d],0,Math.abs(this.Ob[d-1]-this.Ob[d]),c));this.commitLayers(b,this.GB)};au.prototype.commitLayers=function(){}; -au.prototype.commitLinks=function(){for(var a=this.network.edges.i,b;a.next();)b=a.value.link,null!==b&&(b.dm(),b.Gp(),b.gj());for(a.reset();a.next();)b=a.value.link,null!==b&&b.Yn();for(a.reset();a.next();){var c=a.value;b=c.link;if(null!==b){b.dm();var d=b,e=d.W,f=d.aa,h=d.hd,k=d.Td;if(c.valid){if(b.Ze===jj&&4===b.ra){if(c.rev)var l=e,e=f,f=l,m=h,h=k,k=m;if(c.fromVertex.column===c.toVertex.column){var n=b.getLinkPoint(e,h,b.computeSpot(!0),!0,!1,f,k),p=b.getLinkPoint(f,k,b.computeSpot(!1),!1,!1, -e,h);n.H()||n.set(e.Y.El);p.H()||p.set(f.Y.El);b.Gp();b.zl(n.x,n.y);b.zl((2*n.x+p.x)/3,(2*n.y+p.y)/3);b.zl((n.x+2*p.x)/3,(n.y+2*p.y)/3);b.zl(p.x,p.y)}else{var q=!1,r=!1;null!==h&&b.computeSpot(!0)===vb&&(q=!0);null!==k&&b.computeSpot(!1)===vb&&(r=!0);if(q||r){var s=b.m(0).x,u=b.m(0).y,t=b.m(1).x,x=b.m(1).y,w=b.m(2).x,z=b.m(2).y,A=b.m(3).x,H=b.m(3).y;if(q){90===this.ba||270===this.ba?(t=s,x=(u+H)/2):(t=(s+A)/2,x=u);b.ea(1,t,x);var C=b.getLinkPoint(e,h,b.computeSpot(!0),!0,!1,f,k);C.H()||C.set(e.Y.El); -b.ea(0,C.x,C.y)}r&&(90===this.ba||270===this.ba?(w=A,z=(u+H)/2):(w=(s+A)/2,z=H),b.ea(2,w,z),C=b.getLinkPoint(f,k,b.computeSpot(!1),!1,!1,e,h),C.H()||C.set(f.Y.El),b.ea(3,C.x,C.y))}}}b.gj()}else if(c.fromVertex.layer===c.toVertex.layer)b.gj();else{var R=!1,ba=!1,U=0,M=b.Kt+1;if(b.mc)ba=!0,U=b.ra,4=Ga.M.bottom?(ta=Ga.M.y+Ga.M.height,b.w(M++,ma,ta+Ua),b.w(M++,ma,ta),b.w(M++,ma, ta-Za)):(b.w(M++,ma,na+Ua),b.w(M++,ma,na),b.w(M++,ma,na-Za)):270===this.ba?na<=Ga.M.y?(ta=Ga.M.y,b.w(M++,ma,ta-Za),b.w(M++,ma,ta),b.w(M++,ma,ta+Ua)):(b.w(M++,ma,na-Za),b.w(M++,ma,na),b.w(M++,ma,na+Ua)):0===this.ba&&(ma>=Ga.M.right?(ta=Ga.M.x+Ga.M.width,b.w(M++,ta+Ua,na),b.w(M++,ta,na),b.w(M++,ta-Za,na)):(b.w(M++,ma+Ua,na),b.w(M++,ma,na),b.w(M++,ma-Za,na)));else{b.w(M++,ab,sb);var Ad=0;if(180===this.ba||0===this.ba){if(180===this.ba?ma>=Ga.M.right:ma<=Ga.M.x)Ad=(0===this.ba?-Za:Ua)/2;b.w(M++,ab+Ad, na)}else{if(270===this.ba?na>=Ga.M.bottom:na<=Ga.M.y)Ad=(90===this.ba?-Za:Ua)/2;b.w(M++,ma,sb+Ad)}b.w(M++,ma,na)}else Za=Math.max(10,this.sg[ra.layer]),Ua=Math.max(10,this.Kf[ra.layer]),180===this.ba?(R&&b.w(M++,ma-Za,na),b.w(M++,ma,na),R&&b.w(M++,ma+Ua,na)):90===this.ba?(R&&b.w(M++,ma,na+Ua),b.w(M++,ma,na),R&&b.w(M++,ma,na-Za)):270===this.ba?(R&&b.w(M++,ma,na-Za),b.w(M++,ma,na),R&&b.w(M++,ma,na+Ua)):(R&&b.w(M++,ma+Ua,na),b.w(M++,ma,na),R&&b.w(M++,ma-Za,na));Ga=ra}if(null===k||b.computeSpot(!1)!== vb||ba)if(ab=b.m(M-1).x,sb=b.m(M-1).y,ma=b.m(M).x,na=b.m(M).y,ba){var rf=this.Kf[oa.layer],Vb=0;180===this.ba||0===this.ba?(Vb=sb,Vb>=oa.M.y&&Vb<=oa.M.bottom&&(180===this.ba?ma>=oa.M.x:ma<=oa.M.right)&&(ta=oa.la+(180===this.ba?-rf:rf),Vb=Vb=oa.M.x&&Vb<=oa.M.right&&(270===this.ba?na>=oa.M.y:na<=oa.M.bottom)&&(ta=oa.sa+(270===this.ba?-rf:rf),Vb=Vb=oa.M.x?(ta=oa.M.x+oa.M.width,b.ea(M-2,ta,sb),b.ea(M-1,ta+Ua,sb)):90===this.ba&&na<=oa.M.bottom?(ta=oa.M.y,b.ea(M-2,ab,ta),b.ea(M-1,ab,ta-Za)):270===this.ba&&na>=oa.M.y?(ta=oa.M.y+oa.M.height,b.ea(M-2,ab,ta),b.ea(M-1,ab,ta+Ua)):0===this.ba&&ma<=oa.M.right&&(ta=oa.M.x,b.ea(M-2,ta,sb),b.ea(M-1,ta-Za,sb));else{Za=Math.max(10, -this.sg[oa.layer]);Ua=Math.max(10,this.Kf[oa.layer]);Ad=0;if(180===this.ba||0===this.ba){if(180===this.ba?ma<=oa.M.x:ma>=oa.M.right)Ad=(0===this.ba?Ua:-Za)/2;b.w(M++,ma+Ad,sb)}else{if(270===this.ba?na<=oa.M.y:na>=oa.M.bottom)Ad=(90===this.ba?Ua:-Za)/2;b.w(M++,ab,na+Ad)}b.w(M++,ma,na)}}else{for(;null!==oa&&oa!==Ga;){Ja=ra=null;for(var Ag=oa.lc.i;Ag.next();){var Bg=Ag.value;if(Bg.link===c.link&&(ra=Bg.toVertex,Ja=Bg.fromVertex,null!==Ja.Bd&&(Ja=null),null===ra.Bd))break}var ab=0,sb=0,ma=0,na=0,hb=0, +this.sg[oa.layer]);Ua=Math.max(10,this.Kf[oa.layer]);Ad=0;if(180===this.ba||0===this.ba){if(180===this.ba?ma<=oa.M.x:ma>=oa.M.right)Ad=(0===this.ba?Ua:-Za)/2;b.w(M++,ma+Ad,sb)}else{if(270===this.ba?na<=oa.M.y:na>=oa.M.bottom)Ad=(90===this.ba?Ua:-Za)/2;b.w(M++,ab,na+Ad)}b.w(M++,ma,na)}}else{for(;null!==oa&&oa!==Ga;){Ja=ra=null;for(var Ag=oa.kc.i;Ag.next();){var Bg=Ag.value;if(Bg.link===c.link&&(ra=Bg.toVertex,Ja=Bg.fromVertex,null!==Ja.Bd&&(Ja=null),null===ra.Bd))break}var ab=0,sb=0,ma=0,na=0,hb=0, Za=0,Ua=0;if(ra!==Ga)if(ab=b.m(M-1).x,sb=b.m(M-1).y,ma=ra.la,na=ra.sa,ba)if(180===this.ba||0===this.ba){var oe=null!==Ja?Ja.sa:sb;oe!==na&&(hb=this.Ob[ra.layer],2===M&&(hb=0===this.ba?Math.max(hb,ab):Math.min(hb,ab)),b.w(M++,hb,sb),b.w(M++,hb,na))}else{var bd=null!==Ja?Ja.la:ab;bd!==ma&&(hb=this.Ob[ra.layer],2===M&&(hb=90===this.ba?Math.max(hb,sb):Math.min(hb,sb)),b.w(M++,ab,hb),b.w(M++,ma,hb))}else Za=Math.max(10,this.sg[ra.layer]),Ua=Math.max(10,this.Kf[ra.layer]),180===this.ba?(b.w(M++,ma+Ua,na), R&&b.w(M++,ma,na),b.w(M++,ma-Za,na)):90===this.ba?(b.w(M++,ma,na-Za),R&&b.w(M++,ma,na),b.w(M++,ma,na+Ua)):270===this.ba?(b.w(M++,ma,na+Ua),R&&b.w(M++,ma,na),b.w(M++,ma,na-Za)):(b.w(M++,ma-Za,na),R&&b.w(M++,ma,na),b.w(M++,ma+Ua,na));oa=ra}ba&&(ab=b.m(M-1).x,sb=b.m(M-1).y,ma=b.m(M).x,na=b.m(M).y,180===this.ba||0===this.ba?sb!==na&&(hb=0===this.ba?Math.min(Math.max((ma+ab)/2,this.Ob[Ga.layer]),ma):Math.max(Math.min((ma+ab)/2,this.Ob[Ga.layer]),ma),b.w(M++,hb,sb),b.w(M++,hb,na)):ab!==ma&&(hb=90===this.ba? Math.min(Math.max((na+sb)/2,this.Ob[Ga.layer]),na):Math.max(Math.min((na+sb)/2,this.Ob[Ga.layer]),na),b.w(M++,ab,hb),b.w(M++,ma,hb)))}if(null!==d&&R){if(null!==h){if(b.computeSpot(!0)===vb){var Gc=b.m(0),pe=b.m(2);Gc.L(pe)||b.ea(1,(Gc.x+pe.x)/2,(Gc.y+pe.y)/2)}C=b.getLinkPoint(e,h,vb,!0,!1,f,k);C.H()||C.set(e.Y.El);b.ea(0,C.x,C.y)}null!==k&&(b.computeSpot(!1)===vb&&(Gc=b.m(b.ra-1),pe=b.m(b.ra-3),Gc.L(pe)||b.ea(b.ra-2,(Gc.x+pe.x)/2,(Gc.y+pe.y)/2)),C=b.getLinkPoint(f,k,vb,!1,!1,e,h),C.H()||C.set(f.Y.El), -b.ea(b.ra-1,C.x,C.y))}b.gj();c.commit()}}}for(var qe=new I(W),Zf=this.network.edges.i;Zf.next();){var sf=Zf.value.link;null!==sf&&sf.mc&&!qe.contains(sf)&&qe.add(sf)}if(0qc.y&&(Ob=cd.y>qc.y?0:Bd.xXb.x&&(od=ai.x>Xb.x?0:ec.yXb.x&&(od=ai.x>Xb.x?0:ec.yb.layer?1:a.Xeb.Xe?1:a.reb.re?1:0:0};au.prototype.NF=function(a,b){return a instanceof Xu&&b instanceof Xu&&a!==b?a.firstb.first||a.pib.pi||a.Xeb.Xe?1:a.reb.re?1:0:0}; au.prototype.Tx=function(a,b){return a instanceof Xu&&b instanceof Xu&&a!==b?a.feb.fe||a.pib.pi||a.Xeb.Xe?1:a.reb.re?1:0:0};function Yu(a,b){var c=a-b;return-1c}function ou(a,b){var c,d=a.je[b];if(d>=a.gh.length){c=[];for(var e=0;ea&&(this.Wi=a,this.J()))});v.defineProperty(au,{uq:"setsPortSpots"},function(){return this.Yh},function(a){this.Yh!==a&&(v.j(a,"boolean",au,"setsPortSpots"),this.Yh=a,this.J())});v.defineProperty(au,{kF:"linkSpacing"},function(){return this.Ur},function(a){this.Ur!==a&&(v.j(a,"number",au,"linkSpacing"),0<=a&&(this.Ur=a,this.J()))});v.u(au,{GI:"maxLayer"},function(){return this.qb}); v.u(au,{jL:"maxIndex"},function(){return this.Pv});v.u(au,{iL:"maxColumn"},function(){return this.Jb});v.u(au,{oL:"minIndexLayer"},function(){return this.cs});v.u(au,{kL:"maxIndexLayer"},function(){return this.Lf});var bu;au.CycleDepthFirst=bu=v.p(au,"CycleDepthFirst",0);var hu;au.CycleGreedy=hu=v.p(au,"CycleGreedy",1);var cu;au.LayerOptimalLinkLength=cu=v.p(au,"LayerOptimalLinkLength",0);var zu;au.LayerLongestPathSink=zu=v.p(au,"LayerLongestPathSink",1);var Bu; au.LayerLongestPathSource=Bu=v.p(au,"LayerLongestPathSource",2);var du;au.InitDepthFirstOut=du=v.p(au,"InitDepthFirstOut",0);var Hu;au.InitDepthFirstIn=Hu=v.p(au,"InitDepthFirstIn",1);var Fu;au.InitNaive=Fu=v.p(au,"InitNaive",2);var Lu;au.AggressiveNone=Lu=v.p(au,"AggressiveNone",0);var eu;au.AggressiveLess=eu=v.p(au,"AggressiveLess",1);var Mu;au.AggressiveMore=Mu=v.p(au,"AggressiveMore",2);au.PackNone=0;var Nu;au.PackExpand=Nu=1;var Ou;au.PackStraighten=Ou=2;var Qu;au.PackMedian=Qu=4;var fu; au.PackAll=fu=7;function Xu(){this.index=this.re=this.Xe=this.fe=this.first=this.layer=0;this.link=null;this.pi=0}v.ae(Xu,{layer:!0,first:!0,fe:!0,Xe:!0,re:!0,index:!0,link:!0,pi:!0});function gu(){ug.call(this)}v.Ma(gu,ug);v.ga("LayeredDigraphNetwork",gu);gu.prototype.createVertex=function(){return new Zu};gu.prototype.createEdge=function(){return new $u}; -function Zu(){fs.call(this);this.index=this.column=this.layer=-1;this.component=NaN;this.near=null;this.valid=!1;this.finish=this.Np=NaN;this.kn=0;this.EA=this.FA=null}v.Ma(Zu,fs);v.ga("LayeredDigraphVertex",Zu);function $u(){gs.call(this);this.forest=this.rev=this.valid=!1;this.portToPos=this.portFromPos=NaN;this.portToColOffset=this.portFromColOffset=0}v.Ma($u,gs);v.ga("LayeredDigraphEdge",$u); +function Zu(){fs.call(this);this.index=this.column=this.layer=-1;this.component=NaN;this.near=null;this.valid=!1;this.finish=this.Mp=NaN;this.kn=0;this.EA=this.FA=null}v.Ma(Zu,fs);v.ga("LayeredDigraphVertex",Zu);function $u(){gs.call(this);this.forest=this.rev=this.valid=!1;this.portToPos=this.portFromPos=NaN;this.portToColOffset=this.portFromColOffset=0}v.Ma($u,gs);v.ga("LayeredDigraphEdge",$u); function Y(){0b.level)return!1;a.removeChild(c.parent,c)}return!0}Y.prototype.removeChild=function(a,b){if(null!==a&&null!==b){for(var c=a.children,d=0,e=0;ef?Qv(a,k,ra,z,A):Rv(a,k,ra,z,A);ra=U.x;z=U.width;A=U.height;break;case Ev:for(m=0;ms&&(Mta&&(Aw(a,-ta,0,Ga,m-1),Bw(C,-ta,0),Bw(R,-ta,0),ta=0)}n.qa.l(ta,Z);z=Math.max(z,ba);A=Math.max(A,H+(0===Ia?0:x)+Ja.height);M=ba}else{0s&&(Zta&&(Aw(a,0,-ta,Ga,m-1),Bw(C,0,-ta),Bw(R,0,-ta),ta=0);n.qa.l(M,ta);A=Math.max(A,U);z=Math.max(z,H+(0===Ia?0:x)+Ja.width);Z=U}oa++}0h&&(h=0),135q&&(q=0),p===Fv&&(l+=u/2+a.T.y),k+=d+c):b?(null===a.comments?d>z&&(p=Fw(p,d-z,0),k=p.x,l=p.y,z=d,h=0):z=Dw(a,z,h),0>h&&(k-=h,h=0),135A&&(p=Fw(p,0,e-A),k=p.x,l=p.y,A=e,q=0):A=Ew(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].l(h+d,0),p[1].l(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].l(0,q+e),p[1].l(d,p[0].y),p[2].xf?Qv(a,k,ra,A,z):Rv(a,k,ra,A,z);ra=U.x;A=U.width;z=U.height;break;case Ev:for(m=0;ms&&(Mta&&(Aw(a,-ta,0,Ga,m-1),Bw(C,-ta,0),Bw(R,-ta,0),ta=0)}n.qa.l(ta,Z);A=Math.max(A,ba);z=Math.max(z,H+(0===Ia?0:x)+Ja.height);M=ba}else{0s&&(Zta&&(Aw(a,0,-ta,Ga,m-1),Bw(C,0,-ta),Bw(R,0,-ta),ta=0);n.qa.l(M,ta);z=Math.max(z,U);A=Math.max(A,H+(0===Ia?0:x)+Ja.width);Z=U}oa++}0h&&(h=0),135q&&(q=0),p===Fv&&(l+=u/2+a.T.y),k+=d+c):b?(null===a.comments?d>A&&(p=Fw(p,d-A,0),k=p.x,l=p.y,A=d,h=0):A=Dw(a,A,h),0>h&&(k-=h,h=0),135z&&(p=Fw(p,0,e-z),k=p.x,l=p.y,z=e,q=0):z=Ew(a,z,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].l(h+d,0),p[1].l(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].l(0,q+e),p[1].l(d,p[0].y),p[2].xc?Qv(b,e,oa,H,C):Rv(b,e,oa,H,C);oa=C.x;H=C.width;C=C.height;break;case Ev:for(k=0;kr&&(bar&&(Up&&(p=0),135z&&(z=0));b.Pa.l(p,z);b.jb.l(H,C)}} +M?0:w)+ra.width),U+=Ga+ra.height),Z++;0p&&(p=0),135A&&(A=0));b.Pa.l(p,A);b.jb.l(H,C)}} function Qv(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.jb.width;e=h.jb.height;return new B(c,0,d,e)}for(var k=a.nodeSpacing,l=a.rowSpacing,m=90===Lv(a),n=0,p=0,q=0,r=0;rm&&(d-=m),e=Math.max(e,Math.max(w, q)+b+s.height),0>h.qa.x&&(c=Jw(a,h.qa.x,!1,c,k))):(h.qa.l(d+b,c+k/2-h.T.y-h.Pa.y),d=Math.max(d,Math.max(x,p)+b+s.width),m=c+k/2-h.T.y-h.Pa.y,e=Math.max(e,m+s.height),0>m&&(e-=m),0>h.qa.y&&(c=Jw(a,h.qa.y,!0,c,k))));return new B(c,0,d,e)} @@ -1987,11 +1987,11 @@ function Jw(a,b,c,d,e){a=a.children;for(var f=a.length,h=0;hd&&(d=c+a.width);0>c&&(d-=c);return d;case Mv:return a.width>b?a.width:b;case Nv:return 2*a.T.x>b?a.width:b+a.width-2*a.T.x;case Dv:case sv:return d=Math.min(0,c),c=Math.max(b,c+a.width),Math.max(a.width,c-d);case Ev:return a.width-a.T.x+a.nodeSpacing/2+b;case Fv:return Math.max(a.width,a.T.x+a.nodeSpacing/2+b);default:return b}} function Ew(a,b,c){switch(a.alignment){case Bv:case Cw:var d=b;c+a.height>d&&(d=c+a.height);0>c&&(d-=c);return d;case Mv:return a.height>b?a.height:b;case Nv:return 2*a.T.y>b?a.height:b+a.height-2*a.T.y;case Dv:case sv:return d=Math.min(0,c),c=Math.max(b,c+a.height),Math.max(a.height,c-d);case Ev:return a.height-a.T.y+a.nodeSpacing/2+b;case Fv:return Math.max(a.height,a.T.y+a.nodeSpacing/2+b);default:return b}} function Fw(a,b,c){switch(a){case Cw:b/=2;c/=2;break;case Bv:b/=2;c/=2;break;case Mv:c=b=0;break;case Nv:break;default:v.k("Unhandled alignment value "+a.toString())}return new y(b,c)}function xw(a,b,c,d,e,f){b=Fw(b,c,d);Aw(a,b.x,b.y,e,f)}function Aw(a,b,c,d,e){if(0!==b||0!==c)for(a=a.children;d<=e;d++){var f=a[d].qa;f.x+=b;f.y+=c}} -function yw(a,b,c,d){var e=b.parent;switch(a.If){case bv:for(a=b.oc;a.next();)b=a.value,b.fromVertex===e&&b.Cs.l(c,d);break;case iv:for(a=b.lc;a.next();)b=a.value,b.toVertex===e&&b.Cs.l(c,d);break;default:v.k("Unhandled path value "+a.If.toString())}}function Bw(a,b,c){for(var d=0;dp.length||null===q||2>q.length))for(m=l=0;lt&&e.ye.y&&tb.length||null===l||2>l.length)d=null;else{n=Sv(a,b.length+l.length);for(d=f=e=0;ft&&e.ye.y&&tb.length||null===l||2>l.length)d=null;else{n=Sv(a,b.length+l.length);for(d=f=e=0;fe;)t=l[f++],n[d++].l(t.x+m,t.y);l=Sv(a,d);for(e=0;ep.length||null===f||2>f.length)e=null;else{n=Sv(a,p.length+f.length);for(m=x=l=0;lf;)e=p[l++],n[m++].l(e.x,e.y);e=Sv(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=Sv(a, +Math.max(0,c)+h.width;h=s}else{c=e;d=9999999;if(!(null===p||2>p.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=Sv(a, b.length+l.length);for(d=f=e=0;fe;)t=l[f++],n[d++].l(t.x,t.y+m);l=Sv(a,d);for(e=0;ep.length||null===f||2>f.length)e=null;else{n=Sv(a,p.length+f.length);for(m=x=l=0;lf;)e=p[l++],n[m++].l(e.x,e.y);e=Sv(a,m);for(l=0;l=a?0:135>=a?90:225>=a?180:315>=a?270:0} function Ov(a){var b=Lv(a),b=90===b||270===b,c=a.layerSpacing;if(0q.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-Pv(c))))):c.alignment===Mv?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-Pv(c))))):c.alignment===Mv?(r=d.left+b.x,0===b.x&&n.xq.y+c.rowIndent&&(r=Math.min(r,Math.max(n.y,r-Pv(c))))):c.alignment===Mv?(r=d.top+b.y,0===b.y&&n.yq.x+c.rowIndent&&(r=Math.min(r,Math.max(n.x,r-Pv(c))))):c.alignment===Mv?(r=d.left+b.x,0===b.x&&n.x