7.0.0 release

This commit is contained in:
David Benson 2017-08-03 16:55:52 +01:00
parent ce38ab70a9
commit af7bdab90a
16 changed files with 1446 additions and 1234 deletions

View file

@ -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

View file

@ -1 +1 @@
6.9.9
7.0.0

View file

@ -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(";");

View file

@ -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;
}
}

View file

@ -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
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

View file

@ -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()

View file

@ -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

84
war/js/app.min.js vendored
View file

@ -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){}})();

View file

@ -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");

211
war/js/atlas.min.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

View file

@ -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,

View file

@ -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())))}})();

View file

@ -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();

32
war/js/reader.min.js vendored
View file

@ -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,

44
war/js/viewer.min.js vendored
View file

@ -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");