Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/jgraph/drawio.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Benson <david@jgraph.com>2017-08-03 18:55:52 +0300
committerDavid Benson <david@jgraph.com>2017-08-03 18:55:52 +0300
commit8be7e8750980539fcb317084399fa3f92ddc7e05 (patch)
treeee603e34ce6fe345b36d40f0e3c52ebe3010ba05
parentae7f8f03a0bd7b24269c9a14fe6de1a4d3274169 (diff)
7.0.0 releasev7.0.0
Former-commit-id: af7bdab90a3c497836cc041e72bbb0a497b575d8
-rw-r--r--ChangeLog6
-rw-r--r--VERSION2
-rw-r--r--src/com/mxgraph/io/gliffy/importer/GliffyDiagramConverter.java23
-rw-r--r--src/com/mxgraph/io/gliffy/importer/StencilTranslator.java7
-rw-r--r--src/com/mxgraph/io/gliffy/importer/gliffyTranslation.properties86
-rw-r--r--src/com/mxgraph/io/gliffy/model/GliffyObject.java20
-rw-r--r--war/cache.manifest2
-rw-r--r--war/js/app.min.js84
-rw-r--r--war/js/atlas-viewer.min.js44
-rw-r--r--war/js/atlas.min.js211
-rw-r--r--war/js/diagramly/Extensions.js1951
-rw-r--r--war/js/embed-static.min.js32
-rw-r--r--war/js/extensions.min.js127
-rw-r--r--war/js/mxgraph/Shapes.js9
-rw-r--r--war/js/reader.min.js32
-rw-r--r--war/js/viewer.min.js44
16 files changed, 1446 insertions, 1234 deletions
diff --git a/ChangeLog b/ChangeLog
index 22e541ad..60f27552 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+03-AUG-2017: 7.0.0
+
+- Improvements to Gliffy import
+- Improvements to Lucidchart import
+- Sent semantic versioning on holiday
+
02-AUG-2017: 6.9.9
- Fixes paste from Lucidchart
diff --git a/VERSION b/VERSION
index da7c4ecc..41225218 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-6.9.9 \ No newline at end of file
+7.0.0 \ No newline at end of file
diff --git a/src/com/mxgraph/io/gliffy/importer/GliffyDiagramConverter.java b/src/com/mxgraph/io/gliffy/importer/GliffyDiagramConverter.java
index 6557aa9e..ab712537 100644
--- a/src/com/mxgraph/io/gliffy/importer/GliffyDiagramConverter.java
+++ b/src/com/mxgraph/io/gliffy/importer/GliffyDiagramConverter.java
@@ -345,17 +345,18 @@ public class GliffyDiagramConverter
GliffyObject textObject = null;
String link = null;
- Graphic graphic = null;
+ Graphic graphic = gliffyObject.getGraphic();
+ String mxShapeName = StencilTranslator.translate(gliffyObject.uid, graphic != null && graphic.getShape() != null ? graphic.getShape().tid : null);
if (gliffyObject.isGroup())
{
- style.append("group;");
+ if (graphic == null || mxShapeName == null)
+ style.append("group;");
+
cell.setVertex(true);
}
else
{
- // groups don't have graphic
- graphic = gliffyObject.getGraphic();
textObject = gliffyObject.getTextObject();
}
@@ -368,8 +369,12 @@ public class GliffyDiagramConverter
GliffyShape shape = graphic.Shape;
cell.setVertex(true);
- style.append("shape=" + StencilTranslator.translate(gliffyObject.uid)).append(";");
- style.append("shadow=" + (shape.dropShadow ? 1 : 0)).append(";");
+
+ if (mxShapeName != null)
+ style.append("shape=").append(mxShapeName).append(";");
+
+ if(style.lastIndexOf("shadow=") == -1)
+ style.append("shadow=" + (shape.dropShadow ? 1 : 0)).append(";");
if(style.lastIndexOf("strokeWidth") == -1)
{
@@ -463,7 +468,7 @@ public class GliffyDiagramConverter
{
GliffyImage image = graphic.getImage();
cell.setVertex(true);
- style.append("shape=" + StencilTranslator.translate(gliffyObject.uid)).append(";");
+ style.append("shape=" + StencilTranslator.translate(gliffyObject.uid, null)).append(";");
style.append("image=" + image.getUrl()).append(";");
}
else if (gliffyObject.isSvg())
@@ -480,7 +485,7 @@ public class GliffyDiagramConverter
else if (gliffyObject.isSwimlane())
{
cell.setVertex(true);
- style.append(StencilTranslator.translate(gliffyObject.uid)).append(";");
+ style.append(StencilTranslator.translate(gliffyObject.uid, null)).append(";");
GliffyObject header = gliffyObject.children.get(0);// first child is the header of the swimlane
@@ -535,7 +540,7 @@ public class GliffyDiagramConverter
GliffyMindmap mindmap = rectangle.graphic.Mindmap;
- style.append("shape=" + StencilTranslator.translate(gliffyObject.uid)).append(";");
+ style.append("shape=" + StencilTranslator.translate(gliffyObject.uid, null)).append(";");
style.append("shadow=" + (mindmap.dropShadow ? 1 : 0)).append(";");
style.append("strokeWidth=" + mindmap.strokeWidth).append(";");
style.append("fillColor=" + mindmap.fillColor).append(";");
diff --git a/src/com/mxgraph/io/gliffy/importer/StencilTranslator.java b/src/com/mxgraph/io/gliffy/importer/StencilTranslator.java
index b78dc325..0694ea99 100644
--- a/src/com/mxgraph/io/gliffy/importer/StencilTranslator.java
+++ b/src/com/mxgraph/io/gliffy/importer/StencilTranslator.java
@@ -27,10 +27,15 @@ public class StencilTranslator
}
}
- public static String translate(String gliffyShapeKey)
+ public static String translate(String gliffyShapeKey, String tid)
{
String shape = translationTable.get(gliffyShapeKey);
+
+ if (shape == null && tid != null)
+ shape = translationTable.get(tid);
+
logger.info(gliffyShapeKey + " -> " + shape);
+
return shape;
}
}
diff --git a/src/com/mxgraph/io/gliffy/importer/gliffyTranslation.properties b/src/com/mxgraph/io/gliffy/importer/gliffyTranslation.properties
index 70575409..0f7ab988 100644
--- a/src/com/mxgraph/io/gliffy/importer/gliffyTranslation.properties
+++ b/src/com/mxgraph/io/gliffy/importer/gliffyTranslation.properties
@@ -103,16 +103,16 @@ com.gliffy.shape.swimlanes.swimlanes_v1.default.horizontal_four_lane_pool=swimla
# UML v2
#
# UML V2 CLASS
-com.gliffy.shape.uml.uml_v2.class.object=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
-com.gliffy.shape.uml.uml_v2.class.data_type=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
-com.gliffy.shape.uml.uml_v2.class.enumeration=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
-com.gliffy.shape.uml.uml_v2.class.interface=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
-com.gliffy.shape.uml.uml_v2.class.class2=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
-com.gliffy.shape.uml.uml_v2.class.class=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
-com.gliffy.shape.uml.uml_v2.class.package=folder;fontStyle=1;spacingTop=10;tabWidth=40;tabHeight=14;tabPosition=left
+com.gliffy.shape.uml.uml_v2.class.object=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
+com.gliffy.shape.uml.uml_v2.class.data_type=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
+com.gliffy.shape.uml.uml_v2.class.enumeration=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
+com.gliffy.shape.uml.uml_v2.class.interface=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
+com.gliffy.shape.uml.uml_v2.class.class2=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
+com.gliffy.shape.uml.uml_v2.class.class=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
+com.gliffy.shape.uml.uml_v2.class.package=rect;strokeColor=none;shadow=0;fillColor=none
com.gliffy.shape.uml.uml_v2.class.simple_class=rect
com.gliffy.shape.uml.uml_v2.class.primitive=rect
-com.gliffy.shape.uml.uml_v2.class.stereotype=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
+com.gliffy.shape.uml.uml_v2.class.stereotype=rect
com.gliffy.shape.uml.uml_v2.class.generalization=endArrow=block;endFill=0;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=top;endSize=12
com.gliffy.shape.uml.uml_v2.class.implements=endArrow=block;endFill=0;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=top;dashed=1;endSize=12
com.gliffy.shape.uml.uml_v2.class.association=endArrow=none;edgeStyle=orthogonalEdgeStyle
@@ -130,10 +130,10 @@ com.gliffy.shape.uml.uml_v2.class.note=note;size=10
com.gliffy.shape.uml.uml_v2.class.anchor_line=endArrow=none;endSize=12;dashed=1
# UML v1
com.gliffy.shape.uml.uml_v1.default.package=folder;fontStyle=1;spacingTop=10;tabWidth=40;tabHeight=14;tabPosition=left
-com.gliffy.shape.uml.uml_v1.default.class=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
+com.gliffy.shape.uml.uml_v1.default.class=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
com.gliffy.shape.uml.uml_v1.default.simple_class=rect
com.gliffy.shape.uml.uml_v1.default.note=note;size=10
-com.gliffy.shape.uml.uml_v1.default.object=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
+com.gliffy.shape.uml.uml_v1.default.object=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica
com.gliffy.shape.uml.uml_v1.default.interface=ellipse
com.gliffy.shape.uml.uml_v1.default.node=cube;size=10;direction=south
com.gliffy.shape.uml.uml_v1.default.component=component;align=left;spacingLeft=36
@@ -151,19 +151,19 @@ com.gliffy.shape.uml.uml_v1.default.self_message=curved=1
com.gliffy.shape.uml.uml_v1.default.actor=umlActor;verticalLabelPosition=bottom;verticalAlign=bottom
com.gliffy.shape.uml.uml_v1.default.use_case=ellipse
# UML v2 SEQUENCE
-com.gliffy.shape.uml.uml_v2.sequence.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill
-com.gliffy.shape.uml.uml_v2.sequence.interaction_use=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill
-com.gliffy.shape.uml.uml_v2.sequence.opt_combined_fragment=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill
-com.gliffy.shape.uml.uml_v2.sequence.loop_combined_fragment=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill
-com.gliffy.shape.uml.uml_v2.sequence.alt_combined_fragment=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill
+com.gliffy.shape.uml.uml_v2.sequence.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;labelX=26
+com.gliffy.shape.uml.uml_v2.sequence.interaction_use=stencil(rVNbDsIgEDwN/wjxAMbHPWi7taQIDWCtt5dmsVI0aqw/hBkmwyy7EL51jeiAMNoQviOMrSgNa8CXDAvXQemR7IWVolCAJ85b08JFVj56SN2AlX485XtCN4RvC1G2R2vOuiLsMLG1sRDZO9WJ0SWCk+nHaAPaxiDXFD28lNSJli8Qr9hbdZaDrd+qF4jz0KUyDlIi7GfPVUulsBmp6k8vOg3CT+o7/q7yZ/XH2p/r9jB4nE40tVDjJcOszVnXqVDyqJEqQXuwSPcJf5JVFYd/FujFOAcWPxjf3wA=);xSize=90;align=left;spacingLeft=10;overflow=fill
+com.gliffy.shape.uml.uml_v2.sequence.opt_combined_fragment=stencil(rVPREoIgEPwa3gmmD2jM/gP1TEYCB0nt78M5MtSmmuyFYZedZY87CE/aSjRAGK0IPxLGdpT61eN+gUXbQO6Q7ISVIlOAJ62zpoZeFi54SF2BlW485SmhB8KTTOT12ZqrLgg7TWxpLAT2QTVidAngYrox2oC2IcgtRk8vJXWk5RvEO/ZWvcjB9m/VG8TL0LkyLcSE38+eq5RKYTNi1Z9edBqEn9QP/F3la/XH2td1OxgcTieamsbhJcOszYuuU6HkWSOVg3Zgke4i/iKLIgz/LNCLcfYsfjCe3gE=);xSize=90;align=left;spacingLeft=10;overflow=fill
+com.gliffy.shape.uml.uml_v2.sequence.loop_combined_fragment=stencil(rVNbDoMgEDwN/xTSAzStvQeFVYkUDFJtb1/NokX7jOkPYYbJMLsshO+bUtRAGC0JPxDGNpT2a4+7BRZNDTIg2QqvxckAnjTBuwo6rUL00LYEr8NwyjNCd4TvT0JWhXcXqwg7TmzuPER2pGoxuERwdu0Q7Yq2McgtRQ8vo22i5dv14g37qGZzdYTv1HS9eBlaGtdASvT7WbtybQw+Rqr6U0enQVilHvFvlT+rv9b+XHeAa8DpRFPjXI23jBlfPjsVRhcWKQk2gEe6TfizVipO/yzRi3nuWfxhPLsD);xSize=90;align=left;spacingLeft=10;overflow=fill
+com.gliffy.shape.uml.uml_v2.sequence.alt_combined_fragment=stencil(rVNbDsIgEDwN/wjxAMbHPWi7WlKEBrCtt5dmsVI0aqw/hBkmwyy7EL51tWiBMFoTviOMrSgNa8B9hoVrofRIdsJKUSjAE+etaaCXlY8eUtdgpR9P+Z7QDeHbQpTNyZqLrgg7TOzRWIjsnWrF6BLB2XRjtAFtY5Brih5eSupEyxeIV+ytOsvB1m/VC8R56FIZBykR9rPnOkqlsBmp6k8vOg3CT+o7/q7yZ/XH2p/r9jB4nE40FcrjJcOszVnXqVDypJEqQXuwSHcJf5ZVFYd/FujFOAcWPxjf3wA=);xSize=90;align=left;spacingLeft=10;overflow=fill
com.gliffy.shape.basic.basic_v1.default.line=edgeStyle=none;endArrow=none
#composite
-com.gliffy.shape.uml.uml_v2.sequence.entity_lifeline=umlEntity
+com.gliffy.shape.uml.uml_v2.sequence.entity_lifeline=rect;fillColor=none;strokeColor=none
#composite
-com.gliffy.shape.uml.uml_v2.sequence.control_lifeline=umlControl
+com.gliffy.shape.uml.uml_v2.sequence.control_lifeline=rect;fillColor=none;strokeColor=none
#composite
-com.gliffy.shape.uml.uml_v2.sequence.boundary_lifeline=umlBoundary
-com.gliffy.shape.uml.uml_v2.sequence.lifeline=umlLifeline;perimeter=lifelinePerimeter
+com.gliffy.shape.uml.uml_v2.sequence.boundary_lifeline=rect;fillColor=none;strokeColor=none
+com.gliffy.shape.uml.uml_v2.sequence.lifeline=rect;fillColor=none;strokeColor=none
com.gliffy.shape.uml.uml_v2.sequence.activation=rect
com.gliffy.shape.uml.uml_v2.sequence.destruction=mxgraph.sysml.x
com.gliffy.shape.uml.uml_v2.sequence.init_message=endArrow=open;endSize=12;startArrow=none;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=bottom;dashed=1
@@ -173,7 +173,7 @@ com.gliffy.shape.uml.uml_v2.sequence.async_message=endArrow=open;endSize=12;star
com.gliffy.shape.uml.uml_v2.sequence.return_message=endArrow=none;startSize=12;startArrow=open;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=bottom;dashed=1
com.gliffy.shape.uml.uml_v2.sequence.self_message=curved=1
com.gliffy.shape.uml.uml_v2.sequence.actor=umlActor;verticalLabelPosition=bottom;verticalAlign=top
-#com.gliffy.shape.uml.uml_v2.sequence.concurrent=
+com.gliffy.shape.uml.uml_v2.sequence.concurrent=stencil(nZFNDsIgEIVPwx6ZjS4NtveYtkRIKxDAVm8vP5qA3RgTNrw330zmDQHuJVpBGEVvxRgIXAhjKzqFwxJlFh0fnJnFpqYgi620FE6F5EJH6JkAH3Ccr87c9fSW6Ck94BYTVUlZvZk1zXyUfrTMeda/fg8tSlfQgbbYv9zxR66lPl36r3WjUm0c083ZNXW5aJdXVsstoHsB);dashed=1
com.gliffy.shape.uml.uml_v2.sequence.continuation=rect;rounded=1
com.gliffy.shape.uml.uml_v2.sequence.gate=rect
com.gliffy.shape.uml.uml_v2.sequence.constraint=edgeStyle=none;endArrow=none;dashed=1
@@ -195,19 +195,19 @@ com.gliffy.shape.uml.uml_v2.activity.jump_node=ellipse
com.gliffy.shape.uml.uml_v2.activity.control_flow=edgeStyle=none;endArrow=open;endSize=12
com.gliffy.shape.uml.uml_v2.activity.object_flow=edgeStyle=none;endArrow=open;dashed=1;endSize=12
#com.gliffy.shape.uml.uml_v2.activity.exception_flow=
-com.gliffy.shape.uml.uml_v2.activity.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill
+com.gliffy.shape.uml.uml_v2.activity.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;labelX=32
com.gliffy.shape.uml.uml_v2.activity.object_node=rect
-com.gliffy.shape.uml.uml_v2.activity.structured_node=rounded=1;dashed=1
-com.gliffy.shape.uml.uml_v2.activity.region=rounded=1;dashed=1
+com.gliffy.shape.uml.uml_v2.activity.structured_node=rect;rounded=1;dashed=1
+com.gliffy.shape.uml.uml_v2.activity.region=rect;rounded=1;dashed=1
com.gliffy.shape.uml.uml_v2.activity.note=note;size=10
com.gliffy.shape.uml.uml_v2.activity.anchor_line=edgeStyle=none;endArrow=none;dashed=1
# UML v2 STATE MACHINE
-com.gliffy.shape.uml.uml_v2.state_machine.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill
-com.gliffy.shape.uml.uml_v2.state_machine.orthoganal_state=swimlane;rounded=1;startSize=30;arcSize=10
-com.gliffy.shape.uml.uml_v2.state_machine.composite_state=swimlane;rounded=1;startSize=30;arcSize=10
+com.gliffy.shape.uml.uml_v2.state_machine.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;labelX=32
+com.gliffy.shape.uml.uml_v2.state_machine.orthoganal_state=rect;rounded=1;startSize=30;arcSize=10
+com.gliffy.shape.uml.uml_v2.state_machine.composite_state=rect;rounded=1;startSize=30;arcSize=10
com.gliffy.shape.uml.uml_v2.state_machine.state=rect;rounded=1
# temporary
-com.gliffy.shape.uml.uml_v2.state_machine.submachine_state=rect;rounded=1
+com.gliffy.shape.uml.uml_v2.state_machine.submachine_state=ext;symbol0=ellipse;symbol0Width=10;symbol0Height=10;symbol0Align=right;symbol0VerticalAlign=bottom;symbol0Spacing=5;symbol0VSpacing=5;symbol1=ellipse;symbol1Width=10;symbol1Height=10;symbol1Align=right;symbol1VerticalAlign=bottom;symbol1Spacing=25;symbol1VSpacing=5;symbol2=line;symbol2Width=10;symbol2Height=10;symbol2Align=right;symbol2VerticalAlign=bottom;symbol2Spacing=15;symbol2VSpacing=5;rounded=1;arcSize=10
com.gliffy.shape.uml.uml_v2.state_machine.final_state=mxgraph.bpmn.shape;verticalLabelPosition=bottom;verticalAlign=top;perimeter=ellipsePerimeter;outline=end;symbol=terminate
com.gliffy.shape.uml.uml_v2.state_machine.initial_state=ellipse
com.gliffy.shape.uml.uml_v2.state_machine.entry_point=ellipse
@@ -231,8 +231,8 @@ com.gliffy.shape.uml.uml_v2.deployment.artifact=note;size=10
com.gliffy.shape.uml.uml_v2.deployment.component1=component;align=left;spacingLeft=36
com.gliffy.shape.uml.uml_v2.deployment.component2=ext;symbol0=component;symbol0Width=20;symbol0Height=20;symbol0Align=right;symbol0VerticalAlign=top;symbol0Spacing=4;symbol0ArcSpacing=0.25;jettyWidth=8;jettyHeight=4;overflow=fill
com.gliffy.shape.uml.uml_v2.deployment.interface=ellipse
-#com.gliffy.shape.uml.uml_v2.deployment.simple_interface=
-#com.gliffy.shape.uml.uml_v2.deployment.required_interface=
+com.gliffy.shape.uml.uml_v2.deployment.simple_interface=stencil(bVHRDsIgDPwaHpewERN9NFP/o5s4yHCQgm7+vWydBqYJL3dXer2WidorcJJVHLyTbWDixKrqCaihMZGuouID2l6O+hoUyXpQEnWYVXFm/MhE3UDbd2gfw3Wl+GF+onYw/0qohb3b5+w5Ub8dJ6MXwZITvny7A7ZRxk85VeMrg/97rWgqYNK+QBsgaDtkmgHsZBEtipuBLpP8KKVL6DKbK0kZySRoXOqysjSCNEY7n4Qut6EJjgT3K1Q5TDvetDFbHxppmefnIgtL1xbnNw==)
+com.gliffy.shape.uml.uml_v2.deployment.required_interface=stencil(bZDNDoMgEISfhiMJQnrosbH2PValSrRCFurP25cfbSRtwmW+GXZhiChtD0YSzsAa2Tgi7oTzGVBBPXrMvWMd6kEuqnV9stXUS1QuuKIi7EZEWUMzdKjfU7sjdg1HlAbCrROK9KXnsHNN8y4sLdqSLFjSj+90wMbbeMRTGrdM/p+1q5XCqixF7cApPWXeCNhJ6lfQ5whdZtlFSnPCRfau4zOenH7pG419ZbkY+uko0tS/qD4=)
com.gliffy.shape.uml.uml_v2.deployment.port=rect;verticalLabelPosition=bottom;verticalAlign=top
com.gliffy.shape.uml.uml_v2.deployment.instance=rect
com.gliffy.shape.uml.uml_v2.deployment.instance_specification=ext;symbol0=note;symbol0Width=20;symbol0Height=20;symbol0Align=right;symbol0VerticalAlign=top;symbol0Spacing=4;symbol0ArcSpacing=0.25;jettyWidth=8;jettyHeight=4;overflow=fill;align=center;verticalAlign=bottom;size=5
@@ -268,7 +268,7 @@ com.gliffy.shape.uml.uml_v2.use_case.use_case=ellipse
com.gliffy.shape.uml.uml_v2.use_case.actor=umlActor;verticalLabelPosition=bottom;verticalAlign=bottom
com.gliffy.shape.uml.uml_v2.use_case.association=edgeStyle=none
com.gliffy.shape.uml.uml_v2.use_case.system=rect
-com.gliffy.shape.uml.uml_v2.use_case.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill
+com.gliffy.shape.uml.uml_v2.use_case.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;labelX=26
com.gliffy.shape.uml.uml_v2.use_case.include=edgeStyle=none;dashed=1
com.gliffy.shape.uml.uml_v2.use_case.extend=edgeStyle=none;dashed=1
com.gliffy.shape.uml.uml_v2.use_case.dependency=edgeStyle=none;dashed=1
@@ -303,7 +303,7 @@ com.gliffy.shape.erd.erd_v1.default.many_optional_many_mandatory=edgeStyle=ortho
# BPMN v1
#
# BPMN v1 EVENTS
-com.gliffy.shape.bpmn.bpmn_v1.events.general_start=mxgraph.bpmn.shape;perimeter=ellipsePerimeter;outline=standard;symbol=general
+com.gliffy.shape.bpmn.bpmn_v1.events.general_start=mxgraph.bpmn.shape;perimeter=ellipsePerimeter;outline=standard;symbol=general;strokeWidth=1
com.gliffy.shape.bpmn.bpmn_v1.events.general_intermediate=mxgraph.bpmn.shape;perimeter=ellipsePerimeter;outline=throwing;symbol=general
com.gliffy.shape.bpmn.bpmn_v1.events.general_end=mxgraph.bpmn.shape;perimeter=ellipsePerimeter;outline=end;symbol=general
com.gliffy.shape.bpmn.bpmn_v1.events.message_start=mxgraph.bpmn.shape;perimeter=ellipsePerimeter;outline=standard;symbol=message
@@ -330,7 +330,7 @@ com.gliffy.shape.bpmn.bpmn_v1.events.multiple_end=mxgraph.bpmn.shape;perimeter=e
com.gliffy.shape.bpmn.bpmn_v1.activities.multiple_instances=mxgraph.ios7.icons.pause;fillColor=#000000
com.gliffy.shape.bpmn.bpmn_v1.activities.compensation=mxgraph.bpmn.compensation;html=1;fillColor=#000000;verticalLabelPosition=bottom;verticalAlign=top
com.gliffy.shape.bpmn.bpmn_v1.activities.ad_hoc=mxgraph.bpmn.ad_hoc;fillColor=#000000;verticalLabelPosition=bottom;verticalAlign=top
-com.gliffy.shape.bpmn.bpmn_v1.activities.looping=mxgraph.bpmn.loop;verticalLabelPosition=bottom;verticalAlign=top
+com.gliffy.shape.bpmn.bpmn_v1.activities.looping=mxgraph.bpmn.loop;verticalLabelPosition=bottom;verticalAlign=top;strokeWidth=5
com.gliffy.shape.bpmn.bpmn_v1.activities.process=ext;rounded=1
com.gliffy.shape.bpmn.bpmn_v1.activities.transaction=ext;rounded=1;double=1
com.gliffy.shape.bpmn.bpmn_v1.activities.expanded_sub_process=ext;rounded=1
@@ -1309,10 +1309,10 @@ com.gliffy.shape.ui.ui_v3.containers_content.graph_line=mxgraph.mockup.graphics.
com.gliffy.shape.ui.ui_v3.containers_content.transparent_rect=rect
com.gliffy.shape.ui.ui_v3.containers_content.map=mxgraph.mockup.misc.map
com.gliffy.shape.ui.ui_v3.containers_content.graph_pie=mxgraph.mockup.graphics.pieChart;strokeColor=#008cff;parts=10,20,35;partColors=#e0e0e0,#d0d0d0,#c0c0c0,#b0b0b0,#a0a0a0
-com.gliffy.shape.ui.ui_v3.containers_content.note=rect
+com.gliffy.shape.ui.ui_v3.containers_content.note=rect;fillColor=#fff0ab;strokeColor=none;gradientColor=#ffe77c;shadow=1
#com.gliffy.shape.ui.ui_v3.containers_content.table_three_by_three=
# UI v3 TABLES
-#needs custom code
+#Treated as groups
#com.gliffy.shape.table.table_v2.default.table_horizontal_and_vertical_title_three_by_two=
#com.gliffy.shape.table.table_v2.default.table_horizontal_title_three_by_two=
#com.gliffy.shape.table.table_v2.default.table_three_by_three=
@@ -1564,4 +1564,20 @@ com.gliffy.shape.floorplan.floorplan_v2.miscellaneous.piano=mxgraph.floorplan.pi
#
com.gliffy.shape.mindmap.mindmap_v1.default.main_topic=rect;rounded=1
com.gliffy.shape.mindmap.mindmap_v1.default.subtopic=rect;rounded=1
-com.gliffy.shape.mindmap.mindmap_v1.default.child_node=rect;rounded=1;dashed=1 \ No newline at end of file
+com.gliffy.shape.mindmap.mindmap_v1.default.child_node=rect;rounded=1;dashed=1
+
+#
+# Child shape TID
+#
+com.gliffy.stencil.alt_combined_fragment.alt_area_v1=rect;shadow=0;fillColor=none;strokeColor=none;opacity=0
+com.gliffy.stencil.loop_combined_fragment.uml_v2=rect;shadow=0;fillColor=none;strokeColor=none;opacity=0
+com.gliffy.stencil.opt_combined_fragment.uml_v2=rect;shadow=0;fillColor=none;strokeColor=none;opacity=0
+com.gliffy.stencil.interaction_use.uml_v2=rect;shadow=0;fillColor=none;strokeColor=none;opacity=0
+com.gliffy.stencil.rectangle.no_fill_no_line_v1=rect;fillColor=none;strokeColor=none
+com.gliffy.stencil.alt_combined_fragment.dotted_line_area_v1=partialRectangle;top=0;right=0;left=0;fillColor=none;dashed=1;dashPattern=10 4;shadow=0
+com.gliffy.stencil.rectangle.no_fill_line_bottom_v1=partialRectangle;top=0;right=0;left=0;fillColor=none
+com.gliffy.stencil.rectangle.no_fill_line_bottom_dashed_v1=partialRectangle;top=0;right=0;left=0;fillColor=none;dashed=1;dashPattern=10 4;shadow=0
+com.gliffy.stencil.boundary_lifeline.uml_v2=umlBoundary
+com.gliffy.stencil.object_timeline.uml_v1=line;direction=south;dashed=1
+com.gliffy.stencil.control_lifeline.uml_v2=umlControl
+com.gliffy.stencil.entity_lifeline.uml_v2=umlEntity \ No newline at end of file
diff --git a/src/com/mxgraph/io/gliffy/model/GliffyObject.java b/src/com/mxgraph/io/gliffy/model/GliffyObject.java
index b51d3d56..938025c6 100644
--- a/src/com/mxgraph/io/gliffy/model/GliffyObject.java
+++ b/src/com/mxgraph/io/gliffy/model/GliffyObject.java
@@ -114,11 +114,10 @@ public class GliffyObject implements PostDeserializable
GROUP_SHAPES.add("com.gliffy.shape.basic.basic_v1.default.group");
GROUP_SHAPES.add("com.gliffy.shape.erd.erd_v1.default.entity_with_attributes");
GROUP_SHAPES.add("com.gliffy.shape.erd.erd_v1.default.entity_with_multiple_attributes");
-// GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.frame");//
-// GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.interaction_use");//
-// GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.opt_combined_fragment");//
-// GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.loop_combined_fragment");//
-// GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.alt_combined_fragment");//
+ GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.interaction_use");
+ GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.opt_combined_fragment");
+ GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.loop_combined_fragment");
+ GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.alt_combined_fragment");
GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.class.object");
GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.class.enumeration");
GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.class.interface");
@@ -127,8 +126,11 @@ public class GliffyObject implements PostDeserializable
GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.class.data_type");
GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.state_machine.composite_state");
GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.state_machine.orthoganal_state");
- //GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.use_case.frame");//???
- //GROUP_SHAPES.add("");
+ GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.class.package");
+ GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.boundary_lifeline");
+ GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.lifeline");
+ GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.entity_lifeline");
+ GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.control_lifeline");
MINDMAP_SHAPES.add("com.gliffy.shape.mindmap.mindmap_v1.default.main_topic");
MINDMAP_SHAPES.add("com.gliffy.shape.mindmap.mindmap_v1.default.subtopic");
@@ -215,7 +217,9 @@ public class GliffyObject implements PostDeserializable
public boolean isGroup()
{
- return uid != null && GROUP_SHAPES.contains(uid);
+ return (uid != null && (GROUP_SHAPES.contains(uid) || uid.startsWith("com.gliffy.shape.table")))
+ //Since we treat text in a different way (added as cell value instead of another child cell, this is probably the best way to detect groups when uid is null)
+ || (uid == null && hasChildren() && !children.get(0).isText());
}
public boolean isMindmap()
diff --git a/war/cache.manifest b/war/cache.manifest
index 5fd3d1fb..e58bd188 100644
--- a/war/cache.manifest
+++ b/war/cache.manifest
@@ -1,7 +1,7 @@
CACHE MANIFEST
# THIS FILE WAS GENERATED. DO NOT MODIFY!
-# 08/02/2017 07:37 AM
+# 08/03/2017 04:40 PM
app.html
index.html?offline=1
diff --git a/war/js/app.min.js b/war/js/app.min.js
index c1c0d4f5..2e991c63 100644
--- a/war/js/app.min.js
+++ b/war/js/app.min.js
@@ -2530,10 +2530,10 @@ var B=mxEdgeHandler.prototype.destroy;mxEdgeHandler.prototype.destroy=function()
a;this.canvas.setLineJoin("round");this.canvas.setLineCap("round");this.defaultVariation=b;this.originalLineTo=this.canvas.lineTo;this.canvas.lineTo=mxUtils.bind(this,t.prototype.lineTo);this.originalMoveTo=this.canvas.moveTo;this.canvas.moveTo=mxUtils.bind(this,t.prototype.moveTo);this.originalClose=this.canvas.close;this.canvas.close=mxUtils.bind(this,t.prototype.close);this.originalQuadTo=this.canvas.quadTo;this.canvas.quadTo=mxUtils.bind(this,t.prototype.quadTo);this.originalCurveTo=this.canvas.curveTo;
this.canvas.curveTo=mxUtils.bind(this,t.prototype.curveTo);this.originalArcTo=this.canvas.arcTo;this.canvas.arcTo=mxUtils.bind(this,t.prototype.arcTo)}function r(){mxRectangleShape.call(this)}function v(){mxActor.call(this)}function u(){mxActor.call(this)}function y(){mxRectangleShape.call(this)}function z(){mxRectangleShape.call(this)}function A(){mxCylinder.call(this)}function F(){mxShape.call(this)}function G(){mxShape.call(this)}function w(){mxEllipse.call(this)}function J(){mxShape.call(this)}
function K(){mxShape.call(this)}function H(){mxRectangleShape.call(this)}function D(){mxShape.call(this)}function I(){mxShape.call(this)}function N(){mxShape.call(this)}function L(){mxCylinder.call(this)}function O(){mxDoubleEllipse.call(this)}function P(){mxDoubleEllipse.call(this)}function B(){mxArrowConnector.call(this);this.spacing=0}function E(){mxArrowConnector.call(this);this.spacing=0}function C(){mxActor.call(this)}function x(){mxRectangleShape.call(this)}function S(){mxActor.call(this)}
-function V(){mxActor.call(this)}function T(){mxActor.call(this)}function R(){mxActor.call(this)}function ja(){mxActor.call(this)}function X(){mxActor.call(this)}function ka(){mxActor.call(this)}function la(){mxActor.call(this)}function Y(){mxActor.call(this)}function W(){mxActor.call(this)}function Z(){mxEllipse.call(this)}function aa(){mxEllipse.call(this)}function ba(){mxEllipse.call(this)}function ea(){mxRhombus.call(this)}function ca(){mxEllipse.call(this)}function na(){mxEllipse.call(this)}function U(){mxEllipse.call(this)}
-function fa(){mxEllipse.call(this)}function Q(){mxActor.call(this)}function oa(){mxActor.call(this)}function pa(){mxActor.call(this)}function ya(a,b,c,d,e,f,g,h,k,l){g+=k;var ga=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(ga.x-e-g,ga.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));
-f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var va=Math.tan(mxUtils.toRadians(30)),ma=(.5-va)/2;mxUtils.extend(c,mxActor);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/va);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ma);a.lineTo(b,.25*b);a.lineTo(.5*
-b,(.5-ma)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=c;mxUtils.extend(d,mxCylinder);d.prototype.size=20;d.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+va));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ma)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ma)*b),a.lineTo(.5*b,(1-ma)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ma),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ma)*b),a.lineTo(0,.75*b),a.close());a.end()};
+function V(){mxActor.call(this)}function T(){mxActor.call(this)}function R(){mxActor.call(this)}function ia(){mxActor.call(this)}function X(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function Y(){mxActor.call(this)}function W(){mxActor.call(this)}function Z(){mxEllipse.call(this)}function aa(){mxEllipse.call(this)}function ba(){mxEllipse.call(this)}function ea(){mxRhombus.call(this)}function ca(){mxEllipse.call(this)}function ma(){mxEllipse.call(this)}function U(){mxEllipse.call(this)}
+function fa(){mxEllipse.call(this)}function Q(){mxActor.call(this)}function na(){mxActor.call(this)}function oa(){mxActor.call(this)}function za(a,b,c,d,e,f,g,h,k,l){g+=k;var ga=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(ga.x-e-g,ga.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));
+f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var va=Math.tan(mxUtils.toRadians(30)),la=(.5-va)/2;mxUtils.extend(c,mxActor);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/va);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*la);a.lineTo(b,.25*b);a.lineTo(.5*
+b,(.5-la)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=c;mxUtils.extend(d,mxCylinder);d.prototype.size=20;d.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+va));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-la)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-la)*b),a.lineTo(.5*b,(1-la)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*la),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-la)*b),a.lineTo(0,.75*b),a.close());a.end()};
mxCellRenderer.prototype.defaultShapes.isoCube=d;mxUtils.extend(b,mxCylinder);b.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(e/2,Math.round(e/8)+this.strokewidth-1);if(f&&null!=this.fill||!f&&null==this.fill)a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,-b);f||(a.moveTo(0,b),a.curveTo(0,
-b/3,d,-b/3,d,b),a.lineTo(d,e-b),a.curveTo(d,e+b/3,0,e+b/3,0,e-b),a.close())};b.prototype.getLabelBounds=function(a){var b=2.5*Math.min(a.height/2,Math.round(a.height/8)+this.strokewidth-1);if(!this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST)||this.flipV&&this.direction==mxConstants.DIRECTION_WEST)a.y+=b,a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH||this.flipV&&this.direction==mxConstants.DIRECTION_NORTH)a.width-=b;else if(!this.flipV&&
this.direction==mxConstants.DIRECTION_WEST||this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST))a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_NORTH||this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH)a.x+=b,a.width-=b;return a};mxCellRenderer.prototype.defaultShapes.datastore=b;mxUtils.extend(e,mxCylinder);e.prototype.size=30;e.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,
@@ -2548,18 +2548,18 @@ mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,e),new mxPoint(b,0),
function(a,b){this.originalMoveTo.apply(this.canvas,arguments);this.lastX=a;this.lastY=b;this.firstX=a;this.firstY=b};t.prototype.close=function(){null!=this.firstX&&null!=this.firstY&&(this.lineTo(this.firstX,this.firstY),this.originalClose.apply(this.canvas,arguments));this.originalClose.apply(this.canvas,arguments)};t.prototype.quadTo=function(a,b,c,d){this.originalQuadTo.apply(this.canvas,arguments);this.lastX=c;this.lastY=d};t.prototype.curveTo=function(a,b,c,d,e,f){this.originalCurveTo.apply(this.canvas,
arguments);this.lastX=e;this.lastY=f};t.prototype.arcTo=function(a,b,c,d,e,f,g){this.originalArcTo.apply(this.canvas,arguments);this.lastX=f;this.lastY=g};t.prototype.lineTo=function(a,b){if(null!=this.lastX&&null!=this.lastY){var c=function(a){return"number"===typeof a?a?0>a?-1:1:a===a?0:NaN:NaN},d=Math.abs(a-this.lastX),e=Math.abs(b-this.lastY),f=Math.sqrt(d*d+e*e);if(2>f){this.originalLineTo.apply(this.canvas,arguments);this.lastX=a;this.lastY=b;return}var g=Math.round(f/10),h=this.defaultVariation;
5>g&&(g=5,h/=3);for(var ga=c(a-this.lastX)*d/g,c=c(b-this.lastY)*e/g,d=d/f,e=e/f,f=0;f<g;f++){var k=(Math.random()-.5)*h;this.originalLineTo.call(this.canvas,ga*f+this.lastX-k*e,c*f+this.lastY-k*d)}this.originalLineTo.call(this.canvas,a,b)}else this.originalLineTo.apply(this.canvas,arguments);this.lastX=a;this.lastY=b};t.prototype.destroy=function(){this.canvas.lineTo=this.originalLineTo;this.canvas.moveTo=this.originalMoveTo;this.canvas.close=this.originalClose;this.canvas.quadTo=this.originalQuadTo;
-this.canvas.curveTo=this.originalCurveTo;this.canvas.arcTo=this.originalArcTo};var Ca=mxShape.prototype.paint;mxShape.prototype.defaultJiggle=1.5;mxShape.prototype.paint=function(a){null!=this.style&&"0"!=mxUtils.getValue(this.style,"comic","0")&&null==a.handHiggle&&(a.handJiggle=new t(a,mxUtils.getValue(this.style,"jiggle",this.defaultJiggle)));Ca.apply(this,arguments);null!=a.handJiggle&&(a.handJiggle.destroy(),delete a.handJiggle)};mxRhombus.prototype.defaultJiggle=2;var Da=mxRectangleShape.prototype.isHtmlAllowed;
-mxRectangleShape.prototype.isHtmlAllowed=function(){return(null==this.style||"0"==mxUtils.getValue(this.style,"comic","0"))&&Da.apply(this,arguments)};var Ea=mxRectangleShape.prototype.paintBackground;mxRectangleShape.prototype.paintBackground=function(a,b,c,d,e){if(null==a.handJiggle)Ea.apply(this,arguments);else{var f=!0;null!=this.style&&(f="1"==mxUtils.getValue(this.style,mxConstants.STYLE_POINTER_EVENTS,"1"));if(f||null!=this.fill&&this.fill!=mxConstants.NONE||null!=this.stroke&&this.stroke!=
+this.canvas.curveTo=this.originalCurveTo;this.canvas.arcTo=this.originalArcTo};var Da=mxShape.prototype.paint;mxShape.prototype.defaultJiggle=1.5;mxShape.prototype.paint=function(a){null!=this.style&&"0"!=mxUtils.getValue(this.style,"comic","0")&&null==a.handHiggle&&(a.handJiggle=new t(a,mxUtils.getValue(this.style,"jiggle",this.defaultJiggle)));Da.apply(this,arguments);null!=a.handJiggle&&(a.handJiggle.destroy(),delete a.handJiggle)};mxRhombus.prototype.defaultJiggle=2;var Ea=mxRectangleShape.prototype.isHtmlAllowed;
+mxRectangleShape.prototype.isHtmlAllowed=function(){return(null==this.style||"0"==mxUtils.getValue(this.style,"comic","0"))&&Ea.apply(this,arguments)};var Fa=mxRectangleShape.prototype.paintBackground;mxRectangleShape.prototype.paintBackground=function(a,b,c,d,e){if(null==a.handJiggle)Fa.apply(this,arguments);else{var f=!0;null!=this.style&&(f="1"==mxUtils.getValue(this.style,mxConstants.STYLE_POINTER_EVENTS,"1"));if(f||null!=this.fill&&this.fill!=mxConstants.NONE||null!=this.stroke&&this.stroke!=
mxConstants.NONE)f||null!=this.fill&&this.fill!=mxConstants.NONE||(a.pointerEvents=!1),a.begin(),this.isRounded?(f=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100,f=Math.min(d*f,e*f),a.moveTo(b+f,c),a.lineTo(b+d-f,c),a.quadTo(b+d,c,b+d,c+f),a.lineTo(b+d,c+e-f),a.quadTo(b+d,c+e,b+d-f,c+e),a.lineTo(b+f,c+e),a.quadTo(b,c+e,b,c+e-f),a.lineTo(b,c+f),a.quadTo(b,c,b+f,c)):(a.moveTo(b,c),a.lineTo(b+d,c),a.lineTo(b+d,c+e),a.lineTo(b,c+e),a.lineTo(b,c)),
-a.close(),a.end(),a.fillAndStroke()}};var Fa=mxRectangleShape.prototype.paintForeground;mxRectangleShape.prototype.paintForeground=function(a,b,c,d,e){null==a.handJiggle&&Fa.apply(this,arguments)};mxUtils.extend(r,mxRectangleShape);r.prototype.size=.1;r.prototype.isHtmlAllowed=function(){return!1};r.prototype.getLabelBounds=function(a){if(mxUtils.getValue(this.state.style,mxConstants.STYLE_HORIZONTAL,!0)==(null==this.direction||this.direction==mxConstants.DIRECTION_EAST||this.direction==mxConstants.DIRECTION_WEST)){var b=
+a.close(),a.end(),a.fillAndStroke()}};var Ga=mxRectangleShape.prototype.paintForeground;mxRectangleShape.prototype.paintForeground=function(a,b,c,d,e){null==a.handJiggle&&Ga.apply(this,arguments)};mxUtils.extend(r,mxRectangleShape);r.prototype.size=.1;r.prototype.isHtmlAllowed=function(){return!1};r.prototype.getLabelBounds=function(a){if(mxUtils.getValue(this.state.style,mxConstants.STYLE_HORIZONTAL,!0)==(null==this.direction||this.direction==mxConstants.DIRECTION_EAST||this.direction==mxConstants.DIRECTION_WEST)){var b=
a.width,c=a.height;a=new mxRectangle(a.x,a.y,b,c);var d=b*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));if(this.isRounded)var e=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100,d=Math.max(d,Math.min(b*e,c*e));a.x+=d;a.width-=2*d}return a};r.prototype.paintForeground=function(a,b,c,d,e){var f=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));if(this.isRounded)var g=mxUtils.getValue(this.style,
mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100,f=Math.max(f,Math.min(d*g,e*g));a.begin();a.moveTo(b+f,c);a.lineTo(b+f,c+e);a.moveTo(b+d-f,c);a.lineTo(b+d-f,c+e);a.end();a.stroke();mxRectangleShape.prototype.paintForeground.apply(this,arguments)};mxCellRenderer.prototype.defaultShapes.process=r;mxUtils.extend(v,mxActor);v.prototype.size=.2;v.prototype.redrawPath=function(a,b,c,d,e){b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c=mxUtils.getValue(this.style,
mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,0),new mxPoint(d-b,0),new mxPoint(d,e/2),new mxPoint(d-b,e),new mxPoint(0,e),new mxPoint(b,e/2)],this.isRounded,c,!0);a.end()};mxCellRenderer.prototype.defaultShapes.step=v;mxUtils.extend(u,mxHexagon);u.prototype.size=.25;u.prototype.redrawPath=function(a,b,c,d,e){b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/
2;this.addPoints(a,[new mxPoint(b,0),new mxPoint(d-b,0),new mxPoint(d,.5*e),new mxPoint(d-b,e),new mxPoint(b,e),new mxPoint(0,.5*e)],this.isRounded,c,!0)};mxCellRenderer.prototype.defaultShapes.hexagon=u;mxUtils.extend(y,mxRectangleShape);y.prototype.isHtmlAllowed=function(){return!1};y.prototype.paintForeground=function(a,b,c,d,e){var f=Math.min(d/5,e/5)+1;a.begin();a.moveTo(b+d/2,c+f);a.lineTo(b+d/2,c+e-f);a.moveTo(b+f,c+e/2);a.lineTo(b+d-f,c+e/2);a.end();a.stroke();mxRectangleShape.prototype.paintForeground.apply(this,
-arguments)};mxCellRenderer.prototype.defaultShapes.plus=y;var za=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};mxRhombus.prototype.paintVertexShape=function(a,b,c,d,e){za.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var f=2*Math.max(2,this.strokewidth+
-1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0<d&&0<e&&(a.setShadow(!1),za.apply(this,[a,b,c,d,e]))}};mxUtils.extend(z,mxRectangleShape);z.prototype.isHtmlAllowed=function(){return!1};z.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};z.prototype.paintForeground=function(a,b,c,
+arguments)};mxCellRenderer.prototype.defaultShapes.plus=y;var Aa=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};mxRhombus.prototype.paintVertexShape=function(a,b,c,d,e){Aa.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var f=2*Math.max(2,this.strokewidth+
+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0<d&&0<e&&(a.setShadow(!1),Aa.apply(this,[a,b,c,d,e]))}};mxUtils.extend(z,mxRectangleShape);z.prototype.isHtmlAllowed=function(){return!1};z.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};z.prototype.paintForeground=function(a,b,c,
d,e){if(null!=this.style){if(!this.outline&&1==this.style["double"]){var f=Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0<d&&0<e&&mxRectangleShape.prototype.paintBackground.apply(this,arguments)}a.setDashed(!1);var f=0,g;do{g=mxCellRenderer.prototype.defaultShapes[this.style["symbol"+f]];if(null!=g){var h=this.style["symbol"+f+"Align"],k=this.style["symbol"+f+"VerticalAlign"],ga=this.style["symbol"+f+"Width"],l=this.style["symbol"+f+"Height"],
-m=this.style["symbol"+f+"Spacing"]||0,ha=this.style["symbol"+f+"ArcSpacing"];null!=ha&&(m+=this.getArcSize(d+this.strokewidth,e+this.strokewidth)*ha);var ha=b,n=c,ha=h==mxConstants.ALIGN_CENTER?ha+(d-ga)/2:h==mxConstants.ALIGN_RIGHT?ha+(d-ga-m):ha+m,n=k==mxConstants.ALIGN_MIDDLE?n+(e-l)/2:k==mxConstants.ALIGN_BOTTOM?n+(e-l-m):n+m;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,ha,n,ga,l);a.restore()}f++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,
+m=this.style["symbol"+f+"Spacing"]||0,wa=this.style["symbol"+f+"VSpacing"]||m,n=this.style["symbol"+f+"ArcSpacing"];null!=n&&(n*=this.getArcSize(d+this.strokewidth,e+this.strokewidth),m+=n,wa+=n);var n=b,pa=c,n=h==mxConstants.ALIGN_CENTER?n+(d-ga)/2:h==mxConstants.ALIGN_RIGHT?n+(d-ga-m):n+m,pa=k==mxConstants.ALIGN_MIDDLE?pa+(e-l)/2:k==mxConstants.ALIGN_BOTTOM?pa+(e-l-wa):pa+wa;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,n,pa,ga,l);a.restore()}f++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,
arguments)};mxCellRenderer.prototype.defaultShapes.ext=z;mxUtils.extend(A,mxCylinder);A.prototype.redrawPath=function(a,b,c,d,e,f){f?(a.moveTo(0,0),a.lineTo(d/2,e/2),a.lineTo(d,0),a.end()):(a.moveTo(0,0),a.lineTo(d,0),a.lineTo(d,e),a.lineTo(0,e),a.close())};mxCellRenderer.prototype.defaultShapes.message=A;mxUtils.extend(F,mxShape);F.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.ellipse(d/4,0,d/2,e/4);a.fillAndStroke();a.begin();a.moveTo(d/2,e/4);a.lineTo(d/2,2*e/3);a.moveTo(d/2,
e/3);a.lineTo(0,e/3);a.moveTo(d/2,e/3);a.lineTo(d,e/3);a.moveTo(d/2,2*e/3);a.lineTo(0,e);a.moveTo(d/2,2*e/3);a.lineTo(d,e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlActor=F;mxUtils.extend(G,mxShape);G.prototype.getLabelBounds=function(a){return new mxRectangle(a.x+a.width/6,a.y,5*a.width/6,a.height)};G.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(0,e/4);a.lineTo(0,3*e/4);a.end();a.stroke();a.begin();a.moveTo(0,e/2);a.lineTo(d/6,e/2);a.end();
a.stroke();a.ellipse(d/6,0,5*d/6,e);a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.umlBoundary=G;mxUtils.extend(w,mxEllipse);w.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(b+d/8,c+e);a.lineTo(b+7*d/8,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlEntity=w;mxUtils.extend(J,mxShape);J.prototype.paintVertexShape=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(d,0);a.lineTo(0,e);a.moveTo(0,
@@ -2582,29 +2582,29 @@ c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.internalStorage=
[new mxPoint(0,0),new mxPoint(d,0),new mxPoint(d,c),new mxPoint(b,c),new mxPoint(b,e),new mxPoint(0,e)],this.isRounded,f,!0);a.end()};mxCellRenderer.prototype.defaultShapes.corner=S;mxUtils.extend(V,mxActor);V.prototype.redrawPath=function(a,b,c,d,e){a.moveTo(0,0);a.lineTo(0,e);a.end();a.moveTo(d,0);a.lineTo(d,e);a.end();a.moveTo(0,e/2);a.lineTo(d,e/2);a.end()};mxCellRenderer.prototype.defaultShapes.crossbar=V;mxUtils.extend(T,mxActor);T.prototype.dx=20;T.prototype.dy=20;T.prototype.redrawPath=function(a,
b,c,d,e){b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));c=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));parseFloat(mxUtils.getValue(this.style,"size",this.size));var f=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,0),new mxPoint(d,0),new mxPoint(d,c),new mxPoint((d+b)/2,c),new mxPoint((d+b)/2,e),new mxPoint((d-b)/2,e),new mxPoint((d-b)/2,c),new mxPoint(0,c)],this.isRounded,
f,!0);a.end()};mxCellRenderer.prototype.defaultShapes.tee=T;mxUtils.extend(R,mxActor);R.prototype.arrowWidth=.3;R.prototype.arrowSize=.2;R.prototype.redrawPath=function(a,b,c,d,e){var f=e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",this.arrowWidth))));b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",this.arrowSize))));c=(e-f)/2;var f=c+f,g=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,
-c),new mxPoint(d-b,c),new mxPoint(d-b,0),new mxPoint(d,e/2),new mxPoint(d-b,e),new mxPoint(d-b,f),new mxPoint(0,f)],this.isRounded,g,!0);a.end()};mxCellRenderer.prototype.defaultShapes.singleArrow=R;mxUtils.extend(ja,mxActor);ja.prototype.redrawPath=function(a,b,c,d,e){var f=e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",R.prototype.arrowWidth))));b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",R.prototype.arrowSize))));c=(e-f)/2;var f=c+f,
-g=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,e/2),new mxPoint(b,0),new mxPoint(b,c),new mxPoint(d-b,c),new mxPoint(d-b,0),new mxPoint(d,e/2),new mxPoint(d-b,e),new mxPoint(d-b,f),new mxPoint(b,f),new mxPoint(b,e)],this.isRounded,g,!0);a.end()};mxCellRenderer.prototype.defaultShapes.doubleArrow=ja;mxUtils.extend(X,mxActor);X.prototype.size=.1;X.prototype.redrawPath=function(a,b,c,d,e){b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,
-"size",this.size))));a.moveTo(b,0);a.lineTo(d,0);a.quadTo(d-2*b,e/2,d,e);a.lineTo(b,e);a.quadTo(b-2*b,e/2,b,0);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.dataStorage=X;mxUtils.extend(ka,mxActor);ka.prototype.redrawPath=function(a,b,c,d,e){a.moveTo(0,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.or=ka;mxUtils.extend(la,mxActor);la.prototype.redrawPath=function(a,b,c,d,e){a.moveTo(0,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,0,e);a.quadTo(d/
-2,e/2,0,0);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.xor=la;mxUtils.extend(Y,mxActor);Y.prototype.size=20;Y.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d/2,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(b,0),new mxPoint(d-b,0),new mxPoint(d,.8*b),new mxPoint(d,e),new mxPoint(0,e),new mxPoint(0,.8*b)],this.isRounded,c,!0);a.end()};mxCellRenderer.prototype.defaultShapes.loopLimit=
+c),new mxPoint(d-b,c),new mxPoint(d-b,0),new mxPoint(d,e/2),new mxPoint(d-b,e),new mxPoint(d-b,f),new mxPoint(0,f)],this.isRounded,g,!0);a.end()};mxCellRenderer.prototype.defaultShapes.singleArrow=R;mxUtils.extend(ia,mxActor);ia.prototype.redrawPath=function(a,b,c,d,e){var f=e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",R.prototype.arrowWidth))));b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",R.prototype.arrowSize))));c=(e-f)/2;var f=c+f,
+g=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,e/2),new mxPoint(b,0),new mxPoint(b,c),new mxPoint(d-b,c),new mxPoint(d-b,0),new mxPoint(d,e/2),new mxPoint(d-b,e),new mxPoint(d-b,f),new mxPoint(b,f),new mxPoint(b,e)],this.isRounded,g,!0);a.end()};mxCellRenderer.prototype.defaultShapes.doubleArrow=ia;mxUtils.extend(X,mxActor);X.prototype.size=.1;X.prototype.redrawPath=function(a,b,c,d,e){b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,
+"size",this.size))));a.moveTo(b,0);a.lineTo(d,0);a.quadTo(d-2*b,e/2,d,e);a.lineTo(b,e);a.quadTo(b-2*b,e/2,b,0);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.dataStorage=X;mxUtils.extend(ja,mxActor);ja.prototype.redrawPath=function(a,b,c,d,e){a.moveTo(0,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.or=ja;mxUtils.extend(ka,mxActor);ka.prototype.redrawPath=function(a,b,c,d,e){a.moveTo(0,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,0,e);a.quadTo(d/
+2,e/2,0,0);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.xor=ka;mxUtils.extend(Y,mxActor);Y.prototype.size=20;Y.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d/2,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(b,0),new mxPoint(d-b,0),new mxPoint(d,.8*b),new mxPoint(d,e),new mxPoint(0,e),new mxPoint(0,.8*b)],this.isRounded,c,!0);a.end()};mxCellRenderer.prototype.defaultShapes.loopLimit=
Y;mxUtils.extend(W,mxActor);W.prototype.size=.375;W.prototype.redrawPath=function(a,b,c,d,e){b=e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,0),new mxPoint(d,0),new mxPoint(d,e-b),new mxPoint(d/2,e),new mxPoint(0,e-b)],this.isRounded,c,!0);a.end()};mxCellRenderer.prototype.defaultShapes.offPageConnector=W;mxUtils.extend(Z,mxEllipse);Z.prototype.paintVertexShape=
function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(b+d/2,c+e);a.lineTo(b+d,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.tapeData=Z;mxUtils.extend(aa,mxEllipse);aa.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();a.moveTo(b,c+e/2);a.lineTo(b+d,c+e/2);a.end();a.stroke();a.begin();a.moveTo(b+d/2,c);a.lineTo(b+d/2,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.orEllipse=
aa;mxUtils.extend(ba,mxEllipse);ba.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();a.moveTo(b+.145*d,c+.145*e);a.lineTo(b+.855*d,c+.855*e);a.end();a.stroke();a.begin();a.moveTo(b+.855*d,c+.145*e);a.lineTo(b+.145*d,c+.855*e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.sumEllipse=ba;mxUtils.extend(ea,mxRhombus);ea.prototype.paintVertexShape=function(a,b,c,d,e){mxRhombus.prototype.paintVertexShape.apply(this,
-arguments);a.setShadow(!1);a.begin();a.moveTo(b,c+e/2);a.lineTo(b+d,c+e/2);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.sortShape=ea;mxUtils.extend(ca,mxEllipse);ca.prototype.paintVertexShape=function(a,b,c,d,e){a.begin();a.moveTo(b,c);a.lineTo(b+d,c);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke();a.begin();a.moveTo(b,c+e);a.lineTo(b+d,c+e);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.collate=ca;mxUtils.extend(na,mxEllipse);na.prototype.paintVertexShape=
-function(a,b,c,d,e){var f=c+e-5;a.begin();a.moveTo(b,c);a.lineTo(b,c+e);a.moveTo(b,f);a.lineTo(b+10,f-5);a.moveTo(b,f);a.lineTo(b+10,f+5);a.moveTo(b,f);a.lineTo(b+d,f);a.moveTo(b+d,c);a.lineTo(b+d,c+e);a.moveTo(b+d,f);a.lineTo(b+d-10,f-5);a.moveTo(b+d,f);a.lineTo(b+d-10,f+5);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.dimension=na;mxUtils.extend(U,mxEllipse);U.prototype.paintVertexShape=function(a,b,c,d,e){this.outline||a.setStrokeColor(null);mxRectangleShape.prototype.paintBackground.apply(this,
+arguments);a.setShadow(!1);a.begin();a.moveTo(b,c+e/2);a.lineTo(b+d,c+e/2);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.sortShape=ea;mxUtils.extend(ca,mxEllipse);ca.prototype.paintVertexShape=function(a,b,c,d,e){a.begin();a.moveTo(b,c);a.lineTo(b+d,c);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke();a.begin();a.moveTo(b,c+e);a.lineTo(b+d,c+e);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.collate=ca;mxUtils.extend(ma,mxEllipse);ma.prototype.paintVertexShape=
+function(a,b,c,d,e){var f=c+e-5;a.begin();a.moveTo(b,c);a.lineTo(b,c+e);a.moveTo(b,f);a.lineTo(b+10,f-5);a.moveTo(b,f);a.lineTo(b+10,f+5);a.moveTo(b,f);a.lineTo(b+d,f);a.moveTo(b+d,c);a.lineTo(b+d,c+e);a.moveTo(b+d,f);a.lineTo(b+d-10,f-5);a.moveTo(b+d,f);a.lineTo(b+d-10,f+5);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.dimension=ma;mxUtils.extend(U,mxEllipse);U.prototype.paintVertexShape=function(a,b,c,d,e){this.outline||a.setStrokeColor(null);mxRectangleShape.prototype.paintBackground.apply(this,
arguments);null!=this.style&&(a.setStrokeColor(this.stroke),a.rect(b,c,d,e),a.fill(),"1"==mxUtils.getValue(this.style,"top","1")&&(a.begin(),a.moveTo(b,c),a.lineTo(b+d,c),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,"right","1")&&(a.begin(),a.moveTo(b+d,c),a.lineTo(b+d,c+e),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,"bottom","1")&&(a.begin(),a.moveTo(b+d,c+e),a.lineTo(b,c+e),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,"left","1")&&(a.begin(),a.moveTo(b,c+e),a.lineTo(b,c),
a.end(),a.stroke()))};mxCellRenderer.prototype.defaultShapes.partialRectangle=U;mxUtils.extend(fa,mxEllipse);fa.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();"vertical"==mxUtils.getValue(this.style,"line")?(a.moveTo(b+d/2,c),a.lineTo(b+d/2,c+e)):(a.moveTo(b,c+e/2),a.lineTo(b+d,c+e/2));a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.lineEllipse=fa;mxUtils.extend(Q,mxActor);Q.prototype.redrawPath=function(a,
-b,c,d,e){b=Math.min(d,e/2);a.moveTo(0,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.delay=Q;mxUtils.extend(oa,mxActor);oa.prototype.size=.2;oa.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(e,d);var f=Math.max(0,Math.min(b,b*parseFloat(mxUtils.getValue(this.style,"size",this.size))));b=(e-f)/2;c=b+f;var g=(d-f)/2,f=g+f;a.moveTo(0,b);a.lineTo(g,b);a.lineTo(g,0);a.lineTo(f,0);a.lineTo(f,b);a.lineTo(d,b);a.lineTo(d,
-c);a.lineTo(f,c);a.lineTo(f,e);a.lineTo(g,e);a.lineTo(g,c);a.lineTo(0,c);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.cross=oa;mxUtils.extend(pa,mxActor);pa.prototype.size=.25;pa.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/2);c=Math.min(d-b,Math.max(0,parseFloat(mxUtils.getValue(this.style,"size",this.size)))*d);a.moveTo(0,e/2);a.lineTo(c,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(c,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.display=
-pa;mxMarker.addMarker("dash",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.stroke()}});mxMarker.addMarker("cross",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.moveTo(d.x-m/2+n/2,d.y-n/2-m/2);a.lineTo(d.x-n/2-3*m/2,d.y-3*n/2+m/2);a.stroke()}});mxMarker.addMarker("circle",ya);
-mxMarker.addMarker("circlePlus",function(a,b,c,d,e,f,g,h,k,l){var m=d.clone(),n=ya.apply(this,arguments),p=e*(g+2*k),q=f*(g+2*k);return function(){n.apply(this,arguments);a.begin();a.moveTo(m.x-e*k,m.y-f*k);a.lineTo(m.x-2*p+e*k,m.y-2*q+f*k);a.moveTo(m.x-p-q+f*k,m.y-q+p-e*k);a.lineTo(m.x+q-p-f*k,m.y-q-p+e*k);a.stroke()}});mxMarker.addMarker("async",function(a,b,c,d,e,f,g,h,k,l){b=e*k*1.118;c=f*k*1.118;e*=g+k;f*=g+k;var m=d.clone();m.x-=b;m.y-=c;d.x+=1*-e-b;d.y+=1*-f-c;return function(){a.begin();a.moveTo(m.x,
-m.y);h?a.lineTo(m.x-e-f/2,m.y-f+e/2):a.lineTo(m.x+f/2-e,m.y-f-e/2);a.lineTo(m.x-e,m.y-f);a.close();l?a.fillAndStroke():a.stroke()}});mxMarker.addMarker("openAsync",function(a){a=null!=a?a:2;return function(b,c,d,e,f,g,h,k,l,m){f*=h+l;g*=h+l;var n=e.clone();return function(){b.begin();b.moveTo(n.x,n.y);k?b.lineTo(n.x-f-g/a,n.y-g+f/a):b.lineTo(n.x+g/a-f,n.y-g-f/a);b.stroke()}}}(2));if("undefined"!==typeof mxVertexHandler){var Aa=function(a,b,c){return qa(a,["width"],b,function(b,d,e,f,g){g=a.shape.getEdgeWidth()*
+b,c,d,e){b=Math.min(d,e/2);a.moveTo(0,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.delay=Q;mxUtils.extend(na,mxActor);na.prototype.size=.2;na.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(e,d);var f=Math.max(0,Math.min(b,b*parseFloat(mxUtils.getValue(this.style,"size",this.size))));b=(e-f)/2;c=b+f;var g=(d-f)/2,f=g+f;a.moveTo(0,b);a.lineTo(g,b);a.lineTo(g,0);a.lineTo(f,0);a.lineTo(f,b);a.lineTo(d,b);a.lineTo(d,
+c);a.lineTo(f,c);a.lineTo(f,e);a.lineTo(g,e);a.lineTo(g,c);a.lineTo(0,c);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.cross=na;mxUtils.extend(oa,mxActor);oa.prototype.size=.25;oa.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/2);c=Math.min(d-b,Math.max(0,parseFloat(mxUtils.getValue(this.style,"size",this.size)))*d);a.moveTo(0,e/2);a.lineTo(c,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(c,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.display=
+oa;mxMarker.addMarker("dash",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.stroke()}});mxMarker.addMarker("cross",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.moveTo(d.x-m/2+n/2,d.y-n/2-m/2);a.lineTo(d.x-n/2-3*m/2,d.y-3*n/2+m/2);a.stroke()}});mxMarker.addMarker("circle",za);
+mxMarker.addMarker("circlePlus",function(a,b,c,d,e,f,g,h,k,l){var m=d.clone(),n=za.apply(this,arguments),p=e*(g+2*k),q=f*(g+2*k);return function(){n.apply(this,arguments);a.begin();a.moveTo(m.x-e*k,m.y-f*k);a.lineTo(m.x-2*p+e*k,m.y-2*q+f*k);a.moveTo(m.x-p-q+f*k,m.y-q+p-e*k);a.lineTo(m.x+q-p-f*k,m.y-q-p+e*k);a.stroke()}});mxMarker.addMarker("async",function(a,b,c,d,e,f,g,h,k,l){b=e*k*1.118;c=f*k*1.118;e*=g+k;f*=g+k;var m=d.clone();m.x-=b;m.y-=c;d.x+=1*-e-b;d.y+=1*-f-c;return function(){a.begin();a.moveTo(m.x,
+m.y);h?a.lineTo(m.x-e-f/2,m.y-f+e/2):a.lineTo(m.x+f/2-e,m.y-f-e/2);a.lineTo(m.x-e,m.y-f);a.close();l?a.fillAndStroke():a.stroke()}});mxMarker.addMarker("openAsync",function(a){a=null!=a?a:2;return function(b,c,d,e,f,g,h,k,l,m){f*=h+l;g*=h+l;var n=e.clone();return function(){b.begin();b.moveTo(n.x,n.y);k?b.lineTo(n.x-f-g/a,n.y-g+f/a):b.lineTo(n.x+g/a-f,n.y-g-f/a);b.stroke()}}}(2));if("undefined"!==typeof mxVertexHandler){var Ba=function(a,b,c){return qa(a,["width"],b,function(b,d,e,f,g){g=a.shape.getEdgeWidth()*
a.view.scale+c;return new mxPoint(f.x+d*b/4+e*g/2,f.y+e*b/4-d*g/2)},function(b,d,e,f,g,h){b=Math.sqrt(mxUtils.ptSegDistSq(f.x,f.y,g.x,g.y,h.x,h.y));a.style.width=Math.round(2*b)/a.view.scale-c})},qa=function(a,b,c,d,e){var f=a.absolutePoints,g=f.length-1,h=a.view.translate,k=a.view.scale,l=c?f[0]:f[g],m=c?f[1]:f[g-1],n=m.x-l.x,p=m.y-l.y,q=Math.sqrt(n*n+p*p);return M(a,b,function(a){a=d.call(this,q,n/q,p/q,l,m);return new mxPoint(a.x/k-h.x,a.y/k-h.y)},function(a,b,c){a=Math.sqrt(n*n+p*p);b.x=(b.x+
-h.x)*k;b.y=(b.y+h.y)*k;e.call(this,a,n/a,p/a,l,m,b,c)})},ia=function(a){return function(b){return[M(b,["arrowWidth","arrowSize"],function(b){var c=Math.max(0,Math.min(1,mxUtils.getValue(this.state.style,"arrowWidth",R.prototype.arrowWidth))),d=Math.max(0,Math.min(a,mxUtils.getValue(this.state.style,"arrowSize",R.prototype.arrowSize)));return new mxPoint(b.x+(1-d)*b.width,b.y+(1-c)*b.height/2)},function(b,c){this.state.style.arrowWidth=Math.max(0,Math.min(1,Math.abs(b.y+b.height/2-c.y)/b.height*2));
-this.state.style.arrowSize=Math.max(0,Math.min(a,(b.x+b.width-c.x)/b.width))})]}},wa=function(a,b,c){return function(d){var e=[M(d,["size"],function(c){var d=Math.max(0,Math.min(c.width,Math.min(c.height,parseFloat(mxUtils.getValue(this.state.style,"size",b)))))*a;return new mxPoint(c.x+d,c.y+d)},function(b,c){this.state.style.size=Math.round(Math.max(0,Math.min(Math.min(b.width,c.x-b.x),Math.min(b.height,c.y-b.y)))/a)})];c&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(da(d));return e}},
-sa=function(a,b,c){c=null!=c?c:1;return function(d){var e=[M(d,["size"],function(b){var c=parseFloat(mxUtils.getValue(this.state.style,"size",a));return new mxPoint(b.x+c*b.width,b.getCenterY())},function(a,b){this.state.style.size=Math.max(0,Math.min(c,(b.x-a.x)/a.width))})];b&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(da(d));return e}},Ba=function(a){return function(b){var c=[M(b,["size"],function(b){var c=Math.max(0,Math.min(a,parseFloat(mxUtils.getValue(this.state.style,"size",
+h.x)*k;b.y=(b.y+h.y)*k;e.call(this,a,n/a,p/a,l,m,b,c)})},ha=function(a){return function(b){return[M(b,["arrowWidth","arrowSize"],function(b){var c=Math.max(0,Math.min(1,mxUtils.getValue(this.state.style,"arrowWidth",R.prototype.arrowWidth))),d=Math.max(0,Math.min(a,mxUtils.getValue(this.state.style,"arrowSize",R.prototype.arrowSize)));return new mxPoint(b.x+(1-d)*b.width,b.y+(1-c)*b.height/2)},function(b,c){this.state.style.arrowWidth=Math.max(0,Math.min(1,Math.abs(b.y+b.height/2-c.y)/b.height*2));
+this.state.style.arrowSize=Math.max(0,Math.min(a,(b.x+b.width-c.x)/b.width))})]}},xa=function(a,b,c){return function(d){var e=[M(d,["size"],function(c){var d=Math.max(0,Math.min(c.width,Math.min(c.height,parseFloat(mxUtils.getValue(this.state.style,"size",b)))))*a;return new mxPoint(c.x+d,c.y+d)},function(b,c){this.state.style.size=Math.round(Math.max(0,Math.min(Math.min(b.width,c.x-b.x),Math.min(b.height,c.y-b.y)))/a)})];c&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(da(d));return e}},
+sa=function(a,b,c){c=null!=c?c:1;return function(d){var e=[M(d,["size"],function(b){var c=parseFloat(mxUtils.getValue(this.state.style,"size",a));return new mxPoint(b.x+c*b.width,b.getCenterY())},function(a,b){this.state.style.size=Math.max(0,Math.min(c,(b.x-a.x)/a.width))})];b&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(da(d));return e}},Ca=function(a){return function(b){var c=[M(b,["size"],function(b){var c=Math.max(0,Math.min(a,parseFloat(mxUtils.getValue(this.state.style,"size",
n.prototype.size))));return new mxPoint(b.x+c*b.width*.75,b.y+b.height/4)},function(b,c){this.state.style.size=Math.max(0,Math.min(a,(c.x-b.x)/(.75*b.width)))})];mxUtils.getValue(b.style,mxConstants.STYLE_ROUNDED,!1)&&c.push(da(b));return c}},ra=function(){return function(a){var b=[];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b}},da=function(a,b){return M(a,[mxConstants.STYLE_ARCSIZE],function(c){var d=Math.max(0,parseFloat(mxUtils.getValue(a.style,mxConstants.STYLE_ARCSIZE,
100*mxConstants.RECTANGLE_ROUNDING_FACTOR)))/100;return new mxPoint(c.x+c.width-Math.min(Math.max(c.width/2,c.height/2),Math.min(c.width,c.height)*d),c.y+(null!=b?b:c.height/8))},function(a,b,c){this.state.style[mxConstants.STYLE_ARCSIZE]=Math.round(Math.min(50,Math.max(0,100*(a.width-b.x+a.x)/Math.min(a.width,a.height))))})},M=function(a,b,c,d,e){a=new mxHandle(a,null,mxVertexHandler.prototype.secondaryHandleImage);a.execute=function(){for(var a=0;a<b.length;a++)this.copyStyle(b[a])};a.getPosition=
-c;a.setPosition=d;a.ignoreGrid=null!=e?e:!0;return a},xa={link:function(a){return[Aa(a,!0,10),Aa(a,!1,10)]},flexArrow:function(a){var b=a.view.graph.gridSize/a.view.scale,c=[];mxUtils.getValue(a.style,mxConstants.STYLE_STARTARROW,mxConstants.NONE)!=mxConstants.NONE&&(c.push(qa(a,["width",mxConstants.STYLE_STARTSIZE,mxConstants.STYLE_ENDSIZE],!0,function(b,c,d,e,f){b=(a.shape.getEdgeWidth()-a.shape.strokewidth)*a.view.scale;f=3*mxUtils.getNumber(a.style,mxConstants.STYLE_STARTSIZE,mxConstants.ARROW_SIZE/
+c;a.setPosition=d;a.ignoreGrid=null!=e?e:!0;return a},ya={link:function(a){return[Ba(a,!0,10),Ba(a,!1,10)]},flexArrow:function(a){var b=a.view.graph.gridSize/a.view.scale,c=[];mxUtils.getValue(a.style,mxConstants.STYLE_STARTARROW,mxConstants.NONE)!=mxConstants.NONE&&(c.push(qa(a,["width",mxConstants.STYLE_STARTSIZE,mxConstants.STYLE_ENDSIZE],!0,function(b,c,d,e,f){b=(a.shape.getEdgeWidth()-a.shape.strokewidth)*a.view.scale;f=3*mxUtils.getNumber(a.style,mxConstants.STYLE_STARTSIZE,mxConstants.ARROW_SIZE/
5)*a.view.scale;return new mxPoint(e.x+c*(f+a.shape.strokewidth*a.view.scale)+d*b/2,e.y+d*(f+a.shape.strokewidth*a.view.scale)-c*b/2)},function(c,d,e,f,g,h,k){c=Math.sqrt(mxUtils.ptSegDistSq(f.x,f.y,g.x,g.y,h.x,h.y));d=mxUtils.ptLineDist(f.x,f.y,f.x+e,f.y-d,h.x,h.y);a.style[mxConstants.STYLE_STARTSIZE]=Math.round(100*(d-a.shape.strokewidth)/3)/100/a.view.scale;a.style.width=Math.round(2*c)/a.view.scale;mxEvent.isControlDown(k.getEvent())&&(a.style[mxConstants.STYLE_ENDSIZE]=a.style[mxConstants.STYLE_STARTSIZE]);
mxEvent.isAltDown(k.getEvent())||Math.abs(parseFloat(a.style[mxConstants.STYLE_STARTSIZE])-parseFloat(a.style[mxConstants.STYLE_ENDSIZE]))<b/6&&(a.style[mxConstants.STYLE_STARTSIZE]=a.style[mxConstants.STYLE_ENDSIZE])})),c.push(qa(a,["startWidth","endWidth",mxConstants.STYLE_STARTSIZE,mxConstants.STYLE_ENDSIZE],!0,function(b,c,d,e,f){b=(a.shape.getStartArrowWidth()-a.shape.strokewidth)*a.view.scale;f=3*mxUtils.getNumber(a.style,mxConstants.STYLE_STARTSIZE,mxConstants.ARROW_SIZE/5)*a.view.scale;return new mxPoint(e.x+
c*(f+a.shape.strokewidth*a.view.scale)+d*b/2,e.y+d*(f+a.shape.strokewidth*a.view.scale)-c*b/2)},function(c,d,e,f,g,h,k){c=Math.sqrt(mxUtils.ptSegDistSq(f.x,f.y,g.x,g.y,h.x,h.y));d=mxUtils.ptLineDist(f.x,f.y,f.x+e,f.y-d,h.x,h.y);a.style[mxConstants.STYLE_STARTSIZE]=Math.round(100*(d-a.shape.strokewidth)/3)/100/a.view.scale;a.style.startWidth=Math.max(0,Math.round(2*c)-a.shape.getEdgeWidth())/a.view.scale;mxEvent.isControlDown(k.getEvent())&&(a.style[mxConstants.STYLE_ENDSIZE]=a.style[mxConstants.STYLE_STARTSIZE],
@@ -2617,24 +2617,24 @@ parseFloat(a.style.startWidth))<b&&(a.style.endWidth=a.style.startWidth))})));re
1==mxUtils.getValue(this.state.style,mxConstants.STYLE_HORIZONTAL,1)?Math.round(Math.max(0,Math.min(b.height,c.y-b.y))):Math.round(Math.max(0,Math.min(b.width,c.x-b.x)))})];if(mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED)){var c=parseFloat(mxUtils.getValue(a.style,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE));b.push(da(a,c/2))}return b},label:ra(),ext:ra(),rectangle:ra(),triangle:ra(),rhombus:ra(),umlLifeline:function(a){return[M(a,["size"],function(a){var b=Math.max(0,Math.min(a.height,
parseFloat(mxUtils.getValue(this.state.style,"size",H.prototype.size))));return new mxPoint(a.getCenterX(),a.y+b)},function(a,b){this.state.style.size=Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))},!1)]},umlFrame:function(a){var b=[M(a,["width","height"],function(a){var b=Math.max(D.prototype.corner,Math.min(a.width,mxUtils.getValue(this.state.style,"width",D.prototype.width))),c=Math.max(1.5*D.prototype.corner,Math.min(a.height,mxUtils.getValue(this.state.style,"height",D.prototype.height)));
return new mxPoint(a.x+b,a.y+c)},function(a,b){this.state.style.width=Math.round(Math.max(D.prototype.corner,Math.min(a.width,b.x-a.x)));this.state.style.height=Math.round(Math.max(1.5*D.prototype.corner,Math.min(a.height,b.y-a.y)))},!1)];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b},process:function(a){var b=[M(a,["size"],function(a){var b=Math.max(0,Math.min(.5,parseFloat(mxUtils.getValue(this.state.style,"size",r.prototype.size))));return new mxPoint(a.x+a.width*
-b,a.y+a.height/4)},function(a,b){this.state.style.size=Math.max(0,Math.min(.5,(b.x-a.x)/a.width))})];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b},cross:function(a){return[M(a,["size"],function(a){var b=Math.min(a.width,a.height),b=Math.max(0,Math.min(1,mxUtils.getValue(this.state.style,"size",oa.prototype.size)))*b/2;return new mxPoint(a.getCenterX()-b,a.getCenterY()-b)},function(a,b){var c=Math.min(a.width,a.height);this.state.style.size=Math.max(0,Math.min(1,Math.min(Math.max(0,
+b,a.y+a.height/4)},function(a,b){this.state.style.size=Math.max(0,Math.min(.5,(b.x-a.x)/a.width))})];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b},cross:function(a){return[M(a,["size"],function(a){var b=Math.min(a.width,a.height),b=Math.max(0,Math.min(1,mxUtils.getValue(this.state.style,"size",na.prototype.size)))*b/2;return new mxPoint(a.getCenterX()-b,a.getCenterY()-b)},function(a,b){var c=Math.min(a.width,a.height);this.state.style.size=Math.max(0,Math.min(1,Math.min(Math.max(0,
a.getCenterY()-b.y)/c*2,Math.max(0,a.getCenterX()-b.x)/c*2)))})]},note:function(a){return[M(a,["size"],function(a){var b=Math.max(0,Math.min(a.width,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"size",e.prototype.size)))));return new mxPoint(a.x+a.width-b,a.y+b)},function(a,b){this.state.style.size=Math.round(Math.max(0,Math.min(Math.min(a.width,a.x+a.width-b.x),Math.min(a.height,b.y-a.y))))})]},manualInput:function(a){var b=[M(a,["size"],function(a){var b=Math.max(0,Math.min(a.height,
mxUtils.getValue(this.state.style,"size",C.prototype.size)));return new mxPoint(a.x+a.width/4,a.y+3*b/4)},function(a,b){this.state.style.size=Math.round(Math.max(0,Math.min(a.height,4*(b.y-a.y)/3)))})];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b},dataStorage:function(a){return[M(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",X.prototype.size))));return new mxPoint(a.x+(1-b)*a.width,a.getCenterY())},function(a,
b){this.state.style.size=Math.max(0,Math.min(1,(a.x+a.width-b.x)/a.width))})]},internalStorage:function(a){var b=[M(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"dx",x.prototype.dx))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"dy",x.prototype.dy)));return new mxPoint(a.x+b,a.y+c)},function(a,b){this.state.style.dx=Math.round(Math.max(0,Math.min(a.width,b.x-a.x)));this.state.style.dy=Math.round(Math.max(0,Math.min(a.height,b.y-
a.y)))})];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b},corner:function(a){return[M(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"dx",S.prototype.dx))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"dy",S.prototype.dy)));return new mxPoint(a.x+b,a.y+c)},function(a,b){this.state.style.dx=Math.round(Math.max(0,Math.min(a.width,b.x-a.x)));this.state.style.dy=Math.round(Math.max(0,Math.min(a.height,b.y-
-a.y)))})]},tee:function(a){return[M(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"dx",T.prototype.dx))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"dy",T.prototype.dy)));return new mxPoint(a.x+(a.width+b)/2,a.y+c)},function(a,b){this.state.style.dx=Math.round(Math.max(0,2*Math.min(a.width/2,b.x-a.x-a.width/2)));this.state.style.dy=Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))})]},singleArrow:ia(1),doubleArrow:ia(.5),folder:function(a){return[M(a,
+a.y)))})]},tee:function(a){return[M(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"dx",T.prototype.dx))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"dy",T.prototype.dy)));return new mxPoint(a.x+(a.width+b)/2,a.y+c)},function(a,b){this.state.style.dx=Math.round(Math.max(0,2*Math.min(a.width/2,b.x-a.x-a.width/2)));this.state.style.dy=Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))})]},singleArrow:ha(1),doubleArrow:ha(.5),folder:function(a){return[M(a,
["tabWidth","tabHeight"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"tabWidth",h.prototype.tabWidth))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"tabHeight",h.prototype.tabHeight)));mxUtils.getValue(this.state.style,"tabPosition",h.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(b=a.width-b);return new mxPoint(a.x+b,a.y+c)},function(a,b){var c=Math.max(0,Math.min(a.width,b.x-a.x));mxUtils.getValue(this.state.style,"tabPosition",h.prototype.tabPosition)==
mxConstants.ALIGN_RIGHT&&(c=a.width-c);this.state.style.tabWidth=Math.round(c);this.state.style.tabHeight=Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))})]},document:function(a){return[M(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",l.prototype.size))));return new mxPoint(a.x+3*a.width/4,a.y+(1-b)*a.height)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,(a.y+a.height-b.y)/a.height))})]},tape:function(a){return[M(a,["size"],function(a){var b=
Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",k.prototype.size))));return new mxPoint(a.getCenterX(),a.y+b*a.height/2)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,(b.y-a.y)/a.height*2))})]},offPageConnector:function(a){return[M(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",W.prototype.size))));return new mxPoint(a.getCenterX(),a.y+(1-b)*a.height)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,
-(a.y+a.height-b.y)/a.height))})]},step:sa(v.prototype.size,!0),hexagon:sa(u.prototype.size,!0,.5),curlyBracket:sa(p.prototype.size,!1),display:sa(pa.prototype.size,!1),cube:wa(1,a.prototype.size,!1),card:wa(.5,g.prototype.size,!0),loopLimit:wa(.5,Y.prototype.size,!0),trapezoid:Ba(.5),parallelogram:Ba(1)};Graph.createHandle=M;Graph.handleFactory=xa;mxVertexHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()&&this.graph.isCellRotatable(this.state.cell)){var a=
-this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_RECTANGLE);a=xa[a];if(null!=a)return a(this.state)}return null};mxEdgeHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()){var a=this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_CONNECTOR);a=xa[a];if(null!=a)return a(this.state)}return null}}else Graph.createHandle=
-function(){},Graph.handleFactory={};var ta=new mxPoint(1,0),ua=new mxPoint(1,0),ia=mxUtils.toRadians(-30),ta=mxUtils.getRotatedPoint(ta,Math.cos(ia),Math.sin(ia)),ia=mxUtils.toRadians(-150),ua=mxUtils.getRotatedPoint(ua,Math.cos(ia),Math.sin(ia));mxEdgeStyle.IsometricConnector=function(a,b,c,d,e){var f=a.view;d=null!=d&&0<d.length?d[0]:null;var g=a.absolutePoints,h=g[0],g=g[g.length-1];null!=d&&(d=f.transformControlPoint(a,d));null==h&&null!=b&&(h=new mxPoint(b.getCenterX(),b.getCenterY()));null==
+(a.y+a.height-b.y)/a.height))})]},step:sa(v.prototype.size,!0),hexagon:sa(u.prototype.size,!0,.5),curlyBracket:sa(p.prototype.size,!1),display:sa(oa.prototype.size,!1),cube:xa(1,a.prototype.size,!1),card:xa(.5,g.prototype.size,!0),loopLimit:xa(.5,Y.prototype.size,!0),trapezoid:Ca(.5),parallelogram:Ca(1)};Graph.createHandle=M;Graph.handleFactory=ya;mxVertexHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()&&this.graph.isCellRotatable(this.state.cell)){var a=
+this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_RECTANGLE);a=ya[a];if(null!=a)return a(this.state)}return null};mxEdgeHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()){var a=this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_CONNECTOR);a=ya[a];if(null!=a)return a(this.state)}return null}}else Graph.createHandle=
+function(){},Graph.handleFactory={};var ta=new mxPoint(1,0),ua=new mxPoint(1,0),ha=mxUtils.toRadians(-30),ta=mxUtils.getRotatedPoint(ta,Math.cos(ha),Math.sin(ha)),ha=mxUtils.toRadians(-150),ua=mxUtils.getRotatedPoint(ua,Math.cos(ha),Math.sin(ha));mxEdgeStyle.IsometricConnector=function(a,b,c,d,e){var f=a.view;d=null!=d&&0<d.length?d[0]:null;var g=a.absolutePoints,h=g[0],g=g[g.length-1];null!=d&&(d=f.transformControlPoint(a,d));null==h&&null!=b&&(h=new mxPoint(b.getCenterX(),b.getCenterY()));null==
g&&null!=c&&(g=new mxPoint(c.getCenterX(),c.getCenterY()));var k=ta.x,l=ta.y,m=ua.x,n=ua.y,p="horizontal"==mxUtils.getValue(a.style,"elbow","horizontal");if(null!=g&&null!=h){a=function(a,b,c){a-=q.x;var d=b-q.y;b=(n*a-m*d)/(k*n-l*m);a=(l*a-k*d)/(l*m-k*n);p?(c&&(q=new mxPoint(q.x+k*b,q.y+l*b),e.push(q)),q=new mxPoint(q.x+m*a,q.y+n*a)):(c&&(q=new mxPoint(q.x+m*a,q.y+n*a),e.push(q)),q=new mxPoint(q.x+k*b,q.y+l*b));e.push(q)};var q=h;null==d&&(d=new mxPoint(h.x+(g.x-h.x)/2,h.y+(g.y-h.y)/2));a(d.x,d.y,
-!0);a(g.x,g.y,!1)}};mxStyleRegistry.putValue("isometricEdgeStyle",mxEdgeStyle.IsometricConnector);var Ga=Graph.prototype.createEdgeHandler;Graph.prototype.createEdgeHandler=function(a,b){if(b==mxEdgeStyle.IsometricConnector){var c=new mxElbowEdgeHandler(a);c.snapToTerminals=!1;return c}return Ga.apply(this,arguments)};c.prototype.constraints=[];d.prototype.constraints=[];mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,
+!0);a(g.x,g.y,!1)}};mxStyleRegistry.putValue("isometricEdgeStyle",mxEdgeStyle.IsometricConnector);var Ha=Graph.prototype.createEdgeHandler;Graph.prototype.createEdgeHandler=function(a,b){if(b==mxEdgeStyle.IsometricConnector){var c=new mxElbowEdgeHandler(a);c.snapToTerminals=!1;return c}return Ha.apply(this,arguments)};c.prototype.constraints=[];d.prototype.constraints=[];mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,
0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];
mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];mxLabel.prototype.constraints=mxRectangleShape.prototype.constraints;mxImageShape.prototype.constraints=
mxRectangleShape.prototype.constraints;mxSwimlane.prototype.constraints=mxRectangleShape.prototype.constraints;y.prototype.constraints=mxRectangleShape.prototype.constraints;e.prototype.constraints=mxRectangleShape.prototype.constraints;g.prototype.constraints=mxRectangleShape.prototype.constraints;a.prototype.constraints=mxRectangleShape.prototype.constraints;h.prototype.constraints=mxRectangleShape.prototype.constraints;x.prototype.constraints=mxRectangleShape.prototype.constraints;X.prototype.constraints=
-mxRectangleShape.prototype.constraints;Z.prototype.constraints=mxEllipse.prototype.constraints;aa.prototype.constraints=mxEllipse.prototype.constraints;ba.prototype.constraints=mxEllipse.prototype.constraints;fa.prototype.constraints=mxEllipse.prototype.constraints;C.prototype.constraints=mxRectangleShape.prototype.constraints;Q.prototype.constraints=mxRectangleShape.prototype.constraints;pa.prototype.constraints=mxRectangleShape.prototype.constraints;Y.prototype.constraints=mxRectangleShape.prototype.constraints;
+mxRectangleShape.prototype.constraints;Z.prototype.constraints=mxEllipse.prototype.constraints;aa.prototype.constraints=mxEllipse.prototype.constraints;ba.prototype.constraints=mxEllipse.prototype.constraints;fa.prototype.constraints=mxEllipse.prototype.constraints;C.prototype.constraints=mxRectangleShape.prototype.constraints;Q.prototype.constraints=mxRectangleShape.prototype.constraints;oa.prototype.constraints=mxRectangleShape.prototype.constraints;Y.prototype.constraints=mxRectangleShape.prototype.constraints;
W.prototype.constraints=mxRectangleShape.prototype.constraints;mxCylinder.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.15,.05),!1),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.85,.05),!1),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.3),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,
.7),!0),new mxConnectionConstraint(new mxPoint(.15,.95),!1),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.85,.95),!1)];F.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.1),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.75,.1),!1),new mxConnectionConstraint(new mxPoint(0,1/3),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(1,1/3),!1),new mxConnectionConstraint(new mxPoint(1,
1),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1)];L.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,
@@ -2648,9 +2648,9 @@ mxEllipse.prototype.constraints;mxTriangle.prototype.constraints=[new mxConnecti
1),!0)];mxCloud.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.4,.1),!1),new mxConnectionConstraint(new mxPoint(.16,.55),!1),new mxConnectionConstraint(new mxPoint(.07,.4),!1),new mxConnectionConstraint(new mxPoint(.31,.8),!1),new mxConnectionConstraint(new mxPoint(.13,.77),!1),new mxConnectionConstraint(new mxPoint(.8,.8),!1),new mxConnectionConstraint(new mxPoint(.55,.95),!1),new mxConnectionConstraint(new mxPoint(.875,.5),!1),
new mxConnectionConstraint(new mxPoint(.96,.7),!1),new mxConnectionConstraint(new mxPoint(.625,.2),!1),new mxConnectionConstraint(new mxPoint(.88,.25),!1)];m.prototype.constraints=mxRectangleShape.prototype.constraints;n.prototype.constraints=mxRectangleShape.prototype.constraints;l.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),
!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxArrow.prototype.constraints=null;T.prototype.constraints=null;S.prototype.constraints=null;V.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,
-1),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];R.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];ja.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),
-new mxConnectionConstraint(new mxPoint(1,.5),!1)];oa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1)];H.prototype.constraints=null;ka.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!1),new mxConnectionConstraint(new mxPoint(1,
-.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)];la.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.175,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.175,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)]})();function Actions(a){this.editorUi=a;this.actions={};this.init()}
+1),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];R.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];ia.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),
+new mxConnectionConstraint(new mxPoint(1,.5),!1)];na.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1)];H.prototype.constraints=null;ja.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!1),new mxConnectionConstraint(new mxPoint(1,
+.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)];ka.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.175,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.175,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)]})();function Actions(a){this.editorUi=a;this.actions={};this.init()}
Actions.prototype.init=function(){function a(a){b.escape();var c=b.getDeletableCells(b.getSelectionCells());if(null!=c&&0<c.length){var d=b.model.getParents(c);b.removeCells(c,a);if(null!=d){a=[];for(c=0;c<d.length;c++)b.model.contains(d[c])&&(b.model.isVertex(d[c])||b.model.isEdge(d[c]))&&a.push(d[c]);b.setSelectionCells(a)}}}var c=this.editorUi,d=c.editor,b=d.graph,e=function(){return Action.prototype.isEnabled.apply(this,arguments)&&b.isEnabled()};this.addAction("new...",function(){window.open(c.getUrl())});
this.addAction("open...",function(){window.openNew=!0;window.openKey="open";c.openFile()});this.addAction("import...",function(){window.openNew=!1;window.openKey="import";window.openFile=new OpenFile(mxUtils.bind(this,function(){c.hideDialog()}));window.openFile.setConsumer(mxUtils.bind(this,function(a,b){try{var c=mxUtils.parseXml(a),e=new mxGraphModel;(new mxCodec(c)).decode(c.documentElement,e);var f=e.getChildren(e.getChildAt(e.getRoot(),0));d.graph.setSelectionCells(d.graph.importCells(f))}catch(n){mxUtils.alert(mxResources.get("invalidOrMissingFile")+
": "+n.message)}}));c.showDialog((new OpenDialog(this)).container,320,220,!0,!0,function(){window.openFile=null})}).isEnabled=e;this.addAction("save",function(){c.saveFile(!1)},null,null,"Ctrl+S").isEnabled=e;this.addAction("saveAs...",function(){c.saveFile(!0)},null,null,"Ctrl+Shift+S").isEnabled=e;this.addAction("export...",function(){c.showDialog((new ExportDialog(c)).container,300,230,!0,!0)});this.addAction("editDiagram...",function(){var a=new EditDiagramDialog(c);c.showDialog(a.container,620,
@@ -2842,9 +2842,9 @@ g.style.cssFloat="right";var C=null,x="#ffffff",S=null,V="#000000",T=b.cellEdito
mxConstants.STYLE_LABEL_BORDERCOLOR,"#000000");R.style.fontWeight="bold";g=b.cellEditor.isContentEditing()?this.createColorOption(mxResources.get("fontColor"),function(){return V},function(a){document.execCommand("forecolor",!1,a!=mxConstants.NONE?a:"transparent")},"#000000",{install:function(a){S=a},destroy:function(){S=null}},null,!0):this.createCellColorOption(mxResources.get("fontColor"),mxConstants.STYLE_FONTCOLOR,"#000000",function(a){T.style.display=null==a||a==mxConstants.NONE?"none":"";R.style.display=
T.style.display},function(a){null==a||a==mxConstants.NONE?b.setCellStyles(mxConstants.STYLE_NOLABEL,"1",b.getSelectionCells()):b.setCellStyles(mxConstants.STYLE_NOLABEL,null,b.getSelectionCells())});g.style.fontWeight="bold";h.appendChild(g);h.appendChild(T);b.cellEditor.isContentEditing()||h.appendChild(R);a.appendChild(h);h=this.createPanel();h.style.paddingTop="2px";h.style.paddingBottom="4px";g=this.createCellOption(mxResources.get("wordWrap"),mxConstants.STYLE_WHITE_SPACE,null,"wrap","null",
null,null,!0);g.style.fontWeight="bold";e.containsLabel||e.autoSize||0!=e.edges.length||h.appendChild(g);g=this.createCellOption(mxResources.get("formattedText"),"html","0",null,null,null,d.actions.get("formattedText"));g.style.fontWeight="bold";h.appendChild(g);g=this.createPanel();g.style.paddingTop="10px";g.style.paddingBottom="28px";g.style.fontWeight="normal";n=document.createElement("div");n.style.position="absolute";n.style.width="70px";n.style.marginTop="0px";n.style.fontWeight="bold";mxUtils.write(n,
-mxResources.get("spacing"));g.appendChild(n);var ja,X,ka,la,Y,W=this.addUnitInput(g,"pt",91,44,function(){ja.apply(this,arguments)}),Z=this.addUnitInput(g,"pt",20,44,function(){X.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("top"),91);this.addLabel(g,mxResources.get("global"),20);mxUtils.br(g);mxUtils.br(g);var aa=this.addUnitInput(g,"pt",162,44,function(){ka.apply(this,arguments)}),ba=this.addUnitInput(g,"pt",91,44,function(){la.apply(this,arguments)}),ea=this.addUnitInput(g,
-"pt",20,44,function(){Y.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("left"),162);this.addLabel(g,mxResources.get("bottom"),91);this.addLabel(g,mxResources.get("right"),20);if(b.cellEditor.isContentEditing()){var ca=null,na=null;a.appendChild(this.createRelativeOption(mxResources.get("lineheight"),null,null,function(a){var c=""==a.value?120:parseInt(a.value),c=Math.max(0,isNaN(c)?120:c);null!=ca&&(b.cellEditor.restoreSelection(ca),ca=null);for(var d=b.getSelectedElement();null!=
-d&&d.nodeType!=mxConstants.NODETYPE_ELEMENT;)d=d.parentNode;null!=d&&d==b.cellEditor.textarea&&null!=b.cellEditor.textarea.firstChild&&("P"!=b.cellEditor.textarea.firstChild.nodeName&&(b.cellEditor.textarea.innerHTML="<p>"+b.cellEditor.textarea.innerHTML+"</p>"),d=b.cellEditor.textarea.firstChild);null!=d&&d!=b.cellEditor.textarea&&(d.style.lineHeight=c+"%");a.value=c+" %"},function(a){na=a;mxEvent.addListener(a,"mousedown",function(){ca=b.cellEditor.saveSelection()});mxEvent.addListener(a,"touchstart",
+mxResources.get("spacing"));g.appendChild(n);var ia,X,ja,ka,Y,W=this.addUnitInput(g,"pt",91,44,function(){ia.apply(this,arguments)}),Z=this.addUnitInput(g,"pt",20,44,function(){X.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("top"),91);this.addLabel(g,mxResources.get("global"),20);mxUtils.br(g);mxUtils.br(g);var aa=this.addUnitInput(g,"pt",162,44,function(){ja.apply(this,arguments)}),ba=this.addUnitInput(g,"pt",91,44,function(){ka.apply(this,arguments)}),ea=this.addUnitInput(g,
+"pt",20,44,function(){Y.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("left"),162);this.addLabel(g,mxResources.get("bottom"),91);this.addLabel(g,mxResources.get("right"),20);if(b.cellEditor.isContentEditing()){var ca=null,ma=null;a.appendChild(this.createRelativeOption(mxResources.get("lineheight"),null,null,function(a){var c=""==a.value?120:parseInt(a.value),c=Math.max(0,isNaN(c)?120:c);null!=ca&&(b.cellEditor.restoreSelection(ca),ca=null);for(var d=b.getSelectedElement();null!=
+d&&d.nodeType!=mxConstants.NODETYPE_ELEMENT;)d=d.parentNode;null!=d&&d==b.cellEditor.textarea&&null!=b.cellEditor.textarea.firstChild&&("P"!=b.cellEditor.textarea.firstChild.nodeName&&(b.cellEditor.textarea.innerHTML="<p>"+b.cellEditor.textarea.innerHTML+"</p>"),d=b.cellEditor.textarea.firstChild);null!=d&&d!=b.cellEditor.textarea&&(d.style.lineHeight=c+"%");a.value=c+" %"},function(a){ma=a;mxEvent.addListener(a,"mousedown",function(){ca=b.cellEditor.saveSelection()});mxEvent.addListener(a,"touchstart",
function(){ca=b.cellEditor.saveSelection()});a.value="120 %"}));h=f.cloneNode(!1);h.style.paddingLeft="0px";g=this.editorUi.toolbar.addItems(["link","image"],h,!0);n=[this.editorUi.toolbar.addButton("geSprite-horizontalrule",mxResources.get("insertHorizontalRule"),function(){document.execCommand("inserthorizontalrule",!1,null)},h),this.editorUi.toolbar.addMenuFunctionInContainer(h,"geSprite-table",mxResources.get("table"),!1,mxUtils.bind(this,function(a){this.editorUi.menus.addInsertTableItem(a)}))];
this.styleButtons(g);this.styleButtons(n);g=this.createPanel();g.style.paddingTop="10px";g.style.paddingBottom="10px";g.appendChild(this.createTitle(mxResources.get("insert")));g.appendChild(h);a.appendChild(g);mxClient.IS_QUIRKS&&(g.style.height="70");g=f.cloneNode(!1);g.style.paddingLeft="0px";n=[this.editorUi.toolbar.addButton("geSprite-insertcolumnbefore",mxResources.get("insertColumnBefore"),function(){try{null!=w&&b.selectNode(b.insertColumn(w,null!=J?J.cellIndex:0))}catch(Q){alert(Q)}},g),
this.editorUi.toolbar.addButton("geSprite-insertcolumnafter",mxResources.get("insertColumnAfter"),function(){try{null!=w&&b.selectNode(b.insertColumn(w,null!=J?J.cellIndex+1:-1))}catch(Q){alert(Q)}},g),this.editorUi.toolbar.addButton("geSprite-deletecolumn",mxResources.get("deleteColumn"),function(){try{null!=w&&null!=J&&b.deleteColumn(w,J.cellIndex)}catch(Q){alert(Q)}},g),this.editorUi.toolbar.addButton("geSprite-insertrowbefore",mxResources.get("insertRowBefore"),function(){try{null!=w&&null!=K&&
@@ -2858,11 +2858,11 @@ mxConstants.FONT_ITALIC);c(l[2],(a&mxConstants.FONT_UNDERLINE)==mxConstants.FONT
c(p,a==mxConstants.ALIGN_LEFT);c(q,a==mxConstants.ALIGN_CENTER);c(t,a==mxConstants.ALIGN_RIGHT);a=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE);c(v,a==mxConstants.ALIGN_TOP);c(u,a==mxConstants.ALIGN_MIDDLE);c(y,a==mxConstants.ALIGN_BOTTOM);a=mxUtils.getValue(e.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);b=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE);H.value=a==mxConstants.ALIGN_LEFT&&b==mxConstants.ALIGN_TOP?
"topLeft":a==mxConstants.ALIGN_CENTER&&b==mxConstants.ALIGN_TOP?"top":a==mxConstants.ALIGN_RIGHT&&b==mxConstants.ALIGN_TOP?"topRight":a==mxConstants.ALIGN_LEFT&&b==mxConstants.ALIGN_BOTTOM?"bottomLeft":a==mxConstants.ALIGN_CENTER&&b==mxConstants.ALIGN_BOTTOM?"bottom":a==mxConstants.ALIGN_RIGHT&&b==mxConstants.ALIGN_BOTTOM?"bottomRight":a==mxConstants.ALIGN_LEFT?"left":a==mxConstants.ALIGN_RIGHT?"right":"center";a=mxUtils.getValue(e.style,mxConstants.STYLE_TEXT_DIRECTION,mxConstants.DEFAULT_TEXT_DIRECTION);
a==mxConstants.TEXT_DIRECTION_RTL?L.value="rightToLeft":a==mxConstants.TEXT_DIRECTION_LTR?L.value="leftToRight":a==mxConstants.TEXT_DIRECTION_AUTO&&(L.value="automatic");if(d||document.activeElement!=Z)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING,2)),Z.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=W)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_TOP,0)),W.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ea)a=parseFloat(mxUtils.getValue(e.style,
-mxConstants.STYLE_SPACING_RIGHT,0)),ea.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ba)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_BOTTOM,0)),ba.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=aa)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_LEFT,0)),aa.value=isNaN(a)?"":a+" pt"});X=this.installInputHandler(Z,mxConstants.STYLE_SPACING,2,-999,999," pt");ja=this.installInputHandler(W,mxConstants.STYLE_SPACING_TOP,0,-999,999," pt");Y=this.installInputHandler(ea,
-mxConstants.STYLE_SPACING_RIGHT,0,-999,999," pt");la=this.installInputHandler(ba,mxConstants.STYLE_SPACING_BOTTOM,0,-999,999," pt");ka=this.installInputHandler(aa,mxConstants.STYLE_SPACING_LEFT,0,-999,999," pt");this.addKeyHandler(B,U);this.addKeyHandler(Z,U);this.addKeyHandler(W,U);this.addKeyHandler(ea,U);this.addKeyHandler(ba,U);this.addKeyHandler(aa,U);b.getModel().addListener(mxEvent.CHANGE,U);this.listeners.push({destroy:function(){b.getModel().removeListener(U)}});U();if(b.cellEditor.isContentEditing()){var fa=
+mxConstants.STYLE_SPACING_RIGHT,0)),ea.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ba)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_BOTTOM,0)),ba.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=aa)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_LEFT,0)),aa.value=isNaN(a)?"":a+" pt"});X=this.installInputHandler(Z,mxConstants.STYLE_SPACING,2,-999,999," pt");ia=this.installInputHandler(W,mxConstants.STYLE_SPACING_TOP,0,-999,999," pt");Y=this.installInputHandler(ea,
+mxConstants.STYLE_SPACING_RIGHT,0,-999,999," pt");ka=this.installInputHandler(ba,mxConstants.STYLE_SPACING_BOTTOM,0,-999,999," pt");ja=this.installInputHandler(aa,mxConstants.STYLE_SPACING_LEFT,0,-999,999," pt");this.addKeyHandler(B,U);this.addKeyHandler(Z,U);this.addKeyHandler(W,U);this.addKeyHandler(ea,U);this.addKeyHandler(ba,U);this.addKeyHandler(aa,U);b.getModel().addListener(mxEvent.CHANGE,U);this.listeners.push({destroy:function(){b.getModel().removeListener(U)}});U();if(b.cellEditor.isContentEditing()){var fa=
!1,f=function(){fa||(fa=!0,window.setTimeout(function(){for(var a=b.getSelectedElement();null!=a&&a.nodeType!=mxConstants.NODETYPE_ELEMENT;)a=a.parentNode;if(null!=a){a==b.cellEditor.textarea&&1==b.cellEditor.textarea.children.length&&b.cellEditor.textarea.firstChild.nodeType==mxConstants.NODETYPE_ELEMENT&&(a=b.cellEditor.textarea.firstChild);var d=mxUtils.getCurrentStyle(a);if(null!=d){c(l[0],"bold"==d.fontWeight||null!=b.getParentByName(a,"B",b.cellEditor.textarea));c(l[1],"italic"==d.fontStyle||
null!=b.getParentByName(a,"I",b.cellEditor.textarea));c(l[2],null!=b.getParentByName(a,"U",b.cellEditor.textarea));c(p,"left"==d.textAlign);c(q,"center"==d.textAlign);c(t,"right"==d.textAlign);c(F,"justify"==d.textAlign);c(A,null!=b.getParentByName(a,"SUP",b.cellEditor.textarea));c(z,null!=b.getParentByName(a,"SUB",b.cellEditor.textarea));w=b.getParentByName(a,"TABLE",b.cellEditor.textarea);K=null==w?null:b.getParentByName(a,"TR",w);J=null==w?null:b.getParentByName(a,"TD",w);G.style.display=null!=
-w?"":"none";if(document.activeElement!=B){"FONT"==a.nodeName&&"4"==a.getAttribute("size")&&null!=E?(a.removeAttribute("size"),a.style.fontSize=E+"px",E=null):B.value=parseFloat(d.fontSize)+" pt";var a=a.style.lineHeight||d.lineHeight,e=parseFloat(a);"px"==a.substring(a.length-2)&&(e/=parseFloat(d.fontSize));"%"!=a.substring(a.length-1)&&(e*=100);na.value=e+" %"}a=d.color.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+
+w?"":"none";if(document.activeElement!=B){"FONT"==a.nodeName&&"4"==a.getAttribute("size")&&null!=E?(a.removeAttribute("size"),a.style.fontSize=E+"px",E=null):B.value=parseFloat(d.fontSize)+" pt";var a=a.style.lineHeight||d.lineHeight,e=parseFloat(a);"px"==a.substring(a.length-2)&&(e/=parseFloat(d.fontSize));"%"!=a.substring(a.length-1)&&(e*=100);ma.value=e+" %"}a=d.color.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+
("0"+Number(c).toString(16)).substr(-2)+("0"+Number(d).toString(16)).substr(-2)});e=d.backgroundColor.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+("0"+Number(c).toString(16)).substr(-2)+("0"+Number(d).toString(16)).substr(-2)});null!=S&&(V="#"==a.charAt(0)?a:"#000000",S(V,!0));null!=C&&(x="#"==e.charAt(0)?e:null,C(x,!0));null!=k.firstChild&&(d=d.fontFamily,"'"==d.charAt(0)&&(d=d.substring(1)),"'"==d.charAt(d.length-
1)&&(d=d.substring(0,d.length-1)),k.firstChild.nodeValue=d)}}fa=!1},0))};mxEvent.addListener(b.cellEditor.textarea,"input",f);mxEvent.addListener(b.cellEditor.textarea,"touchend",f);mxEvent.addListener(b.cellEditor.textarea,"mouseup",f);mxEvent.addListener(b.cellEditor.textarea,"keyup",f);this.listeners.push({destroy:function(){}});f()}return a};StyleFormatPanel=function(a,c,d){BaseFormatPanel.call(this,a,c,d);this.init()};mxUtils.extend(StyleFormatPanel,BaseFormatPanel);
StyleFormatPanel.prototype.init=function(){var a=this.format.getSelectionState();a.containsImage&&"image"!=a.style.shape||this.container.appendChild(this.addFill(this.createPanel()));this.container.appendChild(this.addStroke(this.createPanel()));a=this.createRelativeOption(mxResources.get("opacity"),mxConstants.STYLE_OPACITY,41);a.style.paddingTop="8px";a.style.paddingBottom="8px";this.container.appendChild(a);this.container.appendChild(this.addEffects(this.createPanel()));a=this.addEditOps(this.createPanel());
@@ -6158,7 +6158,7 @@ L=document.createElement("tr"),N=L.cloneNode(!0),Q=document.createElement("td"),
mxResources.get("fitToSheetsAcross"));W.appendChild(l);mxUtils.write(P,mxResources.get("fitToBy"));var R=O.cloneNode(!0);Y.appendChild(R);mxEvent.addListener(O,"focus",function(){K.checked=!0});mxEvent.addListener(R,"focus",function(){K.checked=!0});l=document.createElement("span");mxUtils.write(l,mxResources.get("fitToSheetsDown"));U.appendChild(l);L.appendChild(Q);L.appendChild(J);L.appendChild(W);N.appendChild(P);N.appendChild(Y);N.appendChild(U);T.appendChild(L);T.appendChild(N);p.appendChild(T);
m.appendChild(p);h.appendChild(m);m=document.createElement("div");l=document.createElement("div");l.style.fontWeight="bold";l.style.marginBottom="12px";mxUtils.write(l,mxResources.get("paperSize"));m.appendChild(l);l=document.createElement("div");l.style.marginBottom="12px";var V=PageSetupDialog.addPageFormatPanel(l,"printdialog",a.editor.graph.pageFormat||mxConstants.PAGE_FORMAT_A4_PORTRAIT);m.appendChild(l);l=document.createElement("span");mxUtils.write(l,mxResources.get("pageScale"));m.appendChild(l);
var S=document.createElement("input");S.style.cssText="margin:0 8px 0 8px;";S.setAttribute("value","100 %");S.style.width="60px";m.appendChild(S);h.appendChild(m);l=document.createElement("div");l.style.cssText="text-align:right;margin:62px 0 0 0;";m=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});m.className="geBtn";a.editor.cancelFirst&&l.appendChild(m);a.isOffline()||(p=mxUtils.button(mxResources.get("help"),function(){window.open("https://desk.draw.io/support/solutions/articles/16000048947")}),
-p.className="geBtn",l.appendChild(p));PrintDialog.previewEnabled&&(p=mxUtils.button(mxResources.get("preview"),function(){a.hideDialog();d(!1)}),p.className="geBtn",l.appendChild(p));p=mxUtils.button(mxResources.get(PrintDialog.previewEnabled?"print":"ok"),function(){a.hideDialog();d(!0)});p.className="geBtn gePrimaryBtn";l.appendChild(p);a.editor.cancelFirst||l.appendChild(m);h.appendChild(l);this.container=h}})();(function(){EditorUi.VERSION="6.9.9";EditorUi.compactUi="atlas"!=uiTheme;EditorUi.enableLogging=/.*\.draw\.io$/.test(window.location.hostname);EditorUi.isElectronApp=null!=window&&null!=window.process&&null!=window.process.versions&&null!=window.process.versions.electron;EditorUi.prototype.emptyDiagramXml='<mxGraphModel><root><mxCell id="0"/><mxCell id="1" parent="0"/></root></mxGraphModel>';EditorUi.prototype.emptyLibraryXml="<mxlibrary>[]</mxlibrary>";EditorUi.prototype.mode=null;EditorUi.prototype.sidebarFooterHeight=
+p.className="geBtn",l.appendChild(p));PrintDialog.previewEnabled&&(p=mxUtils.button(mxResources.get("preview"),function(){a.hideDialog();d(!1)}),p.className="geBtn",l.appendChild(p));p=mxUtils.button(mxResources.get(PrintDialog.previewEnabled?"print":"ok"),function(){a.hideDialog();d(!0)});p.className="geBtn gePrimaryBtn";l.appendChild(p);a.editor.cancelFirst||l.appendChild(m);h.appendChild(l);this.container=h}})();(function(){EditorUi.VERSION="7.0.0";EditorUi.compactUi="atlas"!=uiTheme;EditorUi.enableLogging=/.*\.draw\.io$/.test(window.location.hostname);EditorUi.isElectronApp=null!=window&&null!=window.process&&null!=window.process.versions&&null!=window.process.versions.electron;EditorUi.prototype.emptyDiagramXml='<mxGraphModel><root><mxCell id="0"/><mxCell id="1" parent="0"/></root></mxGraphModel>';EditorUi.prototype.emptyLibraryXml="<mxlibrary>[]</mxlibrary>";EditorUi.prototype.mode=null;EditorUi.prototype.sidebarFooterHeight=
36;EditorUi.prototype.defaultCustomShapeStyle="shape=stencil(tZRtTsQgEEBPw1+DJR7AoN6DbWftpAgE0Ortd/jYRGq72R+YNE2YgTePloEJGWblgA18ZuKFDcMj5/Sm8boZq+BgjCX4pTyqk6ZlKROitwusOMXKQDODx5iy4pXxZ5qTHiFHawxB0JrQZH7lCabQ0Fr+XWC1/E8zcsT/gAi+Subo2/3Mh6d/oJb5nU1b5tW7r2knautaa3T+U32o7f7vZwpJkaNDLORJjcu7t59m2jXxqX9un+tt022acsfmoKaQZ+vhhswZtS6Ne/ThQGt0IV0N3Yyv6P3CeT9/tHO0XFI5cAE=);whiteSpace=wrap;html=1;";EditorUi.prototype.maxBackgroundSize=1600;EditorUi.prototype.maxImageSize=520;EditorUi.prototype.resampleThreshold=
1E5;EditorUi.prototype.maxImageBytes=1E6;EditorUi.prototype.maxBackgroundBytes=25E5;EditorUi.prototype.currentFile=null;EditorUi.prototype.printPdfExport=!1;EditorUi.prototype.pdfPageExport=!0;EditorUi.prototype.formatEnabled="0"!=urlParams.format;(function(){EditorUi.prototype.useCanvasForExport=!1;EditorUi.prototype.jpgSupported=!1;try{var a=document.createElement("canvas"),b=new Image;b.onload=function(){try{a.getContext("2d").drawImage(b,0,0);var c=a.toDataURL("image/png");EditorUi.prototype.useCanvasForExport=
null!=c&&6<c.length}catch(n){}};b.src="data:image/svg+xml;base64,"+btoa(unescape(encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1px" height="1px" version="1.1"><foreignObject pointer-events="all" width="1" height="1"><div xmlns="http://www.w3.org/1999/xhtml"></div></foreignObject></svg>')))}catch(m){}try{a=document.createElement("canvas");a.width=a.height=1;var c=a.toDataURL("image/jpeg");EditorUi.prototype.jpgSupported=null!==c.match("image/jpeg")}catch(m){}})();
diff --git a/war/js/atlas-viewer.min.js b/war/js/atlas-viewer.min.js
index 4b57366a..f595e412 100644
--- a/war/js/atlas-viewer.min.js
+++ b/war/js/atlas-viewer.min.js
@@ -2371,12 +2371,12 @@ mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPo
arguments)};mxCellRenderer.prototype.defaultShapes.plus=v;var ya=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var c=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+c,a.y+c,a.width-2*c,a.height-2*c)}return a};mxRhombus.prototype.paintVertexShape=function(a,c,b,d,f){ya.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var e=2*Math.max(2,this.strokewidth+
1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);c+=e;b+=e;d-=2*e;f-=2*e;0<d&&0<f&&(a.setShadow(!1),ya.apply(this,[a,c,b,d,f]))}};mxUtils.extend(w,mxRectangleShape);w.prototype.isHtmlAllowed=function(){return!1};w.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var c=(Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+c,a.y+c,a.width-2*c,a.height-2*c)}return a};w.prototype.paintForeground=function(a,c,b,
d,f){if(null!=this.style){if(!this.outline&&1==this.style["double"]){var e=Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);c+=e;b+=e;d-=2*e;f-=2*e;0<d&&0<f&&mxRectangleShape.prototype.paintBackground.apply(this,arguments)}a.setDashed(!1);var e=0,g;do{g=mxCellRenderer.prototype.defaultShapes[this.style["symbol"+e]];if(null!=g){var h=this.style["symbol"+e+"Align"],ia=this.style["symbol"+e+"VerticalAlign"],n=this.style["symbol"+e+"Width"],p=this.style["symbol"+e+"Height"],
-r=this.style["symbol"+e+"Spacing"]||0,t=this.style["symbol"+e+"ArcSpacing"];null!=t&&(r+=this.getArcSize(d+this.strokewidth,f+this.strokewidth)*t);var t=c,q=b,t=h==mxConstants.ALIGN_CENTER?t+(d-n)/2:h==mxConstants.ALIGN_RIGHT?t+(d-n-r):t+r,q=ia==mxConstants.ALIGN_MIDDLE?q+(f-p)/2:ia==mxConstants.ALIGN_BOTTOM?q+(f-p-r):q+r;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,t,q,n,p);a.restore()}e++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,arguments)};
-mxCellRenderer.prototype.defaultShapes.ext=w;mxUtils.extend(x,mxCylinder);x.prototype.redrawPath=function(a,c,b,d,f,e){e?(a.moveTo(0,0),a.lineTo(d/2,f/2),a.lineTo(d,0),a.end()):(a.moveTo(0,0),a.lineTo(d,0),a.lineTo(d,f),a.lineTo(0,f),a.close())};mxCellRenderer.prototype.defaultShapes.message=x;mxUtils.extend(D,mxShape);D.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.ellipse(d/4,0,d/2,f/4);a.fillAndStroke();a.begin();a.moveTo(d/2,f/4);a.lineTo(d/2,2*f/3);a.moveTo(d/2,f/3);a.lineTo(0,
-f/3);a.moveTo(d/2,f/3);a.lineTo(d,f/3);a.moveTo(d/2,2*f/3);a.lineTo(0,f);a.moveTo(d/2,2*f/3);a.lineTo(d,f);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlActor=D;mxUtils.extend(A,mxShape);A.prototype.getLabelBounds=function(a){return new mxRectangle(a.x+a.width/6,a.y,5*a.width/6,a.height)};A.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(0,f/4);a.lineTo(0,3*f/4);a.end();a.stroke();a.begin();a.moveTo(0,f/2);a.lineTo(d/6,f/2);a.end();a.stroke();a.ellipse(d/
-6,0,5*d/6,f);a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.umlBoundary=A;mxUtils.extend(y,mxEllipse);y.prototype.paintVertexShape=function(a,c,b,d,f){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(c+d/8,b+f);a.lineTo(c+7*d/8,b+f);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlEntity=y;mxUtils.extend(B,mxShape);B.prototype.paintVertexShape=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(d,0);a.lineTo(0,f);a.moveTo(0,0);a.lineTo(d,f);
-a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlDestroy=B;mxUtils.extend(C,mxShape);C.prototype.getLabelBounds=function(a){return new mxRectangle(a.x,a.y+a.height/8,a.width,7*a.height/8)};C.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(3*d/8,f/8*1.1);a.lineTo(5*d/8,0);a.end();a.stroke();a.ellipse(0,f/8,d,7*f/8);a.fillAndStroke()};C.prototype.paintForeground=function(a,c,b,d,f){a.begin();a.moveTo(3*d/8,f/8*1.1);a.lineTo(5*d/8,f/4);a.end();a.stroke()};
-mxCellRenderer.prototype.defaultShapes.umlControl=C;mxUtils.extend(J,mxRectangleShape);J.prototype.size=40;J.prototype.isHtmlAllowed=function(){return!1};J.prototype.getLabelBounds=function(a){var c=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"size",this.size))*this.scale));return new mxRectangle(a.x,a.y,a.width,c)};J.prototype.paintBackground=function(a,c,b,d,f){var e=Math.max(0,Math.min(f,parseFloat(mxUtils.getValue(this.style,"size",this.size)))),g=mxUtils.getValue(this.style,
+r=this.style["symbol"+e+"Spacing"]||0,t=this.style["symbol"+e+"VSpacing"]||r,q=this.style["symbol"+e+"ArcSpacing"];null!=q&&(q*=this.getArcSize(d+this.strokewidth,f+this.strokewidth),r+=q,t+=q);var q=c,m=b,q=h==mxConstants.ALIGN_CENTER?q+(d-n)/2:h==mxConstants.ALIGN_RIGHT?q+(d-n-r):q+r,m=ia==mxConstants.ALIGN_MIDDLE?m+(f-p)/2:ia==mxConstants.ALIGN_BOTTOM?m+(f-p-t):m+t;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,q,m,n,p);a.restore()}e++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,
+arguments)};mxCellRenderer.prototype.defaultShapes.ext=w;mxUtils.extend(x,mxCylinder);x.prototype.redrawPath=function(a,c,b,d,f,e){e?(a.moveTo(0,0),a.lineTo(d/2,f/2),a.lineTo(d,0),a.end()):(a.moveTo(0,0),a.lineTo(d,0),a.lineTo(d,f),a.lineTo(0,f),a.close())};mxCellRenderer.prototype.defaultShapes.message=x;mxUtils.extend(D,mxShape);D.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.ellipse(d/4,0,d/2,f/4);a.fillAndStroke();a.begin();a.moveTo(d/2,f/4);a.lineTo(d/2,2*f/3);a.moveTo(d/2,
+f/3);a.lineTo(0,f/3);a.moveTo(d/2,f/3);a.lineTo(d,f/3);a.moveTo(d/2,2*f/3);a.lineTo(0,f);a.moveTo(d/2,2*f/3);a.lineTo(d,f);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlActor=D;mxUtils.extend(A,mxShape);A.prototype.getLabelBounds=function(a){return new mxRectangle(a.x+a.width/6,a.y,5*a.width/6,a.height)};A.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(0,f/4);a.lineTo(0,3*f/4);a.end();a.stroke();a.begin();a.moveTo(0,f/2);a.lineTo(d/6,f/2);a.end();
+a.stroke();a.ellipse(d/6,0,5*d/6,f);a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.umlBoundary=A;mxUtils.extend(y,mxEllipse);y.prototype.paintVertexShape=function(a,c,b,d,f){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(c+d/8,b+f);a.lineTo(c+7*d/8,b+f);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlEntity=y;mxUtils.extend(B,mxShape);B.prototype.paintVertexShape=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(d,0);a.lineTo(0,f);a.moveTo(0,
+0);a.lineTo(d,f);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlDestroy=B;mxUtils.extend(C,mxShape);C.prototype.getLabelBounds=function(a){return new mxRectangle(a.x,a.y+a.height/8,a.width,7*a.height/8)};C.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(3*d/8,f/8*1.1);a.lineTo(5*d/8,0);a.end();a.stroke();a.ellipse(0,f/8,d,7*f/8);a.fillAndStroke()};C.prototype.paintForeground=function(a,c,b,d,f){a.begin();a.moveTo(3*d/8,f/8*1.1);a.lineTo(5*d/8,f/4);
+a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlControl=C;mxUtils.extend(J,mxRectangleShape);J.prototype.size=40;J.prototype.isHtmlAllowed=function(){return!1};J.prototype.getLabelBounds=function(a){var c=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"size",this.size))*this.scale));return new mxRectangle(a.x,a.y,a.width,c)};J.prototype.paintBackground=function(a,c,b,d,f){var e=Math.max(0,Math.min(f,parseFloat(mxUtils.getValue(this.style,"size",this.size)))),g=mxUtils.getValue(this.style,
"participant");null==g||null==this.state?mxRectangleShape.prototype.paintBackground.call(this,a,c,b,d,e):(g=this.state.view.graph.cellRenderer.getShape(g),null!=g&&g!=J&&(g=new g,g.apply(this.state),a.save(),g.paintVertexShape(a,c,b,d,e),a.restore()));e<f&&(a.setDashed(!0),a.begin(),a.moveTo(c+d/2,b+e),a.lineTo(c+d/2,b+f),a.end(),a.stroke())};J.prototype.paintForeground=function(a,c,b,d,f){var e=Math.max(0,Math.min(f,parseFloat(mxUtils.getValue(this.style,"size",this.size))));mxRectangleShape.prototype.paintForeground.call(this,
a,c,b,d,Math.min(f,e))};mxCellRenderer.prototype.defaultShapes.umlLifeline=J;mxUtils.extend(K,mxShape);K.prototype.width=60;K.prototype.height=30;K.prototype.corner=10;K.prototype.getLabelBounds=function(a){var c=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.style,"width",this.width))*this.scale)),b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"height",this.height))*this.scale));return new mxRectangle(a.x,a.y,c,b)};K.prototype.paintBackground=function(a,c,b,d,
f){var e=this.corner,g=Math.min(d,Math.max(e,parseFloat(mxUtils.getValue(this.style,"width",this.width)))),h=Math.min(f,Math.max(1.5*e,parseFloat(mxUtils.getValue(this.style,"height",this.height))));a.begin();a.moveTo(c,b);a.lineTo(c+g,b);a.lineTo(c+g,b+Math.max(0,h-1.5*e));a.lineTo(c+Math.max(0,g-e),b+h);a.lineTo(c,b+h);a.close();a.fillAndStroke();a.begin();a.moveTo(c+g,b);a.lineTo(c+d,b);a.lineTo(c+d,b+f);a.lineTo(c,b+f);a.lineTo(c,b+h);a.stroke()};mxCellRenderer.prototype.defaultShapes.umlFrame=
@@ -2673,7 +2673,7 @@ EditorUi.prototype.saveRequest=function(a,b,d,e,h,q){h=!mxClient.IS_IOS||!naviga
mxResources.get("saving"))&&f.send(mxUtils.bind(this,function(){this.spinner.stop();if(200<=f.getStatus()&&299>=f.getStatus())try{this.exportFile(f.getText(),a,q,!0,c,d)}catch(z){this.handleError(z)}else this.handleError({message:mxResources.get("errorSavingFile")})}),function(a){this.spinner.stop();this.handleError(a)})})))}}),mxUtils.bind(this,function(){this.hideDialog()}),mxResources.get("saveAs"),mxResources.get("download"),!1,!1,h,null,null,4);this.showDialog(a.container,380,5>this.getServiceCount(!1)-
1?270:390,!0,!0);a.init()};EditorUi.prototype.exportFile=function(a,b,d,e,h,q){};EditorUi.prototype.pickFolder=function(a,b,d){b(null)};EditorUi.prototype.exportSvg=function(a,b,d,e,h,q,k,n,l){if(this.spinner.spin(document.body,mxResources.get("export"))){var c=this.editor.graph.isSelectionEmpty();d=null!=d?d:c;c=b?null:this.editor.graph.background;c==mxConstants.NONE&&(c=null);null==c&&0==b&&(c="#ffffff");var f=this.editor.graph.getSvg(c,a,k,n,null,d);e&&this.editor.graph.addSvgShadow(f);var g=this.getBaseFilename()+
".svg",p=mxUtils.bind(this,function(a){this.spinner.stop();h&&a.setAttribute("content",this.getFileData(!0,null,null,null,d,l));var c='<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\n'+mxUtils.getXml(a);this.isLocalFileSave()||c.length<=MAX_REQUEST_SIZE?this.saveData(g,"svg",c,"image/svg+xml"):this.handleError({message:mxResources.get("drawingTooLarge")},mxResources.get("error"),mxUtils.bind(this,function(){mxUtils.popup(c)}))});this.convertMath(this.editor.graph,
-f,!1,mxUtils.bind(this,function(){q?(null==this.thumbImageCache&&(this.thumbImageCache={}),this.convertImages(f,p,this.thumbImageCache)):p(f)}))}};EditorUi.prototype.addCheckbox=function(a,b,d,e,h,k){k=null!=k?k:!0;var c=document.createElement("input");c.style.marginRight="8px";c.style.marginTop="16px";c.setAttribute("type","checkbox");d&&(c.setAttribute("checked","checked"),c.defaultChecked=!0);e&&c.setAttribute("disabled","disabled");k&&(a.appendChild(c),mxUtils.write(a,b),h||mxUtils.br(a));return c};
+f,!1,mxUtils.bind(this,function(){q?(null==this.thumbImageCache&&(this.thumbImageCache={}),this.convertImages(f,p,this.thumbImageCache)):p(f)}))}};EditorUi.prototype.addCheckbox=function(a,b,d,e,h,q){q=null!=q?q:!0;var c=document.createElement("input");c.style.marginRight="8px";c.style.marginTop="16px";c.setAttribute("type","checkbox");d&&(c.setAttribute("checked","checked"),c.defaultChecked=!0);e&&c.setAttribute("disabled","disabled");q&&(a.appendChild(c),mxUtils.write(a,b),h||mxUtils.br(a));return c};
EditorUi.prototype.addEditButton=function(a,b){var c=this.addCheckbox(a,mxResources.get("edit")+":",!0,null,!0);c.style.marginLeft="24px";var d=this.getCurrentFile(),e="";null!=d&&d.getMode()!=App.MODE_DEVICE&&d.getMode()!=App.MODE_BROWSER&&(e=window.location.href);var f=document.createElement("select");f.style.width="120px";f.style.marginLeft="8px";f.style.marginRight="10px";f.className="geBtn";d=document.createElement("option");d.setAttribute("value","blank");mxUtils.write(d,mxResources.get("makeCopy"));
f.appendChild(d);d=document.createElement("option");d.setAttribute("value","custom");mxUtils.write(d,mxResources.get("custom")+"...");f.appendChild(d);a.appendChild(f);mxEvent.addListener(f,"change",mxUtils.bind(this,function(){if("custom"==f.value){var a=new FilenameDialog(this,e,mxResources.get("ok"),function(a){null!=a?e=a:f.value="blank"},mxResources.get("url"),null,null,null,null,function(){f.value="blank"});this.showDialog(a.container,300,80,!0,!1);a.init()}}));mxEvent.addListener(c,"change",
mxUtils.bind(this,function(){c.checked&&(null==b||b.checked)?f.removeAttribute("disabled"):f.setAttribute("disabled","disabled")}));mxUtils.br(a);return{getLink:function(){return c.checked?"blank"===f.value?"_blank":e:null},getEditInput:function(){return c},getEditSelect:function(){return f}}};EditorUi.prototype.addLinkSection=function(a,b){function c(){k.innerHTML='<div style="width:100%;height:100%;box-sizing:border-box;'+(null!=f&&f!=mxConstants.NONE?"border:1px solid black;background-color:"+
@@ -2690,12 +2690,12 @@ g.appendChild(p);var k=this.getCurrentFile();null==d&&null!=k&&k.constructor==wi
this.addLinkSection(c),m=this.addCheckbox(c,mxResources.get("zoom"),!0,null,!0);mxUtils.write(c,":");var w=document.createElement("input");w.setAttribute("type","text");w.style.marginRight="16px";w.style.width="60px";w.style.marginLeft="4px";w.style.marginRight="12px";w.value="100%";c.appendChild(w);var x=this.addCheckbox(c,mxResources.get("fit"),!0),g=null!=this.pages&&1<this.pages.length,D=D=this.addCheckbox(c,mxResources.get("allPages"),g,!g),A=this.addCheckbox(c,mxResources.get("layers"),!0),
y=this.addCheckbox(c,mxResources.get("lightbox"),!0),B=this.addEditButton(c,y),C=B.getEditInput();C.style.marginBottom="16px";mxEvent.addListener(y,"change",function(){y.checked?C.removeAttribute("disabled"):C.setAttribute("disabled","disabled");C.checked&&y.checked?B.getEditSelect().removeAttribute("disabled"):B.getEditSelect().setAttribute("disabled","disabled")});a=new CustomDialog(this,c,mxUtils.bind(this,function(){e(n.checked?d:null,m.checked,w.value,l.getTarget(),l.getColor(),x.checked,D.checked,
A.checked,y.checked,B.getLink())}),null,a,b);this.showDialog(a.container,340,360,!0,!0);f.focus()};EditorUi.prototype.showPublishLinkDialog=function(a,b,d,e,h,k){var c=document.createElement("div");c.style.whiteSpace="nowrap";var f=document.createElement("h3");mxUtils.write(f,a||mxResources.get("link"));f.style.cssText="width:100%;text-align:center;margin-top:0px;margin-bottom:12px";c.appendChild(f);var g=this.getCurrentFile(),f="https://desk.draw.io/support/solutions/articles/16000051941";a=0;if(null!=
-g&&g.constructor==window.DriveFile&&!b){a=80;var f="https://desk.draw.io/support/solutions/articles/16000039384",p=document.createElement("div");p.style.cssText="border-bottom:1px solid lightGray;padding-bottom:14px;padding-top:6px;margin-bottom:14px;text-align:center;";var l=document.createElement("div");l.style.whiteSpace="normal";mxUtils.write(l,mxResources.get("linkAccountRequired"));p.appendChild(l);l=mxUtils.button(mxResources.get("share"),mxUtils.bind(this,function(){this.drive.showPermissions(g.getId())}));
-l.style.marginTop="12px";l.className="geBtn";p.appendChild(l);c.appendChild(p);l=document.createElement("a");l.style.paddingLeft="12px";l.style.color="gray";l.style.fontSize="11px";l.setAttribute("href","javascript:void(0);");mxUtils.write(l,mxResources.get("check"));p.appendChild(l);mxEvent.addListener(l,"click",mxUtils.bind(this,function(){this.spinner.spin(document.body,mxResources.get("loading"))&&this.getPublicUrl(this.getCurrentFile(),mxUtils.bind(this,function(a){this.spinner.stop();a=new ErrorDialog(this,
-null,mxResources.get(null!=a?"diagramIsPublic":"diagramIsNotPublic"),mxResources.get("ok"));this.showDialog(a.container,300,80,!0,!1);a.init()}))}))}var q=null,m=null;if(null!=d||null!=e)a+=30,mxUtils.write(c,mxResources.get("width")+":"),q=document.createElement("input"),q.setAttribute("type","text"),q.style.marginRight="16px",q.style.width="50px",q.style.marginLeft="6px",q.style.marginRight="16px",q.style.marginBottom="10px",q.value="100%",c.appendChild(q),mxUtils.write(c,mxResources.get("height")+
+g&&g.constructor==window.DriveFile&&!b){a=80;var f="https://desk.draw.io/support/solutions/articles/16000039384",p=document.createElement("div");p.style.cssText="border-bottom:1px solid lightGray;padding-bottom:14px;padding-top:6px;margin-bottom:14px;text-align:center;";var q=document.createElement("div");q.style.whiteSpace="normal";mxUtils.write(q,mxResources.get("linkAccountRequired"));p.appendChild(q);q=mxUtils.button(mxResources.get("share"),mxUtils.bind(this,function(){this.drive.showPermissions(g.getId())}));
+q.style.marginTop="12px";q.className="geBtn";p.appendChild(q);c.appendChild(p);q=document.createElement("a");q.style.paddingLeft="12px";q.style.color="gray";q.style.fontSize="11px";q.setAttribute("href","javascript:void(0);");mxUtils.write(q,mxResources.get("check"));p.appendChild(q);mxEvent.addListener(q,"click",mxUtils.bind(this,function(){this.spinner.spin(document.body,mxResources.get("loading"))&&this.getPublicUrl(this.getCurrentFile(),mxUtils.bind(this,function(a){this.spinner.stop();a=new ErrorDialog(this,
+null,mxResources.get(null!=a?"diagramIsPublic":"diagramIsNotPublic"),mxResources.get("ok"));this.showDialog(a.container,300,80,!0,!1);a.init()}))}))}var l=null,m=null;if(null!=d||null!=e)a+=30,mxUtils.write(c,mxResources.get("width")+":"),l=document.createElement("input"),l.setAttribute("type","text"),l.style.marginRight="16px",l.style.width="50px",l.style.marginLeft="6px",l.style.marginRight="16px",l.style.marginBottom="10px",l.value="100%",c.appendChild(l),mxUtils.write(c,mxResources.get("height")+
":"),m=document.createElement("input"),m.setAttribute("type","text"),m.style.width="50px",m.style.marginLeft="6px",m.style.marginBottom="10px",m.value=e+"px",c.appendChild(m),mxUtils.br(c);var x=this.addLinkSection(c,k);d=null!=this.pages&&1<this.pages.length;var D=null;if(null==g||g.constructor!=window.DriveFile||b)D=this.addCheckbox(c,mxResources.get("allPages"),d,!d);var A=this.addCheckbox(c,mxResources.get("lightbox"),!0),y=this.addEditButton(c,A),B=y.getEditInput(),C=this.addCheckbox(c,mxResources.get("layers"),
!0);C.style.marginLeft=B.style.marginLeft;C.style.marginBottom="16px";C.style.marginTop="8px";mxEvent.addListener(A,"change",function(){A.checked?(C.removeAttribute("disabled"),B.removeAttribute("disabled")):(C.setAttribute("disabled","disabled"),B.setAttribute("disabled","disabled"));B.checked&&A.checked?y.getEditSelect().removeAttribute("disabled"):y.getEditSelect().setAttribute("disabled","disabled")});b=new CustomDialog(this,c,mxUtils.bind(this,function(){h(x.getTarget(),x.getColor(),null==D?
-!0:D.checked,A.checked,y.getLink(),C.checked,null!=q?q.value:null,null!=m?m.value:null)}),null,mxResources.get("create"),f);this.showDialog(b.container,340,246+a,!0,!0);null!=q?(q.focus(),mxClient.IS_FF||5<=document.documentMode||mxClient.IS_QUIRKS?q.select():document.execCommand("selectAll",!1,null)):x.focus()};EditorUi.prototype.showRemoteExportDialog=function(a,b,d,e){var c=document.createElement("div");c.style.whiteSpace="nowrap";var f=document.createElement("h3");mxUtils.write(f,mxResources.get("image"));
+!0:D.checked,A.checked,y.getLink(),C.checked,null!=l?l.value:null,null!=m?m.value:null)}),null,mxResources.get("create"),f);this.showDialog(b.container,340,246+a,!0,!0);null!=l?(l.focus(),mxClient.IS_FF||5<=document.documentMode||mxClient.IS_QUIRKS?l.select():document.execCommand("selectAll",!1,null)):x.focus()};EditorUi.prototype.showRemoteExportDialog=function(a,b,d,e){var c=document.createElement("div");c.style.whiteSpace="nowrap";var f=document.createElement("h3");mxUtils.write(f,mxResources.get("image"));
f.style.cssText="width:100%;text-align:center;margin-top:0px;margin-bottom:4px";c.appendChild(f);var g=this.addCheckbox(c,mxResources.get("selectionOnly"),!1,this.editor.graph.isSelectionEmpty()),p=e?null:this.addCheckbox(c,mxResources.get("includeCopyOfMyDiagram"),!0);null!=p&&(p.style.marginBottom="16px");a=new CustomDialog(this,c,mxUtils.bind(this,function(){d(!g.checked,null!=p?p.checked:!1)}),null,a,b);this.showDialog(a.container,300,e?100:146,!0,!0)};EditorUi.prototype.showExportDialog=function(a,
b,d,e,h,k,l,n){l=null!=l?l:!0;var c=document.createElement("div");c.style.whiteSpace="nowrap";var f=this.editor.graph,g="jpeg"==n?170:280,p=document.createElement("h3");mxUtils.write(p,a);p.style.cssText="width:100%;text-align:center;margin-top:0px;margin-bottom:10px";c.appendChild(p);mxUtils.write(c,mxResources.get("zoom")+":");var q=document.createElement("input");q.setAttribute("type","text");q.style.marginRight="16px";q.style.width="60px";q.style.marginLeft="4px";q.style.marginRight="12px";q.value=
this.lastExportZoom||"100%";c.appendChild(q);mxUtils.write(c,mxResources.get("borderWidth")+":");var m=document.createElement("input");m.setAttribute("type","text");m.style.marginRight="16px";m.style.width="60px";m.style.marginLeft="4px";m.value=this.lastExportBorder||"0";c.appendChild(m);mxUtils.br(c);var u=this.addCheckbox(c,mxResources.get("transparentBackground"),f.background==mxConstants.NONE||null==f.background,null,null,"jpeg"!=n),A=this.addCheckbox(c,mxResources.get("selectionOnly"),!1,f.isSelectionEmpty()),
@@ -2722,8 +2722,8 @@ function(){var a=new mxUrlConverter;a.updateBaseUrl();var b=a.convert;a.convert=
p=0;p<h.length;p++)mxUtils.bind(this,function(d){var h=e.convert(d.getAttribute(g));if(null!=h&&"data:"!=h.substring(0,5)){var p=f[h];null==p?(c++,this.convertImageToDataUri(h,function(e){null!=e&&(f[h]=e,d.setAttribute(g,e));c--;0==c&&b(a)})):d.setAttribute(g,p)}})(h[p])});d("image","xlink:href");d("img","src");0==c&&b(a)};EditorUi.prototype.loadUrl=function(a,b,d,e,h,k){try{var c=e||/(\.png)($|\?)/i.test(a)||/(\.jpe?g)($|\?)/i.test(a)||/(\.gif)($|\?)/i.test(a);h=null!=h?h:!0;var f=mxUtils.bind(this,
function(){mxUtils.get(a,mxUtils.bind(this,function(a){if(200<=a.getStatus()&&299>=a.getStatus()){if(null!=b){var e=a.getText();if(c){if((9==document.documentMode||10==document.documentMode)&&"undefined"!==typeof window.mxUtilsBinaryToArray){a=mxUtilsBinaryToArray(a.request.responseBody).toArray();for(var e=Array(a.length),f=0;f<a.length;f++)e[f]=String.fromCharCode(a[f]);e=e.join("")}k=null!=k?k:"data:image/png;base64,";e=k+this.base64Encode(e)}b(e)}}else null!=d&&d({code:App.ERROR_UNKNOWN})}),function(){null!=
d&&d({code:App.ERROR_UNKNOWN})},c,this.timeout,function(){h&&null!=d&&d({code:App.ERROR_TIMEOUT,retry:f})})});f()}catch(t){null!=d&&d(t)}};EditorUi.prototype.isCorsEnabledForUrl=function(a){return"https?://raw.githubusercontent.com/"===a.substring(0,34)||/^https?:\/\/.*\.github\.io\//.test(a)||/^https?:\/\/(.*\.)?rawgit\.com\//.test(a)};EditorUi.prototype.convertImageToDataUri=function(a,b){if(/(\.svg)$/i.test(a))mxUtils.get(a,mxUtils.bind(this,function(a){b(this.createSvgDataUri(a.getText()))}),
-function(){b()});else{var c=new Image;c.onload=function(){var a=document.createElement("canvas"),d=a.getContext("2d");a.height=c.height;a.width=c.width;d.drawImage(c,0,0);b(a.toDataURL())};c.onerror=function(){b()};c.src=a}};EditorUi.prototype.importXml=function(a,b,d,e,h){b=null!=b?b:0;d=null!=d?d:0;var c=[];try{var f=this.editor.graph;if(null!=a&&0<a.length){var g=mxUtils.parseXml(a),k=this.editor.extractGraphModel(g.documentElement,null!=this.pages);if(null!=k&&"mxfile"==k.nodeName&&null!=this.pages){var p=
-k.getElementsByTagName("diagram");if(1==p.length)k=mxUtils.parseXml(f.decompress(mxUtils.getTextContent(p[0]))).documentElement;else if(1<p.length){f.model.beginUpdate();try{for(var l=0;l<p.length;l++){var m=this.updatePageRoot(new DiagramPage(p[l])),w=this.pages.length;null==m.getName()&&m.setName(mxResources.get("pageWithNumber",[w+1]));f.model.execute(new ChangePage(this,m,m,w))}}finally{f.model.endUpdate()}}}if(null!=k&&"mxGraphModel"===k.nodeName){var x=new mxGraphModel;(new mxCodec(k.ownerDocument)).decode(k,
+function(){b()});else{var c=new Image;c.onload=function(){var a=document.createElement("canvas"),d=a.getContext("2d");a.height=c.height;a.width=c.width;d.drawImage(c,0,0);b(a.toDataURL())};c.onerror=function(){b()};c.src=a}};EditorUi.prototype.importXml=function(a,b,d,e,h){b=null!=b?b:0;d=null!=d?d:0;var c=[];try{var f=this.editor.graph;if(null!=a&&0<a.length){var g=mxUtils.parseXml(a),p=this.editor.extractGraphModel(g.documentElement,null!=this.pages);if(null!=p&&"mxfile"==p.nodeName&&null!=this.pages){var k=
+p.getElementsByTagName("diagram");if(1==k.length)p=mxUtils.parseXml(f.decompress(mxUtils.getTextContent(k[0]))).documentElement;else if(1<k.length){f.model.beginUpdate();try{for(var l=0;l<k.length;l++){var m=this.updatePageRoot(new DiagramPage(k[l])),w=this.pages.length;null==m.getName()&&m.setName(mxResources.get("pageWithNumber",[w+1]));f.model.execute(new ChangePage(this,m,m,w))}}finally{f.model.endUpdate()}}}if(null!=p&&"mxGraphModel"===p.nodeName){var x=new mxGraphModel;(new mxCodec(p.ownerDocument)).decode(p,
x);var D=x.getChildCount(x.getRoot());f.model.getChildCount(f.model.getRoot());f.model.beginUpdate();try{a={};for(l=0;l<D;l++){var A=x.getChildAt(x.getRoot(),l);if(1!=D||f.isCellLocked(f.getDefaultParent()))A=f.importCells([A],0,0,f.model.getRoot(),null,a)[0],y=f.model.getChildren(A),f.moveCells(y,b,d),c=c.concat(y);else var y=x.getChildren(A),c=c.concat(f.importCells(y,b,d,f.getDefaultParent(),null,a))}if(e){f.isGridEnabled()&&(b=f.snap(b),d=f.snap(d));var B=f.getBoundingBoxFromGeometry(c,!0);null!=
B&&f.moveCells(c,b-B.x,d-B.y)}}finally{f.model.endUpdate()}}}}catch(C){throw h||this.handleError(C,mxResources.get("invalidOrMissingFile")),C;}return c};EditorUi.prototype.importLucidChart=function(a,b,d,e,h){var c=mxUtils.bind(this,function(){if(this.pasteLucidChart)try{this.insertLucidChart(a,b,d,e,h)}catch(u){this.handleError(u)}finally{null!=h&&h()}});this.pasteLucidChart||this.loadingExtensions||this.isOffline()?window.setTimeout(c,0):(this.loadingExtensions=!0,"1"==urlParams.dev?mxscript("/js/diagramly/Extensions.js",
c):mxscript("/js/extensions.min.js",c))};EditorUi.prototype.insertLucidChart=function(a,b,d,e,h){h=JSON.parse(a);a=[];if(null!=h.state){h=JSON.parse(h.state);for(var c in h.Pages)a.push(h.Pages[c]);a.sort(function(a,c){return a.Properties.Order<c.Properties.Order?-1:a.Properties.Order>c.Properties.Order?1:0})}else a.push(h);if(0<a.length){this.editor.graph.getModel().beginUpdate();try{if(this.pasteLucidChart(a[0],b,d,e),null!=this.pages){var f=this.currentPage;for(b=1;b<a.length;b++)this.insertPage(),
@@ -2733,18 +2733,18 @@ b,d,!0))}));else if("data:"==a.substring(0,5)||!this.isOffline()&&(h||/\.(gif|jp
e.height)),g=Math.round(e.width*f);e=Math.round(e.height*f);c.setSelectionCell(c.insertVertex(null,null,"",c.snap(b),c.snap(d),g,e,"shape=image;verticalLabelPosition=bottom;labelBackgroundColor=#ffffff;verticalAlign=top;aspect=fixed;imageAspect=0;image="+a+";"))}}),mxUtils.bind(this,function(){var f=null;c.getModel().beginUpdate();try{f=c.insertVertex(c.getDefaultParent(),null,a,c.snap(b),c.snap(d),1,1,"text;"+(e?"html=1;":"")),c.updateCellSize(f),c.fireEvent(new mxEventObject("textInserted","cells",
[f]))}finally{c.getModel().endUpdate()}c.setSelectionCell(f)}))}else{a=this.editor.graph.zapGremlins(mxUtils.trim(a));if(this.isCompatibleString(a))return this.importXml(a,b,d,k);if(0<a.length)if('{"state":"{\\"Properties\\":'==a.substring(0,26))this.importLucidChart(a,b,d,k);else{c=this.editor.graph;h=null;c.getModel().beginUpdate();try{h=c.insertVertex(c.getDefaultParent(),null,"",c.snap(b),c.snap(d),1,1,"text;"+(e?"html=1;":"")),c.fireEvent(new mxEventObject("textInserted","cells",[h])),h.value=
a,c.updateCellSize(h),/\b((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))/i.test(h.value)&&c.setLinkForCell(h,h.value),h.geometry.width+=c.gridSize,h.geometry.height+=c.gridSize}finally{c.getModel().endUpdate()}return[h]}}return[]};EditorUi.prototype.formatFileSize=function(a){var c=-1;do a/=1024,c++;while(1024<a);return Math.max(a,.1).toFixed(1)+
-" kB; MB; GB; TB;PB;EB;ZB;YB".split(";")[c]};EditorUi.prototype.convertDataUri=function(a){if("data:"==a.substring(0,5)){var c=a.indexOf(";");0<c&&(a=a.substring(0,c)+a.substring(a.indexOf(",",c+1)))}return a};EditorUi.prototype.isRemoteFileFormat=function(a,b){return/(\.*<graphml xmlns=\".*)/.test(a)||/(\"contentType\":\s*\"application\/gliffy\+json\")/.test(a)||null!=b&&/(\.vsdx)($|\?)/i.test(b)||null!=b&&/(\.vssx)($|\?)/i.test(b)};EditorUi.prototype.importFile=function(a,b,d,e,h,k,l,n,m,r,z){r=
-null!=r?r:!0;var c=!1,f=null;"image"==b.substring(0,5)?(m=!1,"image/png"==b.substring(0,9)&&(b=z?null:this.extractGraphModelFromPng(a),null!=b&&0<b.length&&(f=this.importXml(b,d,e,r),m=!0)),m||(f=this.editor.graph,b=a.indexOf(";"),0<b&&(a=a.substring(0,b)+a.substring(a.indexOf(",",b+1))),r&&f.isGridEnabled()&&(d=f.snap(d),e=f.snap(e)),f=[f.insertVertex(null,null,"",d,e,h,k,"shape=image;verticalLabelPosition=bottom;labelBackgroundColor=#ffffff;verticalAlign=top;aspect=fixed;imageAspect=0;image="+a+
-";")])):!this.isOffline()&&(new XMLHttpRequest).upload&&this.isRemoteFileFormat(a,l)?(c=!0,this.parseFile(null!=m?m:new Blob([a],{type:"application/octet-stream"}),mxUtils.bind(this,function(a){if(4==a.readyState){var c=null;200<=a.status&&299>=a.status&&(a=a.responseText,null!=a&&"<mxlibrary"==a.substring(0,10)?(null!=l&&".vssx"==l.toLowerCase().substring(l.length-5)&&(l=l.substring(0,l.length-5)+".xml"),this.loadLibrary(new LocalLibrary(this,a,l))):c=this.importXml(a,d,e,r));null!=n&&n(c)}}),l)):
-/(\.vsd)($|\?)/i.test(l)||(f=this.insertTextAt(this.validateFileData(a),d,e,!0,null,r));c||null==n||n(f);return f};EditorUi.prototype.base64Encode=function(a){for(var c="",b=0,d=a.length,e,k,l;b<d;){e=a.charCodeAt(b++)&255;if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4);c+="==";break}k=a.charCodeAt(b++);if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>
+" kB; MB; GB; TB;PB;EB;ZB;YB".split(";")[c]};EditorUi.prototype.convertDataUri=function(a){if("data:"==a.substring(0,5)){var c=a.indexOf(";");0<c&&(a=a.substring(0,c)+a.substring(a.indexOf(",",c+1)))}return a};EditorUi.prototype.isRemoteFileFormat=function(a,b){return/(\.*<graphml xmlns=\".*)/.test(a)||/(\"contentType\":\s*\"application\/gliffy\+json\")/.test(a)||null!=b&&/(\.vsdx)($|\?)/i.test(b)||null!=b&&/(\.vssx)($|\?)/i.test(b)};EditorUi.prototype.importFile=function(a,b,d,e,h,k,l,m,t,r,z){r=
+null!=r?r:!0;var c=!1,f=null;"image"==b.substring(0,5)?(t=!1,"image/png"==b.substring(0,9)&&(b=z?null:this.extractGraphModelFromPng(a),null!=b&&0<b.length&&(f=this.importXml(b,d,e,r),t=!0)),t||(f=this.editor.graph,b=a.indexOf(";"),0<b&&(a=a.substring(0,b)+a.substring(a.indexOf(",",b+1))),r&&f.isGridEnabled()&&(d=f.snap(d),e=f.snap(e)),f=[f.insertVertex(null,null,"",d,e,h,k,"shape=image;verticalLabelPosition=bottom;labelBackgroundColor=#ffffff;verticalAlign=top;aspect=fixed;imageAspect=0;image="+a+
+";")])):!this.isOffline()&&(new XMLHttpRequest).upload&&this.isRemoteFileFormat(a,l)?(c=!0,this.parseFile(null!=t?t:new Blob([a],{type:"application/octet-stream"}),mxUtils.bind(this,function(a){if(4==a.readyState){var c=null;200<=a.status&&299>=a.status&&(a=a.responseText,null!=a&&"<mxlibrary"==a.substring(0,10)?(null!=l&&".vssx"==l.toLowerCase().substring(l.length-5)&&(l=l.substring(0,l.length-5)+".xml"),this.loadLibrary(new LocalLibrary(this,a,l))):c=this.importXml(a,d,e,r));null!=m&&m(c)}}),l)):
+/(\.vsd)($|\?)/i.test(l)||(f=this.insertTextAt(this.validateFileData(a),d,e,!0,null,r));c||null==m||m(f);return f};EditorUi.prototype.base64Encode=function(a){for(var c="",b=0,d=a.length,e,k,l;b<d;){e=a.charCodeAt(b++)&255;if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4);c+="==";break}k=a.charCodeAt(b++);if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>
2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4|(k&240)>>4);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((k&15)<<2);c+="=";break}l=a.charCodeAt(b++);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4|(k&240)>>4);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((k&15)<<2|(l&192)>>6);
c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(l&63)}return c};EditorUi.prototype.importFiles=function(a,b,d,e,h,k,l,m,t,r,z,v){b=null!=b?b:0;d=null!=d?d:0;e=null!=e?e:this.maxImageSize;r=null!=r?r:this.maxImageBytes;var c=null!=b&&null!=d,f=!0,g=!1;if(!mxClient.IS_CHROMEAPP&&null!=a)for(var p=z||this.resampleThreshold,n=0;n<a.length;n++)if("image/"==a[n].type.substring(0,6)&&a[n].size>p){g=!0;break}var q=mxUtils.bind(this,function(){var g=this.editor.graph,p=g.gridSize;
h=null!=h?h:mxUtils.bind(this,function(a,b,d,e,f,g,h,k,p){return null!=a&&"<mxlibrary"==a.substring(0,10)?(this.spinner.stop(),this.loadLibrary(new LocalLibrary(this,a,h)),null):this.importFile(a,b,d,e,f,g,h,k,p,c,v)});k=null!=k?k:mxUtils.bind(this,function(a){g.setSelectionCells(a)});if(this.spinner.spin(document.body,mxResources.get("loading")))for(var n=a.length,q=n,u=[],t=mxUtils.bind(this,function(a,c){u[a]=c;if(0==--q){this.spinner.stop();if(null!=m)m(u);else{var b=[];g.getModel().beginUpdate();
-try{for(var d=0;d<u.length;d++){var e=u[d]();null!=e&&(b=b.concat(e))}}finally{g.getModel().endUpdate()}}k(b)}}),y=0;y<n;y++)mxUtils.bind(this,function(c){var g=a[c],k=new FileReader;k.onload=mxUtils.bind(this,function(a){if(null==l||l(g))if("image/"==g.type.substring(0,6))if("image/svg"==g.type.substring(0,9)){var k=a.target.result,n=k.indexOf(","),m=atob(k.substring(n+1)),q=mxUtils.parseXml(m),m=q.getElementsByTagName("svg");if(0<m.length){var m=m[0],u=v?null:m.getAttribute("content");null!=u&&
-"<"!=u.charAt(0)&&"%"!=u.charAt(0)&&(u=unescape(window.atob?atob(u):Base64.decode(u,!0)));null!=u&&"%"==u.charAt(0)&&(u=decodeURIComponent(u));null==u||"<mxfile "!==u.substring(0,8)&&"<mxGraphModel "!==u.substring(0,14)?t(c,mxUtils.bind(this,function(){try{if(k.substring(0,n+1),null!=q){var a=q.getElementsByTagName("svg");if(0<a.length){var f=a[0],l=parseFloat(f.getAttribute("width")),m=parseFloat(f.getAttribute("height")),r=f.getAttribute("viewBox");if(null==r||0==r.length)f.setAttribute("viewBox",
-"0 0 "+l+" "+m);else if(isNaN(l)||isNaN(m)){var u=r.split(" ");3<u.length&&(l=parseFloat(u[2]),m=parseFloat(u[3]))}k=this.createSvgDataUri(mxUtils.getXml(a[0]));var t=Math.min(1,Math.min(e/Math.max(1,l)),e/Math.max(1,m));return h(k,g.type,b+c*p,d+c*p,Math.max(1,Math.round(l*t)),Math.max(1,Math.round(m*t)),g.name)}}}catch(ba){}return null})):t(c,mxUtils.bind(this,function(){return h(u,"text/xml",b+c*p,d+c*p,0,0,g.name)}))}}else{m=!1;if("image/png"==g.type){var y=v?null:this.extractGraphModelFromPng(a.target.result);
-if(null!=y&&0<y.length){var x=new Image;x.src=a.target.result;t(c,mxUtils.bind(this,function(){return h(y,"text/xml",b+c*p,d+c*p,x.width,x.height,g.name)}));m=!0}}m||(mxClient.IS_CHROMEAPP?(this.spinner.stop(),this.showError(mxResources.get("error"),mxResources.get("dragAndDropNotSupported"),mxResources.get("cancel"),mxUtils.bind(this,function(){}),null,mxResources.get("ok"),mxUtils.bind(this,function(){this.actions.get("import").funct()}))):this.loadImage(a.target.result,mxUtils.bind(this,function(k){this.resizeImage(k,
-a.target.result,mxUtils.bind(this,function(k,l,m){t(c,mxUtils.bind(this,function(){if(null!=k&&k.length<r){var n=f&&this.isResampleImage(a.target.result,z)?Math.min(1,Math.min(e/l,e/m)):1;return h(k,g.type,b+c*p,d+c*p,Math.round(l*n),Math.round(m*n),g.name)}this.handleError({message:mxResources.get("imageTooBig")});return null}))}),f,e,z)})))}else h(a.target.result,g.type,b+c*p,d+c*p,240,160,g.name,function(a){t(c,function(){return a})})});/(\.vsdx)($|\?)/i.test(g.name)||/(\.vssx)($|\?)/i.test(g.name)?
+try{for(var d=0;d<u.length;d++){var e=u[d]();null!=e&&(b=b.concat(e))}}finally{g.getModel().endUpdate()}}k(b)}}),y=0;y<n;y++)mxUtils.bind(this,function(c){var g=a[c],k=new FileReader;k.onload=mxUtils.bind(this,function(a){if(null==l||l(g))if("image/"==g.type.substring(0,6))if("image/svg"==g.type.substring(0,9)){var k=a.target.result,m=k.indexOf(","),n=atob(k.substring(m+1)),q=mxUtils.parseXml(n),n=q.getElementsByTagName("svg");if(0<n.length){var n=n[0],u=v?null:n.getAttribute("content");null!=u&&
+"<"!=u.charAt(0)&&"%"!=u.charAt(0)&&(u=unescape(window.atob?atob(u):Base64.decode(u,!0)));null!=u&&"%"==u.charAt(0)&&(u=decodeURIComponent(u));null==u||"<mxfile "!==u.substring(0,8)&&"<mxGraphModel "!==u.substring(0,14)?t(c,mxUtils.bind(this,function(){try{if(k.substring(0,m+1),null!=q){var a=q.getElementsByTagName("svg");if(0<a.length){var f=a[0],l=parseFloat(f.getAttribute("width")),n=parseFloat(f.getAttribute("height")),r=f.getAttribute("viewBox");if(null==r||0==r.length)f.setAttribute("viewBox",
+"0 0 "+l+" "+n);else if(isNaN(l)||isNaN(n)){var u=r.split(" ");3<u.length&&(l=parseFloat(u[2]),n=parseFloat(u[3]))}k=this.createSvgDataUri(mxUtils.getXml(a[0]));var t=Math.min(1,Math.min(e/Math.max(1,l)),e/Math.max(1,n));return h(k,g.type,b+c*p,d+c*p,Math.max(1,Math.round(l*t)),Math.max(1,Math.round(n*t)),g.name)}}}catch(ba){}return null})):t(c,mxUtils.bind(this,function(){return h(u,"text/xml",b+c*p,d+c*p,0,0,g.name)}))}}else{n=!1;if("image/png"==g.type){var y=v?null:this.extractGraphModelFromPng(a.target.result);
+if(null!=y&&0<y.length){var x=new Image;x.src=a.target.result;t(c,mxUtils.bind(this,function(){return h(y,"text/xml",b+c*p,d+c*p,x.width,x.height,g.name)}));n=!0}}n||(mxClient.IS_CHROMEAPP?(this.spinner.stop(),this.showError(mxResources.get("error"),mxResources.get("dragAndDropNotSupported"),mxResources.get("cancel"),mxUtils.bind(this,function(){}),null,mxResources.get("ok"),mxUtils.bind(this,function(){this.actions.get("import").funct()}))):this.loadImage(a.target.result,mxUtils.bind(this,function(k){this.resizeImage(k,
+a.target.result,mxUtils.bind(this,function(k,l,n){t(c,mxUtils.bind(this,function(){if(null!=k&&k.length<r){var m=f&&this.isResampleImage(a.target.result,z)?Math.min(1,Math.min(e/l,e/n)):1;return h(k,g.type,b+c*p,d+c*p,Math.round(l*m),Math.round(n*m),g.name)}this.handleError({message:mxResources.get("imageTooBig")});return null}))}),f,e,z)})))}else h(a.target.result,g.type,b+c*p,d+c*p,240,160,g.name,function(a){t(c,function(){return a})})});/(\.vsdx)($|\?)/i.test(g.name)||/(\.vssx)($|\?)/i.test(g.name)?
h(null,g.type,b+c*p,d+c*p,240,160,g.name,function(a){t(c,function(){return a})},g):"image"==g.type.substring(0,5)?k.readAsDataURL(g):k.readAsText(g)})(y)});g?this.confirmImageResize(function(a){f=a;q()},t):q()};EditorUi.prototype.confirmImageResize=function(a,b){b=null!=b?b:!1;var c=null!=this.spinner&&null!=this.spinner.pause?this.spinner.pause():function(){},d=function(b,d){mxSettings.setResizeImages(b?d:null);mxSettings.save();c();a(d)},e=isLocalStorage||mxClient.IS_CHROMEAPP?mxSettings.getResizeImages():
null;null==e||b?this.showDialog((new ConfirmDialog(this,mxResources.get("resizeLargeImages"),function(a){d(a,!0)},function(a){d(a,!1)},mxResources.get("resize"),mxResources.get("actualSize"),'<img style="margin-top:8px;" src="'+Editor.loResImage+'"/>','<img style="margin-top:8px;" src="'+Editor.hiResImage+'"/>',isLocalStorage||mxClient.IS_CHROMEAPP)).container,340,isLocalStorage||mxClient.IS_CHROMEAPP?220:200,!0,!0):d(!1,e)};EditorUi.prototype.parseFile=function(a,b,d){d=null!=d?d:a.name;var c=new FormData;
c.append("format","xml");c.append("upfile",a,d);var e=new XMLHttpRequest;e.open("POST",OPEN_URL);e.onreadystatechange=function(){b(e)};e.send(c)};EditorUi.prototype.isResampleImage=function(a,b){b=null!=b?b:this.resampleThreshold;return a.length>b};EditorUi.prototype.resizeImage=function(a,b,d,e,h,k){h=null!=h?h:this.maxImageSize;var c=Math.max(1,a.width),f=Math.max(1,a.height);if(e&&this.isResampleImage(b,k))try{var g=Math.max(c/h,f/h);if(1<g){var l=Math.round(c/g),p=Math.round(f/g),m=document.createElement("canvas");
diff --git a/war/js/atlas.min.js b/war/js/atlas.min.js
index 1c02178e..dbf4a02b 100644
--- a/war/js/atlas.min.js
+++ b/war/js/atlas.min.js
@@ -2530,10 +2530,10 @@ var B=mxEdgeHandler.prototype.destroy;mxEdgeHandler.prototype.destroy=function()
a;this.canvas.setLineJoin("round");this.canvas.setLineCap("round");this.defaultVariation=b;this.originalLineTo=this.canvas.lineTo;this.canvas.lineTo=mxUtils.bind(this,t.prototype.lineTo);this.originalMoveTo=this.canvas.moveTo;this.canvas.moveTo=mxUtils.bind(this,t.prototype.moveTo);this.originalClose=this.canvas.close;this.canvas.close=mxUtils.bind(this,t.prototype.close);this.originalQuadTo=this.canvas.quadTo;this.canvas.quadTo=mxUtils.bind(this,t.prototype.quadTo);this.originalCurveTo=this.canvas.curveTo;
this.canvas.curveTo=mxUtils.bind(this,t.prototype.curveTo);this.originalArcTo=this.canvas.arcTo;this.canvas.arcTo=mxUtils.bind(this,t.prototype.arcTo)}function r(){mxRectangleShape.call(this)}function v(){mxActor.call(this)}function u(){mxActor.call(this)}function y(){mxRectangleShape.call(this)}function z(){mxRectangleShape.call(this)}function A(){mxCylinder.call(this)}function F(){mxShape.call(this)}function G(){mxShape.call(this)}function w(){mxEllipse.call(this)}function J(){mxShape.call(this)}
function K(){mxShape.call(this)}function H(){mxRectangleShape.call(this)}function D(){mxShape.call(this)}function I(){mxShape.call(this)}function N(){mxShape.call(this)}function L(){mxCylinder.call(this)}function O(){mxDoubleEllipse.call(this)}function P(){mxDoubleEllipse.call(this)}function B(){mxArrowConnector.call(this);this.spacing=0}function E(){mxArrowConnector.call(this);this.spacing=0}function C(){mxActor.call(this)}function x(){mxRectangleShape.call(this)}function S(){mxActor.call(this)}
-function V(){mxActor.call(this)}function T(){mxActor.call(this)}function R(){mxActor.call(this)}function ja(){mxActor.call(this)}function X(){mxActor.call(this)}function ka(){mxActor.call(this)}function la(){mxActor.call(this)}function Y(){mxActor.call(this)}function W(){mxActor.call(this)}function Z(){mxEllipse.call(this)}function aa(){mxEllipse.call(this)}function ba(){mxEllipse.call(this)}function ea(){mxRhombus.call(this)}function ca(){mxEllipse.call(this)}function na(){mxEllipse.call(this)}function U(){mxEllipse.call(this)}
-function fa(){mxEllipse.call(this)}function Q(){mxActor.call(this)}function oa(){mxActor.call(this)}function pa(){mxActor.call(this)}function ya(a,b,c,d,e,f,g,h,k,l){g+=k;var ga=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(ga.x-e-g,ga.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));
-f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var va=Math.tan(mxUtils.toRadians(30)),ma=(.5-va)/2;mxUtils.extend(c,mxActor);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/va);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ma);a.lineTo(b,.25*b);a.lineTo(.5*
-b,(.5-ma)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=c;mxUtils.extend(d,mxCylinder);d.prototype.size=20;d.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+va));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ma)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ma)*b),a.lineTo(.5*b,(1-ma)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ma),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ma)*b),a.lineTo(0,.75*b),a.close());a.end()};
+function V(){mxActor.call(this)}function T(){mxActor.call(this)}function R(){mxActor.call(this)}function ia(){mxActor.call(this)}function X(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function Y(){mxActor.call(this)}function W(){mxActor.call(this)}function Z(){mxEllipse.call(this)}function aa(){mxEllipse.call(this)}function ba(){mxEllipse.call(this)}function ea(){mxRhombus.call(this)}function ca(){mxEllipse.call(this)}function ma(){mxEllipse.call(this)}function U(){mxEllipse.call(this)}
+function fa(){mxEllipse.call(this)}function Q(){mxActor.call(this)}function na(){mxActor.call(this)}function oa(){mxActor.call(this)}function za(a,b,c,d,e,f,g,h,k,l){g+=k;var ga=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(ga.x-e-g,ga.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));
+f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var va=Math.tan(mxUtils.toRadians(30)),la=(.5-va)/2;mxUtils.extend(c,mxActor);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/va);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*la);a.lineTo(b,.25*b);a.lineTo(.5*
+b,(.5-la)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=c;mxUtils.extend(d,mxCylinder);d.prototype.size=20;d.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+va));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-la)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-la)*b),a.lineTo(.5*b,(1-la)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*la),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-la)*b),a.lineTo(0,.75*b),a.close());a.end()};
mxCellRenderer.prototype.defaultShapes.isoCube=d;mxUtils.extend(b,mxCylinder);b.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(e/2,Math.round(e/8)+this.strokewidth-1);if(f&&null!=this.fill||!f&&null==this.fill)a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,-b);f||(a.moveTo(0,b),a.curveTo(0,
-b/3,d,-b/3,d,b),a.lineTo(d,e-b),a.curveTo(d,e+b/3,0,e+b/3,0,e-b),a.close())};b.prototype.getLabelBounds=function(a){var b=2.5*Math.min(a.height/2,Math.round(a.height/8)+this.strokewidth-1);if(!this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST)||this.flipV&&this.direction==mxConstants.DIRECTION_WEST)a.y+=b,a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH||this.flipV&&this.direction==mxConstants.DIRECTION_NORTH)a.width-=b;else if(!this.flipV&&
this.direction==mxConstants.DIRECTION_WEST||this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST))a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_NORTH||this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH)a.x+=b,a.width-=b;return a};mxCellRenderer.prototype.defaultShapes.datastore=b;mxUtils.extend(e,mxCylinder);e.prototype.size=30;e.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,
@@ -2548,18 +2548,18 @@ mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,e),new mxPoint(b,0),
function(a,b){this.originalMoveTo.apply(this.canvas,arguments);this.lastX=a;this.lastY=b;this.firstX=a;this.firstY=b};t.prototype.close=function(){null!=this.firstX&&null!=this.firstY&&(this.lineTo(this.firstX,this.firstY),this.originalClose.apply(this.canvas,arguments));this.originalClose.apply(this.canvas,arguments)};t.prototype.quadTo=function(a,b,c,d){this.originalQuadTo.apply(this.canvas,arguments);this.lastX=c;this.lastY=d};t.prototype.curveTo=function(a,b,c,d,e,f){this.originalCurveTo.apply(this.canvas,
arguments);this.lastX=e;this.lastY=f};t.prototype.arcTo=function(a,b,c,d,e,f,g){this.originalArcTo.apply(this.canvas,arguments);this.lastX=f;this.lastY=g};t.prototype.lineTo=function(a,b){if(null!=this.lastX&&null!=this.lastY){var c=function(a){return"number"===typeof a?a?0>a?-1:1:a===a?0:NaN:NaN},d=Math.abs(a-this.lastX),e=Math.abs(b-this.lastY),f=Math.sqrt(d*d+e*e);if(2>f){this.originalLineTo.apply(this.canvas,arguments);this.lastX=a;this.lastY=b;return}var g=Math.round(f/10),h=this.defaultVariation;
5>g&&(g=5,h/=3);for(var ga=c(a-this.lastX)*d/g,c=c(b-this.lastY)*e/g,d=d/f,e=e/f,f=0;f<g;f++){var k=(Math.random()-.5)*h;this.originalLineTo.call(this.canvas,ga*f+this.lastX-k*e,c*f+this.lastY-k*d)}this.originalLineTo.call(this.canvas,a,b)}else this.originalLineTo.apply(this.canvas,arguments);this.lastX=a;this.lastY=b};t.prototype.destroy=function(){this.canvas.lineTo=this.originalLineTo;this.canvas.moveTo=this.originalMoveTo;this.canvas.close=this.originalClose;this.canvas.quadTo=this.originalQuadTo;
-this.canvas.curveTo=this.originalCurveTo;this.canvas.arcTo=this.originalArcTo};var Ca=mxShape.prototype.paint;mxShape.prototype.defaultJiggle=1.5;mxShape.prototype.paint=function(a){null!=this.style&&"0"!=mxUtils.getValue(this.style,"comic","0")&&null==a.handHiggle&&(a.handJiggle=new t(a,mxUtils.getValue(this.style,"jiggle",this.defaultJiggle)));Ca.apply(this,arguments);null!=a.handJiggle&&(a.handJiggle.destroy(),delete a.handJiggle)};mxRhombus.prototype.defaultJiggle=2;var Da=mxRectangleShape.prototype.isHtmlAllowed;
-mxRectangleShape.prototype.isHtmlAllowed=function(){return(null==this.style||"0"==mxUtils.getValue(this.style,"comic","0"))&&Da.apply(this,arguments)};var Ea=mxRectangleShape.prototype.paintBackground;mxRectangleShape.prototype.paintBackground=function(a,b,c,d,e){if(null==a.handJiggle)Ea.apply(this,arguments);else{var f=!0;null!=this.style&&(f="1"==mxUtils.getValue(this.style,mxConstants.STYLE_POINTER_EVENTS,"1"));if(f||null!=this.fill&&this.fill!=mxConstants.NONE||null!=this.stroke&&this.stroke!=
+this.canvas.curveTo=this.originalCurveTo;this.canvas.arcTo=this.originalArcTo};var Da=mxShape.prototype.paint;mxShape.prototype.defaultJiggle=1.5;mxShape.prototype.paint=function(a){null!=this.style&&"0"!=mxUtils.getValue(this.style,"comic","0")&&null==a.handHiggle&&(a.handJiggle=new t(a,mxUtils.getValue(this.style,"jiggle",this.defaultJiggle)));Da.apply(this,arguments);null!=a.handJiggle&&(a.handJiggle.destroy(),delete a.handJiggle)};mxRhombus.prototype.defaultJiggle=2;var Ea=mxRectangleShape.prototype.isHtmlAllowed;
+mxRectangleShape.prototype.isHtmlAllowed=function(){return(null==this.style||"0"==mxUtils.getValue(this.style,"comic","0"))&&Ea.apply(this,arguments)};var Fa=mxRectangleShape.prototype.paintBackground;mxRectangleShape.prototype.paintBackground=function(a,b,c,d,e){if(null==a.handJiggle)Fa.apply(this,arguments);else{var f=!0;null!=this.style&&(f="1"==mxUtils.getValue(this.style,mxConstants.STYLE_POINTER_EVENTS,"1"));if(f||null!=this.fill&&this.fill!=mxConstants.NONE||null!=this.stroke&&this.stroke!=
mxConstants.NONE)f||null!=this.fill&&this.fill!=mxConstants.NONE||(a.pointerEvents=!1),a.begin(),this.isRounded?(f=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100,f=Math.min(d*f,e*f),a.moveTo(b+f,c),a.lineTo(b+d-f,c),a.quadTo(b+d,c,b+d,c+f),a.lineTo(b+d,c+e-f),a.quadTo(b+d,c+e,b+d-f,c+e),a.lineTo(b+f,c+e),a.quadTo(b,c+e,b,c+e-f),a.lineTo(b,c+f),a.quadTo(b,c,b+f,c)):(a.moveTo(b,c),a.lineTo(b+d,c),a.lineTo(b+d,c+e),a.lineTo(b,c+e),a.lineTo(b,c)),
-a.close(),a.end(),a.fillAndStroke()}};var Fa=mxRectangleShape.prototype.paintForeground;mxRectangleShape.prototype.paintForeground=function(a,b,c,d,e){null==a.handJiggle&&Fa.apply(this,arguments)};mxUtils.extend(r,mxRectangleShape);r.prototype.size=.1;r.prototype.isHtmlAllowed=function(){return!1};r.prototype.getLabelBounds=function(a){if(mxUtils.getValue(this.state.style,mxConstants.STYLE_HORIZONTAL,!0)==(null==this.direction||this.direction==mxConstants.DIRECTION_EAST||this.direction==mxConstants.DIRECTION_WEST)){var b=
+a.close(),a.end(),a.fillAndStroke()}};var Ga=mxRectangleShape.prototype.paintForeground;mxRectangleShape.prototype.paintForeground=function(a,b,c,d,e){null==a.handJiggle&&Ga.apply(this,arguments)};mxUtils.extend(r,mxRectangleShape);r.prototype.size=.1;r.prototype.isHtmlAllowed=function(){return!1};r.prototype.getLabelBounds=function(a){if(mxUtils.getValue(this.state.style,mxConstants.STYLE_HORIZONTAL,!0)==(null==this.direction||this.direction==mxConstants.DIRECTION_EAST||this.direction==mxConstants.DIRECTION_WEST)){var b=
a.width,c=a.height;a=new mxRectangle(a.x,a.y,b,c);var d=b*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));if(this.isRounded)var e=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100,d=Math.max(d,Math.min(b*e,c*e));a.x+=d;a.width-=2*d}return a};r.prototype.paintForeground=function(a,b,c,d,e){var f=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));if(this.isRounded)var g=mxUtils.getValue(this.style,
mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100,f=Math.max(f,Math.min(d*g,e*g));a.begin();a.moveTo(b+f,c);a.lineTo(b+f,c+e);a.moveTo(b+d-f,c);a.lineTo(b+d-f,c+e);a.end();a.stroke();mxRectangleShape.prototype.paintForeground.apply(this,arguments)};mxCellRenderer.prototype.defaultShapes.process=r;mxUtils.extend(v,mxActor);v.prototype.size=.2;v.prototype.redrawPath=function(a,b,c,d,e){b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c=mxUtils.getValue(this.style,
mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,0),new mxPoint(d-b,0),new mxPoint(d,e/2),new mxPoint(d-b,e),new mxPoint(0,e),new mxPoint(b,e/2)],this.isRounded,c,!0);a.end()};mxCellRenderer.prototype.defaultShapes.step=v;mxUtils.extend(u,mxHexagon);u.prototype.size=.25;u.prototype.redrawPath=function(a,b,c,d,e){b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/
2;this.addPoints(a,[new mxPoint(b,0),new mxPoint(d-b,0),new mxPoint(d,.5*e),new mxPoint(d-b,e),new mxPoint(b,e),new mxPoint(0,.5*e)],this.isRounded,c,!0)};mxCellRenderer.prototype.defaultShapes.hexagon=u;mxUtils.extend(y,mxRectangleShape);y.prototype.isHtmlAllowed=function(){return!1};y.prototype.paintForeground=function(a,b,c,d,e){var f=Math.min(d/5,e/5)+1;a.begin();a.moveTo(b+d/2,c+f);a.lineTo(b+d/2,c+e-f);a.moveTo(b+f,c+e/2);a.lineTo(b+d-f,c+e/2);a.end();a.stroke();mxRectangleShape.prototype.paintForeground.apply(this,
-arguments)};mxCellRenderer.prototype.defaultShapes.plus=y;var za=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};mxRhombus.prototype.paintVertexShape=function(a,b,c,d,e){za.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var f=2*Math.max(2,this.strokewidth+
-1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0<d&&0<e&&(a.setShadow(!1),za.apply(this,[a,b,c,d,e]))}};mxUtils.extend(z,mxRectangleShape);z.prototype.isHtmlAllowed=function(){return!1};z.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};z.prototype.paintForeground=function(a,b,c,
+arguments)};mxCellRenderer.prototype.defaultShapes.plus=y;var Aa=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};mxRhombus.prototype.paintVertexShape=function(a,b,c,d,e){Aa.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var f=2*Math.max(2,this.strokewidth+
+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0<d&&0<e&&(a.setShadow(!1),Aa.apply(this,[a,b,c,d,e]))}};mxUtils.extend(z,mxRectangleShape);z.prototype.isHtmlAllowed=function(){return!1};z.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};z.prototype.paintForeground=function(a,b,c,
d,e){if(null!=this.style){if(!this.outline&&1==this.style["double"]){var f=Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0<d&&0<e&&mxRectangleShape.prototype.paintBackground.apply(this,arguments)}a.setDashed(!1);var f=0,g;do{g=mxCellRenderer.prototype.defaultShapes[this.style["symbol"+f]];if(null!=g){var h=this.style["symbol"+f+"Align"],k=this.style["symbol"+f+"VerticalAlign"],ga=this.style["symbol"+f+"Width"],l=this.style["symbol"+f+"Height"],
-m=this.style["symbol"+f+"Spacing"]||0,ha=this.style["symbol"+f+"ArcSpacing"];null!=ha&&(m+=this.getArcSize(d+this.strokewidth,e+this.strokewidth)*ha);var ha=b,n=c,ha=h==mxConstants.ALIGN_CENTER?ha+(d-ga)/2:h==mxConstants.ALIGN_RIGHT?ha+(d-ga-m):ha+m,n=k==mxConstants.ALIGN_MIDDLE?n+(e-l)/2:k==mxConstants.ALIGN_BOTTOM?n+(e-l-m):n+m;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,ha,n,ga,l);a.restore()}f++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,
+m=this.style["symbol"+f+"Spacing"]||0,wa=this.style["symbol"+f+"VSpacing"]||m,n=this.style["symbol"+f+"ArcSpacing"];null!=n&&(n*=this.getArcSize(d+this.strokewidth,e+this.strokewidth),m+=n,wa+=n);var n=b,pa=c,n=h==mxConstants.ALIGN_CENTER?n+(d-ga)/2:h==mxConstants.ALIGN_RIGHT?n+(d-ga-m):n+m,pa=k==mxConstants.ALIGN_MIDDLE?pa+(e-l)/2:k==mxConstants.ALIGN_BOTTOM?pa+(e-l-wa):pa+wa;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,n,pa,ga,l);a.restore()}f++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,
arguments)};mxCellRenderer.prototype.defaultShapes.ext=z;mxUtils.extend(A,mxCylinder);A.prototype.redrawPath=function(a,b,c,d,e,f){f?(a.moveTo(0,0),a.lineTo(d/2,e/2),a.lineTo(d,0),a.end()):(a.moveTo(0,0),a.lineTo(d,0),a.lineTo(d,e),a.lineTo(0,e),a.close())};mxCellRenderer.prototype.defaultShapes.message=A;mxUtils.extend(F,mxShape);F.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.ellipse(d/4,0,d/2,e/4);a.fillAndStroke();a.begin();a.moveTo(d/2,e/4);a.lineTo(d/2,2*e/3);a.moveTo(d/2,
e/3);a.lineTo(0,e/3);a.moveTo(d/2,e/3);a.lineTo(d,e/3);a.moveTo(d/2,2*e/3);a.lineTo(0,e);a.moveTo(d/2,2*e/3);a.lineTo(d,e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlActor=F;mxUtils.extend(G,mxShape);G.prototype.getLabelBounds=function(a){return new mxRectangle(a.x+a.width/6,a.y,5*a.width/6,a.height)};G.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(0,e/4);a.lineTo(0,3*e/4);a.end();a.stroke();a.begin();a.moveTo(0,e/2);a.lineTo(d/6,e/2);a.end();
a.stroke();a.ellipse(d/6,0,5*d/6,e);a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.umlBoundary=G;mxUtils.extend(w,mxEllipse);w.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(b+d/8,c+e);a.lineTo(b+7*d/8,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlEntity=w;mxUtils.extend(J,mxShape);J.prototype.paintVertexShape=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(d,0);a.lineTo(0,e);a.moveTo(0,
@@ -2582,29 +2582,29 @@ c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.internalStorage=
[new mxPoint(0,0),new mxPoint(d,0),new mxPoint(d,c),new mxPoint(b,c),new mxPoint(b,e),new mxPoint(0,e)],this.isRounded,f,!0);a.end()};mxCellRenderer.prototype.defaultShapes.corner=S;mxUtils.extend(V,mxActor);V.prototype.redrawPath=function(a,b,c,d,e){a.moveTo(0,0);a.lineTo(0,e);a.end();a.moveTo(d,0);a.lineTo(d,e);a.end();a.moveTo(0,e/2);a.lineTo(d,e/2);a.end()};mxCellRenderer.prototype.defaultShapes.crossbar=V;mxUtils.extend(T,mxActor);T.prototype.dx=20;T.prototype.dy=20;T.prototype.redrawPath=function(a,
b,c,d,e){b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));c=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));parseFloat(mxUtils.getValue(this.style,"size",this.size));var f=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,0),new mxPoint(d,0),new mxPoint(d,c),new mxPoint((d+b)/2,c),new mxPoint((d+b)/2,e),new mxPoint((d-b)/2,e),new mxPoint((d-b)/2,c),new mxPoint(0,c)],this.isRounded,
f,!0);a.end()};mxCellRenderer.prototype.defaultShapes.tee=T;mxUtils.extend(R,mxActor);R.prototype.arrowWidth=.3;R.prototype.arrowSize=.2;R.prototype.redrawPath=function(a,b,c,d,e){var f=e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",this.arrowWidth))));b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",this.arrowSize))));c=(e-f)/2;var f=c+f,g=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,
-c),new mxPoint(d-b,c),new mxPoint(d-b,0),new mxPoint(d,e/2),new mxPoint(d-b,e),new mxPoint(d-b,f),new mxPoint(0,f)],this.isRounded,g,!0);a.end()};mxCellRenderer.prototype.defaultShapes.singleArrow=R;mxUtils.extend(ja,mxActor);ja.prototype.redrawPath=function(a,b,c,d,e){var f=e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",R.prototype.arrowWidth))));b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",R.prototype.arrowSize))));c=(e-f)/2;var f=c+f,
-g=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,e/2),new mxPoint(b,0),new mxPoint(b,c),new mxPoint(d-b,c),new mxPoint(d-b,0),new mxPoint(d,e/2),new mxPoint(d-b,e),new mxPoint(d-b,f),new mxPoint(b,f),new mxPoint(b,e)],this.isRounded,g,!0);a.end()};mxCellRenderer.prototype.defaultShapes.doubleArrow=ja;mxUtils.extend(X,mxActor);X.prototype.size=.1;X.prototype.redrawPath=function(a,b,c,d,e){b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,
-"size",this.size))));a.moveTo(b,0);a.lineTo(d,0);a.quadTo(d-2*b,e/2,d,e);a.lineTo(b,e);a.quadTo(b-2*b,e/2,b,0);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.dataStorage=X;mxUtils.extend(ka,mxActor);ka.prototype.redrawPath=function(a,b,c,d,e){a.moveTo(0,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.or=ka;mxUtils.extend(la,mxActor);la.prototype.redrawPath=function(a,b,c,d,e){a.moveTo(0,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,0,e);a.quadTo(d/
-2,e/2,0,0);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.xor=la;mxUtils.extend(Y,mxActor);Y.prototype.size=20;Y.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d/2,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(b,0),new mxPoint(d-b,0),new mxPoint(d,.8*b),new mxPoint(d,e),new mxPoint(0,e),new mxPoint(0,.8*b)],this.isRounded,c,!0);a.end()};mxCellRenderer.prototype.defaultShapes.loopLimit=
+c),new mxPoint(d-b,c),new mxPoint(d-b,0),new mxPoint(d,e/2),new mxPoint(d-b,e),new mxPoint(d-b,f),new mxPoint(0,f)],this.isRounded,g,!0);a.end()};mxCellRenderer.prototype.defaultShapes.singleArrow=R;mxUtils.extend(ia,mxActor);ia.prototype.redrawPath=function(a,b,c,d,e){var f=e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",R.prototype.arrowWidth))));b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",R.prototype.arrowSize))));c=(e-f)/2;var f=c+f,
+g=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,e/2),new mxPoint(b,0),new mxPoint(b,c),new mxPoint(d-b,c),new mxPoint(d-b,0),new mxPoint(d,e/2),new mxPoint(d-b,e),new mxPoint(d-b,f),new mxPoint(b,f),new mxPoint(b,e)],this.isRounded,g,!0);a.end()};mxCellRenderer.prototype.defaultShapes.doubleArrow=ia;mxUtils.extend(X,mxActor);X.prototype.size=.1;X.prototype.redrawPath=function(a,b,c,d,e){b=d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,
+"size",this.size))));a.moveTo(b,0);a.lineTo(d,0);a.quadTo(d-2*b,e/2,d,e);a.lineTo(b,e);a.quadTo(b-2*b,e/2,b,0);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.dataStorage=X;mxUtils.extend(ja,mxActor);ja.prototype.redrawPath=function(a,b,c,d,e){a.moveTo(0,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.or=ja;mxUtils.extend(ka,mxActor);ka.prototype.redrawPath=function(a,b,c,d,e){a.moveTo(0,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,0,e);a.quadTo(d/
+2,e/2,0,0);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.xor=ka;mxUtils.extend(Y,mxActor);Y.prototype.size=20;Y.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d/2,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(b,0),new mxPoint(d-b,0),new mxPoint(d,.8*b),new mxPoint(d,e),new mxPoint(0,e),new mxPoint(0,.8*b)],this.isRounded,c,!0);a.end()};mxCellRenderer.prototype.defaultShapes.loopLimit=
Y;mxUtils.extend(W,mxActor);W.prototype.size=.375;W.prototype.redrawPath=function(a,b,c,d,e){b=e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,0),new mxPoint(d,0),new mxPoint(d,e-b),new mxPoint(d/2,e),new mxPoint(0,e-b)],this.isRounded,c,!0);a.end()};mxCellRenderer.prototype.defaultShapes.offPageConnector=W;mxUtils.extend(Z,mxEllipse);Z.prototype.paintVertexShape=
function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(b+d/2,c+e);a.lineTo(b+d,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.tapeData=Z;mxUtils.extend(aa,mxEllipse);aa.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();a.moveTo(b,c+e/2);a.lineTo(b+d,c+e/2);a.end();a.stroke();a.begin();a.moveTo(b+d/2,c);a.lineTo(b+d/2,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.orEllipse=
aa;mxUtils.extend(ba,mxEllipse);ba.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();a.moveTo(b+.145*d,c+.145*e);a.lineTo(b+.855*d,c+.855*e);a.end();a.stroke();a.begin();a.moveTo(b+.855*d,c+.145*e);a.lineTo(b+.145*d,c+.855*e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.sumEllipse=ba;mxUtils.extend(ea,mxRhombus);ea.prototype.paintVertexShape=function(a,b,c,d,e){mxRhombus.prototype.paintVertexShape.apply(this,
-arguments);a.setShadow(!1);a.begin();a.moveTo(b,c+e/2);a.lineTo(b+d,c+e/2);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.sortShape=ea;mxUtils.extend(ca,mxEllipse);ca.prototype.paintVertexShape=function(a,b,c,d,e){a.begin();a.moveTo(b,c);a.lineTo(b+d,c);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke();a.begin();a.moveTo(b,c+e);a.lineTo(b+d,c+e);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.collate=ca;mxUtils.extend(na,mxEllipse);na.prototype.paintVertexShape=
-function(a,b,c,d,e){var f=c+e-5;a.begin();a.moveTo(b,c);a.lineTo(b,c+e);a.moveTo(b,f);a.lineTo(b+10,f-5);a.moveTo(b,f);a.lineTo(b+10,f+5);a.moveTo(b,f);a.lineTo(b+d,f);a.moveTo(b+d,c);a.lineTo(b+d,c+e);a.moveTo(b+d,f);a.lineTo(b+d-10,f-5);a.moveTo(b+d,f);a.lineTo(b+d-10,f+5);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.dimension=na;mxUtils.extend(U,mxEllipse);U.prototype.paintVertexShape=function(a,b,c,d,e){this.outline||a.setStrokeColor(null);mxRectangleShape.prototype.paintBackground.apply(this,
+arguments);a.setShadow(!1);a.begin();a.moveTo(b,c+e/2);a.lineTo(b+d,c+e/2);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.sortShape=ea;mxUtils.extend(ca,mxEllipse);ca.prototype.paintVertexShape=function(a,b,c,d,e){a.begin();a.moveTo(b,c);a.lineTo(b+d,c);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke();a.begin();a.moveTo(b,c+e);a.lineTo(b+d,c+e);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.collate=ca;mxUtils.extend(ma,mxEllipse);ma.prototype.paintVertexShape=
+function(a,b,c,d,e){var f=c+e-5;a.begin();a.moveTo(b,c);a.lineTo(b,c+e);a.moveTo(b,f);a.lineTo(b+10,f-5);a.moveTo(b,f);a.lineTo(b+10,f+5);a.moveTo(b,f);a.lineTo(b+d,f);a.moveTo(b+d,c);a.lineTo(b+d,c+e);a.moveTo(b+d,f);a.lineTo(b+d-10,f-5);a.moveTo(b+d,f);a.lineTo(b+d-10,f+5);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.dimension=ma;mxUtils.extend(U,mxEllipse);U.prototype.paintVertexShape=function(a,b,c,d,e){this.outline||a.setStrokeColor(null);mxRectangleShape.prototype.paintBackground.apply(this,
arguments);null!=this.style&&(a.setStrokeColor(this.stroke),a.rect(b,c,d,e),a.fill(),"1"==mxUtils.getValue(this.style,"top","1")&&(a.begin(),a.moveTo(b,c),a.lineTo(b+d,c),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,"right","1")&&(a.begin(),a.moveTo(b+d,c),a.lineTo(b+d,c+e),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,"bottom","1")&&(a.begin(),a.moveTo(b+d,c+e),a.lineTo(b,c+e),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,"left","1")&&(a.begin(),a.moveTo(b,c+e),a.lineTo(b,c),
a.end(),a.stroke()))};mxCellRenderer.prototype.defaultShapes.partialRectangle=U;mxUtils.extend(fa,mxEllipse);fa.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();"vertical"==mxUtils.getValue(this.style,"line")?(a.moveTo(b+d/2,c),a.lineTo(b+d/2,c+e)):(a.moveTo(b,c+e/2),a.lineTo(b+d,c+e/2));a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.lineEllipse=fa;mxUtils.extend(Q,mxActor);Q.prototype.redrawPath=function(a,
-b,c,d,e){b=Math.min(d,e/2);a.moveTo(0,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.delay=Q;mxUtils.extend(oa,mxActor);oa.prototype.size=.2;oa.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(e,d);var f=Math.max(0,Math.min(b,b*parseFloat(mxUtils.getValue(this.style,"size",this.size))));b=(e-f)/2;c=b+f;var g=(d-f)/2,f=g+f;a.moveTo(0,b);a.lineTo(g,b);a.lineTo(g,0);a.lineTo(f,0);a.lineTo(f,b);a.lineTo(d,b);a.lineTo(d,
-c);a.lineTo(f,c);a.lineTo(f,e);a.lineTo(g,e);a.lineTo(g,c);a.lineTo(0,c);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.cross=oa;mxUtils.extend(pa,mxActor);pa.prototype.size=.25;pa.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/2);c=Math.min(d-b,Math.max(0,parseFloat(mxUtils.getValue(this.style,"size",this.size)))*d);a.moveTo(0,e/2);a.lineTo(c,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(c,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.display=
-pa;mxMarker.addMarker("dash",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.stroke()}});mxMarker.addMarker("cross",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.moveTo(d.x-m/2+n/2,d.y-n/2-m/2);a.lineTo(d.x-n/2-3*m/2,d.y-3*n/2+m/2);a.stroke()}});mxMarker.addMarker("circle",ya);
-mxMarker.addMarker("circlePlus",function(a,b,c,d,e,f,g,h,k,l){var m=d.clone(),n=ya.apply(this,arguments),p=e*(g+2*k),q=f*(g+2*k);return function(){n.apply(this,arguments);a.begin();a.moveTo(m.x-e*k,m.y-f*k);a.lineTo(m.x-2*p+e*k,m.y-2*q+f*k);a.moveTo(m.x-p-q+f*k,m.y-q+p-e*k);a.lineTo(m.x+q-p-f*k,m.y-q-p+e*k);a.stroke()}});mxMarker.addMarker("async",function(a,b,c,d,e,f,g,h,k,l){b=e*k*1.118;c=f*k*1.118;e*=g+k;f*=g+k;var m=d.clone();m.x-=b;m.y-=c;d.x+=1*-e-b;d.y+=1*-f-c;return function(){a.begin();a.moveTo(m.x,
-m.y);h?a.lineTo(m.x-e-f/2,m.y-f+e/2):a.lineTo(m.x+f/2-e,m.y-f-e/2);a.lineTo(m.x-e,m.y-f);a.close();l?a.fillAndStroke():a.stroke()}});mxMarker.addMarker("openAsync",function(a){a=null!=a?a:2;return function(b,c,d,e,f,g,h,k,l,m){f*=h+l;g*=h+l;var n=e.clone();return function(){b.begin();b.moveTo(n.x,n.y);k?b.lineTo(n.x-f-g/a,n.y-g+f/a):b.lineTo(n.x+g/a-f,n.y-g-f/a);b.stroke()}}}(2));if("undefined"!==typeof mxVertexHandler){var Aa=function(a,b,c){return qa(a,["width"],b,function(b,d,e,f,g){g=a.shape.getEdgeWidth()*
+b,c,d,e){b=Math.min(d,e/2);a.moveTo(0,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.delay=Q;mxUtils.extend(na,mxActor);na.prototype.size=.2;na.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(e,d);var f=Math.max(0,Math.min(b,b*parseFloat(mxUtils.getValue(this.style,"size",this.size))));b=(e-f)/2;c=b+f;var g=(d-f)/2,f=g+f;a.moveTo(0,b);a.lineTo(g,b);a.lineTo(g,0);a.lineTo(f,0);a.lineTo(f,b);a.lineTo(d,b);a.lineTo(d,
+c);a.lineTo(f,c);a.lineTo(f,e);a.lineTo(g,e);a.lineTo(g,c);a.lineTo(0,c);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.cross=na;mxUtils.extend(oa,mxActor);oa.prototype.size=.25;oa.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/2);c=Math.min(d-b,Math.max(0,parseFloat(mxUtils.getValue(this.style,"size",this.size)))*d);a.moveTo(0,e/2);a.lineTo(c,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(c,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.display=
+oa;mxMarker.addMarker("dash",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.stroke()}});mxMarker.addMarker("cross",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.moveTo(d.x-m/2+n/2,d.y-n/2-m/2);a.lineTo(d.x-n/2-3*m/2,d.y-3*n/2+m/2);a.stroke()}});mxMarker.addMarker("circle",za);
+mxMarker.addMarker("circlePlus",function(a,b,c,d,e,f,g,h,k,l){var m=d.clone(),n=za.apply(this,arguments),p=e*(g+2*k),q=f*(g+2*k);return function(){n.apply(this,arguments);a.begin();a.moveTo(m.x-e*k,m.y-f*k);a.lineTo(m.x-2*p+e*k,m.y-2*q+f*k);a.moveTo(m.x-p-q+f*k,m.y-q+p-e*k);a.lineTo(m.x+q-p-f*k,m.y-q-p+e*k);a.stroke()}});mxMarker.addMarker("async",function(a,b,c,d,e,f,g,h,k,l){b=e*k*1.118;c=f*k*1.118;e*=g+k;f*=g+k;var m=d.clone();m.x-=b;m.y-=c;d.x+=1*-e-b;d.y+=1*-f-c;return function(){a.begin();a.moveTo(m.x,
+m.y);h?a.lineTo(m.x-e-f/2,m.y-f+e/2):a.lineTo(m.x+f/2-e,m.y-f-e/2);a.lineTo(m.x-e,m.y-f);a.close();l?a.fillAndStroke():a.stroke()}});mxMarker.addMarker("openAsync",function(a){a=null!=a?a:2;return function(b,c,d,e,f,g,h,k,l,m){f*=h+l;g*=h+l;var n=e.clone();return function(){b.begin();b.moveTo(n.x,n.y);k?b.lineTo(n.x-f-g/a,n.y-g+f/a):b.lineTo(n.x+g/a-f,n.y-g-f/a);b.stroke()}}}(2));if("undefined"!==typeof mxVertexHandler){var Ba=function(a,b,c){return qa(a,["width"],b,function(b,d,e,f,g){g=a.shape.getEdgeWidth()*
a.view.scale+c;return new mxPoint(f.x+d*b/4+e*g/2,f.y+e*b/4-d*g/2)},function(b,d,e,f,g,h){b=Math.sqrt(mxUtils.ptSegDistSq(f.x,f.y,g.x,g.y,h.x,h.y));a.style.width=Math.round(2*b)/a.view.scale-c})},qa=function(a,b,c,d,e){var f=a.absolutePoints,g=f.length-1,h=a.view.translate,k=a.view.scale,l=c?f[0]:f[g],m=c?f[1]:f[g-1],n=m.x-l.x,p=m.y-l.y,q=Math.sqrt(n*n+p*p);return M(a,b,function(a){a=d.call(this,q,n/q,p/q,l,m);return new mxPoint(a.x/k-h.x,a.y/k-h.y)},function(a,b,c){a=Math.sqrt(n*n+p*p);b.x=(b.x+
-h.x)*k;b.y=(b.y+h.y)*k;e.call(this,a,n/a,p/a,l,m,b,c)})},ia=function(a){return function(b){return[M(b,["arrowWidth","arrowSize"],function(b){var c=Math.max(0,Math.min(1,mxUtils.getValue(this.state.style,"arrowWidth",R.prototype.arrowWidth))),d=Math.max(0,Math.min(a,mxUtils.getValue(this.state.style,"arrowSize",R.prototype.arrowSize)));return new mxPoint(b.x+(1-d)*b.width,b.y+(1-c)*b.height/2)},function(b,c){this.state.style.arrowWidth=Math.max(0,Math.min(1,Math.abs(b.y+b.height/2-c.y)/b.height*2));
-this.state.style.arrowSize=Math.max(0,Math.min(a,(b.x+b.width-c.x)/b.width))})]}},wa=function(a,b,c){return function(d){var e=[M(d,["size"],function(c){var d=Math.max(0,Math.min(c.width,Math.min(c.height,parseFloat(mxUtils.getValue(this.state.style,"size",b)))))*a;return new mxPoint(c.x+d,c.y+d)},function(b,c){this.state.style.size=Math.round(Math.max(0,Math.min(Math.min(b.width,c.x-b.x),Math.min(b.height,c.y-b.y)))/a)})];c&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(da(d));return e}},
-sa=function(a,b,c){c=null!=c?c:1;return function(d){var e=[M(d,["size"],function(b){var c=parseFloat(mxUtils.getValue(this.state.style,"size",a));return new mxPoint(b.x+c*b.width,b.getCenterY())},function(a,b){this.state.style.size=Math.max(0,Math.min(c,(b.x-a.x)/a.width))})];b&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(da(d));return e}},Ba=function(a){return function(b){var c=[M(b,["size"],function(b){var c=Math.max(0,Math.min(a,parseFloat(mxUtils.getValue(this.state.style,"size",
+h.x)*k;b.y=(b.y+h.y)*k;e.call(this,a,n/a,p/a,l,m,b,c)})},ha=function(a){return function(b){return[M(b,["arrowWidth","arrowSize"],function(b){var c=Math.max(0,Math.min(1,mxUtils.getValue(this.state.style,"arrowWidth",R.prototype.arrowWidth))),d=Math.max(0,Math.min(a,mxUtils.getValue(this.state.style,"arrowSize",R.prototype.arrowSize)));return new mxPoint(b.x+(1-d)*b.width,b.y+(1-c)*b.height/2)},function(b,c){this.state.style.arrowWidth=Math.max(0,Math.min(1,Math.abs(b.y+b.height/2-c.y)/b.height*2));
+this.state.style.arrowSize=Math.max(0,Math.min(a,(b.x+b.width-c.x)/b.width))})]}},xa=function(a,b,c){return function(d){var e=[M(d,["size"],function(c){var d=Math.max(0,Math.min(c.width,Math.min(c.height,parseFloat(mxUtils.getValue(this.state.style,"size",b)))))*a;return new mxPoint(c.x+d,c.y+d)},function(b,c){this.state.style.size=Math.round(Math.max(0,Math.min(Math.min(b.width,c.x-b.x),Math.min(b.height,c.y-b.y)))/a)})];c&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(da(d));return e}},
+sa=function(a,b,c){c=null!=c?c:1;return function(d){var e=[M(d,["size"],function(b){var c=parseFloat(mxUtils.getValue(this.state.style,"size",a));return new mxPoint(b.x+c*b.width,b.getCenterY())},function(a,b){this.state.style.size=Math.max(0,Math.min(c,(b.x-a.x)/a.width))})];b&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(da(d));return e}},Ca=function(a){return function(b){var c=[M(b,["size"],function(b){var c=Math.max(0,Math.min(a,parseFloat(mxUtils.getValue(this.state.style,"size",
n.prototype.size))));return new mxPoint(b.x+c*b.width*.75,b.y+b.height/4)},function(b,c){this.state.style.size=Math.max(0,Math.min(a,(c.x-b.x)/(.75*b.width)))})];mxUtils.getValue(b.style,mxConstants.STYLE_ROUNDED,!1)&&c.push(da(b));return c}},ra=function(){return function(a){var b=[];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b}},da=function(a,b){return M(a,[mxConstants.STYLE_ARCSIZE],function(c){var d=Math.max(0,parseFloat(mxUtils.getValue(a.style,mxConstants.STYLE_ARCSIZE,
100*mxConstants.RECTANGLE_ROUNDING_FACTOR)))/100;return new mxPoint(c.x+c.width-Math.min(Math.max(c.width/2,c.height/2),Math.min(c.width,c.height)*d),c.y+(null!=b?b:c.height/8))},function(a,b,c){this.state.style[mxConstants.STYLE_ARCSIZE]=Math.round(Math.min(50,Math.max(0,100*(a.width-b.x+a.x)/Math.min(a.width,a.height))))})},M=function(a,b,c,d,e){a=new mxHandle(a,null,mxVertexHandler.prototype.secondaryHandleImage);a.execute=function(){for(var a=0;a<b.length;a++)this.copyStyle(b[a])};a.getPosition=
-c;a.setPosition=d;a.ignoreGrid=null!=e?e:!0;return a},xa={link:function(a){return[Aa(a,!0,10),Aa(a,!1,10)]},flexArrow:function(a){var b=a.view.graph.gridSize/a.view.scale,c=[];mxUtils.getValue(a.style,mxConstants.STYLE_STARTARROW,mxConstants.NONE)!=mxConstants.NONE&&(c.push(qa(a,["width",mxConstants.STYLE_STARTSIZE,mxConstants.STYLE_ENDSIZE],!0,function(b,c,d,e,f){b=(a.shape.getEdgeWidth()-a.shape.strokewidth)*a.view.scale;f=3*mxUtils.getNumber(a.style,mxConstants.STYLE_STARTSIZE,mxConstants.ARROW_SIZE/
+c;a.setPosition=d;a.ignoreGrid=null!=e?e:!0;return a},ya={link:function(a){return[Ba(a,!0,10),Ba(a,!1,10)]},flexArrow:function(a){var b=a.view.graph.gridSize/a.view.scale,c=[];mxUtils.getValue(a.style,mxConstants.STYLE_STARTARROW,mxConstants.NONE)!=mxConstants.NONE&&(c.push(qa(a,["width",mxConstants.STYLE_STARTSIZE,mxConstants.STYLE_ENDSIZE],!0,function(b,c,d,e,f){b=(a.shape.getEdgeWidth()-a.shape.strokewidth)*a.view.scale;f=3*mxUtils.getNumber(a.style,mxConstants.STYLE_STARTSIZE,mxConstants.ARROW_SIZE/
5)*a.view.scale;return new mxPoint(e.x+c*(f+a.shape.strokewidth*a.view.scale)+d*b/2,e.y+d*(f+a.shape.strokewidth*a.view.scale)-c*b/2)},function(c,d,e,f,g,h,k){c=Math.sqrt(mxUtils.ptSegDistSq(f.x,f.y,g.x,g.y,h.x,h.y));d=mxUtils.ptLineDist(f.x,f.y,f.x+e,f.y-d,h.x,h.y);a.style[mxConstants.STYLE_STARTSIZE]=Math.round(100*(d-a.shape.strokewidth)/3)/100/a.view.scale;a.style.width=Math.round(2*c)/a.view.scale;mxEvent.isControlDown(k.getEvent())&&(a.style[mxConstants.STYLE_ENDSIZE]=a.style[mxConstants.STYLE_STARTSIZE]);
mxEvent.isAltDown(k.getEvent())||Math.abs(parseFloat(a.style[mxConstants.STYLE_STARTSIZE])-parseFloat(a.style[mxConstants.STYLE_ENDSIZE]))<b/6&&(a.style[mxConstants.STYLE_STARTSIZE]=a.style[mxConstants.STYLE_ENDSIZE])})),c.push(qa(a,["startWidth","endWidth",mxConstants.STYLE_STARTSIZE,mxConstants.STYLE_ENDSIZE],!0,function(b,c,d,e,f){b=(a.shape.getStartArrowWidth()-a.shape.strokewidth)*a.view.scale;f=3*mxUtils.getNumber(a.style,mxConstants.STYLE_STARTSIZE,mxConstants.ARROW_SIZE/5)*a.view.scale;return new mxPoint(e.x+
c*(f+a.shape.strokewidth*a.view.scale)+d*b/2,e.y+d*(f+a.shape.strokewidth*a.view.scale)-c*b/2)},function(c,d,e,f,g,h,k){c=Math.sqrt(mxUtils.ptSegDistSq(f.x,f.y,g.x,g.y,h.x,h.y));d=mxUtils.ptLineDist(f.x,f.y,f.x+e,f.y-d,h.x,h.y);a.style[mxConstants.STYLE_STARTSIZE]=Math.round(100*(d-a.shape.strokewidth)/3)/100/a.view.scale;a.style.startWidth=Math.max(0,Math.round(2*c)-a.shape.getEdgeWidth())/a.view.scale;mxEvent.isControlDown(k.getEvent())&&(a.style[mxConstants.STYLE_ENDSIZE]=a.style[mxConstants.STYLE_STARTSIZE],
@@ -2617,24 +2617,24 @@ parseFloat(a.style.startWidth))<b&&(a.style.endWidth=a.style.startWidth))})));re
1==mxUtils.getValue(this.state.style,mxConstants.STYLE_HORIZONTAL,1)?Math.round(Math.max(0,Math.min(b.height,c.y-b.y))):Math.round(Math.max(0,Math.min(b.width,c.x-b.x)))})];if(mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED)){var c=parseFloat(mxUtils.getValue(a.style,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE));b.push(da(a,c/2))}return b},label:ra(),ext:ra(),rectangle:ra(),triangle:ra(),rhombus:ra(),umlLifeline:function(a){return[M(a,["size"],function(a){var b=Math.max(0,Math.min(a.height,
parseFloat(mxUtils.getValue(this.state.style,"size",H.prototype.size))));return new mxPoint(a.getCenterX(),a.y+b)},function(a,b){this.state.style.size=Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))},!1)]},umlFrame:function(a){var b=[M(a,["width","height"],function(a){var b=Math.max(D.prototype.corner,Math.min(a.width,mxUtils.getValue(this.state.style,"width",D.prototype.width))),c=Math.max(1.5*D.prototype.corner,Math.min(a.height,mxUtils.getValue(this.state.style,"height",D.prototype.height)));
return new mxPoint(a.x+b,a.y+c)},function(a,b){this.state.style.width=Math.round(Math.max(D.prototype.corner,Math.min(a.width,b.x-a.x)));this.state.style.height=Math.round(Math.max(1.5*D.prototype.corner,Math.min(a.height,b.y-a.y)))},!1)];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b},process:function(a){var b=[M(a,["size"],function(a){var b=Math.max(0,Math.min(.5,parseFloat(mxUtils.getValue(this.state.style,"size",r.prototype.size))));return new mxPoint(a.x+a.width*
-b,a.y+a.height/4)},function(a,b){this.state.style.size=Math.max(0,Math.min(.5,(b.x-a.x)/a.width))})];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b},cross:function(a){return[M(a,["size"],function(a){var b=Math.min(a.width,a.height),b=Math.max(0,Math.min(1,mxUtils.getValue(this.state.style,"size",oa.prototype.size)))*b/2;return new mxPoint(a.getCenterX()-b,a.getCenterY()-b)},function(a,b){var c=Math.min(a.width,a.height);this.state.style.size=Math.max(0,Math.min(1,Math.min(Math.max(0,
+b,a.y+a.height/4)},function(a,b){this.state.style.size=Math.max(0,Math.min(.5,(b.x-a.x)/a.width))})];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b},cross:function(a){return[M(a,["size"],function(a){var b=Math.min(a.width,a.height),b=Math.max(0,Math.min(1,mxUtils.getValue(this.state.style,"size",na.prototype.size)))*b/2;return new mxPoint(a.getCenterX()-b,a.getCenterY()-b)},function(a,b){var c=Math.min(a.width,a.height);this.state.style.size=Math.max(0,Math.min(1,Math.min(Math.max(0,
a.getCenterY()-b.y)/c*2,Math.max(0,a.getCenterX()-b.x)/c*2)))})]},note:function(a){return[M(a,["size"],function(a){var b=Math.max(0,Math.min(a.width,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"size",e.prototype.size)))));return new mxPoint(a.x+a.width-b,a.y+b)},function(a,b){this.state.style.size=Math.round(Math.max(0,Math.min(Math.min(a.width,a.x+a.width-b.x),Math.min(a.height,b.y-a.y))))})]},manualInput:function(a){var b=[M(a,["size"],function(a){var b=Math.max(0,Math.min(a.height,
mxUtils.getValue(this.state.style,"size",C.prototype.size)));return new mxPoint(a.x+a.width/4,a.y+3*b/4)},function(a,b){this.state.style.size=Math.round(Math.max(0,Math.min(a.height,4*(b.y-a.y)/3)))})];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b},dataStorage:function(a){return[M(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",X.prototype.size))));return new mxPoint(a.x+(1-b)*a.width,a.getCenterY())},function(a,
b){this.state.style.size=Math.max(0,Math.min(1,(a.x+a.width-b.x)/a.width))})]},internalStorage:function(a){var b=[M(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"dx",x.prototype.dx))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"dy",x.prototype.dy)));return new mxPoint(a.x+b,a.y+c)},function(a,b){this.state.style.dx=Math.round(Math.max(0,Math.min(a.width,b.x-a.x)));this.state.style.dy=Math.round(Math.max(0,Math.min(a.height,b.y-
a.y)))})];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(da(a));return b},corner:function(a){return[M(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"dx",S.prototype.dx))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"dy",S.prototype.dy)));return new mxPoint(a.x+b,a.y+c)},function(a,b){this.state.style.dx=Math.round(Math.max(0,Math.min(a.width,b.x-a.x)));this.state.style.dy=Math.round(Math.max(0,Math.min(a.height,b.y-
-a.y)))})]},tee:function(a){return[M(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"dx",T.prototype.dx))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"dy",T.prototype.dy)));return new mxPoint(a.x+(a.width+b)/2,a.y+c)},function(a,b){this.state.style.dx=Math.round(Math.max(0,2*Math.min(a.width/2,b.x-a.x-a.width/2)));this.state.style.dy=Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))})]},singleArrow:ia(1),doubleArrow:ia(.5),folder:function(a){return[M(a,
+a.y)))})]},tee:function(a){return[M(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"dx",T.prototype.dx))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"dy",T.prototype.dy)));return new mxPoint(a.x+(a.width+b)/2,a.y+c)},function(a,b){this.state.style.dx=Math.round(Math.max(0,2*Math.min(a.width/2,b.x-a.x-a.width/2)));this.state.style.dy=Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))})]},singleArrow:ha(1),doubleArrow:ha(.5),folder:function(a){return[M(a,
["tabWidth","tabHeight"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"tabWidth",h.prototype.tabWidth))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"tabHeight",h.prototype.tabHeight)));mxUtils.getValue(this.state.style,"tabPosition",h.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(b=a.width-b);return new mxPoint(a.x+b,a.y+c)},function(a,b){var c=Math.max(0,Math.min(a.width,b.x-a.x));mxUtils.getValue(this.state.style,"tabPosition",h.prototype.tabPosition)==
mxConstants.ALIGN_RIGHT&&(c=a.width-c);this.state.style.tabWidth=Math.round(c);this.state.style.tabHeight=Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))})]},document:function(a){return[M(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",l.prototype.size))));return new mxPoint(a.x+3*a.width/4,a.y+(1-b)*a.height)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,(a.y+a.height-b.y)/a.height))})]},tape:function(a){return[M(a,["size"],function(a){var b=
Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",k.prototype.size))));return new mxPoint(a.getCenterX(),a.y+b*a.height/2)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,(b.y-a.y)/a.height*2))})]},offPageConnector:function(a){return[M(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",W.prototype.size))));return new mxPoint(a.getCenterX(),a.y+(1-b)*a.height)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,
-(a.y+a.height-b.y)/a.height))})]},step:sa(v.prototype.size,!0),hexagon:sa(u.prototype.size,!0,.5),curlyBracket:sa(p.prototype.size,!1),display:sa(pa.prototype.size,!1),cube:wa(1,a.prototype.size,!1),card:wa(.5,g.prototype.size,!0),loopLimit:wa(.5,Y.prototype.size,!0),trapezoid:Ba(.5),parallelogram:Ba(1)};Graph.createHandle=M;Graph.handleFactory=xa;mxVertexHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()&&this.graph.isCellRotatable(this.state.cell)){var a=
-this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_RECTANGLE);a=xa[a];if(null!=a)return a(this.state)}return null};mxEdgeHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()){var a=this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_CONNECTOR);a=xa[a];if(null!=a)return a(this.state)}return null}}else Graph.createHandle=
-function(){},Graph.handleFactory={};var ta=new mxPoint(1,0),ua=new mxPoint(1,0),ia=mxUtils.toRadians(-30),ta=mxUtils.getRotatedPoint(ta,Math.cos(ia),Math.sin(ia)),ia=mxUtils.toRadians(-150),ua=mxUtils.getRotatedPoint(ua,Math.cos(ia),Math.sin(ia));mxEdgeStyle.IsometricConnector=function(a,b,c,d,e){var f=a.view;d=null!=d&&0<d.length?d[0]:null;var g=a.absolutePoints,h=g[0],g=g[g.length-1];null!=d&&(d=f.transformControlPoint(a,d));null==h&&null!=b&&(h=new mxPoint(b.getCenterX(),b.getCenterY()));null==
+(a.y+a.height-b.y)/a.height))})]},step:sa(v.prototype.size,!0),hexagon:sa(u.prototype.size,!0,.5),curlyBracket:sa(p.prototype.size,!1),display:sa(oa.prototype.size,!1),cube:xa(1,a.prototype.size,!1),card:xa(.5,g.prototype.size,!0),loopLimit:xa(.5,Y.prototype.size,!0),trapezoid:Ca(.5),parallelogram:Ca(1)};Graph.createHandle=M;Graph.handleFactory=ya;mxVertexHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()&&this.graph.isCellRotatable(this.state.cell)){var a=
+this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_RECTANGLE);a=ya[a];if(null!=a)return a(this.state)}return null};mxEdgeHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()){var a=this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_CONNECTOR);a=ya[a];if(null!=a)return a(this.state)}return null}}else Graph.createHandle=
+function(){},Graph.handleFactory={};var ta=new mxPoint(1,0),ua=new mxPoint(1,0),ha=mxUtils.toRadians(-30),ta=mxUtils.getRotatedPoint(ta,Math.cos(ha),Math.sin(ha)),ha=mxUtils.toRadians(-150),ua=mxUtils.getRotatedPoint(ua,Math.cos(ha),Math.sin(ha));mxEdgeStyle.IsometricConnector=function(a,b,c,d,e){var f=a.view;d=null!=d&&0<d.length?d[0]:null;var g=a.absolutePoints,h=g[0],g=g[g.length-1];null!=d&&(d=f.transformControlPoint(a,d));null==h&&null!=b&&(h=new mxPoint(b.getCenterX(),b.getCenterY()));null==
g&&null!=c&&(g=new mxPoint(c.getCenterX(),c.getCenterY()));var k=ta.x,l=ta.y,m=ua.x,n=ua.y,p="horizontal"==mxUtils.getValue(a.style,"elbow","horizontal");if(null!=g&&null!=h){a=function(a,b,c){a-=q.x;var d=b-q.y;b=(n*a-m*d)/(k*n-l*m);a=(l*a-k*d)/(l*m-k*n);p?(c&&(q=new mxPoint(q.x+k*b,q.y+l*b),e.push(q)),q=new mxPoint(q.x+m*a,q.y+n*a)):(c&&(q=new mxPoint(q.x+m*a,q.y+n*a),e.push(q)),q=new mxPoint(q.x+k*b,q.y+l*b));e.push(q)};var q=h;null==d&&(d=new mxPoint(h.x+(g.x-h.x)/2,h.y+(g.y-h.y)/2));a(d.x,d.y,
-!0);a(g.x,g.y,!1)}};mxStyleRegistry.putValue("isometricEdgeStyle",mxEdgeStyle.IsometricConnector);var Ga=Graph.prototype.createEdgeHandler;Graph.prototype.createEdgeHandler=function(a,b){if(b==mxEdgeStyle.IsometricConnector){var c=new mxElbowEdgeHandler(a);c.snapToTerminals=!1;return c}return Ga.apply(this,arguments)};c.prototype.constraints=[];d.prototype.constraints=[];mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,
+!0);a(g.x,g.y,!1)}};mxStyleRegistry.putValue("isometricEdgeStyle",mxEdgeStyle.IsometricConnector);var Ha=Graph.prototype.createEdgeHandler;Graph.prototype.createEdgeHandler=function(a,b){if(b==mxEdgeStyle.IsometricConnector){var c=new mxElbowEdgeHandler(a);c.snapToTerminals=!1;return c}return Ha.apply(this,arguments)};c.prototype.constraints=[];d.prototype.constraints=[];mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,
0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];
mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];mxLabel.prototype.constraints=mxRectangleShape.prototype.constraints;mxImageShape.prototype.constraints=
mxRectangleShape.prototype.constraints;mxSwimlane.prototype.constraints=mxRectangleShape.prototype.constraints;y.prototype.constraints=mxRectangleShape.prototype.constraints;e.prototype.constraints=mxRectangleShape.prototype.constraints;g.prototype.constraints=mxRectangleShape.prototype.constraints;a.prototype.constraints=mxRectangleShape.prototype.constraints;h.prototype.constraints=mxRectangleShape.prototype.constraints;x.prototype.constraints=mxRectangleShape.prototype.constraints;X.prototype.constraints=
-mxRectangleShape.prototype.constraints;Z.prototype.constraints=mxEllipse.prototype.constraints;aa.prototype.constraints=mxEllipse.prototype.constraints;ba.prototype.constraints=mxEllipse.prototype.constraints;fa.prototype.constraints=mxEllipse.prototype.constraints;C.prototype.constraints=mxRectangleShape.prototype.constraints;Q.prototype.constraints=mxRectangleShape.prototype.constraints;pa.prototype.constraints=mxRectangleShape.prototype.constraints;Y.prototype.constraints=mxRectangleShape.prototype.constraints;
+mxRectangleShape.prototype.constraints;Z.prototype.constraints=mxEllipse.prototype.constraints;aa.prototype.constraints=mxEllipse.prototype.constraints;ba.prototype.constraints=mxEllipse.prototype.constraints;fa.prototype.constraints=mxEllipse.prototype.constraints;C.prototype.constraints=mxRectangleShape.prototype.constraints;Q.prototype.constraints=mxRectangleShape.prototype.constraints;oa.prototype.constraints=mxRectangleShape.prototype.constraints;Y.prototype.constraints=mxRectangleShape.prototype.constraints;
W.prototype.constraints=mxRectangleShape.prototype.constraints;mxCylinder.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.15,.05),!1),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.85,.05),!1),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.3),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,
.7),!0),new mxConnectionConstraint(new mxPoint(.15,.95),!1),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.85,.95),!1)];F.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.1),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.75,.1),!1),new mxConnectionConstraint(new mxPoint(0,1/3),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(1,1/3),!1),new mxConnectionConstraint(new mxPoint(1,
1),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1)];L.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,
@@ -2648,9 +2648,9 @@ mxEllipse.prototype.constraints;mxTriangle.prototype.constraints=[new mxConnecti
1),!0)];mxCloud.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.4,.1),!1),new mxConnectionConstraint(new mxPoint(.16,.55),!1),new mxConnectionConstraint(new mxPoint(.07,.4),!1),new mxConnectionConstraint(new mxPoint(.31,.8),!1),new mxConnectionConstraint(new mxPoint(.13,.77),!1),new mxConnectionConstraint(new mxPoint(.8,.8),!1),new mxConnectionConstraint(new mxPoint(.55,.95),!1),new mxConnectionConstraint(new mxPoint(.875,.5),!1),
new mxConnectionConstraint(new mxPoint(.96,.7),!1),new mxConnectionConstraint(new mxPoint(.625,.2),!1),new mxConnectionConstraint(new mxPoint(.88,.25),!1)];m.prototype.constraints=mxRectangleShape.prototype.constraints;n.prototype.constraints=mxRectangleShape.prototype.constraints;l.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),
!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxArrow.prototype.constraints=null;T.prototype.constraints=null;S.prototype.constraints=null;V.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,
-1),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];R.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];ja.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),
-new mxConnectionConstraint(new mxPoint(1,.5),!1)];oa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1)];H.prototype.constraints=null;ka.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!1),new mxConnectionConstraint(new mxPoint(1,
-.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)];la.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.175,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.175,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)]})();function Actions(a){this.editorUi=a;this.actions={};this.init()}
+1),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];R.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];ia.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),
+new mxConnectionConstraint(new mxPoint(1,.5),!1)];na.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1)];H.prototype.constraints=null;ja.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!1),new mxConnectionConstraint(new mxPoint(1,
+.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)];ka.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.175,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.175,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)]})();function Actions(a){this.editorUi=a;this.actions={};this.init()}
Actions.prototype.init=function(){function a(a){b.escape();var c=b.getDeletableCells(b.getSelectionCells());if(null!=c&&0<c.length){var d=b.model.getParents(c);b.removeCells(c,a);if(null!=d){a=[];for(c=0;c<d.length;c++)b.model.contains(d[c])&&(b.model.isVertex(d[c])||b.model.isEdge(d[c]))&&a.push(d[c]);b.setSelectionCells(a)}}}var c=this.editorUi,d=c.editor,b=d.graph,e=function(){return Action.prototype.isEnabled.apply(this,arguments)&&b.isEnabled()};this.addAction("new...",function(){window.open(c.getUrl())});
this.addAction("open...",function(){window.openNew=!0;window.openKey="open";c.openFile()});this.addAction("import...",function(){window.openNew=!1;window.openKey="import";window.openFile=new OpenFile(mxUtils.bind(this,function(){c.hideDialog()}));window.openFile.setConsumer(mxUtils.bind(this,function(a,b){try{var c=mxUtils.parseXml(a),e=new mxGraphModel;(new mxCodec(c)).decode(c.documentElement,e);var f=e.getChildren(e.getChildAt(e.getRoot(),0));d.graph.setSelectionCells(d.graph.importCells(f))}catch(n){mxUtils.alert(mxResources.get("invalidOrMissingFile")+
": "+n.message)}}));c.showDialog((new OpenDialog(this)).container,320,220,!0,!0,function(){window.openFile=null})}).isEnabled=e;this.addAction("save",function(){c.saveFile(!1)},null,null,"Ctrl+S").isEnabled=e;this.addAction("saveAs...",function(){c.saveFile(!0)},null,null,"Ctrl+Shift+S").isEnabled=e;this.addAction("export...",function(){c.showDialog((new ExportDialog(c)).container,300,230,!0,!0)});this.addAction("editDiagram...",function(){var a=new EditDiagramDialog(c);c.showDialog(a.container,620,
@@ -2842,9 +2842,9 @@ g.style.cssFloat="right";var C=null,x="#ffffff",S=null,V="#000000",T=b.cellEdito
mxConstants.STYLE_LABEL_BORDERCOLOR,"#000000");R.style.fontWeight="bold";g=b.cellEditor.isContentEditing()?this.createColorOption(mxResources.get("fontColor"),function(){return V},function(a){document.execCommand("forecolor",!1,a!=mxConstants.NONE?a:"transparent")},"#000000",{install:function(a){S=a},destroy:function(){S=null}},null,!0):this.createCellColorOption(mxResources.get("fontColor"),mxConstants.STYLE_FONTCOLOR,"#000000",function(a){T.style.display=null==a||a==mxConstants.NONE?"none":"";R.style.display=
T.style.display},function(a){null==a||a==mxConstants.NONE?b.setCellStyles(mxConstants.STYLE_NOLABEL,"1",b.getSelectionCells()):b.setCellStyles(mxConstants.STYLE_NOLABEL,null,b.getSelectionCells())});g.style.fontWeight="bold";h.appendChild(g);h.appendChild(T);b.cellEditor.isContentEditing()||h.appendChild(R);a.appendChild(h);h=this.createPanel();h.style.paddingTop="2px";h.style.paddingBottom="4px";g=this.createCellOption(mxResources.get("wordWrap"),mxConstants.STYLE_WHITE_SPACE,null,"wrap","null",
null,null,!0);g.style.fontWeight="bold";e.containsLabel||e.autoSize||0!=e.edges.length||h.appendChild(g);g=this.createCellOption(mxResources.get("formattedText"),"html","0",null,null,null,d.actions.get("formattedText"));g.style.fontWeight="bold";h.appendChild(g);g=this.createPanel();g.style.paddingTop="10px";g.style.paddingBottom="28px";g.style.fontWeight="normal";n=document.createElement("div");n.style.position="absolute";n.style.width="70px";n.style.marginTop="0px";n.style.fontWeight="bold";mxUtils.write(n,
-mxResources.get("spacing"));g.appendChild(n);var ja,X,ka,la,Y,W=this.addUnitInput(g,"pt",91,44,function(){ja.apply(this,arguments)}),Z=this.addUnitInput(g,"pt",20,44,function(){X.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("top"),91);this.addLabel(g,mxResources.get("global"),20);mxUtils.br(g);mxUtils.br(g);var aa=this.addUnitInput(g,"pt",162,44,function(){ka.apply(this,arguments)}),ba=this.addUnitInput(g,"pt",91,44,function(){la.apply(this,arguments)}),ea=this.addUnitInput(g,
-"pt",20,44,function(){Y.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("left"),162);this.addLabel(g,mxResources.get("bottom"),91);this.addLabel(g,mxResources.get("right"),20);if(b.cellEditor.isContentEditing()){var ca=null,na=null;a.appendChild(this.createRelativeOption(mxResources.get("lineheight"),null,null,function(a){var c=""==a.value?120:parseInt(a.value),c=Math.max(0,isNaN(c)?120:c);null!=ca&&(b.cellEditor.restoreSelection(ca),ca=null);for(var d=b.getSelectedElement();null!=
-d&&d.nodeType!=mxConstants.NODETYPE_ELEMENT;)d=d.parentNode;null!=d&&d==b.cellEditor.textarea&&null!=b.cellEditor.textarea.firstChild&&("P"!=b.cellEditor.textarea.firstChild.nodeName&&(b.cellEditor.textarea.innerHTML="<p>"+b.cellEditor.textarea.innerHTML+"</p>"),d=b.cellEditor.textarea.firstChild);null!=d&&d!=b.cellEditor.textarea&&(d.style.lineHeight=c+"%");a.value=c+" %"},function(a){na=a;mxEvent.addListener(a,"mousedown",function(){ca=b.cellEditor.saveSelection()});mxEvent.addListener(a,"touchstart",
+mxResources.get("spacing"));g.appendChild(n);var ia,X,ja,ka,Y,W=this.addUnitInput(g,"pt",91,44,function(){ia.apply(this,arguments)}),Z=this.addUnitInput(g,"pt",20,44,function(){X.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("top"),91);this.addLabel(g,mxResources.get("global"),20);mxUtils.br(g);mxUtils.br(g);var aa=this.addUnitInput(g,"pt",162,44,function(){ja.apply(this,arguments)}),ba=this.addUnitInput(g,"pt",91,44,function(){ka.apply(this,arguments)}),ea=this.addUnitInput(g,
+"pt",20,44,function(){Y.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("left"),162);this.addLabel(g,mxResources.get("bottom"),91);this.addLabel(g,mxResources.get("right"),20);if(b.cellEditor.isContentEditing()){var ca=null,ma=null;a.appendChild(this.createRelativeOption(mxResources.get("lineheight"),null,null,function(a){var c=""==a.value?120:parseInt(a.value),c=Math.max(0,isNaN(c)?120:c);null!=ca&&(b.cellEditor.restoreSelection(ca),ca=null);for(var d=b.getSelectedElement();null!=
+d&&d.nodeType!=mxConstants.NODETYPE_ELEMENT;)d=d.parentNode;null!=d&&d==b.cellEditor.textarea&&null!=b.cellEditor.textarea.firstChild&&("P"!=b.cellEditor.textarea.firstChild.nodeName&&(b.cellEditor.textarea.innerHTML="<p>"+b.cellEditor.textarea.innerHTML+"</p>"),d=b.cellEditor.textarea.firstChild);null!=d&&d!=b.cellEditor.textarea&&(d.style.lineHeight=c+"%");a.value=c+" %"},function(a){ma=a;mxEvent.addListener(a,"mousedown",function(){ca=b.cellEditor.saveSelection()});mxEvent.addListener(a,"touchstart",
function(){ca=b.cellEditor.saveSelection()});a.value="120 %"}));h=f.cloneNode(!1);h.style.paddingLeft="0px";g=this.editorUi.toolbar.addItems(["link","image"],h,!0);n=[this.editorUi.toolbar.addButton("geSprite-horizontalrule",mxResources.get("insertHorizontalRule"),function(){document.execCommand("inserthorizontalrule",!1,null)},h),this.editorUi.toolbar.addMenuFunctionInContainer(h,"geSprite-table",mxResources.get("table"),!1,mxUtils.bind(this,function(a){this.editorUi.menus.addInsertTableItem(a)}))];
this.styleButtons(g);this.styleButtons(n);g=this.createPanel();g.style.paddingTop="10px";g.style.paddingBottom="10px";g.appendChild(this.createTitle(mxResources.get("insert")));g.appendChild(h);a.appendChild(g);mxClient.IS_QUIRKS&&(g.style.height="70");g=f.cloneNode(!1);g.style.paddingLeft="0px";n=[this.editorUi.toolbar.addButton("geSprite-insertcolumnbefore",mxResources.get("insertColumnBefore"),function(){try{null!=w&&b.selectNode(b.insertColumn(w,null!=J?J.cellIndex:0))}catch(Q){alert(Q)}},g),
this.editorUi.toolbar.addButton("geSprite-insertcolumnafter",mxResources.get("insertColumnAfter"),function(){try{null!=w&&b.selectNode(b.insertColumn(w,null!=J?J.cellIndex+1:-1))}catch(Q){alert(Q)}},g),this.editorUi.toolbar.addButton("geSprite-deletecolumn",mxResources.get("deleteColumn"),function(){try{null!=w&&null!=J&&b.deleteColumn(w,J.cellIndex)}catch(Q){alert(Q)}},g),this.editorUi.toolbar.addButton("geSprite-insertrowbefore",mxResources.get("insertRowBefore"),function(){try{null!=w&&null!=K&&
@@ -2858,11 +2858,11 @@ mxConstants.FONT_ITALIC);c(l[2],(a&mxConstants.FONT_UNDERLINE)==mxConstants.FONT
c(p,a==mxConstants.ALIGN_LEFT);c(q,a==mxConstants.ALIGN_CENTER);c(t,a==mxConstants.ALIGN_RIGHT);a=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE);c(v,a==mxConstants.ALIGN_TOP);c(u,a==mxConstants.ALIGN_MIDDLE);c(y,a==mxConstants.ALIGN_BOTTOM);a=mxUtils.getValue(e.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);b=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE);H.value=a==mxConstants.ALIGN_LEFT&&b==mxConstants.ALIGN_TOP?
"topLeft":a==mxConstants.ALIGN_CENTER&&b==mxConstants.ALIGN_TOP?"top":a==mxConstants.ALIGN_RIGHT&&b==mxConstants.ALIGN_TOP?"topRight":a==mxConstants.ALIGN_LEFT&&b==mxConstants.ALIGN_BOTTOM?"bottomLeft":a==mxConstants.ALIGN_CENTER&&b==mxConstants.ALIGN_BOTTOM?"bottom":a==mxConstants.ALIGN_RIGHT&&b==mxConstants.ALIGN_BOTTOM?"bottomRight":a==mxConstants.ALIGN_LEFT?"left":a==mxConstants.ALIGN_RIGHT?"right":"center";a=mxUtils.getValue(e.style,mxConstants.STYLE_TEXT_DIRECTION,mxConstants.DEFAULT_TEXT_DIRECTION);
a==mxConstants.TEXT_DIRECTION_RTL?L.value="rightToLeft":a==mxConstants.TEXT_DIRECTION_LTR?L.value="leftToRight":a==mxConstants.TEXT_DIRECTION_AUTO&&(L.value="automatic");if(d||document.activeElement!=Z)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING,2)),Z.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=W)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_TOP,0)),W.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ea)a=parseFloat(mxUtils.getValue(e.style,
-mxConstants.STYLE_SPACING_RIGHT,0)),ea.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ba)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_BOTTOM,0)),ba.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=aa)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_LEFT,0)),aa.value=isNaN(a)?"":a+" pt"});X=this.installInputHandler(Z,mxConstants.STYLE_SPACING,2,-999,999," pt");ja=this.installInputHandler(W,mxConstants.STYLE_SPACING_TOP,0,-999,999," pt");Y=this.installInputHandler(ea,
-mxConstants.STYLE_SPACING_RIGHT,0,-999,999," pt");la=this.installInputHandler(ba,mxConstants.STYLE_SPACING_BOTTOM,0,-999,999," pt");ka=this.installInputHandler(aa,mxConstants.STYLE_SPACING_LEFT,0,-999,999," pt");this.addKeyHandler(B,U);this.addKeyHandler(Z,U);this.addKeyHandler(W,U);this.addKeyHandler(ea,U);this.addKeyHandler(ba,U);this.addKeyHandler(aa,U);b.getModel().addListener(mxEvent.CHANGE,U);this.listeners.push({destroy:function(){b.getModel().removeListener(U)}});U();if(b.cellEditor.isContentEditing()){var fa=
+mxConstants.STYLE_SPACING_RIGHT,0)),ea.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ba)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_BOTTOM,0)),ba.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=aa)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_LEFT,0)),aa.value=isNaN(a)?"":a+" pt"});X=this.installInputHandler(Z,mxConstants.STYLE_SPACING,2,-999,999," pt");ia=this.installInputHandler(W,mxConstants.STYLE_SPACING_TOP,0,-999,999," pt");Y=this.installInputHandler(ea,
+mxConstants.STYLE_SPACING_RIGHT,0,-999,999," pt");ka=this.installInputHandler(ba,mxConstants.STYLE_SPACING_BOTTOM,0,-999,999," pt");ja=this.installInputHandler(aa,mxConstants.STYLE_SPACING_LEFT,0,-999,999," pt");this.addKeyHandler(B,U);this.addKeyHandler(Z,U);this.addKeyHandler(W,U);this.addKeyHandler(ea,U);this.addKeyHandler(ba,U);this.addKeyHandler(aa,U);b.getModel().addListener(mxEvent.CHANGE,U);this.listeners.push({destroy:function(){b.getModel().removeListener(U)}});U();if(b.cellEditor.isContentEditing()){var fa=
!1,f=function(){fa||(fa=!0,window.setTimeout(function(){for(var a=b.getSelectedElement();null!=a&&a.nodeType!=mxConstants.NODETYPE_ELEMENT;)a=a.parentNode;if(null!=a){a==b.cellEditor.textarea&&1==b.cellEditor.textarea.children.length&&b.cellEditor.textarea.firstChild.nodeType==mxConstants.NODETYPE_ELEMENT&&(a=b.cellEditor.textarea.firstChild);var d=mxUtils.getCurrentStyle(a);if(null!=d){c(l[0],"bold"==d.fontWeight||null!=b.getParentByName(a,"B",b.cellEditor.textarea));c(l[1],"italic"==d.fontStyle||
null!=b.getParentByName(a,"I",b.cellEditor.textarea));c(l[2],null!=b.getParentByName(a,"U",b.cellEditor.textarea));c(p,"left"==d.textAlign);c(q,"center"==d.textAlign);c(t,"right"==d.textAlign);c(F,"justify"==d.textAlign);c(A,null!=b.getParentByName(a,"SUP",b.cellEditor.textarea));c(z,null!=b.getParentByName(a,"SUB",b.cellEditor.textarea));w=b.getParentByName(a,"TABLE",b.cellEditor.textarea);K=null==w?null:b.getParentByName(a,"TR",w);J=null==w?null:b.getParentByName(a,"TD",w);G.style.display=null!=
-w?"":"none";if(document.activeElement!=B){"FONT"==a.nodeName&&"4"==a.getAttribute("size")&&null!=E?(a.removeAttribute("size"),a.style.fontSize=E+"px",E=null):B.value=parseFloat(d.fontSize)+" pt";var a=a.style.lineHeight||d.lineHeight,e=parseFloat(a);"px"==a.substring(a.length-2)&&(e/=parseFloat(d.fontSize));"%"!=a.substring(a.length-1)&&(e*=100);na.value=e+" %"}a=d.color.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+
+w?"":"none";if(document.activeElement!=B){"FONT"==a.nodeName&&"4"==a.getAttribute("size")&&null!=E?(a.removeAttribute("size"),a.style.fontSize=E+"px",E=null):B.value=parseFloat(d.fontSize)+" pt";var a=a.style.lineHeight||d.lineHeight,e=parseFloat(a);"px"==a.substring(a.length-2)&&(e/=parseFloat(d.fontSize));"%"!=a.substring(a.length-1)&&(e*=100);ma.value=e+" %"}a=d.color.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+
("0"+Number(c).toString(16)).substr(-2)+("0"+Number(d).toString(16)).substr(-2)});e=d.backgroundColor.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+("0"+Number(c).toString(16)).substr(-2)+("0"+Number(d).toString(16)).substr(-2)});null!=S&&(V="#"==a.charAt(0)?a:"#000000",S(V,!0));null!=C&&(x="#"==e.charAt(0)?e:null,C(x,!0));null!=k.firstChild&&(d=d.fontFamily,"'"==d.charAt(0)&&(d=d.substring(1)),"'"==d.charAt(d.length-
1)&&(d=d.substring(0,d.length-1)),k.firstChild.nodeValue=d)}}fa=!1},0))};mxEvent.addListener(b.cellEditor.textarea,"input",f);mxEvent.addListener(b.cellEditor.textarea,"touchend",f);mxEvent.addListener(b.cellEditor.textarea,"mouseup",f);mxEvent.addListener(b.cellEditor.textarea,"keyup",f);this.listeners.push({destroy:function(){}});f()}return a};StyleFormatPanel=function(a,c,d){BaseFormatPanel.call(this,a,c,d);this.init()};mxUtils.extend(StyleFormatPanel,BaseFormatPanel);
StyleFormatPanel.prototype.init=function(){var a=this.format.getSelectionState();a.containsImage&&"image"!=a.style.shape||this.container.appendChild(this.addFill(this.createPanel()));this.container.appendChild(this.addStroke(this.createPanel()));a=this.createRelativeOption(mxResources.get("opacity"),mxConstants.STYLE_OPACITY,41);a.style.paddingTop="8px";a.style.paddingBottom="8px";this.container.appendChild(a);this.container.appendChild(this.addEffects(this.createPanel()));a=this.addEditOps(this.createPanel());
@@ -6158,7 +6158,7 @@ K=document.createElement("tr"),N=K.cloneNode(!0),Q=document.createElement("td"),
mxResources.get("fitToSheetsAcross"));W.appendChild(d);mxUtils.write(P,mxResources.get("fitToBy"));var R=O.cloneNode(!0);Y.appendChild(R);mxEvent.addListener(O,"focus",function(){J.checked=!0});mxEvent.addListener(R,"focus",function(){J.checked=!0});d=document.createElement("span");mxUtils.write(d,mxResources.get("fitToSheetsDown"));U.appendChild(d);K.appendChild(Q);K.appendChild(I);K.appendChild(W);N.appendChild(P);N.appendChild(Y);N.appendChild(U);T.appendChild(K);T.appendChild(N);t.appendChild(T);
n.appendChild(t);k.appendChild(n);n=document.createElement("div");d=document.createElement("div");d.style.fontWeight="bold";d.style.marginBottom="12px";mxUtils.write(d,mxResources.get("paperSize"));n.appendChild(d);d=document.createElement("div");d.style.marginBottom="12px";var V=PageSetupDialog.addPageFormatPanel(d,"printdialog",b.editor.graph.pageFormat||mxConstants.PAGE_FORMAT_A4_PORTRAIT);n.appendChild(d);d=document.createElement("span");mxUtils.write(d,mxResources.get("pageScale"));n.appendChild(d);
var S=document.createElement("input");S.style.cssText="margin:0 8px 0 8px;";S.setAttribute("value","100 %");S.style.width="60px";n.appendChild(S);k.appendChild(n);d=document.createElement("div");d.style.cssText="text-align:right;margin:62px 0 0 0;";n=mxUtils.button(mxResources.get("cancel"),function(){b.hideDialog()});n.className="geBtn";b.editor.cancelFirst&&d.appendChild(n);b.isOffline()||(t=mxUtils.button(mxResources.get("help"),function(){window.open("https://desk.draw.io/support/solutions/articles/16000048947")}),
-t.className="geBtn",d.appendChild(t));PrintDialog.previewEnabled&&(t=mxUtils.button(mxResources.get("preview"),function(){b.hideDialog();c(!1)}),t.className="geBtn",d.appendChild(t));t=mxUtils.button(mxResources.get(PrintDialog.previewEnabled?"print":"ok"),function(){b.hideDialog();c(!0)});t.className="geBtn gePrimaryBtn";d.appendChild(t);b.editor.cancelFirst||d.appendChild(n);k.appendChild(d);this.container=k}})();(function(){EditorUi.VERSION="6.9.9";EditorUi.compactUi="atlas"!=uiTheme;EditorUi.enableLogging=/.*\.draw\.io$/.test(window.location.hostname);EditorUi.isElectronApp=null!=window&&null!=window.process&&null!=window.process.versions&&null!=window.process.versions.electron;EditorUi.prototype.emptyDiagramXml='<mxGraphModel><root><mxCell id="0"/><mxCell id="1" parent="0"/></root></mxGraphModel>';EditorUi.prototype.emptyLibraryXml="<mxlibrary>[]</mxlibrary>";EditorUi.prototype.mode=null;EditorUi.prototype.sidebarFooterHeight=
+t.className="geBtn",d.appendChild(t));PrintDialog.previewEnabled&&(t=mxUtils.button(mxResources.get("preview"),function(){b.hideDialog();c(!1)}),t.className="geBtn",d.appendChild(t));t=mxUtils.button(mxResources.get(PrintDialog.previewEnabled?"print":"ok"),function(){b.hideDialog();c(!0)});t.className="geBtn gePrimaryBtn";d.appendChild(t);b.editor.cancelFirst||d.appendChild(n);k.appendChild(d);this.container=k}})();(function(){EditorUi.VERSION="7.0.0";EditorUi.compactUi="atlas"!=uiTheme;EditorUi.enableLogging=/.*\.draw\.io$/.test(window.location.hostname);EditorUi.isElectronApp=null!=window&&null!=window.process&&null!=window.process.versions&&null!=window.process.versions.electron;EditorUi.prototype.emptyDiagramXml='<mxGraphModel><root><mxCell id="0"/><mxCell id="1" parent="0"/></root></mxGraphModel>';EditorUi.prototype.emptyLibraryXml="<mxlibrary>[]</mxlibrary>";EditorUi.prototype.mode=null;EditorUi.prototype.sidebarFooterHeight=
36;EditorUi.prototype.defaultCustomShapeStyle="shape=stencil(tZRtTsQgEEBPw1+DJR7AoN6DbWftpAgE0Ortd/jYRGq72R+YNE2YgTePloEJGWblgA18ZuKFDcMj5/Sm8boZq+BgjCX4pTyqk6ZlKROitwusOMXKQDODx5iy4pXxZ5qTHiFHawxB0JrQZH7lCabQ0Fr+XWC1/E8zcsT/gAi+Subo2/3Mh6d/oJb5nU1b5tW7r2knautaa3T+U32o7f7vZwpJkaNDLORJjcu7t59m2jXxqX9un+tt022acsfmoKaQZ+vhhswZtS6Ne/ThQGt0IV0N3Yyv6P3CeT9/tHO0XFI5cAE=);whiteSpace=wrap;html=1;";EditorUi.prototype.maxBackgroundSize=1600;EditorUi.prototype.maxImageSize=520;EditorUi.prototype.resampleThreshold=
1E5;EditorUi.prototype.maxImageBytes=1E6;EditorUi.prototype.maxBackgroundBytes=25E5;EditorUi.prototype.currentFile=null;EditorUi.prototype.printPdfExport=!1;EditorUi.prototype.pdfPageExport=!0;EditorUi.prototype.formatEnabled="0"!=urlParams.format;(function(){EditorUi.prototype.useCanvasForExport=!1;EditorUi.prototype.jpgSupported=!1;try{var b=document.createElement("canvas"),a=new Image;a.onload=function(){try{b.getContext("2d").drawImage(a,0,0);var e=b.toDataURL("image/png");EditorUi.prototype.useCanvasForExport=
null!=e&&6<e.length}catch(n){}};a.src="data:image/svg+xml;base64,"+btoa(unescape(encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1px" height="1px" version="1.1"><foreignObject pointer-events="all" width="1" height="1"><div xmlns="http://www.w3.org/1999/xhtml"></div></foreignObject></svg>')))}catch(k){}try{b=document.createElement("canvas");b.width=b.height=1;var c=b.toDataURL("image/jpeg");EditorUi.prototype.jpgSupported=null!==c.match("image/jpeg")}catch(k){}})();
@@ -6719,58 +6719,73 @@ EditorUi.prototype.addTabListeners=function(a,f){mxEvent.disableContextMenu(f);v
this.hideCurrentMenu();if(!mxEvent.isTouchEvent(l)||!c){var m=new mxPopupMenu(this.createPageMenu(a));m.div.className+=" geMenubarMenu";m.smartSeparators=!0;m.showDisabled=!0;m.autoExpand=!0;m.hideMenu=mxUtils.bind(this,function(){mxPopupMenu.prototype.hideMenu.apply(m,arguments);this.resetCurrentMenu();m.destroy()});var b=mxEvent.getClientX(l),e=mxEvent.getClientY(l);m.popup(b,e,null,l);this.setCurrentMenu(m,f)}mxEvent.consume(l)}}))};
EditorUi.prototype.createPageMenu=function(a,f){return mxUtils.bind(this,function(d,c){d.addItem(mxResources.get("insert"),null,mxUtils.bind(this,function(){this.insertPage(null,mxUtils.indexOf(this.pages,a)+1)}),c);d.addItem(mxResources.get("delete"),null,mxUtils.bind(this,function(){this.removePage(a)}),c);d.addItem(mxResources.get("rename"),null,mxUtils.bind(this,function(){this.renamePage(a,f)}),c);d.addSeparator(c);d.addItem(mxResources.get("duplicate"),null,mxUtils.bind(this,function(){this.duplicatePage(a,
mxResources.get("copyOf",[a.getName()]))}),c)})};Graph.prototype.defaultThemes[Graph.prototype.defaultThemeName]=mxUtils.parseXml('<mxStylesheet><add as="defaultVertex"><add as="shape" value="label"/><add as="perimeter" value="rectanglePerimeter"/><add as="fontSize" value="12"/><add as="fontFamily" value="Helvetica"/><add as="align" value="center"/><add as="verticalAlign" value="middle"/><add as="fillColor" value="#ffffff"/><add as="strokeColor" value="#000000"/><add as="fontColor" value="#000000"/></add><add as="defaultEdge"><add as="shape" value="connector"/><add as="labelBackgroundColor" value="#ffffff"/><add as="endArrow" value="classic"/><add as="fontSize" value="11"/><add as="fontFamily" value="Helvetica"/><add as="align" value="center"/><add as="verticalAlign" value="middle"/><add as="rounded" value="1"/><add as="strokeColor" value="#000000"/><add as="fontColor" value="#000000"/></add><add as="fancy"><add as="shadow" value="1"/><add as="glass" value="1"/></add><add as="gray" extend="fancy"><add as="gradientColor" value="#B3B3B3"/><add as="fillColor" value="#F5F5F5"/><add as="strokeColor" value="#666666"/></add><add as="blue" extend="fancy"><add as="gradientColor" value="#7EA6E0"/><add as="fillColor" value="#DAE8FC"/><add as="strokeColor" value="#6C8EBF"/></add><add as="green" extend="fancy"><add as="gradientColor" value="#97D077"/><add as="fillColor" value="#D5E8D4"/><add as="strokeColor" value="#82B366"/></add><add as="turquoise" extend="fancy"><add as="gradientColor" value="#67AB9F"/><add as="fillColor" value="#D5E8D4"/><add as="strokeColor" value="#6A9153"/></add><add as="yellow" extend="fancy"><add as="gradientColor" value="#FFD966"/><add as="fillColor" value="#FFF2CC"/><add as="strokeColor" value="#D6B656"/></add><add as="orange" extend="fancy"><add as="gradientColor" value="#FFA500"/><add as="fillColor" value="#FFCD28"/><add as="strokeColor" value="#D79B00"/></add><add as="red" extend="fancy"><add as="gradientColor" value="#EA6B66"/><add as="fillColor" value="#F8CECC"/><add as="strokeColor" value="#B85450"/></add><add as="pink" extend="fancy"><add as="gradientColor" value="#B5739D"/><add as="fillColor" value="#E6D0DE"/><add as="strokeColor" value="#996185"/></add><add as="purple" extend="fancy"><add as="gradientColor" value="#8C6C9C"/><add as="fillColor" value="#E1D5E7"/><add as="strokeColor" value="#9673A6"/></add><add as="plain-gray"><add as="gradientColor" value="#B3B3B3"/><add as="fillColor" value="#F5F5F5"/><add as="strokeColor" value="#666666"/></add><add as="plain-blue"><add as="gradientColor" value="#7EA6E0"/><add as="fillColor" value="#DAE8FC"/><add as="strokeColor" value="#6C8EBF"/></add><add as="plain-green"><add as="gradientColor" value="#97D077"/><add as="fillColor" value="#D5E8D4"/><add as="strokeColor" value="#82B366"/></add><add as="plain-turquoise"><add as="gradientColor" value="#67AB9F"/><add as="fillColor" value="#D5E8D4"/><add as="strokeColor" value="#6A9153"/></add><add as="plain-yellow"><add as="gradientColor" value="#FFD966"/><add as="fillColor" value="#FFF2CC"/><add as="strokeColor" value="#D6B656"/></add><add as="plain-orange"><add as="gradientColor" value="#FFA500"/><add as="fillColor" value="#FFCD28"/><add as="strokeColor" value="#D79B00"/></add><add as="plain-red"><add as="gradientColor" value="#EA6B66"/><add as="fillColor" value="#F8CECC"/><add as="strokeColor" value="#B85450"/></add><add as="plain-pink"><add as="gradientColor" value="#B5739D"/><add as="fillColor" value="#E6D0DE"/><add as="strokeColor" value="#996185"/></add><add as="plain-purple"><add as="gradientColor" value="#8C6C9C"/><add as="fillColor" value="#E1D5E7"/><add as="strokeColor" value="#9673A6"/></add><add as="text"><add as="fillColor" value="none"/><add as="gradientColor" value="none"/><add as="strokeColor" value="none"/><add as="align" value="left"/><add as="verticalAlign" value="top"/></add><add as="label"><add as="fontStyle" value="1"/><add as="align" value="left"/><add as="verticalAlign" value="middle"/><add as="spacing" value="2"/><add as="spacingLeft" value="52"/><add as="imageWidth" value="42"/><add as="imageHeight" value="42"/><add as="rounded" value="1"/></add><add as="icon" extend="label"><add as="align" value="center"/><add as="imageAlign" value="center"/><add as="verticalLabelPosition" value="bottom"/><add as="verticalAlign" value="top"/><add as="spacingTop" value="4"/><add as="labelBackgroundColor" value="#ffffff"/><add as="spacing" value="0"/><add as="spacingLeft" value="0"/><add as="spacingTop" value="6"/><add as="fontStyle" value="0"/><add as="imageWidth" value="48"/><add as="imageHeight" value="48"/></add><add as="swimlane"><add as="shape" value="swimlane"/><add as="fontSize" value="12"/><add as="fontStyle" value="1"/><add as="startSize" value="23"/></add><add as="group"><add as="verticalAlign" value="top"/><add as="fillColor" value="none"/><add as="strokeColor" value="none"/><add as="gradientColor" value="none"/><add as="pointerEvents" value="0"/></add><add as="ellipse"><add as="shape" value="ellipse"/><add as="perimeter" value="ellipsePerimeter"/></add><add as="rhombus"><add as="shape" value="rhombus"/><add as="perimeter" value="rhombusPerimeter"/></add><add as="triangle"><add as="shape" value="triangle"/><add as="perimeter" value="trianglePerimeter"/></add><add as="line"><add as="shape" value="line"/><add as="strokeWidth" value="4"/><add as="labelBackgroundColor" value="#ffffff"/><add as="verticalAlign" value="top"/><add as="spacingTop" value="8"/></add><add as="image"><add as="shape" value="image"/><add as="labelBackgroundColor" value="white"/><add as="verticalAlign" value="top"/><add as="verticalLabelPosition" value="bottom"/></add><add as="roundImage" extend="image"><add as="perimeter" value="ellipsePerimeter"/></add><add as="rhombusImage" extend="image"><add as="perimeter" value="rhombusPerimeter"/></add><add as="arrow"><add as="shape" value="arrow"/><add as="edgeStyle" value="none"/><add as="fillColor" value="#ffffff"/></add></mxStylesheet>').documentElement;
-(function(){function u(a){a=null!=a.Text?a.Text:null!=a.Value?a.Value:a.Lane_0;return null!=a&&null!=a.t?a.t:""}function n(a){return null!=a.Action?a.Action:a}function v(a,c){var d=n(c);if(null!=d){var b=x[d.Class];null!=b&&(a.style+=b);b=null!=d.Properties?d.Properties:d;if(null!=b){a.value=u(b);"ImageSearchBlock2"==d.Class&&(a.style+="image="+b.URL+";");a.style+=h(mxConstants.STYLE_STROKEWIDTH,b.LineWidth,"1");a.style+=h(mxConstants.STYLE_STROKECOLOR,b.LineColor.substring(0,7),"#000000");a.style+=
+(function(){function u(a){a=null!=a.Text?a.Text:null!=a.Value?a.Value:a.Lane_0;return null!=a&&null!=a.t?a.t:""}function n(a){return null!=a.Action?a.Action:a}function w(a,c){var d=n(c);if(null!=d){var b=y[d.Class];null!=b&&(a.style+=b);b=null!=d.Properties?d.Properties:d;if(null!=b){a.value=u(b);"ImageSearchBlock2"==d.Class&&(a.style+="image="+b.URL+";");a.style+=h(mxConstants.STYLE_STROKEWIDTH,b.LineWidth,"1");a.style+=h(mxConstants.STYLE_STROKECOLOR,b.LineColor.substring(0,7),"#000000");a.style+=
h(mxConstants.STYLE_ALIGN,b.TextAlign,"center");a.style+=h(mxConstants.STYLE_VERTICAL_ALIGN,b.TextVAlign,"middle");a.style+=h(mxConstants.STYLE_OPACITY,b.Opacity,"100");if(null!=b.Rotation){var f=mxUtils.toDegree(parseFloat(b.Rotation));"AdvancedSwimLaneBlockRotated"==d.Class&&(f+=90,a.geometry.rotate90());a.style+="rotation="+f+";"}b.FlipX&&(a.style+="flipH=1;");b.FlipY&&(a.style+="flipV=1;");null!=b.Shadow&&(a.style+=mxConstants.STYLE_SHADOW+"=1;");"dashed"==b.StrokeStyle?a.style+="dashed=1;":"dotted"==
-b.StrokeStyle&&(a.style+="dashed=1;dashPattern=1 4;");null!=b.FillColor&&("object"===typeof b.FillColor?null!=b.FillColor.cs&&1<b.FillColor.cs.length&&(a.style+=h(mxConstants.STYLE_FILLCOLOR,b.FillColor.cs[0].c.substring(0,7)),a.style+=h(mxConstants.STYLE_GRADIENTCOLOR,b.FillColor.cs[1].c.substring(0,7))):"string"===typeof b.FillColor&&(a.style+=h(mxConstants.STYLE_FILLCOLOR,b.FillColor.substring(0,7),"#FFFFFF")));if(a.edge){a.style+="rounded=1;arcSize=5;";if("diagonal"!=b.Shape)if(null!=b.ElbowPoints)for(a.geometry.points=
-[],d=0;d<b.ElbowPoints.length;d++)a.geometry.points.push(new mxPoint(Math.round(.6*b.ElbowPoints[d].x+0),Math.round(.6*b.ElbowPoints[d].y+0)));else"elbow"==b.Shape?a.style=null!=b.Endpoint1.Block&&null!=b.Endpoint1.Block?a.style+"edgeStyle=orthogonalEdgeStyle;":a.style+"edgeStyle=elbowEdgeStyle;":null!=b.Endpoint1.Block&&null!=b.Endpoint1.Block&&(a.style+="edgeStyle=orthogonalEdgeStyle;","curve"==b.Shape&&(a.style+="curved=1;"));l(a,b.Endpoint1,!0);l(a,b.Endpoint2,!1)}}}}function w(a){var c=n(a).Properties.BoundingBox,
-c=new mxCell("",new mxGeometry(Math.round(.6*c.x+0),Math.round(.6*c.y+0),Math.round(.6*c.w),Math.round(.6*c.h)),"html=1;whiteSpace=wrap;");c.vertex=!0;v(c,a);return c}function h(a,c,d,b){null!=c&&null!=b&&(c=b(c));return null!=c&&c!=d?a+"="+c+";":""}function l(a,c,d){null!=c&&(null!=c.LinkX&&null!=c.LinkY&&(a.style+=(d?"exitX":"entryX")+"="+c.LinkX+";"+(d?"exitY":"entryY")+"="+c.LinkY+";"+(d?"exitPerimeter":"entryPerimeter")+"=0;"),"Arrow"==c.Style?a.style+=(d?"startArrow":"endArrow")+"=block;":"Hollow Arrow"==
-c.Style?(a.style+=(d?"startArrow":"endArrow")+"=block;",a.style+=(d?"startFill":"endFill")+"=0;"):"Open Arrow"==c.Style&&(a.style+=(d?"startArrow":"endArrow")+"=open;",a.style+=(d?"startSize":"endSize")+"=12;"))}var x={DefaultTextBlockNew:"text;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;",DefaultSquareBlock:"rounded=1;arcSize=5;",DefaultNoteBlock:"shape=note;size=15;",HotspotBlock:"strokeColor=none;opacity=50;",ImageSearchBlock2:"shape=image;",ProcessBlock:"rounded=1;arcSize=5;",
-DecisionBlock:"rhombus;rounded=1;arcSize=5;",TerminatorBlock:"rounded=1;arcSize=50;",PredefinedProcessBlock:"shape=process;rounded=1;arcSize=5;",DocumentBlock:"shape=document;",MultiDocumentBlock:"shape=mxgraph.flowchart.multi-document;",ManualInputBlock:"shape=manualInput;size=15;rounded=1;arcSize=5;",PreparationBlock:"shape=hexagon;rounded=1;arcSize=5;",DataBlockNew:"shape=parallelogram;rounded=1;arcSize=5;",DatabaseBlock:"shape=cylinder;",DirectAccessStorageBlock:"shape=mxgraph.flowchart.direct_data;",
-InternalStorageBlock:"shape=internalStorage;rounded=1;arcSize=5;dx=10;dy=10;",PaperTapeBlock:"shape=tape;size=0.2;",ManualOperationBlockNew:"shape=trapezoid;rounded=1;arcSize=5;flipV=1;",DelayBlock:"shape=delay;",StoredDataBlock:"shape=dataStorage;",MergeBlock:"triangle;direction=south;rounded=1;arcSize=5;",ConnectorBlock:"ellipse;",OrBlock:"shape=mxgraph.flowchart.summing_function;",SummingJunctionBlock:"shape=mxgraph.flowchart.or;",DisplayBlock:"shape=display;",OffPageLinkBlock:"shape=offPageConnector;rounded=1;arcSize=5;",
-BraceNoteBlock:"shape=curlyBracket;rounded=1;",NoteBlock:"shape=mxgraph.flowchart.annotation_1;",AdvancedSwimLaneBlock:"swimlane;rounded=1;arcSize=5;",AdvancedSwimLaneBlockRotated:"swimlane;horizontal=0;rounded=1;arcSize=5;",RectangleContainerBlock:"fillColor=none;container=1;rounded=1;arcSize=5;",DiamondContainerBlock:"shape=rhombus;fillColor=none;container=1;",RoundedRectangleContainerBlock:"rounded=1;fillColor=none;container=1;",CircleContainerBlock:"shape=ellipse;fillColor=none;container=1;",
-PillContainerBlock:"rounded=1;arcSize=50;fillColor=none;container=1;",IsoscelesTriangleBlock:"triangle;direction=north;",RightTriangleBlock:"shape=mxgraph.basic.orthogonal_triangle;",PentagonBlock:"shape=mxgraph.basic.pentagon;",HexagonBlock:"shape=hexagon;rounded=1;arcSize=5;",OctagonBlock:"shape=mxgraph.basic.octagon;",CrossBlock:"shape=cross;size=0.6;",CloudBlock:"ellipse;shape=cloud;",HeartBlock:"shape=mxgraph.basic.heart;",RightArrowBlock:"shape=singleArrow;arrowWidth=0.5;arrowSize=0.3;",DoubleArrowBlock:"shape=doubleArrow;arrowWidth=0.5;arrowSize=0.3;",
-CalloutBlock:"shape=mxgraph.basic.rectangular_callout;",ShapeCircleBlock:"ellipse;",ShapePolyStarBlock:"shape=mxgraph.basic.star;",ShapeDiamondBlock:"rhombus;rounded=1;arcSize=5;",AndroidIconCheck:"shape=mxgraph.ios7.misc.check;",AndroidIconCollapse:"shape=mxgraph.ios7.misc.up;",AndroidIconExpand:"shape=mxgraph.ios7.misc.down;",AndroidIconNext:"shape=mxgraph.ios7.misc.right;",AndroidIconPrevious:"shape=mxgraph.ios7.misc.left;",AndroidIconInformation:"shape=mxgraph.ios7.icons.info;",AndroidIconSearch:"shape=mxgraph.ios7.icons.looking_glass;",
-AndroidIconSettings:"shape=mxgraph.ios7.icons.volume;direction=south;",AndroidIconTrash:"shape=mxgraph.ios7.icons.trashcan;",AndroidIconEmail:"shape=mxgraph.mockup.misc.mail2;",AndroidIconNew:"shape=mxgraph.ios7.misc.flagged;",UMLClassBlock:"rounded=1;",UMLActiveClassBlock:"shape=mxgraph.flowchart.predefined_process;",UMLPackageBlock:"shape=folder;tabPosition=left;",UMLNoteBlock:"shape=note;size=15;",UMLTextBlock:"shape=text;strokeColor=none;fillColor=none;",UMLActorBlock:"shape=umlActor;",UMLUseCaseBlock:"shape=ellipse;",
-UMLCircleContainerBlock:"shape=ellipse;container=1;",UMLRectangleContainerBlock:"rounded=1;container=1;",UMLOptionLoopBlock:"shape=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;",UMLStartBlock:"shape=ellipse;fillColor=#000000;",UMLStateBlock:"shape=rect;rounded=1;",UMLDecisionBlock:"shape=rhombus;rounded=1;",UMLHForkJoinBlock:"shape=rect;rounded=1;fillColor=#000000;",UMLVForkJoinBlock:"shape=rect;rounded=1;fillColor=#000000;",UMLFlowFinalBlock:"shape=mxgraph.flowchart.or;",
-UMLHistoryStateBlock:"shape=ellipse;",UMLEndBlock:"shape=mxgraph.bpmn.shape;outline=end;symbol=terminate;",UMLObjectBlock:"shape=rect;rounded=1;",UMLSendSignalBlock:"shape=mxgraph.sysml.sendSigAct;",UMLReceiveSignalBlock:"shape=mxgraph.sysml.accEvent;",UMLAcceptTimeEventActionBlock:"shape=mxgraph.sysml.timeEvent;",UMLOffPageLinkBlock:"shape=mxgraph.sysml.sendSigAct;direction=south;",UMLActivationBlock:"shape=rect;rounded=1;",UMLDeletionBlock:"shape=mxgraph.sysml.x;strokeWidth=4;",UMLSeqEntityBlock:"shape=mxgraph.electrical.radio.microphone_1;direction=north;",
-UMLComponentBlock:"shape=component;align=left;spacingLeft=36;",UMLNodeBlock:"shape=cube;size=12;flipH=1;",UMLComponentInterfaceBlock:"shape=ellipse;",UMLProvidedInterfaceBlock:"shape=lollipop;direction=south;",UMLRequiredInterfaceBlock:"shape=requires;direction=north;",UMLEntityBlock:"shape=rect;rounded=1;",UMLWeakEntityBlock:"shape=ext;double=1;rounded=1;",UMLAttributeBlock:"shape=ellipse;",UMLMultivaluedAttributeBlock:"shape=doubleEllipse;",UMLRelationshipBlock:"shape=rhombus;rounded=1;",UMLWeakRelationshipBlock:"shape=rhombus;rounded=1;double=1;",
-DFDExternalEntityBlock2:"shape=rect;rounded=1;",YDMDFDProcessBlock:"shape=ellipse;",YDMDFDDataStoreBlock:"shape=mxgraph.bootstrap.horLines;",GSDFDProcessBlock:"shape=swimlane;rounded=1;",GSDFDProcessBlock2:"shape=rect;rounded=1;",OrgBlock:"shape=rect;rounded=1;",VSMCustomerSupplierBlock:"shape=mxgraph.lean_mapping.outside_sources;",VSMDedicatedProcessBlock:"shape=mxgraph.lean_mapping.manufacturing_process;",VSMSharedProcessBlock:"shape=mxgraph.lean_mapping.manufacturing_process_shared;",VSMWorkcellBlock:"shape=mxgraph.lean_mapping.work_cell;",
+b.StrokeStyle&&(a.style+="dashed=1;dashPattern=1 4;");null==b.FillColor||"AWSAndroidBlock3 AWSiOSBlock3 AWSJavaBlock3 AWSJavaScript AWSNetBlock3 AWSNodeJSBlock3 AWSPHPBlock3 AWSPythonBlock3 AWSRubyBlock3 AWSXamarin AWSCLIBlock3 AWSEclipseToolkitBlock3 AWSVisualStudioToolkitBlock3 AWSWindowsPowershellToolkitBlock3".split(" ").includes(d.Class)||("object"===typeof b.FillColor?null!=b.FillColor.cs&&1<b.FillColor.cs.length&&(a.style+=h(mxConstants.STYLE_FILLCOLOR,b.FillColor.cs[0].c.substring(0,7)),a.style+=
+h(mxConstants.STYLE_GRADIENTCOLOR,b.FillColor.cs[1].c.substring(0,7))):"string"===typeof b.FillColor&&(a.style+=h(mxConstants.STYLE_FILLCOLOR,b.FillColor.substring(0,7),"#FFFFFF")));if(a.edge){a.style+="rounded=1;arcSize=5;";if("diagonal"!=b.Shape)if(null!=b.ElbowPoints)for(a.geometry.points=[],d=0;d<b.ElbowPoints.length;d++)a.geometry.points.push(new mxPoint(Math.round(.6*b.ElbowPoints[d].x+0),Math.round(.6*b.ElbowPoints[d].y+0)));else"elbow"==b.Shape?a.style=null!=b.Endpoint1.Block&&null!=b.Endpoint1.Block?
+a.style+"edgeStyle=orthogonalEdgeStyle;":a.style+"edgeStyle=elbowEdgeStyle;":null!=b.Endpoint1.Block&&null!=b.Endpoint1.Block&&(a.style+="edgeStyle=orthogonalEdgeStyle;","curve"==b.Shape&&(a.style+="curved=1;"));l(a,b.Endpoint1,!0);l(a,b.Endpoint2,!1)}}}}function x(a){var c=n(a).Properties.BoundingBox;a.Class.startsWith("AWS")&&(c.h-=20);v=new mxCell("",new mxGeometry(Math.round(.6*c.x+0),Math.round(.6*c.y+0),Math.round(.6*c.w),Math.round(.6*c.h)),"html=1;whiteSpace=wrap;");v.vertex=!0;w(v,a);return v}
+function h(a,c,d,b){null!=c&&null!=b&&(c=b(c));return null!=c&&c!=d?a+"="+c+";":""}function l(a,c,d){null!=c&&(null!=c.LinkX&&null!=c.LinkY&&(a.style+=(d?"exitX":"entryX")+"="+c.LinkX+";"+(d?"exitY":"entryY")+"="+c.LinkY+";"+(d?"exitPerimeter":"entryPerimeter")+"=0;"),"Arrow"==c.Style?a.style+=(d?"startArrow":"endArrow")+"=block;":"Hollow Arrow"==c.Style?(a.style+=(d?"startArrow":"endArrow")+"=block;",a.style+=(d?"startFill":"endFill")+"=0;"):"Open Arrow"==c.Style&&(a.style+=(d?"startArrow":"endArrow")+
+"=open;",a.style+=(d?"startSize":"endSize")+"=12;"))}var y={DefaultTextBlockNew:"text;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;",DefaultSquareBlock:"rounded=1;arcSize=5;",DefaultNoteBlock:"shape=note;size=15;",HotspotBlock:"strokeColor=none;opacity=50;",ImageSearchBlock2:"shape=image;",ProcessBlock:"rounded=1;arcSize=5;",DecisionBlock:"rhombus;rounded=1;arcSize=5;",TerminatorBlock:"rounded=1;arcSize=50;",PredefinedProcessBlock:"shape=process;rounded=1;arcSize=5;",DocumentBlock:"shape=document;",
+MultiDocumentBlock:"shape=mxgraph.flowchart.multi-document;",ManualInputBlock:"shape=manualInput;size=15;rounded=1;arcSize=5;",PreparationBlock:"shape=hexagon;rounded=1;arcSize=5;",DataBlockNew:"shape=parallelogram;rounded=1;arcSize=5;",DatabaseBlock:"shape=cylinder;",DirectAccessStorageBlock:"shape=mxgraph.flowchart.direct_data;",InternalStorageBlock:"shape=internalStorage;rounded=1;arcSize=5;dx=10;dy=10;",PaperTapeBlock:"shape=tape;size=0.2;",ManualOperationBlockNew:"shape=trapezoid;rounded=1;arcSize=5;flipV=1;",
+DelayBlock:"shape=delay;",StoredDataBlock:"shape=dataStorage;",MergeBlock:"triangle;direction=south;rounded=1;arcSize=5;",ConnectorBlock:"ellipse;",OrBlock:"shape=mxgraph.flowchart.summing_function;",SummingJunctionBlock:"shape=mxgraph.flowchart.or;",DisplayBlock:"shape=display;",OffPageLinkBlock:"shape=offPageConnector;rounded=1;arcSize=5;",BraceNoteBlock:"shape=curlyBracket;rounded=1;",NoteBlock:"shape=mxgraph.flowchart.annotation_1;",AdvancedSwimLaneBlock:"swimlane;rounded=1;arcSize=5;",AdvancedSwimLaneBlockRotated:"swimlane;horizontal=0;rounded=1;arcSize=5;",
+RectangleContainerBlock:"fillColor=none;container=1;rounded=1;arcSize=5;",DiamondContainerBlock:"shape=rhombus;fillColor=none;container=1;",RoundedRectangleContainerBlock:"rounded=1;fillColor=none;container=1;",CircleContainerBlock:"shape=ellipse;fillColor=none;container=1;",PillContainerBlock:"rounded=1;arcSize=50;fillColor=none;container=1;",IsoscelesTriangleBlock:"triangle;direction=north;",RightTriangleBlock:"shape=mxgraph.basic.orthogonal_triangle;",PentagonBlock:"shape=mxgraph.basic.pentagon;",
+HexagonBlock:"shape=hexagon;rounded=1;arcSize=5;",OctagonBlock:"shape=mxgraph.basic.octagon;",CrossBlock:"shape=cross;size=0.6;",CloudBlock:"ellipse;shape=cloud;",HeartBlock:"shape=mxgraph.basic.heart;",RightArrowBlock:"shape=singleArrow;arrowWidth=0.5;arrowSize=0.3;",DoubleArrowBlock:"shape=doubleArrow;arrowWidth=0.5;arrowSize=0.3;",CalloutBlock:"shape=mxgraph.basic.rectangular_callout;",ShapeCircleBlock:"ellipse;",ShapePolyStarBlock:"shape=mxgraph.basic.star;",ShapeDiamondBlock:"rhombus;rounded=1;arcSize=5;",
+AndroidIconCheck:"shape=mxgraph.ios7.misc.check;",AndroidIconCancel:"shape=mxgraph.atlassian.x;",AndroidIconCollapse:"shape=mxgraph.ios7.misc.up;",AndroidIconExpand:"shape=mxgraph.ios7.misc.down;",AndroidIconNext:"shape=mxgraph.ios7.misc.right;",AndroidIconPrevious:"shape=mxgraph.ios7.misc.left;",AndroidIconRefresh:NaN,AndroidIconInformation:"shape=mxgraph.ios7.icons.info;",AndroidIconSearch:"shape=mxgraph.ios7.icons.looking_glass;",AndroidIconSettings:"shape=mxgraph.ios7.icons.volume;direction=south;",
+AndroidIconTrash:"shape=mxgraph.ios7.icons.trashcan;",AndroidIconEmail:"shape=mxgraph.mockup.misc.mail2;",AndroidIconNew:"shape=mxgraph.ios7.misc.flagged;",UMLClassBlock:"rounded=1;",UMLActiveClassBlock:"shape=mxgraph.flowchart.predefined_process;",UMLPackageBlock:"shape=folder;tabPosition=left;",UMLNoteBlock:"shape=note;size=15;",UMLTextBlock:"shape=text;strokeColor=none;fillColor=none;",UMLActorBlock:"shape=umlActor;",UMLUseCaseBlock:"shape=ellipse;",UMLCircleContainerBlock:"shape=ellipse;container=1;",
+UMLRectangleContainerBlock:"rounded=1;container=1;",UMLOptionLoopBlock:"shape=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;",UMLStartBlock:"shape=ellipse;fillColor=#000000;",UMLStateBlock:"shape=rect;rounded=1;",UMLDecisionBlock:"shape=rhombus;rounded=1;",UMLHForkJoinBlock:"shape=rect;rounded=1;fillColor=#000000;",UMLVForkJoinBlock:"shape=rect;rounded=1;fillColor=#000000;",UMLFlowFinalBlock:"shape=mxgraph.flowchart.or;",UMLHistoryStateBlock:"shape=ellipse;",UMLEndBlock:"shape=mxgraph.bpmn.shape;outline=end;symbol=terminate;",
+UMLObjectBlock:"shape=rect;rounded=1;",UMLSendSignalBlock:"shape=mxgraph.sysml.sendSigAct;",UMLReceiveSignalBlock:"shape=mxgraph.sysml.accEvent;",UMLAcceptTimeEventActionBlock:"shape=mxgraph.sysml.timeEvent;",UMLOffPageLinkBlock:"shape=mxgraph.sysml.sendSigAct;direction=south;",UMLActivationBlock:"shape=rect;rounded=1;",UMLDeletionBlock:"shape=mxgraph.sysml.x;strokeWidth=4;",UMLSeqEntityBlock:"shape=mxgraph.electrical.radio.microphone_1;direction=north;",UMLComponentBlock:"shape=component;align=left;spacingLeft=36;",
+UMLNodeBlock:"shape=cube;size=12;flipH=1;",UMLComponentInterfaceBlock:"shape=ellipse;",UMLProvidedInterfaceBlock:"shape=lollipop;direction=south;",UMLRequiredInterfaceBlock:"shape=requires;direction=north;",UMLEntityBlock:"shape=rect;rounded=1;",UMLWeakEntityBlock:"shape=ext;double=1;rounded=1;",UMLAttributeBlock:"shape=ellipse;",UMLMultivaluedAttributeBlock:"shape=doubleEllipse;",UMLRelationshipBlock:"shape=rhombus;rounded=1;",UMLWeakRelationshipBlock:"shape=rhombus;rounded=1;double=1;",DFDExternalEntityBlock2:"shape=rect;rounded=1;",
+YDMDFDProcessBlock:"shape=ellipse;",YDMDFDDataStoreBlock:"shape=mxgraph.bootstrap.horLines;",GSDFDProcessBlock:"shape=swimlane;rounded=1;",GSDFDProcessBlock2:"shape=rect;rounded=1;",OrgBlock:"shape=rect;rounded=1;",VSMCustomerSupplierBlock:"shape=mxgraph.lean_mapping.outside_sources;",VSMDedicatedProcessBlock:"shape=mxgraph.lean_mapping.manufacturing_process;",VSMSharedProcessBlock:"shape=mxgraph.lean_mapping.manufacturing_process_shared;",VSMWorkcellBlock:"shape=mxgraph.lean_mapping.work_cell;",
VSMInventoryBlock:"shape=mxgraph.lean_mapping.inventory_box;",VSMPhysicalPullBlock:"shape=mxgraph.lean_mapping.physical_pull;direction=south;",VSMFIFOLaneBlock:"shape=mxgraph.lean_mapping.fifo_sequence_flow;fontStyle=0;fontSize=20",VSMExternalShipmentAirplaneBlock:"shape=mxgraph.lean_mapping.airplane_7;",VSMExternalShipmentForkliftBlock:"shape=mxgraph.lean_mapping.move_by_forklift;",VSMExternalShipmentTruckBlock:"shape=mxgraph.lean_mapping.truck_shipment;",VSMExternalShipmentBoatBlock:"shape=mxgraph.lean_mapping.boat_shipment;",
VSMProductionControlBlock:"shape=mxgraph.lean_mapping.manufacturing_process;",VSMOtherInformationBlock:"shape=rect;rounded=1;",VSMSequencedPullBallBlock:"shape=mxgraph.lean_mapping.sequenced_pull_ball;",VSMMRPERPBlock:"shape=mxgraph.lean_mapping.mrp_erp;whiteSpace=wrap;",VSMLoadLevelingBlock:"shape=mxgraph.lean_mapping.load_leveling;",VSMGoSeeBlock:"shape=mxgraph.lean_mapping.go_see_production_scheduling;flipH=1;",VSMGoSeeProductionBlock:"shape=ellipse;",VSMVerbalInfoBlock:"shape=mxgraph.lean_mapping.verbal;",
VSMKaizenBurstBlock:"shape=mxgraph.lean_mapping.kaizen_lightening_burst;",VSMOperatorBlock:"shape=mxgraph.lean_mapping.operator;flipV=1;",VSMQualityProblemBlock:"shape=mxgraph.lean_mapping.quality_problem;",VSMProductionKanbanSingleBlock:"shape=mxgraph.lean_mapping.production_kanban;",VSMWithdrawalKanbanBlock:"shape=mxgraph.lean_mapping.withdrawal_kanban;",VSMSignalKanbanBlock:"shape=mxgraph.lean_mapping.signal_kanban;",VSMKanbanPostBlock:"shape=mxgraph.lean_mapping.kanban_post;",VSMShipmentArrow:"shape=singleArrow;arrowWidth=0.5;arrowSize=0.13;",
-VSMPushArrow:"shape=mxgraph.lean_mapping.push_arrow;",AWSElasticComputeCloudBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2;strokeColor=none;",AWSInstanceBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_instance;strokeColor=none;",AWSInstancesBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_instances;strokeColor=none;",AWSAMIBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_ami;strokeColor=none;",AWSDBonInstanceBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_db_on_instance;strokeColor=none;",
-AWSInstanceCloudWatchBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_cloudwatch;strokeColor=none;",AWSElasticIPBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_elastic_ip;strokeColor=none;",AWSElasticMapReduceBlock2:"shape=mxgraph.aws2.compute_and_networking.emr;strokeColor=none;",AWSClusterBlock2:"shape=mxgraph.aws2.compute_and_networking.emr_cluster;strokeColor=none;",AWSHDFSClusterBlock2:"shape=mxgraph.aws2.compute_and_networking.emr_hdfs_cluster;strokeColor=none;",AWSAutoScalingBlock2:"shape=mxgraph.aws2.compute_and_networking.auto_scaling;strokeColor=none;",
-AWSElasticLoadBlock2:"shape=mxgraph.aws2.compute_and_networking.elastic_load_balancing;strokeColor=none;",AWSDirectConnectBlock3:"shape=mxgraph.aws2.compute_and_networking.aws_direct_connect;strokeColor=none;",AWSElasticNetworkBlock2:"shape=mxgraph.aws2.compute_and_networking.elastic_network_instance;strokeColor=none;",AWSRoute53Block2:"shape=mxgraph.aws2.compute_and_networking.route_53;strokeColor=none;",AWSHostedZoneBlock2:"shape=mxgraph.aws2.compute_and_networking.route_53_hosted_zone;strokeColor=none;",
-AWSRouteTableBlock2:"shape=mxgraph.aws2.compute_and_networking.route_53_route_table;strokeColor=none;",AWSVPCBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc;strokeColor=none;",AWSVPNConnectionBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc_vpn_connection;strokeColor=none;",AWSVPNGatewayBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc_vpn_gateway;strokeColor=none;",AWSCustomerGatewayBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc_customer_gateway;strokeColor=none;",AWSInternetGatewayBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc_internet_gateway;strokeColor=none;",
-AWSRouterBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc_router;strokeColor=none;",AWSSimpleStorageBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.s3;strokeColor=none;",AWSBucketBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.s3_bucket;strokeColor=none;",AWSBuckethWithObjectsBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.s3_bucket_with_objects;strokeColor=none;",AWSObjectBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.s3_objects;strokeColor=none;",AWSImportExportBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.aws_import_export;strokeColor=none;",
-AWSStorageGatewayBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.aws_storage_gateway;strokeColor=none;",AWSElasticBlockStorageBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.ebs;strokeColor=none;",AWSVolumeBlock3:"shape=mxgraph.aws2.storage_and_content_delivery.ebs_volume;strokeColor=none;",AWSSnapshotBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.ebs_snapshot;strokeColor=none;",AWSGlacierBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.glacier;strokeColor=none;",AWSGlacierArchiveBlock3:"shape=mxgraph.aws2.storage_and_content_delivery.glacier_archive;strokeColor=none;",
-AWSGlacierVaultBlock3:"shape=mxgraph.aws2.storage_and_content_delivery.glacier_vault;strokeColor=none;",AWSCloudFrontBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.cloudfront;strokeColor=none;",AWSDownloadDistBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_download_distribution;strokeColor=none;",AWSStreamingBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_streaming_distribution;strokeColor=none;",AWSEdgeLocationBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_edge_location;strokeColor=none;",
-AWSItemBlock2:"shape=mxgraph.aws2.database.dynamodb_item;strokeColor=none;",AWSItemsBlock2:"shape=mxgraph.aws2.database.dynamodb_items;strokeColor=none;",AWSAttributeBlock2:"shape=mxgraph.aws2.database.dynamodb_attribute;strokeColor=none;",AWSAttributesBlock2:"shape=mxgraph.aws2.database.dynamodb_attributes;strokeColor=none;",AWSRDBSBlock2:"shape=mxgraph.aws2.database.rds;strokeColor=none;",AWSRDSInstanceBlock2:"shape=mxgraph.aws2.database.rds_db_instance;strokeColor=none;",AWSRDSStandbyBlock2:"shape=mxgraph.aws2.database.rds_instance_standby;strokeColor=none;",
-AWSRDSInstanceReadBlock2:"shape=mxgraph.aws2.database.rds_instance_read_replica;strokeColor=none;",AWSOracleDBBlock2:"shape=mxgraph.aws2.database.rds_oracle_db_instance;strokeColor=none;",AWSMySQLDBBlock2:"shape=mxgraph.aws2.database.rds_mysql_db_instance;strokeColor=none;",AWSMSSQLDBBlock3:"shape=mxgraph.aws2.database.rds_ms_sql_instance;strokeColor=none;",AWSDynamoDBBlock2:"shape=mxgraph.aws2.database.dynamodb;strokeColor=none;",AWSSimpleDatabaseBlock3:"shape=mxgraph.aws2.database.simpledb;strokeColor=none;",
-AWSSimpleDatabaseDomainBlock3:"shape=mxgraph.aws2.database.simpledb_domain;strokeColor=none;",AWSTableBlock2:"shape=mxgraph.aws2.database.dynamodb_table;strokeColor=none;",AWSAmazonRedShiftBlock3:"shape=mxgraph.aws2.database.redshift;strokeColor=none;",AWSElastiCacheNodeBlock2:"shape=mxgraph.aws2.database.elasticcache_node;strokeColor=none;",AWSElastiCacheBlock2:"shape=mxgraph.aws2.database.elasticcache;strokeColor=none;",AWSSESBlock2:"shape=mxgraph.aws2.app_services.ses;strokeColor=none;",AWSEmailBlock2:"shape=mxgraph.aws2.app_services.email;strokeColor=none;",
-AWSSNSBlock2:"shape=mxgraph.aws2.app_services.sns;strokeColor=none;",AWSTopicBlock2:"shape=mxgraph.aws2.app_services.sns_topic;strokeColor=none;",AWSEmailNotificationBlock2:"shape=mxgraph.aws2.app_services.sns_email_notification;strokeColor=none;",AWSHTTPNotificationBlock2:"shape=mxgraph.aws2.app_services.sns_http_notification;strokeColor=none;",AWSSQSBlock3:"shape=mxgraph.aws2.app_services.sqs;strokeColor=none;",AWSQueueBlock2:"shape=mxgraph.aws2.app_services.sqs_queue;strokeColor=none;",AWSMessageBlock2:"shape=mxgraph.aws2.app_services.sqs_message;strokeColor=none;",
-AWSDeciderBlock2:"shape=mxgraph.aws2.app_services.swf_decider;strokeColor=none;",AWSSWFBlock2:"shape=mxgraph.aws2.app_services.swf;strokeColor=none;",AWSWorkerBlock2:"shape=mxgraph.aws2.app_services.swf_worker;strokeColor=none;",AWSCloudSearchBlock2:"shape=mxgraph.aws2.app_services.cloudsearch;strokeColor=none;",AWSCloudSearchMetadataBlock3:"shape=mxgraph.aws2.app_services.cloudsearch_sdf_metadata;strokeColor=none;",AWSElasticTranscoder3:"shape=mxgraph.aws2.app_services.elastic_transcoder;strokeColor=none;",
-AWSCloudFormationBlock2:"shape=mxgraph.aws2.deployment_and_management.cloudformation;strokeColor=none;",AWSDataPipelineBlock3:"shape=mxgraph.aws2.deployment_and_management.data_pipeline;strokeColor=none;",AWSTemplageBlock2:"shape=mxgraph.aws2.deployment_and_management.cloudformation_template;strokeColor=none;",AWSStackBlock2:"shape=mxgraph.aws2.deployment_and_management.cloudformation_stack;strokeColor=none;",AWSBeanStockBlock2:"shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk;strokeColor=none;",
-AWSApplicationBlock2:"shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk_application;strokeColor=none;",AWSBeanstalkDeploymentBlock3:"shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk_deployment;strokeColor=none;",AWSIAMBlock3:"shape=mxgraph.aws2.deployment_and_management.iam;strokeColor=none;",AWSIAMSTSBlock3:"shape=mxgraph.aws2.deployment_and_management.iam_sts;strokeColor=none;",AWSIAMAddonBlock2:"shape=mxgraph.aws2.deployment_and_management.iam_add-on;strokeColor=none;",
-AWSCloudWatchBlock3:"shape=mxgraph.aws2.deployment_and_management.cloudwatch;strokeColor=none;",AWSCloudWatchAlarmBlock2:"shape=mxgraph.aws2.deployment_and_management.cloudwatch_alarm;strokeColor=none;",AWSOpsWorksBlock3:"shape=mxgraph.aws2.deployment_and_management.opsworks;strokeColor=none;",AWSMechanicalTurkBlock3:"shape=mxgraph.aws2.on-demand_workforce.mechanical_turk;strokeColor=none;",AWSHumanITBlock2:"shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_human_intelligence_tasks;strokeColor=none;",
-AWSAssignmentTaskBlock2:"shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_requester;strokeColor=none;",AWSWorkersBlock2:"shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_workers;strokeColor=none;",AWSRequesterBlock2:"shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_assignment_task;strokeColor=none;",AWSAndroidBlock3:"shape=mxgraph.aws2.sdks.android;",AWSiOSBlock3:"shape=mxgraph.aws2.sdks.ios;",AWSJavaBlock3:"shape=mxgraph.aws2.sdks.java;",AWSNetBlock3:"shape=mxgraph.aws2.sdks.net;",
-AWSNodeJSBlock3:"shape=mxgraph.aws2.sdks.nodejs;",AWSPHPBlock3:"shape=mxgraph.aws2.sdks.php;",AWSPythonBlock3:"shape=mxgraph.aws2.sdks.python;",AWSRubyBlock3:"shape=mxgraph.aws2.sdks.ruby;",AWSCLIBlock3:"shape=mxgraph.aws2.sdks.cli;",AWSEclipseToolkitBlock3:"shape=mxgraph.aws2.sdks.aws_toolkit_for_eclipse;",AWSVisualStudioToolkitBlock3:"shape=mxgraph.aws2.sdks.aws_toolkit_for_visual_studio;",AWSWindowsPowershellToolkitBlock3:"shape=mxgraph.aws2.sdks.tools_for_windows_powershell;",AWSCloudBlock2:"shape=mxgraph.aws2.non-service_specific.cloud;strokeColor=none;",
-AWSVPCloudBlock3:"shape=mxgraph.aws2.non-service_specific.virtual_private_cloud;strokeColor=none;",AWSUserBlock2:"shape=mxgraph.aws2.non-service_specific.user;strokeColor=none;",AWSUsersBlock2:"shape=mxgraph.aws2.non-service_specific.users;strokeColor=none;",AWSClientBlock2:"shape=mxgraph.aws2.non-service_specific.client;strokeColor=none;",AWSMobileClientBlock2:"shape=mxgraph.aws2.non-service_specific.mobile_client;strokeColor=none;",AWSGenericDatabaseBlock3:"shape=mxgraph.aws2.non-service_specific.generic_database;strokeColor=none;",
-AWSDiskBlock3:"shape=mxgraph.aws2.non-service_specific.disk;strokeColor=none;",AWSTapeStorageBlock3:"shape=mxgraph.aws2.non-service_specific.tape_storage;strokeColor=none;",AWSMediaBlock2:"shape=mxgraph.aws2.non-service_specific.multimedia;strokeColor=none;",AWSDataCenterBlock2:"shape=mxgraph.aws2.non-service_specific.corporate_data_center;strokeColor=none;",AWSServerBlock2:"shape=mxgraph.aws2.non-service_specific.traditional_server;strokeColor=none;",AWSInternetBlock2:"shape=mxgraph.aws2.non-service_specific.internet;strokeColor=none;",
-AWSForumsBlock3:"shape=mxgraph.aws2.non-service_specific.forums;strokeColor=none;",AWSManagementBlock2:"shape=mxgraph.aws2.non-service_specific.management_console;strokeColor=none;",Cisco_cisco_androgenous_person:"shape=mxgraph.cisco.people.androgenous_person;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_switch:"shape=mxgraph.cisco.switches.atm_switch;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cloud:"shape=mxgraph.cisco.storage.cloud;strokeColor=#036897;fillColor=#ffffff;",Cisco_cisco_fileserver:"shape=mxgraph.cisco.servers.fileserver;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_firewall:"shape=mxgraph.cisco.security.firewall;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_generic_building:"shape=mxgraph.cisco.buildings.generic_building;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_laptop:"shape=mxgraph.cisco.computers_and_peripherals.laptop;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_lock:"shape=mxgraph.cisco.security.lock;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_microwebserver:"shape=mxgraph.cisco.servers.microwebserver;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_pc:"shape=mxgraph.cisco.computers_and_peripherals.pc;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_pda:"shape=mxgraph.cisco.misc.pda;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_phone:"shape=mxgraph.cisco.modems_and_phones.hootphone;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_printer:"shape=mxgraph.cisco.computers_and_peripherals.printer;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_relational_database:"shape=mxgraph.cisco.storage.relational_database;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_router:"shape=mxgraph.cisco.routers.router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_standing_man:"shape=mxgraph.cisco.people.standing_man;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_standing_woman:"shape=mxgraph.cisco.people.standing_woman;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ups:"shape=mxgraph.cisco.misc.ups;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wireless_router:"shape=mxgraph.cisco.routers.wireless_router;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_100baset_hub:"shape=mxgraph.cisco.hubs_and_gateways.100baset_hub;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_10700:"shape=mxgraph.cisco.routers.10700;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_10GE_FCoE:"shape=mxgraph.cisco.controllers_and_modules.10ge_fcoe;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_15200:"shape=mxgraph.cisco.misc.15200;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_3174__desktop_:"shape=mxgraph.cisco.controllers_and_modules.3174_(desktop)_cluster_controller;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_3200_mobile_access_router:"shape=mxgraph.cisco.routers.mobile_access_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_3x74__floor_:"shape=mxgraph.cisco.controllers_and_modules.3x74_(floor)_cluster_controller;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_6700_series:"shape=mxgraph.cisco.misc.6700_series;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_7500ars__7513_:"shape=mxgraph.cisco.misc.7500ars_(7513);fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_accesspoint:"shape=mxgraph.cisco.misc.access_point;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_ace:"shape=mxgraph.cisco.misc.ace;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ACS:"shape=mxgraph.cisco.misc.acs;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_adm:"shape=mxgraph.cisco.misc.adm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_antenna:"shape=mxgraph.cisco.wireless.antenna;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_asic_processor:"shape=mxgraph.cisco.misc.asic_processor;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ASR_1000_Series:"shape=mxgraph.cisco.misc.asr_1000_series;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_ata:"shape=mxgraph.cisco.misc.ata;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_3800:"shape=mxgraph.cisco.misc.atm_3800;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_fast_gigabit_etherswitch:"shape=mxgraph.cisco.switches.atm_fast_gigabit_etherswitch;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_router:"shape=mxgraph.cisco.routers.atm_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_tag_switch_router:"shape=mxgraph.cisco.routers.atm_tag_switch_router;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_avs:"shape=mxgraph.cisco.misc.avs;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_AXP:"shape=mxgraph.cisco.misc.axp;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bbsm:"shape=mxgraph.cisco.misc.bbsm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_branch_office:"shape=mxgraph.cisco.buildings.branch_office;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_breakout_box:"shape=mxgraph.cisco.misc.breakout_box;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bridge:"shape=mxgraph.cisco.misc.bridge;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_broadband_router:"shape=mxgraph.cisco.routers.broadcast_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bts_10200:"shape=mxgraph.cisco.misc.bts_10200;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cable_modem:"shape=mxgraph.cisco.modems_and_phones.cable_modem;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_callmanager:"shape=mxgraph.cisco.misc.call_manager;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_car:"shape=mxgraph.cisco.misc.car;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_carrier_routing_system:"shape=mxgraph.cisco.misc.carrier_routing_system;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cddi_fddi:"shape=mxgraph.cisco.misc.cddi_fddi;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cdm:"shape=mxgraph.cisco.misc.cdm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cellular_phone:"shape=mxgraph.cisco.modems_and_phones.cell_phone;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_centri_firewall:"shape=mxgraph.cisco.security.centri_firewall;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_cisco_1000:"shape=mxgraph.cisco.misc.cisco_1000;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_asa_5500:"shape=mxgraph.cisco.misc.asa_5500;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_ca:"shape=mxgraph.cisco.misc.cisco_ca;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_file_engine:"shape=mxgraph.cisco.storage.cisco_file_engine;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_hub:"shape=mxgraph.cisco.hubs_and_gateways.cisco_hub;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_ciscosecurity:"shape=mxgraph.cisco.security.cisco_security;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_unified_presence_server:"shape=mxgraph.cisco.servers.cisco_unified_presence_server;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_unityexpress:"shape=mxgraph.cisco.misc.cisco_unity_express;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ciscoworks:"shape=mxgraph.cisco.misc.cisco_works;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_class_4_5_switch:"shape=mxgraph.cisco.switches.class_4_5_switch;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_communications_server:"shape=mxgraph.cisco.servers.communications_server;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_contact_center:"shape=mxgraph.cisco.misc.contact_center;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_engine__cache_director_:"shape=mxgraph.cisco.directors.content_engine_(cache_director);fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_service_router:"shape=mxgraph.cisco.routers.content_service_router;fillColor=#036897;strokeColor=#ffffff;",
+VSMPushArrow:"shape=mxgraph.lean_mapping.push_arrow;",AWSElasticComputeCloudBlock2:"strokeColor=none;shape=mxgraph.aws3.ec2;",AWSInstanceBlock2:"strokeColor=none;shape=mxgraph.aws3.instance;",AWSInstancesBlock2:"strokeColor=none;shape=mxgraph.aws3.instances;",AWSAMIBlock2:"strokeColor=none;shape=mxgraph.aws3.ami;",AWSDBonInstanceBlock2:"strokeColor=none;shape=mxgraph.aws3.db_on_instance;",AWSInstanceCloudWatchBlock2:"strokeColor=none;shape=mxgraph.aws3.instance_with_cloudwatch;",AWSElasticIPBlock2:"strokeColor=none;shape=mxgraph.aws3.elastic_ip;",
+AWSHDFSClusterBlock2:"strokeColor=none;shape=mxgraph.aws3.hdfs_cluster;",AWSAutoScalingBlock2:"strokeColor=none;shape=mxgraph.aws3.auto_scaling;",AWSEC2OptimizedInstance2:"strokeColor=none;shape=mxgraph.aws3.optimized_instance;","AWSAmazonEC2(Spotinstance)":"strokeColor=none;shape=mxgraph.aws3.spot_instance;",AWSAmazonECR:"strokeColor=none;shape=mxgraph.aws3.ecr;",AWSAmazonECS:"strokeColor=none;shape=mxgraph.aws3.ecs;",AWSLambda2:"strokeColor=none;shape=mxgraph.aws3.lambda;",AWSElasticLoadBalancing:"strokeColor=none;shape=mxgraph.aws3.elastic_load_balancing;",
+AWSElasticLoadBlock2:"strokeColor=none;shape=mxgraph.aws3.classic_load_balancer;",AWSDirectConnectBlock3:"strokeColor=none;shape=mxgraph.aws3.direct_connect;",AWSElasticNetworkBlock2:"strokeColor=none;shape=mxgraph.aws3.elastic_network_interface;",AWSRoute53Block2:"strokeColor=none;shape=mxgraph.aws3.route_53;",AWSHostedZoneBlock2:"strokeColor=none;shape=mxgraph.aws3.hosted_zone;fontColor=#FFFFFF;fontStyle=1;",AWSRouteTableBlock2:"strokeColor=none;shape=mxgraph.aws3.route_table;",AWSVPCBlock2:"strokeColor=none;shape=mxgraph.aws3.vpc;",
+AWSVPNConnectionBlock2:"strokeColor=none;shape=mxgraph.aws3.vpn_connection;",AWSVPNGatewayBlock2:"strokeColor=none;shape=mxgraph.aws3.vpn_gateway;",AWSCustomerGatewayBlock2:"strokeColor=none;shape=mxgraph.aws3.customer_gateway;",AWSCustomerGatewayBlock3:"strokeColor=none;shape=mxgraph.aws3.customer_gateway;",AWSInternetGatewayBlock2:"strokeColor=none;shape=mxgraph.aws3.internet_gateway;",AWSRouterBlock2:"strokeColor=none;shape=mxgraph.aws3.router;",AWSRouterBlock3:"strokeColor=none;shape=mxgraph.aws3.router;",
+"AWSAmazonVPC(endpoints)":"strokeColor=none;shape=mxgraph.aws3.endpoints;","AWSAmazonVPC(flowlogs)":"strokeColor=none;shape=mxgraph.aws3.flow_logs;","AWSAmazonVPC(VPCNATgateway)":"strokeColor=none;shape=mxgraph.aws3.vpc_nat_gateway;",AWSVPCPeering3:"strokeColor=none;shape=mxgraph.aws3.vpc_peering;",AWSSimpleStorageBlock2:"strokeColor=none;shape=mxgraph.aws3.s3;",AWSBucketBlock2:"strokeColor=none;shape=mxgraph.aws3.bucket;fontStyle=1;fontColor=#ffffff;",AWSBuckethWithObjectsBlock2:"strokeColor=none;shape=mxgraph.aws3.bucket_with_objects;",
+AWSObjectBlock2:"strokeColor=none;shape=mxgraph.aws3.object;fontStyle=1;fontColor=#ffffff;",AWSImportExportBlock2:"strokeColor=none;shape=mxgraph.aws3.import_export;",AWSStorageGatewayBlock2:"strokeColor=none;shape=mxgraph.aws3.storage_gateway;",AWSElasticBlockStorageBlock2:"strokeColor=none;shape=mxgraph.aws3.volume;fontStyle=1;fontColor=#ffffff;",AWSVolumeBlock3:"strokeColor=none;shape=mxgraph.aws3.volume;fontStyle=1;fontColor=#ffffff;",AWSSnapshotBlock2:"strokeColor=none;shape=mxgraph.aws3.snapshot;fontStyle=1;fontColor=#ffffff;",
+AWSGlacierArchiveBlock3:"strokeColor=none;shape=mxgraph.aws3.archive;",AWSGlacierVaultBlock3:"strokeColor=none;shape=mxgraph.aws3.vault;",AWSAmazonEFS:"strokeColor=none;shape=mxgraph.aws3.efs;",AWSGlacierBlock2:"strokeColor=none;shape=mxgraph.aws3.glacier;",AWSAWSImportExportSnowball:"strokeColor=none;shape=mxgraph.aws3.snowball;",AWSStorageGatewayCachedVolumn2:"strokeColor=none;shape=mxgraph.aws3.cached_volume;","AWSStorageGatewayNon-CachedVolumn2":"strokeColor=none;shape=mxgraph.aws3.non_cached_volume;",
+AWSStorageGatewayVirtualTapeLibrary2:"strokeColor=none;shape=mxgraph.aws3.virtual_tape_library;",AWSCloudFrontBlock2:"strokeColor=none;shape=mxgraph.aws3.cloudfront;",AWSDownloadDistBlock2:"strokeColor=none;shape=mxgraph.aws3.download_distribution;",AWSStreamingBlock2:"strokeColor=none;shape=mxgraph.aws3.streaming_distribution;",AWSEdgeLocationBlock2:"strokeColor=none;shape=mxgraph.aws3.edge_location;",AWSItemBlock2:"strokeColor=none;shape=mxgraph.aws3.item;",AWSItemsBlock2:"strokeColor=none;shape=mxgraph.aws3.items;",
+AWSAttributeBlock2:"strokeColor=none;shape=mxgraph.aws3.attribute;",AWSAttributesBlock2:"strokeColor=none;shape=mxgraph.aws3.attributes;",AWSRDBSBlock2:"strokeColor=none;shape=mxgraph.aws3.rds;",AWSRDSInstanceBlock2:"strokeColor=none;shape=mxgraph.aws3.rds_db_instance;",AWSRDSStandbyBlock2:"strokeColor=none;shape=mxgraph.aws3.rds_db_instance_standby_multi_az;",AWSRDSInstanceReadBlock2:"strokeColor=none;shape=mxgraph.aws3.rds_db_instance_read_replica;",AWSOracleDBBlock2:"strokeColor=none;shape=mxgraph.aws3.oracle_db_instance;",
+AWSMySQLDBBlock2:"strokeColor=none;shape=mxgraph.aws3.mysql_db_instance;",AWSDynamoDBBlock2:"strokeColor=none;shape=mxgraph.aws3.dynamo_db;",AWSSimpleDatabaseBlock3:"strokeColor=none;shape=mxgraph.aws2.database.simpledb;",AWSSimpleDatabaseDomainBlock3:"strokeColor=none;shape=mxgraph.aws2.database.simpledb_domain;",AWSTableBlock2:"strokeColor=none;shape=mxgraph.aws3.table;",AWSAmazonRedShiftBlock3:"strokeColor=none;shape=mxgraph.aws3.redshift;",AWSElastiCacheNodeBlock2:"strokeColor=none;shape=mxgraph.aws3.cache_node;",
+AWSElastiCacheBlock2:"strokeColor=none;shape=mxgraph.aws3.elasticache;",AWSDynamoDBGlobalSecondaryIndexes2:"strokeColor=none;shape=mxgraph.aws3.global_secondary_index;",AWSAmazonElastiCacheMemcache2:"strokeColor=none;shape=mxgraph.aws3.memcached;",AWSAmazonElastiCacheRedis2:"strokeColor=none;shape=mxgraph.aws3.redis;",AWSAmazonRDSMSSQLInstance2:"strokeColor=none;shape=mxgraph.aws3.ms_sql_instance_2;",AWSMSSQLDBBlock3:"strokeColor=none;shape=mxgraph.aws3.ms_sql_instance;",AWSAmazonRDSMySQLDBInstance2:"strokeColor=none;shape=mxgraph.aws3.mysql_db_instance_2;",
+AWSAmazonRDSOracleDBInstance2:"strokeColor=none;shape=mxgraph.aws3.oracle_db_instance_2;",AWSRDSReplicasetswithPIOP2:"strokeColor=none;shape=mxgraph.aws3.piop;",AWSAmazonRDSPostgreSQL2:"strokeColor=none;shape=mxgraph.aws3.postgre_sql_instance;",AWSRDSMasterSQL2:"strokeColor=none;shape=mxgraph.aws3.sql_master;",AWSRDSSlaveSQL2:"strokeColor=none;shape=mxgraph.aws3.sql_slave;","AWSAmazonRedshift(densecomputenode)":"strokeColor=none;shape=mxgraph.aws3.dense_compute_node;","AWSAmazonRedshift(densestoragenode)":"strokeColor=none;shape=mxgraph.aws3.dense_storage_node;",
+AWSAWSDatabaseMigrationService:"strokeColor=none;shape=mxgraph.aws3.database_migration_service;",AWSACM:"strokeColor=none;shape=mxgraph.aws3.certificate_manager;",AWSAmazonInspector:"strokeColor=none;shape=mxgraph.aws3.inspector;",AWSAWSCloudHSM:"strokeColor=none;shape=mxgraph.aws3.cloudhsm;",AWSDirectoryService2:"strokeColor=none;shape=mxgraph.aws3.directory_service;",AWSAWSKMS:"strokeColor=none;shape=mxgraph.aws3.kms;",AWSAWSWAF:"strokeColor=none;shape=mxgraph.aws3.waf;","AWSACM(certificate-manager)":"strokeColor=none;shape=mxgraph.aws3.certificate_manager_2;",
+AWSSESBlock2:"strokeColor=none;shape=mxgraph.aws3.ses;",AWSEmailBlock2:"strokeColor=none;shape=mxgraph.aws3.email;",AWSSNSBlock2:"strokeColor=none;shape=mxgraph.aws3.sns;",AWSSQSBlock3:"strokeColor=none;shape=mxgraph.aws3.sqs;",AWSQueueBlock2:"strokeColor=none;shape=mxgraph.aws3.queue;",AWSMessageBlock2:"strokeColor=none;shape=mxgraph.aws3.message;",AWSDeciderBlock2:"strokeColor=none;shape=mxgraph.aws3.decider;",AWSSWFBlock2:"strokeColor=none;shape=mxgraph.aws3.swf;",AWSWorkerBlock2:"strokeColor=none;shape=mxgraph.aws3.worker;",
+AWSCloudSearchBlock2:"strokeColor=none;shape=mxgraph.aws3.cloudsearch;",AWSCloudSearchMetadataBlock3:"strokeColor=none;shape=mxgraph.aws3.search_documents;",AWSElasticTranscoder3:"strokeColor=none;shape=mxgraph.aws3.elastic_transcoder;",AWSAmazonAPIGateway:"strokeColor=none;shape=mxgraph.aws3.api_gateway;",AWSAppStream2:"strokeColor=none;shape=mxgraph.aws3.appstream;",AWSCloudFormationBlock2:"strokeColor=none;shape=mxgraph.aws3.cloudformation;",AWSDataPipelineBlock3:"strokeColor=none;shape=mxgraph.aws3.data_pipeline;",
+AWSDataPipelineBlock2:"strokeColor=none;shape=mxgraph.aws3.data_pipeline;",AWSTemplageBlock2:"strokeColor=none;shape=mxgraph.aws3.template;",AWSStackBlock2:"strokeColor=none;shape=mxgraph.aws3.stack_aws_cloudformation;",AWSBeanStockBlock2:"strokeColor=none;shape=mxgraph.aws3.elastic_beanstalk;",AWSApplicationBlock2:"strokeColor=none;shape=mxgraph.aws3.application;",AWSBeanstalkDeploymentBlock3:"strokeColor=none;shape=mxgraph.aws3.deployment;",AWSIAMBlock3:"strokeColor=none;shape=mxgraph.aws3.iam;",
+AWSIAMSTSBlock3:"strokeColor=none;shape=mxgraph.aws3.sts;",AWSIAMAddonBlock2:"strokeColor=none;shape=mxgraph.aws3.add_on;",AWSCloudWatchBlock3:"strokeColor=none;shape=mxgraph.aws3.cloudwatch;",AWSCloudWatchAlarmBlock2:"strokeColor=none;shape=mxgraph.aws3.alarm;",AWSIAMSecurityTokenService2:"strokeColor=none;shape=mxgraph.aws3.sts_2;",AWSIAMDataEncryptionKey2:"strokeColor=none;shape=mxgraph.aws3.data_encryption_key;",AWSIAMEncryptedData2:"strokeColor=none;shape=mxgraph.aws3.encrypted_data;","AWSAWSIAM(long-termsecuritycredential)":"strokeColor=none;shape=mxgraph.aws3.long_term_security_credential;",
+AWSIAMMFAToken2:"strokeColor=none;shape=mxgraph.aws3.mfa_token;",AWSIAMPermissions2:"strokeColor=none;shape=mxgraph.aws3.permissions_2;",AWSIAMRoles2:"strokeColor=none;shape=mxgraph.aws3.role;","AWSAWSIAM(temporarysecuritycredential)":"strokeColor=none;shape=mxgraph.aws3.long_term_security_credential;",AWSCloudTrail2:"strokeColor=none;shape=mxgraph.aws3.cloudtrail;",AWSConfig2:"strokeColor=none;shape=mxgraph.aws3.config;",AWSOpsWorksBlock3:"strokeColor=none;shape=mxgraph.aws3.opsworks;",AWSAWSServiceCatalog:"strokeColor=none;shape=mxgraph.aws3.service_catalog;",
+AWSTrustedAdvisor2:"strokeColor=none;shape=mxgraph.aws3.trusted_advisor;",AWSOpsWorksApps2:"strokeColor=none;shape=mxgraph.aws3.apps;",AWSOpsWorksDeployments2:"strokeColor=none;shape=mxgraph.aws3.deployments;",AWSOpsWorksInstances2:"strokeColor=none;shape=mxgraph.aws3.instances_2;",AWSOpsWorksLayers2:"strokeColor=none;shape=mxgraph.aws3.layers;",AWSOpsWorksMonitoring2:"strokeColor=none;shape=mxgraph.aws3.monitoring;",AWSOpsWorksPermissions2:"strokeColor=none;shape=mxgraph.aws3.permissions;",AWSOpsWorksResources2:"strokeColor=none;shape=mxgraph.aws3.resources;",
+AWSOpsWorksStack2:"strokeColor=none;shape=mxgraph.aws3.stack_aws_opsworks;",AWSMechanicalTurkBlock3:"strokeColor=none;shape=mxgraph.aws3.mechanical_turk;",AWSHumanITBlock2:"strokeColor=none;shape=mxgraph.aws3.human_intelligence_tasks_hit;",AWSAssignmentTaskBlock2:"strokeColor=none;shape=mxgraph.aws3.requester;",AWSWorkersBlock2:"strokeColor=none;shape=mxgraph.aws3.users;",AWSRequesterBlock2:"strokeColor=none;shape=mxgraph.aws3.assignment_task;",AWSAndroidBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#96BF3D;",
+AWSiOSBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#CFCFCF;",AWSJavaBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#EE472A;",AWSJavaScript:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#205E00;",AWSNetBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#115193;",AWSNodeJSBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#8CC64F;",AWSPHPBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#5A69A4;",AWSPythonBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#FFD44F;",
+AWSRubyBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#AE1F23;",AWSXamarin:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#4090D7;",AWSCLIBlock3:"strokeColor=none;shape=mxgraph.aws3.cli;fillColor=#444444;",AWSEclipseToolkitBlock3:"strokeColor=none;shape=mxgraph.aws3.toolkit_for_eclipse;fillColor=#342074;",AWSVisualStudioToolkitBlock3:"strokeColor=none;shape=mxgraph.aws3.toolkit_for_visual_studio;fillColor=#53B1CB;",AWSWindowsPowershellToolkitBlock3:"strokeColor=none;shape=mxgraph.aws3.toolkit_for_windows_powershell;fillColor=#737373;",
+AWSAmazonElasticsearchService:"strokeColor=none;shape=mxgraph.aws3.elasticsearch_service;",AWSElasticMapReduceBlock2:"strokeColor=none;shape=mxgraph.aws3.emr;",AWSClusterBlock2:"strokeColor=none;shape=mxgraph.aws3.emr_cluster;",AWSEMREngine2:"strokeColor=none;shape=mxgraph.aws3.emr_engine;",AWSEMRMapRM3Engine2:"strokeColor=none;shape=mxgraph.aws3.emr_engine_mapr_m3;",AWSEMRMapRM5Engine2:"strokeColor=none;shape=mxgraph.aws3.emr_engine_mapr_m5;",AWSEMRMapRM7Engine2:"strokeColor=none;shape=mxgraph.aws3.emr_engine_mapr_m7;",
+AWSKinesis2:"strokeColor=none;shape=mxgraph.aws3.kinesis;","AWSAmazonKinesis(AmazonKinesisAnalytics)":"strokeColor=none;shape=mxgraph.aws3.kinesis;",AWSKinesisEnabledApp2:"strokeColor=none;shape=mxgraph.aws3.kinesis_enabled_app;","AWSAmazonKinesis(AmazonKinesisFirehose)":"strokeColor=none;shape=mxgraph.aws3.kinesis_firehose;","AWSAmazonKinesis(AmazonKinesisStreams)":"strokeColor=none;shape=mxgraph.aws3.kinesis_streams;",AWSAmazonMachineLearning:"strokeColor=none;shape=mxgraph.aws3.machine_learning;",
+AWSAmazonQuickSight:"strokeColor=none;shape=mxgraph.aws3.quicksight;",AWSCognito2:"strokeColor=none;shape=mxgraph.aws3.cognito;",AWSMobileAnalytics2:"strokeColor=none;shape=mxgraph.aws3.mobile_analytics;",AWSAWSDeviceFarm:"strokeColor=none;shape=mxgraph.aws3.device_farm;",AWSAWSMobileHub:"strokeColor=none;shape=mxgraph.aws3.mobile_hub;gradientColor=#AD688A;gradientDirection=east;",AWSTopicBlock2:"strokeColor=none;shape=mxgraph.aws3.topic_2;fontStyle=1;fontColor=#ffffff;verticalAlign=top;spacingTop=-5;",
+AWSEmailNotificationBlock2:"strokeColor=none;shape=mxgraph.aws3.email_notification;",AWSHTTPNotificationBlock2:"strokeColor=none;shape=mxgraph.aws3.http_notification;",AWSAWSCodeCommit:"strokeColor=none;shape=mxgraph.aws3.codecommit;",AWSCodeDeploy2:"strokeColor=none;shape=mxgraph.aws3.codedeploy;",AWSAWSCodePipeline:"strokeColor=none;shape=mxgraph.aws3.codepipeline;",AWSWorkDocs2:"strokeColor=none;shape=mxgraph.aws3.workdocs;",AWSAmazonWorkMail:"strokeColor=none;shape=mxgraph.aws3.workmail;",AWSAmazonWorkSpaces2:"strokeColor=none;shape=mxgraph.aws3.workspaces;",
+AWSAWSIoT:"strokeColor=none;shape=mxgraph.aws3.aws_iot;","AWSAWSIoT(action)":"strokeColor=none;shape=mxgraph.aws3.action;","AWSAWSIoT(actuator)":"strokeColor=none;shape=mxgraph.aws3.actuator;","AWSAWSIoT(certificate)":"strokeColor=none;shape=mxgraph.aws3.certificate;","AWSAWSIoT(desiredstate)":"strokeColor=none;shape=mxgraph.aws3.desired_state;","AWSAWSIoT(hardwareboard)":"strokeColor=none;shape=mxgraph.aws3.hardware_board;","AWSAWSIoT(HTTP2protocol)":"strokeColor=none;shape=mxgraph.aws3.http_2_protocol;",
+"AWSAWSIoT(HTTPprotocol)":"strokeColor=none;shape=mxgraph.aws3.http_protocol;","AWSAWSIoT(MQTTprotocol)":"strokeColor=none;shape=mxgraph.aws3.mqtt_protocol;","AWSAWSIoT(policy)":"strokeColor=none;shape=mxgraph.aws3.policy;","AWSAWSIoT(reportedstate)":"strokeColor=none;shape=mxgraph.aws3.reported_state;","AWSAWSIoT(rule)":"strokeColor=none;shape=mxgraph.aws3.rule;","AWSAWSIoT(sensor)":"strokeColor=none;shape=mxgraph.aws3.sensor;","AWSAWSIoT(servo)":"strokeColor=none;shape=mxgraph.aws3.servo;","AWSAWSIoT(shadow)":"strokeColor=none;shape=mxgraph.aws3.shadow;",
+"AWSAWSIoT(simulator)":"strokeColor=none;shape=mxgraph.aws3.simulator;","AWSAWSIoT(thingbank)":"strokeColor=none;shape=mxgraph.aws3.bank;","AWSAWSIoT(thingbicycle)":"strokeColor=none;shape=mxgraph.aws3.bicycle;","AWSAWSIoT(thingcamera)":"strokeColor=none;shape=mxgraph.aws3.camera;","AWSAWSIoT(thingcar)":"strokeColor=none;shape=mxgraph.aws3.car;","AWSAWSIoT(thingcart)":"strokeColor=none;shape=mxgraph.aws3.cart;","AWSAWSIoT(thingcoffeepot)":"strokeColor=none;shape=mxgraph.aws3.coffee_pot;","AWSAWSIoT(thingdoorlock)":"strokeColor=none;shape=mxgraph.aws3.door_lock;",
+"AWSAWSIoT(thingfactory)":"strokeColor=none;shape=mxgraph.aws3.factory;","AWSAWSIoT(thinggeneric)":"strokeColor=none;shape=mxgraph.aws3.generic;","AWSAWSIoT(thinghouse)":"strokeColor=none;shape=mxgraph.aws3.house;","AWSAWSIoT(thinglightbulb)":"strokeColor=none;shape=mxgraph.aws3.lightbulb;","AWSAWSIoT(thingmedicalemergency)":"strokeColor=none;shape=mxgraph.aws3.medical_emergency;","AWSAWSIoT(thingpoliceemergency)":"strokeColor=none;shape=mxgraph.aws3.police_emergency;","AWSAWSIoT(thingthermostat)":"strokeColor=none;shape=mxgraph.aws3.thermostat;",
+"AWSAWSIoT(thingtravel)":"strokeColor=none;shape=mxgraph.aws3.travel;","AWSAWSIoT(thingutility)":"strokeColor=none;shape=mxgraph.aws3.utility;","AWSAWSIoT(thingwindfarm)":"strokeColor=none;shape=mxgraph.aws3.windfarm;","AWSAWSIoT(topic)":"strokeColor=none;shape=mxgraph.aws3.topic;",AWSCloudBlock2:"strokeColor=none;shape=mxgraph.aws3.cloud;",AWSVPCloudBlock3:"strokeColor=none;shape=mxgraph.aws3.virtual_private_cloud;",AWSUserBlock2:"strokeColor=none;shape=mxgraph.aws3.user;",AWSUsersBlock2:"strokeColor=none;shape=mxgraph.aws3.users;",
+AWSClientBlock2:"strokeColor=none;shape=mxgraph.aws3.management_console;",AWSMobileClientBlock2:"strokeColor=none;shape=mxgraph.aws3.mobile_client;",AWSGenericDatabaseBlock3:"strokeColor=none;shape=mxgraph.aws3.generic_database;",AWSDiskBlock3:"strokeColor=none;shape=mxgraph.aws3.disk;",AWSTapeStorageBlock3:"strokeColor=none;shape=mxgraph.aws3.tape_storage;",AWSMediaBlock2:"strokeColor=none;shape=mxgraph.aws3.multimedia;",AWSDataCenterBlock2:"strokeColor=none;shape=mxgraph.aws3.corporate_data_center;",
+AWSServerBlock2:"strokeColor=none;shape=mxgraph.aws3.traditional_server;",AWSInternetBlock2:"strokeColor=none;shape=mxgraph.aws2.non-service_specific.internet;",AWSForumsBlock3:"strokeColor=none;shape=mxgraph.aws3.forums;",AWSManagementBlock2:"strokeColor=none;shape=mxgraph.aws3.management_console;",AWSAmazonElasticCacheNode2:"strokeColor=none;shape=mxgraph.aws3.cache_node;",AWSAmazonRedshiftDW1Cluster2:"strokeColor=none;shape=mxgraph.aws3.dense_compute_node;",AWSAmazonRedshiftDW2Cluster2:"strokeColor=none;shape=mxgraph.aws3.dense_storage_node;",
+AWSAmazonRedshiftSSDFamilyCluster2:"strokeColor=none;shape=mxgraph.aws3.dense_storage_node;",AWSAmazonRoute53RouteTable2:"strokeColor=none;shape=mxgraph.aws3.route_table;",AWSSubnetBlock2:"strokeColor=none;shape=mxgraph.aws3.permissions;",Cisco_cisco_androgenous_person:"shape=mxgraph.cisco.people.androgenous_person;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_switch:"shape=mxgraph.cisco.switches.atm_switch;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cloud:"shape=mxgraph.cisco.storage.cloud;strokeColor=#036897;fillColor=#ffffff;",
+Cisco_cisco_fileserver:"shape=mxgraph.cisco.servers.fileserver;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_firewall:"shape=mxgraph.cisco.security.firewall;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_generic_building:"shape=mxgraph.cisco.buildings.generic_building;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_laptop:"shape=mxgraph.cisco.computers_and_peripherals.laptop;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_lock:"shape=mxgraph.cisco.security.lock;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_microwebserver:"shape=mxgraph.cisco.servers.microwebserver;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_pc:"shape=mxgraph.cisco.computers_and_peripherals.pc;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_pda:"shape=mxgraph.cisco.misc.pda;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_phone:"shape=mxgraph.cisco.modems_and_phones.hootphone;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_printer:"shape=mxgraph.cisco.computers_and_peripherals.printer;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_relational_database:"shape=mxgraph.cisco.storage.relational_database;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_router:"shape=mxgraph.cisco.routers.router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_standing_man:"shape=mxgraph.cisco.people.standing_man;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_standing_woman:"shape=mxgraph.cisco.people.standing_woman;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ups:"shape=mxgraph.cisco.misc.ups;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_wireless_router:"shape=mxgraph.cisco.routers.wireless_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_100baset_hub:"shape=mxgraph.cisco.hubs_and_gateways.100baset_hub;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_10700:"shape=mxgraph.cisco.routers.10700;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_10GE_FCoE:"shape=mxgraph.cisco.controllers_and_modules.10ge_fcoe;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_15200:"shape=mxgraph.cisco.misc.15200;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_3174__desktop_:"shape=mxgraph.cisco.controllers_and_modules.3174_(desktop)_cluster_controller;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_3200_mobile_access_router:"shape=mxgraph.cisco.routers.mobile_access_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_3x74__floor_:"shape=mxgraph.cisco.controllers_and_modules.3x74_(floor)_cluster_controller;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_6700_series:"shape=mxgraph.cisco.misc.6700_series;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_7500ars__7513_:"shape=mxgraph.cisco.misc.7500ars_(7513);fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_accesspoint:"shape=mxgraph.cisco.misc.access_point;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ace:"shape=mxgraph.cisco.misc.ace;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ACS:"shape=mxgraph.cisco.misc.acs;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_adm:"shape=mxgraph.cisco.misc.adm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_antenna:"shape=mxgraph.cisco.wireless.antenna;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_asic_processor:"shape=mxgraph.cisco.misc.asic_processor;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ASR_1000_Series:"shape=mxgraph.cisco.misc.asr_1000_series;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ata:"shape=mxgraph.cisco.misc.ata;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_3800:"shape=mxgraph.cisco.misc.atm_3800;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_fast_gigabit_etherswitch:"shape=mxgraph.cisco.switches.atm_fast_gigabit_etherswitch;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_atm_router:"shape=mxgraph.cisco.routers.atm_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_tag_switch_router:"shape=mxgraph.cisco.routers.atm_tag_switch_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_avs:"shape=mxgraph.cisco.misc.avs;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_AXP:"shape=mxgraph.cisco.misc.axp;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bbsm:"shape=mxgraph.cisco.misc.bbsm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_branch_office:"shape=mxgraph.cisco.buildings.branch_office;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_breakout_box:"shape=mxgraph.cisco.misc.breakout_box;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bridge:"shape=mxgraph.cisco.misc.bridge;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_broadband_router:"shape=mxgraph.cisco.routers.broadcast_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bts_10200:"shape=mxgraph.cisco.misc.bts_10200;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cable_modem:"shape=mxgraph.cisco.modems_and_phones.cable_modem;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_callmanager:"shape=mxgraph.cisco.misc.call_manager;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_car:"shape=mxgraph.cisco.misc.car;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_carrier_routing_system:"shape=mxgraph.cisco.misc.carrier_routing_system;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cddi_fddi:"shape=mxgraph.cisco.misc.cddi_fddi;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cdm:"shape=mxgraph.cisco.misc.cdm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cellular_phone:"shape=mxgraph.cisco.modems_and_phones.cell_phone;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_centri_firewall:"shape=mxgraph.cisco.security.centri_firewall;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_1000:"shape=mxgraph.cisco.misc.cisco_1000;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_asa_5500:"shape=mxgraph.cisco.misc.asa_5500;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_ca:"shape=mxgraph.cisco.misc.cisco_ca;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_file_engine:"shape=mxgraph.cisco.storage.cisco_file_engine;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_cisco_hub:"shape=mxgraph.cisco.hubs_and_gateways.cisco_hub;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ciscosecurity:"shape=mxgraph.cisco.security.cisco_security;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_unified_presence_server:"shape=mxgraph.cisco.servers.cisco_unified_presence_server;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_unityexpress:"shape=mxgraph.cisco.misc.cisco_unity_express;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ciscoworks:"shape=mxgraph.cisco.misc.cisco_works;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_class_4_5_switch:"shape=mxgraph.cisco.switches.class_4_5_switch;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_communications_server:"shape=mxgraph.cisco.servers.communications_server;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_contact_center:"shape=mxgraph.cisco.misc.contact_center;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_engine__cache_director_:"shape=mxgraph.cisco.directors.content_engine_(cache_director);fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_service_router:"shape=mxgraph.cisco.routers.content_service_router;fillColor=#036897;strokeColor=#ffffff;",
Cisco_cisco_content_service_switch_1100:"shape=mxgraph.cisco.switches.content_service_switch_1100;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_switch_module:"shape=mxgraph.cisco.controllers_and_modules.content_switch_module;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_switch:"shape=mxgraph.cisco.switches.content_switch;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_transformation_engine__cte_:"shape=mxgraph.cisco.misc.content_transformation_engine_(cte);fillColor=#036897;strokeColor=#ffffff;",
Cisco_cisco_cs_mars:"shape=mxgraph.cisco.misc.cs-mars;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_csm_s:"shape=mxgraph.cisco.misc.csm-s;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_csu_dsu:"shape=mxgraph.cisco.misc.csu_dsu;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_CUBE:"shape=mxgraph.cisco.misc.cube;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_detector:"shape=mxgraph.cisco.misc.detector;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_director_class_fibre_channel_director:"shape=mxgraph.cisco.directors.director-class_fibre_channel_director;fillColor=#036897;strokeColor=#ffffff;",
Cisco_cisco_directory_server:"shape=mxgraph.cisco.servers.directory_server;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_diskette:"shape=mxgraph.cisco.storage.diskette;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_distributed_director:"shape=mxgraph.cisco.directors.distributed_director;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_dot_dot:"shape=mxgraph.cisco.misc.dot-dot;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_dpt:"shape=mxgraph.cisco.misc.dpt;fillColor=#036897;strokeColor=#ffffff;",
@@ -6812,8 +6827,8 @@ Cisco_cisco_voice_atm_switch:"shape=mxgraph.cisco.switches.voice_atm_switch;fill
Cisco_cisco_vpn_gateway:"shape=mxgraph.cisco.hubs_and_gateways.vpn_gateway;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_VSS:"shape=mxgraph.cisco.misc.vss;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wae:"shape=mxgraph.cisco.misc.wae;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wavelength_router:"shape=mxgraph.cisco.routers.wavelength_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_web_browser:"shape=mxgraph.cisco.computers_and_peripherals.web_browser;fillColor=#036897;strokeColor=#ffffff;",
Cisco_cisco_web_cluster:"shape=mxgraph.cisco.storage.web_cluster;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wi_fi_tag:"shape=mxgraph.cisco.wireless.wi-fi_tag;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wireless_bridge:"shape=mxgraph.cisco.wireless.wireless_bridge;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wireless_location_appliance:"shape=mxgraph.cisco.wireless.wireless_location_appliance;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wireless:"shape=mxgraph.cisco.wireless.wireless;fillColor=#036897;strokeColor=#ffffff;",
Cisco_cisco_wireless_transport:"shape=mxgraph.cisco.wireless.wireless_transport;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wism:"shape=mxgraph.cisco.misc.wism;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wlan_controller:"shape=mxgraph.cisco.wireless.wlan_controller;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_workgroup_director:"shape=mxgraph.cisco.directors.workgroup_director;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_workgroup_switch:"shape=mxgraph.cisco.switches.workgroup_switch;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_workstation:"shape=mxgraph.cisco.computers_and_peripherals.workstation;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_www_server:"shape=mxgraph.cisco.servers.www_server;fillColor=#036897;strokeColor=#ffffff;",RackServerRack:"shape=mxgraph.rackGeneral.container;container=1;collapsible=0;childLayout=rack;marginLeft=9;marginRight=9;marginTop=21;marginBottom=22;textColor=#000000;numDisp=off;",RackBlank:"strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;shape=mxgraph.rackGeneral.plate;fillColor=#e8e8e8;",
-RackRaidArray:"shape=mxgraph.rack.cisco.cisco_carrier_packet_transport_50;labelPosition=left;align=right;spacingRight=15;",RackServer:"shape=mxgraph.rack.oracle.sunfire_x4100;labelPosition=left;align=right;spacingRight=15;",RackEthernetSwitch:"shape=mxgraph.rack.cisco.cisco_nexus_3016_switch;labelPosition=left;align=right;spacingRight=15;",RackPatchPanel:"strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;shape=mxgraph.rack.general.cat5e_rack_mount_patch_panel_24_ports;",RackRouter:"shape=mxgraph.rack.cisco.cisco_asr_1001_router;labelPosition=left;align=right;spacingRight=15;",
+Cisco_cisco_workstation:"shape=mxgraph.cisco.computers_and_peripherals.workstation;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_www_server:"shape=mxgraph.cisco.servers.www_server;fillColor=#036897;strokeColor=#ffffff;",RackServerRack:"shape=mxgraph.rackGeneral.container;container=1;collapsible=0;childLayout=rack;marginLeft=9;marginRight=9;marginTop=21;marginBottom=22;textColor=#000000;numDisp=off;",RackBlank:"shape=mxgraph.rackGeneral.plate;strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;fillColor=#e8e8e8;",
+RackRaidArray:"shape=mxgraph.rack.cisco.cisco_carrier_packet_transport_50;labelPosition=left;align=right;spacingRight=15;",RackServer:"shape=mxgraph.rack.oracle.sunfire_x4100;labelPosition=left;align=right;spacingRight=15;",RackEthernetSwitch:"shape=mxgraph.rack.cisco.cisco_nexus_3016_switch;labelPosition=left;align=right;spacingRight=15;",RackPatchPanel:"shape=mxgraph.rack.general.cat5e_rack_mount_patch_panel_24_ports;strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;",RackRouter:"shape=mxgraph.rack.cisco.cisco_asr_1001_router;labelPosition=left;align=right;spacingRight=15;",
RackMonitor:"shape=mxgraph.rack.ibm.ibm_1u_flat_panel_console_kit;labelPosition=left;align=right;spacingRight=15;",RackKeyboard:"shape=mxgraph.rack.cisco.cisco_1905_serial_integrated_services_router;labelPosition=left;align=right;spacingRight=15;",RackPowerStrip:"shape=mxgraph.rack.dell.power_strip;labelPosition=left;align=right;spacingRight=15;",RackPowerSupply:"shape=mxgraph.rack.cisco.cisco_web_security_appliance_s170;labelPosition=left;align=right;spacingRight=15;",RackBridge:"shape=mxgraph.rack.cisco.cisco_nexus_5548p_switch;labelPosition=left;align=right;spacingRight=15;",
RackTapeDrive:"shape=mxgraph.rack.ibm.ibm_1754_local_console_manager;labelPosition=left;align=right;spacingRight=15;",Image_network_server:"image;image=img/lib/clip_art/computers/Server_Tower_128x128.png;flipH=1;",Image_network_server_file:"image;image=img/lib/clip_art/computers/Server_128x128.png;",Image_network_server_net:"image;image=img/lib/clip_art/networking/Print_Server_128x128.png;",Image_network_server_net_large:"image;image=img/lib/clip_art/computers/Server_128x128.png;",Image_network_raid:"image;image=img/lib/clip_art/computers/Server_Tower_128x128.png;flipH=1;",
Image_network_raid_large:"image;image=img/lib/clip_art/computers/Server_Tower_128x128.png;flipH=1;",Image_network_rack_server:"image;image=img/lib/clip_art/computers/Server_Rack_128x128.png;",Image_network_rack_tape:"image;image=img/lib/clip_art/computers/Server_Rack_Partial_128x128.png;",Image_network_printer_small:"image;image=img/lib/clip_art/computers/Printer_128x128.png;flipH=1;",Image_network_printer_large:"image;image=img/lib/clip_art/computers/Printer_128x128.png;flipH=1;",Image_network_printer_multipurpose:"image;image=img/lib/clip_art/computers/Printer_Commercial_128x128.png;flipH=1;",
@@ -6822,8 +6837,8 @@ Image_electronics_pda:"image;image=img/lib/clip_art/telecommunication/Palm_Treo_
Image_electronics_modem_external:"image;image=img/lib/clip_art/networking/Modem_128x128.png;flipH=1;",Image_electronics_lcd_wide:"image;image=img/lib/clip_art/computers/Monitor_128x128.png;",EE_Amplifier:"shape=mxgraph.electrical.abstract.amplifier;",EE_OpAmp:"shape=mxgraph.electrical.abstract.operational_amp_1;",EE_ControlledAmp:"shape=mxgraph.electrical.abstract.controlled_amplifier;",EE_Multiplexer:"shape=mxgraph.electrical.abstract.mux;",EE_Demultiplexer:"shape=mxgraph.electrical.abstract.demux;",
EE_Capacitor1:"shape=mxgraph.electrical.capacitors.capacitor_1;",EE_Capacitor2:"shape=mxgraph.electrical.capacitors.capacitor_3;",EE_Diode:"shape=mxgraph.electrical.diodes.diode;",EE_Resistor:"shape=mxgraph.electrical.resistors.resistor_2;",EE_VarResistor:"shape=mxgraph.electrical.resistors.variable_resistor_2;",EE_Potentiometer:"shape=mxgraph.electrical.resistors.potentiometer_2;",EE_ProtGround:"shape=mxgraph.electrical.signal_sources.protective_earth;",EE_SignalGround:"shape=mxgraph.electrical.signal_sources.signal_ground;",
EE_Transformer:"shape=mxgraph.electrical.inductors.transformer_1;",EE_Inductor:"shape=mxgraph.electrical.inductors.inductor_3;","EE_Variable Inductor":"shape=mxgraph.electrical.inductors.variable_inductor;",EE_TwoWaySwitch:"shape=mxgraph.electrical.electro-mechanical.2-way_switch;",EE_OnOffSwitch:"shape=mxgraph.electrical.electro-mechanical.simple_switch;",EE_Loudspeaker:"shape=mxgraph.electrical.electro-mechanical.loudspeaker;",EE_Motor:"shape=mxgraph.electrical.electro-mechanical.motor_1;",EE_LED1:"shape=mxgraph.electrical.opto_electronics.led_2;",
-EE_Lightbulb:"shape=mxgraph.electrical.miscellaneous.light_bulb;",EE_AcSource:"strokeWidth=1;shape=mxgraph.electrical.signal_sources.ac_source;",EE_VoltageSource:"shape=mxgraph.electrical.signal_sources.dc_source_3;",EE_CurrentSource:"shape=mxgraph.electrical.signal_sources.dc_source_2;direction=north;",EE_ControlledCurrentSource:"shape=mxgraph.electrical.signal_sources.dependent_source_2;direction=west;",EE_ControlledVoltageSource:"shape=mxgraph.electrical.signal_sources.dependent_source_3;",EE_Vss:"verticalLabelPosition=top;verticalAlign=bottom;shape=mxgraph.electrical.signal_sources.vss2;fontSize=24;",
-EE_Vdd:"verticalLabelPosition=bottom;verticalAlign=top;shape=mxgraph.electrical.signal_sources.vdd;",EE_BJT_NPN1:"shape=mxgraph.electrical.transistors.pnp_transistor_1;",EE_BJT_PNP1:"shape=mxgraph.electrical.transistors.npn_transistor_1;",EE_JFET_P:"shape=mxgraph.electrical.transistors.p-channel_jfet_1;flipV=1;",EE_JFET_N:"shape=mxgraph.electrical.transistors.n-channel_jfet_1;",EE_MOSFET_P1:"shape=mxgraph.electrical.mosfets1.mosfet_ic_p;flipV=1;",EE_MOSFET_P2:"shape=mxgraph.electrical.mosfets1.mosfet_p_no_bulk;",
+EE_Lightbulb:"shape=mxgraph.electrical.miscellaneous.light_bulb;",EE_AcSource:"shape=mxgraph.electrical.signal_sources.ac_source;strokeWidth=1;",EE_VoltageSource:"shape=mxgraph.electrical.signal_sources.dc_source_3;",EE_CurrentSource:"shape=mxgraph.electrical.signal_sources.dc_source_2;direction=north;",EE_ControlledCurrentSource:"shape=mxgraph.electrical.signal_sources.dependent_source_2;direction=west;",EE_ControlledVoltageSource:"shape=mxgraph.electrical.signal_sources.dependent_source_3;",EE_Vss:"shape=mxgraph.electrical.signal_sources.vss2;verticalLabelPosition=top;verticalAlign=bottom;fontSize=24;",
+EE_Vdd:"shape=mxgraph.electrical.signal_sources.vdd;verticalLabelPosition=bottom;verticalAlign=top;",EE_BJT_NPN1:"shape=mxgraph.electrical.transistors.pnp_transistor_1;",EE_BJT_PNP1:"shape=mxgraph.electrical.transistors.npn_transistor_1;",EE_JFET_P:"shape=mxgraph.electrical.transistors.p-channel_jfet_1;flipV=1;",EE_JFET_N:"shape=mxgraph.electrical.transistors.n-channel_jfet_1;",EE_MOSFET_P1:"shape=mxgraph.electrical.mosfets1.mosfet_ic_p;flipV=1;",EE_MOSFET_P2:"shape=mxgraph.electrical.mosfets1.mosfet_p_no_bulk;",
EE_MOSFET_P3:"shape=mxgraph.electrical.mosfets1.p-channel_mosfet_1;flipV=1;",EE_MOSFET_N1:"shape=mxgraph.electrical.mosfets1.mosfet_ic_n;",EE_MOSFET_N2:"shape=mxgraph.electrical.mosfets1.mosfet_n_no_bulk;",EE_MOSFET_N3:"shape=mxgraph.electrical.mosfets1.n-channel_mosfet_1;",EE_AND:"shape=mxgraph.electrical.logic_gates.and;",EE_OR:"shape=mxgraph.electrical.logic_gates.or;",EE_Inverter:"shape=mxgraph.electrical.logic_gates.inverter;",EE_NAND:"shape=mxgraph.electrical.logic_gates.nand;",EE_NOR:"shape=mxgraph.electrical.logic_gates.nor;",
EE_XOR:"shape=mxgraph.electrical.logic_gates.xor;",EE_NXOR:"shape=mxgraph.electrical.logic_gates.xnor;",EE_DTypeRSFlipFlop:"shape=mxgraph.electrical.logic_gates.d_type_rs_flip-flop;",EE_DTypeFlipFlop:"shape=mxgraph.electrical.logic_gates.d_type_flip-flop;",EE_DTypeFlipFlopWithClear:"shape=mxgraph.electrical.logic_gates.d_type_flip-flop_with_clear;",EE_RSLatch:"shape=mxgraph.electrical.logic_gates.rs_latch;",EE_SyncRSLatch:"shape=mxgraph.electrical.logic_gates.synchronous_rs_latch;",EE_TTypeFlipFlop:"shape=mxgraph.electrical.logic_gates.t_type_flip-flop;",
EE_Plus:"shape=mxgraph.ios7.misc.flagged;",EE_Negative:"shape=line;",EE_InverterContact:"shape=ellipse;",EE_Voltmeter:"shape=mxgraph.electrical.instruments.voltmeter;",EE_Ammeter:"shape=mxgraph.electrical.instruments.ampermeter;",EE_SineWave:"shape=mxgraph.electrical.waveforms.sine_wave;",EE_Sawtooth:"shape=mxgraph.electrical.waveforms.sawtooth;",EE_SquareWave:"shape=mxgraph.electrical.waveforms.square_wave;",EIChannelBlock:"shape=mxgraph.eip.messageChannel;",EIMessageRouterBlock:"shape=mxgraph.eip.content_based_router;",
@@ -6838,7 +6853,7 @@ fpCabinetsAboveDeskShelves:"shape=rect;rounded=1;",fpRestroomToiletPrivate:"shap
fpBedQueen:"shape=mxgraph.floorplan.bed_double;",fpBedKing:"shape=mxgraph.floorplan.bed_double;",fpBedDoubleWithTrundle:"shape=mxgraph.floorplan.bed_double;",fpBedBunk:"shape=mxgraph.floorplan.bed_double;",fpBedBassinet:"shape=mxgraph.pid.fittings.compensator;",fpApplianceWasher:"shape=rect;",fpApplianceDryer:"shape=rect;",fpApplianceWaterHeater:"shape=ellipse;",fpApplianceStoveOven:"shape=mxgraph.floorplan.range_1;",fpStoveOvenSixBurner:"shape=mxgraph.floorplan.range_2;",fpApplianceDishwasher:"shape=rect;",
fpKitchenSink:"shape=mxgraph.floorplan.sink_2;",fpKitchenDoubleSink:"shape=mxgraph.floorplan.sink_double;",fpKitchenCountertop:"shape=rect;rounded=1;",fpKitchenCountertopCorner:"shape=mxgraph.floorplan.desk_corner;",fpCouchLoveSeat:"shape=mxgraph.floorplan.couch;",fpCouchSofa:"shape=mxgraph.floorplan.couch;",fpCouchOttoman:"shape=rect;rounded=1;",fpMiscDesktopComputer:"shape=mxgraph.floorplan.workstation;",fpMiscLaptopComputer:"shape=mxgraph.floorplan.laptop;",fpComputerMonitor:"shape=mxgraph.floorplan.flat_tv;",
fpCRTTelevision:"shape=mxgraph.floorplan.flat_tv;",fpMiscIndoorPlant:"shape=mxgraph.floorplan.plant;",fpPiano:"shape=mxgraph.floorplan.piano;",PEAxialCompressor:"shape=mxgraph.pid.compressors.centrifugal_compressor_-_turbine_driven;",PECentrifugalCompressor:"shape=mxgraph.pid.compressors.centrifugal_compressor",PECentrifugalCompressor2:"shape=mxgraph.pid.compressors.centrifugal_compressor_-_turbine_driven;",PEReciprocationCompressor:"shape=mxgraph.pid.compressors.reciprocating_compressor;",PERotaryCompressorBlock:"shape=mxgraph.pid.compressors.rotary_compressor;",
-PERotaryCompressor2Block:"shape=mxgraph.pid.compressors.compressor_and_silencers;",PEConveyorBlock:"shape=mxgraph.pid2misc.conveyor;",PEElevator1Block:"shape=mxgraph.pid.misc.bucket_elevator;flipH=1;",PEAgitatorMixerBlock:"shape=mxgraph.pid.agitators.agitator_(propeller);",PEDrumBlock:"shape=mxgraph.pid.vessels.drum_or_condenser;",PETankEquipmentBlock:"mxgraph.pid.vessels.tank;",PEMixingReactorBlock:"shape=mxgraph.pid.vessels.mixing_reactor;",PEPlateTowerBlock:"shape=mxgraph.pid2misc.column;columnType=baffle;",
+PERotaryCompressor2Block:"shape=mxgraph.pid.compressors.compressor_and_silencers;",PEConveyorBlock:"shape=mxgraph.pid2misc.conveyor;",PEElevator1Block:"shape=mxgraph.pid.misc.bucket_elevator;flipH=1;",PEAgitatorMixerBlock:"shape=mxgraph.pid.agitators.agitator_(propeller);",PEDrumBlock:"shape=mxgraph.pid.vessels.drum_or_condenser;",PETankEquipmentBlock:"shape=mxgraph.pid.vessels.tank;",PEMixingReactorBlock:"shape=mxgraph.pid.vessels.mixing_reactor;",PEPlateTowerBlock:"shape=mxgraph.pid2misc.column;columnType=baffle;",
PEPackedTowerBlock:"shape=mxgraph.pid2misc.column;columnType=fixed;",PEFurnaceBlock:"shape=mxgraph.pid.vessels.furnace;",PEMidArrow:"shape=triangle;",PEButtWeld:"shape=mxgraph.sysml.x;",PETopToTop:"shape=mxgraph.pid.vessels.container,_tank,_cistern;",PENuclear:"shape=mxgraph.electrical.waveforms.sine_wave;",PEMechanicalLink:"shape=ellipse;",PESolderedSolvent:"shape=ellipse;",PEDoubleContainment:"shape=hexagon;",PEFlange:"shape=mxgraph.pid.piping.double_flange;",PEFlange2:"shape=mxgraph.pid.piping.flange_in;flipH=1;",
PEEndCap:"shape=mxgraph.pid.piping.cap;",PEEndCap2:"shape=mxgraph.pid.vessels.container,_tank,_cistern;direction=north;",PEBreather:"shape=mxgraph.pid.piping.breather;",PEElectronicallyInsulated:"shape=mxgraph.pid.piping.double_flange;",PEReducer:"shape=mxgraph.pid.piping.concentric_reducer;",PEInlineMixer:"shape=mxgraph.pid.piping.in-line_mixer;",PEFlameArrester:"shape=mxgraph.pid.piping.flame_arrestor;",PEDetonationArrester:"shape=mxgraph.pid.piping.detonation_arrestor;",PETriangleSeparator:"shape=triangle;direction=west;",
PETundish:"shape=mxgraph.ios7.misc.left;",PEOpenVent:"shape=mxgraph.pid.vessels.vent_(bent);",PERemovableSpool:"shape=mxgraph.pid.piping.removable_spool;",PEYTypeStrainer:"shape=mxgraph.pid.piping.y-type_strainer;",PEDiverterValve:"shape=mxgraph.pid.piping.diverter_valve;",PEPulsationDampener:"shape=mxgraph.pid.piping.pulsation_dampener;",PEDuplexStrainer:"shape=mxgraph.pid.piping.duplex_strainer;",PEBasketStrainer:"shape=mxgraph.pid.piping.basket_strainer;",PEVentSilencer:"shape=mxgraph.pid.piping.vent_silencer;",
@@ -6879,9 +6894,9 @@ Image_iphone_button_lg_yellow:"shape=rect;rounded=1;",Image_iphone_button_xl_gre
Image_iphone_email_name:"shape=rect;rounded=1;",Image_iphone_switch_off:"shape=mxgraph.android.switch_off;fillColor=#666666;",Image_iphone_keyboard_button_blue:"shape=rect;rounded=1;",Image_iphone_keyboard_letters:"shape=mxgraph.ios.iKeybLett;",Image_iphone_keyboard_landscape:"shape=mxgraph.ios.iKeybLett;",Image_iphone_add_icon_blue:"shape=mxgraph.ios.iAddIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;",Image_iphone_add_icon_green:"shape=mxgraph.ios.iAddIcon;fillColor=#7AdF78;fillColor2=#1A9917;strokeColor=#ffffff;",
Image_iphone_remove_icon:"shape=mxgraph.ios.iDeleteIcon;fillColor=#e8878E;fillColor2=#BD1421;strokeColor=#ffffff;",Image_iphone_arrow_icon:"shape=mxgraph.ios.iArrowIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;",Image_iphone_arrow:"shape=mxgraph.ios7.misc.more;",Image_iphone_checkmark:"shape=mxgraph.ios7.misc.check;",Image_iphone_check_off:"shape=ellipse;",Image_iphone_location_dot:"shape=ellipse;",Image_iphone_mark_as_read:"shape=ellipse;",Image_iphone_pin_green:"shape=mxgraph.ios.iPin;fillColor2=#00dd00;fillColor3=#004400;strokeColor=#006600;",
Image_iphone_pin_red:"shape=mxgraph.ios.iPin;fillColor2=#dd0000;fillColor3=#440000;strokeColor=#660000;",Image_iphone_radio_off:"shape=ellipse;",Image_iphone_checkbox_off:"shape=rect;rounded=1;",Image_iphone_indicator:"shape=rect;rounded=1;fillColor=#e8878E;gradientColor=#BD1421;strokeColor=#ffffff;",Image_iphone_thread_count:"shape=rect;rounded=1;"};EditorUi.prototype.pasteLucidChart=function(a,c,d,b){var f=this.editor.graph;f.getModel().beginUpdate();try{var h=function(a,b){var e=null!=b.Endpoint1.Block?
-p[b.Endpoint1.Block]:null,h=null!=b.Endpoint2.Block?p[b.Endpoint2.Block]:null,g=new mxCell("",new mxGeometry(0,0,100,100),"html=1;");g.geometry.relative=!0;g.edge=!0;v(g,a);var m=n(a).Properties,m=null!=m?m.TextAreas:a.TextAreas;if(null!=m)for(var l=0;null!=m["t"+l];){var m=m["t"+l],k=2*(parseFloat(m.Location)-.5),k=new mxCell(u(m),new mxGeometry(k,0,0,0),"text;html=1;resizable=0;align=center;verticalAlign=middle;labelBackgroundColor=#ffffff;");k.geometry.relative=!0;k.vertex=!0;g.insert(k);l++}null==
-e&&null!=b.Endpoint1&&g.geometry.setTerminalPoint(new mxPoint(Math.round(.6*b.Endpoint1.x+c),Math.round(.6*b.Endpoint1.y+d)),!0);null==h&&null!=b.Endpoint2&&g.geometry.setTerminalPoint(new mxPoint(Math.round(.6*b.Endpoint2.x+c),Math.round(.6*b.Endpoint2.y+d)),!1);q.push(f.addCell(g,null,null,e,h))},q=[],p={},k=[];if(null!=a.Blocks)for(var r in a.Blocks){var e=a.Blocks[r];e.id=r;p[e.id]=w(e);k.push(e)}else for(var g=0;g<a.Objects.length;g++)e=a.Objects[g],e.IsBlock&&null!=e.Action&&null!=e.Action.Properties&&
-(p[e.id]=w(e)),k.push(e);k.sort(function(a,b){a=n(a);b=n(b);return null!=a.Properties&&null!=b.Properties?a.Properties.ZOrder-b.Properties.ZOrder:0});for(g=0;g<k.length;g++){var e=k[g],l=p[e.id];null!=l?q.push(f.addCell(l)):e.IsLine&&null!=e.Action&&null!=e.Action.Properties&&h(e,e.Action.Properties)}if(null!=a.Lines)for(r in a.Lines)e=a.Lines[r],h(e,e);if(b&&null!=c&&null!=d){f.isGridEnabled()&&(c=f.snap(c),d=f.snap(d));var t=f.getBoundingBoxFromGeometry(q,!0);null!=t&&f.moveCells(q,c-t.x,d-t.y)}f.setSelectionCells(q)}finally{f.getModel().endUpdate()}f.isSelectionEmpty()||
+p[b.Endpoint1.Block]:null,h=null!=b.Endpoint2.Block?p[b.Endpoint2.Block]:null,g=new mxCell("",new mxGeometry(0,0,100,100),"html=1;");g.geometry.relative=!0;g.edge=!0;w(g,a);var m=n(a).Properties,m=null!=m?m.TextAreas:a.TextAreas;if(null!=m)for(var l=0;null!=m["t"+l];){var m=m["t"+l],k=2*(parseFloat(m.Location)-.5),k=new mxCell(u(m),new mxGeometry(k,0,0,0),"text;html=1;resizable=0;align=center;verticalAlign=middle;labelBackgroundColor=#ffffff;");k.geometry.relative=!0;k.vertex=!0;g.insert(k);l++}null==
+e&&null!=b.Endpoint1&&g.geometry.setTerminalPoint(new mxPoint(Math.round(.6*b.Endpoint1.x+c),Math.round(.6*b.Endpoint1.y+d)),!0);null==h&&null!=b.Endpoint2&&g.geometry.setTerminalPoint(new mxPoint(Math.round(.6*b.Endpoint2.x+c),Math.round(.6*b.Endpoint2.y+d)),!1);q.push(f.addCell(g,null,null,e,h))},q=[],p={},k=[];if(null!=a.Blocks)for(var r in a.Blocks){var e=a.Blocks[r];e.id=r;p[e.id]=x(e);k.push(e)}else for(var g=0;g<a.Objects.length;g++)e=a.Objects[g],e.IsBlock&&null!=e.Action&&null!=e.Action.Properties&&
+(p[e.id]=x(e)),k.push(e);k.sort(function(a,b){a=n(a);b=n(b);return null!=a.Properties&&null!=b.Properties?a.Properties.ZOrder-b.Properties.ZOrder:0});for(g=0;g<k.length;g++){var e=k[g],l=p[e.id];null!=l?q.push(f.addCell(l)):e.IsLine&&null!=e.Action&&null!=e.Action.Properties&&h(e,e.Action.Properties)}if(null!=a.Lines)for(r in a.Lines)e=a.Lines[r],h(e,e);if(b&&null!=c&&null!=d){f.isGridEnabled()&&(c=f.snap(c),d=f.snap(d));var t=f.getBoundingBoxFromGeometry(q,!0);null!=t&&f.moveCells(q,c-t.x,d-t.y)}f.setSelectionCells(q)}finally{f.getModel().endUpdate()}f.isSelectionEmpty()||
(f.scrollCellToVisible(f.getSelectionCell()),null!=this.hoverIcons&&this.hoverIcons.update(f.view.getState(f.getSelectionCell())))}})();
function VsdxExport(a){function c(b,f){var h={"[Content_Types].xml":"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><Types xmlns='http://schemas.openxmlformats.org/package/2006/content-types'><Default Extension='png' ContentType='image/png'/><Default Extension='jpg' ContentType='image/jpeg'/><Default Extension='jpeg' ContentType='image/jpeg'/><Default Extension='svg' ContentType='image/svg+xml'/><Default Extension='bmp' ContentType='image/bmp'/><Default Extension='gif' ContentType='image/gif'/><Default Extension='emf' ContentType='image/x-emf' /><Default Extension='rels' ContentType='application/vnd.openxmlformats-package.relationships+xml' /><Default Extension='xml' ContentType='application/xml' /><Override PartName='/docProps/app.xml' ContentType='application/vnd.openxmlformats-officedocument.extended-properties+xml' /><Override PartName='/docProps/core.xml' ContentType='application/vnd.openxmlformats-package.core-properties+xml' /><Override PartName='/docProps/custom.xml' ContentType='application/vnd.openxmlformats-officedocument.custom-properties+xml' /><Override PartName='/visio/document.xml' ContentType='application/vnd.ms-visio.drawing.main+xml' /><Override PartName='/visio/masters/masters.xml' ContentType='application/vnd.ms-visio.masters+xml' /><Override PartName='/visio/masters/master1.xml' ContentType='application/vnd.ms-visio.master+xml'/><Override PartName='/visio/pages/page1.xml' ContentType='application/vnd.ms-visio.page+xml' /><Override PartName='/visio/pages/pages.xml' ContentType='application/vnd.ms-visio.pages+xml' /><Override PartName='/visio/windows.xml' ContentType='application/vnd.ms-visio.windows+xml' /></Types>",
"_rels/.rels":"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><Relationships xmlns='http://schemas.openxmlformats.org/package/2006/relationships'><Relationship Id='rId1' Type='http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties' Target='docProps/core.xml' /><Relationship Id='rId2' Type='http://schemas.microsoft.com/visio/2010/relationships/document' Target='visio/document.xml' /><Relationship Id='rId3' Type='http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties' Target='docProps/custom.xml' /><Relationship Id='rId4' Type='http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties' Target='docProps/app.xml' /></Relationships>",
diff --git a/war/js/diagramly/Extensions.js b/war/js/diagramly/Extensions.js
index f4f2b1ce..498f3519 100644
--- a/war/js/diagramly/Extensions.js
+++ b/war/js/diagramly/Extensions.js
@@ -16,6 +16,8 @@
var labelStyle = 'text;html=1;resizable=0;align=center;verticalAlign=middle;labelBackgroundColor=#ffffff;';
var c = "fillColor=#036897;strokeColor=#ffffff;";
+ var s = "shape=mxgraph.";
+ var ss = "strokeColor=none;shape=mxgraph.";
// TODO: Add shape mappings
// FIXME: Factor our common strings, eg. shape=mxgraph. to save space
@@ -32,12 +34,12 @@
'TerminatorBlock': 'rounded=1;arcSize=50;',
'PredefinedProcessBlock': 'shape=process;rounded=1;arcSize=' + arcSize + ';',
'DocumentBlock': 'shape=document;',
- 'MultiDocumentBlock': 'shape=mxgraph.flowchart.multi-document;',
+ 'MultiDocumentBlock': s + 'flowchart.multi-document;',
'ManualInputBlock': 'shape=manualInput;size=15;rounded=1;arcSize=' + arcSize + ';',
'PreparationBlock': 'shape=hexagon;rounded=1;arcSize=' + arcSize + ';',
'DataBlockNew': 'shape=parallelogram;rounded=1;arcSize=' + arcSize + ';',
'DatabaseBlock': 'shape=cylinder;',
- 'DirectAccessStorageBlock': 'shape=mxgraph.flowchart.direct_data;',
+ 'DirectAccessStorageBlock': s + 'flowchart.direct_data;',
'InternalStorageBlock': 'shape=internalStorage;rounded=1;arcSize=' + arcSize + ';dx=10;dy=10;',
'PaperTapeBlock': 'shape=tape;size=0.2;',
'ManualOperationBlockNew': 'shape=trapezoid;rounded=1;arcSize=' + arcSize + ';flipV=1;',
@@ -45,12 +47,12 @@
'StoredDataBlock': 'shape=dataStorage;',
'MergeBlock': 'triangle;direction=south;rounded=1;arcSize=' + arcSize + ';',
'ConnectorBlock': 'ellipse;',
- 'OrBlock': 'shape=mxgraph.flowchart.summing_function;',
- 'SummingJunctionBlock': 'shape=mxgraph.flowchart.or;',
+ 'OrBlock': s + 'flowchart.summing_function;',
+ 'SummingJunctionBlock': s + 'flowchart.or;',
'DisplayBlock': 'shape=display;',
'OffPageLinkBlock': 'shape=offPageConnector;rounded=1;arcSize=' + arcSize + ';',
'BraceNoteBlock': 'shape=curlyBracket;rounded=1;', //EXT
- 'NoteBlock': 'shape=mxgraph.flowchart.annotation_1;',
+ 'NoteBlock': s + 'flowchart.annotation_1;',
//Containers
'AdvancedSwimLaneBlock': 'swimlane;rounded=1;arcSize=' + arcSize + ';', //EXT
'AdvancedSwimLaneBlockRotated': 'swimlane;horizontal=0;rounded=1;arcSize=' + arcSize + ';', //EXT
@@ -65,18 +67,18 @@
// 'BracketBlockRotated' NA
//Geometric shapes
'IsoscelesTriangleBlock': 'triangle;direction=north;',
- 'RightTriangleBlock': 'shape=mxgraph.basic.orthogonal_triangle;',
- 'PentagonBlock': 'shape=mxgraph.basic.pentagon;',
+ 'RightTriangleBlock': s + 'basic.orthogonal_triangle;',
+ 'PentagonBlock': s + 'basic.pentagon;',
'HexagonBlock': 'shape=hexagon;rounded=1;arcSize=' + arcSize + ';',
- 'OctagonBlock': 'shape=mxgraph.basic.octagon;',
+ 'OctagonBlock': s + 'basic.octagon;',
'CrossBlock': 'shape=cross;size=0.6;',
'CloudBlock': 'ellipse;shape=cloud;',
- 'HeartBlock': 'shape=mxgraph.basic.heart;',
+ 'HeartBlock': s + 'basic.heart;',
'RightArrowBlock': 'shape=singleArrow;arrowWidth=0.5;arrowSize=0.3;',
'DoubleArrowBlock': 'shape=doubleArrow;arrowWidth=0.5;arrowSize=0.3;',
- 'CalloutBlock': 'shape=mxgraph.basic.rectangular_callout;',
+ 'CalloutBlock': s + 'basic.rectangular_callout;',
'ShapeCircleBlock': 'ellipse;',
- 'ShapePolyStarBlock': 'shape=mxgraph.basic.star;',
+ 'ShapePolyStarBlock': s + 'basic.star;',
'ShapeDiamondBlock': 'rhombus;rounded=1;arcSize=' + arcSize + ';',
//Android Devices
// 'AndroidDevice' EXT
@@ -100,28 +102,28 @@
// 'AndroidToggle' EXT
// 'AndroidSlider' EXT
//Android Icons (not working properly, needs specific code)
- 'AndroidIconCheck': 'shape=mxgraph.ios7.misc.check;',
+ 'AndroidIconCheck': s + 'ios7.misc.check;',
// 'AndroidIconBack' NA
-// 'AndroidIconCancel' NA
- 'AndroidIconCollapse': 'shape=mxgraph.ios7.misc.up;',
- 'AndroidIconExpand': 'shape=mxgraph.ios7.misc.down;',
+ 'AndroidIconCancel' : s + 'atlassian.x;',
+ 'AndroidIconCollapse': s + 'ios7.misc.up;',
+ 'AndroidIconExpand': s + 'ios7.misc.down;',
// 'AndroidIconForward' NA
- 'AndroidIconNext': 'shape=mxgraph.ios7.misc.right;',
- 'AndroidIconPrevious': 'shape=mxgraph.ios7.misc.left;',
-// 'AndroidIconRefresh' NA
- 'AndroidIconInformation': 'shape=mxgraph.ios7.icons.info;',
+ 'AndroidIconNext': s + 'ios7.misc.right;',
+ 'AndroidIconPrevious': s + 'ios7.misc.left;',
+ 'AndroidIconRefresh' : + 'ios7.icons.repeat;',
+ 'AndroidIconInformation': s + 'ios7.icons.info;',
// 'AndroidIconHelp' NA
- 'AndroidIconSearch': 'shape=mxgraph.ios7.icons.looking_glass;',
- 'AndroidIconSettings': 'shape=mxgraph.ios7.icons.volume;direction=south;',
+ 'AndroidIconSearch': s + 'ios7.icons.looking_glass;',
+ 'AndroidIconSettings': s + 'ios7.icons.volume;direction=south;',
// 'AndroidIconDislike' NA
// 'AndroidIconLike' NA
// 'AndroidIconDelete' NA
// 'AndroidIconCopy' NA
// 'AndroidIconCut' NA
// 'AndroidIconPaste' NA
- 'AndroidIconTrash': 'shape=mxgraph.ios7.icons.trashcan;',
- 'AndroidIconEmail': 'shape=mxgraph.mockup.misc.mail2;',
- 'AndroidIconNew': 'shape=mxgraph.ios7.misc.flagged;',
+ 'AndroidIconTrash': s + 'ios7.icons.trashcan;',
+ 'AndroidIconEmail': s + 'mockup.misc.mail2;',
+ 'AndroidIconNew': s + 'ios7.misc.flagged;',
// 'AndroidIconImage' NA
// 'AndroidIconUndo' NA
// 'AndroidIconSharing' NA
@@ -169,7 +171,7 @@
// 'SMUpload' EXT
//UML Class Diagram
'UMLClassBlock': 'rounded=1;',
- 'UMLActiveClassBlock': 'shape=mxgraph.flowchart.predefined_process;',
+ 'UMLActiveClassBlock': s + 'flowchart.predefined_process;',
// 'UMLMultiplicityBlock' NA
'UMLPackageBlock': 'shape=folder;tabPosition=left;',
// 'UMLConstraintBlock' NA
@@ -181,30 +183,30 @@
'UMLCircleContainerBlock': 'shape=ellipse;container=1;',
'UMLRectangleContainerBlock': 'rounded=1;container=1;',
//UML State/Activity
- 'UMLOptionLoopBlock' : 'shape=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;',
+ 'UMLOptionLoopBlock' : s + 'sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;',
'UMLStartBlock' : 'shape=ellipse;fillColor=#000000;',
'UMLStateBlock' : 'shape=rect;rounded=1;',
'UMLDecisionBlock' : 'shape=rhombus;rounded=1;',
'UMLHForkJoinBlock' : 'shape=rect;rounded=1;fillColor=#000000;',
'UMLVForkJoinBlock' : 'shape=rect;rounded=1;fillColor=#000000;',
- 'UMLFlowFinalBlock' : 'shape=mxgraph.flowchart.or;',
+ 'UMLFlowFinalBlock' : s + 'flowchart.or;',
'UMLHistoryStateBlock' : 'shape=ellipse;',
- 'UMLEndBlock' : 'shape=mxgraph.bpmn.shape;outline=end;symbol=terminate;',
+ 'UMLEndBlock' : s + 'bpmn.shape;outline=end;symbol=terminate;',
'UMLObjectBlock' : 'shape=rect;rounded=1;',
- 'UMLSendSignalBlock' : 'shape=mxgraph.sysml.sendSigAct;',
- 'UMLReceiveSignalBlock' : 'shape=mxgraph.sysml.accEvent;',
- 'UMLAcceptTimeEventActionBlock' : 'shape=mxgraph.sysml.timeEvent;',
+ 'UMLSendSignalBlock' : s + 'sysml.sendSigAct;',
+ 'UMLReceiveSignalBlock' : s + 'sysml.accEvent;',
+ 'UMLAcceptTimeEventActionBlock' : s + 'sysml.timeEvent;',
// 'UMLInterruptingEdgeBlock' NA
- 'UMLOffPageLinkBlock' : 'shape=mxgraph.sysml.sendSigAct;direction=south;',
+ 'UMLOffPageLinkBlock' : s + 'sysml.sendSigAct;direction=south;',
// 'UMLExpansionNodeBlock' NA
// 'UMLMultiLanePoolBlock' EXT
// 'UMLMultiLanePoolRotatedBlock' EXT
// 'UMLMultidimensionalSwimlane' EXT
//UML Sequence
'UMLActivationBlock' : 'shape=rect;rounded=1;',
- 'UMLDeletionBlock' : 'shape=mxgraph.sysml.x;strokeWidth=4;',
+ 'UMLDeletionBlock' : s + 'sysml.x;strokeWidth=4;',
// 'UMLAlternativeBlock' NA
- 'UMLSeqEntityBlock' : 'shape=mxgraph.electrical.radio.microphone_1;direction=north;',
+ 'UMLSeqEntityBlock' : s + 'electrical.radio.microphone_1;direction=north;',
// 'UMLBoundaryBlock' NA
// 'UMLControlBlock'NA
//UML Component
@@ -239,7 +241,7 @@
// 'DFDExternalEntityBlock' NA
'DFDExternalEntityBlock2' : 'shape=rect;rounded=1;',
'YDMDFDProcessBlock' : 'shape=ellipse;',
- 'YDMDFDDataStoreBlock' : 'shape=mxgraph.bootstrap.horLines;',
+ 'YDMDFDDataStoreBlock' : s + 'bootstrap.horLines;',
'GSDFDProcessBlock' : 'shape=swimlane;rounded=1;',
'GSDFDProcessBlock2' : 'shape=rect;rounded=1;',
// 'GSDFDDataStoreBlock' NA
@@ -249,476 +251,607 @@
//Tables
// 'DefaultTableBlock' EXT
//Processes
- 'VSMCustomerSupplierBlock' : 'shape=mxgraph.lean_mapping.outside_sources;',
- 'VSMDedicatedProcessBlock' : 'shape=mxgraph.lean_mapping.manufacturing_process;',
- 'VSMSharedProcessBlock' : 'shape=mxgraph.lean_mapping.manufacturing_process_shared;',
- 'VSMWorkcellBlock' : 'shape=mxgraph.lean_mapping.work_cell;',
+ 'VSMCustomerSupplierBlock' : s + 'lean_mapping.outside_sources;',
+ 'VSMDedicatedProcessBlock' : s + 'lean_mapping.manufacturing_process;',
+ 'VSMSharedProcessBlock' : s + 'lean_mapping.manufacturing_process_shared;',
+ 'VSMWorkcellBlock' : s + 'lean_mapping.work_cell;',
// 'VSMDatacellBlock' EXT
//Materials
- 'VSMInventoryBlock' : 'shape=mxgraph.lean_mapping.inventory_box;',
+ 'VSMInventoryBlock' : s + 'lean_mapping.inventory_box;',
// 'VSMSupermarketBlock' EXT
- 'VSMPhysicalPullBlock' : 'shape=mxgraph.lean_mapping.physical_pull;direction=south;',
- 'VSMFIFOLaneBlock' : 'shape=mxgraph.lean_mapping.fifo_sequence_flow;fontStyle=0;fontSize=20',
+ 'VSMPhysicalPullBlock' : s + 'lean_mapping.physical_pull;direction=south;',
+ 'VSMFIFOLaneBlock' : s + 'lean_mapping.fifo_sequence_flow;fontStyle=0;fontSize=20',
// 'VSMSafetyBufferStockBlock' EXT
//Shipments
- 'VSMExternalShipmentAirplaneBlock' : 'shape=mxgraph.lean_mapping.airplane_7;',
- 'VSMExternalShipmentForkliftBlock' : 'shape=mxgraph.lean_mapping.move_by_forklift;',
- 'VSMExternalShipmentTruckBlock' : 'shape=mxgraph.lean_mapping.truck_shipment;',
- 'VSMExternalShipmentBoatBlock' : 'shape=mxgraph.lean_mapping.boat_shipment;',
+ 'VSMExternalShipmentAirplaneBlock' : s + 'lean_mapping.airplane_7;',
+ 'VSMExternalShipmentForkliftBlock' : s + 'lean_mapping.move_by_forklift;',
+ 'VSMExternalShipmentTruckBlock' : s + 'lean_mapping.truck_shipment;',
+ 'VSMExternalShipmentBoatBlock' : s + 'lean_mapping.boat_shipment;',
//Information
- 'VSMProductionControlBlock' : 'shape=mxgraph.lean_mapping.manufacturing_process;',
+ 'VSMProductionControlBlock' : s + 'lean_mapping.manufacturing_process;',
'VSMOtherInformationBlock' : 'shape=rect;rounded=1;',
// 'VSMHeijyunkaBoxBlock' NA
- 'VSMSequencedPullBallBlock' : 'shape=mxgraph.lean_mapping.sequenced_pull_ball;',
- 'VSMMRPERPBlock' : 'shape=mxgraph.lean_mapping.mrp_erp;whiteSpace=wrap;',
- 'VSMLoadLevelingBlock' : 'shape=mxgraph.lean_mapping.load_leveling;',
- 'VSMGoSeeBlock' : 'shape=mxgraph.lean_mapping.go_see_production_scheduling;flipH=1;',
+ 'VSMSequencedPullBallBlock' : s + 'lean_mapping.sequenced_pull_ball;',
+ 'VSMMRPERPBlock' : s + 'lean_mapping.mrp_erp;whiteSpace=wrap;',
+ 'VSMLoadLevelingBlock' : s + 'lean_mapping.load_leveling;',
+ 'VSMGoSeeBlock' : s + 'lean_mapping.go_see_production_scheduling;flipH=1;',
'VSMGoSeeProductionBlock' : 'shape=ellipse;',
- 'VSMVerbalInfoBlock' : 'shape=mxgraph.lean_mapping.verbal;',
+ 'VSMVerbalInfoBlock' : s + 'lean_mapping.verbal;',
//Value Stream Mapping
- 'VSMKaizenBurstBlock' : 'shape=mxgraph.lean_mapping.kaizen_lightening_burst;',
- 'VSMOperatorBlock' : 'shape=mxgraph.lean_mapping.operator;flipV=1;',
+ 'VSMKaizenBurstBlock' : s + 'lean_mapping.kaizen_lightening_burst;',
+ 'VSMOperatorBlock' : s + 'lean_mapping.operator;flipV=1;',
// 'VSMTimelineBlock' EXT
- 'VSMQualityProblemBlock' : 'shape=mxgraph.lean_mapping.quality_problem;',
+ 'VSMQualityProblemBlock' : s + 'lean_mapping.quality_problem;',
//Kanban
- 'VSMProductionKanbanSingleBlock' : 'shape=mxgraph.lean_mapping.production_kanban;',
+ 'VSMProductionKanbanSingleBlock' : s + 'lean_mapping.production_kanban;',
// 'VSMProductionKanbanBatchBlock' NA
- 'VSMWithdrawalKanbanBlock' : 'shape=mxgraph.lean_mapping.withdrawal_kanban;',
+ 'VSMWithdrawalKanbanBlock' : s + 'lean_mapping.withdrawal_kanban;',
// 'VSMWithdrawalKanbanBatchBlock' NA
- 'VSMSignalKanbanBlock' : 'shape=mxgraph.lean_mapping.signal_kanban;',
- 'VSMKanbanPostBlock' : 'shape=mxgraph.lean_mapping.kanban_post;',
+ 'VSMSignalKanbanBlock' : s + 'lean_mapping.signal_kanban;',
+ 'VSMKanbanPostBlock' : s + 'lean_mapping.kanban_post;',
//Arrows
'VSMShipmentArrow': 'shape=singleArrow;arrowWidth=0.5;arrowSize=0.13;',
- 'VSMPushArrow' : 'shape=mxgraph.lean_mapping.push_arrow;',
-// 'VSMElectronicInformationArrow' : 'shape=mxgraph.lean_mapping.electronic_info_flow_edge;', EXT
+ 'VSMPushArrow' : s + 'lean_mapping.push_arrow;',
+// 'VSMElectronicInformationArrow' : s + 'lean_mapping.electronic_info_flow_edge;', EXT
//EC2
- 'AWSElasticComputeCloudBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2;strokeColor=none;',
- 'AWSInstanceBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_instance;strokeColor=none;',
- 'AWSInstancesBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_instances;strokeColor=none;',
- 'AWSAMIBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_ami;strokeColor=none;',
- 'AWSDBonInstanceBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_db_on_instance;strokeColor=none;',
- 'AWSInstanceCloudWatchBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_cloudwatch;strokeColor=none;',
- 'AWSElasticIPBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_elastic_ip;strokeColor=none;',
- 'AWSElasticMapReduceBlock2' : 'shape=mxgraph.aws2.compute_and_networking.emr;strokeColor=none;',
- 'AWSClusterBlock2' : 'shape=mxgraph.aws2.compute_and_networking.emr_cluster;strokeColor=none;',
- 'AWSHDFSClusterBlock2' : 'shape=mxgraph.aws2.compute_and_networking.emr_hdfs_cluster;strokeColor=none;',
- 'AWSAutoScalingBlock2' : 'shape=mxgraph.aws2.compute_and_networking.auto_scaling;strokeColor=none;',
+ 'AWSElasticComputeCloudBlock2' : ss + 'aws3.ec2;',
+ 'AWSInstanceBlock2' : ss + 'aws3.instance;',
+ 'AWSInstancesBlock2' : ss + 'aws3.instances;',
+ 'AWSAMIBlock2' : ss + 'aws3.ami;',
+ 'AWSDBonInstanceBlock2' : ss + 'aws3.db_on_instance;',
+ 'AWSInstanceCloudWatchBlock2' : ss + 'aws3.instance_with_cloudwatch;',
+ 'AWSElasticIPBlock2' : ss + 'aws3.elastic_ip;',
+ 'AWSHDFSClusterBlock2' : ss + 'aws3.hdfs_cluster;',
+ 'AWSAutoScalingBlock2' : ss + 'aws3.auto_scaling;',
+ 'AWSEC2OptimizedInstance2' : ss + 'aws3.optimized_instance;',
+ 'AWSAmazonEC2(Spotinstance)' : ss + 'aws3.spot_instance;',
+ 'AWSAmazonECR' : ss + 'aws3.ecr;',
+ 'AWSAmazonECS' : ss + 'aws3.ecs;',
+ 'AWSLambda2' : ss + 'aws3.lambda;',
+ 'AWSElasticLoadBalancing' : ss + 'aws3.elastic_load_balancing;',
//Networking
- 'AWSElasticLoadBlock2' : 'shape=mxgraph.aws2.compute_and_networking.elastic_load_balancing;strokeColor=none;',
- 'AWSDirectConnectBlock3' : 'shape=mxgraph.aws2.compute_and_networking.aws_direct_connect;strokeColor=none;',
- 'AWSElasticNetworkBlock2' : 'shape=mxgraph.aws2.compute_and_networking.elastic_network_instance;strokeColor=none;',
- 'AWSRoute53Block2' : 'shape=mxgraph.aws2.compute_and_networking.route_53;strokeColor=none;',
- 'AWSHostedZoneBlock2' : 'shape=mxgraph.aws2.compute_and_networking.route_53_hosted_zone;strokeColor=none;',
- 'AWSRouteTableBlock2' : 'shape=mxgraph.aws2.compute_and_networking.route_53_route_table;strokeColor=none;',
- 'AWSVPCBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc;strokeColor=none;',
- 'AWSVPNConnectionBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc_vpn_connection;strokeColor=none;',
- 'AWSVPNGatewayBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc_vpn_gateway;strokeColor=none;',
- 'AWSCustomerGatewayBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc_customer_gateway;strokeColor=none;',
- 'AWSInternetGatewayBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc_internet_gateway;strokeColor=none;',
- 'AWSRouterBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc_router;strokeColor=none;',
+ 'AWSElasticLoadBlock2' : ss + 'aws3.classic_load_balancer;',
+ 'AWSDirectConnectBlock3' : ss + 'aws3.direct_connect;',
+ 'AWSElasticNetworkBlock2' : ss + 'aws3.elastic_network_interface;',
+ 'AWSRoute53Block2' : ss + 'aws3.route_53;',
+ 'AWSHostedZoneBlock2' : ss + 'aws3.hosted_zone;fontColor=#FFFFFF;fontStyle=1;',
+ 'AWSRouteTableBlock2' : ss + 'aws3.route_table;',
+ 'AWSVPCBlock2' : ss + 'aws3.vpc;',
+ 'AWSVPNConnectionBlock2' : ss + 'aws3.vpn_connection;',
+ 'AWSVPNGatewayBlock2' : ss + 'aws3.vpn_gateway;',
+ 'AWSCustomerGatewayBlock2' : ss + 'aws3.customer_gateway;',
+ 'AWSCustomerGatewayBlock3' : ss + 'aws3.customer_gateway;',
+ 'AWSInternetGatewayBlock2' : ss + 'aws3.internet_gateway;',
+ 'AWSRouterBlock2' : ss + 'aws3.router;',
+ 'AWSRouterBlock3' : ss + 'aws3.router;',
+ 'AWSAmazonVPC(endpoints)' : ss + 'aws3.endpoints;',
+ 'AWSAmazonVPC(flowlogs)' : ss + 'aws3.flow_logs;',
+ 'AWSAmazonVPC(VPCNATgateway)' : ss + 'aws3.vpc_nat_gateway;',
+ 'AWSVPCPeering3' : ss + 'aws3.vpc_peering;',
+
//S3
- 'AWSSimpleStorageBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.s3;strokeColor=none;',
- 'AWSBucketBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.s3_bucket;strokeColor=none;',
- 'AWSBuckethWithObjectsBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.s3_bucket_with_objects;strokeColor=none;',
- 'AWSObjectBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.s3_objects;strokeColor=none;',
- 'AWSImportExportBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.aws_import_export;strokeColor=none;',
- 'AWSStorageGatewayBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.aws_storage_gateway;strokeColor=none;',
- 'AWSElasticBlockStorageBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.ebs;strokeColor=none;',
- 'AWSVolumeBlock3' : 'shape=mxgraph.aws2.storage_and_content_delivery.ebs_volume;strokeColor=none;',
- 'AWSSnapshotBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.ebs_snapshot;strokeColor=none;',
- 'AWSGlacierBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.glacier;strokeColor=none;',
- 'AWSGlacierArchiveBlock3' : 'shape=mxgraph.aws2.storage_and_content_delivery.glacier_archive;strokeColor=none;',
- 'AWSGlacierVaultBlock3' : 'shape=mxgraph.aws2.storage_and_content_delivery.glacier_vault;strokeColor=none;',
+ 'AWSSimpleStorageBlock2' : ss + 'aws3.s3;',
+ 'AWSBucketBlock2' : ss + 'aws3.bucket;fontStyle=1;fontColor=#ffffff;',
+ 'AWSBuckethWithObjectsBlock2' : ss + 'aws3.bucket_with_objects;',
+ 'AWSObjectBlock2' : ss + 'aws3.object;fontStyle=1;fontColor=#ffffff;',
+ 'AWSImportExportBlock2' : ss + 'aws3.import_export;',
+ 'AWSStorageGatewayBlock2' : ss + 'aws3.storage_gateway;',
+ 'AWSElasticBlockStorageBlock2' : ss + 'aws3.volume;fontStyle=1;fontColor=#ffffff;',
+ 'AWSVolumeBlock3' : ss + 'aws3.volume;fontStyle=1;fontColor=#ffffff;',
+ 'AWSSnapshotBlock2' : ss + 'aws3.snapshot;fontStyle=1;fontColor=#ffffff;',
+ 'AWSGlacierArchiveBlock3' : ss + 'aws3.archive;',
+ 'AWSGlacierVaultBlock3' : ss + 'aws3.vault;',
+ 'AWSAmazonEFS' : ss + 'aws3.efs;',
+ 'AWSGlacierBlock2' : ss + 'aws3.glacier;',
+ 'AWSAWSImportExportSnowball' : ss + 'aws3.snowball;',
+ 'AWSStorageGatewayCachedVolumn2' : ss + 'aws3.cached_volume;',
+ 'AWSStorageGatewayNon-CachedVolumn2' : ss + 'aws3.non_cached_volume;',
+ 'AWSStorageGatewayVirtualTapeLibrary2' : ss + 'aws3.virtual_tape_library;',
//Content Delivery
- 'AWSCloudFrontBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.cloudfront;strokeColor=none;',
- 'AWSDownloadDistBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_download_distribution;strokeColor=none;',
- 'AWSStreamingBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_streaming_distribution;strokeColor=none;',
- 'AWSEdgeLocationBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_edge_location;strokeColor=none;',
+ 'AWSCloudFrontBlock2' : ss + 'aws3.cloudfront;',
+ 'AWSDownloadDistBlock2' : ss + 'aws3.download_distribution;',
+ 'AWSStreamingBlock2' : ss + 'aws3.streaming_distribution;',
+ 'AWSEdgeLocationBlock2' : ss + 'aws3.edge_location;',
//Database
- 'AWSItemBlock2' : 'shape=mxgraph.aws2.database.dynamodb_item;strokeColor=none;',
- 'AWSItemsBlock2' : 'shape=mxgraph.aws2.database.dynamodb_items;strokeColor=none;',
- 'AWSAttributeBlock2' : 'shape=mxgraph.aws2.database.dynamodb_attribute;strokeColor=none;',
- 'AWSAttributesBlock2' : 'shape=mxgraph.aws2.database.dynamodb_attributes;strokeColor=none;',
- 'AWSRDBSBlock2' : 'shape=mxgraph.aws2.database.rds;strokeColor=none;',
- 'AWSRDSInstanceBlock2' : 'shape=mxgraph.aws2.database.rds_db_instance;strokeColor=none;',
- 'AWSRDSStandbyBlock2' : 'shape=mxgraph.aws2.database.rds_instance_standby;strokeColor=none;',
- 'AWSRDSInstanceReadBlock2' : 'shape=mxgraph.aws2.database.rds_instance_read_replica;strokeColor=none;',
- 'AWSOracleDBBlock2' : 'shape=mxgraph.aws2.database.rds_oracle_db_instance;strokeColor=none;',
- 'AWSMySQLDBBlock2' : 'shape=mxgraph.aws2.database.rds_mysql_db_instance;strokeColor=none;',
- 'AWSMSSQLDBBlock3' : 'shape=mxgraph.aws2.database.rds_ms_sql_instance;strokeColor=none;',
- 'AWSDynamoDBBlock2' : 'shape=mxgraph.aws2.database.dynamodb;strokeColor=none;',
- 'AWSSimpleDatabaseBlock3' : 'shape=mxgraph.aws2.database.simpledb;strokeColor=none;',
- 'AWSSimpleDatabaseDomainBlock3' : 'shape=mxgraph.aws2.database.simpledb_domain;strokeColor=none;',
- 'AWSTableBlock2' : 'shape=mxgraph.aws2.database.dynamodb_table;strokeColor=none;',
- 'AWSAmazonRedShiftBlock3' : 'shape=mxgraph.aws2.database.redshift;strokeColor=none;',
- 'AWSElastiCacheNodeBlock2' : 'shape=mxgraph.aws2.database.elasticcache_node;strokeColor=none;',
- 'AWSElastiCacheBlock2' : 'shape=mxgraph.aws2.database.elasticcache;strokeColor=none;',
+ 'AWSItemBlock2' : ss + 'aws3.item;',
+ 'AWSItemsBlock2' : ss + 'aws3.items;',
+ 'AWSAttributeBlock2' : ss + 'aws3.attribute;',
+ 'AWSAttributesBlock2' : ss + 'aws3.attributes;',
+ 'AWSRDBSBlock2' : ss + 'aws3.rds;',
+ 'AWSRDSInstanceBlock2' : ss + 'aws3.rds_db_instance;',
+ 'AWSRDSStandbyBlock2' : ss + 'aws3.rds_db_instance_standby_multi_az;',
+ 'AWSRDSInstanceReadBlock2' : ss + 'aws3.rds_db_instance_read_replica;',
+ 'AWSOracleDBBlock2' : ss + 'aws3.oracle_db_instance;',
+ 'AWSMySQLDBBlock2' : ss + 'aws3.mysql_db_instance;',
+ 'AWSDynamoDBBlock2' : ss + 'aws3.dynamo_db;',
+ 'AWSSimpleDatabaseBlock3' : ss + 'aws2.database.simpledb;',
+ 'AWSSimpleDatabaseDomainBlock3' : ss + 'aws2.database.simpledb_domain;',
+ 'AWSTableBlock2' : ss + 'aws3.table;',
+ 'AWSAmazonRedShiftBlock3' : ss + 'aws3.redshift;',
+ 'AWSElastiCacheNodeBlock2' : ss + 'aws3.cache_node;',
+ 'AWSElastiCacheBlock2' : ss + 'aws3.elasticache;',
+ 'AWSDynamoDBGlobalSecondaryIndexes2' : ss + 'aws3.global_secondary_index;',
+ 'AWSAmazonElastiCacheMemcache2' : ss + 'aws3.memcached;',
+ 'AWSAmazonElastiCacheRedis2' : ss + 'aws3.redis;',
+ 'AWSAmazonRDSMSSQLInstance2' : ss + 'aws3.ms_sql_instance_2;',
+ 'AWSMSSQLDBBlock3' : ss + 'aws3.ms_sql_instance;',
+ 'AWSAmazonRDSMySQLDBInstance2' : ss + 'aws3.mysql_db_instance_2;',
+ 'AWSAmazonRDSOracleDBInstance2' : ss + 'aws3.oracle_db_instance_2;',
+ 'AWSRDSReplicasetswithPIOP2' : ss + 'aws3.piop;',
+ 'AWSAmazonRDSPostgreSQL2' : ss + 'aws3.postgre_sql_instance;',
+ 'AWSRDSMasterSQL2' : ss + 'aws3.sql_master;',
+ 'AWSRDSSlaveSQL2' : ss + 'aws3.sql_slave;',
+ 'AWSAmazonRedshift(densecomputenode)' : ss + 'aws3.dense_compute_node;',
+ 'AWSAmazonRedshift(densestoragenode)' : ss + 'aws3.dense_storage_node;',
+ 'AWSAWSDatabaseMigrationService' : ss + 'aws3.database_migration_service;',
+//Security Identity
+ 'AWSACM' : ss + 'aws3.certificate_manager;',
+ 'AWSAmazonInspector' : ss + 'aws3.inspector;',
+ 'AWSAWSCloudHSM' : ss + 'aws3.cloudhsm;',
+ 'AWSDirectoryService2' : ss + 'aws3.directory_service;',
+ 'AWSAWSKMS' : ss + 'aws3.kms;',
+ 'AWSAWSWAF' : ss + 'aws3.waf;',
+ 'AWSACM(certificate-manager)' : ss + 'aws3.certificate_manager_2;',
//App Services
- 'AWSSESBlock2' : 'shape=mxgraph.aws2.app_services.ses;strokeColor=none;',
- 'AWSEmailBlock2' : 'shape=mxgraph.aws2.app_services.email;strokeColor=none;',
- 'AWSSNSBlock2' : 'shape=mxgraph.aws2.app_services.sns;strokeColor=none;',
- 'AWSTopicBlock2' : 'shape=mxgraph.aws2.app_services.sns_topic;strokeColor=none;',
- 'AWSEmailNotificationBlock2' : 'shape=mxgraph.aws2.app_services.sns_email_notification;strokeColor=none;',
- 'AWSHTTPNotificationBlock2' : 'shape=mxgraph.aws2.app_services.sns_http_notification;strokeColor=none;',
- 'AWSSQSBlock3' : 'shape=mxgraph.aws2.app_services.sqs;strokeColor=none;',
- 'AWSQueueBlock2' : 'shape=mxgraph.aws2.app_services.sqs_queue;strokeColor=none;',
- 'AWSMessageBlock2' : 'shape=mxgraph.aws2.app_services.sqs_message;strokeColor=none;',
- 'AWSDeciderBlock2' : 'shape=mxgraph.aws2.app_services.swf_decider;strokeColor=none;',
- 'AWSSWFBlock2' : 'shape=mxgraph.aws2.app_services.swf;strokeColor=none;',
- 'AWSWorkerBlock2' : 'shape=mxgraph.aws2.app_services.swf_worker;strokeColor=none;',
- 'AWSCloudSearchBlock2' : 'shape=mxgraph.aws2.app_services.cloudsearch;strokeColor=none;',
- 'AWSCloudSearchMetadataBlock3' : 'shape=mxgraph.aws2.app_services.cloudsearch_sdf_metadata;strokeColor=none;',
- 'AWSElasticTranscoder3' : 'shape=mxgraph.aws2.app_services.elastic_transcoder;strokeColor=none;',
+ 'AWSSESBlock2' : ss + 'aws3.ses;',
+ 'AWSEmailBlock2' : ss + 'aws3.email;',
+ 'AWSSNSBlock2' : ss + 'aws3.sns;',
+ 'AWSSQSBlock3' : ss + 'aws3.sqs;',
+ 'AWSQueueBlock2' : ss + 'aws3.queue;',
+ 'AWSMessageBlock2' : ss + 'aws3.message;',
+ 'AWSDeciderBlock2' : ss + 'aws3.decider;',
+ 'AWSSWFBlock2' : ss + 'aws3.swf;',
+ 'AWSWorkerBlock2' : ss + 'aws3.worker;',
+ 'AWSCloudSearchBlock2' : ss + 'aws3.cloudsearch;',
+ 'AWSCloudSearchMetadataBlock3' : ss + 'aws3.search_documents;',
+ 'AWSElasticTranscoder3' : ss + 'aws3.elastic_transcoder;',
+ 'AWSAmazonAPIGateway' : ss + 'aws3.api_gateway;',
+ 'AWSAppStream2' : ss + 'aws3.appstream;',
//Deployment
- 'AWSCloudFormationBlock2' : 'shape=mxgraph.aws2.deployment_and_management.cloudformation;strokeColor=none;',
- 'AWSDataPipelineBlock3' : 'shape=mxgraph.aws2.deployment_and_management.data_pipeline;strokeColor=none;',
- 'AWSTemplageBlock2' : 'shape=mxgraph.aws2.deployment_and_management.cloudformation_template;strokeColor=none;',
- 'AWSStackBlock2' : 'shape=mxgraph.aws2.deployment_and_management.cloudformation_stack;strokeColor=none;',
- 'AWSBeanStockBlock2' : 'shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk;strokeColor=none;',
- 'AWSApplicationBlock2' : 'shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk_application;strokeColor=none;',
- 'AWSBeanstalkDeploymentBlock3' : 'shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk_deployment;strokeColor=none;',
- 'AWSIAMBlock3' : 'shape=mxgraph.aws2.deployment_and_management.iam;strokeColor=none;',
- 'AWSIAMSTSBlock3' : 'shape=mxgraph.aws2.deployment_and_management.iam_sts;strokeColor=none;',
- 'AWSIAMAddonBlock2' : 'shape=mxgraph.aws2.deployment_and_management.iam_add-on;strokeColor=none;',
- 'AWSCloudWatchBlock3' : 'shape=mxgraph.aws2.deployment_and_management.cloudwatch;strokeColor=none;',
- 'AWSCloudWatchAlarmBlock2' : 'shape=mxgraph.aws2.deployment_and_management.cloudwatch_alarm;strokeColor=none;',
- 'AWSOpsWorksBlock3' : 'shape=mxgraph.aws2.deployment_and_management.opsworks;strokeColor=none;',
+ 'AWSCloudFormationBlock2' : ss + 'aws3.cloudformation;',
+ 'AWSDataPipelineBlock3' : ss + 'aws3.data_pipeline;',
+ 'AWSDataPipelineBlock2' : ss + 'aws3.data_pipeline;',
+ 'AWSTemplageBlock2' : ss + 'aws3.template;',
+ 'AWSStackBlock2' : ss + 'aws3.stack_aws_cloudformation;',
+ 'AWSBeanStockBlock2' : ss + 'aws3.elastic_beanstalk;',
+ 'AWSApplicationBlock2' : ss + 'aws3.application;',
+ 'AWSBeanstalkDeploymentBlock3' : ss + 'aws3.deployment;',
+ 'AWSIAMBlock3' : ss + 'aws3.iam;',
+ 'AWSIAMSTSBlock3' : ss + 'aws3.sts;',
+ 'AWSIAMAddonBlock2' : ss + 'aws3.add_on;',
+ 'AWSCloudWatchBlock3' : ss + 'aws3.cloudwatch;',
+ 'AWSCloudWatchAlarmBlock2' : ss + 'aws3.alarm;',
+ 'AWSIAMSecurityTokenService2' : ss + 'aws3.sts_2;',
+ 'AWSIAMDataEncryptionKey2' : ss + 'aws3.data_encryption_key;',
+ 'AWSIAMEncryptedData2' : ss + 'aws3.encrypted_data;',
+ 'AWSAWSIAM(long-termsecuritycredential)' : ss + 'aws3.long_term_security_credential;',
+ 'AWSIAMMFAToken2' : ss + 'aws3.mfa_token;',
+ 'AWSIAMPermissions2' : ss + 'aws3.permissions_2;',
+ 'AWSIAMRoles2' : ss + 'aws3.role;',
+ 'AWSAWSIAM(temporarysecuritycredential)' : ss + 'aws3.long_term_security_credential;',
+ 'AWSCloudTrail2' : ss + 'aws3.cloudtrail;',
+ 'AWSConfig2' : ss + 'aws3.config;',
+ 'AWSOpsWorksBlock3' : ss + 'aws3.opsworks;',
+ 'AWSAWSServiceCatalog' : ss + 'aws3.service_catalog;',
+ 'AWSTrustedAdvisor2' : ss + 'aws3.trusted_advisor;',
+ 'AWSOpsWorksApps2' : ss + 'aws3.apps;',
+ 'AWSOpsWorksDeployments2' : ss + 'aws3.deployments;',
+ 'AWSOpsWorksInstances2' : ss + 'aws3.instances_2;',
+ 'AWSOpsWorksLayers2' : ss + 'aws3.layers;',
+ 'AWSOpsWorksMonitoring2' : ss + 'aws3.monitoring;',
+ 'AWSOpsWorksPermissions2' : ss + 'aws3.permissions;',
+ 'AWSOpsWorksResources2' : ss + 'aws3.resources;',
+ 'AWSOpsWorksStack2' : ss + 'aws3.stack_aws_opsworks;',
//On-Demand
- 'AWSMechanicalTurkBlock3' : 'shape=mxgraph.aws2.on-demand_workforce.mechanical_turk;strokeColor=none;',
- 'AWSHumanITBlock2' : 'shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_human_intelligence_tasks;strokeColor=none;',
- 'AWSAssignmentTaskBlock2' : 'shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_requester;strokeColor=none;',
- 'AWSWorkersBlock2' : 'shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_workers;strokeColor=none;',
- 'AWSRequesterBlock2' : 'shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_assignment_task;strokeColor=none;',
+ 'AWSMechanicalTurkBlock3' : ss + 'aws3.mechanical_turk;',
+ 'AWSHumanITBlock2' : ss + 'aws3.human_intelligence_tasks_hit;',
+ 'AWSAssignmentTaskBlock2' : ss + 'aws3.requester;',
+ 'AWSWorkersBlock2' : ss + 'aws3.users;',
+ 'AWSRequesterBlock2' : ss + 'aws3.assignment_task;',
//SDKs
- 'AWSAndroidBlock3': 'shape=mxgraph.aws2.sdks.android;',
- 'AWSiOSBlock3' : 'shape=mxgraph.aws2.sdks.ios;',
- 'AWSJavaBlock3' : 'shape=mxgraph.aws2.sdks.java;',
- 'AWSNetBlock3' : 'shape=mxgraph.aws2.sdks.net;',
- 'AWSNodeJSBlock3' : 'shape=mxgraph.aws2.sdks.nodejs;',
- 'AWSPHPBlock3' : 'shape=mxgraph.aws2.sdks.php;',
- 'AWSPythonBlock3' : 'shape=mxgraph.aws2.sdks.python;',
- 'AWSRubyBlock3' : 'shape=mxgraph.aws2.sdks.ruby;',
- 'AWSCLIBlock3' : 'shape=mxgraph.aws2.sdks.cli;',
- 'AWSEclipseToolkitBlock3' : 'shape=mxgraph.aws2.sdks.aws_toolkit_for_eclipse;',
- 'AWSVisualStudioToolkitBlock3' : 'shape=mxgraph.aws2.sdks.aws_toolkit_for_visual_studio;',
- 'AWSWindowsPowershellToolkitBlock3' : 'shape=mxgraph.aws2.sdks.tools_for_windows_powershell;',
-//AWS Other
- 'AWSCloudBlock2' : 'shape=mxgraph.aws2.non-service_specific.cloud;strokeColor=none;',
- 'AWSVPCloudBlock3' : 'shape=mxgraph.aws2.non-service_specific.virtual_private_cloud;strokeColor=none;',
- 'AWSUserBlock2' : 'shape=mxgraph.aws2.non-service_specific.user;strokeColor=none;',
- 'AWSUsersBlock2' : 'shape=mxgraph.aws2.non-service_specific.users;strokeColor=none;',
- 'AWSClientBlock2' : 'shape=mxgraph.aws2.non-service_specific.client;strokeColor=none;',
- 'AWSMobileClientBlock2' : 'shape=mxgraph.aws2.non-service_specific.mobile_client;strokeColor=none;',
- 'AWSGenericDatabaseBlock3' : 'shape=mxgraph.aws2.non-service_specific.generic_database;strokeColor=none;',
- 'AWSDiskBlock3' : 'shape=mxgraph.aws2.non-service_specific.disk;strokeColor=none;',
- 'AWSTapeStorageBlock3' : 'shape=mxgraph.aws2.non-service_specific.tape_storage;strokeColor=none;',
- 'AWSMediaBlock2' : 'shape=mxgraph.aws2.non-service_specific.multimedia;strokeColor=none;',
- 'AWSDataCenterBlock2' : 'shape=mxgraph.aws2.non-service_specific.corporate_data_center;strokeColor=none;',
- 'AWSServerBlock2' : 'shape=mxgraph.aws2.non-service_specific.traditional_server;strokeColor=none;',
- 'AWSInternetBlock2' : 'shape=mxgraph.aws2.non-service_specific.internet;strokeColor=none;',
- 'AWSForumsBlock3' : 'shape=mxgraph.aws2.non-service_specific.forums;strokeColor=none;',
- 'AWSManagementBlock2' : 'shape=mxgraph.aws2.non-service_specific.management_console;strokeColor=none;',
+ 'AWSAndroidBlock3': ss + 'aws3.android;fillColor=#96BF3D;',
+ 'AWSiOSBlock3' : ss + 'aws3.android;fillColor=#CFCFCF;',
+ 'AWSJavaBlock3' : ss + 'aws3.android;fillColor=#EE472A;',
+ 'AWSJavaScript' : ss + 'aws3.android;fillColor=#205E00;',
+ 'AWSNetBlock3' : ss + 'aws3.android;fillColor=#115193;',
+ 'AWSNodeJSBlock3' : ss + 'aws3.android;fillColor=#8CC64F;',
+ 'AWSPHPBlock3' : ss + 'aws3.android;fillColor=#5A69A4;',
+ 'AWSPythonBlock3' : ss + 'aws3.android;fillColor=#FFD44F;',
+ 'AWSRubyBlock3' : ss + 'aws3.android;fillColor=#AE1F23;',
+ 'AWSXamarin' : ss + 'aws3.android;fillColor=#4090D7;',
+ 'AWSCLIBlock3' : ss + 'aws3.cli;fillColor=#444444;',
+ 'AWSEclipseToolkitBlock3' : ss + 'aws3.toolkit_for_eclipse;fillColor=#342074;',
+ 'AWSVisualStudioToolkitBlock3' : ss + 'aws3.toolkit_for_visual_studio;fillColor=#53B1CB;',
+ 'AWSWindowsPowershellToolkitBlock3' : ss + 'aws3.toolkit_for_windows_powershell;fillColor=#737373;',
+//Analytics
+ 'AWSAmazonElasticsearchService' : ss + 'aws3.elasticsearch_service;',
+ 'AWSElasticMapReduceBlock2' : ss + 'aws3.emr;',
+ 'AWSClusterBlock2' : ss + 'aws3.emr_cluster;',
+ 'AWSEMREngine2' : ss + 'aws3.emr_engine;',
+ 'AWSEMRMapRM3Engine2' : ss + 'aws3.emr_engine_mapr_m3;',
+ 'AWSEMRMapRM5Engine2' : ss + 'aws3.emr_engine_mapr_m5;',
+ 'AWSEMRMapRM7Engine2' : ss + 'aws3.emr_engine_mapr_m7;',
+ 'AWSKinesis2' : ss + 'aws3.kinesis;',
+ 'AWSAmazonKinesis(AmazonKinesisAnalytics)' : ss + 'aws3.kinesis;',
+ 'AWSKinesisEnabledApp2' : ss + 'aws3.kinesis_enabled_app;',
+ 'AWSAmazonKinesis(AmazonKinesisFirehose)' : ss + 'aws3.kinesis_firehose;',
+ 'AWSAmazonKinesis(AmazonKinesisStreams)' : ss + 'aws3.kinesis_streams;',
+ 'AWSAmazonMachineLearning' : ss + 'aws3.machine_learning;',
+ 'AWSAmazonQuickSight' : ss + 'aws3.quicksight;',
+//Mobile Services
+ 'AWSCognito2' : ss + 'aws3.cognito;',
+ 'AWSMobileAnalytics2' : ss + 'aws3.mobile_analytics;',
+ 'AWSAWSDeviceFarm' : ss + 'aws3.device_farm;',
+ 'AWSAWSMobileHub' : ss + 'aws3.mobile_hub;gradientColor=#AD688A;gradientDirection=east;',
+ 'AWSTopicBlock2' : ss + 'aws3.topic_2;fontStyle=1;fontColor=#ffffff;verticalAlign=top;spacingTop=-5;',
+ 'AWSEmailNotificationBlock2' : ss + 'aws3.email_notification;',
+ 'AWSHTTPNotificationBlock2' : ss + 'aws3.http_notification;',
+//Developer Tools
+ 'AWSAWSCodeCommit' : ss + 'aws3.codecommit;',
+ 'AWSCodeDeploy2' : ss + 'aws3.codedeploy;',
+ 'AWSAWSCodePipeline' : ss + 'aws3.codepipeline;',
+//Enterprise Application
+ 'AWSWorkDocs2' : ss + 'aws3.workdocs;',
+ 'AWSAmazonWorkMail' : ss + 'aws3.workmail;',
+ 'AWSAmazonWorkSpaces2' : ss + 'aws3.workspaces;',
+//Internet of Things
+ 'AWSAWSIoT' : ss + 'aws3.aws_iot;',
+ 'AWSAWSIoT(action)' : ss + 'aws3.action;',
+ 'AWSAWSIoT(actuator)' : ss + 'aws3.actuator;',
+ 'AWSAWSIoT(certificate)' : ss + 'aws3.certificate;',
+ 'AWSAWSIoT(desiredstate)' : ss + 'aws3.desired_state;',
+ 'AWSAWSIoT(hardwareboard)' : ss + 'aws3.hardware_board;',
+ 'AWSAWSIoT(HTTP2protocol)' : ss + 'aws3.http_2_protocol;',
+ 'AWSAWSIoT(HTTPprotocol)' : ss + 'aws3.http_protocol;',
+ 'AWSAWSIoT(MQTTprotocol)' : ss + 'aws3.mqtt_protocol;',
+ 'AWSAWSIoT(policy)' : ss + 'aws3.policy;',
+ 'AWSAWSIoT(reportedstate)' : ss + 'aws3.reported_state;',
+ 'AWSAWSIoT(rule)' : ss + 'aws3.rule;',
+ 'AWSAWSIoT(sensor)' : ss + 'aws3.sensor;',
+ 'AWSAWSIoT(servo)' : ss + 'aws3.servo;',
+ 'AWSAWSIoT(shadow)' : ss + 'aws3.shadow;',
+ 'AWSAWSIoT(simulator)' : ss + 'aws3.simulator;',
+ 'AWSAWSIoT(thingbank)' : ss + 'aws3.bank;',
+ 'AWSAWSIoT(thingbicycle)' : ss + 'aws3.bicycle;',
+ 'AWSAWSIoT(thingcamera)' : ss + 'aws3.camera;',
+ 'AWSAWSIoT(thingcar)' : ss + 'aws3.car;',
+ 'AWSAWSIoT(thingcart)' : ss + 'aws3.cart;',
+ 'AWSAWSIoT(thingcoffeepot)' : ss + 'aws3.coffee_pot;',
+ 'AWSAWSIoT(thingdoorlock)' : ss + 'aws3.door_lock;',
+ 'AWSAWSIoT(thingfactory)' : ss + 'aws3.factory;',
+ 'AWSAWSIoT(thinggeneric)' : ss + 'aws3.generic;',
+ 'AWSAWSIoT(thinghouse)' : ss + 'aws3.house;',
+ 'AWSAWSIoT(thinglightbulb)' : ss + 'aws3.lightbulb;',
+ 'AWSAWSIoT(thingmedicalemergency)' : ss + 'aws3.medical_emergency;',
+ 'AWSAWSIoT(thingpoliceemergency)' : ss + 'aws3.police_emergency;',
+ 'AWSAWSIoT(thingthermostat)' : ss + 'aws3.thermostat;',
+ 'AWSAWSIoT(thingtravel)' : ss + 'aws3.travel;',
+ 'AWSAWSIoT(thingutility)' : ss + 'aws3.utility;',
+ 'AWSAWSIoT(thingwindfarm)' : ss + 'aws3.windfarm;',
+ 'AWSAWSIoT(topic)' : ss + 'aws3.topic;',
+
+//AWS General
+ 'AWSCloudBlock2' : ss + 'aws3.cloud;',
+ 'AWSVPCloudBlock3' : ss + 'aws3.virtual_private_cloud;',
+ 'AWSUserBlock2' : ss + 'aws3.user;',
+ 'AWSUsersBlock2' : ss + 'aws3.users;',
+ 'AWSClientBlock2' : ss + 'aws3.management_console;',
+ 'AWSMobileClientBlock2' : ss + 'aws3.mobile_client;',
+ 'AWSGenericDatabaseBlock3' : ss + 'aws3.generic_database;',
+ 'AWSDiskBlock3' : ss + 'aws3.disk;',
+ 'AWSTapeStorageBlock3' : ss + 'aws3.tape_storage;',
+ 'AWSMediaBlock2' : ss + 'aws3.multimedia;',
+ 'AWSDataCenterBlock2' : ss + 'aws3.corporate_data_center;',
+ 'AWSServerBlock2' : ss + 'aws3.traditional_server;',
+ 'AWSInternetBlock2' : ss + 'aws2.non-service_specific.internet;',
+ 'AWSForumsBlock3' : ss + 'aws3.forums;',
+ 'AWSManagementBlock2' : ss + 'aws3.management_console;',
+ 'AWSAmazonElasticCacheNode2' : ss + 'aws3.cache_node;',
+ 'AWSAmazonRedshiftDW1Cluster2' : ss + 'aws3.dense_compute_node;',
+ 'AWSAmazonRedshiftDW2Cluster2' : ss + 'aws3.dense_storage_node;',
+ 'AWSAmazonRedshiftSSDFamilyCluster2' : ss + 'aws3.dense_storage_node;',
+ 'AWSAmazonRoute53RouteTable2' : ss + 'aws3.route_table;',
// 'AWSExampleIAMBlock2' NA
-// 'AWSSubnetBlock2' NA
+ 'AWSSubnetBlock2' : ss + 'aws3.permissions;',
//AWS Containers
// 'AWSRoundedRectangleContainerBlock2' EXT
//Cisco Basic
- 'Cisco_cisco_androgenous_person' : 'shape=mxgraph.cisco.people.androgenous_person;' + c,
- 'Cisco_cisco_atm_switch' : 'shape=mxgraph.cisco.switches.atm_switch;' + c,
- 'Cisco_cisco_cloud' : 'shape=mxgraph.cisco.storage.cloud;strokeColor=#036897;fillColor=#ffffff;',
- 'Cisco_cisco_fileserver' : 'shape=mxgraph.cisco.servers.fileserver;' + c,
- 'Cisco_cisco_firewall' : 'shape=mxgraph.cisco.security.firewall;' + c,
- 'Cisco_cisco_generic_building' : 'shape=mxgraph.cisco.buildings.generic_building;' + c,
- 'Cisco_cisco_laptop' : 'shape=mxgraph.cisco.computers_and_peripherals.laptop;' + c,
- 'Cisco_cisco_lock' : 'shape=mxgraph.cisco.security.lock;' + c,
- 'Cisco_cisco_microwebserver' : 'shape=mxgraph.cisco.servers.microwebserver;' + c,
- 'Cisco_cisco_pc' : 'shape=mxgraph.cisco.computers_and_peripherals.pc;' + c,
- 'Cisco_cisco_pda' : 'shape=mxgraph.cisco.misc.pda;' + c,
- 'Cisco_cisco_phone' : 'shape=mxgraph.cisco.modems_and_phones.hootphone;' + c,
- 'Cisco_cisco_printer' : 'shape=mxgraph.cisco.computers_and_peripherals.printer;' + c,
- 'Cisco_cisco_relational_database' : 'shape=mxgraph.cisco.storage.relational_database;' + c,
- 'Cisco_cisco_router' : 'shape=mxgraph.cisco.routers.router;' + c,
- 'Cisco_cisco_standing_man' : 'shape=mxgraph.cisco.people.standing_man;' + c,
- 'Cisco_cisco_standing_woman' : 'shape=mxgraph.cisco.people.standing_woman;' + c,
- 'Cisco_cisco_ups' : 'shape=mxgraph.cisco.misc.ups;' + c,
- 'Cisco_cisco_wireless_router' : 'shape=mxgraph.cisco.routers.wireless_router;' + c,
+ 'Cisco_cisco_androgenous_person' : s + 'cisco.people.androgenous_person;' + c,
+ 'Cisco_cisco_atm_switch' : s + 'cisco.switches.atm_switch;' + c,
+ 'Cisco_cisco_cloud' : s + 'cisco.storage.cloud;strokeColor=#036897;fillColor=#ffffff;',
+ 'Cisco_cisco_fileserver' : s + 'cisco.servers.fileserver;' + c,
+ 'Cisco_cisco_firewall' : s + 'cisco.security.firewall;' + c,
+ 'Cisco_cisco_generic_building' : s + 'cisco.buildings.generic_building;' + c,
+ 'Cisco_cisco_laptop' : s + 'cisco.computers_and_peripherals.laptop;' + c,
+ 'Cisco_cisco_lock' : s + 'cisco.security.lock;' + c,
+ 'Cisco_cisco_microwebserver' : s + 'cisco.servers.microwebserver;' + c,
+ 'Cisco_cisco_pc' : s + 'cisco.computers_and_peripherals.pc;' + c,
+ 'Cisco_cisco_pda' : s + 'cisco.misc.pda;' + c,
+ 'Cisco_cisco_phone' : s + 'cisco.modems_and_phones.hootphone;' + c,
+ 'Cisco_cisco_printer' : s + 'cisco.computers_and_peripherals.printer;' + c,
+ 'Cisco_cisco_relational_database' : s + 'cisco.storage.relational_database;' + c,
+ 'Cisco_cisco_router' : s + 'cisco.routers.router;' + c,
+ 'Cisco_cisco_standing_man' : s + 'cisco.people.standing_man;' + c,
+ 'Cisco_cisco_standing_woman' : s + 'cisco.people.standing_woman;' + c,
+ 'Cisco_cisco_ups' : s + 'cisco.misc.ups;' + c,
+ 'Cisco_cisco_wireless_router' : s + 'cisco.routers.wireless_router;' + c,
//Cisco Extended
- 'Cisco_cisco_100baset_hub' : 'shape=mxgraph.cisco.hubs_and_gateways.100baset_hub;' + c,
- 'Cisco_cisco_10700' : 'shape=mxgraph.cisco.routers.10700;' + c,
- 'Cisco_cisco_10GE_FCoE' : 'shape=mxgraph.cisco.controllers_and_modules.10ge_fcoe;' + c,
- 'Cisco_cisco_15200' : 'shape=mxgraph.cisco.misc.15200;' + c,
- 'Cisco_cisco_3174__desktop_' : 'shape=mxgraph.cisco.controllers_and_modules.3174_(desktop)_cluster_controller;' + c,
- 'Cisco_cisco_3200_mobile_access_router' : 'shape=mxgraph.cisco.routers.mobile_access_router;' + c,
- 'Cisco_cisco_3x74__floor_' : 'shape=mxgraph.cisco.controllers_and_modules.3x74_(floor)_cluster_controller;' + c,
- 'Cisco_cisco_6700_series' : 'shape=mxgraph.cisco.misc.6700_series;' + c,
- 'Cisco_cisco_7500ars__7513_' : 'shape=mxgraph.cisco.misc.7500ars_(7513);' + c,
+ 'Cisco_cisco_100baset_hub' : s + 'cisco.hubs_and_gateways.100baset_hub;' + c,
+ 'Cisco_cisco_10700' : s + 'cisco.routers.10700;' + c,
+ 'Cisco_cisco_10GE_FCoE' : s + 'cisco.controllers_and_modules.10ge_fcoe;' + c,
+ 'Cisco_cisco_15200' : s + 'cisco.misc.15200;' + c,
+ 'Cisco_cisco_3174__desktop_' : s + 'cisco.controllers_and_modules.3174_(desktop)_cluster_controller;' + c,
+ 'Cisco_cisco_3200_mobile_access_router' : s + 'cisco.routers.mobile_access_router;' + c,
+ 'Cisco_cisco_3x74__floor_' : s + 'cisco.controllers_and_modules.3x74_(floor)_cluster_controller;' + c,
+ 'Cisco_cisco_6700_series' : s + 'cisco.misc.6700_series;' + c,
+ 'Cisco_cisco_7500ars__7513_' : s + 'cisco.misc.7500ars_(7513);' + c,
// 'Cisco_cisco_access_gateway' NA
- 'Cisco_cisco_accesspoint' : 'shape=mxgraph.cisco.misc.access_point;' + c,
- 'Cisco_cisco_ace' : 'shape=mxgraph.cisco.misc.ace;' + c,
- 'Cisco_cisco_ACS' : 'shape=mxgraph.cisco.misc.acs;' + c,
- 'Cisco_cisco_adm' : 'shape=mxgraph.cisco.misc.adm;' + c,
- 'Cisco_cisco_antenna' : 'shape=mxgraph.cisco.wireless.antenna;' + c,
- 'Cisco_cisco_asic_processor' : 'shape=mxgraph.cisco.misc.asic_processor;' + c,
- 'Cisco_cisco_ASR_1000_Series' : 'shape=mxgraph.cisco.misc.asr_1000_series;' + c,
- 'Cisco_cisco_ata' : 'shape=mxgraph.cisco.misc.ata;' + c,
- 'Cisco_cisco_atm_3800' : 'shape=mxgraph.cisco.misc.atm_3800;' + c,
- 'Cisco_cisco_atm_fast_gigabit_etherswitch' : 'shape=mxgraph.cisco.switches.atm_fast_gigabit_etherswitch;' + c,
- 'Cisco_cisco_atm_router' : 'shape=mxgraph.cisco.routers.atm_router;' + c,
- 'Cisco_cisco_atm_tag_switch_router' : 'shape=mxgraph.cisco.routers.atm_tag_switch_router;' + c,
- 'Cisco_cisco_avs' : 'shape=mxgraph.cisco.misc.avs;' + c,
- 'Cisco_cisco_AXP' : 'shape=mxgraph.cisco.misc.axp;' + c,
+ 'Cisco_cisco_accesspoint' : s + 'cisco.misc.access_point;' + c,
+ 'Cisco_cisco_ace' : s + 'cisco.misc.ace;' + c,
+ 'Cisco_cisco_ACS' : s + 'cisco.misc.acs;' + c,
+ 'Cisco_cisco_adm' : s + 'cisco.misc.adm;' + c,
+ 'Cisco_cisco_antenna' : s + 'cisco.wireless.antenna;' + c,
+ 'Cisco_cisco_asic_processor' : s + 'cisco.misc.asic_processor;' + c,
+ 'Cisco_cisco_ASR_1000_Series' : s + 'cisco.misc.asr_1000_series;' + c,
+ 'Cisco_cisco_ata' : s + 'cisco.misc.ata;' + c,
+ 'Cisco_cisco_atm_3800' : s + 'cisco.misc.atm_3800;' + c,
+ 'Cisco_cisco_atm_fast_gigabit_etherswitch' : s + 'cisco.switches.atm_fast_gigabit_etherswitch;' + c,
+ 'Cisco_cisco_atm_router' : s + 'cisco.routers.atm_router;' + c,
+ 'Cisco_cisco_atm_tag_switch_router' : s + 'cisco.routers.atm_tag_switch_router;' + c,
+ 'Cisco_cisco_avs' : s + 'cisco.misc.avs;' + c,
+ 'Cisco_cisco_AXP' : s + 'cisco.misc.axp;' + c,
// 'Cisco_cisco_bbfw_media' NA
// 'Cisco_cisco_bbfw' NA
- 'Cisco_cisco_bbsm' : 'shape=mxgraph.cisco.misc.bbsm;' + c,
- 'Cisco_cisco_branch_office' : 'shape=mxgraph.cisco.buildings.branch_office;' + c,
- 'Cisco_cisco_breakout_box' : 'shape=mxgraph.cisco.misc.breakout_box;' + c,
- 'Cisco_cisco_bridge' : 'shape=mxgraph.cisco.misc.bridge;' + c,
- 'Cisco_cisco_broadband_router' : 'shape=mxgraph.cisco.routers.broadcast_router;' + c,
- 'Cisco_cisco_bts_10200' : 'shape=mxgraph.cisco.misc.bts_10200;' + c,
- 'Cisco_cisco_cable_modem' : 'shape=mxgraph.cisco.modems_and_phones.cable_modem;' + c,
- 'Cisco_cisco_callmanager' : 'shape=mxgraph.cisco.misc.call_manager;' + c,
- 'Cisco_cisco_car' : 'shape=mxgraph.cisco.misc.car;' + c,
- 'Cisco_cisco_carrier_routing_system' : 'shape=mxgraph.cisco.misc.carrier_routing_system;' + c,
- 'Cisco_cisco_cddi_fddi' : 'shape=mxgraph.cisco.misc.cddi_fddi;' + c,
- 'Cisco_cisco_cdm' : 'shape=mxgraph.cisco.misc.cdm;' + c,
- 'Cisco_cisco_cellular_phone' : 'shape=mxgraph.cisco.modems_and_phones.cell_phone;' + c,
- 'Cisco_cisco_centri_firewall' : 'shape=mxgraph.cisco.security.centri_firewall;' + c,
- 'Cisco_cisco_cisco_1000' : 'shape=mxgraph.cisco.misc.cisco_1000;' + c,
- 'Cisco_cisco_cisco_asa_5500' : 'shape=mxgraph.cisco.misc.asa_5500;' + c,
- 'Cisco_cisco_cisco_ca' : 'shape=mxgraph.cisco.misc.cisco_ca;' + c,
- 'Cisco_cisco_cisco_file_engine' : 'shape=mxgraph.cisco.storage.cisco_file_engine;' + c,
- 'Cisco_cisco_cisco_hub' : 'shape=mxgraph.cisco.hubs_and_gateways.cisco_hub;' + c,
- 'Cisco_cisco_ciscosecurity' : 'shape=mxgraph.cisco.security.cisco_security;' + c,
+ 'Cisco_cisco_bbsm' : s + 'cisco.misc.bbsm;' + c,
+ 'Cisco_cisco_branch_office' : s + 'cisco.buildings.branch_office;' + c,
+ 'Cisco_cisco_breakout_box' : s + 'cisco.misc.breakout_box;' + c,
+ 'Cisco_cisco_bridge' : s + 'cisco.misc.bridge;' + c,
+ 'Cisco_cisco_broadband_router' : s + 'cisco.routers.broadcast_router;' + c,
+ 'Cisco_cisco_bts_10200' : s + 'cisco.misc.bts_10200;' + c,
+ 'Cisco_cisco_cable_modem' : s + 'cisco.modems_and_phones.cable_modem;' + c,
+ 'Cisco_cisco_callmanager' : s + 'cisco.misc.call_manager;' + c,
+ 'Cisco_cisco_car' : s + 'cisco.misc.car;' + c,
+ 'Cisco_cisco_carrier_routing_system' : s + 'cisco.misc.carrier_routing_system;' + c,
+ 'Cisco_cisco_cddi_fddi' : s + 'cisco.misc.cddi_fddi;' + c,
+ 'Cisco_cisco_cdm' : s + 'cisco.misc.cdm;' + c,
+ 'Cisco_cisco_cellular_phone' : s + 'cisco.modems_and_phones.cell_phone;' + c,
+ 'Cisco_cisco_centri_firewall' : s + 'cisco.security.centri_firewall;' + c,
+ 'Cisco_cisco_cisco_1000' : s + 'cisco.misc.cisco_1000;' + c,
+ 'Cisco_cisco_cisco_asa_5500' : s + 'cisco.misc.asa_5500;' + c,
+ 'Cisco_cisco_cisco_ca' : s + 'cisco.misc.cisco_ca;' + c,
+ 'Cisco_cisco_cisco_file_engine' : s + 'cisco.storage.cisco_file_engine;' + c,
+ 'Cisco_cisco_cisco_hub' : s + 'cisco.hubs_and_gateways.cisco_hub;' + c,
+ 'Cisco_cisco_ciscosecurity' : s + 'cisco.security.cisco_security;' + c,
// 'Cisco_cisco_Cisco_telepresence_manager' NA
- 'Cisco_cisco_cisco_unified_presence_server' : 'shape=mxgraph.cisco.servers.cisco_unified_presence_server;' + c,
- 'Cisco_cisco_cisco_unityexpress' : 'shape=mxgraph.cisco.misc.cisco_unity_express;' + c,
- 'Cisco_cisco_ciscoworks' : 'shape=mxgraph.cisco.misc.cisco_works;' + c,
- 'Cisco_cisco_class_4_5_switch' : 'shape=mxgraph.cisco.switches.class_4_5_switch;' + c,
- 'Cisco_cisco_communications_server' : 'shape=mxgraph.cisco.servers.communications_server;' + c,
- 'Cisco_cisco_contact_center' : 'shape=mxgraph.cisco.misc.contact_center;' + c,
- 'Cisco_cisco_content_engine__cache_director_' : 'shape=mxgraph.cisco.directors.content_engine_(cache_director);' + c,
- 'Cisco_cisco_content_service_router' : 'shape=mxgraph.cisco.routers.content_service_router;' + c,
- 'Cisco_cisco_content_service_switch_1100' : 'shape=mxgraph.cisco.switches.content_service_switch_1100;' + c,
- 'Cisco_cisco_content_switch_module' : 'shape=mxgraph.cisco.controllers_and_modules.content_switch_module;' + c,
- 'Cisco_cisco_content_switch' : 'shape=mxgraph.cisco.switches.content_switch;' + c,
- 'Cisco_cisco_content_transformation_engine__cte_' : 'shape=mxgraph.cisco.misc.content_transformation_engine_(cte);' + c,
- 'Cisco_cisco_cs_mars' : 'shape=mxgraph.cisco.misc.cs-mars;' + c,
- 'Cisco_cisco_csm_s' : 'shape=mxgraph.cisco.misc.csm-s;' + c,
- 'Cisco_cisco_csu_dsu' : 'shape=mxgraph.cisco.misc.csu_dsu;' + c,
- 'Cisco_cisco_CUBE' : 'shape=mxgraph.cisco.misc.cube;' + c,
- 'Cisco_cisco_detector' : 'shape=mxgraph.cisco.misc.detector;' + c,
- 'Cisco_cisco_director_class_fibre_channel_director' : 'shape=mxgraph.cisco.directors.director-class_fibre_channel_director;' + c,
- 'Cisco_cisco_directory_server' : 'shape=mxgraph.cisco.servers.directory_server;' + c,
- 'Cisco_cisco_diskette' : 'shape=mxgraph.cisco.storage.diskette;' + c,
- 'Cisco_cisco_distributed_director' : 'shape=mxgraph.cisco.directors.distributed_director;' + c,
- 'Cisco_cisco_dot_dot' : 'shape=mxgraph.cisco.misc.dot-dot;' + c,
- 'Cisco_cisco_dpt' : 'shape=mxgraph.cisco.misc.dpt;' + c,
- 'Cisco_cisco_dslam' : 'shape=mxgraph.cisco.misc.dslam;' + c,
- 'Cisco_cisco_dual_mode_ap' : 'shape=mxgraph.cisco.misc.dual_mode;' + c,
- 'Cisco_cisco_dwdm_filter' : 'shape=mxgraph.cisco.misc.dwdm_filter;' + c,
- 'Cisco_cisco_end_office' : 'shape=mxgraph.cisco.buildings.end_office;' + c,
- 'Cisco_cisco_fax' : 'shape=mxgraph.cisco.modems_and_phones.fax;' + c,
- 'Cisco_cisco_fc_storage' : 'shape=mxgraph.cisco.storage.fc_storage;' + c,
- 'Cisco_cisco_fddi_ring' : 'shape=mxgraph.cisco.misc.fddi_ring;strokeColor=#036897;',
- 'Cisco_cisco_fibre_channel_disk_subsystem' : 'shape=mxgraph.cisco.storage.fibre_channel_disk_subsystem;' + c,
- 'Cisco_cisco_fibre_channel_fabric_switch' : 'shape=mxgraph.cisco.switches.fibre_channel_fabric_switch;' + c,
- 'Cisco_cisco_file_cabinet' : 'shape=mxgraph.cisco.storage.file_cabinet;' + c,
- 'Cisco_cisco_file_server' : 'shape=mxgraph.cisco.servers.file_server;' + c,
- 'Cisco_cisco_firewall_service_module__fwsm_' : 'shape=mxgraph.cisco.controllers_and_modules.firewall_service_module_(fwsm);' + c,
- 'Cisco_cisco_front_end_processor' : 'shape=mxgraph.cisco.misc.front_end_processor;' + c,
- 'Cisco_cisco_gatekeeper' : 'shape=mxgraph.cisco.security.gatekeeper;strokeColor=#036897;',
- 'Cisco_cisco_general_applicance' : 'shape=mxgraph.cisco.misc.general_appliance;' + c,
- 'Cisco_cisco_generic_gateway' : 'shape=mxgraph.cisco.hubs_and_gateways.generic_gateway;' + c,
- 'Cisco_cisco_generic_processor' : 'shape=mxgraph.cisco.misc.generic_processor;' + c,
- 'Cisco_cisco_generic_softswitch' : 'shape=mxgraph.cisco.switches.generic_softswitch;' + c,
- 'Cisco_cisco_gigabit_switch_atm_tag_router' : 'shape=mxgraph.cisco.routers.gigabit_switch_atm_tag_router;' + c,
- 'Cisco_cisco_government_building' : 'shape=mxgraph.cisco.buildings.government_building;' + c,
- 'Cisco_cisco_Ground_terminal' : 'shape=mxgraph.cisco.wireless.ground_terminal;' + c,
- 'Cisco_cisco_guard' : 'shape=mxgraph.cisco.security.guard;' + c,
- 'Cisco_cisco_handheld' : 'shape=mxgraph.cisco.misc.handheld;' + c,
- 'Cisco_cisco_hootphone' : 'shape=mxgraph.cisco.modems_and_phones.hootphone;' + c,
- 'Cisco_cisco_host' : 'shape=mxgraph.cisco.servers.host;' + c,
- 'Cisco_cisco_hp_mini' : 'shape=mxgraph.cisco.misc.hp_mini;' + c,
- 'Cisco_cisco_h' : 'shape=mxgraph.cisco.misc.h_323;' + c,
- 'Cisco_cisco_hub' : 'shape=mxgraph.cisco.hubs_and_gateways.hub;' + c,
- 'Cisco_cisco_iad_router' : 'shape=mxgraph.cisco.routers.iad_router;' + c,
- 'Cisco_cisco_ibm_mainframe' : 'shape=mxgraph.cisco.computers_and_peripherals.ibm_mainframe;' + c,
- 'Cisco_cisco_ibm_mini_as400' : 'shape=mxgraph.cisco.computers_and_peripherals.ibm_mini_as400;' + c,
- 'Cisco_cisco_ibm_tower' : 'shape=mxgraph.cisco.computers_and_peripherals.ibm_tower;' + c,
- 'Cisco_cisco_icm' : 'shape=mxgraph.cisco.misc.icm;' + c,
- 'Cisco_cisco_ics' : 'shape=mxgraph.cisco.misc.ics;' + c,
- 'Cisco_cisco_intelliswitch_stack' : 'shape=mxgraph.cisco.switches.intelliswitch_stack;' + c,
- 'Cisco_cisco_ios_firewall' : 'shape=mxgraph.cisco.security.ios_firewall;' + c,
- 'Cisco_cisco_ios_slb' : 'shape=mxgraph.cisco.misc.ios_slb;' + c,
- 'Cisco_cisco_ip_communicator' : 'shape=mxgraph.cisco.misc.ip_communicator;' + c,
- 'Cisco_cisco_ip_dsl' : 'shape=mxgraph.cisco.misc.ip_dsl;' + c,
- 'Cisco_cisco_ip_phone' : 'shape=mxgraph.cisco.modems_and_phones.ip_phone;' + c,
- 'Cisco_cisco_ip' : 'shape=mxgraph.cisco.misc.ip;' + c,
- 'Cisco_cisco_iptc' : 'shape=mxgraph.cisco.misc.iptc;' + c,
- 'Cisco_cisco_ip_telephony_router' : 'shape=mxgraph.cisco.routers.ip_telephony_router;' + c,
- 'Cisco_cisco_iptv_content_manager' : 'shape=mxgraph.cisco.misc.iptv_content_manager;' + c,
- 'Cisco_cisco_iptv_server' : 'shape=mxgraph.cisco.servers.iptv_server;' + c,
- 'Cisco_cisco_iscsi_router' : 'shape=mxgraph.cisco.routers.isci_router;' + c,
- 'Cisco_cisco_isdn_switch' : 'shape=mxgraph.cisco.switches.isdn_switch;' + c,
- 'Cisco_cisco_itp' : 'shape=mxgraph.cisco.misc.itp;' + c,
- 'Cisco_cisco_jbod' : 'shape=mxgraph.cisco.misc.jbod;' + c,
- 'Cisco_cisco_key' : 'shape=mxgraph.cisco.misc.key;' + c,
- 'Cisco_cisco_keys' : 'shape=mxgraph.cisco.misc.keys;' + c,
- 'Cisco_cisco_lan_to_lan' : 'shape=mxgraph.cisco.misc.lan_to_lan;' + c,
- 'Cisco_cisco_layer_2_remote_switch' : 'shape=mxgraph.cisco.switches.layer_2_remote_switch;' + c,
- 'Cisco_cisco_layer_3_switch' : 'shape=mxgraph.cisco.switches.layer_3_switch;' + c,
- 'Cisco_cisco_lightweight_ap' : 'shape=mxgraph.cisco.misc.lightweight_ap;' + c,
- 'Cisco_cisco_localdirector' : 'shape=mxgraph.cisco.directors.localdirector;' + c,
- 'Cisco_cisco_longreach_cpe' : 'shape=mxgraph.cisco.misc.longreach_cpe;' + c,
- 'Cisco_cisco_macintosh' : 'shape=mxgraph.cisco.computers_and_peripherals.macintosh;' + c,
- 'Cisco_cisco_mac_woman' : 'shape=mxgraph.cisco.people.mac_woman;' + c,
- 'Cisco_cisco_man_woman' : 'shape=mxgraph.cisco.people.man_woman;' + c,
- 'Cisco_cisco_mas_gateway' : 'shape=mxgraph.cisco.hubs_and_gateways.mas_gateway;' + c,
- 'Cisco_cisco_mau' : 'shape=mxgraph.cisco.misc.mau;' + c,
- 'Cisco_cisco_mcu' : 'shape=mxgraph.cisco.misc.mcu;' + c,
- 'Cisco_cisco_mdu' : 'shape=mxgraph.cisco.buildings.mdu;' + c,
- 'Cisco_cisco_me_1100' : 'shape=mxgraph.cisco.misc.me1100;' + c,
- 'Cisco_cisco_Mediator' : 'shape=mxgraph.cisco.misc.mediator;' + c,
- 'Cisco_cisco_meetingplace' : 'shape=mxgraph.cisco.misc.meetingplace;' + c,
- 'Cisco_cisco_mesh_ap' : 'shape=mxgraph.cisco.misc.mesh_ap;' + c,
- 'Cisco_cisco_metro_1500' : 'shape=mxgraph.cisco.misc.metro_1500;' + c,
- 'Cisco_cisco_mgx_8000_multiservice_switch' : 'shape=mxgraph.cisco.switches.mgx_8000_multiservice_switch;' + c,
- 'Cisco_cisco_microphone' : 'shape=mxgraph.cisco.computers_and_peripherals.microphone;' + c,
- 'Cisco_cisco_mini_vax' : 'shape=mxgraph.cisco.misc.mini_vax;' + c,
- 'Cisco_cisco_mobile_access_ip_phone' : 'shape=mxgraph.cisco.modems_and_phones.mobile_access_ip_phone;' + c,
- 'Cisco_cisco_mobile_access_router' : 'shape=mxgraph.cisco.routers.mobile_access_router;' + c,
- 'Cisco_cisco_modem' : 'shape=mxgraph.cisco.modems_and_phones.modem;' + c,
- 'Cisco_cisco_moh_server' : 'shape=mxgraph.cisco.servers.moh_server;' + c,
- 'Cisco_cisco_MSE' : 'shape=mxgraph.cisco.misc.mse;' + c,
- 'Cisco_cisco_mulitswitch_device' : 'shape=mxgraph.cisco.switches.multiswitch_device;' + c,
- 'Cisco_cisco_multi_fabric_server_switch' : 'shape=mxgraph.cisco.switches.multi-fabric_server_switch;' + c,
- 'Cisco_cisco_multilayer_remote_switch' : 'shape=mxgraph.cisco.switches.multilayer_remote_switch;' + c,
- 'Cisco_cisco_mux' : 'shape=mxgraph.cisco.misc.mux;' + c,
- 'Cisco_cisco_MXE' : 'shape=mxgraph.cisco.misc.mxe;' + c,
- 'Cisco_cisco_nac_appliance' : 'shape=mxgraph.cisco.misc.nac_appliance;' + c,
- 'Cisco_cisco_NCE' : 'shape=mxgraph.cisco.misc.nce;' + c,
- 'Cisco_cisco_NCE_router' : 'shape=mxgraph.cisco.routers.nce_router;' + c,
- 'Cisco_cisco_netflow_router' : 'shape=mxgraph.cisco.routers.netflow_router;' + c,
- 'Cisco_cisco_netranger' : 'shape=mxgraph.cisco.misc.netranger;' + c,
- 'Cisco_cisco_netsonar' : 'shape=mxgraph.cisco.misc.netsonar;' + c,
- 'Cisco_cisco_network_management' : 'shape=mxgraph.cisco.misc.network_management;' + c,
- 'Cisco_cisco_Nexus_1000' : 'shape=mxgraph.cisco.misc.nexus_1000;' + c,
- 'Cisco_cisco_Nexus_2000' : 'shape=mxgraph.cisco.misc.nexus_2000_fabric_extender;' + c,
- 'Cisco_cisco_Nexus_5000' : 'shape=mxgraph.cisco.misc.nexus_5000;' + c,
- 'Cisco_cisco_Nexus_7000' : 'shape=mxgraph.cisco.misc.nexus_7000;' + c,
- 'Cisco_cisco_octel' : 'shape=mxgraph.cisco.misc.octel;' + c,
- 'Cisco_cisco_ons15500' : 'shape=mxgraph.cisco.misc.ons15500;' + c,
- 'Cisco_cisco_optical_amplifier' : 'shape=mxgraph.cisco.misc.optical_amplifier;' + c,
- 'Cisco_cisco_optical_services_router' : 'shape=mxgraph.cisco.routers.optical_services_router;' + c,
- 'Cisco_cisco_optical_transport' : 'shape=mxgraph.cisco.misc.optical_transport;' + c,
- 'Cisco_cisco_pad' : 'shape=mxgraph.cisco.misc.pad_2;' + c,
- 'Cisco_cisco_pad_x' : 'shape=mxgraph.cisco.misc.pad_1;' + c,
- 'Cisco_cisco_page_icon' : 'shape=mxgraph.cisco.misc.page_icon;strokeColor=#036897;',
- 'Cisco_cisco_pbx' : 'shape=mxgraph.cisco.misc.pbx;' + c,
- 'Cisco_cisco_pbx_switch' : 'shape=mxgraph.cisco.switches.pbx_switch;' + c,
- 'Cisco_cisco_pc_adapter_card' : 'shape=mxgraph.cisco.computers_and_peripherals.pc_adapter_card;' + c,
- 'Cisco_cisco_pc_man' : 'shape=mxgraph.cisco.people.pc_man;' + c,
- 'Cisco_cisco_pc_routercard' : 'shape=mxgraph.cisco.computers_and_peripherals.pc_routercard;' + c,
- 'Cisco_cisco_pc_software' : 'shape=mxgraph.cisco.misc.pc_software;' + c,
- 'Cisco_cisco_pc_video' : 'shape=mxgraph.cisco.misc.pc_video;' + c,
- 'Cisco_cisco_phone_fax' : 'shape=mxgraph.cisco.modems_and_phones.phone-fax;' + c,
- 'Cisco_cisco_pix_firewall' : 'shape=mxgraph.cisco.security.pix_firewall;' + c,
- 'Cisco_cisco_pmc' : 'shape=mxgraph.cisco.misc.pmc;' + c,
- 'Cisco_cisco_programmable_switch' : 'shape=mxgraph.cisco.switches.programmable_switch;' + c,
- 'Cisco_cisco_protocol_translator' : 'shape=mxgraph.cisco.misc.protocol_translator;' + c,
- 'Cisco_cisco_pxf' : 'shape=mxgraph.cisco.misc.pxf;' + c,
- 'Cisco_cisco_radio_tower' : 'shape=mxgraph.cisco.wireless.radio_tower;strokeColor=#036897;',
- 'Cisco_cisco_ratemux' : 'shape=mxgraph.cisco.misc.ratemux;' + c,
- 'Cisco_cisco_repeater' : 'shape=mxgraph.cisco.misc.repeater;' + c,
- 'Cisco_cisco_RF_modem' : 'shape=mxgraph.cisco.modems_and_phones.rf_modem;' + c,
- 'Cisco_cisco_router_firewall' : 'shape=mxgraph.cisco.security.router_firewall;' + c,
- 'Cisco_cisco_routerin_building' : 'shape=mxgraph.cisco.routers.router_in_building;' + c,
- 'Cisco_cisco_router_with_silicon_switch' : 'shape=mxgraph.cisco.routers.router_with_silicon_switch;' + c,
- 'Cisco_cisco_route_switch_processor' : 'shape=mxgraph.cisco.misc.route_switch_processor;' + c,
- 'Cisco_cisco_rpsrps' : 'shape=mxgraph.cisco.misc.rpsrps;' + c,
- 'Cisco_cisco_running_man' : 'shape=mxgraph.cisco.people.running_man;' + c,
- 'Cisco_cisco_sattelite_dish' : 'shape=mxgraph.cisco.wireless.satellite_dish;' + c,
- 'Cisco_cisco_sattelite' : 'shape=mxgraph.cisco.wireless.satellite;' + c,
- 'Cisco_cisco_scanner' : 'shape=mxgraph.cisco.computers_and_peripherals.scanner;' + c,
- 'Cisco_cisco_server_switch' : 'shape=mxgraph.cisco.switches.server_switch;' + c,
- 'Cisco_cisco_server_with_router' : 'shape=mxgraph.cisco.servers.server_with_router;' + c,
- 'Cisco_cisco_service_control' : 'shape=mxgraph.cisco.misc.service_control;' + c,
- 'Cisco_cisco_Service_Module' : 'shape=mxgraph.cisco.controllers_and_modules.service_module;' + c,
- 'Cisco_cisco_Service_router' : 'shape=mxgraph.cisco.routers.service_router;' + c,
- 'Cisco_cisco_Services' : 'shape=mxgraph.cisco.misc.services;' + c,
- 'Cisco_cisco_Set_top_box' : 'shape=mxgraph.cisco.misc.set_top_box;' + c,
- 'Cisco_cisco_simulitlayer_switch' : 'shape=mxgraph.cisco.switches.simultilayer_switch;' + c,
- 'Cisco_cisco_sip_proxy_werver' : 'shape=mxgraph.cisco.servers.sip_proxy_server;' + c,
- 'Cisco_cisco_sitting_woman' : 'shape=mxgraph.cisco.people.sitting_woman;' + c,
- 'Cisco_cisco_small_business' : 'shape=mxgraph.cisco.buildings.small_business;' + c,
- 'Cisco_cisco_small_hub' : 'shape=mxgraph.cisco.hubs_and_gateways.small_hub;' + c,
- 'Cisco_cisco_softphone' : 'shape=mxgraph.cisco.modems_and_phones.softphone;' + c,
- 'Cisco_cisco_softswitch_pgw_mgc' : 'shape=mxgraph.cisco.switches.softswitch_pgw_mgc;' + c,
- 'Cisco_cisco_software_based_server' : 'shape=mxgraph.cisco.servers.software_based_server;' + c,
+ 'Cisco_cisco_cisco_unified_presence_server' : s + 'cisco.servers.cisco_unified_presence_server;' + c,
+ 'Cisco_cisco_cisco_unityexpress' : s + 'cisco.misc.cisco_unity_express;' + c,
+ 'Cisco_cisco_ciscoworks' : s + 'cisco.misc.cisco_works;' + c,
+ 'Cisco_cisco_class_4_5_switch' : s + 'cisco.switches.class_4_5_switch;' + c,
+ 'Cisco_cisco_communications_server' : s + 'cisco.servers.communications_server;' + c,
+ 'Cisco_cisco_contact_center' : s + 'cisco.misc.contact_center;' + c,
+ 'Cisco_cisco_content_engine__cache_director_' : s + 'cisco.directors.content_engine_(cache_director);' + c,
+ 'Cisco_cisco_content_service_router' : s + 'cisco.routers.content_service_router;' + c,
+ 'Cisco_cisco_content_service_switch_1100' : s + 'cisco.switches.content_service_switch_1100;' + c,
+ 'Cisco_cisco_content_switch_module' : s + 'cisco.controllers_and_modules.content_switch_module;' + c,
+ 'Cisco_cisco_content_switch' : s + 'cisco.switches.content_switch;' + c,
+ 'Cisco_cisco_content_transformation_engine__cte_' : s + 'cisco.misc.content_transformation_engine_(cte);' + c,
+ 'Cisco_cisco_cs_mars' : s + 'cisco.misc.cs-mars;' + c,
+ 'Cisco_cisco_csm_s' : s + 'cisco.misc.csm-s;' + c,
+ 'Cisco_cisco_csu_dsu' : s + 'cisco.misc.csu_dsu;' + c,
+ 'Cisco_cisco_CUBE' : s + 'cisco.misc.cube;' + c,
+ 'Cisco_cisco_detector' : s + 'cisco.misc.detector;' + c,
+ 'Cisco_cisco_director_class_fibre_channel_director' : s + 'cisco.directors.director-class_fibre_channel_director;' + c,
+ 'Cisco_cisco_directory_server' : s + 'cisco.servers.directory_server;' + c,
+ 'Cisco_cisco_diskette' : s + 'cisco.storage.diskette;' + c,
+ 'Cisco_cisco_distributed_director' : s + 'cisco.directors.distributed_director;' + c,
+ 'Cisco_cisco_dot_dot' : s + 'cisco.misc.dot-dot;' + c,
+ 'Cisco_cisco_dpt' : s + 'cisco.misc.dpt;' + c,
+ 'Cisco_cisco_dslam' : s + 'cisco.misc.dslam;' + c,
+ 'Cisco_cisco_dual_mode_ap' : s + 'cisco.misc.dual_mode;' + c,
+ 'Cisco_cisco_dwdm_filter' : s + 'cisco.misc.dwdm_filter;' + c,
+ 'Cisco_cisco_end_office' : s + 'cisco.buildings.end_office;' + c,
+ 'Cisco_cisco_fax' : s + 'cisco.modems_and_phones.fax;' + c,
+ 'Cisco_cisco_fc_storage' : s + 'cisco.storage.fc_storage;' + c,
+ 'Cisco_cisco_fddi_ring' : s + 'cisco.misc.fddi_ring;strokeColor=#036897;',
+ 'Cisco_cisco_fibre_channel_disk_subsystem' : s + 'cisco.storage.fibre_channel_disk_subsystem;' + c,
+ 'Cisco_cisco_fibre_channel_fabric_switch' : s + 'cisco.switches.fibre_channel_fabric_switch;' + c,
+ 'Cisco_cisco_file_cabinet' : s + 'cisco.storage.file_cabinet;' + c,
+ 'Cisco_cisco_file_server' : s + 'cisco.servers.file_server;' + c,
+ 'Cisco_cisco_firewall_service_module__fwsm_' : s + 'cisco.controllers_and_modules.firewall_service_module_(fwsm);' + c,
+ 'Cisco_cisco_front_end_processor' : s + 'cisco.misc.front_end_processor;' + c,
+ 'Cisco_cisco_gatekeeper' : s + 'cisco.security.gatekeeper;strokeColor=#036897;',
+ 'Cisco_cisco_general_applicance' : s + 'cisco.misc.general_appliance;' + c,
+ 'Cisco_cisco_generic_gateway' : s + 'cisco.hubs_and_gateways.generic_gateway;' + c,
+ 'Cisco_cisco_generic_processor' : s + 'cisco.misc.generic_processor;' + c,
+ 'Cisco_cisco_generic_softswitch' : s + 'cisco.switches.generic_softswitch;' + c,
+ 'Cisco_cisco_gigabit_switch_atm_tag_router' : s + 'cisco.routers.gigabit_switch_atm_tag_router;' + c,
+ 'Cisco_cisco_government_building' : s + 'cisco.buildings.government_building;' + c,
+ 'Cisco_cisco_Ground_terminal' : s + 'cisco.wireless.ground_terminal;' + c,
+ 'Cisco_cisco_guard' : s + 'cisco.security.guard;' + c,
+ 'Cisco_cisco_handheld' : s + 'cisco.misc.handheld;' + c,
+ 'Cisco_cisco_hootphone' : s + 'cisco.modems_and_phones.hootphone;' + c,
+ 'Cisco_cisco_host' : s + 'cisco.servers.host;' + c,
+ 'Cisco_cisco_hp_mini' : s + 'cisco.misc.hp_mini;' + c,
+ 'Cisco_cisco_h' : s + 'cisco.misc.h_323;' + c,
+ 'Cisco_cisco_hub' : s + 'cisco.hubs_and_gateways.hub;' + c,
+ 'Cisco_cisco_iad_router' : s + 'cisco.routers.iad_router;' + c,
+ 'Cisco_cisco_ibm_mainframe' : s + 'cisco.computers_and_peripherals.ibm_mainframe;' + c,
+ 'Cisco_cisco_ibm_mini_as400' : s + 'cisco.computers_and_peripherals.ibm_mini_as400;' + c,
+ 'Cisco_cisco_ibm_tower' : s + 'cisco.computers_and_peripherals.ibm_tower;' + c,
+ 'Cisco_cisco_icm' : s + 'cisco.misc.icm;' + c,
+ 'Cisco_cisco_ics' : s + 'cisco.misc.ics;' + c,
+ 'Cisco_cisco_intelliswitch_stack' : s + 'cisco.switches.intelliswitch_stack;' + c,
+ 'Cisco_cisco_ios_firewall' : s + 'cisco.security.ios_firewall;' + c,
+ 'Cisco_cisco_ios_slb' : s + 'cisco.misc.ios_slb;' + c,
+ 'Cisco_cisco_ip_communicator' : s + 'cisco.misc.ip_communicator;' + c,
+ 'Cisco_cisco_ip_dsl' : s + 'cisco.misc.ip_dsl;' + c,
+ 'Cisco_cisco_ip_phone' : s + 'cisco.modems_and_phones.ip_phone;' + c,
+ 'Cisco_cisco_ip' : s + 'cisco.misc.ip;' + c,
+ 'Cisco_cisco_iptc' : s + 'cisco.misc.iptc;' + c,
+ 'Cisco_cisco_ip_telephony_router' : s + 'cisco.routers.ip_telephony_router;' + c,
+ 'Cisco_cisco_iptv_content_manager' : s + 'cisco.misc.iptv_content_manager;' + c,
+ 'Cisco_cisco_iptv_server' : s + 'cisco.servers.iptv_server;' + c,
+ 'Cisco_cisco_iscsi_router' : s + 'cisco.routers.isci_router;' + c,
+ 'Cisco_cisco_isdn_switch' : s + 'cisco.switches.isdn_switch;' + c,
+ 'Cisco_cisco_itp' : s + 'cisco.misc.itp;' + c,
+ 'Cisco_cisco_jbod' : s + 'cisco.misc.jbod;' + c,
+ 'Cisco_cisco_key' : s + 'cisco.misc.key;' + c,
+ 'Cisco_cisco_keys' : s + 'cisco.misc.keys;' + c,
+ 'Cisco_cisco_lan_to_lan' : s + 'cisco.misc.lan_to_lan;' + c,
+ 'Cisco_cisco_layer_2_remote_switch' : s + 'cisco.switches.layer_2_remote_switch;' + c,
+ 'Cisco_cisco_layer_3_switch' : s + 'cisco.switches.layer_3_switch;' + c,
+ 'Cisco_cisco_lightweight_ap' : s + 'cisco.misc.lightweight_ap;' + c,
+ 'Cisco_cisco_localdirector' : s + 'cisco.directors.localdirector;' + c,
+ 'Cisco_cisco_longreach_cpe' : s + 'cisco.misc.longreach_cpe;' + c,
+ 'Cisco_cisco_macintosh' : s + 'cisco.computers_and_peripherals.macintosh;' + c,
+ 'Cisco_cisco_mac_woman' : s + 'cisco.people.mac_woman;' + c,
+ 'Cisco_cisco_man_woman' : s + 'cisco.people.man_woman;' + c,
+ 'Cisco_cisco_mas_gateway' : s + 'cisco.hubs_and_gateways.mas_gateway;' + c,
+ 'Cisco_cisco_mau' : s + 'cisco.misc.mau;' + c,
+ 'Cisco_cisco_mcu' : s + 'cisco.misc.mcu;' + c,
+ 'Cisco_cisco_mdu' : s + 'cisco.buildings.mdu;' + c,
+ 'Cisco_cisco_me_1100' : s + 'cisco.misc.me1100;' + c,
+ 'Cisco_cisco_Mediator' : s + 'cisco.misc.mediator;' + c,
+ 'Cisco_cisco_meetingplace' : s + 'cisco.misc.meetingplace;' + c,
+ 'Cisco_cisco_mesh_ap' : s + 'cisco.misc.mesh_ap;' + c,
+ 'Cisco_cisco_metro_1500' : s + 'cisco.misc.metro_1500;' + c,
+ 'Cisco_cisco_mgx_8000_multiservice_switch' : s + 'cisco.switches.mgx_8000_multiservice_switch;' + c,
+ 'Cisco_cisco_microphone' : s + 'cisco.computers_and_peripherals.microphone;' + c,
+ 'Cisco_cisco_mini_vax' : s + 'cisco.misc.mini_vax;' + c,
+ 'Cisco_cisco_mobile_access_ip_phone' : s + 'cisco.modems_and_phones.mobile_access_ip_phone;' + c,
+ 'Cisco_cisco_mobile_access_router' : s + 'cisco.routers.mobile_access_router;' + c,
+ 'Cisco_cisco_modem' : s + 'cisco.modems_and_phones.modem;' + c,
+ 'Cisco_cisco_moh_server' : s + 'cisco.servers.moh_server;' + c,
+ 'Cisco_cisco_MSE' : s + 'cisco.misc.mse;' + c,
+ 'Cisco_cisco_mulitswitch_device' : s + 'cisco.switches.multiswitch_device;' + c,
+ 'Cisco_cisco_multi_fabric_server_switch' : s + 'cisco.switches.multi-fabric_server_switch;' + c,
+ 'Cisco_cisco_multilayer_remote_switch' : s + 'cisco.switches.multilayer_remote_switch;' + c,
+ 'Cisco_cisco_mux' : s + 'cisco.misc.mux;' + c,
+ 'Cisco_cisco_MXE' : s + 'cisco.misc.mxe;' + c,
+ 'Cisco_cisco_nac_appliance' : s + 'cisco.misc.nac_appliance;' + c,
+ 'Cisco_cisco_NCE' : s + 'cisco.misc.nce;' + c,
+ 'Cisco_cisco_NCE_router' : s + 'cisco.routers.nce_router;' + c,
+ 'Cisco_cisco_netflow_router' : s + 'cisco.routers.netflow_router;' + c,
+ 'Cisco_cisco_netranger' : s + 'cisco.misc.netranger;' + c,
+ 'Cisco_cisco_netsonar' : s + 'cisco.misc.netsonar;' + c,
+ 'Cisco_cisco_network_management' : s + 'cisco.misc.network_management;' + c,
+ 'Cisco_cisco_Nexus_1000' : s + 'cisco.misc.nexus_1000;' + c,
+ 'Cisco_cisco_Nexus_2000' : s + 'cisco.misc.nexus_2000_fabric_extender;' + c,
+ 'Cisco_cisco_Nexus_5000' : s + 'cisco.misc.nexus_5000;' + c,
+ 'Cisco_cisco_Nexus_7000' : s + 'cisco.misc.nexus_7000;' + c,
+ 'Cisco_cisco_octel' : s + 'cisco.misc.octel;' + c,
+ 'Cisco_cisco_ons15500' : s + 'cisco.misc.ons15500;' + c,
+ 'Cisco_cisco_optical_amplifier' : s + 'cisco.misc.optical_amplifier;' + c,
+ 'Cisco_cisco_optical_services_router' : s + 'cisco.routers.optical_services_router;' + c,
+ 'Cisco_cisco_optical_transport' : s + 'cisco.misc.optical_transport;' + c,
+ 'Cisco_cisco_pad' : s + 'cisco.misc.pad_2;' + c,
+ 'Cisco_cisco_pad_x' : s + 'cisco.misc.pad_1;' + c,
+ 'Cisco_cisco_page_icon' : s + 'cisco.misc.page_icon;strokeColor=#036897;',
+ 'Cisco_cisco_pbx' : s + 'cisco.misc.pbx;' + c,
+ 'Cisco_cisco_pbx_switch' : s + 'cisco.switches.pbx_switch;' + c,
+ 'Cisco_cisco_pc_adapter_card' : s + 'cisco.computers_and_peripherals.pc_adapter_card;' + c,
+ 'Cisco_cisco_pc_man' : s + 'cisco.people.pc_man;' + c,
+ 'Cisco_cisco_pc_routercard' : s + 'cisco.computers_and_peripherals.pc_routercard;' + c,
+ 'Cisco_cisco_pc_software' : s + 'cisco.misc.pc_software;' + c,
+ 'Cisco_cisco_pc_video' : s + 'cisco.misc.pc_video;' + c,
+ 'Cisco_cisco_phone_fax' : s + 'cisco.modems_and_phones.phone-fax;' + c,
+ 'Cisco_cisco_pix_firewall' : s + 'cisco.security.pix_firewall;' + c,
+ 'Cisco_cisco_pmc' : s + 'cisco.misc.pmc;' + c,
+ 'Cisco_cisco_programmable_switch' : s + 'cisco.switches.programmable_switch;' + c,
+ 'Cisco_cisco_protocol_translator' : s + 'cisco.misc.protocol_translator;' + c,
+ 'Cisco_cisco_pxf' : s + 'cisco.misc.pxf;' + c,
+ 'Cisco_cisco_radio_tower' : s + 'cisco.wireless.radio_tower;strokeColor=#036897;',
+ 'Cisco_cisco_ratemux' : s + 'cisco.misc.ratemux;' + c,
+ 'Cisco_cisco_repeater' : s + 'cisco.misc.repeater;' + c,
+ 'Cisco_cisco_RF_modem' : s + 'cisco.modems_and_phones.rf_modem;' + c,
+ 'Cisco_cisco_router_firewall' : s + 'cisco.security.router_firewall;' + c,
+ 'Cisco_cisco_routerin_building' : s + 'cisco.routers.router_in_building;' + c,
+ 'Cisco_cisco_router_with_silicon_switch' : s + 'cisco.routers.router_with_silicon_switch;' + c,
+ 'Cisco_cisco_route_switch_processor' : s + 'cisco.misc.route_switch_processor;' + c,
+ 'Cisco_cisco_rpsrps' : s + 'cisco.misc.rpsrps;' + c,
+ 'Cisco_cisco_running_man' : s + 'cisco.people.running_man;' + c,
+ 'Cisco_cisco_sattelite_dish' : s + 'cisco.wireless.satellite_dish;' + c,
+ 'Cisco_cisco_sattelite' : s + 'cisco.wireless.satellite;' + c,
+ 'Cisco_cisco_scanner' : s + 'cisco.computers_and_peripherals.scanner;' + c,
+ 'Cisco_cisco_server_switch' : s + 'cisco.switches.server_switch;' + c,
+ 'Cisco_cisco_server_with_router' : s + 'cisco.servers.server_with_router;' + c,
+ 'Cisco_cisco_service_control' : s + 'cisco.misc.service_control;' + c,
+ 'Cisco_cisco_Service_Module' : s + 'cisco.controllers_and_modules.service_module;' + c,
+ 'Cisco_cisco_Service_router' : s + 'cisco.routers.service_router;' + c,
+ 'Cisco_cisco_Services' : s + 'cisco.misc.services;' + c,
+ 'Cisco_cisco_Set_top_box' : s + 'cisco.misc.set_top_box;' + c,
+ 'Cisco_cisco_simulitlayer_switch' : s + 'cisco.switches.simultilayer_switch;' + c,
+ 'Cisco_cisco_sip_proxy_werver' : s + 'cisco.servers.sip_proxy_server;' + c,
+ 'Cisco_cisco_sitting_woman' : s + 'cisco.people.sitting_woman;' + c,
+ 'Cisco_cisco_small_business' : s + 'cisco.buildings.small_business;' + c,
+ 'Cisco_cisco_small_hub' : s + 'cisco.hubs_and_gateways.small_hub;' + c,
+ 'Cisco_cisco_softphone' : s + 'cisco.modems_and_phones.softphone;' + c,
+ 'Cisco_cisco_softswitch_pgw_mgc' : s + 'cisco.switches.softswitch_pgw_mgc;' + c,
+ 'Cisco_cisco_software_based_server' : s + 'cisco.servers.software_based_server;' + c,
// 'Cisco_cisco_Space_router' NA
- 'Cisco_cisco_speaker' : 'shape=mxgraph.cisco.computers_and_peripherals.speaker;' + c,
- 'Cisco_cisco_ssc' : 'shape=mxgraph.cisco.misc.ssc;' + c,
- 'Cisco_cisco_ssl_terminator' : 'shape=mxgraph.cisco.misc.ssl_terminator;' + c,
- 'Cisco_cisco_standard_host' : 'shape=mxgraph.cisco.servers.standard_host;' + c,
- 'Cisco_cisco_stb' : 'shape=mxgraph.cisco.misc.stb;' + c,
- 'Cisco_cisco_storage_router' : 'shape=mxgraph.cisco.routers.storage_router;' + c,
- 'Cisco_cisco_storage_server' : 'shape=mxgraph.cisco.servers.storage_server;' + c,
- 'Cisco_cisco_stp' : 'shape=mxgraph.cisco.misc.stp;' + c,
- 'Cisco_cisco_streamer' : 'shape=mxgraph.cisco.misc.streamer;' + c,
- 'Cisco_cisco_sun_workstation' : 'shape=mxgraph.cisco.computers_and_peripherals.workstation;' + c,
- 'Cisco_cisco_supercomputer' : 'shape=mxgraph.cisco.computers_and_peripherals.supercomputer;' + c,
- 'Cisco_cisco_svx' : 'shape=mxgraph.cisco.misc.svx;' + c,
- 'Cisco_cisco_system_controller' : 'shape=mxgraph.cisco.controllers_and_modules.system_controller;' + c,
- 'Cisco_cisco_tablet' : 'shape=mxgraph.cisco.computers_and_peripherals.tablet;' + c,
- 'Cisco_cisco_tape_array' : 'shape=mxgraph.cisco.storage.tape_array;' + c,
- 'Cisco_cisco_tdm_router' : 'shape=mxgraph.cisco.routers.tdm_router;' + c,
- 'Cisco_cisco_telecommuter_house_pc' : 'shape=mxgraph.cisco.buildings.telecommuter_house_pc;' + c,
- 'Cisco_cisco_telecommuter_house' : 'shape=mxgraph.cisco.buildings.telecommuter_house;' + c,
- 'Cisco_cisco_telecommuter_icon' : 'shape=mxgraph.cisco.misc.telecommuter_icon;' + c,
+ 'Cisco_cisco_speaker' : s + 'cisco.computers_and_peripherals.speaker;' + c,
+ 'Cisco_cisco_ssc' : s + 'cisco.misc.ssc;' + c,
+ 'Cisco_cisco_ssl_terminator' : s + 'cisco.misc.ssl_terminator;' + c,
+ 'Cisco_cisco_standard_host' : s + 'cisco.servers.standard_host;' + c,
+ 'Cisco_cisco_stb' : s + 'cisco.misc.stb;' + c,
+ 'Cisco_cisco_storage_router' : s + 'cisco.routers.storage_router;' + c,
+ 'Cisco_cisco_storage_server' : s + 'cisco.servers.storage_server;' + c,
+ 'Cisco_cisco_stp' : s + 'cisco.misc.stp;' + c,
+ 'Cisco_cisco_streamer' : s + 'cisco.misc.streamer;' + c,
+ 'Cisco_cisco_sun_workstation' : s + 'cisco.computers_and_peripherals.workstation;' + c,
+ 'Cisco_cisco_supercomputer' : s + 'cisco.computers_and_peripherals.supercomputer;' + c,
+ 'Cisco_cisco_svx' : s + 'cisco.misc.svx;' + c,
+ 'Cisco_cisco_system_controller' : s + 'cisco.controllers_and_modules.system_controller;' + c,
+ 'Cisco_cisco_tablet' : s + 'cisco.computers_and_peripherals.tablet;' + c,
+ 'Cisco_cisco_tape_array' : s + 'cisco.storage.tape_array;' + c,
+ 'Cisco_cisco_tdm_router' : s + 'cisco.routers.tdm_router;' + c,
+ 'Cisco_cisco_telecommuter_house_pc' : s + 'cisco.buildings.telecommuter_house_pc;' + c,
+ 'Cisco_cisco_telecommuter_house' : s + 'cisco.buildings.telecommuter_house;' + c,
+ 'Cisco_cisco_telecommuter_icon' : s + 'cisco.misc.telecommuter_icon;' + c,
// 'Cisco_cisco_Telepresence_1000' NA
// 'Cisco_cisco_Telepresence_3000' NA
- 'Cisco_cisco_Telepresence_3200' : 'shape=mxgraph.cisco.misc.telepresence;' + c,
+ 'Cisco_cisco_Telepresence_3200' : s + 'cisco.misc.telepresence;' + c,
// 'Cisco_cisco_Telepresence_500' NA
- 'Cisco_cisco_terminal' : 'shape=mxgraph.cisco.computers_and_peripherals.terminal;' + c,
- 'Cisco_cisco_token' : 'shape=mxgraph.cisco.misc.token;strokeColor=#036897;',
- 'Cisco_cisco_TP_MCU' : 'shape=mxgraph.cisco.misc.tp_mcu;' + c,
- 'Cisco_cisco_transpath' : 'shape=mxgraph.cisco.misc.transpath;' + c,
- 'Cisco_cisco_truck' : 'shape=mxgraph.cisco.misc.truck;' + c,
- 'Cisco_cisco_turret' : 'shape=mxgraph.cisco.misc.turret;' + c,
- 'Cisco_cisco_tv' : 'shape=mxgraph.cisco.misc.tv;' + c,
- 'Cisco_cisco_ubr910' : 'shape=mxgraph.cisco.misc.ubr910;' + c,
- 'Cisco_cisco_umg_series' : 'shape=mxgraph.cisco.misc.umg_series;' + c,
- 'Cisco_cisco_unity_server' : 'shape=mxgraph.cisco.servers.unity_server;' + c,
- 'Cisco_cisco_universal_gateway' : 'shape=mxgraph.cisco.hubs_and_gateways.universal_gateway;' + c,
- 'Cisco_cisco_university' : 'shape=mxgraph.cisco.buildings.university;' + c,
- 'Cisco_cisco_upc' : 'shape=mxgraph.cisco.computers_and_peripherals.upc;' + c,
- 'Cisco_cisco_vault' : 'shape=mxgraph.cisco.misc.vault;' + c,
- 'Cisco_cisco_video_camera' : 'shape=mxgraph.cisco.computers_and_peripherals.video_camera;' + c,
- 'Cisco_cisco_vip' : 'shape=mxgraph.cisco.misc.vip;' + c,
- 'Cisco_cisco_virtual_layer_switch' : 'shape=mxgraph.cisco.switches.virtual_layer_switch;' + c,
- 'Cisco_cisco_virtual_switch_controller__vsc3000_' : 'shape=mxgraph.cisco.controllers_and_modules.virtual_switch_controller_(vsc3000);' + c,
- 'Cisco_cisco_voice_atm_switch' : 'shape=mxgraph.cisco.switches.voice_atm_switch;' + c,
- 'Cisco_cisco_voice_commserver' : 'shape=mxgraph.cisco.servers.voice_commserver;' + c,
- 'Cisco_cisco_voice_router' : 'shape=mxgraph.cisco.routers.voice_router;' + c,
- 'Cisco_cisco_voice_switch' : 'shape=mxgraph.cisco.switches.voice_switch;' + c,
- 'Cisco_cisco_vpn_concentrator' : 'shape=mxgraph.cisco.misc.vpn_concentrator;' + c,
- 'Cisco_cisco_vpn_gateway' : 'shape=mxgraph.cisco.hubs_and_gateways.vpn_gateway;' + c,
- 'Cisco_cisco_VSS' : 'shape=mxgraph.cisco.misc.vss;' + c,
- 'Cisco_cisco_wae' : 'shape=mxgraph.cisco.misc.wae;' + c,
- 'Cisco_cisco_wavelength_router' : 'shape=mxgraph.cisco.routers.wavelength_router;' + c,
- 'Cisco_cisco_web_browser' : 'shape=mxgraph.cisco.computers_and_peripherals.web_browser;' + c,
- 'Cisco_cisco_web_cluster' : 'shape=mxgraph.cisco.storage.web_cluster;' + c,
- 'Cisco_cisco_wi_fi_tag' : 'shape=mxgraph.cisco.wireless.wi-fi_tag;' + c,
- 'Cisco_cisco_wireless_bridge' : 'shape=mxgraph.cisco.wireless.wireless_bridge;' + c,
- 'Cisco_cisco_wireless_location_appliance' : 'shape=mxgraph.cisco.wireless.wireless_location_appliance;' + c,
- 'Cisco_cisco_wireless' : 'shape=mxgraph.cisco.wireless.wireless;' + c,
- 'Cisco_cisco_wireless_transport' : 'shape=mxgraph.cisco.wireless.wireless_transport;' + c,
- 'Cisco_cisco_wism' : 'shape=mxgraph.cisco.misc.wism;' + c,
- 'Cisco_cisco_wlan_controller' : 'shape=mxgraph.cisco.wireless.wlan_controller;' + c,
- 'Cisco_cisco_workgroup_director' : 'shape=mxgraph.cisco.directors.workgroup_director;' + c,
- 'Cisco_cisco_workgroup_switch' : 'shape=mxgraph.cisco.switches.workgroup_switch;' + c,
- 'Cisco_cisco_workstation' : 'shape=mxgraph.cisco.computers_and_peripherals.workstation;' + c,
- 'Cisco_cisco_www_server' : 'shape=mxgraph.cisco.servers.www_server;' + c,
+ 'Cisco_cisco_terminal' : s + 'cisco.computers_and_peripherals.terminal;' + c,
+ 'Cisco_cisco_token' : s + 'cisco.misc.token;strokeColor=#036897;',
+ 'Cisco_cisco_TP_MCU' : s + 'cisco.misc.tp_mcu;' + c,
+ 'Cisco_cisco_transpath' : s + 'cisco.misc.transpath;' + c,
+ 'Cisco_cisco_truck' : s + 'cisco.misc.truck;' + c,
+ 'Cisco_cisco_turret' : s + 'cisco.misc.turret;' + c,
+ 'Cisco_cisco_tv' : s + 'cisco.misc.tv;' + c,
+ 'Cisco_cisco_ubr910' : s + 'cisco.misc.ubr910;' + c,
+ 'Cisco_cisco_umg_series' : s + 'cisco.misc.umg_series;' + c,
+ 'Cisco_cisco_unity_server' : s + 'cisco.servers.unity_server;' + c,
+ 'Cisco_cisco_universal_gateway' : s + 'cisco.hubs_and_gateways.universal_gateway;' + c,
+ 'Cisco_cisco_university' : s + 'cisco.buildings.university;' + c,
+ 'Cisco_cisco_upc' : s + 'cisco.computers_and_peripherals.upc;' + c,
+ 'Cisco_cisco_vault' : s + 'cisco.misc.vault;' + c,
+ 'Cisco_cisco_video_camera' : s + 'cisco.computers_and_peripherals.video_camera;' + c,
+ 'Cisco_cisco_vip' : s + 'cisco.misc.vip;' + c,
+ 'Cisco_cisco_virtual_layer_switch' : s + 'cisco.switches.virtual_layer_switch;' + c,
+ 'Cisco_cisco_virtual_switch_controller__vsc3000_' : s + 'cisco.controllers_and_modules.virtual_switch_controller_(vsc3000);' + c,
+ 'Cisco_cisco_voice_atm_switch' : s + 'cisco.switches.voice_atm_switch;' + c,
+ 'Cisco_cisco_voice_commserver' : s + 'cisco.servers.voice_commserver;' + c,
+ 'Cisco_cisco_voice_router' : s + 'cisco.routers.voice_router;' + c,
+ 'Cisco_cisco_voice_switch' : s + 'cisco.switches.voice_switch;' + c,
+ 'Cisco_cisco_vpn_concentrator' : s + 'cisco.misc.vpn_concentrator;' + c,
+ 'Cisco_cisco_vpn_gateway' : s + 'cisco.hubs_and_gateways.vpn_gateway;' + c,
+ 'Cisco_cisco_VSS' : s + 'cisco.misc.vss;' + c,
+ 'Cisco_cisco_wae' : s + 'cisco.misc.wae;' + c,
+ 'Cisco_cisco_wavelength_router' : s + 'cisco.routers.wavelength_router;' + c,
+ 'Cisco_cisco_web_browser' : s + 'cisco.computers_and_peripherals.web_browser;' + c,
+ 'Cisco_cisco_web_cluster' : s + 'cisco.storage.web_cluster;' + c,
+ 'Cisco_cisco_wi_fi_tag' : s + 'cisco.wireless.wi-fi_tag;' + c,
+ 'Cisco_cisco_wireless_bridge' : s + 'cisco.wireless.wireless_bridge;' + c,
+ 'Cisco_cisco_wireless_location_appliance' : s + 'cisco.wireless.wireless_location_appliance;' + c,
+ 'Cisco_cisco_wireless' : s + 'cisco.wireless.wireless;' + c,
+ 'Cisco_cisco_wireless_transport' : s + 'cisco.wireless.wireless_transport;' + c,
+ 'Cisco_cisco_wism' : s + 'cisco.misc.wism;' + c,
+ 'Cisco_cisco_wlan_controller' : s + 'cisco.wireless.wlan_controller;' + c,
+ 'Cisco_cisco_workgroup_director' : s + 'cisco.directors.workgroup_director;' + c,
+ 'Cisco_cisco_workgroup_switch' : s + 'cisco.switches.workgroup_switch;' + c,
+ 'Cisco_cisco_workstation' : s + 'cisco.computers_and_peripherals.workstation;' + c,
+ 'Cisco_cisco_www_server' : s + 'cisco.servers.www_server;' + c,
//Computers and Monitors
// 'NET_PC' NA
// 'NET_Virtual-PC' NA
@@ -778,19 +911,19 @@
// 'NET_Camera' NA
// 'NET_VideoCamera' NA
//Server Racks
- 'RackServerRack' : 'shape=mxgraph.rackGeneral.container;container=1;collapsible=0;childLayout=rack;marginLeft=9;marginRight=9;marginTop=21;marginBottom=22;textColor=#000000;numDisp=off;',
- 'RackBlank' : 'strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;shape=mxgraph.rackGeneral.plate;fillColor=#e8e8e8;',
- 'RackRaidArray' : 'shape=mxgraph.rack.cisco.cisco_carrier_packet_transport_50;labelPosition=left;align=right;spacingRight=15;',
- 'RackServer' : 'shape=mxgraph.rack.oracle.sunfire_x4100;labelPosition=left;align=right;spacingRight=15;',
- 'RackEthernetSwitch' : 'shape=mxgraph.rack.cisco.cisco_nexus_3016_switch;labelPosition=left;align=right;spacingRight=15;',
- 'RackPatchPanel' : 'strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;shape=mxgraph.rack.general.cat5e_rack_mount_patch_panel_24_ports;',
- 'RackRouter' : 'shape=mxgraph.rack.cisco.cisco_asr_1001_router;labelPosition=left;align=right;spacingRight=15;',
- 'RackMonitor' : 'shape=mxgraph.rack.ibm.ibm_1u_flat_panel_console_kit;labelPosition=left;align=right;spacingRight=15;',
- 'RackKeyboard' : 'shape=mxgraph.rack.cisco.cisco_1905_serial_integrated_services_router;labelPosition=left;align=right;spacingRight=15;',
- 'RackPowerStrip' : 'shape=mxgraph.rack.dell.power_strip;labelPosition=left;align=right;spacingRight=15;',
- 'RackPowerSupply' : 'shape=mxgraph.rack.cisco.cisco_web_security_appliance_s170;labelPosition=left;align=right;spacingRight=15;',
- 'RackBridge' : 'shape=mxgraph.rack.cisco.cisco_nexus_5548p_switch;labelPosition=left;align=right;spacingRight=15;',
- 'RackTapeDrive' : 'shape=mxgraph.rack.ibm.ibm_1754_local_console_manager;labelPosition=left;align=right;spacingRight=15;',
+ 'RackServerRack' : s + 'rackGeneral.container;container=1;collapsible=0;childLayout=rack;marginLeft=9;marginRight=9;marginTop=21;marginBottom=22;textColor=#000000;numDisp=off;',
+ 'RackBlank' : s + 'rackGeneral.plate;strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;fillColor=#e8e8e8;',
+ 'RackRaidArray' : s + 'rack.cisco.cisco_carrier_packet_transport_50;labelPosition=left;align=right;spacingRight=15;',
+ 'RackServer' : s + 'rack.oracle.sunfire_x4100;labelPosition=left;align=right;spacingRight=15;',
+ 'RackEthernetSwitch' : s + 'rack.cisco.cisco_nexus_3016_switch;labelPosition=left;align=right;spacingRight=15;',
+ 'RackPatchPanel' : s + 'rack.general.cat5e_rack_mount_patch_panel_24_ports;strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;',
+ 'RackRouter' : s + 'rack.cisco.cisco_asr_1001_router;labelPosition=left;align=right;spacingRight=15;',
+ 'RackMonitor' : s + 'rack.ibm.ibm_1u_flat_panel_console_kit;labelPosition=left;align=right;spacingRight=15;',
+ 'RackKeyboard' : s + 'rack.cisco.cisco_1905_serial_integrated_services_router;labelPosition=left;align=right;spacingRight=15;',
+ 'RackPowerStrip' : s + 'rack.dell.power_strip;labelPosition=left;align=right;spacingRight=15;',
+ 'RackPowerSupply' : s + 'rack.cisco.cisco_web_security_appliance_s170;labelPosition=left;align=right;spacingRight=15;',
+ 'RackBridge' : s + 'rack.cisco.cisco_nexus_5548p_switch;labelPosition=left;align=right;spacingRight=15;',
+ 'RackTapeDrive' : s + 'rack.ibm.ibm_1754_local_console_manager;labelPosition=left;align=right;spacingRight=15;',
//Network
'Image_network_server' : 'image;image=img/lib/clip_art/computers/Server_Tower_128x128.png;flipH=1;',
'Image_network_server_file' : 'image;image=img/lib/clip_art/computers/Server_128x128.png;',
@@ -838,84 +971,84 @@
// 'Image_audio_record_player' NA
// 'Image_audio_headset' NA
//Electrical
- 'EE_Amplifier' : 'shape=mxgraph.electrical.abstract.amplifier;',
- 'EE_OpAmp' : 'shape=mxgraph.electrical.abstract.operational_amp_1;', //EXT
- 'EE_ControlledAmp' : 'shape=mxgraph.electrical.abstract.controlled_amplifier;', //EXT
- 'EE_Multiplexer' : 'shape=mxgraph.electrical.abstract.mux;', //EXT
- 'EE_Demultiplexer' : 'shape=mxgraph.electrical.abstract.demux;', //EXT
- 'EE_Capacitor1' : 'shape=mxgraph.electrical.capacitors.capacitor_1;', //EXT
- 'EE_Capacitor2' : 'shape=mxgraph.electrical.capacitors.capacitor_3;', //EXT
- 'EE_Diode' : 'shape=mxgraph.electrical.diodes.diode;', //EXT
- 'EE_Resistor' : 'shape=mxgraph.electrical.resistors.resistor_2;', //EXT
- 'EE_VarResistor' : 'shape=mxgraph.electrical.resistors.variable_resistor_2;',
- 'EE_Potentiometer' : 'shape=mxgraph.electrical.resistors.potentiometer_2;', //EXT
- 'EE_ProtGround' : 'shape=mxgraph.electrical.signal_sources.protective_earth;',
- 'EE_SignalGround' : 'shape=mxgraph.electrical.signal_sources.signal_ground;',
- 'EE_Transformer' : 'shape=mxgraph.electrical.inductors.transformer_1;',
- 'EE_Inductor' : 'shape=mxgraph.electrical.inductors.inductor_3;', //EXT
- 'EE_Variable Inductor' : 'shape=mxgraph.electrical.inductors.variable_inductor;', //EXT
- 'EE_TwoWaySwitch' : 'shape=mxgraph.electrical.electro-mechanical.2-way_switch;',
- 'EE_OnOffSwitch' : 'shape=mxgraph.electrical.electro-mechanical.simple_switch;',
- 'EE_Loudspeaker' : 'shape=mxgraph.electrical.electro-mechanical.loudspeaker;',
- 'EE_Motor' : 'shape=mxgraph.electrical.electro-mechanical.motor_1;', //EXT
- 'EE_LED1' : 'shape=mxgraph.electrical.opto_electronics.led_2;',
- 'EE_Lightbulb' : 'shape=mxgraph.electrical.miscellaneous.light_bulb;',
+ 'EE_Amplifier' : s + 'electrical.abstract.amplifier;',
+ 'EE_OpAmp' : s + 'electrical.abstract.operational_amp_1;', //EXT
+ 'EE_ControlledAmp' : s + 'electrical.abstract.controlled_amplifier;', //EXT
+ 'EE_Multiplexer' : s + 'electrical.abstract.mux;', //EXT
+ 'EE_Demultiplexer' : s + 'electrical.abstract.demux;', //EXT
+ 'EE_Capacitor1' : s + 'electrical.capacitors.capacitor_1;', //EXT
+ 'EE_Capacitor2' : s + 'electrical.capacitors.capacitor_3;', //EXT
+ 'EE_Diode' : s + 'electrical.diodes.diode;', //EXT
+ 'EE_Resistor' : s + 'electrical.resistors.resistor_2;', //EXT
+ 'EE_VarResistor' : s + 'electrical.resistors.variable_resistor_2;',
+ 'EE_Potentiometer' : s + 'electrical.resistors.potentiometer_2;', //EXT
+ 'EE_ProtGround' : s + 'electrical.signal_sources.protective_earth;',
+ 'EE_SignalGround' : s + 'electrical.signal_sources.signal_ground;',
+ 'EE_Transformer' : s + 'electrical.inductors.transformer_1;',
+ 'EE_Inductor' : s + 'electrical.inductors.inductor_3;', //EXT
+ 'EE_Variable Inductor' : s + 'electrical.inductors.variable_inductor;', //EXT
+ 'EE_TwoWaySwitch' : s + 'electrical.electro-mechanical.2-way_switch;',
+ 'EE_OnOffSwitch' : s + 'electrical.electro-mechanical.simple_switch;',
+ 'EE_Loudspeaker' : s + 'electrical.electro-mechanical.loudspeaker;',
+ 'EE_Motor' : s + 'electrical.electro-mechanical.motor_1;', //EXT
+ 'EE_LED1' : s + 'electrical.opto_electronics.led_2;',
+ 'EE_Lightbulb' : s + 'electrical.miscellaneous.light_bulb;',
// 'EE_IntegratedCircuit' EXT
//Power Sources
- 'EE_AcSource' : 'strokeWidth=1;shape=mxgraph.electrical.signal_sources.ac_source;', //EXT
- 'EE_VoltageSource' : 'shape=mxgraph.electrical.signal_sources.dc_source_3;', //EXT
- 'EE_CurrentSource' : 'shape=mxgraph.electrical.signal_sources.dc_source_2;direction=north;', //EXT
- 'EE_ControlledCurrentSource' : 'shape=mxgraph.electrical.signal_sources.dependent_source_2;direction=west;', //EXT
- 'EE_ControlledVoltageSource' : 'shape=mxgraph.electrical.signal_sources.dependent_source_3;', //EXT
+ 'EE_AcSource' : s + 'electrical.signal_sources.ac_source;strokeWidth=1;', //EXT
+ 'EE_VoltageSource' : s + 'electrical.signal_sources.dc_source_3;', //EXT
+ 'EE_CurrentSource' : s + 'electrical.signal_sources.dc_source_2;direction=north;', //EXT
+ 'EE_ControlledCurrentSource' : s + 'electrical.signal_sources.dependent_source_2;direction=west;', //EXT
+ 'EE_ControlledVoltageSource' : s + 'electrical.signal_sources.dependent_source_3;', //EXT
// 'EE_DcSource1' NA
// 'EE_DcSource2' NA
- 'EE_Vss' : 'verticalLabelPosition=top;verticalAlign=bottom;shape=mxgraph.electrical.signal_sources.vss2;fontSize=24;',
- 'EE_Vdd' : 'verticalLabelPosition=bottom;verticalAlign=top;shape=mxgraph.electrical.signal_sources.vdd;',
+ 'EE_Vss' : s + 'electrical.signal_sources.vss2;verticalLabelPosition=top;verticalAlign=bottom;fontSize=24;',
+ 'EE_Vdd' : s + 'electrical.signal_sources.vdd;verticalLabelPosition=bottom;verticalAlign=top;',
//Transistors
- 'EE_BJT_NPN1' : 'shape=mxgraph.electrical.transistors.pnp_transistor_1;',
- 'EE_BJT_PNP1' : 'shape=mxgraph.electrical.transistors.npn_transistor_1;',
- 'EE_JFET_P' : 'shape=mxgraph.electrical.transistors.p-channel_jfet_1;flipV=1;',
- 'EE_JFET_N' : 'shape=mxgraph.electrical.transistors.n-channel_jfet_1;',
- 'EE_MOSFET_P1' : 'shape=mxgraph.electrical.mosfets1.mosfet_ic_p;flipV=1;',
- 'EE_MOSFET_P2' : 'shape=mxgraph.electrical.mosfets1.mosfet_p_no_bulk;',
- 'EE_MOSFET_P3' : 'shape=mxgraph.electrical.mosfets1.p-channel_mosfet_1;flipV=1;',
- 'EE_MOSFET_N1' : 'shape=mxgraph.electrical.mosfets1.mosfet_ic_n;',
- 'EE_MOSFET_N2' : 'shape=mxgraph.electrical.mosfets1.mosfet_n_no_bulk;',
- 'EE_MOSFET_N3' : 'shape=mxgraph.electrical.mosfets1.n-channel_mosfet_1;',
+ 'EE_BJT_NPN1' : s + 'electrical.transistors.pnp_transistor_1;',
+ 'EE_BJT_PNP1' : s + 'electrical.transistors.npn_transistor_1;',
+ 'EE_JFET_P' : s + 'electrical.transistors.p-channel_jfet_1;flipV=1;',
+ 'EE_JFET_N' : s + 'electrical.transistors.n-channel_jfet_1;',
+ 'EE_MOSFET_P1' : s + 'electrical.mosfets1.mosfet_ic_p;flipV=1;',
+ 'EE_MOSFET_P2' : s + 'electrical.mosfets1.mosfet_p_no_bulk;',
+ 'EE_MOSFET_P3' : s + 'electrical.mosfets1.p-channel_mosfet_1;flipV=1;',
+ 'EE_MOSFET_N1' : s + 'electrical.mosfets1.mosfet_ic_n;',
+ 'EE_MOSFET_N2' : s + 'electrical.mosfets1.mosfet_n_no_bulk;',
+ 'EE_MOSFET_N3' : s + 'electrical.mosfets1.n-channel_mosfet_1;',
//Relays
// 'EE_SPST' NA
// 'EE_SPDT' NA
// 'EE_DPST' NA
// 'EE_DPDT' NA
//Logic Gates
- 'EE_AND' : 'shape=mxgraph.electrical.logic_gates.and;',
- 'EE_OR' : 'shape=mxgraph.electrical.logic_gates.or;',
- 'EE_Inverter' : 'shape=mxgraph.electrical.logic_gates.inverter;',
- 'EE_NAND' : 'shape=mxgraph.electrical.logic_gates.nand;',
- 'EE_NOR' : 'shape=mxgraph.electrical.logic_gates.nor;',
- 'EE_XOR' : 'shape=mxgraph.electrical.logic_gates.xor;',
- 'EE_NXOR' : 'shape=mxgraph.electrical.logic_gates.xnor;',
- 'EE_DTypeRSFlipFlop' : 'shape=mxgraph.electrical.logic_gates.d_type_rs_flip-flop;',
- 'EE_DTypeFlipFlop' : 'shape=mxgraph.electrical.logic_gates.d_type_flip-flop;',
- 'EE_DTypeFlipFlopWithClear' : 'shape=mxgraph.electrical.logic_gates.d_type_flip-flop_with_clear;',
- 'EE_RSLatch' : 'shape=mxgraph.electrical.logic_gates.rs_latch;',
- 'EE_SyncRSLatch' : 'shape=mxgraph.electrical.logic_gates.synchronous_rs_latch;',
- 'EE_TTypeFlipFlop' : 'shape=mxgraph.electrical.logic_gates.t_type_flip-flop;',
+ 'EE_AND' : s + 'electrical.logic_gates.and;',
+ 'EE_OR' : s + 'electrical.logic_gates.or;',
+ 'EE_Inverter' : s + 'electrical.logic_gates.inverter;',
+ 'EE_NAND' : s + 'electrical.logic_gates.nand;',
+ 'EE_NOR' : s + 'electrical.logic_gates.nor;',
+ 'EE_XOR' : s + 'electrical.logic_gates.xor;',
+ 'EE_NXOR' : s + 'electrical.logic_gates.xnor;',
+ 'EE_DTypeRSFlipFlop' : s + 'electrical.logic_gates.d_type_rs_flip-flop;',
+ 'EE_DTypeFlipFlop' : s + 'electrical.logic_gates.d_type_flip-flop;',
+ 'EE_DTypeFlipFlopWithClear' : s + 'electrical.logic_gates.d_type_flip-flop_with_clear;',
+ 'EE_RSLatch' : s + 'electrical.logic_gates.rs_latch;',
+ 'EE_SyncRSLatch' : s + 'electrical.logic_gates.synchronous_rs_latch;',
+ 'EE_TTypeFlipFlop' : s + 'electrical.logic_gates.t_type_flip-flop;',
//Miscellaneous
- 'EE_Plus' : 'shape=mxgraph.ios7.misc.flagged;',
+ 'EE_Plus' : s + 'ios7.misc.flagged;',
'EE_Negative' : 'shape=line;',
'EE_InverterContact' : 'shape=ellipse;',
- 'EE_Voltmeter' : 'shape=mxgraph.electrical.instruments.voltmeter;',
- 'EE_Ammeter' : 'shape=mxgraph.electrical.instruments.ampermeter;',
- 'EE_SineWave' : 'shape=mxgraph.electrical.waveforms.sine_wave;',
- 'EE_Sawtooth' : 'shape=mxgraph.electrical.waveforms.sawtooth;',
- 'EE_SquareWave' : 'shape=mxgraph.electrical.waveforms.square_wave;',
+ 'EE_Voltmeter' : s + 'electrical.instruments.voltmeter;',
+ 'EE_Ammeter' : s + 'electrical.instruments.ampermeter;',
+ 'EE_SineWave' : s + 'electrical.waveforms.sine_wave;',
+ 'EE_Sawtooth' : s + 'electrical.waveforms.sawtooth;',
+ 'EE_SquareWave' : s + 'electrical.waveforms.square_wave;',
//Messaging Systems
- 'EIChannelBlock' : 'shape=mxgraph.eip.messageChannel;',
+ 'EIChannelBlock' : s + 'eip.messageChannel;',
// 'EIMessageChannelBlock' NA
// 'EIMessageBlock' EXT
- 'EIMessageRouterBlock' : 'shape=mxgraph.eip.content_based_router;',
- 'EIMessageTranslatorBlock' : 'shape=mxgraph.eip.message_translator;',
+ 'EIMessageRouterBlock' : s + 'eip.content_based_router;',
+ 'EIMessageTranslatorBlock' : s + 'eip.message_translator;',
// 'EIMessageEndpointBlock' EXT
//Messaging Channels
// 'EIPublishSubscribeChannelBlock' NA
@@ -924,7 +1057,7 @@
// 'EIDeadLetterChannelBlock' NA
// 'EIGuaranteedDeliveryBlock' NA
// 'EIChannelAdapterBlock' NA
- 'EIMessagingBridgeBlock' : 'shape=mxgraph.eip.messaging_bridge;',
+ 'EIMessagingBridgeBlock' : s + 'eip.messaging_bridge;',
// 'EIMessageBusBlock' NA
//Message Construction
// 'EICommandMessageBlock' EXT
@@ -937,55 +1070,55 @@
// 'EIMessageSequenceBlock' NA
// 'EIMessageExpirationBlock' NA
//Message Routing
- 'EIContentBasedRouterBlock' : 'shape=mxgraph.eip.content_based_router;',
- 'EIMessageFilterBlock' : 'shape=mxgraph.eip.message_filter;',
- 'EIDynamicRouterBlock' : 'shape=mxgraph.eip.dynamic_router;',
- 'EIRecipientListBlock' : 'shape=mxgraph.eip.recipient_list;',
- 'EISplitterBlock' : 'shape=mxgraph.eip.splitter;',
- 'EIAggregatorBlock' : 'shape=mxgraph.eip.aggregator;',
- 'EIResequencerBlock' : 'shape=mxgraph.eip.resequencer;',
- 'EIComposedMessageBlock' : 'shape=mxgraph.eip.composed_message_processor;',
- 'EIRoutingSlipBlock' : 'shape=mxgraph.eip.routing_slip;',
- 'EIProcessManagerBlock' : 'shape=mxgraph.eip.process_manager;',
+ 'EIContentBasedRouterBlock' : s + 'eip.content_based_router;',
+ 'EIMessageFilterBlock' : s + 'eip.message_filter;',
+ 'EIDynamicRouterBlock' : s + 'eip.dynamic_router;',
+ 'EIRecipientListBlock' : s + 'eip.recipient_list;',
+ 'EISplitterBlock' : s + 'eip.splitter;',
+ 'EIAggregatorBlock' : s + 'eip.aggregator;',
+ 'EIResequencerBlock' : s + 'eip.resequencer;',
+ 'EIComposedMessageBlock' : s + 'eip.composed_message_processor;',
+ 'EIRoutingSlipBlock' : s + 'eip.routing_slip;',
+ 'EIProcessManagerBlock' : s + 'eip.process_manager;',
// 'EIMessageBrokerBlock' EXT
//Message Transformation
- 'EIEnvelopeWrapperBlock' : 'shape=mxgraph.eip.envelope_wrapper;',
- 'EIContentEnricherBlock' : 'shape=mxgraph.eip.content_enricher;',
- 'EIContentFilterBlock' : 'shape=mxgraph.eip.content_filter;',
- 'EIClaimCheckBlock' : 'shape=mxgraph.eip.claim_check;',
- 'EINormalizerBlock' : 'shape=mxgraph.eip.normalizer;',
+ 'EIEnvelopeWrapperBlock' : s + 'eip.envelope_wrapper;',
+ 'EIContentEnricherBlock' : s + 'eip.content_enricher;',
+ 'EIContentFilterBlock' : s + 'eip.content_filter;',
+ 'EIClaimCheckBlock' : s + 'eip.claim_check;',
+ 'EINormalizerBlock' : s + 'eip.normalizer;',
//Messaging Endpoints
- 'EIMessagingGatewayBlock' : 'shape=mxgraph.eip.messaging_gateway;',
- 'EITransactionalClientBlock' : 'shape=mxgraph.eip.transactional_client;',
- 'EIPollingConsumerBlock' : 'shape=mxgraph.eip.polling_consumer;',
- 'EIEventDrivenConsumerBlock' : 'shape=mxgraph.eip.event_driven_consumer;',
- 'EICompetingConsumersBlock' : 'shape=mxgraph.eip.competing_consumers;',
- 'EIMessageDispatcherBlock' : 'shape=mxgraph.eip.message_dispatcher;',
- 'EISelectiveConsumerBlock' : 'shape=mxgraph.eip.selective_consumer;',
+ 'EIMessagingGatewayBlock' : s + 'eip.messaging_gateway;',
+ 'EITransactionalClientBlock' : s + 'eip.transactional_client;',
+ 'EIPollingConsumerBlock' : s + 'eip.polling_consumer;',
+ 'EIEventDrivenConsumerBlock' : s + 'eip.event_driven_consumer;',
+ 'EICompetingConsumersBlock' : s + 'eip.competing_consumers;',
+ 'EIMessageDispatcherBlock' : s + 'eip.message_dispatcher;',
+ 'EISelectiveConsumerBlock' : s + 'eip.selective_consumer;',
// 'EIDurableSubscriberBlock' NA
- 'EIServiceActivatorBlock' : 'shape=mxgraph.eip.service_activator;',
+ 'EIServiceActivatorBlock' : s + 'eip.service_activator;',
//System Management
// 'EIControlBusBlock' NA
- 'EIDetourBlock' : 'shape=mxgraph.eip.detour;',
- 'EIWireTapBlock' : 'shape=mxgraph.eip.wire_tap;',
+ 'EIDetourBlock' : s + 'eip.detour;',
+ 'EIWireTapBlock' : s + 'eip.wire_tap;',
// 'EIMessageHistoryBlock' EXT
- 'EIMessageStoreBlock' : 'shape=mxgraph.eip.message_store;',
- 'EISmartProxyBlock' : 'shape=mxgraph.eip.smart_proxy;',
- 'EITestMessageBlock' : 'shape=mxgraph.eip.test_message;',
- 'EIChannelPurgerBlock' : 'shape=mxgraph.eip.channel_purger;',
+ 'EIMessageStoreBlock' : s + 'eip.message_store;',
+ 'EISmartProxyBlock' : s + 'eip.smart_proxy;',
+ 'EITestMessageBlock' : s + 'eip.test_message;',
+ 'EIChannelPurgerBlock' : s + 'eip.channel_purger;',
//Equation
// 'Equation' EXT
//Walls
'fpWall' : 'shape=rect;',
//Rooms
//Doors & Windows
- 'fpWindow' : 'shape=mxgraph.floorplan.window;',
+ 'fpWindow' : s + 'floorplan.window;',
'fpOpening' : 'shape=rect;',
- 'fpDoor' : 'shape=mxgraph.floorplan.doorLeft;flipV=1;', //EXT
- 'fpDoubleDoor' : 'shape=mxgraph.floorplan.doorDouble;flipV=1;', //EXT
+ 'fpDoor' : s + 'floorplan.doorLeft;flipV=1;', //EXT
+ 'fpDoubleDoor' : s + 'floorplan.doorDouble;flipV=1;', //EXT
//Stairs
- 'fpStairs' : 'shape=mxgraph.floorplan.stairs;direction=north;',
- 'fpStairsDirectional' : 'shape=mxgraph.floorplan.stairs;direction=north;',
+ 'fpStairs' : s + 'floorplan.stairs;direction=north;',
+ 'fpStairsDirectional' : s + 'floorplan.stairs;direction=north;',
// 'fpStairsCurved' EXT
// 'fpStairsCurvedWide' EXT
//Desks
@@ -993,30 +1126,30 @@
'fpDeskLongSegment' : 'shape=rect;',
'fpDeskShortSegment' : 'shape=rect;rounded=1;',
// 'fpDeskSmallCornerSegment' NA
- 'fpDeskLargeCornerSegment' : 'shape=mxgraph.floorplan.desk_corner;',
+ 'fpDeskLargeCornerSegment' : s + 'floorplan.desk_corner;',
// 'fpDeskMediumCornerSegment' NA
// 'fpDeskRoundedLSegment' NA
// 'fpDeskRoundedCornerSegment' NA
//Cubicle walls
- 'fpCubiclePanel' : 'shape=mxgraph.floorplan.wall;wallThickness=3;',
- 'fpCubicleWorkstation' : 'shape=mxgraph.floorplan.wallU;wallThickness=3;',
- 'fpCubicleCorner5x5' : 'shape=mxgraph.floorplan.wallCorner;wallThickness=3;',
- 'fpCubicleCorner6x6' : 'shape=mxgraph.floorplan.wallCorner;wallThickness=3;',
- 'fpCubicleCorner8x8' : 'shape=mxgraph.floorplan.wallCorner;wallThickness=3;',
- 'fpCubicleCorner8x6' : 'shape=mxgraph.floorplan.wallCorner;wallThickness=3;',
- 'fpCubicleCornerOpen6x4' : 'shape=mxgraph.floorplan.wallCorner;wallThickness=3;',
- 'fpCubicleDouble14x8' : 'shape=mxgraph.floorplan.wallU;wallThickness=3;',
- 'fpCubicleEnclosed11x9' : 'shape=mxgraph.floorplan.wallU;wallThickness=3;',
+ 'fpCubiclePanel' : s + 'floorplan.wall;wallThickness=3;',
+ 'fpCubicleWorkstation' : s + 'floorplan.wallU;wallThickness=3;',
+ 'fpCubicleCorner5x5' : s + 'floorplan.wallCorner;wallThickness=3;',
+ 'fpCubicleCorner6x6' : s + 'floorplan.wallCorner;wallThickness=3;',
+ 'fpCubicleCorner8x8' : s + 'floorplan.wallCorner;wallThickness=3;',
+ 'fpCubicleCorner8x6' : s + 'floorplan.wallCorner;wallThickness=3;',
+ 'fpCubicleCornerOpen6x4' : s + 'floorplan.wallCorner;wallThickness=3;',
+ 'fpCubicleDouble14x8' : s + 'floorplan.wallU;wallThickness=3;',
+ 'fpCubicleEnclosed11x9' : s + 'floorplan.wallU;wallThickness=3;',
//Tables & Chairs
'fpTableConferenceOval' : 'shape=ellipse;',
'fpTableConferenceBoat' : 'shape=rect;rounded=1;',
'fpTableConferenceRectangle' : 'shape=rect;rounded=1;',
'fpTableDiningRound' : 'shape=ellipse;',
'fpTableDiningSquare' : 'shape=rect;rounded=1;',
- 'fpChairOffice' : 'shape=mxgraph.floorplan.office_chair;',
- 'fpChairExecutive' : 'shape=mxgraph.floorplan.office_chair;',
- 'fpChairLobby' : 'shape=mxgraph.floorplan.office_chair;',
- 'fpChairDining' : 'shape=mxgraph.floorplan.chair;',
+ 'fpChairOffice' : s + 'floorplan.office_chair;',
+ 'fpChairExecutive' : s + 'floorplan.office_chair;',
+ 'fpChairLobby' : s + 'floorplan.office_chair;',
+ 'fpChairDining' : s + 'floorplan.chair;',
'fpChairBarstool' : 'shape=ellipse;',
//Cubicles - Prebuilt
//Tables - Prebuilt
@@ -1030,31 +1163,31 @@
'fpCabinetBasicWithShelves' : 'shape=rect;rounded=1;',
'fpCabinetsAboveDeskShelves' : 'shape=rect;rounded=1;',
//Restroom
- 'fpRestroomToiletPrivate' : 'shape=mxgraph.floorplan.toilet;',
- 'fpRestroomToiletPublic' : 'shape=mxgraph.floorplan.toilet;',
+ 'fpRestroomToiletPrivate' : s + 'floorplan.toilet;',
+ 'fpRestroomToiletPublic' : s + 'floorplan.toilet;',
// 'fpRestroomBidet' NA
// 'fpRestroomLights' EXT
// 'fpRestroomSinks' EXT
// 'fpRestroomGrabBar' NA
- 'fpRestroomBathtub' : 'shape=mxgraph.floorplan.bathtub;direction=south;',
- 'fpRestroomShower' : 'shape=mxgraph.floorplan.shower;flipH=1;',
+ 'fpRestroomBathtub' : s + 'floorplan.bathtub;direction=south;',
+ 'fpRestroomShower' : s + 'floorplan.shower;flipH=1;',
// 'fpRestroomCornerSink' NA
- 'fpRestroomPedastalSink' : 'shape=mxgraph.floorplan.sink_1;',
+ 'fpRestroomPedastalSink' : s + 'floorplan.sink_1;',
'fpRestroomCountertop' : 'shape=rect;rounded=1;',
'fpRestroomMirror' : 'shape=line;strokeWidth=3;',
// 'fpDresserOrnateMirror' NA
// 'fpRestroomToiletPaper' NA
// 'fpRestroomStalls' NA
//Beds
- 'fpBedDouble' : 'shape=mxgraph.floorplan.bed_double;',
- 'fpBedSingle' : 'shape=mxgraph.floorplan.bed_single;',
- 'fpBedQueen' : 'shape=mxgraph.floorplan.bed_double;',
- 'fpBedKing' : 'shape=mxgraph.floorplan.bed_double;',
- 'fpBedDoubleWithTrundle' : 'shape=mxgraph.floorplan.bed_double;',
- 'fpBedBunk' : 'shape=mxgraph.floorplan.bed_double;',
+ 'fpBedDouble' : s + 'floorplan.bed_double;',
+ 'fpBedSingle' : s + 'floorplan.bed_single;',
+ 'fpBedQueen' : s + 'floorplan.bed_double;',
+ 'fpBedKing' : s + 'floorplan.bed_double;',
+ 'fpBedDoubleWithTrundle' : s + 'floorplan.bed_double;',
+ 'fpBedBunk' : s + 'floorplan.bed_double;',
// 'fpBedBunkL' NA
// 'fpBedCrib' NA
- 'fpBedBassinet' : 'shape=mxgraph.pid.fittings.compensator;',
+ 'fpBedBassinet' : s + 'pid.fittings.compensator;',
//Dressers
// 'fpDresserChest' NA
// 'fpDresserMirrorDresser' NA
@@ -1065,47 +1198,47 @@
'fpApplianceDryer' : 'shape=rect;',
'fpApplianceWaterHeater' : 'shape=ellipse;',
// 'fpApplianceRefrigerator' NA
- 'fpApplianceStoveOven' : 'shape=mxgraph.floorplan.range_1;',
- 'fpStoveOvenSixBurner' : 'shape=mxgraph.floorplan.range_2;',
+ 'fpApplianceStoveOven' : s + 'floorplan.range_1;',
+ 'fpStoveOvenSixBurner' : s + 'floorplan.range_2;',
'fpApplianceDishwasher' : 'shape=rect;',
//Kitchen
- 'fpKitchenSink' : 'shape=mxgraph.floorplan.sink_2;',
- 'fpKitchenDoubleSink' : 'shape=mxgraph.floorplan.sink_double;',
+ 'fpKitchenSink' : s + 'floorplan.sink_2;',
+ 'fpKitchenDoubleSink' : s + 'floorplan.sink_double;',
'fpKitchenCountertop' : 'shape=rect;rounded=1;',
- 'fpKitchenCountertopCorner' : 'shape=mxgraph.floorplan.desk_corner;',
+ 'fpKitchenCountertopCorner' : s + 'floorplan.desk_corner;',
//Couches
- 'fpCouchLoveSeat' : 'shape=mxgraph.floorplan.couch;',
- 'fpCouchSofa' : 'shape=mxgraph.floorplan.couch;',
+ 'fpCouchLoveSeat' : s + 'floorplan.couch;',
+ 'fpCouchSofa' : s + 'floorplan.couch;',
// 'fpCouchSectional' NA
'fpCouchOttoman' : 'shape=rect;rounded=1;',
// 'fpCouchPillow' NA
//Technology
- 'fpMiscDesktopComputer' : 'shape=mxgraph.floorplan.workstation;',
- 'fpMiscLaptopComputer' : 'shape=mxgraph.floorplan.laptop;',
- 'fpComputerMonitor' : 'shape=mxgraph.floorplan.flat_tv;',
- 'fpCRTTelevision' : 'shape=mxgraph.floorplan.flat_tv;',
+ 'fpMiscDesktopComputer' : s + 'floorplan.workstation;',
+ 'fpMiscLaptopComputer' : s + 'floorplan.laptop;',
+ 'fpComputerMonitor' : s + 'floorplan.flat_tv;',
+ 'fpCRTTelevision' : s + 'floorplan.flat_tv;',
// 'fpMiscProjector' NA
// 'fpMiscProjectorScreen' NA
//Misc Floorplan
- 'fpMiscIndoorPlant' : 'shape=mxgraph.floorplan.plant;',
+ 'fpMiscIndoorPlant' : s + 'floorplan.plant;',
// 'fpMiscPodium' NA
- 'fpPiano' : 'shape=mxgraph.floorplan.piano;',
+ 'fpPiano' : s + 'floorplan.piano;',
// 'fpPianoBench' : 'shape=rect;rounded=1;',
//Equipment
- 'PEAxialCompressor' : 'shape=mxgraph.pid.compressors.centrifugal_compressor_-_turbine_driven;',
- 'PECentrifugalCompressor' : 'shape=mxgraph.pid.compressors.centrifugal_compressor',
- 'PECentrifugalCompressor2' : 'shape=mxgraph.pid.compressors.centrifugal_compressor_-_turbine_driven;',
+ 'PEAxialCompressor' : s + 'pid.compressors.centrifugal_compressor_-_turbine_driven;',
+ 'PECentrifugalCompressor' : s + 'pid.compressors.centrifugal_compressor',
+ 'PECentrifugalCompressor2' : s + 'pid.compressors.centrifugal_compressor_-_turbine_driven;',
// 'PECentrifugalCompressor3' NA
- 'PEReciprocationCompressor' : 'shape=mxgraph.pid.compressors.reciprocating_compressor;',
- 'PERotaryCompressorBlock' : 'shape=mxgraph.pid.compressors.rotary_compressor;',
- 'PERotaryCompressor2Block' : 'shape=mxgraph.pid.compressors.compressor_and_silencers;',
- 'PEConveyorBlock' : 'shape=mxgraph.pid2misc.conveyor;',
+ 'PEReciprocationCompressor' : s + 'pid.compressors.reciprocating_compressor;',
+ 'PERotaryCompressorBlock' : s + 'pid.compressors.rotary_compressor;',
+ 'PERotaryCompressor2Block' : s + 'pid.compressors.compressor_and_silencers;',
+ 'PEConveyorBlock' : s + 'pid2misc.conveyor;',
// 'PEOverheadConveyorBlock' NA
// 'PEScraperConveyorBlock' NA
// 'PEScrewConveyorBlock' NA
// 'PEPositiveDisplacementBlock' NA
// 'PEPositiveDisplacement2' NA
- 'PEElevator1Block' : 'shape=mxgraph.pid.misc.bucket_elevator;flipH=1;',
+ 'PEElevator1Block' : s + 'pid.misc.bucket_elevator;flipH=1;',
// 'PEElevator2Block' NA
// 'PEHoistBlock' NA
// 'PESkipHoistBlock' NA
@@ -1115,9 +1248,9 @@
// 'PELiquidRingVacuumBlock' NA
// 'PETurbineDriverBlock' NA
// 'PEDoubleFlowTurbineBlock' NA
- 'PEAgitatorMixerBlock' : 'shape=mxgraph.pid.agitators.agitator_(propeller);',
- 'PEDrumBlock' : 'shape=mxgraph.pid.vessels.drum_or_condenser;',
- 'PETankEquipmentBlock' : 'mxgraph.pid.vessels.tank;',
+ 'PEAgitatorMixerBlock' : s + 'pid.agitators.agitator_(propeller);',
+ 'PEDrumBlock' : s + 'pid.vessels.drum_or_condenser;',
+ 'PETankEquipmentBlock' : s + 'pid.vessels.tank;',
// 'PECentrifugalBlower' NA
// 'PEAlkylationBlock' NA
// 'PEBoomLoaderBlock' NA
@@ -1126,156 +1259,156 @@
// 'PEFluidizedReactorBlock' NA
// 'PETubularBlock' NA
// 'PEReformerBlock' NA
- 'PEMixingReactorBlock' : 'shape=mxgraph.pid.vessels.mixing_reactor;',
+ 'PEMixingReactorBlock' : s + 'pid.vessels.mixing_reactor;',
// 'PEHydrodesulferizationBlock' NA
// 'PEHydrocrackingBlock' NA
- 'PEPlateTowerBlock' : 'shape=mxgraph.pid2misc.column;columnType=baffle;',
- 'PEPackedTowerBlock' : 'shape=mxgraph.pid2misc.column;columnType=fixed;',
+ 'PEPlateTowerBlock' : s + 'pid2misc.column;columnType=baffle;',
+ 'PEPackedTowerBlock' : s + 'pid2misc.column;columnType=fixed;',
// 'PEAutomaticStokerBlock' NA
// 'PEOilBurnerBlock' NA
// 'PECounterflowForcedDraftBlock' NA
// 'PECounterflowNaturalDraftBlock' NA
// 'PECrossflowInductedBlock' NA
- 'PEFurnaceBlock' : 'shape=mxgraph.pid.vessels.furnace;',
+ 'PEFurnaceBlock' : s + 'pid.vessels.furnace;',
// 'PEChimneyTowerBlock' NA
//Piping
// 'PEOneToMany' EXT
// 'PEMultilines' EXT
'PEMidArrow' : 'shape=triangle;',
- 'PEButtWeld' : 'shape=mxgraph.sysml.x;',
- 'PETopToTop' : 'shape=mxgraph.pid.vessels.container,_tank,_cistern;',
+ 'PEButtWeld' : s + 'sysml.x;',
+ 'PETopToTop' : s + 'pid.vessels.container,_tank,_cistern;',
// 'PESonicSignal' NA
- 'PENuclear' : 'shape=mxgraph.electrical.waveforms.sine_wave;',
+ 'PENuclear' : s + 'electrical.waveforms.sine_wave;',
// 'PEPneumatic' NA
// 'PEHydraulicSignalLine' NA
'PEMechanicalLink' : 'shape=ellipse;',
'PESolderedSolvent' : 'shape=ellipse;',
'PEDoubleContainment' : 'shape=hexagon;',
- 'PEFlange' : 'shape=mxgraph.pid.piping.double_flange;',
- 'PEFlange2' : 'shape=mxgraph.pid.piping.flange_in;flipH=1;',
- 'PEEndCap' : 'shape=mxgraph.pid.piping.cap;',
- 'PEEndCap2' : 'shape=mxgraph.pid.vessels.container,_tank,_cistern;direction=north;',
- 'PEBreather' : 'shape=mxgraph.pid.piping.breather;',
- 'PEElectronicallyInsulated' : 'shape=mxgraph.pid.piping.double_flange;',
- 'PEReducer' : 'shape=mxgraph.pid.piping.concentric_reducer;',
- 'PEInlineMixer' : 'shape=mxgraph.pid.piping.in-line_mixer;',
+ 'PEFlange' : s + 'pid.piping.double_flange;',
+ 'PEFlange2' : s + 'pid.piping.flange_in;flipH=1;',
+ 'PEEndCap' : s + 'pid.piping.cap;',
+ 'PEEndCap2' : s + 'pid.vessels.container,_tank,_cistern;direction=north;',
+ 'PEBreather' : s + 'pid.piping.breather;',
+ 'PEElectronicallyInsulated' : s + 'pid.piping.double_flange;',
+ 'PEReducer' : s + 'pid.piping.concentric_reducer;',
+ 'PEInlineMixer' : s + 'pid.piping.in-line_mixer;',
// 'PESeparator' NA
// 'PEBurstingDisc' NA
- 'PEFlameArrester' : 'shape=mxgraph.pid.piping.flame_arrestor;',
+ 'PEFlameArrester' : s + 'pid.piping.flame_arrestor;',
// 'PEFlameArrester2' NA
- 'PEDetonationArrester' : 'shape=mxgraph.pid.piping.detonation_arrestor;',
+ 'PEDetonationArrester' : s + 'pid.piping.detonation_arrestor;',
// 'PEDrainSilencer' NA
'PETriangleSeparator' : 'shape=triangle;direction=west;',
// 'PETriangleSeparator2' NA
- 'PETundish' : 'shape=mxgraph.ios7.misc.left;',
- 'PEOpenVent' : 'shape=mxgraph.pid.vessels.vent_(bent);',
+ 'PETundish' : s + 'ios7.misc.left;',
+ 'PEOpenVent' : s + 'pid.vessels.vent_(bent);',
// 'PESiphonDrain' NA
- 'PERemovableSpool' : 'shape=mxgraph.pid.piping.removable_spool;',
- 'PEYTypeStrainer' : 'shape=mxgraph.pid.piping.y-type_strainer;',
- 'PEDiverterValve' : 'shape=mxgraph.pid.piping.diverter_valve;',
- 'PEPulsationDampener' : 'shape=mxgraph.pid.piping.pulsation_dampener;',
- 'PEDuplexStrainer' : 'shape=mxgraph.pid.piping.duplex_strainer;',
- 'PEBasketStrainer' : 'shape=mxgraph.pid.piping.basket_strainer;',
- 'PEVentSilencer' : 'shape=mxgraph.pid.piping.vent_silencer;',
- 'PEInlineSilencer' : 'shape=mxgraph.pid.piping.in-line_silencer;',
- 'PESteamTrap' : 'shape=mxgraph.pid.piping.steam_trap;',
- 'PEDesuperheater' : 'shape=mxgraph.pid.piping.desuper_heater;',
- 'PEEjectorOrEductor' : 'shape=mxgraph.pid.fittings.injector;',
- 'PEExhaustHead' : 'shape=mxgraph.pid.piping.exhaust_head;',
- 'PERotaryValve' : 'shape=mxgraph.pid.piping.rotary_valve;',
- 'PEExpansionJoint' : 'shape=mxgraph.pid.piping.expansion_joint;',
+ 'PERemovableSpool' : s + 'pid.piping.removable_spool;',
+ 'PEYTypeStrainer' : s + 'pid.piping.y-type_strainer;',
+ 'PEDiverterValve' : s + 'pid.piping.diverter_valve;',
+ 'PEPulsationDampener' : s + 'pid.piping.pulsation_dampener;',
+ 'PEDuplexStrainer' : s + 'pid.piping.duplex_strainer;',
+ 'PEBasketStrainer' : s + 'pid.piping.basket_strainer;',
+ 'PEVentSilencer' : s + 'pid.piping.vent_silencer;',
+ 'PEInlineSilencer' : s + 'pid.piping.in-line_silencer;',
+ 'PESteamTrap' : s + 'pid.piping.steam_trap;',
+ 'PEDesuperheater' : s + 'pid.piping.desuper_heater;',
+ 'PEEjectorOrEductor' : s + 'pid.fittings.injector;',
+ 'PEExhaustHead' : s + 'pid.piping.exhaust_head;',
+ 'PERotaryValve' : s + 'pid.piping.rotary_valve;',
+ 'PEExpansionJoint' : s + 'pid.piping.expansion_joint;',
//Vessels
'PEVesselBlock' : 'shape=rect;', //EXT
- 'PEOpenTankBlock' : 'shape=mxgraph.pid.vessels.container,_tank,_cistern;', //EXT
+ 'PEOpenTankBlock' : s + 'pid.vessels.container,_tank,_cistern;', //EXT
// 'PEOpenTopTank' NA
'PEClosedTankBlock' : 'shape=rect;', //EXT
- 'PEStorageSphereBlock' : 'shape=mxgraph.pid.vessels.storage_sphere;',
- 'PEColumnBlock' : 'shape=mxgraph.pid.vessels.pressurized_vessel;', //EXT
- 'PEBagBlock' : 'shape=mxgraph.pid.vessels.bag;',
- 'PEGasCylinderBlock' : 'shape=mxgraph.pid.vessels.gas_bottle;',
- 'PEGasHolderBlock' : 'shape=mxgraph.pid.vessels.gas_holder;',
- 'PEClarifierBlock' : 'shape=mxgraph.pid.vessels.bunker_(conical_bottom);',
+ 'PEStorageSphereBlock' : s + 'pid.vessels.storage_sphere;',
+ 'PEColumnBlock' : s + 'pid.vessels.pressurized_vessel;', //EXT
+ 'PEBagBlock' : s + 'pid.vessels.bag;',
+ 'PEGasCylinderBlock' : s + 'pid.vessels.gas_bottle;',
+ 'PEGasHolderBlock' : s + 'pid.vessels.gas_holder;',
+ 'PEClarifierBlock' : s + 'pid.vessels.bunker_(conical_bottom);',
// 'PETankBlock' NA
- 'PETrayColumnBlock' : 'shape=mxgraph.pid2misc.column;columnType=tray;',
- 'PEReactionVesselBlock' : 'shape=mxgraph.pid.vessels.reactor;',
- 'PEBin' : 'shape=mxgraph.pid.vessels.tank_(conical_bottom);',
- 'PEDomeRoofTank' : 'shape=mxgraph.pid.vessels.tank_(dished_roof);',
- 'PEConeRoofTank' : 'shape=mxgraph.pid.vessels.tank_(conical_roof);',
+ 'PETrayColumnBlock' : s + 'pid2misc.column;columnType=tray;',
+ 'PEReactionVesselBlock' : s + 'pid.vessels.reactor;',
+ 'PEBin' : s + 'pid.vessels.tank_(conical_bottom);',
+ 'PEDomeRoofTank' : s + 'pid.vessels.tank_(dished_roof);',
+ 'PEConeRoofTank' : s + 'pid.vessels.tank_(conical_roof);',
// 'PEInternalFloatingRoof' NA
// 'PEDoubleWallTank' NA
// 'PEOnionTank' NA
//Heat Exchangers
- 'PEBoilerBlock' : 'shape=mxgraph.pid.misc.boiler_(dome);',
- 'PEEquipmentBoilerBlock' : 'shape=mxgraph.pid.misc.boiler_(dome);',
- 'PEReboilerBlock' : 'shape=mxgraph.pid.heat_exchangers.reboiler;',
- 'PECondenserBlock' : 'shape=mxgraph.pid.heat_exchangers.heat_exchanger_(straight_tubes);',
- 'PEEquipmentCondenserBlock' : 'shape=mxgraph.pid.heat_exchangers.condenser;',
+ 'PEBoilerBlock' : s + 'pid.misc.boiler_(dome);',
+ 'PEEquipmentBoilerBlock' : s + 'pid.misc.boiler_(dome);',
+ 'PEReboilerBlock' : s + 'pid.heat_exchangers.reboiler;',
+ 'PECondenserBlock' : s + 'pid.heat_exchangers.heat_exchanger_(straight_tubes);',
+ 'PEEquipmentCondenserBlock' : s + 'pid.heat_exchangers.condenser;',
// 'PEEvaporativeCondenserBlock' NA
- 'PECoolingTowerBlock' : 'shape=mxgraph.pid.misc.cooling_tower;',
- 'PEHeatExchangerBlock' : 'shape=mxgraph.pid.heat_exchangers.shell_and_tube_heat_exchanger_1;',
+ 'PECoolingTowerBlock' : s + 'pid.misc.cooling_tower;',
+ 'PEHeatExchangerBlock' : s + 'pid.heat_exchangers.shell_and_tube_heat_exchanger_1;',
// 'PEAirCooledExchangerBlock' NA
- 'PEHairpinExchangerBlock' : 'shape=mxgraph.pid.heat_exchangers.hairpin_exchanger;',
- 'PEPlateAndFrameHeatExchangerBlock' : 'shape=mxgraph.pid.heat_exchangers.plate_and_frame_heat_exchanger;',
- 'PESpiralHeatExchanger' : 'shape=mxgraph.pid.heat_exchangers.spiral_heat_exchanger;',
- 'PEUTubeHeatExchangerBlock' : 'shape=mxgraph.pid.heat_exchangers.u-tube_heat_exchanger;',
- 'PEDoublePipeHeatBlock' : 'shape=mxgraph.pid.heat_exchangers.double_pipe_heat_exchanger;',
- 'PEShellAndTubeHeat1Block' : 'shape=mxgraph.pid.heat_exchangers.shell_and_tube_heat_exchanger_1;',
- 'PEShellAndTubeHeat2Block' : 'shape=mxgraph.pid.heat_exchangers.shell_and_tube_heat_exchanger_2;',
- 'PEShellAndTubeHeat3Block' : 'shape=mxgraph.pid.heat_exchangers.shell_and_tube_heat_exchanger_1;direction=north;',
- 'PESinglePassHeatBlock' : 'shape=mxgraph.pid.heat_exchangers.single_pass_heat_exchanger;',
- 'PEHeaterBlock' : 'shape=mxgraph.pid.heat_exchangers.heater;',
+ 'PEHairpinExchangerBlock' : s + 'pid.heat_exchangers.hairpin_exchanger;',
+ 'PEPlateAndFrameHeatExchangerBlock' : s + 'pid.heat_exchangers.plate_and_frame_heat_exchanger;',
+ 'PESpiralHeatExchanger' : s + 'pid.heat_exchangers.spiral_heat_exchanger;',
+ 'PEUTubeHeatExchangerBlock' : s + 'pid.heat_exchangers.u-tube_heat_exchanger;',
+ 'PEDoublePipeHeatBlock' : s + 'pid.heat_exchangers.double_pipe_heat_exchanger;',
+ 'PEShellAndTubeHeat1Block' : s + 'pid.heat_exchangers.shell_and_tube_heat_exchanger_1;',
+ 'PEShellAndTubeHeat2Block' : s + 'pid.heat_exchangers.shell_and_tube_heat_exchanger_2;',
+ 'PEShellAndTubeHeat3Block' : s + 'pid.heat_exchangers.shell_and_tube_heat_exchanger_1;direction=north;',
+ 'PESinglePassHeatBlock' : s + 'pid.heat_exchangers.single_pass_heat_exchanger;',
+ 'PEHeaterBlock' : s + 'pid.heat_exchangers.heater;',
//Pumps
- 'PEEjectorInjectorBlock' : 'shape=mxgraph.pid.fittings.injector;',
- 'PECompressorTurbineBlock' : 'shape=mxgraph.pid.engines.turbine;flipH=1;', //EXT
+ 'PEEjectorInjectorBlock' : s + 'pid.fittings.injector;',
+ 'PECompressorTurbineBlock' : s + 'pid.engines.turbine;flipH=1;', //EXT
// 'PEMotorDrivenTurbineBlock' NA
- 'PETripleFanBlades2Block' : 'shape=mxgraph.pid2misc.fan;fanType=common;',
- 'PEFanBlades2Block' : 'shape=mxgraph.pid2misc.fan;fanType=common;', //EXT
- 'PECentrifugalPumpBlock' : 'shape=mxgraph.pid.pumps.centrifugal_pump_1;', //EXT
- 'PECentrifugalPump' : 'shape=mxgraph.pid.pumps.centrifugal_pump_1;',
- 'PECentrifugalPump2' : 'shape=mxgraph.pid.pumps.centrifugal_pump_2;',
- 'PECentrifugalPump3' : 'shape=mxgraph.pid.pumps.centrifugal_pump_1;flipH=1;',
- 'PEGearPumpBlock' : 'shape=mxgraph.pid.pumps.gear_pump;',
- 'PEHorizontalPump' : 'shape=mxgraph.pid.pumps.horizontal_pump;',
- 'PEProgressiveCavityPump' : 'shape=mxgraph.pid.pumps.cavity_pump;flipH=1;flipV=1;',
- 'PEScrewPump' : 'shape=mxgraph.pid.pumps.screw_pump;',
- 'PEScrewPump2' : 'shape=mxgraph.pid.pumps.screw_pump_2;flipH=1;',
- 'PESumpPump' : 'shape=mxgraph.pid.pumps.sump_pump;',
- 'PEVacuumPump' : 'shape=mxgraph.pid.pumps.vacuum_pump;',
- 'PEVerticalPump' : 'shape=mxgraph.pid.pumps.vertical_pump;',
- 'PEVerticalPump2' : 'shape=mxgraph.pid.pumps.vertical_pump;',
+ 'PETripleFanBlades2Block' : s + 'pid2misc.fan;fanType=common;',
+ 'PEFanBlades2Block' : s + 'pid2misc.fan;fanType=common;', //EXT
+ 'PECentrifugalPumpBlock' : s + 'pid.pumps.centrifugal_pump_1;', //EXT
+ 'PECentrifugalPump' : s + 'pid.pumps.centrifugal_pump_1;',
+ 'PECentrifugalPump2' : s + 'pid.pumps.centrifugal_pump_2;',
+ 'PECentrifugalPump3' : s + 'pid.pumps.centrifugal_pump_1;flipH=1;',
+ 'PEGearPumpBlock' : s + 'pid.pumps.gear_pump;',
+ 'PEHorizontalPump' : s + 'pid.pumps.horizontal_pump;',
+ 'PEProgressiveCavityPump' : s + 'pid.pumps.cavity_pump;flipH=1;flipV=1;',
+ 'PEScrewPump' : s + 'pid.pumps.screw_pump;',
+ 'PEScrewPump2' : s + 'pid.pumps.screw_pump_2;flipH=1;',
+ 'PESumpPump' : s + 'pid.pumps.sump_pump;',
+ 'PEVacuumPump' : s + 'pid.pumps.vacuum_pump;',
+ 'PEVerticalPump' : s + 'pid.pumps.vertical_pump;',
+ 'PEVerticalPump2' : s + 'pid.pumps.vertical_pump;',
//Instruments
- 'PEIndicatorBlock' : 'shape=mxgraph.pid2inst.discInst;mounting=room;', //EXT
- 'PEIndicator2Block' : 'shape=mxgraph.pid2inst.indicator;mounting=room;indType=inst;', //EXT
- 'PEIndicator3Block' : 'shape=mxgraph.pid2inst.discInst;mounting=field;',
- 'PEIndicator4Block' : 'shape=mxgraph.pid2inst.indicator;mounting=field;indType=inst;',
+ 'PEIndicatorBlock' : s + 'pid2inst.discInst;mounting=room;', //EXT
+ 'PEIndicator2Block' : s + 'pid2inst.indicator;mounting=room;indType=inst;', //EXT
+ 'PEIndicator3Block' : s + 'pid2inst.discInst;mounting=field;',
+ 'PEIndicator4Block' : s + 'pid2inst.indicator;mounting=field;indType=inst;',
// 'PEIndicator5Block' NA
- 'PESharedIndicatorBlock' : 'shape=mxgraph.pid2inst.sharedCont;mounting=room;', //EXT
- 'PESharedIndicator2Block' : 'shape=mxgraph.pid2inst.indicator;mounting=room;indType=ctrl;', //EXT
+ 'PESharedIndicatorBlock' : s + 'pid2inst.sharedCont;mounting=room;', //EXT
+ 'PESharedIndicator2Block' : s + 'pid2inst.indicator;mounting=room;indType=ctrl;', //EXT
// 'PEComputerIndicatorBlock' NA
- 'PEProgrammableIndicatorBlock' : 'shape=mxgraph.pid2inst.progLogCont;mounting=room;', //EXT
+ 'PEProgrammableIndicatorBlock' : s + 'pid2inst.progLogCont;mounting=room;', //EXT
//Valves
- 'PEGateValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=gate;', //EXT
- 'PEGlobeValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=globe;', //EXT
- 'PEControlValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=gate;actuator=diaph;', //EXT
- 'PENeedleValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=needle;',
+ 'PEGateValveBlock' : s + 'pid2valves.valve;valveType=gate;', //EXT
+ 'PEGlobeValveBlock' : s + 'pid2valves.valve;valveType=globe;', //EXT
+ 'PEControlValveBlock' : s + 'pid2valves.valve;valveType=gate;actuator=diaph;', //EXT
+ 'PENeedleValveBlock' : s + 'pid2valves.valve;valveType=needle;',
// 'PEButterflyValveBlock' NA
- 'PEButterflyValve2Block' : 'shape=mxgraph.pid2valves.valve;valveType=butterfly;',
+ 'PEButterflyValve2Block' : s + 'pid2valves.valve;valveType=butterfly;',
// 'PEBallValveBlock' NA
- 'PEDiaphragmBlock' : 'shape=mxgraph.pid2valves.valve;valveType=ball;',
+ 'PEDiaphragmBlock' : s + 'pid2valves.valve;valveType=ball;',
// 'PEPlugValveBlock' NA
- 'PECheckValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=check;',
- 'PECheckValve2Block' : 'shape=mxgraph.pid2valves.valve;valveType=check;',
- 'PEAngleValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=angle;actuator=none;',
- 'PEAngleGlobeValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=angleGlobe;actuator=man;flipH=1;', //EXT
- 'PEPoweredValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=gate;actuator=digital;', //EXT
- 'PEFloatOperatedValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=gate;actuator=singActing;',
+ 'PECheckValveBlock' : s + 'pid2valves.valve;valveType=check;',
+ 'PECheckValve2Block' : s + 'pid2valves.valve;valveType=check;',
+ 'PEAngleValveBlock' : s + 'pid2valves.valve;valveType=angle;actuator=none;',
+ 'PEAngleGlobeValveBlock' : s + 'pid2valves.valve;valveType=angleGlobe;actuator=man;flipH=1;', //EXT
+ 'PEPoweredValveBlock' : s + 'pid2valves.valve;valveType=gate;actuator=digital;', //EXT
+ 'PEFloatOperatedValveBlock' : s + 'pid2valves.valve;valveType=gate;actuator=singActing;',
// 'PENeedleValve2Block' NA
- 'PEThreeWayValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=threeWay;actuator=none;',
+ 'PEThreeWayValveBlock' : s + 'pid2valves.valve;valveType=threeWay;actuator=none;',
// 'PEFourWayValveBlock' NA
// 'PEGaugeBlock' NA
- 'PEBleederValveBlock' : 'shape=mxgraph.pid2valves.blockBleedValve;actuator=none;',
+ 'PEBleederValveBlock' : s + 'pid2valves.blockBleedValve;actuator=none;',
// 'PEOrificeBlock' NA
- 'PERotameterBlock' : 'shape=mxgraph.pid.flow_sensors.rotameter;flipH=1;',
+ 'PERotameterBlock' : s + 'pid.flow_sensors.rotameter;flipH=1;',
//Venn Gradient
'VennGradientColor1' : 'shape=ellipse;',
'VennGradientColor2' : 'shape=ellipse;',
@@ -1295,127 +1428,127 @@
'VennPlainColor7' : 'shape=ellipse;',
'VennPlainColor8' : 'shape=ellipse;',
//iOS Devices
- 'iOS7DeviceiPhone5Portrait' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT
- 'iOS7DeviceiPhone5Landscape' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT
- 'iOS7DeviceiPadPortrait' : 'shape=mxgraph.ios.iPad;bgStyle=bgGreen;', //EXT
- 'iOS7DeviceiPadLandscape' : 'shape=mxgraph.ios.iPad;bgStyle=bgGreen;', //EXT
- 'iOS7DeviceiPhone6Portrait' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT
- 'iOS7DeviceiPhone6Landscape' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT
- 'iOS7DeviceiPhone6PlusPortrait' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT
- 'iOS7DeviceiPhone6PlusLandscape' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT
+ 'iOS7DeviceiPhone5Portrait' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT
+ 'iOS7DeviceiPhone5Landscape' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT
+ 'iOS7DeviceiPadPortrait' : s + 'ios.iPad;bgStyle=bgGreen;', //EXT
+ 'iOS7DeviceiPadLandscape' : s + 'ios.iPad;bgStyle=bgGreen;', //EXT
+ 'iOS7DeviceiPhone6Portrait' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT
+ 'iOS7DeviceiPhone6Landscape' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT
+ 'iOS7DeviceiPhone6PlusPortrait' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT
+ 'iOS7DeviceiPhone6PlusLandscape' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT
//iPhone Elements
- 'iOS7StatusBariPhone' : 'shape=mxgraph.ios7ui.appBar;',
+ 'iOS7StatusBariPhone' : s + 'ios7ui.appBar;',
// 'iOS7NavBariPhone' NA
// 'iOS7TabsiPhone' EXT
// 'iOS7iPhoneActionSheet' EXT
- 'iOS7iPhoneKeyboard' : 'shape=mxgraph.ios7.misc.keyboard_(letters);',
+ 'iOS7iPhoneKeyboard' : s + 'ios7.misc.keyboard_(letters);',
// 'iOS7TableView' EXT
//iPad Elements
- 'iOS7StatusBariPad' : 'shape=mxgraph.ios7ui.appBar;',
+ 'iOS7StatusBariPad' : s + 'ios7ui.appBar;',
// 'iOS7NavBariPad' EXT
// 'iOS7TabsiPad' EXT
// 'iOS7iPadActionSheet' EXT
- 'iOS7iPadKeyboard' : 'shape=mxgraph.ios7.misc.keyboard_(letters);',
+ 'iOS7iPadKeyboard' : s + 'ios7.misc.keyboard_(letters);',
// 'iOS7SplitView'
// 'iOS7iPadPopover'
//Common Elements
// 'iOS7AlertDialog' EXT
- 'iOS7ProgressBar' : 'shape=mxgraph.ios7ui.downloadBar;', //EXT
- 'iOS7Slider' : 'shape=mxgraph.ios7ui.searchBox;', //EXT
- 'iOS7SearchBar' : 'shape=mxgraph.ios7ui.searchBox;',
+ 'iOS7ProgressBar' : s + 'ios7ui.downloadBar;', //EXT
+ 'iOS7Slider' : s + 'ios7ui.searchBox;', //EXT
+ 'iOS7SearchBar' : s + 'ios7ui.searchBox;',
'iOS7Button' : 'shape=rect;',
'iOS7TextField' : 'shape=rect;',
'iOS7TextView' : 'shape=rect;',
// 'iOS7SegmentedControl' EXT
- 'iOS7Toggle' : 'shape=mxgraph.ios7ui.onOffButton;buttonState=on;strokeColor=#38D145;strokeColor2=#aaaaaa;fillColor=#38D145;fillColor2=#ffffff;', //EXT
- 'iOS7Stepper' : 'shape=mxgraph.ios7.misc.adjust;fillColor=#ffffff;gradientColor=none;',
- 'iOS7PageControls' : 'shape=mxgraph.ios7ui.pageControl;fillColor=#666666;strokeColor=#bbbbbb;', //EXT
+ 'iOS7Toggle' : s + 'ios7ui.onOffButton;buttonState=on;strokeColor=#38D145;strokeColor2=#aaaaaa;fillColor=#38D145;fillColor2=#ffffff;', //EXT
+ 'iOS7Stepper' : s + 'ios7.misc.adjust;fillColor=#ffffff;gradientColor=none;',
+ 'iOS7PageControls' : s + 'ios7ui.pageControl;fillColor=#666666;strokeColor=#bbbbbb;', //EXT
'iOS7Block' : 'shape=rect;',
// 'iOS7DatePicker' EXT
// 'iOS7TimePicker' EXT
// 'iOS7CountdownPicker' EXT
//iOS Icons
- 'iOS7IconArrow left' : 'shape=mxgraph.ios7.misc.left;',
- 'iOS7IconArrow' : 'shape=mxgraph.ios7.misc.right;',
- 'iOS7IconArrow up' : 'shape=mxgraph.ios7.misc.up;',
- 'iOS7IconArrow down' : 'shape=mxgraph.ios7.misc.down;',
- 'iOS7IconWifi' : 'shape=mxgraph.ios7.icons.wifi;',
- 'iOS7IconBluetooth' : 'shape=mxgraph.ios7.icons.bluetooth;',
- 'iOS7IconBattery' : 'shape=mxgraph.ios7.icons.battery;',
- 'iOS7IconSiri' : 'shape=mxgraph.ios7.icons.microphone;',
- 'iOS7IconCheck' : 'shape=mxgraph.ios7.icons.select;',
- 'iOS7IconCreate' : 'shape=mxgraph.ios7.icons.add;',
- 'iOS7IconInfo' : 'shape=mxgraph.ios7.icons.info;',
- 'iOS7IconLocation' : 'shape=mxgraph.ios7.icons.location_2;',
- 'iOS7IconQuestion' : 'shape=mxgraph.ios7.icons.help;',
- 'iOS7IconSearch' : 'shape=mxgraph.ios7.icons.looking_glass;',
- 'iOS7IconToolbox' : 'shape=mxgraph.ios7.icons.briefcase;',
- 'iOS7IconOptions' : 'shape=mxgraph.ios7.icons.options;',
- 'iOS7IconShare' : 'shape=mxgraph.ios7.icons.share;',
- 'iOS7IconTyping' : 'shape=mxgraph.ios7.icons.message;',
- 'iOS7IconCopy' : 'shape=mxgraph.ios7.icons.folders_2;',
- 'iOS7IconChat' : 'shape=mxgraph.ios7.icons.messages;',
- 'iOS7IconOrganize' : 'shape=mxgraph.ios7.icons.folder;',
- 'iOS7IconTrash' : 'shape=mxgraph.ios7.icons.trashcan;',
- 'iOS7IconReply' : 'shape=mxgraph.ios7.icons.back;',
- 'iOS7IconArchive' : 'shape=mxgraph.ios7.icons.box;',
- 'iOS7IconCompose' : 'shape=mxgraph.ios7.icons.compose;',
- 'iOS7IconSend' : 'shape=mxgraph.ios7.icons.pointer;',
- 'iOS7IconDrawer' : 'shape=mxgraph.ios7.icons.storage;',
- 'iOS7IconMail' : 'shape=mxgraph.ios7.icons.mail;',
- 'iOS7IconDocument' : 'shape=mxgraph.ios7.icons.document;',
- 'iOS7IconFlag' : 'shape=mxgraph.ios7.icons.flag;',
- 'iOS7IconBookmarks' : 'shape=mxgraph.ios7.icons.book;',
- 'iOS7IconGlasses' : 'shape=mxgraph.ios7.icons.glasses;',
- 'iOS7IconFiles' : 'shape=mxgraph.ios7.icons.folders;',
- 'iOS7IconDownloads' : 'shape=mxgraph.ios7.icons.down;',
- 'iOS7IconLock' : 'shape=mxgraph.ios7.icons.locked;',
+ 'iOS7IconArrow left' : s + 'ios7.misc.left;',
+ 'iOS7IconArrow' : s + 'ios7.misc.right;',
+ 'iOS7IconArrow up' : s + 'ios7.misc.up;',
+ 'iOS7IconArrow down' : s + 'ios7.misc.down;',
+ 'iOS7IconWifi' : s + 'ios7.icons.wifi;',
+ 'iOS7IconBluetooth' : s + 'ios7.icons.bluetooth;',
+ 'iOS7IconBattery' : s + 'ios7.icons.battery;',
+ 'iOS7IconSiri' : s + 'ios7.icons.microphone;',
+ 'iOS7IconCheck' : s + 'ios7.icons.select;',
+ 'iOS7IconCreate' : s + 'ios7.icons.add;',
+ 'iOS7IconInfo' : s + 'ios7.icons.info;',
+ 'iOS7IconLocation' : s + 'ios7.icons.location_2;',
+ 'iOS7IconQuestion' : s + 'ios7.icons.help;',
+ 'iOS7IconSearch' : s + 'ios7.icons.looking_glass;',
+ 'iOS7IconToolbox' : s + 'ios7.icons.briefcase;',
+ 'iOS7IconOptions' : s + 'ios7.icons.options;',
+ 'iOS7IconShare' : s + 'ios7.icons.share;',
+ 'iOS7IconTyping' : s + 'ios7.icons.message;',
+ 'iOS7IconCopy' : s + 'ios7.icons.folders_2;',
+ 'iOS7IconChat' : s + 'ios7.icons.messages;',
+ 'iOS7IconOrganize' : s + 'ios7.icons.folder;',
+ 'iOS7IconTrash' : s + 'ios7.icons.trashcan;',
+ 'iOS7IconReply' : s + 'ios7.icons.back;',
+ 'iOS7IconArchive' : s + 'ios7.icons.box;',
+ 'iOS7IconCompose' : s + 'ios7.icons.compose;',
+ 'iOS7IconSend' : s + 'ios7.icons.pointer;',
+ 'iOS7IconDrawer' : s + 'ios7.icons.storage;',
+ 'iOS7IconMail' : s + 'ios7.icons.mail;',
+ 'iOS7IconDocument' : s + 'ios7.icons.document;',
+ 'iOS7IconFlag' : s + 'ios7.icons.flag;',
+ 'iOS7IconBookmarks' : s + 'ios7.icons.book;',
+ 'iOS7IconGlasses' : s + 'ios7.icons.glasses;',
+ 'iOS7IconFiles' : s + 'ios7.icons.folders;',
+ 'iOS7IconDownloads' : s + 'ios7.icons.down;',
+ 'iOS7IconLock' : s + 'ios7.icons.locked;',
// 'iOS7IconUnlock' NA
- 'iOS7IconCloud' : 'shape=mxgraph.ios7.icons.cloud;',
+ 'iOS7IconCloud' : s + 'ios7.icons.cloud;',
// 'iOS7IconCloud-lock' NA
- 'iOS7IconOrientation Lock' : 'shape=mxgraph.ios7.icons.orientation_lock;',
+ 'iOS7IconOrientation Lock' : s + 'ios7.icons.orientation_lock;',
// 'iOS7IconNotification' NA
- 'iOS7IconContacts' : 'shape=mxgraph.ios7.icons.user;',
- 'iOS7IconGlobal' : 'shape=mxgraph.ios7.icons.globe;',
- 'iOS7IconSettings' : 'shape=mxgraph.ios7.icons.settings;',
- 'iOS7IconAirplay' : 'shape=mxgraph.ios7.icons.move_to_folder;',
- 'iOS7IconCamera' : 'shape=mxgraph.ios7.icons.camera;',
- 'iOS7IconAirplane' : 'shape=mxgraph.signs.transportation.airplane_6;direction=south;',
- 'iOS7IconCalculator' : 'shape=mxgraph.ios7.icons.calculator;',
- 'iOS7IconPreferences' : 'shape=mxgraph.ios7.icons.most_viewed;',
- 'iOS7IconPhone' : 'shape=mxgraph.signs.tech.telephone_3;',
- 'iOS7IconKeypad' : 'shape=mxgraph.ios7.icons.keypad;',
- 'iOS7IconVoicemail' : 'shape=mxgraph.ios7.icons.tape;',
- 'iOS7IconStar' : 'shape=mxgraph.ios7.icons.star;',
- 'iOS7IconMost Viewed' : 'shape=mxgraph.ios7.icons.most_viewed;',
- 'iOS7IconVideo' : 'shape=mxgraph.ios7.icons.video_conversation;',
- 'iOS7IconVolumne Controls' : 'shape=mxgraph.ios7.icons.volume;',
- 'iOS7IconLocation pin' : 'shape=mxgraph.ios7.icons.location;',
- 'iOS7IconCalendar' : 'shape=mxgraph.ios7.icons.calendar;',
- 'iOS7IconAlarm' : 'shape=mxgraph.ios7.icons.alarm_clock;',
- 'iOS7IconClock' : 'shape=mxgraph.ios7.icons.clock;',
- 'iOS7IconTimer' : 'shape=mxgraph.ios7.icons.gauge;',
- 'iOS7IconVolume down' : 'shape=mxgraph.ios7.icons.silent;',
- 'iOS7IconVolume' : 'shape=mxgraph.ios7.icons.volume_2;',
- 'iOS7IconVolume up' : 'shape=mxgraph.ios7.icons.loud;',
- 'iOS7IconRepeat' : 'shape=mxgraph.ios7.icons.reload;',
- 'iOS7IconRewind' : 'shape=mxgraph.ios7.icons.backward;',
- 'iOS7IconPlay' : 'shape=mxgraph.ios7.icons.play;',
- 'iOS7IconPause' : 'shape=mxgraph.ios7.icons.pause;',
- 'iOS7IconFast forward' : 'shape=mxgraph.ios7.icons.forward;',
+ 'iOS7IconContacts' : s + 'ios7.icons.user;',
+ 'iOS7IconGlobal' : s + 'ios7.icons.globe;',
+ 'iOS7IconSettings' : s + 'ios7.icons.settings;',
+ 'iOS7IconAirplay' : s + 'ios7.icons.move_to_folder;',
+ 'iOS7IconCamera' : s + 'ios7.icons.camera;',
+ 'iOS7IconAirplane' : s + 'signs.transportation.airplane_6;direction=south;',
+ 'iOS7IconCalculator' : s + 'ios7.icons.calculator;',
+ 'iOS7IconPreferences' : s + 'ios7.icons.most_viewed;',
+ 'iOS7IconPhone' : s + 'signs.tech.telephone_3;',
+ 'iOS7IconKeypad' : s + 'ios7.icons.keypad;',
+ 'iOS7IconVoicemail' : s + 'ios7.icons.tape;',
+ 'iOS7IconStar' : s + 'ios7.icons.star;',
+ 'iOS7IconMost Viewed' : s + 'ios7.icons.most_viewed;',
+ 'iOS7IconVideo' : s + 'ios7.icons.video_conversation;',
+ 'iOS7IconVolumne Controls' : s + 'ios7.icons.volume;',
+ 'iOS7IconLocation pin' : s + 'ios7.icons.location;',
+ 'iOS7IconCalendar' : s + 'ios7.icons.calendar;',
+ 'iOS7IconAlarm' : s + 'ios7.icons.alarm_clock;',
+ 'iOS7IconClock' : s + 'ios7.icons.clock;',
+ 'iOS7IconTimer' : s + 'ios7.icons.gauge;',
+ 'iOS7IconVolume down' : s + 'ios7.icons.silent;',
+ 'iOS7IconVolume' : s + 'ios7.icons.volume_2;',
+ 'iOS7IconVolume up' : s + 'ios7.icons.loud;',
+ 'iOS7IconRepeat' : s + 'ios7.icons.reload;',
+ 'iOS7IconRewind' : s + 'ios7.icons.backward;',
+ 'iOS7IconPlay' : s + 'ios7.icons.play;',
+ 'iOS7IconPause' : s + 'ios7.icons.pause;',
+ 'iOS7IconFast forward' : s + 'ios7.icons.forward;',
// 'iOS7IconArtists' NA
// 'iOS7IconPlaylist' NA
- 'iOS7IconControls' : 'shape=mxgraph.ios7.icons.controls;',
+ 'iOS7IconControls' : s + 'ios7.icons.controls;',
// 'iOS7IconShuffle' NA
- 'iOS7IconPrivacy' : 'shape=mxgraph.ios7.icons.privacy;',
- 'iOS7IconLink' : 'shape=mxgraph.ios7.icons.link;',
- 'iOS7IconLight' : 'shape=mxgraph.ios7.icons.flashlight;',
- 'iOS7IconBrightness' : 'shape=mxgraph.ios7.icons.sun;',
- 'iOS7IconHeart' : 'shape=mxgraph.ios7.icons.heart;',
- 'iOS7IconJava' : 'shape=mxgraph.ios7.icons.cup;',
- 'iOS7IconBox' : 'shape=mxgraph.ios7.icons.bag;',
- 'iOS7IconEye' : 'shape=mxgraph.ios7.icons.eye;',
- 'iOS7IconDo not disturb' : 'shape=mxgraph.ios7.icons.moon;',
+ 'iOS7IconPrivacy' : s + 'ios7.icons.privacy;',
+ 'iOS7IconLink' : s + 'ios7.icons.link;',
+ 'iOS7IconLight' : s + 'ios7.icons.flashlight;',
+ 'iOS7IconBrightness' : s + 'ios7.icons.sun;',
+ 'iOS7IconHeart' : s + 'ios7.icons.heart;',
+ 'iOS7IconJava' : s + 'ios7.icons.cup;',
+ 'iOS7IconBox' : s + 'ios7.icons.bag;',
+ 'iOS7IconEye' : s + 'ios7.icons.eye;',
+ 'iOS7IconDo not disturb' : s + 'ios7.icons.moon;',
//iOS Activity
// 'iOS7ActivityAdd bookmark' NA
// 'iOS7ActivityAdd to home screen' NA
@@ -1427,8 +1560,8 @@
// 'iOS7ActivitySlideshow' NA
// 'iOS7ActivityUse as wallpaper' NA
//UI Containers
- 'UI2BrowserBlock' : 'shape=mxgraph.mockup.containers.browserWindow;mainText=,;', //EXT
- 'UI2WindowBlock' : 'shape=mxgraph.mockup.containers.window;strokeColor2=#008cff;strokeColor3=#c4c4c4;fontColor=#666666;mainText=;',
+ 'UI2BrowserBlock' : s + 'mockup.containers.browserWindow;mainText=,;', //EXT
+ 'UI2WindowBlock' : s + 'mockup.containers.window;strokeColor2=#008cff;strokeColor3=#c4c4c4;fontColor=#666666;mainText=;',
// 'UI2DialogBlock' EXT
'UI2AreaBlock' : 'shape=rect;',
'UI2ElementBlock' : 'shape=rect;',
@@ -1436,22 +1569,22 @@
// 'UI2TabBarContainerBlock' EXT
// 'UI2TabBar2ContainerBlock' EXT
// 'UI2VTabBarContainerBlock' EXT
- 'UI2VScrollBlock' : 'shape=mxgraph.mockup.navigation.scrollBar;direction=north;',
- 'UI2HScrollBlock' : 'shape=mxgraph.mockup.navigation.scrollBar;',
- 'UI2VerticalSplitterBlock' : 'shape=mxgraph.mockup.forms.splitter;direction=north;',
- 'UI2HorizontalSplitterBlock' : 'shape=mxgraph.mockup.forms.splitter;',
+ 'UI2VScrollBlock' : s + 'mockup.navigation.scrollBar;direction=north;',
+ 'UI2HScrollBlock' : s + 'mockup.navigation.scrollBar;',
+ 'UI2VerticalSplitterBlock' : s + 'mockup.forms.splitter;direction=north;',
+ 'UI2HorizontalSplitterBlock' : s + 'mockup.forms.splitter;',
//UI Widgets
- 'UI2ImageBlock' : 'shape=mxgraph.mockup.graphics.simpleIcon;',
- 'UI2VideoBlock' : 'shape=mxgraph.mockup.containers.videoPlayer;barHeight=30;',
- 'UI2AudioBlock' : 'shape=mxgraph.mockup.misc.playbackControls;',
- 'UI2MapBlock' : 'shape=mxgraph.mockup.misc.map;',
+ 'UI2ImageBlock' : s + 'mockup.graphics.simpleIcon;',
+ 'UI2VideoBlock' : s + 'mockup.containers.videoPlayer;barHeight=30;',
+ 'UI2AudioBlock' : s + 'mockup.misc.playbackControls;',
+ 'UI2MapBlock' : s + 'mockup.misc.map;',
// 'UI2CalendarBlock' NA
- 'UI2BarChartBlock' : 'shape=mxgraph.mockup.graphics.barChart;strokeColor=none;strokeColor2=none;',
- 'UI2ColumnChartBlock' : 'shape=mxgraph.mockup.graphics.columnChart;strokeColor=none;strokeColor2=none;',
- 'UI2LineChartBlock' : 'shape=mxgraph.mockup.graphics.lineChart;strokeColor=none;',
- 'UI2PieChartBlock' : 'shape=mxgraph.mockup.graphics.pieChart;parts=10,20,35;',
- 'UI2WebcamBlock' : 'shape=mxgraph.mockup.containers.userMale;',
- 'UI2CaptchaBlock' : 'shape=mxgraph.mockup.text.captcha;mainText=;',
+ 'UI2BarChartBlock' : s + 'mockup.graphics.barChart;strokeColor=none;strokeColor2=none;',
+ 'UI2ColumnChartBlock' : s + 'mockup.graphics.columnChart;strokeColor=none;strokeColor2=none;',
+ 'UI2LineChartBlock' : s + 'mockup.graphics.lineChart;strokeColor=none;',
+ 'UI2PieChartBlock' : s + 'mockup.graphics.pieChart;parts=10,20,35;',
+ 'UI2WebcamBlock' : s + 'mockup.containers.userMale;',
+ 'UI2CaptchaBlock' : s + 'mockup.text.captcha;mainText=;',
// 'Image_ui_formatting_toolbar2'
//UI Input
'UI2ButtonBlock' : 'shape=rect;rounded=1;',
@@ -1459,14 +1592,14 @@
// 'UI2HorizontalCheckBoxBlock' EXT
// 'UI2RadioBlock' EXT
// 'UI2HorizontalRadioBlock' EXT
- 'UI2ColorPickerBlock' : 'shape=mxgraph.mockup.forms.colorPicker;chosenColor=#aaddff;',
+ 'UI2ColorPickerBlock' : s + 'mockup.forms.colorPicker;chosenColor=#aaddff;',
'UI2TextInputBlock' : 'shape=rect;rounded=1;',
- 'UI2SelectBlock' : 'shape=mxgraph.mockup.forms.comboBox;strokeColor=#999999;fillColor=#ddeeff;align=left;fillColor2=#aaddff;mainText=;fontColor=#666666;',
- 'UI2VSliderBlock' : 'shape=mxgraph.mockup.forms.horSlider;sliderStyle=basic;sliderPos=20;handleStyle=circle;direction=north;',
- 'UI2HSliderBlock' : 'shape=mxgraph.mockup.forms.horSlider;sliderStyle=basic;sliderPos=20;handleStyle=circle;',
+ 'UI2SelectBlock' : s + 'mockup.forms.comboBox;strokeColor=#999999;fillColor=#ddeeff;align=left;fillColor2=#aaddff;mainText=;fontColor=#666666;',
+ 'UI2VSliderBlock' : s + 'mockup.forms.horSlider;sliderStyle=basic;sliderPos=20;handleStyle=circle;direction=north;',
+ 'UI2HSliderBlock' : s + 'mockup.forms.horSlider;sliderStyle=basic;sliderPos=20;handleStyle=circle;',
// 'UI2DatePickerBlock' NA
- 'UI2SearchBlock' : 'shape=mxgraph.mockup.forms.searchBox;mainText=;flipH=1;',
- 'UI2NumericStepperBlock' : 'shape=mxgraph.mockup.forms.spinner;spinLayout=right;spinStyle=normal;adjStyle=triangle;fillColor=#000000;mainText=;',
+ 'UI2SearchBlock' : s + 'mockup.forms.searchBox;mainText=;flipH=1;',
+ 'UI2NumericStepperBlock' : s + 'mockup.forms.spinner;spinLayout=right;spinStyle=normal;adjStyle=triangle;fillColor=#000000;mainText=;',
// 'UI2TableBlock' EXT
//UI Menus
// 'UI2ButtonBarBlock' EXT
@@ -1474,31 +1607,31 @@
// 'UI2LinkBarBlock' EXT
// 'UI2BreadCrumbsBlock' EXT
// 'UI2MenuBarBlock' EXT
- 'UI2AtoZBlock' : 'shape=mxgraph.mockup.text.alphanumeric;linkText=;fontStyle=4;',
- 'UI2PaginationBlock' : 'shape=mxgraph.mockup.navigation.pagination;linkText=;fontStyle=4;',
+ 'UI2AtoZBlock' : s + 'mockup.text.alphanumeric;linkText=;fontStyle=4;',
+ 'UI2PaginationBlock' : s + 'mockup.navigation.pagination;linkText=;fontStyle=4;',
// 'UI2ContextMenuBlock' EXT
// 'UI2TreePaneBlock'EXT
- 'UI2PlaybackControlsBlock' : 'shape=mxgraph.mockup.misc.playbackControls;fillColor=#ffffff;strokeColor=#999999;fillColor2=#99ddff;strokeColor2=none;fillColor3=#ffffff;strokeColor3=none;',
- 'Image_ui_formatting_toolbar' : 'shape=mxgraph.mockup.menus_and_buttons.font_style_selector_2;',
+ 'UI2PlaybackControlsBlock' : s + 'mockup.misc.playbackControls;fillColor=#ffffff;strokeColor=#999999;fillColor2=#99ddff;strokeColor2=none;fillColor3=#ffffff;strokeColor3=none;',
+ 'Image_ui_formatting_toolbar' : s + 'mockup.menus_and_buttons.font_style_selector_2;',
//UI Misc
- 'UI2ProgressBarBlock' : 'shape=mxgraph.mockup.misc.progressBar;fillColor2=#888888;barPos=25;',
- 'UI2HelpIconBlock' : 'shape=mxgraph.mockup.misc.help_icon;',
- 'UI2BraceNoteBlock' : 'shape=mxgraph.mockup.markup.curlyBrace;direction=north;', //EXT
- 'UI2TooltipBlock' : 'shape=mxgraph.basic.rectangular_callout;flipV=1;', //EXT
+ 'UI2ProgressBarBlock' : s + 'mockup.misc.progressBar;fillColor2=#888888;barPos=25;',
+ 'UI2HelpIconBlock' : s + 'mockup.misc.help_icon;',
+ 'UI2BraceNoteBlock' : s + 'mockup.markup.curlyBrace;direction=north;', //EXT
+ 'UI2TooltipBlock' : s + 'basic.rectangular_callout;flipV=1;', //EXT
'UI2CalloutBlock' : 'shape=ellipse;',
// 'UI2AlertBlock' EXT
//iOS 6 iPad Elements
- 'Image_ipad_ipad' : 'shape=mxgraph.ios.iPad;bgStyle=bgGreen;',
+ 'Image_ipad_ipad' : s + 'ios.iPad;bgStyle=bgGreen;',
'iPadGrayBackgroundBlock' : 'shape=rect;',
- 'Image_ipad_top_bar' : 'shape=mxgraph.ios.iTopBar2;opacity=50;fillColor=#999999;strokeColor=#cccccc;',
+ 'Image_ipad_top_bar' : s + 'ios.iTopBar2;opacity=50;fillColor=#999999;strokeColor=#cccccc;',
// 'Image_ipad_bar_gray' : 'shape=rect;',
// 'Image_ipad_bar_semi_trans_black' : 'shape=rect;',
// 'Image_ipad_bar_black' : 'shape=rect;',
// 'Image_ipad_safari_top' NA
- 'Image_ipad_search' : 'shape=mxgraph.mockup.forms.searchBox;mainText=;flipH=1;',
+ 'Image_ipad_search' : s + 'mockup.forms.searchBox;mainText=;flipH=1;',
// 'Image_ipad_alert_dialog' EXT
// 'Image_ipad_dialog' EXT
- 'Image_ipad_popover' : 'shape=mxgraph.ios.iOption;barPos=50;pointerPos=top;buttonText=;',
+ 'Image_ipad_popover' : s + 'ios.iOption;barPos=50;pointerPos=top;buttonText=;',
// 'Image_ipad_table' EXT
// 'Image_ipad_vtab' EXT
//iOS 6 iPad Controls
@@ -1506,47 +1639,47 @@
'Image_ipad_button_blue' : 'shape=rect;roudned=1;',
'Image_ipad_button_grayblue' : 'shape=rect;roudned=1;',
'Image_ipad_button_red' : 'shape=rect;roudned=1;',
- 'Image_ipad_back_button_gray' : 'shape=mxgraph.ios.iButtonBack;buttonText=;fillColor=#eeeeee;fillColor2=#aaaaaa;',
- 'Image_ipad_back_button_black' : 'shape=mxgraph.ios.iButtonBack;buttonText=;fillColor=#888888;fillColor2=#000000;',
- 'Image_ipad_sort_handle' : 'shape=mxgraph.ios7.icons.options;',
- 'Image_ipad_dropdown' : 'shape=mxgraph.ios.iComboBox;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;',
+ 'Image_ipad_back_button_gray' : s + 'ios.iButtonBack;buttonText=;fillColor=#eeeeee;fillColor2=#aaaaaa;',
+ 'Image_ipad_back_button_black' : s + 'ios.iButtonBack;buttonText=;fillColor=#888888;fillColor2=#000000;',
+ 'Image_ipad_sort_handle' : s + 'ios7.icons.options;',
+ 'Image_ipad_dropdown' : s + 'ios.iComboBox;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;',
'Image_ipad_email_name' : 'shape=rect;rounded=1;',
- 'Image_ipad_prev_next' : 'shape=mxgraph.ios.iPrevNext;strokeColor=#444444;fillColor=#dddddd;fillColor2=#3D5565;fillColor3=#ffffff;',
- 'Image_ipad_keyboard_portrait' : 'shape=mxgraph.ios.iKeybLett;',
- 'Image_ipad_keyboard_landscape' : 'shape=mxgraph.ios.iKeybLett;',
+ 'Image_ipad_prev_next' : s + 'ios.iPrevNext;strokeColor=#444444;fillColor=#dddddd;fillColor2=#3D5565;fillColor3=#ffffff;',
+ 'Image_ipad_keyboard_portrait' : s + 'ios.iKeybLett;',
+ 'Image_ipad_keyboard_landscape' : s + 'ios.iKeybLett;',
// 'Image_ipad_large_tabbed_button' EXT
// 'Image_ipad_sort_button' EXT
// 'Image_ipad_tab_bar' EXT
- 'Image_ipad_slider' : 'shape=mxgraph.ios.iSlider;barPos=20;',
+ 'Image_ipad_slider' : s + 'ios.iSlider;barPos=20;',
// 'Image_ipad_switch_off'
//iOS 6 iPad Icons
- 'Image_ipad_add_icon_blue' : 'shape=mxgraph.ios.iAddIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;',
- 'Image_ipad_add_icon_green' : 'shape=mxgraph.ios.iAddIcon;fillColor=#7AdF78;fillColor2=#1A9917;strokeColor=#ffffff;',
- 'Image_ipad_remove_icon' : 'shape=mxgraph.ios.iDeleteIcon;fillColor=#e8878E;fillColor2=#BD1421;strokeColor=#ffffff;',
- 'Image_ipad_arrow_icon' : 'shape=mxgraph.ios.iArrowIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;',
- 'Image_ipad_arrow' : 'shape=mxgraph.ios7.misc.more;',
- 'Image_ipad_checkmark' : 'shape=mxgraph.ios7.misc.check;',
+ 'Image_ipad_add_icon_blue' : s + 'ios.iAddIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;',
+ 'Image_ipad_add_icon_green' : s + 'ios.iAddIcon;fillColor=#7AdF78;fillColor2=#1A9917;strokeColor=#ffffff;',
+ 'Image_ipad_remove_icon' : s + 'ios.iDeleteIcon;fillColor=#e8878E;fillColor2=#BD1421;strokeColor=#ffffff;',
+ 'Image_ipad_arrow_icon' : s + 'ios.iArrowIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;',
+ 'Image_ipad_arrow' : s + 'ios7.misc.more;',
+ 'Image_ipad_checkmark' : s + 'ios7.misc.check;',
'Image_ipad_check_off' : 'shape=ellipse;', //EXT
'Image_ipad_location_dot' : 'shape=ellipse;',
'Image_ipad_mark_as_read' : 'shape=ellipse;',
- 'Image_ipad_pin_green' : 'shape=mxgraph.ios.iPin;fillColor2=#00dd00;fillColor3=#004400;strokeColor=#006600;',
- 'Image_ipad_pin_red' : 'shape=mxgraph.ios.iPin;fillColor2=#dd0000;fillColor3=#440000;strokeColor=#660000;',
+ 'Image_ipad_pin_green' : s + 'ios.iPin;fillColor2=#00dd00;fillColor3=#004400;strokeColor=#006600;',
+ 'Image_ipad_pin_red' : s + 'ios.iPin;fillColor2=#dd0000;fillColor3=#440000;strokeColor=#660000;',
'Image_ipad_radio_off' : 'shape=ellipse;', //EXT
'Image_ipad_checkbox_off' : 'shape=rect;rounded=1;', //EXT
'Image_ipad_indicator' : 'shape=rect;rounded=1;fillColor=#e8878E;gradientColor=#BD1421;strokeColor=#ffffff;',
//iOS 6 iPhone Elements
- 'Image_iphone_iphone_4' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;',
+ 'Image_iphone_iphone_4' : s + 'ios.iPhone;bgStyle=bgGreen;',
'Image_iphone_bg_black' : 'shape=rect;',
'Image_iphone_bg_gray' : 'shape=rect;',
- 'Image_iphone_bg_stripe_drk' : 'shape=mxgraph.ios.iBgStriped;strokeColor=#18211b;fillColor=#5D7585;strokeColor2=#657E8F;',
- 'Image_iphone_bg_stripe_lt' : 'shape=mxgraph.ios.iBgStriped;strokeColor=#18211b;fillColor=#5D7585;strokeColor2=#657E8F;',
+ 'Image_iphone_bg_stripe_drk' : s + 'ios.iBgStriped;strokeColor=#18211b;fillColor=#5D7585;strokeColor2=#657E8F;',
+ 'Image_iphone_bg_stripe_lt' : s + 'ios.iBgStriped;strokeColor=#18211b;fillColor=#5D7585;strokeColor2=#657E8F;',
'Image_iphone_bg_white' : 'shape=rect;',
- 'Image_iphone_top_bar_app' : 'shape=mxgraph.ios.iAppBar;',
- 'Image_iphone_top_bar_home' : 'shape=mxgraph.ios.iTopBar2;opacity=50;fillColor=#999999;strokeColor=#cccccc;strokeWidth=1;',
+ 'Image_iphone_top_bar_app' : s + 'ios.iAppBar;',
+ 'Image_iphone_top_bar_home' : s + 'ios.iTopBar2;opacity=50;fillColor=#999999;strokeColor=#cccccc;strokeWidth=1;',
'Image_iphone_bar_top' : 'shape=rect;',
'Image_iphone_bar_semi_trans_black' : 'shape=rect;',
'Image_iphone_bar_semi_trans_blue' : 'shape=rect;',
- 'Image_iphone_search' : 'shape=mxgraph.mockup.forms.searchBox;mainText=;flipH=1;',
+ 'Image_iphone_search' : s + 'mockup.forms.searchBox;mainText=;flipH=1;',
// 'Image_iphone_table' EXT
// 'Image_iphone_table_w_buttons' EXT
// 'Image_iphone_table_w_icons' EXT
@@ -1558,7 +1691,7 @@
// 'Image_iphone_alert_dialog' EXT
// 'Image_iphone_dialog' EXT
// 'Image_iphone_scroll_pane' EXT
- 'Image_iphone_alpha_list' : 'shape=mxgraph.ios.iAlphaList;',
+ 'Image_iphone_alpha_list' : s + 'ios.iAlphaList;',
//iOS 6 iPhone Controls
'Image_iphone_button_black' : 'shape=rect;rounded=1;',
'Image_iphone_button_blue' : 'shape=rect;rounded=1;',
@@ -1570,33 +1703,33 @@
'Image_iphone_button_lg_red' : 'shape=rect;rounded=1;',
'Image_iphone_button_lg_yellow' : 'shape=rect;rounded=1;',
'Image_iphone_button_xl_green' : 'shape=rect;rounded=1;',
- 'Image_iphone_back_button' : 'shape=mxgraph.ios.iButtonBack;strokeColor=#444444;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;',
- 'Image_iphone_prev_next' : 'shape=mxgraph.ios.iPrevNext;strokeColor=#444444;fillColor=#dddddd;fillColor2=#3D5565;fillColor3=#ffffff;',
- 'Image_iphone_sort_handle' : 'shape=mxgraph.ios7.icons.options;',
- 'Image_iphone_slider' : 'shape=mxgraph.ios.iSlider;barPos=60;',
- 'Image_iphone_dropdown' : 'shape=mxgraph.ios.iComboBox;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;',
+ 'Image_iphone_back_button' : s + 'ios.iButtonBack;strokeColor=#444444;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;',
+ 'Image_iphone_prev_next' : s + 'ios.iPrevNext;strokeColor=#444444;fillColor=#dddddd;fillColor2=#3D5565;fillColor3=#ffffff;',
+ 'Image_iphone_sort_handle' : s + 'ios7.icons.options;',
+ 'Image_iphone_slider' : s + 'ios.iSlider;barPos=60;',
+ 'Image_iphone_dropdown' : s + 'ios.iComboBox;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;',
'Image_iphone_email_name' : 'shape=rect;rounded=1;',
- 'Image_iphone_switch_off' : 'shape=mxgraph.android.switch_off;fillColor=#666666;', //EXT
+ 'Image_iphone_switch_off' : s + 'android.switch_off;fillColor=#666666;', //EXT
'Image_iphone_keyboard_button_blue' : 'shape=rect;rounded=1;',
- 'Image_iphone_keyboard_letters' : 'shape=mxgraph.ios.iKeybLett;',
- 'Image_iphone_keyboard_landscape' : 'shape=mxgraph.ios.iKeybLett;',
+ 'Image_iphone_keyboard_letters' : s + 'ios.iKeybLett;',
+ 'Image_iphone_keyboard_landscape' : s + 'ios.iKeybLett;',
// 'Image_iphone_large_tabbed_button' EXT
// 'Image_iphone_sort_button' EXT
// 'Image_iphone_tab_bar' EXT
// 'Image_iphone_picker_multi' EXT
// 'Image_iphone_picker_web' EXT
//iOS 6 iPhone Icons
- 'Image_iphone_add_icon_blue' : 'shape=mxgraph.ios.iAddIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;',
- 'Image_iphone_add_icon_green' : 'shape=mxgraph.ios.iAddIcon;fillColor=#7AdF78;fillColor2=#1A9917;strokeColor=#ffffff;',
- 'Image_iphone_remove_icon' : 'shape=mxgraph.ios.iDeleteIcon;fillColor=#e8878E;fillColor2=#BD1421;strokeColor=#ffffff;',
- 'Image_iphone_arrow_icon' : 'shape=mxgraph.ios.iArrowIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;',
- 'Image_iphone_arrow' : 'shape=mxgraph.ios7.misc.more;',
- 'Image_iphone_checkmark' : 'shape=mxgraph.ios7.misc.check;',
+ 'Image_iphone_add_icon_blue' : s + 'ios.iAddIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;',
+ 'Image_iphone_add_icon_green' : s + 'ios.iAddIcon;fillColor=#7AdF78;fillColor2=#1A9917;strokeColor=#ffffff;',
+ 'Image_iphone_remove_icon' : s + 'ios.iDeleteIcon;fillColor=#e8878E;fillColor2=#BD1421;strokeColor=#ffffff;',
+ 'Image_iphone_arrow_icon' : s + 'ios.iArrowIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;',
+ 'Image_iphone_arrow' : s + 'ios7.misc.more;',
+ 'Image_iphone_checkmark' : s + 'ios7.misc.check;',
'Image_iphone_check_off' : 'shape=ellipse;', //EXT
'Image_iphone_location_dot' : 'shape=ellipse;',
'Image_iphone_mark_as_read' : 'shape=ellipse;',
- 'Image_iphone_pin_green' : 'shape=mxgraph.ios.iPin;fillColor2=#00dd00;fillColor3=#004400;strokeColor=#006600;',
- 'Image_iphone_pin_red' : 'shape=mxgraph.ios.iPin;fillColor2=#dd0000;fillColor3=#440000;strokeColor=#660000;',
+ 'Image_iphone_pin_green' : s + 'ios.iPin;fillColor2=#00dd00;fillColor3=#004400;strokeColor=#006600;',
+ 'Image_iphone_pin_red' : s + 'ios.iPin;fillColor2=#dd0000;fillColor3=#440000;strokeColor=#660000;',
'Image_iphone_radio_off' : 'shape=ellipse;', //EXT
'Image_iphone_checkbox_off' : 'shape=rect;rounded=1;', //EXT
'Image_iphone_indicator' : 'shape=rect;rounded=1;fillColor=#e8878E;gradientColor=#BD1421;strokeColor=#ffffff;',
@@ -1638,7 +1771,7 @@
}
else if (a.Class != null)
{
- //console.log('no mapping', a.Class);
+// console.log('no mapping', a.Class);
}
var p = (a.Properties != null) ? a.Properties : a;
@@ -1706,17 +1839,22 @@
// Gradients and fill color
if (p.FillColor != null)
{
- if (typeof p.FillColor === 'object')
+ var exc = ['AWSAndroidBlock3', 'AWSiOSBlock3', 'AWSJavaBlock3', 'AWSJavaScript', 'AWSNetBlock3', 'AWSNodeJSBlock3', 'AWSPHPBlock3', 'AWSPythonBlock3', 'AWSRubyBlock3', 'AWSXamarin', 'AWSCLIBlock3', 'AWSEclipseToolkitBlock3', 'AWSVisualStudioToolkitBlock3', 'AWSWindowsPowershellToolkitBlock3'];
+
+ if (!exc.includes(a.Class))
{
- if (p.FillColor.cs != null && p.FillColor.cs.length > 1)
+ if (typeof p.FillColor === 'object')
{
- cell.style += createStyle(mxConstants.STYLE_FILLCOLOR, p.FillColor.cs[0].c.substring(0, 7));
- cell.style += createStyle(mxConstants.STYLE_GRADIENTCOLOR, p.FillColor.cs[1].c.substring(0, 7));
+ if (p.FillColor.cs != null && p.FillColor.cs.length > 1)
+ {
+ cell.style += createStyle(mxConstants.STYLE_FILLCOLOR, p.FillColor.cs[0].c.substring(0, 7));
+ cell.style += createStyle(mxConstants.STYLE_GRADIENTCOLOR, p.FillColor.cs[1].c.substring(0, 7));
+ }
+ }
+ else if (typeof p.FillColor === 'string')
+ {
+ cell.style += createStyle(mxConstants.STYLE_FILLCOLOR, p.FillColor.substring(0, 7), '#FFFFFF');
}
- }
- else if (typeof p.FillColor === 'string')
- {
- cell.style += createStyle(mxConstants.STYLE_FILLCOLOR, p.FillColor.substring(0, 7), '#FFFFFF');
}
}
@@ -1772,9 +1910,14 @@
{
var p = getAction(obj).Properties;
var b = p.BoundingBox;
+
+ if (obj.Class.startsWith("AWS"))
+ {
+ b.h = b.h - 20;
+ }
- var v = new mxCell('', new mxGeometry(Math.round(b.x * scale + dx), Math.round(b.y * scale + dy),
- Math.round(b.w * scale), Math.round(b.h * scale)), vertexStyle);
+ v = new mxCell('', new mxGeometry(Math.round(b.x * scale + dx), Math.round(b.y * scale + dy),
+ Math.round(b.w * scale), Math.round(b.h * scale)), vertexStyle);
v.vertex = true;
updateCell(v, obj);
diff --git a/war/js/embed-static.min.js b/war/js/embed-static.min.js
index 564fecc8..6649cfaa 100644
--- a/war/js/embed-static.min.js
+++ b/war/js/embed-static.min.js
@@ -81,7 +81,7 @@ v,k,f));else if(c.c&a.c.RCDATA)d.F&&d.F(e(l),f,g,h(d,b,v,k,f));else throw Error(
e[1].toLowerCase(),n;if(e[2]){n=e[3];var v=n.charCodeAt(0);if(34===v||39===v)n=n.substr(1,n.length-2);n=c(n.replace(F,""))}else n="";l.push(m,n);g=g.substr(e[0].length)}else g=g.replace(/^[\s\S][^a-z\s]*/,"");f.R=l;f.next=h+1;return f}}function n(b){function c(a,b){f||b.push(a)}var e,f;return g({startDoc:function(){e=[];f=!1},startTag:function(c,g,h){if(!f&&a.f.hasOwnProperty(c)){var k=a.f[c];if(!(k&a.c.FOLDABLE)){var l=b(c,g);if(l){if("object"!==typeof l)throw Error("tagPolicy did not return object (old API?)");
if("attribs"in l)g=l.attribs;else throw Error("tagPolicy gave no attribs");var m;"tagName"in l?(m=l.tagName,l=a.f[m]):(m=c,l=k);if(k&a.c.OPTIONAL_ENDTAG){var n=e[e.length-1];n&&n.D===c&&(n.v!==m||c!==m)&&h.push("</",n.v,">")}k&a.c.EMPTY||e.push({D:c,v:m});h.push("<",m);c=0;for(n=g.length;c<n;c+=2){var v=g[c],C=g[c+1];null!==C&&void 0!==C&&h.push(" ",v,'="',d(C),'"')}h.push(">");k&a.c.EMPTY&&!(l&a.c.EMPTY)&&h.push("</",m,">")}else f=!(k&a.c.EMPTY)}}},endTag:function(b,c){if(f)f=!1;else if(a.f.hasOwnProperty(b)){var d=
a.f[b];if(!(d&(a.c.EMPTY|a.c.FOLDABLE))){if(d&a.c.OPTIONAL_ENDTAG)for(d=e.length;0<=--d;){var g=e[d].D;if(g===b)break;if(!(a.f[g]&a.c.OPTIONAL_ENDTAG))return}else for(d=e.length;0<=--d&&e[d].D!==b;);if(!(0>d)){for(g=e.length;--g>d;){var h=e[g].v;a.f[h]&a.c.OPTIONAL_ENDTAG||c.push("</",h,">")}d<e.length&&(b=e[d].v);e.length=d;c.push("</",b,">")}}}},pcdata:c,rcdata:c,cdata:c,endDoc:function(a){for(;e.length;e.length--)a.push("</",e[e.length-1].v,">")}})}function p(a,b,c,d,e){if(!e)return null;try{var g=
-f.parse(""+a);if(g&&(!g.K()||fa.test(g.W()))){var h=e(g,b,c,d);return h?h.toString():null}}catch(qa){}return null}function r(a,b,c,d,e){c||a(b+" removed",{S:"removed",tagName:b});if(d!==e){var f="changed";d&&!e?f="removed":!d&&e&&(f="added");a(b+"."+c+" "+f,{S:f,tagName:b,la:c,oldValue:d,newValue:e})}}function C(a,b,c){b=b+"::"+c;if(a.hasOwnProperty(b))return a[b];b="*::"+c;if(a.hasOwnProperty(b))return a[b]}function H(b,c,d,e,f){for(var g=0;g<c.length;g+=2){var h=c[g],k=c[g+1],l=k,m=null,n;if((n=
+f.parse(""+a);if(g&&(!g.K()||fa.test(g.W()))){var h=e(g,b,c,d);return h?h.toString():null}}catch(pa){}return null}function r(a,b,c,d,e){c||a(b+" removed",{S:"removed",tagName:b});if(d!==e){var f="changed";d&&!e?f="removed":!d&&e&&(f="added");a(b+"."+c+" "+f,{S:f,tagName:b,la:c,oldValue:d,newValue:e})}}function C(a,b,c){b=b+"::"+c;if(a.hasOwnProperty(b))return a[b];b="*::"+c;if(a.hasOwnProperty(b))return a[b]}function H(b,c,d,e,f){for(var g=0;g<c.length;g+=2){var h=c[g],k=c[g+1],l=k,m=null,n;if((n=
b+"::"+h,a.m.hasOwnProperty(n))||(n="*::"+h,a.m.hasOwnProperty(n)))m=a.m[n];if(null!==m)switch(m){case a.d.NONE:break;case a.d.SCRIPT:k=null;f&&r(f,b,h,l,k);break;case a.d.STYLE:if("undefined"===typeof U){k=null;f&&r(f,b,h,l,k);break}var v=[];U(k,{declaration:function(b,c){var e=b.toLowerCase();S(e,c,d?function(b){return p(b,a.P.ja,a.M.ka,{TYPE:"CSS",CSS_PROP:e},d)}:null);c.length&&v.push(e+": "+c.join(" "))}});k=0<v.length?v.join(" ; "):null;f&&r(f,b,h,l,k);break;case a.d.ID:case a.d.IDREF:case a.d.IDREFS:case a.d.GLOBAL_NAME:case a.d.LOCAL_NAME:case a.d.CLASSES:k=
e?e(k):k;f&&r(f,b,h,l,k);break;case a.d.URI:k=p(k,C(a.J,b,h),C(a.I,b,h),{TYPE:"MARKUP",XML_ATTR:h,XML_TAG:b},d);f&&r(f,b,h,l,k);break;case a.d.URI_FRAGMENT:k&&"#"===k.charAt(0)?(k=k.substring(1),k=e?e(k):k,null!==k&&void 0!==k&&(k="#"+k)):k=null;f&&r(f,b,h,l,k);break;default:k=null,f&&r(f,b,h,l,k)}else k=null,f&&r(f,b,h,l,k);c[g+1]=k}return c}function M(b,c,d){return function(e,f){if(a.f[e]&a.c.UNSAFE)d&&r(d,e,void 0,void 0,void 0);else return{attribs:H(e,f,b,c,d)}}}function J(a,b){var c=[];n(b)(a,
c);return c.join("")}var U,S;"undefined"!==typeof window&&(U=window.parseCssDeclarations,S=window.sanitizeCssProperty);var aa={lt:"<",LT:"<",gt:">",GT:">",amp:"&",AMP:"&",quot:'"',apos:"'",nbsp:" "},A=/^#(\d+)$/,v=/^#x([0-9A-Fa-f]+)$/,R=/^[A-Za-z][A-za-z0-9]+$/,K="undefined"!==typeof window&&window.document?window.document.createElement("textarea"):null,F=/\0/g,ca=/&(#[0-9]+|#[xX][0-9A-Fa-f]+|\w+);/g,N=/^(#[0-9]+|#[xX][0-9A-Fa-f]+|\w+);/,G=/&/g,Y=/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi,T=
@@ -184,7 +184,7 @@ f)+"\n"+t+"}":"{"+x.join(",")+"}";f=t;return l}}"function"!==typeof Date.prototy
e=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,f,g,h={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},k;"function"!==typeof JSON.stringify&&(JSON.stringify=function(a,b,d){var e;g=f="";if("number"===typeof d)for(e=0;e<d;e+=1)g+=" ";else"string"===typeof d&&(g=d);if((k=b)&&"function"!==typeof b&&("object"!==typeof b||"number"!==typeof b.length))throw Error("JSON.stringify");return c("",{"":a})});
"function"!==typeof JSON.parse&&(JSON.parse=function(a,b){function c(a,d){var e,f,g=a[d];if(g&&"object"===typeof g)for(e in g)Object.prototype.hasOwnProperty.call(g,e)&&(f=c(g,e),void 0!==f?g[e]=f:delete g[e]);return b.call(a,d,g)}var e;a=""+a;d.lastIndex=0;d.test(a)&&(a=a.replace(d,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)}));if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e=eval("("+a+")"),"function"===typeof b?c({"":e},""):e;throw new SyntaxError("JSON.parse");})})();var mxBasePath="https://www.draw.io/mxgraph/",mxLoadStylesheets=mxLoadResources=!1,mxLanguage="en";window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||225E6;window.EXPORT_URL=window.EXPORT_URL||"/export";window.SAVE_URL=window.SAVE_URL||"/save";window.OPEN_URL=window.OPEN_URL||"/open";window.RESOURCES_PATH=window.RESOURCES_PATH||"resources";window.RESOURCE_BASE=window.RESOURCE_BASE||window.RESOURCES_PATH+"/grapheditor";window.STENCIL_PATH=window.STENCIL_PATH||"stencils";window.IMAGE_PATH=window.IMAGE_PATH||"images";
-window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"6.9.9",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&
+window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"7.0.0",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&
0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&&
0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&&
0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")||
@@ -1741,9 +1741,9 @@ a;this.canvas.setLineJoin("round");this.canvas.setLineCap("round");this.defaultV
this.canvas.curveTo=mxUtils.bind(this,q.prototype.curveTo);this.originalArcTo=this.canvas.arcTo;this.canvas.arcTo=mxUtils.bind(this,q.prototype.arcTo)}function t(){mxRectangleShape.call(this)}function x(){mxActor.call(this)}function w(){mxActor.call(this)}function z(){mxRectangleShape.call(this)}function y(){mxRectangleShape.call(this)}function u(){mxCylinder.call(this)}function I(){mxShape.call(this)}function L(){mxShape.call(this)}function D(){mxEllipse.call(this)}function B(){mxShape.call(this)}
function E(){mxShape.call(this)}function C(){mxRectangleShape.call(this)}function H(){mxShape.call(this)}function M(){mxShape.call(this)}function J(){mxShape.call(this)}function U(){mxCylinder.call(this)}function S(){mxDoubleEllipse.call(this)}function aa(){mxDoubleEllipse.call(this)}function A(){mxArrowConnector.call(this);this.spacing=0}function v(){mxArrowConnector.call(this);this.spacing=0}function R(){mxActor.call(this)}function K(){mxRectangleShape.call(this)}function F(){mxActor.call(this)}
function ca(){mxActor.call(this)}function N(){mxActor.call(this)}function G(){mxActor.call(this)}function Y(){mxActor.call(this)}function T(){mxActor.call(this)}function Z(){mxActor.call(this)}function da(){mxActor.call(this)}function P(){mxActor.call(this)}function ea(){mxActor.call(this)}function W(){mxEllipse.call(this)}function O(){mxEllipse.call(this)}function Q(){mxEllipse.call(this)}function fa(){mxRhombus.call(this)}function V(){mxEllipse.call(this)}function X(){mxEllipse.call(this)}function ua(){mxEllipse.call(this)}
-function oa(){mxEllipse.call(this)}function pa(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function xa(a,b,c,d,e,f,g,h,k,l){g+=k;var m=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(m.x-e-g,m.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));
-f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var qa=Math.tan(mxUtils.toRadians(30)),ia=(.5-qa)/2;mxUtils.extend(b,mxActor);b.prototype.size=20;b.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/qa);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ia);a.lineTo(b,.25*b);a.lineTo(.5*
-b,(.5-ia)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=b;mxUtils.extend(c,mxCylinder);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+qa));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ia)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ia)*b),a.lineTo(.5*b,(1-ia)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ia),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ia)*b),a.lineTo(0,.75*b),a.close());a.end()};
+function na(){mxEllipse.call(this)}function oa(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function xa(a,b,c,d,e,f,g,h,k,l){g+=k;var m=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(m.x-e-g,m.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));
+f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var pa=Math.tan(mxUtils.toRadians(30)),ia=(.5-pa)/2;mxUtils.extend(b,mxActor);b.prototype.size=20;b.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/pa);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ia);a.lineTo(b,.25*b);a.lineTo(.5*
+b,(.5-ia)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=b;mxUtils.extend(c,mxCylinder);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+pa));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ia)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ia)*b),a.lineTo(.5*b,(1-ia)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ia),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ia)*b),a.lineTo(0,.75*b),a.close());a.end()};
mxCellRenderer.prototype.defaultShapes.isoCube=c;mxUtils.extend(d,mxCylinder);d.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(e/2,Math.round(e/8)+this.strokewidth-1);if(f&&null!=this.fill||!f&&null==this.fill)a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,-b);f||(a.moveTo(0,b),a.curveTo(0,
-b/3,d,-b/3,d,b),a.lineTo(d,e-b),a.curveTo(d,e+b/3,0,e+b/3,0,e-b),a.close())};d.prototype.getLabelBounds=function(a){var b=2.5*Math.min(a.height/2,Math.round(a.height/8)+this.strokewidth-1);if(!this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST)||this.flipV&&this.direction==mxConstants.DIRECTION_WEST)a.y+=b,a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH||this.flipV&&this.direction==mxConstants.DIRECTION_NORTH)a.width-=b;else if(!this.flipV&&
this.direction==mxConstants.DIRECTION_WEST||this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST))a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_NORTH||this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH)a.x+=b,a.width-=b;return a};mxCellRenderer.prototype.defaultShapes.datastore=d;mxUtils.extend(e,mxCylinder);e.prototype.size=30;e.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,
@@ -1769,12 +1769,12 @@ mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPo
arguments)};mxCellRenderer.prototype.defaultShapes.plus=z;var ya=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};mxRhombus.prototype.paintVertexShape=function(a,b,c,d,e){ya.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var f=2*Math.max(2,this.strokewidth+
1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0<d&&0<e&&(a.setShadow(!1),ya.apply(this,[a,b,c,d,e]))}};mxUtils.extend(y,mxRectangleShape);y.prototype.isHtmlAllowed=function(){return!1};y.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};y.prototype.paintForeground=function(a,b,c,
d,e){if(null!=this.style){if(!this.outline&&1==this.style["double"]){var f=Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0<d&&0<e&&mxRectangleShape.prototype.paintBackground.apply(this,arguments)}a.setDashed(!1);var f=0,g;do{g=mxCellRenderer.prototype.defaultShapes[this.style["symbol"+f]];if(null!=g){var h=this.style["symbol"+f+"Align"],k=this.style["symbol"+f+"VerticalAlign"],l=this.style["symbol"+f+"Width"],m=this.style["symbol"+f+"Height"],
-na=this.style["symbol"+f+"Spacing"]||0,n=this.style["symbol"+f+"ArcSpacing"];null!=n&&(na+=this.getArcSize(d+this.strokewidth,e+this.strokewidth)*n);var n=b,p=c,n=h==mxConstants.ALIGN_CENTER?n+(d-l)/2:h==mxConstants.ALIGN_RIGHT?n+(d-l-na):n+na,p=k==mxConstants.ALIGN_MIDDLE?p+(e-m)/2:k==mxConstants.ALIGN_BOTTOM?p+(e-m-na):p+na;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,n,p,l,m);a.restore()}f++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,arguments)};
-mxCellRenderer.prototype.defaultShapes.ext=y;mxUtils.extend(u,mxCylinder);u.prototype.redrawPath=function(a,b,c,d,e,f){f?(a.moveTo(0,0),a.lineTo(d/2,e/2),a.lineTo(d,0),a.end()):(a.moveTo(0,0),a.lineTo(d,0),a.lineTo(d,e),a.lineTo(0,e),a.close())};mxCellRenderer.prototype.defaultShapes.message=u;mxUtils.extend(I,mxShape);I.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.ellipse(d/4,0,d/2,e/4);a.fillAndStroke();a.begin();a.moveTo(d/2,e/4);a.lineTo(d/2,2*e/3);a.moveTo(d/2,e/3);a.lineTo(0,
-e/3);a.moveTo(d/2,e/3);a.lineTo(d,e/3);a.moveTo(d/2,2*e/3);a.lineTo(0,e);a.moveTo(d/2,2*e/3);a.lineTo(d,e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlActor=I;mxUtils.extend(L,mxShape);L.prototype.getLabelBounds=function(a){return new mxRectangle(a.x+a.width/6,a.y,5*a.width/6,a.height)};L.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(0,e/4);a.lineTo(0,3*e/4);a.end();a.stroke();a.begin();a.moveTo(0,e/2);a.lineTo(d/6,e/2);a.end();a.stroke();a.ellipse(d/
-6,0,5*d/6,e);a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.umlBoundary=L;mxUtils.extend(D,mxEllipse);D.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(b+d/8,c+e);a.lineTo(b+7*d/8,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlEntity=D;mxUtils.extend(B,mxShape);B.prototype.paintVertexShape=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(d,0);a.lineTo(0,e);a.moveTo(0,0);a.lineTo(d,e);
-a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlDestroy=B;mxUtils.extend(E,mxShape);E.prototype.getLabelBounds=function(a){return new mxRectangle(a.x,a.y+a.height/8,a.width,7*a.height/8)};E.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(3*d/8,e/8*1.1);a.lineTo(5*d/8,0);a.end();a.stroke();a.ellipse(0,e/8,d,7*e/8);a.fillAndStroke()};E.prototype.paintForeground=function(a,b,c,d,e){a.begin();a.moveTo(3*d/8,e/8*1.1);a.lineTo(5*d/8,e/4);a.end();a.stroke()};
-mxCellRenderer.prototype.defaultShapes.umlControl=E;mxUtils.extend(C,mxRectangleShape);C.prototype.size=40;C.prototype.isHtmlAllowed=function(){return!1};C.prototype.getLabelBounds=function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"size",this.size))*this.scale));return new mxRectangle(a.x,a.y,a.width,b)};C.prototype.paintBackground=function(a,b,c,d,e){var f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))),g=mxUtils.getValue(this.style,
+ra=this.style["symbol"+f+"Spacing"]||0,n=this.style["symbol"+f+"VSpacing"]||ra,p=this.style["symbol"+f+"ArcSpacing"];null!=p&&(p*=this.getArcSize(d+this.strokewidth,e+this.strokewidth),ra+=p,n+=p);var p=b,q=c,p=h==mxConstants.ALIGN_CENTER?p+(d-l)/2:h==mxConstants.ALIGN_RIGHT?p+(d-l-ra):p+ra,q=k==mxConstants.ALIGN_MIDDLE?q+(e-m)/2:k==mxConstants.ALIGN_BOTTOM?q+(e-m-n):q+n;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,p,q,l,m);a.restore()}f++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,
+arguments)};mxCellRenderer.prototype.defaultShapes.ext=y;mxUtils.extend(u,mxCylinder);u.prototype.redrawPath=function(a,b,c,d,e,f){f?(a.moveTo(0,0),a.lineTo(d/2,e/2),a.lineTo(d,0),a.end()):(a.moveTo(0,0),a.lineTo(d,0),a.lineTo(d,e),a.lineTo(0,e),a.close())};mxCellRenderer.prototype.defaultShapes.message=u;mxUtils.extend(I,mxShape);I.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.ellipse(d/4,0,d/2,e/4);a.fillAndStroke();a.begin();a.moveTo(d/2,e/4);a.lineTo(d/2,2*e/3);a.moveTo(d/2,
+e/3);a.lineTo(0,e/3);a.moveTo(d/2,e/3);a.lineTo(d,e/3);a.moveTo(d/2,2*e/3);a.lineTo(0,e);a.moveTo(d/2,2*e/3);a.lineTo(d,e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlActor=I;mxUtils.extend(L,mxShape);L.prototype.getLabelBounds=function(a){return new mxRectangle(a.x+a.width/6,a.y,5*a.width/6,a.height)};L.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(0,e/4);a.lineTo(0,3*e/4);a.end();a.stroke();a.begin();a.moveTo(0,e/2);a.lineTo(d/6,e/2);a.end();
+a.stroke();a.ellipse(d/6,0,5*d/6,e);a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.umlBoundary=L;mxUtils.extend(D,mxEllipse);D.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(b+d/8,c+e);a.lineTo(b+7*d/8,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlEntity=D;mxUtils.extend(B,mxShape);B.prototype.paintVertexShape=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(d,0);a.lineTo(0,e);a.moveTo(0,
+0);a.lineTo(d,e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlDestroy=B;mxUtils.extend(E,mxShape);E.prototype.getLabelBounds=function(a){return new mxRectangle(a.x,a.y+a.height/8,a.width,7*a.height/8)};E.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(3*d/8,e/8*1.1);a.lineTo(5*d/8,0);a.end();a.stroke();a.ellipse(0,e/8,d,7*e/8);a.fillAndStroke()};E.prototype.paintForeground=function(a,b,c,d,e){a.begin();a.moveTo(3*d/8,e/8*1.1);a.lineTo(5*d/8,e/4);
+a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlControl=E;mxUtils.extend(C,mxRectangleShape);C.prototype.size=40;C.prototype.isHtmlAllowed=function(){return!1};C.prototype.getLabelBounds=function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"size",this.size))*this.scale));return new mxRectangle(a.x,a.y,a.width,b)};C.prototype.paintBackground=function(a,b,c,d,e){var f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))),g=mxUtils.getValue(this.style,
"participant");null==g||null==this.state?mxRectangleShape.prototype.paintBackground.call(this,a,b,c,d,f):(g=this.state.view.graph.cellRenderer.getShape(g),null!=g&&g!=C&&(g=new g,g.apply(this.state),a.save(),g.paintVertexShape(a,b,c,d,f),a.restore()));f<e&&(a.setDashed(!0),a.begin(),a.moveTo(b+d/2,c+f),a.lineTo(b+d/2,c+e),a.end(),a.stroke())};C.prototype.paintForeground=function(a,b,c,d,e){var f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))));mxRectangleShape.prototype.paintForeground.call(this,
a,b,c,d,Math.min(e,f))};mxCellRenderer.prototype.defaultShapes.umlLifeline=C;mxUtils.extend(H,mxShape);H.prototype.width=60;H.prototype.height=30;H.prototype.corner=10;H.prototype.getLabelBounds=function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.style,"width",this.width))*this.scale)),c=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"height",this.height))*this.scale));return new mxRectangle(a.x,a.y,b,c)};H.prototype.paintBackground=function(a,b,c,d,
e){var f=this.corner,g=Math.min(d,Math.max(f,parseFloat(mxUtils.getValue(this.style,"width",this.width)))),h=Math.min(e,Math.max(1.5*f,parseFloat(mxUtils.getValue(this.style,"height",this.height))));a.begin();a.moveTo(b,c);a.lineTo(b+g,c);a.lineTo(b+g,c+Math.max(0,h-1.5*f));a.lineTo(b+Math.max(0,g-f),c+h);a.lineTo(b,c+h);a.close();a.fillAndStroke();a.begin();a.moveTo(b+g,c);a.lineTo(b+d,c);a.lineTo(b+d,c+e);a.lineTo(b,c+e);a.lineTo(b,c+h);a.stroke()};mxCellRenderer.prototype.defaultShapes.umlFrame=
@@ -1802,8 +1802,8 @@ c);a.lineTo(b+d/2,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShape
function(a,b,c,d,e){mxRhombus.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();a.moveTo(b,c+e/2);a.lineTo(b+d,c+e/2);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.sortShape=fa;mxUtils.extend(V,mxEllipse);V.prototype.paintVertexShape=function(a,b,c,d,e){a.begin();a.moveTo(b,c);a.lineTo(b+d,c);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke();a.begin();a.moveTo(b,c+e);a.lineTo(b+d,c+e);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.collate=
V;mxUtils.extend(X,mxEllipse);X.prototype.paintVertexShape=function(a,b,c,d,e){var f=c+e-5;a.begin();a.moveTo(b,c);a.lineTo(b,c+e);a.moveTo(b,f);a.lineTo(b+10,f-5);a.moveTo(b,f);a.lineTo(b+10,f+5);a.moveTo(b,f);a.lineTo(b+d,f);a.moveTo(b+d,c);a.lineTo(b+d,c+e);a.moveTo(b+d,f);a.lineTo(b+d-10,f-5);a.moveTo(b+d,f);a.lineTo(b+d-10,f+5);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.dimension=X;mxUtils.extend(ua,mxEllipse);ua.prototype.paintVertexShape=function(a,b,c,d,e){this.outline||a.setStrokeColor(null);
mxRectangleShape.prototype.paintBackground.apply(this,arguments);null!=this.style&&(a.setStrokeColor(this.stroke),a.rect(b,c,d,e),a.fill(),"1"==mxUtils.getValue(this.style,"top","1")&&(a.begin(),a.moveTo(b,c),a.lineTo(b+d,c),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,"right","1")&&(a.begin(),a.moveTo(b+d,c),a.lineTo(b+d,c+e),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,"bottom","1")&&(a.begin(),a.moveTo(b+d,c+e),a.lineTo(b,c+e),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,
-"left","1")&&(a.begin(),a.moveTo(b,c+e),a.lineTo(b,c),a.end(),a.stroke()))};mxCellRenderer.prototype.defaultShapes.partialRectangle=ua;mxUtils.extend(oa,mxEllipse);oa.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();"vertical"==mxUtils.getValue(this.style,"line")?(a.moveTo(b+d/2,c),a.lineTo(b+d/2,c+e)):(a.moveTo(b,c+e/2),a.lineTo(b+d,c+e/2));a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.lineEllipse=oa;
-mxUtils.extend(pa,mxActor);pa.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/2);a.moveTo(0,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.delay=pa;mxUtils.extend(ja,mxActor);ja.prototype.size=.2;ja.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(e,d);var f=Math.max(0,Math.min(b,b*parseFloat(mxUtils.getValue(this.style,"size",this.size))));b=(e-f)/2;c=b+f;var g=(d-f)/2,f=g+f;a.moveTo(0,b);a.lineTo(g,b);
+"left","1")&&(a.begin(),a.moveTo(b,c+e),a.lineTo(b,c),a.end(),a.stroke()))};mxCellRenderer.prototype.defaultShapes.partialRectangle=ua;mxUtils.extend(na,mxEllipse);na.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();"vertical"==mxUtils.getValue(this.style,"line")?(a.moveTo(b+d/2,c),a.lineTo(b+d/2,c+e)):(a.moveTo(b,c+e/2),a.lineTo(b+d,c+e/2));a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.lineEllipse=na;
+mxUtils.extend(oa,mxActor);oa.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/2);a.moveTo(0,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.delay=oa;mxUtils.extend(ja,mxActor);ja.prototype.size=.2;ja.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(e,d);var f=Math.max(0,Math.min(b,b*parseFloat(mxUtils.getValue(this.style,"size",this.size))));b=(e-f)/2;c=b+f;var g=(d-f)/2,f=g+f;a.moveTo(0,b);a.lineTo(g,b);
a.lineTo(g,0);a.lineTo(f,0);a.lineTo(f,b);a.lineTo(d,b);a.lineTo(d,c);a.lineTo(f,c);a.lineTo(f,e);a.lineTo(g,e);a.lineTo(g,c);a.lineTo(0,c);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.cross=ja;mxUtils.extend(ka,mxActor);ka.prototype.size=.25;ka.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/2);c=Math.min(d-b,Math.max(0,parseFloat(mxUtils.getValue(this.style,"size",this.size)))*d);a.moveTo(0,e/2);a.lineTo(c,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(c,
e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.display=ka;mxMarker.addMarker("dash",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.stroke()}});mxMarker.addMarker("cross",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.moveTo(d.x-m/2+n/2,d.y-n/2-m/2);a.lineTo(d.x-
n/2-3*m/2,d.y-3*n/2+m/2);a.stroke()}});mxMarker.addMarker("circle",xa);mxMarker.addMarker("circlePlus",function(a,b,c,d,e,f,g,h,k,l){var m=d.clone(),n=xa.apply(this,arguments),p=e*(g+2*k),q=f*(g+2*k);return function(){n.apply(this,arguments);a.begin();a.moveTo(m.x-e*k,m.y-f*k);a.lineTo(m.x-2*p+e*k,m.y-2*q+f*k);a.moveTo(m.x-p-q+f*k,m.y-q+p-e*k);a.lineTo(m.x+q-p-f*k,m.y-q-p+e*k);a.stroke()}});mxMarker.addMarker("async",function(a,b,c,d,e,f,g,h,k,l){b=e*k*1.118;c=f*k*1.118;e*=g+k;f*=g+k;var m=d.clone();
@@ -1811,7 +1811,7 @@ m.x-=b;m.y-=c;d.x+=1*-e-b;d.y+=1*-f-c;return function(){a.begin();a.moveTo(m.x,m
function(a,b,c){return la(a,["width"],b,function(b,d,e,f,g){g=a.shape.getEdgeWidth()*a.view.scale+c;return new mxPoint(f.x+d*b/4+e*g/2,f.y+e*b/4-d*g/2)},function(b,d,e,f,g,h){b=Math.sqrt(mxUtils.ptSegDistSq(f.x,f.y,g.x,g.y,h.x,h.y));a.style.width=Math.round(2*b)/a.view.scale-c})},la=function(a,b,c,d,e){var f=a.absolutePoints,g=f.length-1,h=a.view.translate,k=a.view.scale,l=c?f[0]:f[g],m=c?f[1]:f[g-1],n=m.x-l.x,p=m.y-l.y,q=Math.sqrt(n*n+p*p);return ba(a,b,function(a){a=d.call(this,q,n/q,p/q,l,m);return new mxPoint(a.x/
k-h.x,a.y/k-h.y)},function(a,b,c){a=Math.sqrt(n*n+p*p);b.x=(b.x+h.x)*k;b.y=(b.y+h.y)*k;e.call(this,a,n/a,p/a,l,m,b,c)})},ha=function(a){return function(b){return[ba(b,["arrowWidth","arrowSize"],function(b){var c=Math.max(0,Math.min(1,mxUtils.getValue(this.state.style,"arrowWidth",G.prototype.arrowWidth))),d=Math.max(0,Math.min(a,mxUtils.getValue(this.state.style,"arrowSize",G.prototype.arrowSize)));return new mxPoint(b.x+(1-d)*b.width,b.y+(1-c)*b.height/2)},function(b,c){this.state.style.arrowWidth=
Math.max(0,Math.min(1,Math.abs(b.y+b.height/2-c.y)/b.height*2));this.state.style.arrowSize=Math.max(0,Math.min(a,(b.x+b.width-c.x)/b.width))})]}},va=function(a,b,c){return function(d){var e=[ba(d,["size"],function(c){var d=Math.max(0,Math.min(c.width,Math.min(c.height,parseFloat(mxUtils.getValue(this.state.style,"size",b)))))*a;return new mxPoint(c.x+d,c.y+d)},function(b,c){this.state.style.size=Math.round(Math.max(0,Math.min(Math.min(b.width,c.x-b.x),Math.min(b.height,c.y-b.y)))/a)})];c&&mxUtils.getValue(d.style,
-mxConstants.STYLE_ROUNDED,!1)&&e.push(ga(d));return e}},ra=function(a,b,c){c=null!=c?c:1;return function(d){var e=[ba(d,["size"],function(b){var c=parseFloat(mxUtils.getValue(this.state.style,"size",a));return new mxPoint(b.x+c*b.width,b.getCenterY())},function(a,b){this.state.style.size=Math.max(0,Math.min(c,(b.x-a.x)/a.width))})];b&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(ga(d));return e}},Aa=function(a){return function(b){var c=[ba(b,["size"],function(b){var c=Math.max(0,
+mxConstants.STYLE_ROUNDED,!1)&&e.push(ga(d));return e}},qa=function(a,b,c){c=null!=c?c:1;return function(d){var e=[ba(d,["size"],function(b){var c=parseFloat(mxUtils.getValue(this.state.style,"size",a));return new mxPoint(b.x+c*b.width,b.getCenterY())},function(a,b){this.state.style.size=Math.max(0,Math.min(c,(b.x-a.x)/a.width))})];b&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(ga(d));return e}},Aa=function(a){return function(b){var c=[ba(b,["size"],function(b){var c=Math.max(0,
Math.min(a,parseFloat(mxUtils.getValue(this.state.style,"size",n.prototype.size))));return new mxPoint(b.x+c*b.width*.75,b.y+b.height/4)},function(b,c){this.state.style.size=Math.max(0,Math.min(a,(c.x-b.x)/(.75*b.width)))})];mxUtils.getValue(b.style,mxConstants.STYLE_ROUNDED,!1)&&c.push(ga(b));return c}},ma=function(){return function(a){var b=[];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(ga(a));return b}},ga=function(a,b){return ba(a,[mxConstants.STYLE_ARCSIZE],function(c){var d=
Math.max(0,parseFloat(mxUtils.getValue(a.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)))/100;return new mxPoint(c.x+c.width-Math.min(Math.max(c.width/2,c.height/2),Math.min(c.width,c.height)*d),c.y+(null!=b?b:c.height/8))},function(a,b,c){this.state.style[mxConstants.STYLE_ARCSIZE]=Math.round(Math.min(50,Math.max(0,100*(a.width-b.x+a.x)/Math.min(a.width,a.height))))})},ba=function(a,b,c,d,e){a=new mxHandle(a,null,mxVertexHandler.prototype.secondaryHandleImage);a.execute=
function(){for(var a=0;a<b.length;a++)this.copyStyle(b[a])};a.getPosition=c;a.setPosition=d;a.ignoreGrid=null!=e?e:!0;return a},wa={link:function(a){return[za(a,!0,10),za(a,!1,10)]},flexArrow:function(a){var b=a.view.graph.gridSize/a.view.scale,c=[];mxUtils.getValue(a.style,mxConstants.STYLE_STARTARROW,mxConstants.NONE)!=mxConstants.NONE&&(c.push(la(a,["width",mxConstants.STYLE_STARTSIZE,mxConstants.STYLE_ENDSIZE],!0,function(b,c,d,e,f){b=(a.shape.getEdgeWidth()-a.shape.strokewidth)*a.view.scale;
@@ -1836,7 +1836,7 @@ Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))})]},tee:function(a){return[ba
singleArrow:ha(1),doubleArrow:ha(.5),folder:function(a){return[ba(a,["tabWidth","tabHeight"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"tabWidth",g.prototype.tabWidth))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"tabHeight",g.prototype.tabHeight)));mxUtils.getValue(this.state.style,"tabPosition",g.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(b=a.width-b);return new mxPoint(a.x+b,a.y+c)},function(a,b){var c=Math.max(0,Math.min(a.width,
b.x-a.x));mxUtils.getValue(this.state.style,"tabPosition",g.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(c=a.width-c);this.state.style.tabWidth=Math.round(c);this.state.style.tabHeight=Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))})]},document:function(a){return[ba(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",l.prototype.size))));return new mxPoint(a.x+3*a.width/4,a.y+(1-b)*a.height)},function(a,b){this.state.style.size=Math.max(0,
Math.min(1,(a.y+a.height-b.y)/a.height))})]},tape:function(a){return[ba(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",k.prototype.size))));return new mxPoint(a.getCenterX(),a.y+b*a.height/2)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,(b.y-a.y)/a.height*2))})]},offPageConnector:function(a){return[ba(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",ea.prototype.size))));return new mxPoint(a.getCenterX(),
-a.y+(1-b)*a.height)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,(a.y+a.height-b.y)/a.height))})]},step:ra(x.prototype.size,!0),hexagon:ra(w.prototype.size,!0,.5),curlyBracket:ra(p.prototype.size,!1),display:ra(ka.prototype.size,!1),cube:va(1,a.prototype.size,!1),card:va(.5,h.prototype.size,!0),loopLimit:va(.5,P.prototype.size,!0),trapezoid:Aa(.5),parallelogram:Aa(1)};Graph.createHandle=ba;Graph.handleFactory=wa;mxVertexHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()&&
+a.y+(1-b)*a.height)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,(a.y+a.height-b.y)/a.height))})]},step:qa(x.prototype.size,!0),hexagon:qa(w.prototype.size,!0,.5),curlyBracket:qa(p.prototype.size,!1),display:qa(ka.prototype.size,!1),cube:va(1,a.prototype.size,!1),card:va(.5,h.prototype.size,!0),loopLimit:va(.5,P.prototype.size,!0),trapezoid:Aa(.5),parallelogram:Aa(1)};Graph.createHandle=ba;Graph.handleFactory=wa;mxVertexHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()&&
this.graph.isCellRotatable(this.state.cell)){var a=this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_RECTANGLE);a=wa[a];if(null!=a)return a(this.state)}return null};mxEdgeHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()){var a=this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_CONNECTOR);
a=wa[a];if(null!=a)return a(this.state)}return null}}else Graph.createHandle=function(){},Graph.handleFactory={};var sa=new mxPoint(1,0),ta=new mxPoint(1,0),ha=mxUtils.toRadians(-30),sa=mxUtils.getRotatedPoint(sa,Math.cos(ha),Math.sin(ha)),ha=mxUtils.toRadians(-150),ta=mxUtils.getRotatedPoint(ta,Math.cos(ha),Math.sin(ha));mxEdgeStyle.IsometricConnector=function(a,b,c,d,e){var f=a.view;d=null!=d&&0<d.length?d[0]:null;var g=a.absolutePoints,h=g[0],g=g[g.length-1];null!=d&&(d=f.transformControlPoint(a,
d));null==h&&null!=b&&(h=new mxPoint(b.getCenterX(),b.getCenterY()));null==g&&null!=c&&(g=new mxPoint(c.getCenterX(),c.getCenterY()));var k=sa.x,l=sa.y,m=ta.x,n=ta.y,p="horizontal"==mxUtils.getValue(a.style,"elbow","horizontal");if(null!=g&&null!=h){a=function(a,b,c){a-=q.x;var d=b-q.y;b=(n*a-m*d)/(k*n-l*m);a=(l*a-k*d)/(l*m-k*n);p?(c&&(q=new mxPoint(q.x+k*b,q.y+l*b),e.push(q)),q=new mxPoint(q.x+m*a,q.y+n*a)):(c&&(q=new mxPoint(q.x+m*a,q.y+n*a),e.push(q)),q=new mxPoint(q.x+k*b,q.y+l*b));e.push(q)};
@@ -1844,7 +1844,7 @@ var q=h;null==d&&(d=new mxPoint(h.x+(g.x-h.x)/2,h.y+(g.y-h.y)/2));a(d.x,d.y,!0);
0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),
new mxConnectionConstraint(new mxPoint(.75,1),!0)];mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];mxLabel.prototype.constraints=mxRectangleShape.prototype.constraints;
mxImageShape.prototype.constraints=mxRectangleShape.prototype.constraints;mxSwimlane.prototype.constraints=mxRectangleShape.prototype.constraints;z.prototype.constraints=mxRectangleShape.prototype.constraints;e.prototype.constraints=mxRectangleShape.prototype.constraints;h.prototype.constraints=mxRectangleShape.prototype.constraints;a.prototype.constraints=mxRectangleShape.prototype.constraints;g.prototype.constraints=mxRectangleShape.prototype.constraints;K.prototype.constraints=mxRectangleShape.prototype.constraints;
-T.prototype.constraints=mxRectangleShape.prototype.constraints;W.prototype.constraints=mxEllipse.prototype.constraints;O.prototype.constraints=mxEllipse.prototype.constraints;Q.prototype.constraints=mxEllipse.prototype.constraints;oa.prototype.constraints=mxEllipse.prototype.constraints;R.prototype.constraints=mxRectangleShape.prototype.constraints;pa.prototype.constraints=mxRectangleShape.prototype.constraints;ka.prototype.constraints=mxRectangleShape.prototype.constraints;P.prototype.constraints=
+T.prototype.constraints=mxRectangleShape.prototype.constraints;W.prototype.constraints=mxEllipse.prototype.constraints;O.prototype.constraints=mxEllipse.prototype.constraints;Q.prototype.constraints=mxEllipse.prototype.constraints;na.prototype.constraints=mxEllipse.prototype.constraints;R.prototype.constraints=mxRectangleShape.prototype.constraints;oa.prototype.constraints=mxRectangleShape.prototype.constraints;ka.prototype.constraints=mxRectangleShape.prototype.constraints;P.prototype.constraints=
mxRectangleShape.prototype.constraints;ea.prototype.constraints=mxRectangleShape.prototype.constraints;mxCylinder.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.15,.05),!1),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.85,.05),!1),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.3),!0),new mxConnectionConstraint(new mxPoint(1,
.5),!0),new mxConnectionConstraint(new mxPoint(1,.7),!0),new mxConnectionConstraint(new mxPoint(.15,.95),!1),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.85,.95),!1)];I.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.1),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.75,.1),!1),new mxConnectionConstraint(new mxPoint(0,1/3),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(1,
1/3),!1),new mxConnectionConstraint(new mxPoint(1,1),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1)];U.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,
diff --git a/war/js/extensions.min.js b/war/js/extensions.min.js
index 753e5f86..b700bada 100644
--- a/war/js/extensions.min.js
+++ b/war/js/extensions.min.js
@@ -1,55 +1,70 @@
-(function(){function u(a){a=null!=a.Text?a.Text:null!=a.Value?a.Value:a.Lane_0;return null!=a&&null!=a.t?a.t:""}function n(a){return null!=a.Action?a.Action:a}function v(a,c){var d=n(c);if(null!=d){var b=x[d.Class];null!=b&&(a.style+=b);b=null!=d.Properties?d.Properties:d;if(null!=b){a.value=u(b);"ImageSearchBlock2"==d.Class&&(a.style+="image="+b.URL+";");a.style+=h(mxConstants.STYLE_STROKEWIDTH,b.LineWidth,"1");a.style+=h(mxConstants.STYLE_STROKECOLOR,b.LineColor.substring(0,7),"#000000");a.style+=
+(function(){function u(a){a=null!=a.Text?a.Text:null!=a.Value?a.Value:a.Lane_0;return null!=a&&null!=a.t?a.t:""}function n(a){return null!=a.Action?a.Action:a}function w(a,c){var d=n(c);if(null!=d){var b=y[d.Class];null!=b&&(a.style+=b);b=null!=d.Properties?d.Properties:d;if(null!=b){a.value=u(b);"ImageSearchBlock2"==d.Class&&(a.style+="image="+b.URL+";");a.style+=h(mxConstants.STYLE_STROKEWIDTH,b.LineWidth,"1");a.style+=h(mxConstants.STYLE_STROKECOLOR,b.LineColor.substring(0,7),"#000000");a.style+=
h(mxConstants.STYLE_ALIGN,b.TextAlign,"center");a.style+=h(mxConstants.STYLE_VERTICAL_ALIGN,b.TextVAlign,"middle");a.style+=h(mxConstants.STYLE_OPACITY,b.Opacity,"100");if(null!=b.Rotation){var f=mxUtils.toDegree(parseFloat(b.Rotation));"AdvancedSwimLaneBlockRotated"==d.Class&&(f+=90,a.geometry.rotate90());a.style+="rotation="+f+";"}b.FlipX&&(a.style+="flipH=1;");b.FlipY&&(a.style+="flipV=1;");null!=b.Shadow&&(a.style+=mxConstants.STYLE_SHADOW+"=1;");"dashed"==b.StrokeStyle?a.style+="dashed=1;":"dotted"==
-b.StrokeStyle&&(a.style+="dashed=1;dashPattern=1 4;");null!=b.FillColor&&("object"===typeof b.FillColor?null!=b.FillColor.cs&&1<b.FillColor.cs.length&&(a.style+=h(mxConstants.STYLE_FILLCOLOR,b.FillColor.cs[0].c.substring(0,7)),a.style+=h(mxConstants.STYLE_GRADIENTCOLOR,b.FillColor.cs[1].c.substring(0,7))):"string"===typeof b.FillColor&&(a.style+=h(mxConstants.STYLE_FILLCOLOR,b.FillColor.substring(0,7),"#FFFFFF")));if(a.edge){a.style+="rounded=1;arcSize=5;";if("diagonal"!=b.Shape)if(null!=b.ElbowPoints)for(a.geometry.points=
-[],d=0;d<b.ElbowPoints.length;d++)a.geometry.points.push(new mxPoint(Math.round(.6*b.ElbowPoints[d].x+0),Math.round(.6*b.ElbowPoints[d].y+0)));else"elbow"==b.Shape?a.style=null!=b.Endpoint1.Block&&null!=b.Endpoint1.Block?a.style+"edgeStyle=orthogonalEdgeStyle;":a.style+"edgeStyle=elbowEdgeStyle;":null!=b.Endpoint1.Block&&null!=b.Endpoint1.Block&&(a.style+="edgeStyle=orthogonalEdgeStyle;","curve"==b.Shape&&(a.style+="curved=1;"));l(a,b.Endpoint1,!0);l(a,b.Endpoint2,!1)}}}}function w(a){var c=n(a).Properties.BoundingBox,
-c=new mxCell("",new mxGeometry(Math.round(.6*c.x+0),Math.round(.6*c.y+0),Math.round(.6*c.w),Math.round(.6*c.h)),"html=1;whiteSpace=wrap;");c.vertex=!0;v(c,a);return c}function h(a,c,d,b){null!=c&&null!=b&&(c=b(c));return null!=c&&c!=d?a+"="+c+";":""}function l(a,c,d){null!=c&&(null!=c.LinkX&&null!=c.LinkY&&(a.style+=(d?"exitX":"entryX")+"="+c.LinkX+";"+(d?"exitY":"entryY")+"="+c.LinkY+";"+(d?"exitPerimeter":"entryPerimeter")+"=0;"),"Arrow"==c.Style?a.style+=(d?"startArrow":"endArrow")+"=block;":"Hollow Arrow"==
-c.Style?(a.style+=(d?"startArrow":"endArrow")+"=block;",a.style+=(d?"startFill":"endFill")+"=0;"):"Open Arrow"==c.Style&&(a.style+=(d?"startArrow":"endArrow")+"=open;",a.style+=(d?"startSize":"endSize")+"=12;"))}var x={DefaultTextBlockNew:"text;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;",DefaultSquareBlock:"rounded=1;arcSize=5;",DefaultNoteBlock:"shape=note;size=15;",HotspotBlock:"strokeColor=none;opacity=50;",ImageSearchBlock2:"shape=image;",ProcessBlock:"rounded=1;arcSize=5;",
-DecisionBlock:"rhombus;rounded=1;arcSize=5;",TerminatorBlock:"rounded=1;arcSize=50;",PredefinedProcessBlock:"shape=process;rounded=1;arcSize=5;",DocumentBlock:"shape=document;",MultiDocumentBlock:"shape=mxgraph.flowchart.multi-document;",ManualInputBlock:"shape=manualInput;size=15;rounded=1;arcSize=5;",PreparationBlock:"shape=hexagon;rounded=1;arcSize=5;",DataBlockNew:"shape=parallelogram;rounded=1;arcSize=5;",DatabaseBlock:"shape=cylinder;",DirectAccessStorageBlock:"shape=mxgraph.flowchart.direct_data;",
-InternalStorageBlock:"shape=internalStorage;rounded=1;arcSize=5;dx=10;dy=10;",PaperTapeBlock:"shape=tape;size=0.2;",ManualOperationBlockNew:"shape=trapezoid;rounded=1;arcSize=5;flipV=1;",DelayBlock:"shape=delay;",StoredDataBlock:"shape=dataStorage;",MergeBlock:"triangle;direction=south;rounded=1;arcSize=5;",ConnectorBlock:"ellipse;",OrBlock:"shape=mxgraph.flowchart.summing_function;",SummingJunctionBlock:"shape=mxgraph.flowchart.or;",DisplayBlock:"shape=display;",OffPageLinkBlock:"shape=offPageConnector;rounded=1;arcSize=5;",
-BraceNoteBlock:"shape=curlyBracket;rounded=1;",NoteBlock:"shape=mxgraph.flowchart.annotation_1;",AdvancedSwimLaneBlock:"swimlane;rounded=1;arcSize=5;",AdvancedSwimLaneBlockRotated:"swimlane;horizontal=0;rounded=1;arcSize=5;",RectangleContainerBlock:"fillColor=none;container=1;rounded=1;arcSize=5;",DiamondContainerBlock:"shape=rhombus;fillColor=none;container=1;",RoundedRectangleContainerBlock:"rounded=1;fillColor=none;container=1;",CircleContainerBlock:"shape=ellipse;fillColor=none;container=1;",
-PillContainerBlock:"rounded=1;arcSize=50;fillColor=none;container=1;",IsoscelesTriangleBlock:"triangle;direction=north;",RightTriangleBlock:"shape=mxgraph.basic.orthogonal_triangle;",PentagonBlock:"shape=mxgraph.basic.pentagon;",HexagonBlock:"shape=hexagon;rounded=1;arcSize=5;",OctagonBlock:"shape=mxgraph.basic.octagon;",CrossBlock:"shape=cross;size=0.6;",CloudBlock:"ellipse;shape=cloud;",HeartBlock:"shape=mxgraph.basic.heart;",RightArrowBlock:"shape=singleArrow;arrowWidth=0.5;arrowSize=0.3;",DoubleArrowBlock:"shape=doubleArrow;arrowWidth=0.5;arrowSize=0.3;",
-CalloutBlock:"shape=mxgraph.basic.rectangular_callout;",ShapeCircleBlock:"ellipse;",ShapePolyStarBlock:"shape=mxgraph.basic.star;",ShapeDiamondBlock:"rhombus;rounded=1;arcSize=5;",AndroidIconCheck:"shape=mxgraph.ios7.misc.check;",AndroidIconCollapse:"shape=mxgraph.ios7.misc.up;",AndroidIconExpand:"shape=mxgraph.ios7.misc.down;",AndroidIconNext:"shape=mxgraph.ios7.misc.right;",AndroidIconPrevious:"shape=mxgraph.ios7.misc.left;",AndroidIconInformation:"shape=mxgraph.ios7.icons.info;",AndroidIconSearch:"shape=mxgraph.ios7.icons.looking_glass;",
-AndroidIconSettings:"shape=mxgraph.ios7.icons.volume;direction=south;",AndroidIconTrash:"shape=mxgraph.ios7.icons.trashcan;",AndroidIconEmail:"shape=mxgraph.mockup.misc.mail2;",AndroidIconNew:"shape=mxgraph.ios7.misc.flagged;",UMLClassBlock:"rounded=1;",UMLActiveClassBlock:"shape=mxgraph.flowchart.predefined_process;",UMLPackageBlock:"shape=folder;tabPosition=left;",UMLNoteBlock:"shape=note;size=15;",UMLTextBlock:"shape=text;strokeColor=none;fillColor=none;",UMLActorBlock:"shape=umlActor;",UMLUseCaseBlock:"shape=ellipse;",
-UMLCircleContainerBlock:"shape=ellipse;container=1;",UMLRectangleContainerBlock:"rounded=1;container=1;",UMLOptionLoopBlock:"shape=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;",UMLStartBlock:"shape=ellipse;fillColor=#000000;",UMLStateBlock:"shape=rect;rounded=1;",UMLDecisionBlock:"shape=rhombus;rounded=1;",UMLHForkJoinBlock:"shape=rect;rounded=1;fillColor=#000000;",UMLVForkJoinBlock:"shape=rect;rounded=1;fillColor=#000000;",UMLFlowFinalBlock:"shape=mxgraph.flowchart.or;",
-UMLHistoryStateBlock:"shape=ellipse;",UMLEndBlock:"shape=mxgraph.bpmn.shape;outline=end;symbol=terminate;",UMLObjectBlock:"shape=rect;rounded=1;",UMLSendSignalBlock:"shape=mxgraph.sysml.sendSigAct;",UMLReceiveSignalBlock:"shape=mxgraph.sysml.accEvent;",UMLAcceptTimeEventActionBlock:"shape=mxgraph.sysml.timeEvent;",UMLOffPageLinkBlock:"shape=mxgraph.sysml.sendSigAct;direction=south;",UMLActivationBlock:"shape=rect;rounded=1;",UMLDeletionBlock:"shape=mxgraph.sysml.x;strokeWidth=4;",UMLSeqEntityBlock:"shape=mxgraph.electrical.radio.microphone_1;direction=north;",
-UMLComponentBlock:"shape=component;align=left;spacingLeft=36;",UMLNodeBlock:"shape=cube;size=12;flipH=1;",UMLComponentInterfaceBlock:"shape=ellipse;",UMLProvidedInterfaceBlock:"shape=lollipop;direction=south;",UMLRequiredInterfaceBlock:"shape=requires;direction=north;",UMLEntityBlock:"shape=rect;rounded=1;",UMLWeakEntityBlock:"shape=ext;double=1;rounded=1;",UMLAttributeBlock:"shape=ellipse;",UMLMultivaluedAttributeBlock:"shape=doubleEllipse;",UMLRelationshipBlock:"shape=rhombus;rounded=1;",UMLWeakRelationshipBlock:"shape=rhombus;rounded=1;double=1;",
-DFDExternalEntityBlock2:"shape=rect;rounded=1;",YDMDFDProcessBlock:"shape=ellipse;",YDMDFDDataStoreBlock:"shape=mxgraph.bootstrap.horLines;",GSDFDProcessBlock:"shape=swimlane;rounded=1;",GSDFDProcessBlock2:"shape=rect;rounded=1;",OrgBlock:"shape=rect;rounded=1;",VSMCustomerSupplierBlock:"shape=mxgraph.lean_mapping.outside_sources;",VSMDedicatedProcessBlock:"shape=mxgraph.lean_mapping.manufacturing_process;",VSMSharedProcessBlock:"shape=mxgraph.lean_mapping.manufacturing_process_shared;",VSMWorkcellBlock:"shape=mxgraph.lean_mapping.work_cell;",
+b.StrokeStyle&&(a.style+="dashed=1;dashPattern=1 4;");null==b.FillColor||"AWSAndroidBlock3 AWSiOSBlock3 AWSJavaBlock3 AWSJavaScript AWSNetBlock3 AWSNodeJSBlock3 AWSPHPBlock3 AWSPythonBlock3 AWSRubyBlock3 AWSXamarin AWSCLIBlock3 AWSEclipseToolkitBlock3 AWSVisualStudioToolkitBlock3 AWSWindowsPowershellToolkitBlock3".split(" ").includes(d.Class)||("object"===typeof b.FillColor?null!=b.FillColor.cs&&1<b.FillColor.cs.length&&(a.style+=h(mxConstants.STYLE_FILLCOLOR,b.FillColor.cs[0].c.substring(0,7)),a.style+=
+h(mxConstants.STYLE_GRADIENTCOLOR,b.FillColor.cs[1].c.substring(0,7))):"string"===typeof b.FillColor&&(a.style+=h(mxConstants.STYLE_FILLCOLOR,b.FillColor.substring(0,7),"#FFFFFF")));if(a.edge){a.style+="rounded=1;arcSize=5;";if("diagonal"!=b.Shape)if(null!=b.ElbowPoints)for(a.geometry.points=[],d=0;d<b.ElbowPoints.length;d++)a.geometry.points.push(new mxPoint(Math.round(.6*b.ElbowPoints[d].x+0),Math.round(.6*b.ElbowPoints[d].y+0)));else"elbow"==b.Shape?a.style=null!=b.Endpoint1.Block&&null!=b.Endpoint1.Block?
+a.style+"edgeStyle=orthogonalEdgeStyle;":a.style+"edgeStyle=elbowEdgeStyle;":null!=b.Endpoint1.Block&&null!=b.Endpoint1.Block&&(a.style+="edgeStyle=orthogonalEdgeStyle;","curve"==b.Shape&&(a.style+="curved=1;"));l(a,b.Endpoint1,!0);l(a,b.Endpoint2,!1)}}}}function x(a){var c=n(a).Properties.BoundingBox;a.Class.startsWith("AWS")&&(c.h-=20);v=new mxCell("",new mxGeometry(Math.round(.6*c.x+0),Math.round(.6*c.y+0),Math.round(.6*c.w),Math.round(.6*c.h)),"html=1;whiteSpace=wrap;");v.vertex=!0;w(v,a);return v}
+function h(a,c,d,b){null!=c&&null!=b&&(c=b(c));return null!=c&&c!=d?a+"="+c+";":""}function l(a,c,d){null!=c&&(null!=c.LinkX&&null!=c.LinkY&&(a.style+=(d?"exitX":"entryX")+"="+c.LinkX+";"+(d?"exitY":"entryY")+"="+c.LinkY+";"+(d?"exitPerimeter":"entryPerimeter")+"=0;"),"Arrow"==c.Style?a.style+=(d?"startArrow":"endArrow")+"=block;":"Hollow Arrow"==c.Style?(a.style+=(d?"startArrow":"endArrow")+"=block;",a.style+=(d?"startFill":"endFill")+"=0;"):"Open Arrow"==c.Style&&(a.style+=(d?"startArrow":"endArrow")+
+"=open;",a.style+=(d?"startSize":"endSize")+"=12;"))}var y={DefaultTextBlockNew:"text;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;",DefaultSquareBlock:"rounded=1;arcSize=5;",DefaultNoteBlock:"shape=note;size=15;",HotspotBlock:"strokeColor=none;opacity=50;",ImageSearchBlock2:"shape=image;",ProcessBlock:"rounded=1;arcSize=5;",DecisionBlock:"rhombus;rounded=1;arcSize=5;",TerminatorBlock:"rounded=1;arcSize=50;",PredefinedProcessBlock:"shape=process;rounded=1;arcSize=5;",DocumentBlock:"shape=document;",
+MultiDocumentBlock:"shape=mxgraph.flowchart.multi-document;",ManualInputBlock:"shape=manualInput;size=15;rounded=1;arcSize=5;",PreparationBlock:"shape=hexagon;rounded=1;arcSize=5;",DataBlockNew:"shape=parallelogram;rounded=1;arcSize=5;",DatabaseBlock:"shape=cylinder;",DirectAccessStorageBlock:"shape=mxgraph.flowchart.direct_data;",InternalStorageBlock:"shape=internalStorage;rounded=1;arcSize=5;dx=10;dy=10;",PaperTapeBlock:"shape=tape;size=0.2;",ManualOperationBlockNew:"shape=trapezoid;rounded=1;arcSize=5;flipV=1;",
+DelayBlock:"shape=delay;",StoredDataBlock:"shape=dataStorage;",MergeBlock:"triangle;direction=south;rounded=1;arcSize=5;",ConnectorBlock:"ellipse;",OrBlock:"shape=mxgraph.flowchart.summing_function;",SummingJunctionBlock:"shape=mxgraph.flowchart.or;",DisplayBlock:"shape=display;",OffPageLinkBlock:"shape=offPageConnector;rounded=1;arcSize=5;",BraceNoteBlock:"shape=curlyBracket;rounded=1;",NoteBlock:"shape=mxgraph.flowchart.annotation_1;",AdvancedSwimLaneBlock:"swimlane;rounded=1;arcSize=5;",AdvancedSwimLaneBlockRotated:"swimlane;horizontal=0;rounded=1;arcSize=5;",
+RectangleContainerBlock:"fillColor=none;container=1;rounded=1;arcSize=5;",DiamondContainerBlock:"shape=rhombus;fillColor=none;container=1;",RoundedRectangleContainerBlock:"rounded=1;fillColor=none;container=1;",CircleContainerBlock:"shape=ellipse;fillColor=none;container=1;",PillContainerBlock:"rounded=1;arcSize=50;fillColor=none;container=1;",IsoscelesTriangleBlock:"triangle;direction=north;",RightTriangleBlock:"shape=mxgraph.basic.orthogonal_triangle;",PentagonBlock:"shape=mxgraph.basic.pentagon;",
+HexagonBlock:"shape=hexagon;rounded=1;arcSize=5;",OctagonBlock:"shape=mxgraph.basic.octagon;",CrossBlock:"shape=cross;size=0.6;",CloudBlock:"ellipse;shape=cloud;",HeartBlock:"shape=mxgraph.basic.heart;",RightArrowBlock:"shape=singleArrow;arrowWidth=0.5;arrowSize=0.3;",DoubleArrowBlock:"shape=doubleArrow;arrowWidth=0.5;arrowSize=0.3;",CalloutBlock:"shape=mxgraph.basic.rectangular_callout;",ShapeCircleBlock:"ellipse;",ShapePolyStarBlock:"shape=mxgraph.basic.star;",ShapeDiamondBlock:"rhombus;rounded=1;arcSize=5;",
+AndroidIconCheck:"shape=mxgraph.ios7.misc.check;",AndroidIconCancel:"shape=mxgraph.atlassian.x;",AndroidIconCollapse:"shape=mxgraph.ios7.misc.up;",AndroidIconExpand:"shape=mxgraph.ios7.misc.down;",AndroidIconNext:"shape=mxgraph.ios7.misc.right;",AndroidIconPrevious:"shape=mxgraph.ios7.misc.left;",AndroidIconRefresh:NaN,AndroidIconInformation:"shape=mxgraph.ios7.icons.info;",AndroidIconSearch:"shape=mxgraph.ios7.icons.looking_glass;",AndroidIconSettings:"shape=mxgraph.ios7.icons.volume;direction=south;",
+AndroidIconTrash:"shape=mxgraph.ios7.icons.trashcan;",AndroidIconEmail:"shape=mxgraph.mockup.misc.mail2;",AndroidIconNew:"shape=mxgraph.ios7.misc.flagged;",UMLClassBlock:"rounded=1;",UMLActiveClassBlock:"shape=mxgraph.flowchart.predefined_process;",UMLPackageBlock:"shape=folder;tabPosition=left;",UMLNoteBlock:"shape=note;size=15;",UMLTextBlock:"shape=text;strokeColor=none;fillColor=none;",UMLActorBlock:"shape=umlActor;",UMLUseCaseBlock:"shape=ellipse;",UMLCircleContainerBlock:"shape=ellipse;container=1;",
+UMLRectangleContainerBlock:"rounded=1;container=1;",UMLOptionLoopBlock:"shape=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;",UMLStartBlock:"shape=ellipse;fillColor=#000000;",UMLStateBlock:"shape=rect;rounded=1;",UMLDecisionBlock:"shape=rhombus;rounded=1;",UMLHForkJoinBlock:"shape=rect;rounded=1;fillColor=#000000;",UMLVForkJoinBlock:"shape=rect;rounded=1;fillColor=#000000;",UMLFlowFinalBlock:"shape=mxgraph.flowchart.or;",UMLHistoryStateBlock:"shape=ellipse;",UMLEndBlock:"shape=mxgraph.bpmn.shape;outline=end;symbol=terminate;",
+UMLObjectBlock:"shape=rect;rounded=1;",UMLSendSignalBlock:"shape=mxgraph.sysml.sendSigAct;",UMLReceiveSignalBlock:"shape=mxgraph.sysml.accEvent;",UMLAcceptTimeEventActionBlock:"shape=mxgraph.sysml.timeEvent;",UMLOffPageLinkBlock:"shape=mxgraph.sysml.sendSigAct;direction=south;",UMLActivationBlock:"shape=rect;rounded=1;",UMLDeletionBlock:"shape=mxgraph.sysml.x;strokeWidth=4;",UMLSeqEntityBlock:"shape=mxgraph.electrical.radio.microphone_1;direction=north;",UMLComponentBlock:"shape=component;align=left;spacingLeft=36;",
+UMLNodeBlock:"shape=cube;size=12;flipH=1;",UMLComponentInterfaceBlock:"shape=ellipse;",UMLProvidedInterfaceBlock:"shape=lollipop;direction=south;",UMLRequiredInterfaceBlock:"shape=requires;direction=north;",UMLEntityBlock:"shape=rect;rounded=1;",UMLWeakEntityBlock:"shape=ext;double=1;rounded=1;",UMLAttributeBlock:"shape=ellipse;",UMLMultivaluedAttributeBlock:"shape=doubleEllipse;",UMLRelationshipBlock:"shape=rhombus;rounded=1;",UMLWeakRelationshipBlock:"shape=rhombus;rounded=1;double=1;",DFDExternalEntityBlock2:"shape=rect;rounded=1;",
+YDMDFDProcessBlock:"shape=ellipse;",YDMDFDDataStoreBlock:"shape=mxgraph.bootstrap.horLines;",GSDFDProcessBlock:"shape=swimlane;rounded=1;",GSDFDProcessBlock2:"shape=rect;rounded=1;",OrgBlock:"shape=rect;rounded=1;",VSMCustomerSupplierBlock:"shape=mxgraph.lean_mapping.outside_sources;",VSMDedicatedProcessBlock:"shape=mxgraph.lean_mapping.manufacturing_process;",VSMSharedProcessBlock:"shape=mxgraph.lean_mapping.manufacturing_process_shared;",VSMWorkcellBlock:"shape=mxgraph.lean_mapping.work_cell;",
VSMInventoryBlock:"shape=mxgraph.lean_mapping.inventory_box;",VSMPhysicalPullBlock:"shape=mxgraph.lean_mapping.physical_pull;direction=south;",VSMFIFOLaneBlock:"shape=mxgraph.lean_mapping.fifo_sequence_flow;fontStyle=0;fontSize=20",VSMExternalShipmentAirplaneBlock:"shape=mxgraph.lean_mapping.airplane_7;",VSMExternalShipmentForkliftBlock:"shape=mxgraph.lean_mapping.move_by_forklift;",VSMExternalShipmentTruckBlock:"shape=mxgraph.lean_mapping.truck_shipment;",VSMExternalShipmentBoatBlock:"shape=mxgraph.lean_mapping.boat_shipment;",
VSMProductionControlBlock:"shape=mxgraph.lean_mapping.manufacturing_process;",VSMOtherInformationBlock:"shape=rect;rounded=1;",VSMSequencedPullBallBlock:"shape=mxgraph.lean_mapping.sequenced_pull_ball;",VSMMRPERPBlock:"shape=mxgraph.lean_mapping.mrp_erp;whiteSpace=wrap;",VSMLoadLevelingBlock:"shape=mxgraph.lean_mapping.load_leveling;",VSMGoSeeBlock:"shape=mxgraph.lean_mapping.go_see_production_scheduling;flipH=1;",VSMGoSeeProductionBlock:"shape=ellipse;",VSMVerbalInfoBlock:"shape=mxgraph.lean_mapping.verbal;",
VSMKaizenBurstBlock:"shape=mxgraph.lean_mapping.kaizen_lightening_burst;",VSMOperatorBlock:"shape=mxgraph.lean_mapping.operator;flipV=1;",VSMQualityProblemBlock:"shape=mxgraph.lean_mapping.quality_problem;",VSMProductionKanbanSingleBlock:"shape=mxgraph.lean_mapping.production_kanban;",VSMWithdrawalKanbanBlock:"shape=mxgraph.lean_mapping.withdrawal_kanban;",VSMSignalKanbanBlock:"shape=mxgraph.lean_mapping.signal_kanban;",VSMKanbanPostBlock:"shape=mxgraph.lean_mapping.kanban_post;",VSMShipmentArrow:"shape=singleArrow;arrowWidth=0.5;arrowSize=0.13;",
-VSMPushArrow:"shape=mxgraph.lean_mapping.push_arrow;",AWSElasticComputeCloudBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2;strokeColor=none;",AWSInstanceBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_instance;strokeColor=none;",AWSInstancesBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_instances;strokeColor=none;",AWSAMIBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_ami;strokeColor=none;",AWSDBonInstanceBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_db_on_instance;strokeColor=none;",
-AWSInstanceCloudWatchBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_cloudwatch;strokeColor=none;",AWSElasticIPBlock2:"shape=mxgraph.aws2.compute_and_networking.ec2_elastic_ip;strokeColor=none;",AWSElasticMapReduceBlock2:"shape=mxgraph.aws2.compute_and_networking.emr;strokeColor=none;",AWSClusterBlock2:"shape=mxgraph.aws2.compute_and_networking.emr_cluster;strokeColor=none;",AWSHDFSClusterBlock2:"shape=mxgraph.aws2.compute_and_networking.emr_hdfs_cluster;strokeColor=none;",AWSAutoScalingBlock2:"shape=mxgraph.aws2.compute_and_networking.auto_scaling;strokeColor=none;",
-AWSElasticLoadBlock2:"shape=mxgraph.aws2.compute_and_networking.elastic_load_balancing;strokeColor=none;",AWSDirectConnectBlock3:"shape=mxgraph.aws2.compute_and_networking.aws_direct_connect;strokeColor=none;",AWSElasticNetworkBlock2:"shape=mxgraph.aws2.compute_and_networking.elastic_network_instance;strokeColor=none;",AWSRoute53Block2:"shape=mxgraph.aws2.compute_and_networking.route_53;strokeColor=none;",AWSHostedZoneBlock2:"shape=mxgraph.aws2.compute_and_networking.route_53_hosted_zone;strokeColor=none;",
-AWSRouteTableBlock2:"shape=mxgraph.aws2.compute_and_networking.route_53_route_table;strokeColor=none;",AWSVPCBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc;strokeColor=none;",AWSVPNConnectionBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc_vpn_connection;strokeColor=none;",AWSVPNGatewayBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc_vpn_gateway;strokeColor=none;",AWSCustomerGatewayBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc_customer_gateway;strokeColor=none;",AWSInternetGatewayBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc_internet_gateway;strokeColor=none;",
-AWSRouterBlock2:"shape=mxgraph.aws2.compute_and_networking.vpc_router;strokeColor=none;",AWSSimpleStorageBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.s3;strokeColor=none;",AWSBucketBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.s3_bucket;strokeColor=none;",AWSBuckethWithObjectsBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.s3_bucket_with_objects;strokeColor=none;",AWSObjectBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.s3_objects;strokeColor=none;",AWSImportExportBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.aws_import_export;strokeColor=none;",
-AWSStorageGatewayBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.aws_storage_gateway;strokeColor=none;",AWSElasticBlockStorageBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.ebs;strokeColor=none;",AWSVolumeBlock3:"shape=mxgraph.aws2.storage_and_content_delivery.ebs_volume;strokeColor=none;",AWSSnapshotBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.ebs_snapshot;strokeColor=none;",AWSGlacierBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.glacier;strokeColor=none;",AWSGlacierArchiveBlock3:"shape=mxgraph.aws2.storage_and_content_delivery.glacier_archive;strokeColor=none;",
-AWSGlacierVaultBlock3:"shape=mxgraph.aws2.storage_and_content_delivery.glacier_vault;strokeColor=none;",AWSCloudFrontBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.cloudfront;strokeColor=none;",AWSDownloadDistBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_download_distribution;strokeColor=none;",AWSStreamingBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_streaming_distribution;strokeColor=none;",AWSEdgeLocationBlock2:"shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_edge_location;strokeColor=none;",
-AWSItemBlock2:"shape=mxgraph.aws2.database.dynamodb_item;strokeColor=none;",AWSItemsBlock2:"shape=mxgraph.aws2.database.dynamodb_items;strokeColor=none;",AWSAttributeBlock2:"shape=mxgraph.aws2.database.dynamodb_attribute;strokeColor=none;",AWSAttributesBlock2:"shape=mxgraph.aws2.database.dynamodb_attributes;strokeColor=none;",AWSRDBSBlock2:"shape=mxgraph.aws2.database.rds;strokeColor=none;",AWSRDSInstanceBlock2:"shape=mxgraph.aws2.database.rds_db_instance;strokeColor=none;",AWSRDSStandbyBlock2:"shape=mxgraph.aws2.database.rds_instance_standby;strokeColor=none;",
-AWSRDSInstanceReadBlock2:"shape=mxgraph.aws2.database.rds_instance_read_replica;strokeColor=none;",AWSOracleDBBlock2:"shape=mxgraph.aws2.database.rds_oracle_db_instance;strokeColor=none;",AWSMySQLDBBlock2:"shape=mxgraph.aws2.database.rds_mysql_db_instance;strokeColor=none;",AWSMSSQLDBBlock3:"shape=mxgraph.aws2.database.rds_ms_sql_instance;strokeColor=none;",AWSDynamoDBBlock2:"shape=mxgraph.aws2.database.dynamodb;strokeColor=none;",AWSSimpleDatabaseBlock3:"shape=mxgraph.aws2.database.simpledb;strokeColor=none;",
-AWSSimpleDatabaseDomainBlock3:"shape=mxgraph.aws2.database.simpledb_domain;strokeColor=none;",AWSTableBlock2:"shape=mxgraph.aws2.database.dynamodb_table;strokeColor=none;",AWSAmazonRedShiftBlock3:"shape=mxgraph.aws2.database.redshift;strokeColor=none;",AWSElastiCacheNodeBlock2:"shape=mxgraph.aws2.database.elasticcache_node;strokeColor=none;",AWSElastiCacheBlock2:"shape=mxgraph.aws2.database.elasticcache;strokeColor=none;",AWSSESBlock2:"shape=mxgraph.aws2.app_services.ses;strokeColor=none;",AWSEmailBlock2:"shape=mxgraph.aws2.app_services.email;strokeColor=none;",
-AWSSNSBlock2:"shape=mxgraph.aws2.app_services.sns;strokeColor=none;",AWSTopicBlock2:"shape=mxgraph.aws2.app_services.sns_topic;strokeColor=none;",AWSEmailNotificationBlock2:"shape=mxgraph.aws2.app_services.sns_email_notification;strokeColor=none;",AWSHTTPNotificationBlock2:"shape=mxgraph.aws2.app_services.sns_http_notification;strokeColor=none;",AWSSQSBlock3:"shape=mxgraph.aws2.app_services.sqs;strokeColor=none;",AWSQueueBlock2:"shape=mxgraph.aws2.app_services.sqs_queue;strokeColor=none;",AWSMessageBlock2:"shape=mxgraph.aws2.app_services.sqs_message;strokeColor=none;",
-AWSDeciderBlock2:"shape=mxgraph.aws2.app_services.swf_decider;strokeColor=none;",AWSSWFBlock2:"shape=mxgraph.aws2.app_services.swf;strokeColor=none;",AWSWorkerBlock2:"shape=mxgraph.aws2.app_services.swf_worker;strokeColor=none;",AWSCloudSearchBlock2:"shape=mxgraph.aws2.app_services.cloudsearch;strokeColor=none;",AWSCloudSearchMetadataBlock3:"shape=mxgraph.aws2.app_services.cloudsearch_sdf_metadata;strokeColor=none;",AWSElasticTranscoder3:"shape=mxgraph.aws2.app_services.elastic_transcoder;strokeColor=none;",
-AWSCloudFormationBlock2:"shape=mxgraph.aws2.deployment_and_management.cloudformation;strokeColor=none;",AWSDataPipelineBlock3:"shape=mxgraph.aws2.deployment_and_management.data_pipeline;strokeColor=none;",AWSTemplageBlock2:"shape=mxgraph.aws2.deployment_and_management.cloudformation_template;strokeColor=none;",AWSStackBlock2:"shape=mxgraph.aws2.deployment_and_management.cloudformation_stack;strokeColor=none;",AWSBeanStockBlock2:"shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk;strokeColor=none;",
-AWSApplicationBlock2:"shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk_application;strokeColor=none;",AWSBeanstalkDeploymentBlock3:"shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk_deployment;strokeColor=none;",AWSIAMBlock3:"shape=mxgraph.aws2.deployment_and_management.iam;strokeColor=none;",AWSIAMSTSBlock3:"shape=mxgraph.aws2.deployment_and_management.iam_sts;strokeColor=none;",AWSIAMAddonBlock2:"shape=mxgraph.aws2.deployment_and_management.iam_add-on;strokeColor=none;",
-AWSCloudWatchBlock3:"shape=mxgraph.aws2.deployment_and_management.cloudwatch;strokeColor=none;",AWSCloudWatchAlarmBlock2:"shape=mxgraph.aws2.deployment_and_management.cloudwatch_alarm;strokeColor=none;",AWSOpsWorksBlock3:"shape=mxgraph.aws2.deployment_and_management.opsworks;strokeColor=none;",AWSMechanicalTurkBlock3:"shape=mxgraph.aws2.on-demand_workforce.mechanical_turk;strokeColor=none;",AWSHumanITBlock2:"shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_human_intelligence_tasks;strokeColor=none;",
-AWSAssignmentTaskBlock2:"shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_requester;strokeColor=none;",AWSWorkersBlock2:"shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_workers;strokeColor=none;",AWSRequesterBlock2:"shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_assignment_task;strokeColor=none;",AWSAndroidBlock3:"shape=mxgraph.aws2.sdks.android;",AWSiOSBlock3:"shape=mxgraph.aws2.sdks.ios;",AWSJavaBlock3:"shape=mxgraph.aws2.sdks.java;",AWSNetBlock3:"shape=mxgraph.aws2.sdks.net;",
-AWSNodeJSBlock3:"shape=mxgraph.aws2.sdks.nodejs;",AWSPHPBlock3:"shape=mxgraph.aws2.sdks.php;",AWSPythonBlock3:"shape=mxgraph.aws2.sdks.python;",AWSRubyBlock3:"shape=mxgraph.aws2.sdks.ruby;",AWSCLIBlock3:"shape=mxgraph.aws2.sdks.cli;",AWSEclipseToolkitBlock3:"shape=mxgraph.aws2.sdks.aws_toolkit_for_eclipse;",AWSVisualStudioToolkitBlock3:"shape=mxgraph.aws2.sdks.aws_toolkit_for_visual_studio;",AWSWindowsPowershellToolkitBlock3:"shape=mxgraph.aws2.sdks.tools_for_windows_powershell;",AWSCloudBlock2:"shape=mxgraph.aws2.non-service_specific.cloud;strokeColor=none;",
-AWSVPCloudBlock3:"shape=mxgraph.aws2.non-service_specific.virtual_private_cloud;strokeColor=none;",AWSUserBlock2:"shape=mxgraph.aws2.non-service_specific.user;strokeColor=none;",AWSUsersBlock2:"shape=mxgraph.aws2.non-service_specific.users;strokeColor=none;",AWSClientBlock2:"shape=mxgraph.aws2.non-service_specific.client;strokeColor=none;",AWSMobileClientBlock2:"shape=mxgraph.aws2.non-service_specific.mobile_client;strokeColor=none;",AWSGenericDatabaseBlock3:"shape=mxgraph.aws2.non-service_specific.generic_database;strokeColor=none;",
-AWSDiskBlock3:"shape=mxgraph.aws2.non-service_specific.disk;strokeColor=none;",AWSTapeStorageBlock3:"shape=mxgraph.aws2.non-service_specific.tape_storage;strokeColor=none;",AWSMediaBlock2:"shape=mxgraph.aws2.non-service_specific.multimedia;strokeColor=none;",AWSDataCenterBlock2:"shape=mxgraph.aws2.non-service_specific.corporate_data_center;strokeColor=none;",AWSServerBlock2:"shape=mxgraph.aws2.non-service_specific.traditional_server;strokeColor=none;",AWSInternetBlock2:"shape=mxgraph.aws2.non-service_specific.internet;strokeColor=none;",
-AWSForumsBlock3:"shape=mxgraph.aws2.non-service_specific.forums;strokeColor=none;",AWSManagementBlock2:"shape=mxgraph.aws2.non-service_specific.management_console;strokeColor=none;",Cisco_cisco_androgenous_person:"shape=mxgraph.cisco.people.androgenous_person;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_switch:"shape=mxgraph.cisco.switches.atm_switch;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cloud:"shape=mxgraph.cisco.storage.cloud;strokeColor=#036897;fillColor=#ffffff;",Cisco_cisco_fileserver:"shape=mxgraph.cisco.servers.fileserver;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_firewall:"shape=mxgraph.cisco.security.firewall;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_generic_building:"shape=mxgraph.cisco.buildings.generic_building;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_laptop:"shape=mxgraph.cisco.computers_and_peripherals.laptop;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_lock:"shape=mxgraph.cisco.security.lock;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_microwebserver:"shape=mxgraph.cisco.servers.microwebserver;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_pc:"shape=mxgraph.cisco.computers_and_peripherals.pc;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_pda:"shape=mxgraph.cisco.misc.pda;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_phone:"shape=mxgraph.cisco.modems_and_phones.hootphone;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_printer:"shape=mxgraph.cisco.computers_and_peripherals.printer;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_relational_database:"shape=mxgraph.cisco.storage.relational_database;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_router:"shape=mxgraph.cisco.routers.router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_standing_man:"shape=mxgraph.cisco.people.standing_man;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_standing_woman:"shape=mxgraph.cisco.people.standing_woman;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ups:"shape=mxgraph.cisco.misc.ups;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wireless_router:"shape=mxgraph.cisco.routers.wireless_router;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_100baset_hub:"shape=mxgraph.cisco.hubs_and_gateways.100baset_hub;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_10700:"shape=mxgraph.cisco.routers.10700;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_10GE_FCoE:"shape=mxgraph.cisco.controllers_and_modules.10ge_fcoe;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_15200:"shape=mxgraph.cisco.misc.15200;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_3174__desktop_:"shape=mxgraph.cisco.controllers_and_modules.3174_(desktop)_cluster_controller;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_3200_mobile_access_router:"shape=mxgraph.cisco.routers.mobile_access_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_3x74__floor_:"shape=mxgraph.cisco.controllers_and_modules.3x74_(floor)_cluster_controller;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_6700_series:"shape=mxgraph.cisco.misc.6700_series;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_7500ars__7513_:"shape=mxgraph.cisco.misc.7500ars_(7513);fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_accesspoint:"shape=mxgraph.cisco.misc.access_point;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_ace:"shape=mxgraph.cisco.misc.ace;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ACS:"shape=mxgraph.cisco.misc.acs;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_adm:"shape=mxgraph.cisco.misc.adm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_antenna:"shape=mxgraph.cisco.wireless.antenna;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_asic_processor:"shape=mxgraph.cisco.misc.asic_processor;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ASR_1000_Series:"shape=mxgraph.cisco.misc.asr_1000_series;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_ata:"shape=mxgraph.cisco.misc.ata;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_3800:"shape=mxgraph.cisco.misc.atm_3800;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_fast_gigabit_etherswitch:"shape=mxgraph.cisco.switches.atm_fast_gigabit_etherswitch;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_router:"shape=mxgraph.cisco.routers.atm_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_tag_switch_router:"shape=mxgraph.cisco.routers.atm_tag_switch_router;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_avs:"shape=mxgraph.cisco.misc.avs;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_AXP:"shape=mxgraph.cisco.misc.axp;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bbsm:"shape=mxgraph.cisco.misc.bbsm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_branch_office:"shape=mxgraph.cisco.buildings.branch_office;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_breakout_box:"shape=mxgraph.cisco.misc.breakout_box;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bridge:"shape=mxgraph.cisco.misc.bridge;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_broadband_router:"shape=mxgraph.cisco.routers.broadcast_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bts_10200:"shape=mxgraph.cisco.misc.bts_10200;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cable_modem:"shape=mxgraph.cisco.modems_and_phones.cable_modem;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_callmanager:"shape=mxgraph.cisco.misc.call_manager;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_car:"shape=mxgraph.cisco.misc.car;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_carrier_routing_system:"shape=mxgraph.cisco.misc.carrier_routing_system;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cddi_fddi:"shape=mxgraph.cisco.misc.cddi_fddi;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cdm:"shape=mxgraph.cisco.misc.cdm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cellular_phone:"shape=mxgraph.cisco.modems_and_phones.cell_phone;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_centri_firewall:"shape=mxgraph.cisco.security.centri_firewall;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_cisco_1000:"shape=mxgraph.cisco.misc.cisco_1000;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_asa_5500:"shape=mxgraph.cisco.misc.asa_5500;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_ca:"shape=mxgraph.cisco.misc.cisco_ca;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_file_engine:"shape=mxgraph.cisco.storage.cisco_file_engine;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_hub:"shape=mxgraph.cisco.hubs_and_gateways.cisco_hub;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_ciscosecurity:"shape=mxgraph.cisco.security.cisco_security;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_unified_presence_server:"shape=mxgraph.cisco.servers.cisco_unified_presence_server;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_unityexpress:"shape=mxgraph.cisco.misc.cisco_unity_express;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ciscoworks:"shape=mxgraph.cisco.misc.cisco_works;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_class_4_5_switch:"shape=mxgraph.cisco.switches.class_4_5_switch;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_communications_server:"shape=mxgraph.cisco.servers.communications_server;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_contact_center:"shape=mxgraph.cisco.misc.contact_center;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_engine__cache_director_:"shape=mxgraph.cisco.directors.content_engine_(cache_director);fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_service_router:"shape=mxgraph.cisco.routers.content_service_router;fillColor=#036897;strokeColor=#ffffff;",
+VSMPushArrow:"shape=mxgraph.lean_mapping.push_arrow;",AWSElasticComputeCloudBlock2:"strokeColor=none;shape=mxgraph.aws3.ec2;",AWSInstanceBlock2:"strokeColor=none;shape=mxgraph.aws3.instance;",AWSInstancesBlock2:"strokeColor=none;shape=mxgraph.aws3.instances;",AWSAMIBlock2:"strokeColor=none;shape=mxgraph.aws3.ami;",AWSDBonInstanceBlock2:"strokeColor=none;shape=mxgraph.aws3.db_on_instance;",AWSInstanceCloudWatchBlock2:"strokeColor=none;shape=mxgraph.aws3.instance_with_cloudwatch;",AWSElasticIPBlock2:"strokeColor=none;shape=mxgraph.aws3.elastic_ip;",
+AWSHDFSClusterBlock2:"strokeColor=none;shape=mxgraph.aws3.hdfs_cluster;",AWSAutoScalingBlock2:"strokeColor=none;shape=mxgraph.aws3.auto_scaling;",AWSEC2OptimizedInstance2:"strokeColor=none;shape=mxgraph.aws3.optimized_instance;","AWSAmazonEC2(Spotinstance)":"strokeColor=none;shape=mxgraph.aws3.spot_instance;",AWSAmazonECR:"strokeColor=none;shape=mxgraph.aws3.ecr;",AWSAmazonECS:"strokeColor=none;shape=mxgraph.aws3.ecs;",AWSLambda2:"strokeColor=none;shape=mxgraph.aws3.lambda;",AWSElasticLoadBalancing:"strokeColor=none;shape=mxgraph.aws3.elastic_load_balancing;",
+AWSElasticLoadBlock2:"strokeColor=none;shape=mxgraph.aws3.classic_load_balancer;",AWSDirectConnectBlock3:"strokeColor=none;shape=mxgraph.aws3.direct_connect;",AWSElasticNetworkBlock2:"strokeColor=none;shape=mxgraph.aws3.elastic_network_interface;",AWSRoute53Block2:"strokeColor=none;shape=mxgraph.aws3.route_53;",AWSHostedZoneBlock2:"strokeColor=none;shape=mxgraph.aws3.hosted_zone;fontColor=#FFFFFF;fontStyle=1;",AWSRouteTableBlock2:"strokeColor=none;shape=mxgraph.aws3.route_table;",AWSVPCBlock2:"strokeColor=none;shape=mxgraph.aws3.vpc;",
+AWSVPNConnectionBlock2:"strokeColor=none;shape=mxgraph.aws3.vpn_connection;",AWSVPNGatewayBlock2:"strokeColor=none;shape=mxgraph.aws3.vpn_gateway;",AWSCustomerGatewayBlock2:"strokeColor=none;shape=mxgraph.aws3.customer_gateway;",AWSCustomerGatewayBlock3:"strokeColor=none;shape=mxgraph.aws3.customer_gateway;",AWSInternetGatewayBlock2:"strokeColor=none;shape=mxgraph.aws3.internet_gateway;",AWSRouterBlock2:"strokeColor=none;shape=mxgraph.aws3.router;",AWSRouterBlock3:"strokeColor=none;shape=mxgraph.aws3.router;",
+"AWSAmazonVPC(endpoints)":"strokeColor=none;shape=mxgraph.aws3.endpoints;","AWSAmazonVPC(flowlogs)":"strokeColor=none;shape=mxgraph.aws3.flow_logs;","AWSAmazonVPC(VPCNATgateway)":"strokeColor=none;shape=mxgraph.aws3.vpc_nat_gateway;",AWSVPCPeering3:"strokeColor=none;shape=mxgraph.aws3.vpc_peering;",AWSSimpleStorageBlock2:"strokeColor=none;shape=mxgraph.aws3.s3;",AWSBucketBlock2:"strokeColor=none;shape=mxgraph.aws3.bucket;fontStyle=1;fontColor=#ffffff;",AWSBuckethWithObjectsBlock2:"strokeColor=none;shape=mxgraph.aws3.bucket_with_objects;",
+AWSObjectBlock2:"strokeColor=none;shape=mxgraph.aws3.object;fontStyle=1;fontColor=#ffffff;",AWSImportExportBlock2:"strokeColor=none;shape=mxgraph.aws3.import_export;",AWSStorageGatewayBlock2:"strokeColor=none;shape=mxgraph.aws3.storage_gateway;",AWSElasticBlockStorageBlock2:"strokeColor=none;shape=mxgraph.aws3.volume;fontStyle=1;fontColor=#ffffff;",AWSVolumeBlock3:"strokeColor=none;shape=mxgraph.aws3.volume;fontStyle=1;fontColor=#ffffff;",AWSSnapshotBlock2:"strokeColor=none;shape=mxgraph.aws3.snapshot;fontStyle=1;fontColor=#ffffff;",
+AWSGlacierArchiveBlock3:"strokeColor=none;shape=mxgraph.aws3.archive;",AWSGlacierVaultBlock3:"strokeColor=none;shape=mxgraph.aws3.vault;",AWSAmazonEFS:"strokeColor=none;shape=mxgraph.aws3.efs;",AWSGlacierBlock2:"strokeColor=none;shape=mxgraph.aws3.glacier;",AWSAWSImportExportSnowball:"strokeColor=none;shape=mxgraph.aws3.snowball;",AWSStorageGatewayCachedVolumn2:"strokeColor=none;shape=mxgraph.aws3.cached_volume;","AWSStorageGatewayNon-CachedVolumn2":"strokeColor=none;shape=mxgraph.aws3.non_cached_volume;",
+AWSStorageGatewayVirtualTapeLibrary2:"strokeColor=none;shape=mxgraph.aws3.virtual_tape_library;",AWSCloudFrontBlock2:"strokeColor=none;shape=mxgraph.aws3.cloudfront;",AWSDownloadDistBlock2:"strokeColor=none;shape=mxgraph.aws3.download_distribution;",AWSStreamingBlock2:"strokeColor=none;shape=mxgraph.aws3.streaming_distribution;",AWSEdgeLocationBlock2:"strokeColor=none;shape=mxgraph.aws3.edge_location;",AWSItemBlock2:"strokeColor=none;shape=mxgraph.aws3.item;",AWSItemsBlock2:"strokeColor=none;shape=mxgraph.aws3.items;",
+AWSAttributeBlock2:"strokeColor=none;shape=mxgraph.aws3.attribute;",AWSAttributesBlock2:"strokeColor=none;shape=mxgraph.aws3.attributes;",AWSRDBSBlock2:"strokeColor=none;shape=mxgraph.aws3.rds;",AWSRDSInstanceBlock2:"strokeColor=none;shape=mxgraph.aws3.rds_db_instance;",AWSRDSStandbyBlock2:"strokeColor=none;shape=mxgraph.aws3.rds_db_instance_standby_multi_az;",AWSRDSInstanceReadBlock2:"strokeColor=none;shape=mxgraph.aws3.rds_db_instance_read_replica;",AWSOracleDBBlock2:"strokeColor=none;shape=mxgraph.aws3.oracle_db_instance;",
+AWSMySQLDBBlock2:"strokeColor=none;shape=mxgraph.aws3.mysql_db_instance;",AWSDynamoDBBlock2:"strokeColor=none;shape=mxgraph.aws3.dynamo_db;",AWSSimpleDatabaseBlock3:"strokeColor=none;shape=mxgraph.aws2.database.simpledb;",AWSSimpleDatabaseDomainBlock3:"strokeColor=none;shape=mxgraph.aws2.database.simpledb_domain;",AWSTableBlock2:"strokeColor=none;shape=mxgraph.aws3.table;",AWSAmazonRedShiftBlock3:"strokeColor=none;shape=mxgraph.aws3.redshift;",AWSElastiCacheNodeBlock2:"strokeColor=none;shape=mxgraph.aws3.cache_node;",
+AWSElastiCacheBlock2:"strokeColor=none;shape=mxgraph.aws3.elasticache;",AWSDynamoDBGlobalSecondaryIndexes2:"strokeColor=none;shape=mxgraph.aws3.global_secondary_index;",AWSAmazonElastiCacheMemcache2:"strokeColor=none;shape=mxgraph.aws3.memcached;",AWSAmazonElastiCacheRedis2:"strokeColor=none;shape=mxgraph.aws3.redis;",AWSAmazonRDSMSSQLInstance2:"strokeColor=none;shape=mxgraph.aws3.ms_sql_instance_2;",AWSMSSQLDBBlock3:"strokeColor=none;shape=mxgraph.aws3.ms_sql_instance;",AWSAmazonRDSMySQLDBInstance2:"strokeColor=none;shape=mxgraph.aws3.mysql_db_instance_2;",
+AWSAmazonRDSOracleDBInstance2:"strokeColor=none;shape=mxgraph.aws3.oracle_db_instance_2;",AWSRDSReplicasetswithPIOP2:"strokeColor=none;shape=mxgraph.aws3.piop;",AWSAmazonRDSPostgreSQL2:"strokeColor=none;shape=mxgraph.aws3.postgre_sql_instance;",AWSRDSMasterSQL2:"strokeColor=none;shape=mxgraph.aws3.sql_master;",AWSRDSSlaveSQL2:"strokeColor=none;shape=mxgraph.aws3.sql_slave;","AWSAmazonRedshift(densecomputenode)":"strokeColor=none;shape=mxgraph.aws3.dense_compute_node;","AWSAmazonRedshift(densestoragenode)":"strokeColor=none;shape=mxgraph.aws3.dense_storage_node;",
+AWSAWSDatabaseMigrationService:"strokeColor=none;shape=mxgraph.aws3.database_migration_service;",AWSACM:"strokeColor=none;shape=mxgraph.aws3.certificate_manager;",AWSAmazonInspector:"strokeColor=none;shape=mxgraph.aws3.inspector;",AWSAWSCloudHSM:"strokeColor=none;shape=mxgraph.aws3.cloudhsm;",AWSDirectoryService2:"strokeColor=none;shape=mxgraph.aws3.directory_service;",AWSAWSKMS:"strokeColor=none;shape=mxgraph.aws3.kms;",AWSAWSWAF:"strokeColor=none;shape=mxgraph.aws3.waf;","AWSACM(certificate-manager)":"strokeColor=none;shape=mxgraph.aws3.certificate_manager_2;",
+AWSSESBlock2:"strokeColor=none;shape=mxgraph.aws3.ses;",AWSEmailBlock2:"strokeColor=none;shape=mxgraph.aws3.email;",AWSSNSBlock2:"strokeColor=none;shape=mxgraph.aws3.sns;",AWSSQSBlock3:"strokeColor=none;shape=mxgraph.aws3.sqs;",AWSQueueBlock2:"strokeColor=none;shape=mxgraph.aws3.queue;",AWSMessageBlock2:"strokeColor=none;shape=mxgraph.aws3.message;",AWSDeciderBlock2:"strokeColor=none;shape=mxgraph.aws3.decider;",AWSSWFBlock2:"strokeColor=none;shape=mxgraph.aws3.swf;",AWSWorkerBlock2:"strokeColor=none;shape=mxgraph.aws3.worker;",
+AWSCloudSearchBlock2:"strokeColor=none;shape=mxgraph.aws3.cloudsearch;",AWSCloudSearchMetadataBlock3:"strokeColor=none;shape=mxgraph.aws3.search_documents;",AWSElasticTranscoder3:"strokeColor=none;shape=mxgraph.aws3.elastic_transcoder;",AWSAmazonAPIGateway:"strokeColor=none;shape=mxgraph.aws3.api_gateway;",AWSAppStream2:"strokeColor=none;shape=mxgraph.aws3.appstream;",AWSCloudFormationBlock2:"strokeColor=none;shape=mxgraph.aws3.cloudformation;",AWSDataPipelineBlock3:"strokeColor=none;shape=mxgraph.aws3.data_pipeline;",
+AWSDataPipelineBlock2:"strokeColor=none;shape=mxgraph.aws3.data_pipeline;",AWSTemplageBlock2:"strokeColor=none;shape=mxgraph.aws3.template;",AWSStackBlock2:"strokeColor=none;shape=mxgraph.aws3.stack_aws_cloudformation;",AWSBeanStockBlock2:"strokeColor=none;shape=mxgraph.aws3.elastic_beanstalk;",AWSApplicationBlock2:"strokeColor=none;shape=mxgraph.aws3.application;",AWSBeanstalkDeploymentBlock3:"strokeColor=none;shape=mxgraph.aws3.deployment;",AWSIAMBlock3:"strokeColor=none;shape=mxgraph.aws3.iam;",
+AWSIAMSTSBlock3:"strokeColor=none;shape=mxgraph.aws3.sts;",AWSIAMAddonBlock2:"strokeColor=none;shape=mxgraph.aws3.add_on;",AWSCloudWatchBlock3:"strokeColor=none;shape=mxgraph.aws3.cloudwatch;",AWSCloudWatchAlarmBlock2:"strokeColor=none;shape=mxgraph.aws3.alarm;",AWSIAMSecurityTokenService2:"strokeColor=none;shape=mxgraph.aws3.sts_2;",AWSIAMDataEncryptionKey2:"strokeColor=none;shape=mxgraph.aws3.data_encryption_key;",AWSIAMEncryptedData2:"strokeColor=none;shape=mxgraph.aws3.encrypted_data;","AWSAWSIAM(long-termsecuritycredential)":"strokeColor=none;shape=mxgraph.aws3.long_term_security_credential;",
+AWSIAMMFAToken2:"strokeColor=none;shape=mxgraph.aws3.mfa_token;",AWSIAMPermissions2:"strokeColor=none;shape=mxgraph.aws3.permissions_2;",AWSIAMRoles2:"strokeColor=none;shape=mxgraph.aws3.role;","AWSAWSIAM(temporarysecuritycredential)":"strokeColor=none;shape=mxgraph.aws3.long_term_security_credential;",AWSCloudTrail2:"strokeColor=none;shape=mxgraph.aws3.cloudtrail;",AWSConfig2:"strokeColor=none;shape=mxgraph.aws3.config;",AWSOpsWorksBlock3:"strokeColor=none;shape=mxgraph.aws3.opsworks;",AWSAWSServiceCatalog:"strokeColor=none;shape=mxgraph.aws3.service_catalog;",
+AWSTrustedAdvisor2:"strokeColor=none;shape=mxgraph.aws3.trusted_advisor;",AWSOpsWorksApps2:"strokeColor=none;shape=mxgraph.aws3.apps;",AWSOpsWorksDeployments2:"strokeColor=none;shape=mxgraph.aws3.deployments;",AWSOpsWorksInstances2:"strokeColor=none;shape=mxgraph.aws3.instances_2;",AWSOpsWorksLayers2:"strokeColor=none;shape=mxgraph.aws3.layers;",AWSOpsWorksMonitoring2:"strokeColor=none;shape=mxgraph.aws3.monitoring;",AWSOpsWorksPermissions2:"strokeColor=none;shape=mxgraph.aws3.permissions;",AWSOpsWorksResources2:"strokeColor=none;shape=mxgraph.aws3.resources;",
+AWSOpsWorksStack2:"strokeColor=none;shape=mxgraph.aws3.stack_aws_opsworks;",AWSMechanicalTurkBlock3:"strokeColor=none;shape=mxgraph.aws3.mechanical_turk;",AWSHumanITBlock2:"strokeColor=none;shape=mxgraph.aws3.human_intelligence_tasks_hit;",AWSAssignmentTaskBlock2:"strokeColor=none;shape=mxgraph.aws3.requester;",AWSWorkersBlock2:"strokeColor=none;shape=mxgraph.aws3.users;",AWSRequesterBlock2:"strokeColor=none;shape=mxgraph.aws3.assignment_task;",AWSAndroidBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#96BF3D;",
+AWSiOSBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#CFCFCF;",AWSJavaBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#EE472A;",AWSJavaScript:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#205E00;",AWSNetBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#115193;",AWSNodeJSBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#8CC64F;",AWSPHPBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#5A69A4;",AWSPythonBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#FFD44F;",
+AWSRubyBlock3:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#AE1F23;",AWSXamarin:"strokeColor=none;shape=mxgraph.aws3.android;fillColor=#4090D7;",AWSCLIBlock3:"strokeColor=none;shape=mxgraph.aws3.cli;fillColor=#444444;",AWSEclipseToolkitBlock3:"strokeColor=none;shape=mxgraph.aws3.toolkit_for_eclipse;fillColor=#342074;",AWSVisualStudioToolkitBlock3:"strokeColor=none;shape=mxgraph.aws3.toolkit_for_visual_studio;fillColor=#53B1CB;",AWSWindowsPowershellToolkitBlock3:"strokeColor=none;shape=mxgraph.aws3.toolkit_for_windows_powershell;fillColor=#737373;",
+AWSAmazonElasticsearchService:"strokeColor=none;shape=mxgraph.aws3.elasticsearch_service;",AWSElasticMapReduceBlock2:"strokeColor=none;shape=mxgraph.aws3.emr;",AWSClusterBlock2:"strokeColor=none;shape=mxgraph.aws3.emr_cluster;",AWSEMREngine2:"strokeColor=none;shape=mxgraph.aws3.emr_engine;",AWSEMRMapRM3Engine2:"strokeColor=none;shape=mxgraph.aws3.emr_engine_mapr_m3;",AWSEMRMapRM5Engine2:"strokeColor=none;shape=mxgraph.aws3.emr_engine_mapr_m5;",AWSEMRMapRM7Engine2:"strokeColor=none;shape=mxgraph.aws3.emr_engine_mapr_m7;",
+AWSKinesis2:"strokeColor=none;shape=mxgraph.aws3.kinesis;","AWSAmazonKinesis(AmazonKinesisAnalytics)":"strokeColor=none;shape=mxgraph.aws3.kinesis;",AWSKinesisEnabledApp2:"strokeColor=none;shape=mxgraph.aws3.kinesis_enabled_app;","AWSAmazonKinesis(AmazonKinesisFirehose)":"strokeColor=none;shape=mxgraph.aws3.kinesis_firehose;","AWSAmazonKinesis(AmazonKinesisStreams)":"strokeColor=none;shape=mxgraph.aws3.kinesis_streams;",AWSAmazonMachineLearning:"strokeColor=none;shape=mxgraph.aws3.machine_learning;",
+AWSAmazonQuickSight:"strokeColor=none;shape=mxgraph.aws3.quicksight;",AWSCognito2:"strokeColor=none;shape=mxgraph.aws3.cognito;",AWSMobileAnalytics2:"strokeColor=none;shape=mxgraph.aws3.mobile_analytics;",AWSAWSDeviceFarm:"strokeColor=none;shape=mxgraph.aws3.device_farm;",AWSAWSMobileHub:"strokeColor=none;shape=mxgraph.aws3.mobile_hub;gradientColor=#AD688A;gradientDirection=east;",AWSTopicBlock2:"strokeColor=none;shape=mxgraph.aws3.topic_2;fontStyle=1;fontColor=#ffffff;verticalAlign=top;spacingTop=-5;",
+AWSEmailNotificationBlock2:"strokeColor=none;shape=mxgraph.aws3.email_notification;",AWSHTTPNotificationBlock2:"strokeColor=none;shape=mxgraph.aws3.http_notification;",AWSAWSCodeCommit:"strokeColor=none;shape=mxgraph.aws3.codecommit;",AWSCodeDeploy2:"strokeColor=none;shape=mxgraph.aws3.codedeploy;",AWSAWSCodePipeline:"strokeColor=none;shape=mxgraph.aws3.codepipeline;",AWSWorkDocs2:"strokeColor=none;shape=mxgraph.aws3.workdocs;",AWSAmazonWorkMail:"strokeColor=none;shape=mxgraph.aws3.workmail;",AWSAmazonWorkSpaces2:"strokeColor=none;shape=mxgraph.aws3.workspaces;",
+AWSAWSIoT:"strokeColor=none;shape=mxgraph.aws3.aws_iot;","AWSAWSIoT(action)":"strokeColor=none;shape=mxgraph.aws3.action;","AWSAWSIoT(actuator)":"strokeColor=none;shape=mxgraph.aws3.actuator;","AWSAWSIoT(certificate)":"strokeColor=none;shape=mxgraph.aws3.certificate;","AWSAWSIoT(desiredstate)":"strokeColor=none;shape=mxgraph.aws3.desired_state;","AWSAWSIoT(hardwareboard)":"strokeColor=none;shape=mxgraph.aws3.hardware_board;","AWSAWSIoT(HTTP2protocol)":"strokeColor=none;shape=mxgraph.aws3.http_2_protocol;",
+"AWSAWSIoT(HTTPprotocol)":"strokeColor=none;shape=mxgraph.aws3.http_protocol;","AWSAWSIoT(MQTTprotocol)":"strokeColor=none;shape=mxgraph.aws3.mqtt_protocol;","AWSAWSIoT(policy)":"strokeColor=none;shape=mxgraph.aws3.policy;","AWSAWSIoT(reportedstate)":"strokeColor=none;shape=mxgraph.aws3.reported_state;","AWSAWSIoT(rule)":"strokeColor=none;shape=mxgraph.aws3.rule;","AWSAWSIoT(sensor)":"strokeColor=none;shape=mxgraph.aws3.sensor;","AWSAWSIoT(servo)":"strokeColor=none;shape=mxgraph.aws3.servo;","AWSAWSIoT(shadow)":"strokeColor=none;shape=mxgraph.aws3.shadow;",
+"AWSAWSIoT(simulator)":"strokeColor=none;shape=mxgraph.aws3.simulator;","AWSAWSIoT(thingbank)":"strokeColor=none;shape=mxgraph.aws3.bank;","AWSAWSIoT(thingbicycle)":"strokeColor=none;shape=mxgraph.aws3.bicycle;","AWSAWSIoT(thingcamera)":"strokeColor=none;shape=mxgraph.aws3.camera;","AWSAWSIoT(thingcar)":"strokeColor=none;shape=mxgraph.aws3.car;","AWSAWSIoT(thingcart)":"strokeColor=none;shape=mxgraph.aws3.cart;","AWSAWSIoT(thingcoffeepot)":"strokeColor=none;shape=mxgraph.aws3.coffee_pot;","AWSAWSIoT(thingdoorlock)":"strokeColor=none;shape=mxgraph.aws3.door_lock;",
+"AWSAWSIoT(thingfactory)":"strokeColor=none;shape=mxgraph.aws3.factory;","AWSAWSIoT(thinggeneric)":"strokeColor=none;shape=mxgraph.aws3.generic;","AWSAWSIoT(thinghouse)":"strokeColor=none;shape=mxgraph.aws3.house;","AWSAWSIoT(thinglightbulb)":"strokeColor=none;shape=mxgraph.aws3.lightbulb;","AWSAWSIoT(thingmedicalemergency)":"strokeColor=none;shape=mxgraph.aws3.medical_emergency;","AWSAWSIoT(thingpoliceemergency)":"strokeColor=none;shape=mxgraph.aws3.police_emergency;","AWSAWSIoT(thingthermostat)":"strokeColor=none;shape=mxgraph.aws3.thermostat;",
+"AWSAWSIoT(thingtravel)":"strokeColor=none;shape=mxgraph.aws3.travel;","AWSAWSIoT(thingutility)":"strokeColor=none;shape=mxgraph.aws3.utility;","AWSAWSIoT(thingwindfarm)":"strokeColor=none;shape=mxgraph.aws3.windfarm;","AWSAWSIoT(topic)":"strokeColor=none;shape=mxgraph.aws3.topic;",AWSCloudBlock2:"strokeColor=none;shape=mxgraph.aws3.cloud;",AWSVPCloudBlock3:"strokeColor=none;shape=mxgraph.aws3.virtual_private_cloud;",AWSUserBlock2:"strokeColor=none;shape=mxgraph.aws3.user;",AWSUsersBlock2:"strokeColor=none;shape=mxgraph.aws3.users;",
+AWSClientBlock2:"strokeColor=none;shape=mxgraph.aws3.management_console;",AWSMobileClientBlock2:"strokeColor=none;shape=mxgraph.aws3.mobile_client;",AWSGenericDatabaseBlock3:"strokeColor=none;shape=mxgraph.aws3.generic_database;",AWSDiskBlock3:"strokeColor=none;shape=mxgraph.aws3.disk;",AWSTapeStorageBlock3:"strokeColor=none;shape=mxgraph.aws3.tape_storage;",AWSMediaBlock2:"strokeColor=none;shape=mxgraph.aws3.multimedia;",AWSDataCenterBlock2:"strokeColor=none;shape=mxgraph.aws3.corporate_data_center;",
+AWSServerBlock2:"strokeColor=none;shape=mxgraph.aws3.traditional_server;",AWSInternetBlock2:"strokeColor=none;shape=mxgraph.aws2.non-service_specific.internet;",AWSForumsBlock3:"strokeColor=none;shape=mxgraph.aws3.forums;",AWSManagementBlock2:"strokeColor=none;shape=mxgraph.aws3.management_console;",AWSAmazonElasticCacheNode2:"strokeColor=none;shape=mxgraph.aws3.cache_node;",AWSAmazonRedshiftDW1Cluster2:"strokeColor=none;shape=mxgraph.aws3.dense_compute_node;",AWSAmazonRedshiftDW2Cluster2:"strokeColor=none;shape=mxgraph.aws3.dense_storage_node;",
+AWSAmazonRedshiftSSDFamilyCluster2:"strokeColor=none;shape=mxgraph.aws3.dense_storage_node;",AWSAmazonRoute53RouteTable2:"strokeColor=none;shape=mxgraph.aws3.route_table;",AWSSubnetBlock2:"strokeColor=none;shape=mxgraph.aws3.permissions;",Cisco_cisco_androgenous_person:"shape=mxgraph.cisco.people.androgenous_person;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_switch:"shape=mxgraph.cisco.switches.atm_switch;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cloud:"shape=mxgraph.cisco.storage.cloud;strokeColor=#036897;fillColor=#ffffff;",
+Cisco_cisco_fileserver:"shape=mxgraph.cisco.servers.fileserver;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_firewall:"shape=mxgraph.cisco.security.firewall;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_generic_building:"shape=mxgraph.cisco.buildings.generic_building;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_laptop:"shape=mxgraph.cisco.computers_and_peripherals.laptop;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_lock:"shape=mxgraph.cisco.security.lock;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_microwebserver:"shape=mxgraph.cisco.servers.microwebserver;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_pc:"shape=mxgraph.cisco.computers_and_peripherals.pc;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_pda:"shape=mxgraph.cisco.misc.pda;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_phone:"shape=mxgraph.cisco.modems_and_phones.hootphone;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_printer:"shape=mxgraph.cisco.computers_and_peripherals.printer;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_relational_database:"shape=mxgraph.cisco.storage.relational_database;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_router:"shape=mxgraph.cisco.routers.router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_standing_man:"shape=mxgraph.cisco.people.standing_man;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_standing_woman:"shape=mxgraph.cisco.people.standing_woman;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ups:"shape=mxgraph.cisco.misc.ups;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_wireless_router:"shape=mxgraph.cisco.routers.wireless_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_100baset_hub:"shape=mxgraph.cisco.hubs_and_gateways.100baset_hub;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_10700:"shape=mxgraph.cisco.routers.10700;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_10GE_FCoE:"shape=mxgraph.cisco.controllers_and_modules.10ge_fcoe;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_15200:"shape=mxgraph.cisco.misc.15200;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_3174__desktop_:"shape=mxgraph.cisco.controllers_and_modules.3174_(desktop)_cluster_controller;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_3200_mobile_access_router:"shape=mxgraph.cisco.routers.mobile_access_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_3x74__floor_:"shape=mxgraph.cisco.controllers_and_modules.3x74_(floor)_cluster_controller;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_6700_series:"shape=mxgraph.cisco.misc.6700_series;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_7500ars__7513_:"shape=mxgraph.cisco.misc.7500ars_(7513);fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_accesspoint:"shape=mxgraph.cisco.misc.access_point;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ace:"shape=mxgraph.cisco.misc.ace;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ACS:"shape=mxgraph.cisco.misc.acs;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_adm:"shape=mxgraph.cisco.misc.adm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_antenna:"shape=mxgraph.cisco.wireless.antenna;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_asic_processor:"shape=mxgraph.cisco.misc.asic_processor;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ASR_1000_Series:"shape=mxgraph.cisco.misc.asr_1000_series;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ata:"shape=mxgraph.cisco.misc.ata;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_3800:"shape=mxgraph.cisco.misc.atm_3800;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_fast_gigabit_etherswitch:"shape=mxgraph.cisco.switches.atm_fast_gigabit_etherswitch;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_atm_router:"shape=mxgraph.cisco.routers.atm_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_atm_tag_switch_router:"shape=mxgraph.cisco.routers.atm_tag_switch_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_avs:"shape=mxgraph.cisco.misc.avs;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_AXP:"shape=mxgraph.cisco.misc.axp;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bbsm:"shape=mxgraph.cisco.misc.bbsm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_branch_office:"shape=mxgraph.cisco.buildings.branch_office;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_breakout_box:"shape=mxgraph.cisco.misc.breakout_box;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bridge:"shape=mxgraph.cisco.misc.bridge;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_broadband_router:"shape=mxgraph.cisco.routers.broadcast_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_bts_10200:"shape=mxgraph.cisco.misc.bts_10200;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cable_modem:"shape=mxgraph.cisco.modems_and_phones.cable_modem;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_callmanager:"shape=mxgraph.cisco.misc.call_manager;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_car:"shape=mxgraph.cisco.misc.car;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_carrier_routing_system:"shape=mxgraph.cisco.misc.carrier_routing_system;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cddi_fddi:"shape=mxgraph.cisco.misc.cddi_fddi;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cdm:"shape=mxgraph.cisco.misc.cdm;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cellular_phone:"shape=mxgraph.cisco.modems_and_phones.cell_phone;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_centri_firewall:"shape=mxgraph.cisco.security.centri_firewall;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_1000:"shape=mxgraph.cisco.misc.cisco_1000;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_asa_5500:"shape=mxgraph.cisco.misc.asa_5500;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_ca:"shape=mxgraph.cisco.misc.cisco_ca;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_file_engine:"shape=mxgraph.cisco.storage.cisco_file_engine;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_cisco_hub:"shape=mxgraph.cisco.hubs_and_gateways.cisco_hub;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ciscosecurity:"shape=mxgraph.cisco.security.cisco_security;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_unified_presence_server:"shape=mxgraph.cisco.servers.cisco_unified_presence_server;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_cisco_unityexpress:"shape=mxgraph.cisco.misc.cisco_unity_express;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_ciscoworks:"shape=mxgraph.cisco.misc.cisco_works;fillColor=#036897;strokeColor=#ffffff;",
+Cisco_cisco_class_4_5_switch:"shape=mxgraph.cisco.switches.class_4_5_switch;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_communications_server:"shape=mxgraph.cisco.servers.communications_server;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_contact_center:"shape=mxgraph.cisco.misc.contact_center;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_engine__cache_director_:"shape=mxgraph.cisco.directors.content_engine_(cache_director);fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_service_router:"shape=mxgraph.cisco.routers.content_service_router;fillColor=#036897;strokeColor=#ffffff;",
Cisco_cisco_content_service_switch_1100:"shape=mxgraph.cisco.switches.content_service_switch_1100;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_switch_module:"shape=mxgraph.cisco.controllers_and_modules.content_switch_module;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_switch:"shape=mxgraph.cisco.switches.content_switch;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_content_transformation_engine__cte_:"shape=mxgraph.cisco.misc.content_transformation_engine_(cte);fillColor=#036897;strokeColor=#ffffff;",
Cisco_cisco_cs_mars:"shape=mxgraph.cisco.misc.cs-mars;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_csm_s:"shape=mxgraph.cisco.misc.csm-s;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_csu_dsu:"shape=mxgraph.cisco.misc.csu_dsu;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_CUBE:"shape=mxgraph.cisco.misc.cube;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_detector:"shape=mxgraph.cisco.misc.detector;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_director_class_fibre_channel_director:"shape=mxgraph.cisco.directors.director-class_fibre_channel_director;fillColor=#036897;strokeColor=#ffffff;",
Cisco_cisco_directory_server:"shape=mxgraph.cisco.servers.directory_server;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_diskette:"shape=mxgraph.cisco.storage.diskette;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_distributed_director:"shape=mxgraph.cisco.directors.distributed_director;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_dot_dot:"shape=mxgraph.cisco.misc.dot-dot;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_dpt:"shape=mxgraph.cisco.misc.dpt;fillColor=#036897;strokeColor=#ffffff;",
@@ -91,8 +106,8 @@ Cisco_cisco_voice_atm_switch:"shape=mxgraph.cisco.switches.voice_atm_switch;fill
Cisco_cisco_vpn_gateway:"shape=mxgraph.cisco.hubs_and_gateways.vpn_gateway;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_VSS:"shape=mxgraph.cisco.misc.vss;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wae:"shape=mxgraph.cisco.misc.wae;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wavelength_router:"shape=mxgraph.cisco.routers.wavelength_router;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_web_browser:"shape=mxgraph.cisco.computers_and_peripherals.web_browser;fillColor=#036897;strokeColor=#ffffff;",
Cisco_cisco_web_cluster:"shape=mxgraph.cisco.storage.web_cluster;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wi_fi_tag:"shape=mxgraph.cisco.wireless.wi-fi_tag;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wireless_bridge:"shape=mxgraph.cisco.wireless.wireless_bridge;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wireless_location_appliance:"shape=mxgraph.cisco.wireless.wireless_location_appliance;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wireless:"shape=mxgraph.cisco.wireless.wireless;fillColor=#036897;strokeColor=#ffffff;",
Cisco_cisco_wireless_transport:"shape=mxgraph.cisco.wireless.wireless_transport;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wism:"shape=mxgraph.cisco.misc.wism;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_wlan_controller:"shape=mxgraph.cisco.wireless.wlan_controller;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_workgroup_director:"shape=mxgraph.cisco.directors.workgroup_director;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_workgroup_switch:"shape=mxgraph.cisco.switches.workgroup_switch;fillColor=#036897;strokeColor=#ffffff;",
-Cisco_cisco_workstation:"shape=mxgraph.cisco.computers_and_peripherals.workstation;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_www_server:"shape=mxgraph.cisco.servers.www_server;fillColor=#036897;strokeColor=#ffffff;",RackServerRack:"shape=mxgraph.rackGeneral.container;container=1;collapsible=0;childLayout=rack;marginLeft=9;marginRight=9;marginTop=21;marginBottom=22;textColor=#000000;numDisp=off;",RackBlank:"strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;shape=mxgraph.rackGeneral.plate;fillColor=#e8e8e8;",
-RackRaidArray:"shape=mxgraph.rack.cisco.cisco_carrier_packet_transport_50;labelPosition=left;align=right;spacingRight=15;",RackServer:"shape=mxgraph.rack.oracle.sunfire_x4100;labelPosition=left;align=right;spacingRight=15;",RackEthernetSwitch:"shape=mxgraph.rack.cisco.cisco_nexus_3016_switch;labelPosition=left;align=right;spacingRight=15;",RackPatchPanel:"strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;shape=mxgraph.rack.general.cat5e_rack_mount_patch_panel_24_ports;",RackRouter:"shape=mxgraph.rack.cisco.cisco_asr_1001_router;labelPosition=left;align=right;spacingRight=15;",
+Cisco_cisco_workstation:"shape=mxgraph.cisco.computers_and_peripherals.workstation;fillColor=#036897;strokeColor=#ffffff;",Cisco_cisco_www_server:"shape=mxgraph.cisco.servers.www_server;fillColor=#036897;strokeColor=#ffffff;",RackServerRack:"shape=mxgraph.rackGeneral.container;container=1;collapsible=0;childLayout=rack;marginLeft=9;marginRight=9;marginTop=21;marginBottom=22;textColor=#000000;numDisp=off;",RackBlank:"shape=mxgraph.rackGeneral.plate;strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;fillColor=#e8e8e8;",
+RackRaidArray:"shape=mxgraph.rack.cisco.cisco_carrier_packet_transport_50;labelPosition=left;align=right;spacingRight=15;",RackServer:"shape=mxgraph.rack.oracle.sunfire_x4100;labelPosition=left;align=right;spacingRight=15;",RackEthernetSwitch:"shape=mxgraph.rack.cisco.cisco_nexus_3016_switch;labelPosition=left;align=right;spacingRight=15;",RackPatchPanel:"shape=mxgraph.rack.general.cat5e_rack_mount_patch_panel_24_ports;strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;",RackRouter:"shape=mxgraph.rack.cisco.cisco_asr_1001_router;labelPosition=left;align=right;spacingRight=15;",
RackMonitor:"shape=mxgraph.rack.ibm.ibm_1u_flat_panel_console_kit;labelPosition=left;align=right;spacingRight=15;",RackKeyboard:"shape=mxgraph.rack.cisco.cisco_1905_serial_integrated_services_router;labelPosition=left;align=right;spacingRight=15;",RackPowerStrip:"shape=mxgraph.rack.dell.power_strip;labelPosition=left;align=right;spacingRight=15;",RackPowerSupply:"shape=mxgraph.rack.cisco.cisco_web_security_appliance_s170;labelPosition=left;align=right;spacingRight=15;",RackBridge:"shape=mxgraph.rack.cisco.cisco_nexus_5548p_switch;labelPosition=left;align=right;spacingRight=15;",
RackTapeDrive:"shape=mxgraph.rack.ibm.ibm_1754_local_console_manager;labelPosition=left;align=right;spacingRight=15;",Image_network_server:"image;image=img/lib/clip_art/computers/Server_Tower_128x128.png;flipH=1;",Image_network_server_file:"image;image=img/lib/clip_art/computers/Server_128x128.png;",Image_network_server_net:"image;image=img/lib/clip_art/networking/Print_Server_128x128.png;",Image_network_server_net_large:"image;image=img/lib/clip_art/computers/Server_128x128.png;",Image_network_raid:"image;image=img/lib/clip_art/computers/Server_Tower_128x128.png;flipH=1;",
Image_network_raid_large:"image;image=img/lib/clip_art/computers/Server_Tower_128x128.png;flipH=1;",Image_network_rack_server:"image;image=img/lib/clip_art/computers/Server_Rack_128x128.png;",Image_network_rack_tape:"image;image=img/lib/clip_art/computers/Server_Rack_Partial_128x128.png;",Image_network_printer_small:"image;image=img/lib/clip_art/computers/Printer_128x128.png;flipH=1;",Image_network_printer_large:"image;image=img/lib/clip_art/computers/Printer_128x128.png;flipH=1;",Image_network_printer_multipurpose:"image;image=img/lib/clip_art/computers/Printer_Commercial_128x128.png;flipH=1;",
@@ -101,8 +116,8 @@ Image_electronics_pda:"image;image=img/lib/clip_art/telecommunication/Palm_Treo_
Image_electronics_modem_external:"image;image=img/lib/clip_art/networking/Modem_128x128.png;flipH=1;",Image_electronics_lcd_wide:"image;image=img/lib/clip_art/computers/Monitor_128x128.png;",EE_Amplifier:"shape=mxgraph.electrical.abstract.amplifier;",EE_OpAmp:"shape=mxgraph.electrical.abstract.operational_amp_1;",EE_ControlledAmp:"shape=mxgraph.electrical.abstract.controlled_amplifier;",EE_Multiplexer:"shape=mxgraph.electrical.abstract.mux;",EE_Demultiplexer:"shape=mxgraph.electrical.abstract.demux;",
EE_Capacitor1:"shape=mxgraph.electrical.capacitors.capacitor_1;",EE_Capacitor2:"shape=mxgraph.electrical.capacitors.capacitor_3;",EE_Diode:"shape=mxgraph.electrical.diodes.diode;",EE_Resistor:"shape=mxgraph.electrical.resistors.resistor_2;",EE_VarResistor:"shape=mxgraph.electrical.resistors.variable_resistor_2;",EE_Potentiometer:"shape=mxgraph.electrical.resistors.potentiometer_2;",EE_ProtGround:"shape=mxgraph.electrical.signal_sources.protective_earth;",EE_SignalGround:"shape=mxgraph.electrical.signal_sources.signal_ground;",
EE_Transformer:"shape=mxgraph.electrical.inductors.transformer_1;",EE_Inductor:"shape=mxgraph.electrical.inductors.inductor_3;","EE_Variable Inductor":"shape=mxgraph.electrical.inductors.variable_inductor;",EE_TwoWaySwitch:"shape=mxgraph.electrical.electro-mechanical.2-way_switch;",EE_OnOffSwitch:"shape=mxgraph.electrical.electro-mechanical.simple_switch;",EE_Loudspeaker:"shape=mxgraph.electrical.electro-mechanical.loudspeaker;",EE_Motor:"shape=mxgraph.electrical.electro-mechanical.motor_1;",EE_LED1:"shape=mxgraph.electrical.opto_electronics.led_2;",
-EE_Lightbulb:"shape=mxgraph.electrical.miscellaneous.light_bulb;",EE_AcSource:"strokeWidth=1;shape=mxgraph.electrical.signal_sources.ac_source;",EE_VoltageSource:"shape=mxgraph.electrical.signal_sources.dc_source_3;",EE_CurrentSource:"shape=mxgraph.electrical.signal_sources.dc_source_2;direction=north;",EE_ControlledCurrentSource:"shape=mxgraph.electrical.signal_sources.dependent_source_2;direction=west;",EE_ControlledVoltageSource:"shape=mxgraph.electrical.signal_sources.dependent_source_3;",EE_Vss:"verticalLabelPosition=top;verticalAlign=bottom;shape=mxgraph.electrical.signal_sources.vss2;fontSize=24;",
-EE_Vdd:"verticalLabelPosition=bottom;verticalAlign=top;shape=mxgraph.electrical.signal_sources.vdd;",EE_BJT_NPN1:"shape=mxgraph.electrical.transistors.pnp_transistor_1;",EE_BJT_PNP1:"shape=mxgraph.electrical.transistors.npn_transistor_1;",EE_JFET_P:"shape=mxgraph.electrical.transistors.p-channel_jfet_1;flipV=1;",EE_JFET_N:"shape=mxgraph.electrical.transistors.n-channel_jfet_1;",EE_MOSFET_P1:"shape=mxgraph.electrical.mosfets1.mosfet_ic_p;flipV=1;",EE_MOSFET_P2:"shape=mxgraph.electrical.mosfets1.mosfet_p_no_bulk;",
+EE_Lightbulb:"shape=mxgraph.electrical.miscellaneous.light_bulb;",EE_AcSource:"shape=mxgraph.electrical.signal_sources.ac_source;strokeWidth=1;",EE_VoltageSource:"shape=mxgraph.electrical.signal_sources.dc_source_3;",EE_CurrentSource:"shape=mxgraph.electrical.signal_sources.dc_source_2;direction=north;",EE_ControlledCurrentSource:"shape=mxgraph.electrical.signal_sources.dependent_source_2;direction=west;",EE_ControlledVoltageSource:"shape=mxgraph.electrical.signal_sources.dependent_source_3;",EE_Vss:"shape=mxgraph.electrical.signal_sources.vss2;verticalLabelPosition=top;verticalAlign=bottom;fontSize=24;",
+EE_Vdd:"shape=mxgraph.electrical.signal_sources.vdd;verticalLabelPosition=bottom;verticalAlign=top;",EE_BJT_NPN1:"shape=mxgraph.electrical.transistors.pnp_transistor_1;",EE_BJT_PNP1:"shape=mxgraph.electrical.transistors.npn_transistor_1;",EE_JFET_P:"shape=mxgraph.electrical.transistors.p-channel_jfet_1;flipV=1;",EE_JFET_N:"shape=mxgraph.electrical.transistors.n-channel_jfet_1;",EE_MOSFET_P1:"shape=mxgraph.electrical.mosfets1.mosfet_ic_p;flipV=1;",EE_MOSFET_P2:"shape=mxgraph.electrical.mosfets1.mosfet_p_no_bulk;",
EE_MOSFET_P3:"shape=mxgraph.electrical.mosfets1.p-channel_mosfet_1;flipV=1;",EE_MOSFET_N1:"shape=mxgraph.electrical.mosfets1.mosfet_ic_n;",EE_MOSFET_N2:"shape=mxgraph.electrical.mosfets1.mosfet_n_no_bulk;",EE_MOSFET_N3:"shape=mxgraph.electrical.mosfets1.n-channel_mosfet_1;",EE_AND:"shape=mxgraph.electrical.logic_gates.and;",EE_OR:"shape=mxgraph.electrical.logic_gates.or;",EE_Inverter:"shape=mxgraph.electrical.logic_gates.inverter;",EE_NAND:"shape=mxgraph.electrical.logic_gates.nand;",EE_NOR:"shape=mxgraph.electrical.logic_gates.nor;",
EE_XOR:"shape=mxgraph.electrical.logic_gates.xor;",EE_NXOR:"shape=mxgraph.electrical.logic_gates.xnor;",EE_DTypeRSFlipFlop:"shape=mxgraph.electrical.logic_gates.d_type_rs_flip-flop;",EE_DTypeFlipFlop:"shape=mxgraph.electrical.logic_gates.d_type_flip-flop;",EE_DTypeFlipFlopWithClear:"shape=mxgraph.electrical.logic_gates.d_type_flip-flop_with_clear;",EE_RSLatch:"shape=mxgraph.electrical.logic_gates.rs_latch;",EE_SyncRSLatch:"shape=mxgraph.electrical.logic_gates.synchronous_rs_latch;",EE_TTypeFlipFlop:"shape=mxgraph.electrical.logic_gates.t_type_flip-flop;",
EE_Plus:"shape=mxgraph.ios7.misc.flagged;",EE_Negative:"shape=line;",EE_InverterContact:"shape=ellipse;",EE_Voltmeter:"shape=mxgraph.electrical.instruments.voltmeter;",EE_Ammeter:"shape=mxgraph.electrical.instruments.ampermeter;",EE_SineWave:"shape=mxgraph.electrical.waveforms.sine_wave;",EE_Sawtooth:"shape=mxgraph.electrical.waveforms.sawtooth;",EE_SquareWave:"shape=mxgraph.electrical.waveforms.square_wave;",EIChannelBlock:"shape=mxgraph.eip.messageChannel;",EIMessageRouterBlock:"shape=mxgraph.eip.content_based_router;",
@@ -117,7 +132,7 @@ fpCabinetsAboveDeskShelves:"shape=rect;rounded=1;",fpRestroomToiletPrivate:"shap
fpBedQueen:"shape=mxgraph.floorplan.bed_double;",fpBedKing:"shape=mxgraph.floorplan.bed_double;",fpBedDoubleWithTrundle:"shape=mxgraph.floorplan.bed_double;",fpBedBunk:"shape=mxgraph.floorplan.bed_double;",fpBedBassinet:"shape=mxgraph.pid.fittings.compensator;",fpApplianceWasher:"shape=rect;",fpApplianceDryer:"shape=rect;",fpApplianceWaterHeater:"shape=ellipse;",fpApplianceStoveOven:"shape=mxgraph.floorplan.range_1;",fpStoveOvenSixBurner:"shape=mxgraph.floorplan.range_2;",fpApplianceDishwasher:"shape=rect;",
fpKitchenSink:"shape=mxgraph.floorplan.sink_2;",fpKitchenDoubleSink:"shape=mxgraph.floorplan.sink_double;",fpKitchenCountertop:"shape=rect;rounded=1;",fpKitchenCountertopCorner:"shape=mxgraph.floorplan.desk_corner;",fpCouchLoveSeat:"shape=mxgraph.floorplan.couch;",fpCouchSofa:"shape=mxgraph.floorplan.couch;",fpCouchOttoman:"shape=rect;rounded=1;",fpMiscDesktopComputer:"shape=mxgraph.floorplan.workstation;",fpMiscLaptopComputer:"shape=mxgraph.floorplan.laptop;",fpComputerMonitor:"shape=mxgraph.floorplan.flat_tv;",
fpCRTTelevision:"shape=mxgraph.floorplan.flat_tv;",fpMiscIndoorPlant:"shape=mxgraph.floorplan.plant;",fpPiano:"shape=mxgraph.floorplan.piano;",PEAxialCompressor:"shape=mxgraph.pid.compressors.centrifugal_compressor_-_turbine_driven;",PECentrifugalCompressor:"shape=mxgraph.pid.compressors.centrifugal_compressor",PECentrifugalCompressor2:"shape=mxgraph.pid.compressors.centrifugal_compressor_-_turbine_driven;",PEReciprocationCompressor:"shape=mxgraph.pid.compressors.reciprocating_compressor;",PERotaryCompressorBlock:"shape=mxgraph.pid.compressors.rotary_compressor;",
-PERotaryCompressor2Block:"shape=mxgraph.pid.compressors.compressor_and_silencers;",PEConveyorBlock:"shape=mxgraph.pid2misc.conveyor;",PEElevator1Block:"shape=mxgraph.pid.misc.bucket_elevator;flipH=1;",PEAgitatorMixerBlock:"shape=mxgraph.pid.agitators.agitator_(propeller);",PEDrumBlock:"shape=mxgraph.pid.vessels.drum_or_condenser;",PETankEquipmentBlock:"mxgraph.pid.vessels.tank;",PEMixingReactorBlock:"shape=mxgraph.pid.vessels.mixing_reactor;",PEPlateTowerBlock:"shape=mxgraph.pid2misc.column;columnType=baffle;",
+PERotaryCompressor2Block:"shape=mxgraph.pid.compressors.compressor_and_silencers;",PEConveyorBlock:"shape=mxgraph.pid2misc.conveyor;",PEElevator1Block:"shape=mxgraph.pid.misc.bucket_elevator;flipH=1;",PEAgitatorMixerBlock:"shape=mxgraph.pid.agitators.agitator_(propeller);",PEDrumBlock:"shape=mxgraph.pid.vessels.drum_or_condenser;",PETankEquipmentBlock:"shape=mxgraph.pid.vessels.tank;",PEMixingReactorBlock:"shape=mxgraph.pid.vessels.mixing_reactor;",PEPlateTowerBlock:"shape=mxgraph.pid2misc.column;columnType=baffle;",
PEPackedTowerBlock:"shape=mxgraph.pid2misc.column;columnType=fixed;",PEFurnaceBlock:"shape=mxgraph.pid.vessels.furnace;",PEMidArrow:"shape=triangle;",PEButtWeld:"shape=mxgraph.sysml.x;",PETopToTop:"shape=mxgraph.pid.vessels.container,_tank,_cistern;",PENuclear:"shape=mxgraph.electrical.waveforms.sine_wave;",PEMechanicalLink:"shape=ellipse;",PESolderedSolvent:"shape=ellipse;",PEDoubleContainment:"shape=hexagon;",PEFlange:"shape=mxgraph.pid.piping.double_flange;",PEFlange2:"shape=mxgraph.pid.piping.flange_in;flipH=1;",
PEEndCap:"shape=mxgraph.pid.piping.cap;",PEEndCap2:"shape=mxgraph.pid.vessels.container,_tank,_cistern;direction=north;",PEBreather:"shape=mxgraph.pid.piping.breather;",PEElectronicallyInsulated:"shape=mxgraph.pid.piping.double_flange;",PEReducer:"shape=mxgraph.pid.piping.concentric_reducer;",PEInlineMixer:"shape=mxgraph.pid.piping.in-line_mixer;",PEFlameArrester:"shape=mxgraph.pid.piping.flame_arrestor;",PEDetonationArrester:"shape=mxgraph.pid.piping.detonation_arrestor;",PETriangleSeparator:"shape=triangle;direction=west;",
PETundish:"shape=mxgraph.ios7.misc.left;",PEOpenVent:"shape=mxgraph.pid.vessels.vent_(bent);",PERemovableSpool:"shape=mxgraph.pid.piping.removable_spool;",PEYTypeStrainer:"shape=mxgraph.pid.piping.y-type_strainer;",PEDiverterValve:"shape=mxgraph.pid.piping.diverter_valve;",PEPulsationDampener:"shape=mxgraph.pid.piping.pulsation_dampener;",PEDuplexStrainer:"shape=mxgraph.pid.piping.duplex_strainer;",PEBasketStrainer:"shape=mxgraph.pid.piping.basket_strainer;",PEVentSilencer:"shape=mxgraph.pid.piping.vent_silencer;",
@@ -158,7 +173,7 @@ Image_iphone_button_lg_yellow:"shape=rect;rounded=1;",Image_iphone_button_xl_gre
Image_iphone_email_name:"shape=rect;rounded=1;",Image_iphone_switch_off:"shape=mxgraph.android.switch_off;fillColor=#666666;",Image_iphone_keyboard_button_blue:"shape=rect;rounded=1;",Image_iphone_keyboard_letters:"shape=mxgraph.ios.iKeybLett;",Image_iphone_keyboard_landscape:"shape=mxgraph.ios.iKeybLett;",Image_iphone_add_icon_blue:"shape=mxgraph.ios.iAddIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;",Image_iphone_add_icon_green:"shape=mxgraph.ios.iAddIcon;fillColor=#7AdF78;fillColor2=#1A9917;strokeColor=#ffffff;",
Image_iphone_remove_icon:"shape=mxgraph.ios.iDeleteIcon;fillColor=#e8878E;fillColor2=#BD1421;strokeColor=#ffffff;",Image_iphone_arrow_icon:"shape=mxgraph.ios.iArrowIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;",Image_iphone_arrow:"shape=mxgraph.ios7.misc.more;",Image_iphone_checkmark:"shape=mxgraph.ios7.misc.check;",Image_iphone_check_off:"shape=ellipse;",Image_iphone_location_dot:"shape=ellipse;",Image_iphone_mark_as_read:"shape=ellipse;",Image_iphone_pin_green:"shape=mxgraph.ios.iPin;fillColor2=#00dd00;fillColor3=#004400;strokeColor=#006600;",
Image_iphone_pin_red:"shape=mxgraph.ios.iPin;fillColor2=#dd0000;fillColor3=#440000;strokeColor=#660000;",Image_iphone_radio_off:"shape=ellipse;",Image_iphone_checkbox_off:"shape=rect;rounded=1;",Image_iphone_indicator:"shape=rect;rounded=1;fillColor=#e8878E;gradientColor=#BD1421;strokeColor=#ffffff;",Image_iphone_thread_count:"shape=rect;rounded=1;"};EditorUi.prototype.pasteLucidChart=function(a,c,d,b){var f=this.editor.graph;f.getModel().beginUpdate();try{var h=function(a,b){var e=null!=b.Endpoint1.Block?
-p[b.Endpoint1.Block]:null,h=null!=b.Endpoint2.Block?p[b.Endpoint2.Block]:null,g=new mxCell("",new mxGeometry(0,0,100,100),"html=1;");g.geometry.relative=!0;g.edge=!0;v(g,a);var m=n(a).Properties,m=null!=m?m.TextAreas:a.TextAreas;if(null!=m)for(var l=0;null!=m["t"+l];){var m=m["t"+l],k=2*(parseFloat(m.Location)-.5),k=new mxCell(u(m),new mxGeometry(k,0,0,0),"text;html=1;resizable=0;align=center;verticalAlign=middle;labelBackgroundColor=#ffffff;");k.geometry.relative=!0;k.vertex=!0;g.insert(k);l++}null==
-e&&null!=b.Endpoint1&&g.geometry.setTerminalPoint(new mxPoint(Math.round(.6*b.Endpoint1.x+c),Math.round(.6*b.Endpoint1.y+d)),!0);null==h&&null!=b.Endpoint2&&g.geometry.setTerminalPoint(new mxPoint(Math.round(.6*b.Endpoint2.x+c),Math.round(.6*b.Endpoint2.y+d)),!1);q.push(f.addCell(g,null,null,e,h))},q=[],p={},k=[];if(null!=a.Blocks)for(var r in a.Blocks){var e=a.Blocks[r];e.id=r;p[e.id]=w(e);k.push(e)}else for(var g=0;g<a.Objects.length;g++)e=a.Objects[g],e.IsBlock&&null!=e.Action&&null!=e.Action.Properties&&
-(p[e.id]=w(e)),k.push(e);k.sort(function(a,b){a=n(a);b=n(b);return null!=a.Properties&&null!=b.Properties?a.Properties.ZOrder-b.Properties.ZOrder:0});for(g=0;g<k.length;g++){var e=k[g],l=p[e.id];null!=l?q.push(f.addCell(l)):e.IsLine&&null!=e.Action&&null!=e.Action.Properties&&h(e,e.Action.Properties)}if(null!=a.Lines)for(r in a.Lines)e=a.Lines[r],h(e,e);if(b&&null!=c&&null!=d){f.isGridEnabled()&&(c=f.snap(c),d=f.snap(d));var t=f.getBoundingBoxFromGeometry(q,!0);null!=t&&f.moveCells(q,c-t.x,d-t.y)}f.setSelectionCells(q)}finally{f.getModel().endUpdate()}f.isSelectionEmpty()||
+p[b.Endpoint1.Block]:null,h=null!=b.Endpoint2.Block?p[b.Endpoint2.Block]:null,g=new mxCell("",new mxGeometry(0,0,100,100),"html=1;");g.geometry.relative=!0;g.edge=!0;w(g,a);var m=n(a).Properties,m=null!=m?m.TextAreas:a.TextAreas;if(null!=m)for(var l=0;null!=m["t"+l];){var m=m["t"+l],k=2*(parseFloat(m.Location)-.5),k=new mxCell(u(m),new mxGeometry(k,0,0,0),"text;html=1;resizable=0;align=center;verticalAlign=middle;labelBackgroundColor=#ffffff;");k.geometry.relative=!0;k.vertex=!0;g.insert(k);l++}null==
+e&&null!=b.Endpoint1&&g.geometry.setTerminalPoint(new mxPoint(Math.round(.6*b.Endpoint1.x+c),Math.round(.6*b.Endpoint1.y+d)),!0);null==h&&null!=b.Endpoint2&&g.geometry.setTerminalPoint(new mxPoint(Math.round(.6*b.Endpoint2.x+c),Math.round(.6*b.Endpoint2.y+d)),!1);q.push(f.addCell(g,null,null,e,h))},q=[],p={},k=[];if(null!=a.Blocks)for(var r in a.Blocks){var e=a.Blocks[r];e.id=r;p[e.id]=x(e);k.push(e)}else for(var g=0;g<a.Objects.length;g++)e=a.Objects[g],e.IsBlock&&null!=e.Action&&null!=e.Action.Properties&&
+(p[e.id]=x(e)),k.push(e);k.sort(function(a,b){a=n(a);b=n(b);return null!=a.Properties&&null!=b.Properties?a.Properties.ZOrder-b.Properties.ZOrder:0});for(g=0;g<k.length;g++){var e=k[g],l=p[e.id];null!=l?q.push(f.addCell(l)):e.IsLine&&null!=e.Action&&null!=e.Action.Properties&&h(e,e.Action.Properties)}if(null!=a.Lines)for(r in a.Lines)e=a.Lines[r],h(e,e);if(b&&null!=c&&null!=d){f.isGridEnabled()&&(c=f.snap(c),d=f.snap(d));var t=f.getBoundingBoxFromGeometry(q,!0);null!=t&&f.moveCells(q,c-t.x,d-t.y)}f.setSelectionCells(q)}finally{f.getModel().endUpdate()}f.isSelectionEmpty()||
(f.scrollCellToVisible(f.getSelectionCell()),null!=this.hoverIcons&&this.hoverIcons.update(f.view.getState(f.getSelectionCell())))}})(); \ No newline at end of file
diff --git a/war/js/mxgraph/Shapes.js b/war/js/mxgraph/Shapes.js
index 899d185b..28a0308f 100644
--- a/war/js/mxgraph/Shapes.js
+++ b/war/js/mxgraph/Shapes.js
@@ -915,11 +915,14 @@
var width = this.style['symbol' + counter + 'Width'];
var height = this.style['symbol' + counter + 'Height'];
var spacing = this.style['symbol' + counter + 'Spacing'] || 0;
+ var vspacing = this.style['symbol' + counter + 'VSpacing'] || spacing;
var arcspacing = this.style['symbol' + counter + 'ArcSpacing'];
if (arcspacing != null)
{
- spacing += this.getArcSize(w + this.strokewidth, h + this.strokewidth) * arcspacing;
+ var arcSize = this.getArcSize(w + this.strokewidth, h + this.strokewidth) * arcspacing;
+ spacing += arcSize;
+ vspacing += arcSize;
}
var x2 = x;
@@ -944,11 +947,11 @@
}
else if (valign == mxConstants.ALIGN_BOTTOM)
{
- y2 += h - height - spacing;
+ y2 += h - height - vspacing;
}
else
{
- y2 += spacing;
+ y2 += vspacing;
}
c.save();
diff --git a/war/js/reader.min.js b/war/js/reader.min.js
index 7c63cb69..e759973b 100644
--- a/war/js/reader.min.js
+++ b/war/js/reader.min.js
@@ -81,7 +81,7 @@ v,k,f));else if(c.c&a.c.RCDATA)d.F&&d.F(e(l),f,g,h(d,b,v,k,f));else throw Error(
e[1].toLowerCase(),n;if(e[2]){n=e[3];var v=n.charCodeAt(0);if(34===v||39===v)n=n.substr(1,n.length-2);n=c(n.replace(F,""))}else n="";l.push(m,n);g=g.substr(e[0].length)}else g=g.replace(/^[\s\S][^a-z\s]*/,"");f.R=l;f.next=h+1;return f}}function n(b){function c(a,b){f||b.push(a)}var e,f;return g({startDoc:function(){e=[];f=!1},startTag:function(c,g,h){if(!f&&a.f.hasOwnProperty(c)){var k=a.f[c];if(!(k&a.c.FOLDABLE)){var l=b(c,g);if(l){if("object"!==typeof l)throw Error("tagPolicy did not return object (old API?)");
if("attribs"in l)g=l.attribs;else throw Error("tagPolicy gave no attribs");var m;"tagName"in l?(m=l.tagName,l=a.f[m]):(m=c,l=k);if(k&a.c.OPTIONAL_ENDTAG){var n=e[e.length-1];n&&n.D===c&&(n.v!==m||c!==m)&&h.push("</",n.v,">")}k&a.c.EMPTY||e.push({D:c,v:m});h.push("<",m);c=0;for(n=g.length;c<n;c+=2){var v=g[c],C=g[c+1];null!==C&&void 0!==C&&h.push(" ",v,'="',d(C),'"')}h.push(">");k&a.c.EMPTY&&!(l&a.c.EMPTY)&&h.push("</",m,">")}else f=!(k&a.c.EMPTY)}}},endTag:function(b,c){if(f)f=!1;else if(a.f.hasOwnProperty(b)){var d=
a.f[b];if(!(d&(a.c.EMPTY|a.c.FOLDABLE))){if(d&a.c.OPTIONAL_ENDTAG)for(d=e.length;0<=--d;){var g=e[d].D;if(g===b)break;if(!(a.f[g]&a.c.OPTIONAL_ENDTAG))return}else for(d=e.length;0<=--d&&e[d].D!==b;);if(!(0>d)){for(g=e.length;--g>d;){var h=e[g].v;a.f[h]&a.c.OPTIONAL_ENDTAG||c.push("</",h,">")}d<e.length&&(b=e[d].v);e.length=d;c.push("</",b,">")}}}},pcdata:c,rcdata:c,cdata:c,endDoc:function(a){for(;e.length;e.length--)a.push("</",e[e.length-1].v,">")}})}function p(a,b,c,d,e){if(!e)return null;try{var g=
-f.parse(""+a);if(g&&(!g.K()||fa.test(g.W()))){var h=e(g,b,c,d);return h?h.toString():null}}catch(qa){}return null}function r(a,b,c,d,e){c||a(b+" removed",{S:"removed",tagName:b});if(d!==e){var f="changed";d&&!e?f="removed":!d&&e&&(f="added");a(b+"."+c+" "+f,{S:f,tagName:b,la:c,oldValue:d,newValue:e})}}function C(a,b,c){b=b+"::"+c;if(a.hasOwnProperty(b))return a[b];b="*::"+c;if(a.hasOwnProperty(b))return a[b]}function H(b,c,d,e,f){for(var g=0;g<c.length;g+=2){var h=c[g],k=c[g+1],l=k,m=null,n;if((n=
+f.parse(""+a);if(g&&(!g.K()||fa.test(g.W()))){var h=e(g,b,c,d);return h?h.toString():null}}catch(pa){}return null}function r(a,b,c,d,e){c||a(b+" removed",{S:"removed",tagName:b});if(d!==e){var f="changed";d&&!e?f="removed":!d&&e&&(f="added");a(b+"."+c+" "+f,{S:f,tagName:b,la:c,oldValue:d,newValue:e})}}function C(a,b,c){b=b+"::"+c;if(a.hasOwnProperty(b))return a[b];b="*::"+c;if(a.hasOwnProperty(b))return a[b]}function H(b,c,d,e,f){for(var g=0;g<c.length;g+=2){var h=c[g],k=c[g+1],l=k,m=null,n;if((n=
b+"::"+h,a.m.hasOwnProperty(n))||(n="*::"+h,a.m.hasOwnProperty(n)))m=a.m[n];if(null!==m)switch(m){case a.d.NONE:break;case a.d.SCRIPT:k=null;f&&r(f,b,h,l,k);break;case a.d.STYLE:if("undefined"===typeof U){k=null;f&&r(f,b,h,l,k);break}var v=[];U(k,{declaration:function(b,c){var e=b.toLowerCase();S(e,c,d?function(b){return p(b,a.P.ja,a.M.ka,{TYPE:"CSS",CSS_PROP:e},d)}:null);c.length&&v.push(e+": "+c.join(" "))}});k=0<v.length?v.join(" ; "):null;f&&r(f,b,h,l,k);break;case a.d.ID:case a.d.IDREF:case a.d.IDREFS:case a.d.GLOBAL_NAME:case a.d.LOCAL_NAME:case a.d.CLASSES:k=
e?e(k):k;f&&r(f,b,h,l,k);break;case a.d.URI:k=p(k,C(a.J,b,h),C(a.I,b,h),{TYPE:"MARKUP",XML_ATTR:h,XML_TAG:b},d);f&&r(f,b,h,l,k);break;case a.d.URI_FRAGMENT:k&&"#"===k.charAt(0)?(k=k.substring(1),k=e?e(k):k,null!==k&&void 0!==k&&(k="#"+k)):k=null;f&&r(f,b,h,l,k);break;default:k=null,f&&r(f,b,h,l,k)}else k=null,f&&r(f,b,h,l,k);c[g+1]=k}return c}function M(b,c,d){return function(e,f){if(a.f[e]&a.c.UNSAFE)d&&r(d,e,void 0,void 0,void 0);else return{attribs:H(e,f,b,c,d)}}}function J(a,b){var c=[];n(b)(a,
c);return c.join("")}var U,S;"undefined"!==typeof window&&(U=window.parseCssDeclarations,S=window.sanitizeCssProperty);var aa={lt:"<",LT:"<",gt:">",GT:">",amp:"&",AMP:"&",quot:'"',apos:"'",nbsp:" "},A=/^#(\d+)$/,v=/^#x([0-9A-Fa-f]+)$/,R=/^[A-Za-z][A-za-z0-9]+$/,K="undefined"!==typeof window&&window.document?window.document.createElement("textarea"):null,F=/\0/g,ca=/&(#[0-9]+|#[xX][0-9A-Fa-f]+|\w+);/g,N=/^(#[0-9]+|#[xX][0-9A-Fa-f]+|\w+);/,G=/&/g,Y=/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi,T=
@@ -184,7 +184,7 @@ f)+"\n"+t+"}":"{"+x.join(",")+"}";f=t;return l}}"function"!==typeof Date.prototy
e=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,f,g,h={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},k;"function"!==typeof JSON.stringify&&(JSON.stringify=function(a,b,d){var e;g=f="";if("number"===typeof d)for(e=0;e<d;e+=1)g+=" ";else"string"===typeof d&&(g=d);if((k=b)&&"function"!==typeof b&&("object"!==typeof b||"number"!==typeof b.length))throw Error("JSON.stringify");return c("",{"":a})});
"function"!==typeof JSON.parse&&(JSON.parse=function(a,b){function c(a,d){var e,f,g=a[d];if(g&&"object"===typeof g)for(e in g)Object.prototype.hasOwnProperty.call(g,e)&&(f=c(g,e),void 0!==f?g[e]=f:delete g[e]);return b.call(a,d,g)}var e;a=""+a;d.lastIndex=0;d.test(a)&&(a=a.replace(d,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)}));if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e=eval("("+a+")"),"function"===typeof b?c({"":e},""):e;throw new SyntaxError("JSON.parse");})})();var mxBasePath="https://www.draw.io/mxgraph/",mxLoadStylesheets=mxLoadResources=!1,mxLanguage="en";window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||225E6;window.EXPORT_URL=window.EXPORT_URL||"/export";window.SAVE_URL=window.SAVE_URL||"/save";window.OPEN_URL=window.OPEN_URL||"/open";window.RESOURCES_PATH=window.RESOURCES_PATH||"resources";window.RESOURCE_BASE=window.RESOURCE_BASE||window.RESOURCES_PATH+"/grapheditor";window.STENCIL_PATH=window.STENCIL_PATH||"stencils";window.IMAGE_PATH=window.IMAGE_PATH||"images";
-window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"6.9.9",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&
+window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"7.0.0",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&
0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&&
0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&&
0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")||
@@ -1741,9 +1741,9 @@ a;this.canvas.setLineJoin("round");this.canvas.setLineCap("round");this.defaultV
this.canvas.curveTo=mxUtils.bind(this,q.prototype.curveTo);this.originalArcTo=this.canvas.arcTo;this.canvas.arcTo=mxUtils.bind(this,q.prototype.arcTo)}function t(){mxRectangleShape.call(this)}function x(){mxActor.call(this)}function w(){mxActor.call(this)}function z(){mxRectangleShape.call(this)}function y(){mxRectangleShape.call(this)}function u(){mxCylinder.call(this)}function I(){mxShape.call(this)}function L(){mxShape.call(this)}function D(){mxEllipse.call(this)}function B(){mxShape.call(this)}
function E(){mxShape.call(this)}function C(){mxRectangleShape.call(this)}function H(){mxShape.call(this)}function M(){mxShape.call(this)}function J(){mxShape.call(this)}function U(){mxCylinder.call(this)}function S(){mxDoubleEllipse.call(this)}function aa(){mxDoubleEllipse.call(this)}function A(){mxArrowConnector.call(this);this.spacing=0}function v(){mxArrowConnector.call(this);this.spacing=0}function R(){mxActor.call(this)}function K(){mxRectangleShape.call(this)}function F(){mxActor.call(this)}
function ca(){mxActor.call(this)}function N(){mxActor.call(this)}function G(){mxActor.call(this)}function Y(){mxActor.call(this)}function T(){mxActor.call(this)}function Z(){mxActor.call(this)}function da(){mxActor.call(this)}function P(){mxActor.call(this)}function ea(){mxActor.call(this)}function W(){mxEllipse.call(this)}function O(){mxEllipse.call(this)}function Q(){mxEllipse.call(this)}function fa(){mxRhombus.call(this)}function V(){mxEllipse.call(this)}function X(){mxEllipse.call(this)}function ua(){mxEllipse.call(this)}
-function oa(){mxEllipse.call(this)}function pa(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function xa(a,b,c,d,e,f,g,h,k,l){g+=k;var m=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(m.x-e-g,m.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));
-f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var qa=Math.tan(mxUtils.toRadians(30)),ia=(.5-qa)/2;mxUtils.extend(b,mxActor);b.prototype.size=20;b.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/qa);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ia);a.lineTo(b,.25*b);a.lineTo(.5*
-b,(.5-ia)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=b;mxUtils.extend(c,mxCylinder);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+qa));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ia)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ia)*b),a.lineTo(.5*b,(1-ia)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ia),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ia)*b),a.lineTo(0,.75*b),a.close());a.end()};
+function na(){mxEllipse.call(this)}function oa(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function xa(a,b,c,d,e,f,g,h,k,l){g+=k;var m=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(m.x-e-g,m.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));
+f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var pa=Math.tan(mxUtils.toRadians(30)),ia=(.5-pa)/2;mxUtils.extend(b,mxActor);b.prototype.size=20;b.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/pa);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ia);a.lineTo(b,.25*b);a.lineTo(.5*
+b,(.5-ia)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=b;mxUtils.extend(c,mxCylinder);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+pa));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ia)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ia)*b),a.lineTo(.5*b,(1-ia)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ia),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ia)*b),a.lineTo(0,.75*b),a.close());a.end()};
mxCellRenderer.prototype.defaultShapes.isoCube=c;mxUtils.extend(d,mxCylinder);d.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(e/2,Math.round(e/8)+this.strokewidth-1);if(f&&null!=this.fill||!f&&null==this.fill)a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,-b);f||(a.moveTo(0,b),a.curveTo(0,
-b/3,d,-b/3,d,b),a.lineTo(d,e-b),a.curveTo(d,e+b/3,0,e+b/3,0,e-b),a.close())};d.prototype.getLabelBounds=function(a){var b=2.5*Math.min(a.height/2,Math.round(a.height/8)+this.strokewidth-1);if(!this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST)||this.flipV&&this.direction==mxConstants.DIRECTION_WEST)a.y+=b,a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH||this.flipV&&this.direction==mxConstants.DIRECTION_NORTH)a.width-=b;else if(!this.flipV&&
this.direction==mxConstants.DIRECTION_WEST||this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST))a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_NORTH||this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH)a.x+=b,a.width-=b;return a};mxCellRenderer.prototype.defaultShapes.datastore=d;mxUtils.extend(e,mxCylinder);e.prototype.size=30;e.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,
@@ -1769,12 +1769,12 @@ mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPo
arguments)};mxCellRenderer.prototype.defaultShapes.plus=z;var ya=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};mxRhombus.prototype.paintVertexShape=function(a,b,c,d,e){ya.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var f=2*Math.max(2,this.strokewidth+
1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0<d&&0<e&&(a.setShadow(!1),ya.apply(this,[a,b,c,d,e]))}};mxUtils.extend(y,mxRectangleShape);y.prototype.isHtmlAllowed=function(){return!1};y.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};y.prototype.paintForeground=function(a,b,c,
d,e){if(null!=this.style){if(!this.outline&&1==this.style["double"]){var f=Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0<d&&0<e&&mxRectangleShape.prototype.paintBackground.apply(this,arguments)}a.setDashed(!1);var f=0,g;do{g=mxCellRenderer.prototype.defaultShapes[this.style["symbol"+f]];if(null!=g){var h=this.style["symbol"+f+"Align"],k=this.style["symbol"+f+"VerticalAlign"],l=this.style["symbol"+f+"Width"],m=this.style["symbol"+f+"Height"],
-na=this.style["symbol"+f+"Spacing"]||0,n=this.style["symbol"+f+"ArcSpacing"];null!=n&&(na+=this.getArcSize(d+this.strokewidth,e+this.strokewidth)*n);var n=b,p=c,n=h==mxConstants.ALIGN_CENTER?n+(d-l)/2:h==mxConstants.ALIGN_RIGHT?n+(d-l-na):n+na,p=k==mxConstants.ALIGN_MIDDLE?p+(e-m)/2:k==mxConstants.ALIGN_BOTTOM?p+(e-m-na):p+na;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,n,p,l,m);a.restore()}f++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,arguments)};
-mxCellRenderer.prototype.defaultShapes.ext=y;mxUtils.extend(u,mxCylinder);u.prototype.redrawPath=function(a,b,c,d,e,f){f?(a.moveTo(0,0),a.lineTo(d/2,e/2),a.lineTo(d,0),a.end()):(a.moveTo(0,0),a.lineTo(d,0),a.lineTo(d,e),a.lineTo(0,e),a.close())};mxCellRenderer.prototype.defaultShapes.message=u;mxUtils.extend(I,mxShape);I.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.ellipse(d/4,0,d/2,e/4);a.fillAndStroke();a.begin();a.moveTo(d/2,e/4);a.lineTo(d/2,2*e/3);a.moveTo(d/2,e/3);a.lineTo(0,
-e/3);a.moveTo(d/2,e/3);a.lineTo(d,e/3);a.moveTo(d/2,2*e/3);a.lineTo(0,e);a.moveTo(d/2,2*e/3);a.lineTo(d,e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlActor=I;mxUtils.extend(L,mxShape);L.prototype.getLabelBounds=function(a){return new mxRectangle(a.x+a.width/6,a.y,5*a.width/6,a.height)};L.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(0,e/4);a.lineTo(0,3*e/4);a.end();a.stroke();a.begin();a.moveTo(0,e/2);a.lineTo(d/6,e/2);a.end();a.stroke();a.ellipse(d/
-6,0,5*d/6,e);a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.umlBoundary=L;mxUtils.extend(D,mxEllipse);D.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(b+d/8,c+e);a.lineTo(b+7*d/8,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlEntity=D;mxUtils.extend(B,mxShape);B.prototype.paintVertexShape=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(d,0);a.lineTo(0,e);a.moveTo(0,0);a.lineTo(d,e);
-a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlDestroy=B;mxUtils.extend(E,mxShape);E.prototype.getLabelBounds=function(a){return new mxRectangle(a.x,a.y+a.height/8,a.width,7*a.height/8)};E.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(3*d/8,e/8*1.1);a.lineTo(5*d/8,0);a.end();a.stroke();a.ellipse(0,e/8,d,7*e/8);a.fillAndStroke()};E.prototype.paintForeground=function(a,b,c,d,e){a.begin();a.moveTo(3*d/8,e/8*1.1);a.lineTo(5*d/8,e/4);a.end();a.stroke()};
-mxCellRenderer.prototype.defaultShapes.umlControl=E;mxUtils.extend(C,mxRectangleShape);C.prototype.size=40;C.prototype.isHtmlAllowed=function(){return!1};C.prototype.getLabelBounds=function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"size",this.size))*this.scale));return new mxRectangle(a.x,a.y,a.width,b)};C.prototype.paintBackground=function(a,b,c,d,e){var f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))),g=mxUtils.getValue(this.style,
+ra=this.style["symbol"+f+"Spacing"]||0,n=this.style["symbol"+f+"VSpacing"]||ra,p=this.style["symbol"+f+"ArcSpacing"];null!=p&&(p*=this.getArcSize(d+this.strokewidth,e+this.strokewidth),ra+=p,n+=p);var p=b,q=c,p=h==mxConstants.ALIGN_CENTER?p+(d-l)/2:h==mxConstants.ALIGN_RIGHT?p+(d-l-ra):p+ra,q=k==mxConstants.ALIGN_MIDDLE?q+(e-m)/2:k==mxConstants.ALIGN_BOTTOM?q+(e-m-n):q+n;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,p,q,l,m);a.restore()}f++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,
+arguments)};mxCellRenderer.prototype.defaultShapes.ext=y;mxUtils.extend(u,mxCylinder);u.prototype.redrawPath=function(a,b,c,d,e,f){f?(a.moveTo(0,0),a.lineTo(d/2,e/2),a.lineTo(d,0),a.end()):(a.moveTo(0,0),a.lineTo(d,0),a.lineTo(d,e),a.lineTo(0,e),a.close())};mxCellRenderer.prototype.defaultShapes.message=u;mxUtils.extend(I,mxShape);I.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.ellipse(d/4,0,d/2,e/4);a.fillAndStroke();a.begin();a.moveTo(d/2,e/4);a.lineTo(d/2,2*e/3);a.moveTo(d/2,
+e/3);a.lineTo(0,e/3);a.moveTo(d/2,e/3);a.lineTo(d,e/3);a.moveTo(d/2,2*e/3);a.lineTo(0,e);a.moveTo(d/2,2*e/3);a.lineTo(d,e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlActor=I;mxUtils.extend(L,mxShape);L.prototype.getLabelBounds=function(a){return new mxRectangle(a.x+a.width/6,a.y,5*a.width/6,a.height)};L.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(0,e/4);a.lineTo(0,3*e/4);a.end();a.stroke();a.begin();a.moveTo(0,e/2);a.lineTo(d/6,e/2);a.end();
+a.stroke();a.ellipse(d/6,0,5*d/6,e);a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.umlBoundary=L;mxUtils.extend(D,mxEllipse);D.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(b+d/8,c+e);a.lineTo(b+7*d/8,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlEntity=D;mxUtils.extend(B,mxShape);B.prototype.paintVertexShape=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(d,0);a.lineTo(0,e);a.moveTo(0,
+0);a.lineTo(d,e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlDestroy=B;mxUtils.extend(E,mxShape);E.prototype.getLabelBounds=function(a){return new mxRectangle(a.x,a.y+a.height/8,a.width,7*a.height/8)};E.prototype.paintBackground=function(a,b,c,d,e){a.translate(b,c);a.begin();a.moveTo(3*d/8,e/8*1.1);a.lineTo(5*d/8,0);a.end();a.stroke();a.ellipse(0,e/8,d,7*e/8);a.fillAndStroke()};E.prototype.paintForeground=function(a,b,c,d,e){a.begin();a.moveTo(3*d/8,e/8*1.1);a.lineTo(5*d/8,e/4);
+a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlControl=E;mxUtils.extend(C,mxRectangleShape);C.prototype.size=40;C.prototype.isHtmlAllowed=function(){return!1};C.prototype.getLabelBounds=function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"size",this.size))*this.scale));return new mxRectangle(a.x,a.y,a.width,b)};C.prototype.paintBackground=function(a,b,c,d,e){var f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))),g=mxUtils.getValue(this.style,
"participant");null==g||null==this.state?mxRectangleShape.prototype.paintBackground.call(this,a,b,c,d,f):(g=this.state.view.graph.cellRenderer.getShape(g),null!=g&&g!=C&&(g=new g,g.apply(this.state),a.save(),g.paintVertexShape(a,b,c,d,f),a.restore()));f<e&&(a.setDashed(!0),a.begin(),a.moveTo(b+d/2,c+f),a.lineTo(b+d/2,c+e),a.end(),a.stroke())};C.prototype.paintForeground=function(a,b,c,d,e){var f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))));mxRectangleShape.prototype.paintForeground.call(this,
a,b,c,d,Math.min(e,f))};mxCellRenderer.prototype.defaultShapes.umlLifeline=C;mxUtils.extend(H,mxShape);H.prototype.width=60;H.prototype.height=30;H.prototype.corner=10;H.prototype.getLabelBounds=function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.style,"width",this.width))*this.scale)),c=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"height",this.height))*this.scale));return new mxRectangle(a.x,a.y,b,c)};H.prototype.paintBackground=function(a,b,c,d,
e){var f=this.corner,g=Math.min(d,Math.max(f,parseFloat(mxUtils.getValue(this.style,"width",this.width)))),h=Math.min(e,Math.max(1.5*f,parseFloat(mxUtils.getValue(this.style,"height",this.height))));a.begin();a.moveTo(b,c);a.lineTo(b+g,c);a.lineTo(b+g,c+Math.max(0,h-1.5*f));a.lineTo(b+Math.max(0,g-f),c+h);a.lineTo(b,c+h);a.close();a.fillAndStroke();a.begin();a.moveTo(b+g,c);a.lineTo(b+d,c);a.lineTo(b+d,c+e);a.lineTo(b,c+e);a.lineTo(b,c+h);a.stroke()};mxCellRenderer.prototype.defaultShapes.umlFrame=
@@ -1802,8 +1802,8 @@ c);a.lineTo(b+d/2,c+e);a.end();a.stroke()};mxCellRenderer.prototype.defaultShape
function(a,b,c,d,e){mxRhombus.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();a.moveTo(b,c+e/2);a.lineTo(b+d,c+e/2);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.sortShape=fa;mxUtils.extend(V,mxEllipse);V.prototype.paintVertexShape=function(a,b,c,d,e){a.begin();a.moveTo(b,c);a.lineTo(b+d,c);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke();a.begin();a.moveTo(b,c+e);a.lineTo(b+d,c+e);a.lineTo(b+d/2,c+e/2);a.close();a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.collate=
V;mxUtils.extend(X,mxEllipse);X.prototype.paintVertexShape=function(a,b,c,d,e){var f=c+e-5;a.begin();a.moveTo(b,c);a.lineTo(b,c+e);a.moveTo(b,f);a.lineTo(b+10,f-5);a.moveTo(b,f);a.lineTo(b+10,f+5);a.moveTo(b,f);a.lineTo(b+d,f);a.moveTo(b+d,c);a.lineTo(b+d,c+e);a.moveTo(b+d,f);a.lineTo(b+d-10,f-5);a.moveTo(b+d,f);a.lineTo(b+d-10,f+5);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.dimension=X;mxUtils.extend(ua,mxEllipse);ua.prototype.paintVertexShape=function(a,b,c,d,e){this.outline||a.setStrokeColor(null);
mxRectangleShape.prototype.paintBackground.apply(this,arguments);null!=this.style&&(a.setStrokeColor(this.stroke),a.rect(b,c,d,e),a.fill(),"1"==mxUtils.getValue(this.style,"top","1")&&(a.begin(),a.moveTo(b,c),a.lineTo(b+d,c),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,"right","1")&&(a.begin(),a.moveTo(b+d,c),a.lineTo(b+d,c+e),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,"bottom","1")&&(a.begin(),a.moveTo(b+d,c+e),a.lineTo(b,c+e),a.end(),a.stroke()),"1"==mxUtils.getValue(this.style,
-"left","1")&&(a.begin(),a.moveTo(b,c+e),a.lineTo(b,c),a.end(),a.stroke()))};mxCellRenderer.prototype.defaultShapes.partialRectangle=ua;mxUtils.extend(oa,mxEllipse);oa.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();"vertical"==mxUtils.getValue(this.style,"line")?(a.moveTo(b+d/2,c),a.lineTo(b+d/2,c+e)):(a.moveTo(b,c+e/2),a.lineTo(b+d,c+e/2));a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.lineEllipse=oa;
-mxUtils.extend(pa,mxActor);pa.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/2);a.moveTo(0,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.delay=pa;mxUtils.extend(ja,mxActor);ja.prototype.size=.2;ja.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(e,d);var f=Math.max(0,Math.min(b,b*parseFloat(mxUtils.getValue(this.style,"size",this.size))));b=(e-f)/2;c=b+f;var g=(d-f)/2,f=g+f;a.moveTo(0,b);a.lineTo(g,b);
+"left","1")&&(a.begin(),a.moveTo(b,c+e),a.lineTo(b,c),a.end(),a.stroke()))};mxCellRenderer.prototype.defaultShapes.partialRectangle=ua;mxUtils.extend(na,mxEllipse);na.prototype.paintVertexShape=function(a,b,c,d,e){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.setShadow(!1);a.begin();"vertical"==mxUtils.getValue(this.style,"line")?(a.moveTo(b+d/2,c),a.lineTo(b+d/2,c+e)):(a.moveTo(b,c+e/2),a.lineTo(b+d,c+e/2));a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.lineEllipse=na;
+mxUtils.extend(oa,mxActor);oa.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/2);a.moveTo(0,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(0,e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.delay=oa;mxUtils.extend(ja,mxActor);ja.prototype.size=.2;ja.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(e,d);var f=Math.max(0,Math.min(b,b*parseFloat(mxUtils.getValue(this.style,"size",this.size))));b=(e-f)/2;c=b+f;var g=(d-f)/2,f=g+f;a.moveTo(0,b);a.lineTo(g,b);
a.lineTo(g,0);a.lineTo(f,0);a.lineTo(f,b);a.lineTo(d,b);a.lineTo(d,c);a.lineTo(f,c);a.lineTo(f,e);a.lineTo(g,e);a.lineTo(g,c);a.lineTo(0,c);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.cross=ja;mxUtils.extend(ka,mxActor);ka.prototype.size=.25;ka.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/2);c=Math.min(d-b,Math.max(0,parseFloat(mxUtils.getValue(this.style,"size",this.size)))*d);a.moveTo(0,e/2);a.lineTo(c,0);a.lineTo(d-b,0);a.quadTo(d,0,d,e/2);a.quadTo(d,e,d-b,e);a.lineTo(c,
e);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.display=ka;mxMarker.addMarker("dash",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.stroke()}});mxMarker.addMarker("cross",function(a,b,c,d,e,f,g,h,k,l){var m=e*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(d.x-m/2-n/2,d.y-n/2+m/2);a.lineTo(d.x+n/2-3*m/2,d.y-3*n/2-m/2);a.moveTo(d.x-m/2+n/2,d.y-n/2-m/2);a.lineTo(d.x-
n/2-3*m/2,d.y-3*n/2+m/2);a.stroke()}});mxMarker.addMarker("circle",xa);mxMarker.addMarker("circlePlus",function(a,b,c,d,e,f,g,h,k,l){var m=d.clone(),n=xa.apply(this,arguments),p=e*(g+2*k),q=f*(g+2*k);return function(){n.apply(this,arguments);a.begin();a.moveTo(m.x-e*k,m.y-f*k);a.lineTo(m.x-2*p+e*k,m.y-2*q+f*k);a.moveTo(m.x-p-q+f*k,m.y-q+p-e*k);a.lineTo(m.x+q-p-f*k,m.y-q-p+e*k);a.stroke()}});mxMarker.addMarker("async",function(a,b,c,d,e,f,g,h,k,l){b=e*k*1.118;c=f*k*1.118;e*=g+k;f*=g+k;var m=d.clone();
@@ -1811,7 +1811,7 @@ m.x-=b;m.y-=c;d.x+=1*-e-b;d.y+=1*-f-c;return function(){a.begin();a.moveTo(m.x,m
function(a,b,c){return la(a,["width"],b,function(b,d,e,f,g){g=a.shape.getEdgeWidth()*a.view.scale+c;return new mxPoint(f.x+d*b/4+e*g/2,f.y+e*b/4-d*g/2)},function(b,d,e,f,g,h){b=Math.sqrt(mxUtils.ptSegDistSq(f.x,f.y,g.x,g.y,h.x,h.y));a.style.width=Math.round(2*b)/a.view.scale-c})},la=function(a,b,c,d,e){var f=a.absolutePoints,g=f.length-1,h=a.view.translate,k=a.view.scale,l=c?f[0]:f[g],m=c?f[1]:f[g-1],n=m.x-l.x,p=m.y-l.y,q=Math.sqrt(n*n+p*p);return ba(a,b,function(a){a=d.call(this,q,n/q,p/q,l,m);return new mxPoint(a.x/
k-h.x,a.y/k-h.y)},function(a,b,c){a=Math.sqrt(n*n+p*p);b.x=(b.x+h.x)*k;b.y=(b.y+h.y)*k;e.call(this,a,n/a,p/a,l,m,b,c)})},ha=function(a){return function(b){return[ba(b,["arrowWidth","arrowSize"],function(b){var c=Math.max(0,Math.min(1,mxUtils.getValue(this.state.style,"arrowWidth",G.prototype.arrowWidth))),d=Math.max(0,Math.min(a,mxUtils.getValue(this.state.style,"arrowSize",G.prototype.arrowSize)));return new mxPoint(b.x+(1-d)*b.width,b.y+(1-c)*b.height/2)},function(b,c){this.state.style.arrowWidth=
Math.max(0,Math.min(1,Math.abs(b.y+b.height/2-c.y)/b.height*2));this.state.style.arrowSize=Math.max(0,Math.min(a,(b.x+b.width-c.x)/b.width))})]}},va=function(a,b,c){return function(d){var e=[ba(d,["size"],function(c){var d=Math.max(0,Math.min(c.width,Math.min(c.height,parseFloat(mxUtils.getValue(this.state.style,"size",b)))))*a;return new mxPoint(c.x+d,c.y+d)},function(b,c){this.state.style.size=Math.round(Math.max(0,Math.min(Math.min(b.width,c.x-b.x),Math.min(b.height,c.y-b.y)))/a)})];c&&mxUtils.getValue(d.style,
-mxConstants.STYLE_ROUNDED,!1)&&e.push(ga(d));return e}},ra=function(a,b,c){c=null!=c?c:1;return function(d){var e=[ba(d,["size"],function(b){var c=parseFloat(mxUtils.getValue(this.state.style,"size",a));return new mxPoint(b.x+c*b.width,b.getCenterY())},function(a,b){this.state.style.size=Math.max(0,Math.min(c,(b.x-a.x)/a.width))})];b&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(ga(d));return e}},Aa=function(a){return function(b){var c=[ba(b,["size"],function(b){var c=Math.max(0,
+mxConstants.STYLE_ROUNDED,!1)&&e.push(ga(d));return e}},qa=function(a,b,c){c=null!=c?c:1;return function(d){var e=[ba(d,["size"],function(b){var c=parseFloat(mxUtils.getValue(this.state.style,"size",a));return new mxPoint(b.x+c*b.width,b.getCenterY())},function(a,b){this.state.style.size=Math.max(0,Math.min(c,(b.x-a.x)/a.width))})];b&&mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,!1)&&e.push(ga(d));return e}},Aa=function(a){return function(b){var c=[ba(b,["size"],function(b){var c=Math.max(0,
Math.min(a,parseFloat(mxUtils.getValue(this.state.style,"size",n.prototype.size))));return new mxPoint(b.x+c*b.width*.75,b.y+b.height/4)},function(b,c){this.state.style.size=Math.max(0,Math.min(a,(c.x-b.x)/(.75*b.width)))})];mxUtils.getValue(b.style,mxConstants.STYLE_ROUNDED,!1)&&c.push(ga(b));return c}},ma=function(){return function(a){var b=[];mxUtils.getValue(a.style,mxConstants.STYLE_ROUNDED,!1)&&b.push(ga(a));return b}},ga=function(a,b){return ba(a,[mxConstants.STYLE_ARCSIZE],function(c){var d=
Math.max(0,parseFloat(mxUtils.getValue(a.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)))/100;return new mxPoint(c.x+c.width-Math.min(Math.max(c.width/2,c.height/2),Math.min(c.width,c.height)*d),c.y+(null!=b?b:c.height/8))},function(a,b,c){this.state.style[mxConstants.STYLE_ARCSIZE]=Math.round(Math.min(50,Math.max(0,100*(a.width-b.x+a.x)/Math.min(a.width,a.height))))})},ba=function(a,b,c,d,e){a=new mxHandle(a,null,mxVertexHandler.prototype.secondaryHandleImage);a.execute=
function(){for(var a=0;a<b.length;a++)this.copyStyle(b[a])};a.getPosition=c;a.setPosition=d;a.ignoreGrid=null!=e?e:!0;return a},wa={link:function(a){return[za(a,!0,10),za(a,!1,10)]},flexArrow:function(a){var b=a.view.graph.gridSize/a.view.scale,c=[];mxUtils.getValue(a.style,mxConstants.STYLE_STARTARROW,mxConstants.NONE)!=mxConstants.NONE&&(c.push(la(a,["width",mxConstants.STYLE_STARTSIZE,mxConstants.STYLE_ENDSIZE],!0,function(b,c,d,e,f){b=(a.shape.getEdgeWidth()-a.shape.strokewidth)*a.view.scale;
@@ -1836,7 +1836,7 @@ Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))})]},tee:function(a){return[ba
singleArrow:ha(1),doubleArrow:ha(.5),folder:function(a){return[ba(a,["tabWidth","tabHeight"],function(a){var b=Math.max(0,Math.min(a.width,mxUtils.getValue(this.state.style,"tabWidth",g.prototype.tabWidth))),c=Math.max(0,Math.min(a.height,mxUtils.getValue(this.state.style,"tabHeight",g.prototype.tabHeight)));mxUtils.getValue(this.state.style,"tabPosition",g.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(b=a.width-b);return new mxPoint(a.x+b,a.y+c)},function(a,b){var c=Math.max(0,Math.min(a.width,
b.x-a.x));mxUtils.getValue(this.state.style,"tabPosition",g.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(c=a.width-c);this.state.style.tabWidth=Math.round(c);this.state.style.tabHeight=Math.round(Math.max(0,Math.min(a.height,b.y-a.y)))})]},document:function(a){return[ba(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",l.prototype.size))));return new mxPoint(a.x+3*a.width/4,a.y+(1-b)*a.height)},function(a,b){this.state.style.size=Math.max(0,
Math.min(1,(a.y+a.height-b.y)/a.height))})]},tape:function(a){return[ba(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",k.prototype.size))));return new mxPoint(a.getCenterX(),a.y+b*a.height/2)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,(b.y-a.y)/a.height*2))})]},offPageConnector:function(a){return[ba(a,["size"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",ea.prototype.size))));return new mxPoint(a.getCenterX(),
-a.y+(1-b)*a.height)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,(a.y+a.height-b.y)/a.height))})]},step:ra(x.prototype.size,!0),hexagon:ra(w.prototype.size,!0,.5),curlyBracket:ra(p.prototype.size,!1),display:ra(ka.prototype.size,!1),cube:va(1,a.prototype.size,!1),card:va(.5,h.prototype.size,!0),loopLimit:va(.5,P.prototype.size,!0),trapezoid:Aa(.5),parallelogram:Aa(1)};Graph.createHandle=ba;Graph.handleFactory=wa;mxVertexHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()&&
+a.y+(1-b)*a.height)},function(a,b){this.state.style.size=Math.max(0,Math.min(1,(a.y+a.height-b.y)/a.height))})]},step:qa(x.prototype.size,!0),hexagon:qa(w.prototype.size,!0,.5),curlyBracket:qa(p.prototype.size,!1),display:qa(ka.prototype.size,!1),cube:va(1,a.prototype.size,!1),card:va(.5,h.prototype.size,!0),loopLimit:va(.5,P.prototype.size,!0),trapezoid:Aa(.5),parallelogram:Aa(1)};Graph.createHandle=ba;Graph.handleFactory=wa;mxVertexHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()&&
this.graph.isCellRotatable(this.state.cell)){var a=this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_RECTANGLE);a=wa[a];if(null!=a)return a(this.state)}return null};mxEdgeHandler.prototype.createCustomHandles=function(){if(1==this.state.view.graph.getSelectionCount()){var a=this.state.style.shape;null==this.state.view.graph.cellRenderer.defaultShapes[a]&&null==mxStencilRegistry.getStencil(a)&&(a=mxConstants.SHAPE_CONNECTOR);
a=wa[a];if(null!=a)return a(this.state)}return null}}else Graph.createHandle=function(){},Graph.handleFactory={};var sa=new mxPoint(1,0),ta=new mxPoint(1,0),ha=mxUtils.toRadians(-30),sa=mxUtils.getRotatedPoint(sa,Math.cos(ha),Math.sin(ha)),ha=mxUtils.toRadians(-150),ta=mxUtils.getRotatedPoint(ta,Math.cos(ha),Math.sin(ha));mxEdgeStyle.IsometricConnector=function(a,b,c,d,e){var f=a.view;d=null!=d&&0<d.length?d[0]:null;var g=a.absolutePoints,h=g[0],g=g[g.length-1];null!=d&&(d=f.transformControlPoint(a,
d));null==h&&null!=b&&(h=new mxPoint(b.getCenterX(),b.getCenterY()));null==g&&null!=c&&(g=new mxPoint(c.getCenterX(),c.getCenterY()));var k=sa.x,l=sa.y,m=ta.x,n=ta.y,p="horizontal"==mxUtils.getValue(a.style,"elbow","horizontal");if(null!=g&&null!=h){a=function(a,b,c){a-=q.x;var d=b-q.y;b=(n*a-m*d)/(k*n-l*m);a=(l*a-k*d)/(l*m-k*n);p?(c&&(q=new mxPoint(q.x+k*b,q.y+l*b),e.push(q)),q=new mxPoint(q.x+m*a,q.y+n*a)):(c&&(q=new mxPoint(q.x+m*a,q.y+n*a),e.push(q)),q=new mxPoint(q.x+k*b,q.y+l*b));e.push(q)};
@@ -1844,7 +1844,7 @@ var q=h;null==d&&(d=new mxPoint(h.x+(g.x-h.x)/2,h.y+(g.y-h.y)/2));a(d.x,d.y,!0);
0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),
new mxConnectionConstraint(new mxPoint(.75,1),!0)];mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];mxLabel.prototype.constraints=mxRectangleShape.prototype.constraints;
mxImageShape.prototype.constraints=mxRectangleShape.prototype.constraints;mxSwimlane.prototype.constraints=mxRectangleShape.prototype.constraints;z.prototype.constraints=mxRectangleShape.prototype.constraints;e.prototype.constraints=mxRectangleShape.prototype.constraints;h.prototype.constraints=mxRectangleShape.prototype.constraints;a.prototype.constraints=mxRectangleShape.prototype.constraints;g.prototype.constraints=mxRectangleShape.prototype.constraints;K.prototype.constraints=mxRectangleShape.prototype.constraints;
-T.prototype.constraints=mxRectangleShape.prototype.constraints;W.prototype.constraints=mxEllipse.prototype.constraints;O.prototype.constraints=mxEllipse.prototype.constraints;Q.prototype.constraints=mxEllipse.prototype.constraints;oa.prototype.constraints=mxEllipse.prototype.constraints;R.prototype.constraints=mxRectangleShape.prototype.constraints;pa.prototype.constraints=mxRectangleShape.prototype.constraints;ka.prototype.constraints=mxRectangleShape.prototype.constraints;P.prototype.constraints=
+T.prototype.constraints=mxRectangleShape.prototype.constraints;W.prototype.constraints=mxEllipse.prototype.constraints;O.prototype.constraints=mxEllipse.prototype.constraints;Q.prototype.constraints=mxEllipse.prototype.constraints;na.prototype.constraints=mxEllipse.prototype.constraints;R.prototype.constraints=mxRectangleShape.prototype.constraints;oa.prototype.constraints=mxRectangleShape.prototype.constraints;ka.prototype.constraints=mxRectangleShape.prototype.constraints;P.prototype.constraints=
mxRectangleShape.prototype.constraints;ea.prototype.constraints=mxRectangleShape.prototype.constraints;mxCylinder.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.15,.05),!1),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.85,.05),!1),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.3),!0),new mxConnectionConstraint(new mxPoint(1,
.5),!0),new mxConnectionConstraint(new mxPoint(1,.7),!0),new mxConnectionConstraint(new mxPoint(.15,.95),!1),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.85,.95),!1)];I.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.1),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.75,.1),!1),new mxConnectionConstraint(new mxPoint(0,1/3),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(1,
1/3),!1),new mxConnectionConstraint(new mxPoint(1,1),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1)];U.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,
diff --git a/war/js/viewer.min.js b/war/js/viewer.min.js
index 99d3cb8b..7018021b 100644
--- a/war/js/viewer.min.js
+++ b/war/js/viewer.min.js
@@ -2371,12 +2371,12 @@ mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPo
arguments)};mxCellRenderer.prototype.defaultShapes.plus=v;var ya=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var c=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+c,a.y+c,a.width-2*c,a.height-2*c)}return a};mxRhombus.prototype.paintVertexShape=function(a,c,b,d,f){ya.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var e=2*Math.max(2,this.strokewidth+
1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);c+=e;b+=e;d-=2*e;f-=2*e;0<d&&0<f&&(a.setShadow(!1),ya.apply(this,[a,c,b,d,f]))}};mxUtils.extend(w,mxRectangleShape);w.prototype.isHtmlAllowed=function(){return!1};w.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var c=(Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+c,a.y+c,a.width-2*c,a.height-2*c)}return a};w.prototype.paintForeground=function(a,c,b,
d,f){if(null!=this.style){if(!this.outline&&1==this.style["double"]){var e=Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);c+=e;b+=e;d-=2*e;f-=2*e;0<d&&0<f&&mxRectangleShape.prototype.paintBackground.apply(this,arguments)}a.setDashed(!1);var e=0,g;do{g=mxCellRenderer.prototype.defaultShapes[this.style["symbol"+e]];if(null!=g){var h=this.style["symbol"+e+"Align"],ia=this.style["symbol"+e+"VerticalAlign"],n=this.style["symbol"+e+"Width"],p=this.style["symbol"+e+"Height"],
-r=this.style["symbol"+e+"Spacing"]||0,t=this.style["symbol"+e+"ArcSpacing"];null!=t&&(r+=this.getArcSize(d+this.strokewidth,f+this.strokewidth)*t);var t=c,q=b,t=h==mxConstants.ALIGN_CENTER?t+(d-n)/2:h==mxConstants.ALIGN_RIGHT?t+(d-n-r):t+r,q=ia==mxConstants.ALIGN_MIDDLE?q+(f-p)/2:ia==mxConstants.ALIGN_BOTTOM?q+(f-p-r):q+r;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,t,q,n,p);a.restore()}e++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,arguments)};
-mxCellRenderer.prototype.defaultShapes.ext=w;mxUtils.extend(x,mxCylinder);x.prototype.redrawPath=function(a,c,b,d,f,e){e?(a.moveTo(0,0),a.lineTo(d/2,f/2),a.lineTo(d,0),a.end()):(a.moveTo(0,0),a.lineTo(d,0),a.lineTo(d,f),a.lineTo(0,f),a.close())};mxCellRenderer.prototype.defaultShapes.message=x;mxUtils.extend(D,mxShape);D.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.ellipse(d/4,0,d/2,f/4);a.fillAndStroke();a.begin();a.moveTo(d/2,f/4);a.lineTo(d/2,2*f/3);a.moveTo(d/2,f/3);a.lineTo(0,
-f/3);a.moveTo(d/2,f/3);a.lineTo(d,f/3);a.moveTo(d/2,2*f/3);a.lineTo(0,f);a.moveTo(d/2,2*f/3);a.lineTo(d,f);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlActor=D;mxUtils.extend(A,mxShape);A.prototype.getLabelBounds=function(a){return new mxRectangle(a.x+a.width/6,a.y,5*a.width/6,a.height)};A.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(0,f/4);a.lineTo(0,3*f/4);a.end();a.stroke();a.begin();a.moveTo(0,f/2);a.lineTo(d/6,f/2);a.end();a.stroke();a.ellipse(d/
-6,0,5*d/6,f);a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.umlBoundary=A;mxUtils.extend(y,mxEllipse);y.prototype.paintVertexShape=function(a,c,b,d,f){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(c+d/8,b+f);a.lineTo(c+7*d/8,b+f);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlEntity=y;mxUtils.extend(B,mxShape);B.prototype.paintVertexShape=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(d,0);a.lineTo(0,f);a.moveTo(0,0);a.lineTo(d,f);
-a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlDestroy=B;mxUtils.extend(C,mxShape);C.prototype.getLabelBounds=function(a){return new mxRectangle(a.x,a.y+a.height/8,a.width,7*a.height/8)};C.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(3*d/8,f/8*1.1);a.lineTo(5*d/8,0);a.end();a.stroke();a.ellipse(0,f/8,d,7*f/8);a.fillAndStroke()};C.prototype.paintForeground=function(a,c,b,d,f){a.begin();a.moveTo(3*d/8,f/8*1.1);a.lineTo(5*d/8,f/4);a.end();a.stroke()};
-mxCellRenderer.prototype.defaultShapes.umlControl=C;mxUtils.extend(J,mxRectangleShape);J.prototype.size=40;J.prototype.isHtmlAllowed=function(){return!1};J.prototype.getLabelBounds=function(a){var c=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"size",this.size))*this.scale));return new mxRectangle(a.x,a.y,a.width,c)};J.prototype.paintBackground=function(a,c,b,d,f){var e=Math.max(0,Math.min(f,parseFloat(mxUtils.getValue(this.style,"size",this.size)))),g=mxUtils.getValue(this.style,
+r=this.style["symbol"+e+"Spacing"]||0,t=this.style["symbol"+e+"VSpacing"]||r,q=this.style["symbol"+e+"ArcSpacing"];null!=q&&(q*=this.getArcSize(d+this.strokewidth,f+this.strokewidth),r+=q,t+=q);var q=c,m=b,q=h==mxConstants.ALIGN_CENTER?q+(d-n)/2:h==mxConstants.ALIGN_RIGHT?q+(d-n-r):q+r,m=ia==mxConstants.ALIGN_MIDDLE?m+(f-p)/2:ia==mxConstants.ALIGN_BOTTOM?m+(f-p-t):m+t;a.save();h=new g;h.style=this.style;g.prototype.paintVertexShape.call(h,a,q,m,n,p);a.restore()}e++}while(null!=g)}mxRectangleShape.prototype.paintForeground.apply(this,
+arguments)};mxCellRenderer.prototype.defaultShapes.ext=w;mxUtils.extend(x,mxCylinder);x.prototype.redrawPath=function(a,c,b,d,f,e){e?(a.moveTo(0,0),a.lineTo(d/2,f/2),a.lineTo(d,0),a.end()):(a.moveTo(0,0),a.lineTo(d,0),a.lineTo(d,f),a.lineTo(0,f),a.close())};mxCellRenderer.prototype.defaultShapes.message=x;mxUtils.extend(D,mxShape);D.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.ellipse(d/4,0,d/2,f/4);a.fillAndStroke();a.begin();a.moveTo(d/2,f/4);a.lineTo(d/2,2*f/3);a.moveTo(d/2,
+f/3);a.lineTo(0,f/3);a.moveTo(d/2,f/3);a.lineTo(d,f/3);a.moveTo(d/2,2*f/3);a.lineTo(0,f);a.moveTo(d/2,2*f/3);a.lineTo(d,f);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlActor=D;mxUtils.extend(A,mxShape);A.prototype.getLabelBounds=function(a){return new mxRectangle(a.x+a.width/6,a.y,5*a.width/6,a.height)};A.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(0,f/4);a.lineTo(0,3*f/4);a.end();a.stroke();a.begin();a.moveTo(0,f/2);a.lineTo(d/6,f/2);a.end();
+a.stroke();a.ellipse(d/6,0,5*d/6,f);a.fillAndStroke()};mxCellRenderer.prototype.defaultShapes.umlBoundary=A;mxUtils.extend(y,mxEllipse);y.prototype.paintVertexShape=function(a,c,b,d,f){mxEllipse.prototype.paintVertexShape.apply(this,arguments);a.begin();a.moveTo(c+d/8,b+f);a.lineTo(c+7*d/8,b+f);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlEntity=y;mxUtils.extend(B,mxShape);B.prototype.paintVertexShape=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(d,0);a.lineTo(0,f);a.moveTo(0,
+0);a.lineTo(d,f);a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlDestroy=B;mxUtils.extend(C,mxShape);C.prototype.getLabelBounds=function(a){return new mxRectangle(a.x,a.y+a.height/8,a.width,7*a.height/8)};C.prototype.paintBackground=function(a,c,b,d,f){a.translate(c,b);a.begin();a.moveTo(3*d/8,f/8*1.1);a.lineTo(5*d/8,0);a.end();a.stroke();a.ellipse(0,f/8,d,7*f/8);a.fillAndStroke()};C.prototype.paintForeground=function(a,c,b,d,f){a.begin();a.moveTo(3*d/8,f/8*1.1);a.lineTo(5*d/8,f/4);
+a.end();a.stroke()};mxCellRenderer.prototype.defaultShapes.umlControl=C;mxUtils.extend(J,mxRectangleShape);J.prototype.size=40;J.prototype.isHtmlAllowed=function(){return!1};J.prototype.getLabelBounds=function(a){var c=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"size",this.size))*this.scale));return new mxRectangle(a.x,a.y,a.width,c)};J.prototype.paintBackground=function(a,c,b,d,f){var e=Math.max(0,Math.min(f,parseFloat(mxUtils.getValue(this.style,"size",this.size)))),g=mxUtils.getValue(this.style,
"participant");null==g||null==this.state?mxRectangleShape.prototype.paintBackground.call(this,a,c,b,d,e):(g=this.state.view.graph.cellRenderer.getShape(g),null!=g&&g!=J&&(g=new g,g.apply(this.state),a.save(),g.paintVertexShape(a,c,b,d,e),a.restore()));e<f&&(a.setDashed(!0),a.begin(),a.moveTo(c+d/2,b+e),a.lineTo(c+d/2,b+f),a.end(),a.stroke())};J.prototype.paintForeground=function(a,c,b,d,f){var e=Math.max(0,Math.min(f,parseFloat(mxUtils.getValue(this.style,"size",this.size))));mxRectangleShape.prototype.paintForeground.call(this,
a,c,b,d,Math.min(f,e))};mxCellRenderer.prototype.defaultShapes.umlLifeline=J;mxUtils.extend(K,mxShape);K.prototype.width=60;K.prototype.height=30;K.prototype.corner=10;K.prototype.getLabelBounds=function(a){var c=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.style,"width",this.width))*this.scale)),b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.style,"height",this.height))*this.scale));return new mxRectangle(a.x,a.y,c,b)};K.prototype.paintBackground=function(a,c,b,d,
f){var e=this.corner,g=Math.min(d,Math.max(e,parseFloat(mxUtils.getValue(this.style,"width",this.width)))),h=Math.min(f,Math.max(1.5*e,parseFloat(mxUtils.getValue(this.style,"height",this.height))));a.begin();a.moveTo(c,b);a.lineTo(c+g,b);a.lineTo(c+g,b+Math.max(0,h-1.5*e));a.lineTo(c+Math.max(0,g-e),b+h);a.lineTo(c,b+h);a.close();a.fillAndStroke();a.begin();a.moveTo(c+g,b);a.lineTo(c+d,b);a.lineTo(c+d,b+f);a.lineTo(c,b+f);a.lineTo(c,b+h);a.stroke()};mxCellRenderer.prototype.defaultShapes.umlFrame=
@@ -2673,7 +2673,7 @@ EditorUi.prototype.saveRequest=function(a,b,d,e,h,q){h=!mxClient.IS_IOS||!naviga
mxResources.get("saving"))&&f.send(mxUtils.bind(this,function(){this.spinner.stop();if(200<=f.getStatus()&&299>=f.getStatus())try{this.exportFile(f.getText(),a,q,!0,c,d)}catch(z){this.handleError(z)}else this.handleError({message:mxResources.get("errorSavingFile")})}),function(a){this.spinner.stop();this.handleError(a)})})))}}),mxUtils.bind(this,function(){this.hideDialog()}),mxResources.get("saveAs"),mxResources.get("download"),!1,!1,h,null,null,4);this.showDialog(a.container,380,5>this.getServiceCount(!1)-
1?270:390,!0,!0);a.init()};EditorUi.prototype.exportFile=function(a,b,d,e,h,q){};EditorUi.prototype.pickFolder=function(a,b,d){b(null)};EditorUi.prototype.exportSvg=function(a,b,d,e,h,q,k,n,l){if(this.spinner.spin(document.body,mxResources.get("export"))){var c=this.editor.graph.isSelectionEmpty();d=null!=d?d:c;c=b?null:this.editor.graph.background;c==mxConstants.NONE&&(c=null);null==c&&0==b&&(c="#ffffff");var f=this.editor.graph.getSvg(c,a,k,n,null,d);e&&this.editor.graph.addSvgShadow(f);var g=this.getBaseFilename()+
".svg",p=mxUtils.bind(this,function(a){this.spinner.stop();h&&a.setAttribute("content",this.getFileData(!0,null,null,null,d,l));var c='<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\n'+mxUtils.getXml(a);this.isLocalFileSave()||c.length<=MAX_REQUEST_SIZE?this.saveData(g,"svg",c,"image/svg+xml"):this.handleError({message:mxResources.get("drawingTooLarge")},mxResources.get("error"),mxUtils.bind(this,function(){mxUtils.popup(c)}))});this.convertMath(this.editor.graph,
-f,!1,mxUtils.bind(this,function(){q?(null==this.thumbImageCache&&(this.thumbImageCache={}),this.convertImages(f,p,this.thumbImageCache)):p(f)}))}};EditorUi.prototype.addCheckbox=function(a,b,d,e,h,k){k=null!=k?k:!0;var c=document.createElement("input");c.style.marginRight="8px";c.style.marginTop="16px";c.setAttribute("type","checkbox");d&&(c.setAttribute("checked","checked"),c.defaultChecked=!0);e&&c.setAttribute("disabled","disabled");k&&(a.appendChild(c),mxUtils.write(a,b),h||mxUtils.br(a));return c};
+f,!1,mxUtils.bind(this,function(){q?(null==this.thumbImageCache&&(this.thumbImageCache={}),this.convertImages(f,p,this.thumbImageCache)):p(f)}))}};EditorUi.prototype.addCheckbox=function(a,b,d,e,h,q){q=null!=q?q:!0;var c=document.createElement("input");c.style.marginRight="8px";c.style.marginTop="16px";c.setAttribute("type","checkbox");d&&(c.setAttribute("checked","checked"),c.defaultChecked=!0);e&&c.setAttribute("disabled","disabled");q&&(a.appendChild(c),mxUtils.write(a,b),h||mxUtils.br(a));return c};
EditorUi.prototype.addEditButton=function(a,b){var c=this.addCheckbox(a,mxResources.get("edit")+":",!0,null,!0);c.style.marginLeft="24px";var d=this.getCurrentFile(),e="";null!=d&&d.getMode()!=App.MODE_DEVICE&&d.getMode()!=App.MODE_BROWSER&&(e=window.location.href);var f=document.createElement("select");f.style.width="120px";f.style.marginLeft="8px";f.style.marginRight="10px";f.className="geBtn";d=document.createElement("option");d.setAttribute("value","blank");mxUtils.write(d,mxResources.get("makeCopy"));
f.appendChild(d);d=document.createElement("option");d.setAttribute("value","custom");mxUtils.write(d,mxResources.get("custom")+"...");f.appendChild(d);a.appendChild(f);mxEvent.addListener(f,"change",mxUtils.bind(this,function(){if("custom"==f.value){var a=new FilenameDialog(this,e,mxResources.get("ok"),function(a){null!=a?e=a:f.value="blank"},mxResources.get("url"),null,null,null,null,function(){f.value="blank"});this.showDialog(a.container,300,80,!0,!1);a.init()}}));mxEvent.addListener(c,"change",
mxUtils.bind(this,function(){c.checked&&(null==b||b.checked)?f.removeAttribute("disabled"):f.setAttribute("disabled","disabled")}));mxUtils.br(a);return{getLink:function(){return c.checked?"blank"===f.value?"_blank":e:null},getEditInput:function(){return c},getEditSelect:function(){return f}}};EditorUi.prototype.addLinkSection=function(a,b){function c(){k.innerHTML='<div style="width:100%;height:100%;box-sizing:border-box;'+(null!=f&&f!=mxConstants.NONE?"border:1px solid black;background-color:"+
@@ -2690,12 +2690,12 @@ g.appendChild(p);var k=this.getCurrentFile();null==d&&null!=k&&k.constructor==wi
this.addLinkSection(c),m=this.addCheckbox(c,mxResources.get("zoom"),!0,null,!0);mxUtils.write(c,":");var w=document.createElement("input");w.setAttribute("type","text");w.style.marginRight="16px";w.style.width="60px";w.style.marginLeft="4px";w.style.marginRight="12px";w.value="100%";c.appendChild(w);var x=this.addCheckbox(c,mxResources.get("fit"),!0),g=null!=this.pages&&1<this.pages.length,D=D=this.addCheckbox(c,mxResources.get("allPages"),g,!g),A=this.addCheckbox(c,mxResources.get("layers"),!0),
y=this.addCheckbox(c,mxResources.get("lightbox"),!0),B=this.addEditButton(c,y),C=B.getEditInput();C.style.marginBottom="16px";mxEvent.addListener(y,"change",function(){y.checked?C.removeAttribute("disabled"):C.setAttribute("disabled","disabled");C.checked&&y.checked?B.getEditSelect().removeAttribute("disabled"):B.getEditSelect().setAttribute("disabled","disabled")});a=new CustomDialog(this,c,mxUtils.bind(this,function(){e(n.checked?d:null,m.checked,w.value,l.getTarget(),l.getColor(),x.checked,D.checked,
A.checked,y.checked,B.getLink())}),null,a,b);this.showDialog(a.container,340,360,!0,!0);f.focus()};EditorUi.prototype.showPublishLinkDialog=function(a,b,d,e,h,k){var c=document.createElement("div");c.style.whiteSpace="nowrap";var f=document.createElement("h3");mxUtils.write(f,a||mxResources.get("link"));f.style.cssText="width:100%;text-align:center;margin-top:0px;margin-bottom:12px";c.appendChild(f);var g=this.getCurrentFile(),f="https://desk.draw.io/support/solutions/articles/16000051941";a=0;if(null!=
-g&&g.constructor==window.DriveFile&&!b){a=80;var f="https://desk.draw.io/support/solutions/articles/16000039384",p=document.createElement("div");p.style.cssText="border-bottom:1px solid lightGray;padding-bottom:14px;padding-top:6px;margin-bottom:14px;text-align:center;";var l=document.createElement("div");l.style.whiteSpace="normal";mxUtils.write(l,mxResources.get("linkAccountRequired"));p.appendChild(l);l=mxUtils.button(mxResources.get("share"),mxUtils.bind(this,function(){this.drive.showPermissions(g.getId())}));
-l.style.marginTop="12px";l.className="geBtn";p.appendChild(l);c.appendChild(p);l=document.createElement("a");l.style.paddingLeft="12px";l.style.color="gray";l.style.fontSize="11px";l.setAttribute("href","javascript:void(0);");mxUtils.write(l,mxResources.get("check"));p.appendChild(l);mxEvent.addListener(l,"click",mxUtils.bind(this,function(){this.spinner.spin(document.body,mxResources.get("loading"))&&this.getPublicUrl(this.getCurrentFile(),mxUtils.bind(this,function(a){this.spinner.stop();a=new ErrorDialog(this,
-null,mxResources.get(null!=a?"diagramIsPublic":"diagramIsNotPublic"),mxResources.get("ok"));this.showDialog(a.container,300,80,!0,!1);a.init()}))}))}var q=null,m=null;if(null!=d||null!=e)a+=30,mxUtils.write(c,mxResources.get("width")+":"),q=document.createElement("input"),q.setAttribute("type","text"),q.style.marginRight="16px",q.style.width="50px",q.style.marginLeft="6px",q.style.marginRight="16px",q.style.marginBottom="10px",q.value="100%",c.appendChild(q),mxUtils.write(c,mxResources.get("height")+
+g&&g.constructor==window.DriveFile&&!b){a=80;var f="https://desk.draw.io/support/solutions/articles/16000039384",p=document.createElement("div");p.style.cssText="border-bottom:1px solid lightGray;padding-bottom:14px;padding-top:6px;margin-bottom:14px;text-align:center;";var q=document.createElement("div");q.style.whiteSpace="normal";mxUtils.write(q,mxResources.get("linkAccountRequired"));p.appendChild(q);q=mxUtils.button(mxResources.get("share"),mxUtils.bind(this,function(){this.drive.showPermissions(g.getId())}));
+q.style.marginTop="12px";q.className="geBtn";p.appendChild(q);c.appendChild(p);q=document.createElement("a");q.style.paddingLeft="12px";q.style.color="gray";q.style.fontSize="11px";q.setAttribute("href","javascript:void(0);");mxUtils.write(q,mxResources.get("check"));p.appendChild(q);mxEvent.addListener(q,"click",mxUtils.bind(this,function(){this.spinner.spin(document.body,mxResources.get("loading"))&&this.getPublicUrl(this.getCurrentFile(),mxUtils.bind(this,function(a){this.spinner.stop();a=new ErrorDialog(this,
+null,mxResources.get(null!=a?"diagramIsPublic":"diagramIsNotPublic"),mxResources.get("ok"));this.showDialog(a.container,300,80,!0,!1);a.init()}))}))}var l=null,m=null;if(null!=d||null!=e)a+=30,mxUtils.write(c,mxResources.get("width")+":"),l=document.createElement("input"),l.setAttribute("type","text"),l.style.marginRight="16px",l.style.width="50px",l.style.marginLeft="6px",l.style.marginRight="16px",l.style.marginBottom="10px",l.value="100%",c.appendChild(l),mxUtils.write(c,mxResources.get("height")+
":"),m=document.createElement("input"),m.setAttribute("type","text"),m.style.width="50px",m.style.marginLeft="6px",m.style.marginBottom="10px",m.value=e+"px",c.appendChild(m),mxUtils.br(c);var x=this.addLinkSection(c,k);d=null!=this.pages&&1<this.pages.length;var D=null;if(null==g||g.constructor!=window.DriveFile||b)D=this.addCheckbox(c,mxResources.get("allPages"),d,!d);var A=this.addCheckbox(c,mxResources.get("lightbox"),!0),y=this.addEditButton(c,A),B=y.getEditInput(),C=this.addCheckbox(c,mxResources.get("layers"),
!0);C.style.marginLeft=B.style.marginLeft;C.style.marginBottom="16px";C.style.marginTop="8px";mxEvent.addListener(A,"change",function(){A.checked?(C.removeAttribute("disabled"),B.removeAttribute("disabled")):(C.setAttribute("disabled","disabled"),B.setAttribute("disabled","disabled"));B.checked&&A.checked?y.getEditSelect().removeAttribute("disabled"):y.getEditSelect().setAttribute("disabled","disabled")});b=new CustomDialog(this,c,mxUtils.bind(this,function(){h(x.getTarget(),x.getColor(),null==D?
-!0:D.checked,A.checked,y.getLink(),C.checked,null!=q?q.value:null,null!=m?m.value:null)}),null,mxResources.get("create"),f);this.showDialog(b.container,340,246+a,!0,!0);null!=q?(q.focus(),mxClient.IS_FF||5<=document.documentMode||mxClient.IS_QUIRKS?q.select():document.execCommand("selectAll",!1,null)):x.focus()};EditorUi.prototype.showRemoteExportDialog=function(a,b,d,e){var c=document.createElement("div");c.style.whiteSpace="nowrap";var f=document.createElement("h3");mxUtils.write(f,mxResources.get("image"));
+!0:D.checked,A.checked,y.getLink(),C.checked,null!=l?l.value:null,null!=m?m.value:null)}),null,mxResources.get("create"),f);this.showDialog(b.container,340,246+a,!0,!0);null!=l?(l.focus(),mxClient.IS_FF||5<=document.documentMode||mxClient.IS_QUIRKS?l.select():document.execCommand("selectAll",!1,null)):x.focus()};EditorUi.prototype.showRemoteExportDialog=function(a,b,d,e){var c=document.createElement("div");c.style.whiteSpace="nowrap";var f=document.createElement("h3");mxUtils.write(f,mxResources.get("image"));
f.style.cssText="width:100%;text-align:center;margin-top:0px;margin-bottom:4px";c.appendChild(f);var g=this.addCheckbox(c,mxResources.get("selectionOnly"),!1,this.editor.graph.isSelectionEmpty()),p=e?null:this.addCheckbox(c,mxResources.get("includeCopyOfMyDiagram"),!0);null!=p&&(p.style.marginBottom="16px");a=new CustomDialog(this,c,mxUtils.bind(this,function(){d(!g.checked,null!=p?p.checked:!1)}),null,a,b);this.showDialog(a.container,300,e?100:146,!0,!0)};EditorUi.prototype.showExportDialog=function(a,
b,d,e,h,k,l,n){l=null!=l?l:!0;var c=document.createElement("div");c.style.whiteSpace="nowrap";var f=this.editor.graph,g="jpeg"==n?170:280,p=document.createElement("h3");mxUtils.write(p,a);p.style.cssText="width:100%;text-align:center;margin-top:0px;margin-bottom:10px";c.appendChild(p);mxUtils.write(c,mxResources.get("zoom")+":");var q=document.createElement("input");q.setAttribute("type","text");q.style.marginRight="16px";q.style.width="60px";q.style.marginLeft="4px";q.style.marginRight="12px";q.value=
this.lastExportZoom||"100%";c.appendChild(q);mxUtils.write(c,mxResources.get("borderWidth")+":");var m=document.createElement("input");m.setAttribute("type","text");m.style.marginRight="16px";m.style.width="60px";m.style.marginLeft="4px";m.value=this.lastExportBorder||"0";c.appendChild(m);mxUtils.br(c);var u=this.addCheckbox(c,mxResources.get("transparentBackground"),f.background==mxConstants.NONE||null==f.background,null,null,"jpeg"!=n),A=this.addCheckbox(c,mxResources.get("selectionOnly"),!1,f.isSelectionEmpty()),
@@ -2722,8 +2722,8 @@ function(){var a=new mxUrlConverter;a.updateBaseUrl();var b=a.convert;a.convert=
p=0;p<h.length;p++)mxUtils.bind(this,function(d){var h=e.convert(d.getAttribute(g));if(null!=h&&"data:"!=h.substring(0,5)){var p=f[h];null==p?(c++,this.convertImageToDataUri(h,function(e){null!=e&&(f[h]=e,d.setAttribute(g,e));c--;0==c&&b(a)})):d.setAttribute(g,p)}})(h[p])});d("image","xlink:href");d("img","src");0==c&&b(a)};EditorUi.prototype.loadUrl=function(a,b,d,e,h,k){try{var c=e||/(\.png)($|\?)/i.test(a)||/(\.jpe?g)($|\?)/i.test(a)||/(\.gif)($|\?)/i.test(a);h=null!=h?h:!0;var f=mxUtils.bind(this,
function(){mxUtils.get(a,mxUtils.bind(this,function(a){if(200<=a.getStatus()&&299>=a.getStatus()){if(null!=b){var e=a.getText();if(c){if((9==document.documentMode||10==document.documentMode)&&"undefined"!==typeof window.mxUtilsBinaryToArray){a=mxUtilsBinaryToArray(a.request.responseBody).toArray();for(var e=Array(a.length),f=0;f<a.length;f++)e[f]=String.fromCharCode(a[f]);e=e.join("")}k=null!=k?k:"data:image/png;base64,";e=k+this.base64Encode(e)}b(e)}}else null!=d&&d({code:App.ERROR_UNKNOWN})}),function(){null!=
d&&d({code:App.ERROR_UNKNOWN})},c,this.timeout,function(){h&&null!=d&&d({code:App.ERROR_TIMEOUT,retry:f})})});f()}catch(t){null!=d&&d(t)}};EditorUi.prototype.isCorsEnabledForUrl=function(a){return"https?://raw.githubusercontent.com/"===a.substring(0,34)||/^https?:\/\/.*\.github\.io\//.test(a)||/^https?:\/\/(.*\.)?rawgit\.com\//.test(a)};EditorUi.prototype.convertImageToDataUri=function(a,b){if(/(\.svg)$/i.test(a))mxUtils.get(a,mxUtils.bind(this,function(a){b(this.createSvgDataUri(a.getText()))}),
-function(){b()});else{var c=new Image;c.onload=function(){var a=document.createElement("canvas"),d=a.getContext("2d");a.height=c.height;a.width=c.width;d.drawImage(c,0,0);b(a.toDataURL())};c.onerror=function(){b()};c.src=a}};EditorUi.prototype.importXml=function(a,b,d,e,h){b=null!=b?b:0;d=null!=d?d:0;var c=[];try{var f=this.editor.graph;if(null!=a&&0<a.length){var g=mxUtils.parseXml(a),k=this.editor.extractGraphModel(g.documentElement,null!=this.pages);if(null!=k&&"mxfile"==k.nodeName&&null!=this.pages){var p=
-k.getElementsByTagName("diagram");if(1==p.length)k=mxUtils.parseXml(f.decompress(mxUtils.getTextContent(p[0]))).documentElement;else if(1<p.length){f.model.beginUpdate();try{for(var l=0;l<p.length;l++){var m=this.updatePageRoot(new DiagramPage(p[l])),w=this.pages.length;null==m.getName()&&m.setName(mxResources.get("pageWithNumber",[w+1]));f.model.execute(new ChangePage(this,m,m,w))}}finally{f.model.endUpdate()}}}if(null!=k&&"mxGraphModel"===k.nodeName){var x=new mxGraphModel;(new mxCodec(k.ownerDocument)).decode(k,
+function(){b()});else{var c=new Image;c.onload=function(){var a=document.createElement("canvas"),d=a.getContext("2d");a.height=c.height;a.width=c.width;d.drawImage(c,0,0);b(a.toDataURL())};c.onerror=function(){b()};c.src=a}};EditorUi.prototype.importXml=function(a,b,d,e,h){b=null!=b?b:0;d=null!=d?d:0;var c=[];try{var f=this.editor.graph;if(null!=a&&0<a.length){var g=mxUtils.parseXml(a),p=this.editor.extractGraphModel(g.documentElement,null!=this.pages);if(null!=p&&"mxfile"==p.nodeName&&null!=this.pages){var k=
+p.getElementsByTagName("diagram");if(1==k.length)p=mxUtils.parseXml(f.decompress(mxUtils.getTextContent(k[0]))).documentElement;else if(1<k.length){f.model.beginUpdate();try{for(var l=0;l<k.length;l++){var m=this.updatePageRoot(new DiagramPage(k[l])),w=this.pages.length;null==m.getName()&&m.setName(mxResources.get("pageWithNumber",[w+1]));f.model.execute(new ChangePage(this,m,m,w))}}finally{f.model.endUpdate()}}}if(null!=p&&"mxGraphModel"===p.nodeName){var x=new mxGraphModel;(new mxCodec(p.ownerDocument)).decode(p,
x);var D=x.getChildCount(x.getRoot());f.model.getChildCount(f.model.getRoot());f.model.beginUpdate();try{a={};for(l=0;l<D;l++){var A=x.getChildAt(x.getRoot(),l);if(1!=D||f.isCellLocked(f.getDefaultParent()))A=f.importCells([A],0,0,f.model.getRoot(),null,a)[0],y=f.model.getChildren(A),f.moveCells(y,b,d),c=c.concat(y);else var y=x.getChildren(A),c=c.concat(f.importCells(y,b,d,f.getDefaultParent(),null,a))}if(e){f.isGridEnabled()&&(b=f.snap(b),d=f.snap(d));var B=f.getBoundingBoxFromGeometry(c,!0);null!=
B&&f.moveCells(c,b-B.x,d-B.y)}}finally{f.model.endUpdate()}}}}catch(C){throw h||this.handleError(C,mxResources.get("invalidOrMissingFile")),C;}return c};EditorUi.prototype.importLucidChart=function(a,b,d,e,h){var c=mxUtils.bind(this,function(){if(this.pasteLucidChart)try{this.insertLucidChart(a,b,d,e,h)}catch(u){this.handleError(u)}finally{null!=h&&h()}});this.pasteLucidChart||this.loadingExtensions||this.isOffline()?window.setTimeout(c,0):(this.loadingExtensions=!0,"1"==urlParams.dev?mxscript("/js/diagramly/Extensions.js",
c):mxscript("/js/extensions.min.js",c))};EditorUi.prototype.insertLucidChart=function(a,b,d,e,h){h=JSON.parse(a);a=[];if(null!=h.state){h=JSON.parse(h.state);for(var c in h.Pages)a.push(h.Pages[c]);a.sort(function(a,c){return a.Properties.Order<c.Properties.Order?-1:a.Properties.Order>c.Properties.Order?1:0})}else a.push(h);if(0<a.length){this.editor.graph.getModel().beginUpdate();try{if(this.pasteLucidChart(a[0],b,d,e),null!=this.pages){var f=this.currentPage;for(b=1;b<a.length;b++)this.insertPage(),
@@ -2733,18 +2733,18 @@ b,d,!0))}));else if("data:"==a.substring(0,5)||!this.isOffline()&&(h||/\.(gif|jp
e.height)),g=Math.round(e.width*f);e=Math.round(e.height*f);c.setSelectionCell(c.insertVertex(null,null,"",c.snap(b),c.snap(d),g,e,"shape=image;verticalLabelPosition=bottom;labelBackgroundColor=#ffffff;verticalAlign=top;aspect=fixed;imageAspect=0;image="+a+";"))}}),mxUtils.bind(this,function(){var f=null;c.getModel().beginUpdate();try{f=c.insertVertex(c.getDefaultParent(),null,a,c.snap(b),c.snap(d),1,1,"text;"+(e?"html=1;":"")),c.updateCellSize(f),c.fireEvent(new mxEventObject("textInserted","cells",
[f]))}finally{c.getModel().endUpdate()}c.setSelectionCell(f)}))}else{a=this.editor.graph.zapGremlins(mxUtils.trim(a));if(this.isCompatibleString(a))return this.importXml(a,b,d,k);if(0<a.length)if('{"state":"{\\"Properties\\":'==a.substring(0,26))this.importLucidChart(a,b,d,k);else{c=this.editor.graph;h=null;c.getModel().beginUpdate();try{h=c.insertVertex(c.getDefaultParent(),null,"",c.snap(b),c.snap(d),1,1,"text;"+(e?"html=1;":"")),c.fireEvent(new mxEventObject("textInserted","cells",[h])),h.value=
a,c.updateCellSize(h),/\b((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))/i.test(h.value)&&c.setLinkForCell(h,h.value),h.geometry.width+=c.gridSize,h.geometry.height+=c.gridSize}finally{c.getModel().endUpdate()}return[h]}}return[]};EditorUi.prototype.formatFileSize=function(a){var c=-1;do a/=1024,c++;while(1024<a);return Math.max(a,.1).toFixed(1)+
-" kB; MB; GB; TB;PB;EB;ZB;YB".split(";")[c]};EditorUi.prototype.convertDataUri=function(a){if("data:"==a.substring(0,5)){var c=a.indexOf(";");0<c&&(a=a.substring(0,c)+a.substring(a.indexOf(",",c+1)))}return a};EditorUi.prototype.isRemoteFileFormat=function(a,b){return/(\.*<graphml xmlns=\".*)/.test(a)||/(\"contentType\":\s*\"application\/gliffy\+json\")/.test(a)||null!=b&&/(\.vsdx)($|\?)/i.test(b)||null!=b&&/(\.vssx)($|\?)/i.test(b)};EditorUi.prototype.importFile=function(a,b,d,e,h,k,l,n,m,r,z){r=
-null!=r?r:!0;var c=!1,f=null;"image"==b.substring(0,5)?(m=!1,"image/png"==b.substring(0,9)&&(b=z?null:this.extractGraphModelFromPng(a),null!=b&&0<b.length&&(f=this.importXml(b,d,e,r),m=!0)),m||(f=this.editor.graph,b=a.indexOf(";"),0<b&&(a=a.substring(0,b)+a.substring(a.indexOf(",",b+1))),r&&f.isGridEnabled()&&(d=f.snap(d),e=f.snap(e)),f=[f.insertVertex(null,null,"",d,e,h,k,"shape=image;verticalLabelPosition=bottom;labelBackgroundColor=#ffffff;verticalAlign=top;aspect=fixed;imageAspect=0;image="+a+
-";")])):!this.isOffline()&&(new XMLHttpRequest).upload&&this.isRemoteFileFormat(a,l)?(c=!0,this.parseFile(null!=m?m:new Blob([a],{type:"application/octet-stream"}),mxUtils.bind(this,function(a){if(4==a.readyState){var c=null;200<=a.status&&299>=a.status&&(a=a.responseText,null!=a&&"<mxlibrary"==a.substring(0,10)?(null!=l&&".vssx"==l.toLowerCase().substring(l.length-5)&&(l=l.substring(0,l.length-5)+".xml"),this.loadLibrary(new LocalLibrary(this,a,l))):c=this.importXml(a,d,e,r));null!=n&&n(c)}}),l)):
-/(\.vsd)($|\?)/i.test(l)||(f=this.insertTextAt(this.validateFileData(a),d,e,!0,null,r));c||null==n||n(f);return f};EditorUi.prototype.base64Encode=function(a){for(var c="",b=0,d=a.length,e,k,l;b<d;){e=a.charCodeAt(b++)&255;if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4);c+="==";break}k=a.charCodeAt(b++);if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>
+" kB; MB; GB; TB;PB;EB;ZB;YB".split(";")[c]};EditorUi.prototype.convertDataUri=function(a){if("data:"==a.substring(0,5)){var c=a.indexOf(";");0<c&&(a=a.substring(0,c)+a.substring(a.indexOf(",",c+1)))}return a};EditorUi.prototype.isRemoteFileFormat=function(a,b){return/(\.*<graphml xmlns=\".*)/.test(a)||/(\"contentType\":\s*\"application\/gliffy\+json\")/.test(a)||null!=b&&/(\.vsdx)($|\?)/i.test(b)||null!=b&&/(\.vssx)($|\?)/i.test(b)};EditorUi.prototype.importFile=function(a,b,d,e,h,k,l,m,t,r,z){r=
+null!=r?r:!0;var c=!1,f=null;"image"==b.substring(0,5)?(t=!1,"image/png"==b.substring(0,9)&&(b=z?null:this.extractGraphModelFromPng(a),null!=b&&0<b.length&&(f=this.importXml(b,d,e,r),t=!0)),t||(f=this.editor.graph,b=a.indexOf(";"),0<b&&(a=a.substring(0,b)+a.substring(a.indexOf(",",b+1))),r&&f.isGridEnabled()&&(d=f.snap(d),e=f.snap(e)),f=[f.insertVertex(null,null,"",d,e,h,k,"shape=image;verticalLabelPosition=bottom;labelBackgroundColor=#ffffff;verticalAlign=top;aspect=fixed;imageAspect=0;image="+a+
+";")])):!this.isOffline()&&(new XMLHttpRequest).upload&&this.isRemoteFileFormat(a,l)?(c=!0,this.parseFile(null!=t?t:new Blob([a],{type:"application/octet-stream"}),mxUtils.bind(this,function(a){if(4==a.readyState){var c=null;200<=a.status&&299>=a.status&&(a=a.responseText,null!=a&&"<mxlibrary"==a.substring(0,10)?(null!=l&&".vssx"==l.toLowerCase().substring(l.length-5)&&(l=l.substring(0,l.length-5)+".xml"),this.loadLibrary(new LocalLibrary(this,a,l))):c=this.importXml(a,d,e,r));null!=m&&m(c)}}),l)):
+/(\.vsd)($|\?)/i.test(l)||(f=this.insertTextAt(this.validateFileData(a),d,e,!0,null,r));c||null==m||m(f);return f};EditorUi.prototype.base64Encode=function(a){for(var c="",b=0,d=a.length,e,k,l;b<d;){e=a.charCodeAt(b++)&255;if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4);c+="==";break}k=a.charCodeAt(b++);if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>
2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4|(k&240)>>4);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((k&15)<<2);c+="=";break}l=a.charCodeAt(b++);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4|(k&240)>>4);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((k&15)<<2|(l&192)>>6);
c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(l&63)}return c};EditorUi.prototype.importFiles=function(a,b,d,e,h,k,l,m,t,r,z,v){b=null!=b?b:0;d=null!=d?d:0;e=null!=e?e:this.maxImageSize;r=null!=r?r:this.maxImageBytes;var c=null!=b&&null!=d,f=!0,g=!1;if(!mxClient.IS_CHROMEAPP&&null!=a)for(var p=z||this.resampleThreshold,n=0;n<a.length;n++)if("image/"==a[n].type.substring(0,6)&&a[n].size>p){g=!0;break}var q=mxUtils.bind(this,function(){var g=this.editor.graph,p=g.gridSize;
h=null!=h?h:mxUtils.bind(this,function(a,b,d,e,f,g,h,k,p){return null!=a&&"<mxlibrary"==a.substring(0,10)?(this.spinner.stop(),this.loadLibrary(new LocalLibrary(this,a,h)),null):this.importFile(a,b,d,e,f,g,h,k,p,c,v)});k=null!=k?k:mxUtils.bind(this,function(a){g.setSelectionCells(a)});if(this.spinner.spin(document.body,mxResources.get("loading")))for(var n=a.length,q=n,u=[],t=mxUtils.bind(this,function(a,c){u[a]=c;if(0==--q){this.spinner.stop();if(null!=m)m(u);else{var b=[];g.getModel().beginUpdate();
-try{for(var d=0;d<u.length;d++){var e=u[d]();null!=e&&(b=b.concat(e))}}finally{g.getModel().endUpdate()}}k(b)}}),y=0;y<n;y++)mxUtils.bind(this,function(c){var g=a[c],k=new FileReader;k.onload=mxUtils.bind(this,function(a){if(null==l||l(g))if("image/"==g.type.substring(0,6))if("image/svg"==g.type.substring(0,9)){var k=a.target.result,n=k.indexOf(","),m=atob(k.substring(n+1)),q=mxUtils.parseXml(m),m=q.getElementsByTagName("svg");if(0<m.length){var m=m[0],u=v?null:m.getAttribute("content");null!=u&&
-"<"!=u.charAt(0)&&"%"!=u.charAt(0)&&(u=unescape(window.atob?atob(u):Base64.decode(u,!0)));null!=u&&"%"==u.charAt(0)&&(u=decodeURIComponent(u));null==u||"<mxfile "!==u.substring(0,8)&&"<mxGraphModel "!==u.substring(0,14)?t(c,mxUtils.bind(this,function(){try{if(k.substring(0,n+1),null!=q){var a=q.getElementsByTagName("svg");if(0<a.length){var f=a[0],l=parseFloat(f.getAttribute("width")),m=parseFloat(f.getAttribute("height")),r=f.getAttribute("viewBox");if(null==r||0==r.length)f.setAttribute("viewBox",
-"0 0 "+l+" "+m);else if(isNaN(l)||isNaN(m)){var u=r.split(" ");3<u.length&&(l=parseFloat(u[2]),m=parseFloat(u[3]))}k=this.createSvgDataUri(mxUtils.getXml(a[0]));var t=Math.min(1,Math.min(e/Math.max(1,l)),e/Math.max(1,m));return h(k,g.type,b+c*p,d+c*p,Math.max(1,Math.round(l*t)),Math.max(1,Math.round(m*t)),g.name)}}}catch(ba){}return null})):t(c,mxUtils.bind(this,function(){return h(u,"text/xml",b+c*p,d+c*p,0,0,g.name)}))}}else{m=!1;if("image/png"==g.type){var y=v?null:this.extractGraphModelFromPng(a.target.result);
-if(null!=y&&0<y.length){var x=new Image;x.src=a.target.result;t(c,mxUtils.bind(this,function(){return h(y,"text/xml",b+c*p,d+c*p,x.width,x.height,g.name)}));m=!0}}m||(mxClient.IS_CHROMEAPP?(this.spinner.stop(),this.showError(mxResources.get("error"),mxResources.get("dragAndDropNotSupported"),mxResources.get("cancel"),mxUtils.bind(this,function(){}),null,mxResources.get("ok"),mxUtils.bind(this,function(){this.actions.get("import").funct()}))):this.loadImage(a.target.result,mxUtils.bind(this,function(k){this.resizeImage(k,
-a.target.result,mxUtils.bind(this,function(k,l,m){t(c,mxUtils.bind(this,function(){if(null!=k&&k.length<r){var n=f&&this.isResampleImage(a.target.result,z)?Math.min(1,Math.min(e/l,e/m)):1;return h(k,g.type,b+c*p,d+c*p,Math.round(l*n),Math.round(m*n),g.name)}this.handleError({message:mxResources.get("imageTooBig")});return null}))}),f,e,z)})))}else h(a.target.result,g.type,b+c*p,d+c*p,240,160,g.name,function(a){t(c,function(){return a})})});/(\.vsdx)($|\?)/i.test(g.name)||/(\.vssx)($|\?)/i.test(g.name)?
+try{for(var d=0;d<u.length;d++){var e=u[d]();null!=e&&(b=b.concat(e))}}finally{g.getModel().endUpdate()}}k(b)}}),y=0;y<n;y++)mxUtils.bind(this,function(c){var g=a[c],k=new FileReader;k.onload=mxUtils.bind(this,function(a){if(null==l||l(g))if("image/"==g.type.substring(0,6))if("image/svg"==g.type.substring(0,9)){var k=a.target.result,m=k.indexOf(","),n=atob(k.substring(m+1)),q=mxUtils.parseXml(n),n=q.getElementsByTagName("svg");if(0<n.length){var n=n[0],u=v?null:n.getAttribute("content");null!=u&&
+"<"!=u.charAt(0)&&"%"!=u.charAt(0)&&(u=unescape(window.atob?atob(u):Base64.decode(u,!0)));null!=u&&"%"==u.charAt(0)&&(u=decodeURIComponent(u));null==u||"<mxfile "!==u.substring(0,8)&&"<mxGraphModel "!==u.substring(0,14)?t(c,mxUtils.bind(this,function(){try{if(k.substring(0,m+1),null!=q){var a=q.getElementsByTagName("svg");if(0<a.length){var f=a[0],l=parseFloat(f.getAttribute("width")),n=parseFloat(f.getAttribute("height")),r=f.getAttribute("viewBox");if(null==r||0==r.length)f.setAttribute("viewBox",
+"0 0 "+l+" "+n);else if(isNaN(l)||isNaN(n)){var u=r.split(" ");3<u.length&&(l=parseFloat(u[2]),n=parseFloat(u[3]))}k=this.createSvgDataUri(mxUtils.getXml(a[0]));var t=Math.min(1,Math.min(e/Math.max(1,l)),e/Math.max(1,n));return h(k,g.type,b+c*p,d+c*p,Math.max(1,Math.round(l*t)),Math.max(1,Math.round(n*t)),g.name)}}}catch(ba){}return null})):t(c,mxUtils.bind(this,function(){return h(u,"text/xml",b+c*p,d+c*p,0,0,g.name)}))}}else{n=!1;if("image/png"==g.type){var y=v?null:this.extractGraphModelFromPng(a.target.result);
+if(null!=y&&0<y.length){var x=new Image;x.src=a.target.result;t(c,mxUtils.bind(this,function(){return h(y,"text/xml",b+c*p,d+c*p,x.width,x.height,g.name)}));n=!0}}n||(mxClient.IS_CHROMEAPP?(this.spinner.stop(),this.showError(mxResources.get("error"),mxResources.get("dragAndDropNotSupported"),mxResources.get("cancel"),mxUtils.bind(this,function(){}),null,mxResources.get("ok"),mxUtils.bind(this,function(){this.actions.get("import").funct()}))):this.loadImage(a.target.result,mxUtils.bind(this,function(k){this.resizeImage(k,
+a.target.result,mxUtils.bind(this,function(k,l,n){t(c,mxUtils.bind(this,function(){if(null!=k&&k.length<r){var m=f&&this.isResampleImage(a.target.result,z)?Math.min(1,Math.min(e/l,e/n)):1;return h(k,g.type,b+c*p,d+c*p,Math.round(l*m),Math.round(n*m),g.name)}this.handleError({message:mxResources.get("imageTooBig")});return null}))}),f,e,z)})))}else h(a.target.result,g.type,b+c*p,d+c*p,240,160,g.name,function(a){t(c,function(){return a})})});/(\.vsdx)($|\?)/i.test(g.name)||/(\.vssx)($|\?)/i.test(g.name)?
h(null,g.type,b+c*p,d+c*p,240,160,g.name,function(a){t(c,function(){return a})},g):"image"==g.type.substring(0,5)?k.readAsDataURL(g):k.readAsText(g)})(y)});g?this.confirmImageResize(function(a){f=a;q()},t):q()};EditorUi.prototype.confirmImageResize=function(a,b){b=null!=b?b:!1;var c=null!=this.spinner&&null!=this.spinner.pause?this.spinner.pause():function(){},d=function(b,d){mxSettings.setResizeImages(b?d:null);mxSettings.save();c();a(d)},e=isLocalStorage||mxClient.IS_CHROMEAPP?mxSettings.getResizeImages():
null;null==e||b?this.showDialog((new ConfirmDialog(this,mxResources.get("resizeLargeImages"),function(a){d(a,!0)},function(a){d(a,!1)},mxResources.get("resize"),mxResources.get("actualSize"),'<img style="margin-top:8px;" src="'+Editor.loResImage+'"/>','<img style="margin-top:8px;" src="'+Editor.hiResImage+'"/>',isLocalStorage||mxClient.IS_CHROMEAPP)).container,340,isLocalStorage||mxClient.IS_CHROMEAPP?220:200,!0,!0):d(!1,e)};EditorUi.prototype.parseFile=function(a,b,d){d=null!=d?d:a.name;var c=new FormData;
c.append("format","xml");c.append("upfile",a,d);var e=new XMLHttpRequest;e.open("POST",OPEN_URL);e.onreadystatechange=function(){b(e)};e.send(c)};EditorUi.prototype.isResampleImage=function(a,b){b=null!=b?b:this.resampleThreshold;return a.length>b};EditorUi.prototype.resizeImage=function(a,b,d,e,h,k){h=null!=h?h:this.maxImageSize;var c=Math.max(1,a.width),f=Math.max(1,a.height);if(e&&this.isResampleImage(b,k))try{var g=Math.max(c/h,f/h);if(1<g){var l=Math.round(c/g),p=Math.round(f/g),m=document.createElement("canvas");