1function mxBpmnShape(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxBpmnShape,mxShape);
2mxBpmnShape.prototype.customProperties=[{name:"symbol",dispName:"Event",type:"enum",defVal:"general",enumList:[{val:"general",dispName:"General"},{val:"message",dispName:"Message"},{val:"timer",dispName:"Timer"},{val:"escalation",dispName:"Escalation"},{val:"conditional",dispName:"Conditional"},{val:"link",dispName:"Link"},{val:"error",dispName:"Error"},{val:"cancel",dispName:"Cancel"},{val:"compensation",dispName:"Compensation"},{val:"signal",dispName:"Signal"},{val:"multiple",dispName:"Multiple"},
3{val:"parallelMultiple",dispName:"Parallel Multiple"},{val:"terminate",dispName:"Terminate"},{val:"exclusiveGw",dispName:"Exclusive Gw"},{val:"parallelGw",dispName:"Parallel Gw"},{val:"complexGw",dispName:"Complex Gw"}]},{name:"outline",dispName:"Event Type",type:"enum",defVal:"standard",enumList:[{val:"standard",dispName:"Standard"},{val:"eventInt",dispName:"Interrupting"},{val:"eventNonint",dispName:"Non-Interrupting"},{val:"catching",dispName:"Catching"},{val:"boundInt",dispName:"Bound Interrupting"},
4{val:"boundNonint",dispName:"Bound Non-Interrupting"},{val:"throwing",dispName:"Throwing"},{val:"end",dispName:"End"},{val:"none",dispName:"None"}]},{name:"background",dispName:"Background",type:"enum",defVal:"none",enumList:[{val:"gateway",dispName:"Gateway"},{val:"none",dispName:"None"}]}];
5mxBpmnShape.prototype.eventTypeEnum={START_STANDARD:"standard",EVENT_SP_INT:"eventInt",EVENT_SP_NONINT:"eventNonint",CATCHING:"catching",BOUND_INT:"boundInt",BOUND_NONINT:"boundNonint",THROWING:"throwing",END:"end",NONE:"none",GATEWAY:"gateway"};
6mxBpmnShape.prototype.eventEnum={GENERAL:"general",MESSAGE:"message",TIMER:"timer",ESCALATION:"escalation",CONDITIONAL:"conditional",LINK:"link",ERROR:"error",CANCEL:"cancel",COMPENSATION:"compensation",SIGNAL:"signal",MULTIPLE:"multiple",PAR_MULTI:"parallelMultiple",TERMINATE:"terminate",GW_EXCLUSIVE:"exclusiveGw",GW_PARALLEL:"parallelGw",GW_COMPLEX:"complexGw"};mxBpmnShape.prototype.miscEnum={OUTLINE:"outline",BACKGROUND:"background",SYMBOL:"symbol",GATEWAY:"gateway"};
7mxBpmnShape.prototype.paintVertexShape=function(a,d,e,b,c){this.redrawPath(a,d,e,b,c,mxBpmnShape.prototype.miscEnum.BACKGROUND);mxUtils.getValue(this.style,mxBpmnShape.prototype.miscEnum.BACKGROUND,mxBpmnShape.prototype.eventTypeEnum.NONE)===mxBpmnShape.prototype.eventTypeEnum.GATEWAY&&a.setShadow(!1);this.redrawPath(a,d,e,b,c,mxBpmnShape.prototype.miscEnum.OUTLINE);this.redrawPath(a,d,e,b,c,mxBpmnShape.prototype.miscEnum.SYMBOL)};
8mxBpmnShape.prototype.redrawPath=function(a,d,e,b,c,f){var g=mxUtils.getValue(this.style,mxBpmnShape.prototype.miscEnum.BACKGROUND,mxBpmnShape.prototype.eventTypeEnum.NONE);if(f==mxBpmnShape.prototype.miscEnum.BACKGROUND){if(null!=g){var h=this.backgrounds[g];null!=h&&(a.translate(d,e),h.call(this,a,d,e,b,c,f))}}else if(f==mxBpmnShape.prototype.miscEnum.OUTLINE){g===mxBpmnShape.prototype.eventTypeEnum.GATEWAY?(a.translate(b/4,c/4),c/=2,b/=2,this.constraints=[new mxConnectionConstraint(new mxPoint(.5,
90),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.75),!1),new mxConnectionConstraint(new mxPoint(.75,.25),!1),new mxConnectionConstraint(new mxPoint(.75,.75),!1)]):this.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,
10.5),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(.145,.145),!1),new mxConnectionConstraint(new mxPoint(.145,.855),!1),new mxConnectionConstraint(new mxPoint(.855,.145),!1),new mxConnectionConstraint(new mxPoint(.855,.855),!1)];var k=mxUtils.getValue(this.style,mxBpmnShape.prototype.miscEnum.OUTLINE,mxBpmnShape.prototype.eventTypeEnum.NONE);null!=k&&(h=this.outlines[k],null!=h&&h.call(this,a,d,e,b,c,g===mxBpmnShape.prototype.eventTypeEnum.GATEWAY))}else if(f==
11mxBpmnShape.prototype.miscEnum.SYMBOL&&(g===mxBpmnShape.prototype.eventTypeEnum.GATEWAY&&(c/=2,b/=2),g=mxUtils.getValue(this.style,mxBpmnShape.prototype.miscEnum.SYMBOL,null),null!=g&&(h=this.symbols[g],null!=h))){var l=a.state.strokeColor,m=a.state.fillColor,k=mxUtils.getValue(this.style,mxBpmnShape.prototype.miscEnum.OUTLINE,mxBpmnShape.prototype.eventTypeEnum.NONE);g===mxBpmnShape.prototype.eventEnum.MESSAGE?(a.translate(.15*b,.3*c),b*=.7,c*=.4):g===mxBpmnShape.prototype.eventEnum.TIMER?(a.translate(.11*
12b,.11*c),b*=.78,c*=.78):g===mxBpmnShape.prototype.eventEnum.ESCALATION?(a.translate(.19*b,.15*c),b*=.62,c*=.57):g===mxBpmnShape.prototype.eventEnum.CONDITIONAL?(a.translate(.3*b,.16*c),b*=.4,c*=.68):g===mxBpmnShape.prototype.eventEnum.LINK?(a.translate(.27*b,.33*c),b*=.46,c*=.34):g===mxBpmnShape.prototype.eventEnum.ERROR?(a.translate(.212*b,.243*c),b*=.58,c*=.507):g===mxBpmnShape.prototype.eventEnum.CANCEL?(a.translate(.22*b,.22*c),b*=.56,c*=.56):g===mxBpmnShape.prototype.eventEnum.COMPENSATION?(a.translate(.28*
13b,.35*c),b*=.44,c*=.3):g===mxBpmnShape.prototype.eventEnum.SIGNAL?(a.translate(.19*b,.15*c),b*=.62,c*=.57):g===mxBpmnShape.prototype.eventEnum.MULTIPLE?(a.translate(.2*b,.19*c),b*=.6,c*=.565):g===mxBpmnShape.prototype.eventEnum.PAR_MULTI?(a.translate(.2*b,.2*c),b*=.6,c*=.6):g===mxBpmnShape.prototype.eventEnum.TERMINATE?(a.translate(.05*b,.05*c),b*=.9,c*=.9):g===mxBpmnShape.prototype.eventEnum.GW_EXCLUSIVE&&(a.translate(.12*b,0),b*=.76);var n=!1;if("star"===g)a.setFillColor(l);else if(k===mxBpmnShape.prototype.eventTypeEnum.THROWING||
14k===mxBpmnShape.prototype.eventTypeEnum.END)a.setStrokeColor(m),a.setFillColor(l),n=!0;h.call(this,a,d,e,b,c,f,n);if("star"===g)a.setFillColor(m);else if(k===mxBpmnShape.prototype.eventTypeEnum.THROWING||k===mxBpmnShape.prototype.eventTypeEnum.END)a.setStrokeColor(l),a.setFillColor(m)}};mxBpmnShape.prototype.backgrounds={none:function(a,d,e,b,c){},gateway:function(a,d,e,b,c){a.begin();a.moveTo(b/2,0);a.lineTo(b,c/2);a.lineTo(b/2,c);a.lineTo(0,c/2);a.close();a.fillAndStroke()}};
15mxBpmnShape.prototype.outlines={none:function(a,d,e,b,c,f){f||a.setShadow(!1)},standard:function(a,d,e,b,c,f){a.ellipse(0,0,b,c);a.fillAndStroke();f||a.setShadow(!1)},eventInt:function(a,d,e,b,c,f){a.ellipse(0,0,b,c);a.fillAndStroke();f||a.setShadow(!1)},eventNonint:function(a,d,e,b,c,f){d=a.state.dashed;a.setDashed(!0);a.ellipse(0,0,b,c);a.fillAndStroke();a.setDashed(d);f||a.setShadow(!1)},catching:function(a,d,e,b,c,f){a.ellipse(0,0,b,c);a.fillAndStroke();f||a.setShadow(!1);a.ellipse(2,2,b-4,c-
164);a.stroke()},boundInt:function(a,d,e,b,c,f){a.ellipse(0,0,b,c);a.fillAndStroke();f||a.setShadow(!1);a.ellipse(2,2,b-4,c-4);a.stroke()},boundNonint:function(a,d,e,b,c,f){d=a.state.dashed;a.setDashed(!0);a.ellipse(0,0,b,c);a.fillAndStroke();f||a.setShadow(!1);a.ellipse(2,2,b-4,c-4);a.stroke();a.setDashed(d)},throwing:function(a,d,e,b,c,f){a.ellipse(0,0,b,c);a.fillAndStroke();f||a.setShadow(!1);a.ellipse(.02*b+2,.02*c+2,.96*b-4,.96*c-4);a.stroke()},end:function(a,d,e,b,c,f){d=a.state.strokeWidth;a.setStrokeWidth(3*
17d);a.ellipse(0,0,b,c);a.fillAndStroke();a.setStrokeWidth(d);f||a.setShadow(!1)}};
18mxBpmnShape.prototype.symbols={general:function(a,d,e,b,c){},message:function(a,d,e,b,c,f,g){a.rect(0,0,b,c);a.fillAndStroke();"none"===mxUtils.getValue(this.style,"fillColor","none")&&g&&a.setStrokeColor("#ffffff");a.begin();a.moveTo(0,0);a.lineTo(.5*b,.5*c);a.lineTo(b,0);a.stroke()},timer:function(a,d,e,b,c){a.ellipse(0,0,b,c);a.fillAndStroke();a.begin();a.moveTo(.5*b,0);a.lineTo(.5*b,.0642*c);a.moveTo(.7484*b,.0654*c);a.lineTo(.7126*b,.1281*c);a.moveTo(.93*b,.2471*c);a.lineTo(.8673*b,.2854*c);
19a.moveTo(b,.5*c);a.lineTo(.9338*b,.5*c);a.moveTo(.93*b,.7509*c);a.lineTo(.8673*b,.7126*c);a.moveTo(.7484*b,.9326*c);a.lineTo(.7126*b,.8699*c);a.moveTo(.5*b,.9338*c);a.lineTo(.5*b,c);a.moveTo(.2496*b,.9325*c);a.lineTo(.2854*b,.8699*c);a.moveTo(.068*b,.7509*c);a.lineTo(.1307*b,.7126*c);a.moveTo(0,.5*c);a.lineTo(.0642*b,.5*c);a.moveTo(.068*b,.2471*c);a.lineTo(.1307*b,.2854*c);a.moveTo(.2496*b,.0654*c);a.lineTo(.2854*b,.1281*c);a.moveTo(.5246*b,.0706*c);a.lineTo(.5*b,.5*c);a.lineTo(.7804*b,.5118*c);a.stroke()},
20escalation:function(a,d,e,b,c){a.begin();a.moveTo(0,c);a.lineTo(.5*b,0);a.lineTo(b,c);a.lineTo(.5*b,.5*c);a.close();a.fillAndStroke()},conditional:function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke();a.begin();a.moveTo(0,.1027*c);a.lineTo(.798*b,.1027*c);a.moveTo(0,.3669*c);a.lineTo(.798*b,.3669*c);a.moveTo(0,.6311*c);a.lineTo(.798*b,.6311*c);a.moveTo(0,.8953*c);a.lineTo(.798*b,.8953*c);a.stroke()},link:function(a,d,e,b,c){a.begin();a.moveTo(0,.76*c);a.lineTo(0,.24*c);a.lineTo(.63*b,.24*c);a.lineTo(.63*
21b,0);a.lineTo(b,.5*c);a.lineTo(.63*b,c);a.lineTo(.63*b,.76*c);a.close();a.fillAndStroke()},error:function(a,d,e,b,c,f,g){a.begin();a.moveTo(0,c);a.lineTo(.3287*b,.123*c);a.lineTo(.6194*b,.6342*c);a.lineTo(b,0);a.lineTo(.6625*b,.939*c);a.lineTo(.3717*b,.5064*c);a.close();g?a.fill():a.fillAndStroke()},cancel:function(a,d,e,b,c){a.begin();a.moveTo(.1051*b,0);a.lineTo(.5*b,.3738*c);a.lineTo(.8909*b,0);a.lineTo(b,.1054*c);a.lineTo(.623*b,.5*c);a.lineTo(b,.8926*c);a.lineTo(.8909*b,c);a.lineTo(.5*b,.6242*
22c);a.lineTo(.1051*b,c);a.lineTo(0,.8926*c);a.lineTo(.373*b,.5*c);a.lineTo(0,.1054*c);a.close();a.fillAndStroke()},compensation:function(a,d,e,b,c){a.begin();a.moveTo(0,.5*c);a.lineTo(.5*b,0);a.lineTo(.5*b,c);a.close();a.moveTo(.5*b,.5*c);a.lineTo(b,0);a.lineTo(b,c);a.close();a.fillAndStroke()},signal:function(a,d,e,b,c){a.begin();a.moveTo(0,c);a.lineTo(.5*b,0);a.lineTo(b,c);a.close();a.fillAndStroke()},multiple:function(a,d,e,b,c){a.begin();a.moveTo(0,.39*c);a.lineTo(.5*b,0);a.lineTo(b,.39*c);a.lineTo(.815*
23b,c);a.lineTo(.185*b,c);a.close();a.fillAndStroke()},parallelMultiple:function(a,d,e,b,c){a.begin();a.moveTo(.38*b,0);a.lineTo(.62*b,0);a.lineTo(.62*b,.38*c);a.lineTo(b,.38*c);a.lineTo(b,.62*c);a.lineTo(.62*b,.62*c);a.lineTo(.62*b,c);a.lineTo(.38*b,c);a.lineTo(.38*b,.62*c);a.lineTo(0,.62*c);a.lineTo(0,.38*c);a.lineTo(.38*b,.38*c);a.close();a.fillAndStroke()},terminate:function(a,d,e,b,c){a.ellipse(0,0,b,c);a.fillAndStroke()},exclusiveGw:function(a,d,e,b,c){d=a.state.strokeColor;e=a.state.fillColor;
24a.setStrokeColor(e);a.setFillColor(d);a.begin();a.moveTo(.105*b,0);a.lineTo(.5*b,.38*c);a.lineTo(.895*b,0*c);a.lineTo(b,.11*c);a.lineTo(.6172*b,.5*c);a.lineTo(b,.89*c);a.lineTo(.895*b,c);a.lineTo(.5*b,.62*c);a.lineTo(.105*b,c);a.lineTo(0,.89*c);a.lineTo(.3808*b,.5*c);a.lineTo(0,.11*c);a.close();a.fillAndStroke();a.setStrokeColor(d);a.setFillColor(e)},parallelGw:function(a,d,e,b,c){d=a.state.strokeColor;e=a.state.fillColor;a.setStrokeColor(e);a.setFillColor(d);a.begin();a.moveTo(.38*b,0);a.lineTo(.62*
25b,0);a.lineTo(.62*b,.38*c);a.lineTo(b,.38*c);a.lineTo(b,.62*c);a.lineTo(.62*b,.62*c);a.lineTo(.62*b,c);a.lineTo(.38*b,c);a.lineTo(.38*b,.62*c);a.lineTo(0,.62*c);a.lineTo(0,.38*c);a.lineTo(.38*b,.38*c);a.close();a.fillAndStroke();a.setStrokeColor(d);a.setFillColor(e)},complexGw:function(a,d,e,b,c){d=a.state.strokeColor;e=a.state.fillColor;a.setStrokeColor(e);a.setFillColor(d);a.begin();a.moveTo(0,.44*c);a.lineTo(.36*b,.44*c);a.lineTo(.1*b,.18*c);a.lineTo(.18*b,.1*c);a.lineTo(.44*b,.36*c);a.lineTo(.44*
26b,0);a.lineTo(.56*b,0);a.lineTo(.56*b,.36*c);a.lineTo(.82*b,.1*c);a.lineTo(.9*b,.18*c);a.lineTo(.64*b,.44*c);a.lineTo(b,.44*c);a.lineTo(b,.56*c);a.lineTo(.64*b,.56*c);a.lineTo(.9*b,.82*c);a.lineTo(.82*b,.9*c);a.lineTo(.56*b,.64*c);a.lineTo(.56*b,c);a.lineTo(.44*b,c);a.lineTo(.44*b,.64*c);a.lineTo(.18*b,.9*c);a.lineTo(.1*b,.82*c);a.lineTo(.36*b,.56*c);a.lineTo(0,.56*c);a.close();a.fillAndStroke();a.setStrokeColor(d);a.setFillColor(e)},star:function(a,d,e,b,c){a.translate(b/5,c/6);c*=2/3;b*=.6;a.begin();
27a.moveTo(0,c/4);a.lineTo(b/3,c/4);a.lineTo(b/2,0);a.lineTo(2*b/3,c/4);a.lineTo(b,c/4);a.lineTo(5*b/6,c/2);a.lineTo(b,3*c/4);a.lineTo(2*b/3,3*c/4);a.lineTo(b/2,c);a.lineTo(b/3,3*c/4);a.lineTo(0,3*c/4);a.lineTo(b/6,c/2);a.close();a.fillAndStroke()}};mxCellRenderer.registerShape("mxgraph.bpmn.shape",mxBpmnShape);function mxShapeBpmn2SendMarker(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.notch=0}
28mxUtils.extend(mxShapeBpmn2SendMarker,mxActor);mxShapeBpmn2SendMarker.prototype.cst={SEND:"mxgraph.bpmn.sendMarker"};mxShapeBpmn2SendMarker.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(0,0);a.lineTo(.5*b,.5*c);a.lineTo(b,0);a.stroke()};mxCellRenderer.registerShape(mxShapeBpmn2SendMarker.prototype.cst.SEND,mxShapeBpmn2SendMarker);
29function mxShapeBpmnEvent(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBpmnEvent,mxShape);mxShapeBpmnEvent.prototype.eventTypeEnum={START_STANDARD:"standard",EVENT_SP_INT:"eventInt",EVENT_SP_NONINT:"eventNonint",CATCHING:"catching",BOUND_INT:"boundInt",BOUND_NONINT:"boundNonint",THROWING:"throwing",END:"end",NONE:"none"};
30mxShapeBpmnEvent.prototype.eventEnum={GENERAL:"general",MESSAGE:"message",TIMER:"timer",ESCALATION:"escalation",CONDITIONAL:"conditional",LINK:"link",ERROR:"error",CANCEL:"cancel",COMPENSATION:"compensation",SIGNAL:"signal",MULTIPLE:"multiple",PAR_MULTI:"parallelMultiple",TERMINATE:"terminate"};mxShapeBpmnEvent.prototype.miscEnum={OUTLINE:"outline",SYMBOL:"symbol"};
31mxShapeBpmnEvent.prototype.customProperties=[{name:mxShapeBpmnEvent.prototype.miscEnum.SYMBOL,dispName:"Event",type:"enum",defVal:mxShapeBpmnEvent.prototype.eventEnum.GENERAL,enumList:[{val:mxShapeBpmnEvent.prototype.eventEnum.GENERAL,dispName:"General"},{val:mxShapeBpmnEvent.prototype.eventEnum.MESSAGE,dispName:"Message"},{val:mxShapeBpmnEvent.prototype.eventEnum.TIMER,dispName:"Timer"},{val:mxShapeBpmnEvent.prototype.eventEnum.ESCALATION,dispName:"Escalation"},{val:mxShapeBpmnEvent.prototype.eventEnum.CONDITIONAL,
32dispName:"Conditional"},{val:mxShapeBpmnEvent.prototype.eventEnum.LINK,dispName:"Link"},{val:mxShapeBpmnEvent.prototype.eventEnum.ERROR,dispName:"Error"},{val:mxShapeBpmnEvent.prototype.eventEnum.CANCEL,dispName:"Cancel"},{val:mxShapeBpmnEvent.prototype.eventEnum.COMPENSATION,dispName:"Compensation"},{val:mxShapeBpmnEvent.prototype.eventEnum.SIGNAL,dispName:"Signal"},{val:mxShapeBpmnEvent.prototype.eventEnum.MULTIPLE,dispName:"Multiple"},{val:mxShapeBpmnEvent.prototype.eventEnum.PAR_MULTI,dispName:"Parallel Multiple"},
33{val:mxShapeBpmnEvent.prototype.eventEnum.TERMINATE,dispName:"Terminate"}]},{name:mxShapeBpmnEvent.prototype.miscEnum.OUTLINE,dispName:"Event Type",type:"enum",defVal:mxShapeBpmnEvent.prototype.eventTypeEnum.START_STANDARD,enumList:[{val:mxShapeBpmnEvent.prototype.eventTypeEnum.START_STANDARD,dispName:"Standard"},{val:mxShapeBpmnEvent.prototype.eventTypeEnum.EVENT_SP_INT,dispName:"Interrupting"},{val:mxShapeBpmnEvent.prototype.eventTypeEnum.EVENT_SP_NONINT,dispName:"Non-Interrupting"},{val:mxShapeBpmnEvent.prototype.eventTypeEnum.CATCHING,
34dispName:"Catching"},{val:mxShapeBpmnEvent.prototype.eventTypeEnum.BOUND_INT,dispName:"Bound Interrupting"},{val:mxShapeBpmnEvent.prototype.eventTypeEnum.BOUND_NONINT,dispName:"Bound Non-Interrupting"},{val:mxShapeBpmnEvent.prototype.eventTypeEnum.THROWING,dispName:"Throwing"},{val:mxShapeBpmnEvent.prototype.eventTypeEnum.END,dispName:"End"},{val:mxShapeBpmnEvent.prototype.eventTypeEnum.NONE,dispName:"None"}]}];
35mxShapeBpmnEvent.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.strictDrawShape(a,0,0,b,c,null)};
36mxShapeBpmnEvent.prototype.strictDrawShape=function(a,d,e,b,c,f,g){null==f&&(f=mxUtils.getValue(this.style,this.miscEnum.OUTLINE,this.eventTypeEnum.NONE));if(null!=f){var h=mxShapeBpmnEvent.prototype.outlines[f];null!=h&&(a.translate(d,e),h.call(this,a,d,e,b,c))}null==g&&(g=mxUtils.getValue(this.style,this.miscEnum.SYMBOL,null));if(null!=g&&(h=mxShapeBpmnEvent.prototype.symbols[g],null!=h)){var k=a.state.strokeColor,l=a.state.fillColor;g===this.eventEnum.MESSAGE?(a.translate(.15*b,.3*c),b*=.7,c*=
37.4):g===this.eventEnum.TIMER?(a.translate(.11*b,.11*c),b*=.78,c*=.78):g===this.eventEnum.ESCALATION?(a.translate(.19*b,.15*c),b*=.62,c*=.57):g===this.eventEnum.CONDITIONAL?(a.translate(.3*b,.16*c),b*=.4,c*=.68):g===this.eventEnum.LINK?(a.translate(.27*b,.33*c),b*=.46,c*=.34):g===this.eventEnum.ERROR?(a.translate(.212*b,.243*c),b*=.58,c*=.507):g===this.eventEnum.CANCEL?(a.translate(.22*b,.22*c),b*=.56,c*=.56):g===this.eventEnum.COMPENSATION?(a.translate(.28*b,.35*c),b*=.44,c*=.3):g===this.eventEnum.SIGNAL?
38(a.translate(.19*b,.15*c),b*=.62,c*=.57):g===this.eventEnum.MULTIPLE?(a.translate(.2*b,.19*c),b*=.6,c*=.565):g===this.eventEnum.PAR_MULTI?(a.translate(.2*b,.2*c),b*=.6,c*=.6):g===this.eventEnum.TERMINATE?(a.translate(.05*b,.05*c),b*=.9,c*=.9):g===this.eventEnum.GW_EXCLUSIVE&&(a.translate(.12*b,0),b*=.76);var m=!1;if("star"===g)a.setFillColor(k);else if(f===this.eventTypeEnum.THROWING||f===this.eventTypeEnum.END)a.setStrokeColor(l),a.setFillColor(k),m=!0;h.call(this,a,d,e,b,c,m);if("star"===g)a.setFillColor(l);
39else if(f===this.eventTypeEnum.THROWING||f===this.eventTypeEnum.END)a.setStrokeColor(k),a.setFillColor(l)}};
40mxShapeBpmnEvent.prototype.outlines={none:function(a,d,e,b,c){a.setShadow(!1)},standard:function(a,d,e,b,c){a.ellipse(0,0,b,c);a.fillAndStroke();a.setShadow(!1)},eventInt:function(a,d,e,b,c){a.ellipse(0,0,b,c);a.fillAndStroke();a.setShadow(!1)},eventNonint:function(a,d,e,b,c){d=a.state.dashed;a.setDashed(!0);a.ellipse(0,0,b,c);a.fillAndStroke();a.setDashed(d);a.setShadow(!1)},catching:function(a,d,e,b,c){a.ellipse(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.ellipse(2,2,b-4,c-4);a.stroke()},boundInt:function(a,
41d,e,b,c){a.ellipse(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.ellipse(2,2,b-4,c-4);a.stroke()},boundNonint:function(a,d,e,b,c){d=a.state.dashed;a.setDashed(!0);a.ellipse(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.ellipse(2,2,b-4,c-4);a.stroke();a.setDashed(d)},throwing:function(a,d,e,b,c){a.ellipse(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.ellipse(.02*b+2,.02*c+2,.96*b-4,.96*c-4);a.stroke()},end:function(a,d,e,b,c){d=a.state.strokeWidth;a.setStrokeWidth(3*d);a.ellipse(0,0,b,c);a.fillAndStroke();
42a.setStrokeWidth(d);a.setShadow(!1)}};
43mxShapeBpmnEvent.prototype.symbols={general:function(a,d,e,b,c,f){},message:function(a,d,e,b,c,f){a.rect(0,0,b,c);a.fillAndStroke();"none"===mxUtils.getValue(this.style,"fillColor","none")&&f&&a.setStrokeColor("#ffffff");a.begin();a.moveTo(0,0);a.lineTo(.5*b,.5*c);a.lineTo(b,0);a.stroke()},timer:function(a,d,e,b,c,f){a.ellipse(0,0,b,c);a.fillAndStroke();a.begin();a.moveTo(.5*b,0);a.lineTo(.5*b,.0642*c);a.moveTo(.7484*b,.0654*c);a.lineTo(.7126*b,.1281*c);a.moveTo(.93*b,.2471*c);a.lineTo(.8673*b,.2854*
44c);a.moveTo(b,.5*c);a.lineTo(.9338*b,.5*c);a.moveTo(.93*b,.7509*c);a.lineTo(.8673*b,.7126*c);a.moveTo(.7484*b,.9326*c);a.lineTo(.7126*b,.8699*c);a.moveTo(.5*b,.9338*c);a.lineTo(.5*b,c);a.moveTo(.2496*b,.9325*c);a.lineTo(.2854*b,.8699*c);a.moveTo(.068*b,.7509*c);a.lineTo(.1307*b,.7126*c);a.moveTo(0,.5*c);a.lineTo(.0642*b,.5*c);a.moveTo(.068*b,.2471*c);a.lineTo(.1307*b,.2854*c);a.moveTo(.2496*b,.0654*c);a.lineTo(.2854*b,.1281*c);a.moveTo(.5246*b,.0706*c);a.lineTo(.5*b,.5*c);a.lineTo(.7804*b,.5118*c);
45a.stroke()},escalation:function(a,d,e,b,c,f){a.setMiterLimit(6);a.begin();a.moveTo(0,c);a.lineTo(.5*b,0);a.lineTo(b,c);a.lineTo(.5*b,.5*c);a.close();f?a.fill():a.fillAndStroke()},conditional:function(a,d,e,b,c,f){a.rect(0,0,b,c);a.fillAndStroke();a.begin();a.moveTo(0,.1027*c);a.lineTo(.798*b,.1027*c);a.moveTo(0,.3669*c);a.lineTo(.798*b,.3669*c);a.moveTo(0,.6311*c);a.lineTo(.798*b,.6311*c);a.moveTo(0,.8953*c);a.lineTo(.798*b,.8953*c);a.stroke()},link:function(a,d,e,b,c,f){a.begin();a.moveTo(0,.76*
46c);a.lineTo(0,.24*c);a.lineTo(.63*b,.24*c);a.lineTo(.63*b,0);a.lineTo(b,.5*c);a.lineTo(.63*b,c);a.lineTo(.63*b,.76*c);a.close();f?a.fill():a.fillAndStroke()},error:function(a,d,e,b,c,f){a.setMiterLimit(7);a.begin();a.moveTo(0,c);a.lineTo(.3287*b,.123*c);a.lineTo(.6194*b,.6342*c);a.lineTo(b,0);a.lineTo(.6625*b,.939*c);a.lineTo(.3717*b,.5064*c);a.close();f?a.fill():a.fillAndStroke()},cancel:function(a,d,e,b,c,f){a.begin();a.moveTo(.1051*b,0);a.lineTo(.5*b,.3738*c);a.lineTo(.8909*b,0);a.lineTo(b,.1054*
47c);a.lineTo(.623*b,.5*c);a.lineTo(b,.8926*c);a.lineTo(.8909*b,c);a.lineTo(.5*b,.6242*c);a.lineTo(.1051*b,c);a.lineTo(0,.8926*c);a.lineTo(.373*b,.5*c);a.lineTo(0,.1054*c);a.close();f?a.fill():a.fillAndStroke()},compensation:function(a,d,e,b,c,f){a.setMiterLimit(1);a.begin();a.moveTo(0,.5*c);a.lineTo(.5*b,0);a.lineTo(.5*b,c);a.close();a.moveTo(.5*b,.5*c);a.lineTo(b,0);a.lineTo(b,c);a.close();f?a.fill():a.fillAndStroke()},signal:function(a,d,e,b,c,f){a.begin();a.moveTo(0,c);a.lineTo(.5*b,0);a.lineTo(b,
48c);a.close();f?a.fill():a.fillAndStroke()},multiple:function(a,d,e,b,c,f){a.begin();a.moveTo(0,.39*c);a.lineTo(.5*b,0);a.lineTo(b,.39*c);a.lineTo(.815*b,c);a.lineTo(.185*b,c);a.close();f?a.fill():a.fillAndStroke()},parallelMultiple:function(a,d,e,b,c,f){a.begin();a.moveTo(.38*b,0);a.lineTo(.62*b,0);a.lineTo(.62*b,.38*c);a.lineTo(b,.38*c);a.lineTo(b,.62*c);a.lineTo(.62*b,.62*c);a.lineTo(.62*b,c);a.lineTo(.38*b,c);a.lineTo(.38*b,.62*c);a.lineTo(0,.62*c);a.lineTo(0,.38*c);a.lineTo(.38*b,.38*c);a.close();
49f?a.fill():a.fillAndStroke()},terminate:function(a,d,e,b,c,f){a.ellipse(0,0,b,c);a.fillAndStroke()},star:function(a,d,e,b,c,f){a.translate(b/5,c/6);c*=2/3;b*=.6;a.begin();a.moveTo(0,c/4);a.lineTo(b/3,c/4);a.lineTo(b/2,0);a.lineTo(2*b/3,c/4);a.lineTo(b,c/4);a.lineTo(5*b/6,c/2);a.lineTo(b,3*c/4);a.lineTo(2*b/3,3*c/4);a.lineTo(b/2,c);a.lineTo(b/3,3*c/4);a.lineTo(0,3*c/4);a.lineTo(b/6,c/2);a.close();a.fillAndStroke()}};mxCellRenderer.registerShape("mxgraph.bpmn.event",mxShapeBpmnEvent);
50function mxShapeBpmnGateway(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBpmnGateway,mxShape);mxShapeBpmnGateway.prototype.customProperties=mxShapeBpmnEvent.prototype.customProperties;mxShapeBpmnGateway.prototype.eventTypeEnum=mxShapeBpmnEvent.prototype.eventTypeEnum;mxShapeBpmnGateway.prototype.eventEnum=mxShapeBpmnEvent.prototype.eventEnum;mxShapeBpmnGateway.prototype.miscEnum=mxShapeBpmnEvent.prototype.miscEnum;
51mxShapeBpmnGateway.prototype.customProperties=mxShapeBpmnGateway.prototype.customProperties.concat({name:"gwType",dispName:"Gateway type",type:"enum",defVal:"event",enumList:[{val:"event",dispName:"Event-based"},{val:"exclusive",dispName:"Exclusive"},{val:"parallel",dispName:"Parallel"},{val:"complex",dispName:"Complex"}]});
52mxShapeBpmnGateway.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(.5*b,0);a.lineTo(b,.5*c);a.lineTo(.5*b,c);a.lineTo(0,.5*c);a.close();a.fillAndStroke();a.setShadow(!1);var f=.6*b,g=.6*c,h=mxUtils.getValue(this.style,"gwType","event"),k=mxUtils.getValue(this.style,"outline","none"),l=mxUtils.getValue(this.style,"symbol","standard");d=.5*b;e=.5*c;"event"===h&&null!==k&&"none"!==k?mxShapeBpmnEvent.prototype.strictDrawShape.call(this,a,.5*(b-f),.5*(c-g),f,g,k,l):"exclusive"==
53h?(a.translate(.31*b,.25*c),d*=.76,b=a.state.strokeColor,c=a.state.fillColor,a.setFillColor(b),a.begin(),a.moveTo(.105*d,0),a.lineTo(.5*d,.38*e),a.lineTo(.895*d,0*e),a.lineTo(d,.11*e),a.lineTo(.6172*d,.5*e),a.lineTo(d,.89*e),a.lineTo(.895*d,e),a.lineTo(.5*d,.62*e),a.lineTo(.105*d,e),a.lineTo(0,.89*e),a.lineTo(.3808*d,.5*e),a.lineTo(0,.11*e),a.close(),a.fillAndStroke(),a.setFillColor(c),a.translate(.12*-d,0)):"parallel"==h?(a.translate(.25*b,.25*c),b=a.state.strokeColor,c=a.state.fillColor,a.setFillColor(b),
54a.begin(),a.moveTo(.38*d,0),a.lineTo(.62*d,0),a.lineTo(.62*d,.38*e),a.lineTo(d,.38*e),a.lineTo(d,.62*e),a.lineTo(.62*d,.62*e),a.lineTo(.62*d,e),a.lineTo(.38*d,e),a.lineTo(.38*d,.62*e),a.lineTo(0,.62*e),a.lineTo(0,.38*e),a.lineTo(.38*d,.38*e),a.close(),a.fillAndStroke(),a.setFillColor(c)):"complex"==h&&(a.translate(.25*b,.25*c),b=a.state.strokeColor,c=a.state.fillColor,a.setFillColor(b),a.begin(),a.moveTo(0,.44*e),a.lineTo(.36*d,.44*e),a.lineTo(.1*d,.18*e),a.lineTo(.18*d,.1*e),a.lineTo(.44*d,.36*e),
55a.lineTo(.44*d,0),a.lineTo(.56*d,0),a.lineTo(.56*d,.36*e),a.lineTo(.82*d,.1*e),a.lineTo(.9*d,.18*e),a.lineTo(.64*d,.44*e),a.lineTo(d,.44*e),a.lineTo(d,.56*e),a.lineTo(.64*d,.56*e),a.lineTo(.9*d,.82*e),a.lineTo(.82*d,.9*e),a.lineTo(.56*d,.64*e),a.lineTo(.56*d,e),a.lineTo(.44*d,e),a.lineTo(.44*d,.64*e),a.lineTo(.18*d,.9*e),a.lineTo(.1*d,.82*e),a.lineTo(.36*d,.56*e),a.lineTo(0,.56*e),a.close(),a.fillAndStroke(),a.setFillColor(c))};mxCellRenderer.registerShape("mxgraph.bpmn.gateway2",mxShapeBpmnGateway);
56function mxShapeBpmn2Task(a,d,e,b){mxCellRenderer.prototype.getShape("mxgraph.basic.rect").call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.notch=0}mxUtils.extend(mxShapeBpmn2Task,mxCellRenderer.prototype.getShape("mxgraph.basic.rect"));
57mxShapeBpmn2Task.prototype.customProperties=[{name:"bpmnShapeType",dispName:"Type",defVal:"task",type:"enum",enumList:[{val:"task",dispName:"Task"},{val:"transaction",dispName:"Transaction"},{val:"call",dispName:"Call"},{val:"subprocess",dispName:"Sub-Process"}]},{name:"taskMarker",dispName:"Task Marker",defVal:"abstract",type:"enum",enumList:[{val:"abstract",dispName:"Abstract"},{val:"service",dispName:"Service"},{val:"send",dispName:"Send"},{val:"receive",dispName:"Receive"},{val:"user",dispName:"User"},
58{val:"nime",dispName:"Non-Interrupting Message Event"},{val:"manual",dispName:"Manual"},{val:"businessRule",dispName:"Business Rule"},{val:"script",dispName:"Script"}]},{name:"isLoopSub",dispName:"Subprocess",type:"bool"},{name:"isLoopStandard",dispName:"Standard Loop",type:"bool"},{name:"isLoopMultiParallel",dispName:"Multi-Instance Parallel Loop",type:"bool"},{name:"isLoopMultiSeq",dispName:"Multi-Instance Sequential Loop",type:"bool"},{name:"isLoopComp",dispName:"Compensation Loop",type:"bool"},
59{name:"isAdHoc",dispName:"Ad Hoc",type:"bool"}];mxShapeBpmn2Task.prototype.customProperties=mxShapeBpmn2Task.prototype.customProperties.concat(mxShapeBpmnEvent.prototype.customProperties);mxShapeBpmn2Task.prototype.customProperties=mxShapeBpmn2Task.prototype.customProperties.concat(mxCellRenderer.prototype.getShape("mxgraph.basic.rect").prototype.customProperties);mxShapeBpmn2Task.prototype.eventTypeEnum=mxShapeBpmnEvent.prototype.eventTypeEnum;mxShapeBpmn2Task.prototype.eventEnum=mxShapeBpmnEvent.prototype.eventEnum;
60mxShapeBpmn2Task.prototype.miscEnum=mxShapeBpmnEvent.prototype.miscEnum;mxShapeBpmn2Task.prototype.cst={TASK:"mxgraph.bpmn.task"};
61mxShapeBpmn2Task.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"bpmnShapeType","task"),g=mxUtils.getValue(this.style,"taskMarker","abstract"),h=mxUtils.getValue(this.style,"strokeWidth",1),k=mxUtils.getValue(this.style,"dashed",!1),l=mxUtils.getValue(this.style,"indent",3),m=14;mxUtils.getValue(this.style,"rectOutline","single");a.translate(d,e);d=mxCellRenderer.prototype.getShape("mxgraph.basic.rect");e={};"transaction"==f?(m+=l,e.rectOutline="double",e.indent=
623):"subprocess"==f?e.dashed=!0:"call"==f&&(e.strokeWidth=4);d.prototype.strictDrawShape.call(this,a,0,0,b,c,e);a.setStrokeWidth(h);a.setDashed(k);"call"==f&&a.setStrokeWidth(h);a.setDashed(!1);a.setShadow(!1);var h=mxUtils.getValue(this.style,"isLoopSub",!1),n=mxUtils.getValue(this.style,"isLoopStandard",!1),k=mxUtils.getValue(this.style,"isLoopMultiParallel",!1),l=mxUtils.getValue(this.style,"isLoopMultiSeq",!1);d=mxUtils.getValue(this.style,"isLoopComp",!1);e=mxUtils.getValue(this.style,"isAdHoc",
63!1);f=0;n&&f++;k&&f++;l&&f++;d&&f++;h&&f++;e&&f++;f*=-7;n&&(n=mxStencilRegistry.getStencil("mxgraph.bpmn.loop"),null!=n&&(n.drawShape(a,this,.5*b+f+1,c-m+1,12,12),f+=14));k&&(a.translate(.5*b+f+1,c-m+1),a.begin(),a.moveTo(2.4,0),a.lineTo(2.4,12),a.moveTo(6,0),a.lineTo(6,12),a.moveTo(9.6,0),a.lineTo(9.6,12),a.stroke(),a.translate(.5*-b-f-1,m-1-c),f+=14);l&&(a.translate(.5*b+f+1,c-m+1),a.begin(),a.moveTo(0,2.4),a.lineTo(12,2.4),a.moveTo(0,6),a.lineTo(12,6),a.moveTo(0,9.6),a.lineTo(12,9.6),a.stroke(),
64a.translate(.5*-b-f-1,m-1-c),f+=14);d&&(n=mxStencilRegistry.getStencil("mxgraph.bpmn.compensation"),null!=n&&(n.drawShape(a,this,.5*b+f,c-m+1,14,12),f+=14));h&&(a.translate(.5*b+f,c-m),a.rect(0,0,14,14),a.stroke(),a.begin(),a.moveTo(4,7),a.lineTo(10,7),a.moveTo(7,4),a.lineTo(7,10),a.stroke(),a.translate(.5*-b-f,m-c),f+=14);e&&(n=mxStencilRegistry.getStencil("mxgraph.bpmn.ad_hoc"),null!=n&&(h=mxUtils.getValue(this.style,"strokeColor","#000000"),k=mxUtils.getValue(this.style,"fillColor","#ffffff"),
65a.setStrokeColor("none"),a.setFillColor(h),n.drawShape(a,this,.5*b+f+1,c-m+4,12,6),a.setStrokeColor(h),a.setFillColor(k)));switch(g){case "service":n=mxStencilRegistry.getStencil("mxgraph.bpmn.service_task");null!=n&&n.drawShape(a,this,2,2,16,16);break;case "send":h=mxUtils.getValue(this.style,"strokeColor","#000000");k=mxUtils.getValue(this.style,"fillColor","#ffffff");a.setStrokeColor(k);a.setFillColor(h);mxShapeBpmn2SendMarker.prototype.paintVertexShape(a,4,4,18,13);break;case "receive":mxShapeBpmn2SendMarker.prototype.paintVertexShape(a,
664,4,18,13);break;case "user":n=mxStencilRegistry.getStencil("mxgraph.bpmn.user_task");null!=n&&n.drawShape(a,this,2,2,16,16);break;case "manual":n=mxStencilRegistry.getStencil("mxgraph.bpmn.manual_task");null!=n&&n.drawShape(a,this,3,3,18,14);break;case "businessRule":n=mxStencilRegistry.getStencil("mxgraph.bpmn.business_rule_task");null!=n&&n.drawShape(a,this,4,4,18,14);break;case "script":n=mxStencilRegistry.getStencil("mxgraph.bpmn.script_task"),null!=n&&n.drawShape(a,this,3,3,19,18)}b=mxUtils.getValue(this.style,
67"outline","none");c=mxUtils.getValue(this.style,"symbol","standard");mxShapeBpmnEvent.prototype.strictDrawShape.call(this,a,0,0,20,20,b,c)};mxCellRenderer.registerShape(mxShapeBpmn2Task.prototype.cst.TASK,mxShapeBpmn2Task);function mxShapeBpmn2Data(a,d,e,b){mxCellRenderer.prototype.getShape("note").call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.notch=0}mxUtils.extend(mxShapeBpmn2Data,mxCellRenderer.prototype.getShape("note"));
68mxShapeBpmn2Data.prototype.cst={DATA:"mxgraph.bpmn.data"};mxShapeBpmn2Data.prototype.customProperties=[{name:"bpmnTransferType",dispName:"Transfer Type",defVal:"none",type:"enum",enumList:[{val:"none",dispName:"None"},{val:"input",dispName:"Input"},{val:"output",dispName:"Output"}]},{name:"isCollection",dispName:"Collection",type:"bool"}];
69mxShapeBpmn2Data.prototype.paintVertexShape=function(a,d,e,b,c){mxCellRenderer.prototype.getShape("note").prototype.paintVertexShape.call(this,a,d,e,b,c);e=mxUtils.getValue(this.style,"bpmnTransferType","none");d=mxUtils.getValue(this.style,"isCollection",!1);a.setShadow(!1);if("input"===e||"output"===e)if(a.translate(3,3),a.begin(),a.moveTo(0,12*.3),a.lineTo(14*.55,12*.3),a.lineTo(14*.55,0),a.lineTo(14,6),a.lineTo(14*.55,12),a.lineTo(14*.55,12*.7),a.lineTo(0,12*.7),a.close(),a.translate(-3,-3),"input"===
70e)a.stroke();else{e=mxUtils.getValue(this.style,"fillColor","#ffffff");var f=mxUtils.getValue(this.style,"strokeColor","#000000");a.setFillColor(f);a.fillAndStroke();a.setFillColor(e)}d&&(a.translate(.5*b-6,c-12),a.begin(),a.moveTo(2.4,0),a.lineTo(2.4,12),a.moveTo(6,0),a.lineTo(6,12),a.moveTo(9.6,0),a.lineTo(9.6,12),a.stroke(),a.translate(.5*-b+6,-c+12))};mxCellRenderer.registerShape(mxShapeBpmn2Data.prototype.cst.DATA,mxShapeBpmn2Data);Graph.handleFactory[mxShapeBpmn2Data.prototype.cst.DATA]=Graph.handleFactory.note;
71function mxShapeBpmn2Swimlane(a,d,e,b){mxCellRenderer.prototype.getShape("note").call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.notch=0}mxUtils.extend(mxShapeBpmn2Swimlane,mxSwimlane);mxShapeBpmn2Swimlane.prototype.cst={SWIMLANE:"mxgraph.bpmn.swimlane"};mxShapeBpmn2Swimlane.prototype.customProperties=[{name:"isCollection",dispName:"Collection",type:"bool"}];
72mxShapeBpmn2Swimlane.prototype.paintVertexShape=function(a,d,e,b,c){mxSwimlane.prototype.paintVertexShape.call(this,a,d,e,b,c);d=mxUtils.getValue(this.style,"isCollection",!1);a.setShadow(!1);d&&(a.translate(.5*b-6,c-12),a.begin(),a.moveTo(2.4,0),a.lineTo(2.4,12),a.moveTo(6,0),a.lineTo(6,12),a.moveTo(9.6,0),a.lineTo(9.6,12),a.stroke(),a.translate(.5*-b+6,-c+12))};mxCellRenderer.registerShape(mxShapeBpmn2Swimlane.prototype.cst.SWIMLANE,mxShapeBpmn2Swimlane);
73Graph.handleFactory[mxShapeBpmn2Swimlane.prototype.cst.SWIMLANE]=Graph.handleFactory.swimlane;function mxShapeBpmn2Conversation(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBpmn2Conversation,mxHexagon);
74mxShapeBpmn2Conversation.prototype.customProperties=[{name:"bpmnConversationType",dispName:"Type",defVal:"conv",type:"enum",enumList:[{val:"conv",dispName:"Conversation"},{val:"call",dispName:"Call"}]},{name:"isLoopSub",dispName:"Subprocess",type:"bool"}];mxShapeBpmn2Conversation.prototype.cst={CONVERSATION:"mxgraph.bpmn.conversation"};
75mxShapeBpmn2Conversation.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"bpmnConversationType","conv"),g=mxUtils.getValue(this.style,"strokeWidth",1);"call"==f&&a.setStrokeWidth(4*g);a.translate(d,e);a.begin();a.moveTo(0,.5*c);a.lineTo(.25*b,0);a.lineTo(.75*b,0);a.lineTo(b,.5*c);a.lineTo(.75*b,c);a.lineTo(.25*b,c);a.close();a.fillAndStroke();"call"==f&&a.setStrokeWidth(g);mxUtils.getValue(this.style,"isLoopSub",!1)&&(a.translate(.5*b-7,c-14),a.rect(0,0,14,14),a.stroke(),
76a.begin(),a.moveTo(4,7),a.lineTo(10,7),a.moveTo(7,4),a.lineTo(7,10),a.stroke())};mxCellRenderer.registerShape(mxShapeBpmn2Conversation.prototype.cst.CONVERSATION,mxShapeBpmn2Conversation);function mxShapeEREntity(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeEREntity,mxShape);
77mxShapeEREntity.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"buttonText","Entity"),g=mxUtils.getValue(this.style,"textColor","#666666"),h=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17");a.translate(d,e);b=Math.max(b,20);c=Math.max(c,20);this.background(a,d,e,b,c,10,g);a.setShadow(!1);this.mainText(a,d,e,b,c,f,h,g)};
78mxShapeEREntity.prototype.background=function(a,d,e,b,c,f,g){d=mxUtils.getValue(this.style,"buttonStyle","round").toString();"round"===d?(a.begin(),a.moveTo(0,f),a.arcTo(f,f,0,0,1,f,0),a.lineTo(b-f,0),a.arcTo(f,f,0,0,1,b,f),a.lineTo(b,c-f),a.arcTo(f,f,0,0,1,b-f,c),a.lineTo(f,c),a.arcTo(f,f,0,0,1,0,c-f),a.close(),a.fillAndStroke()):"rect"===d?(a.begin(),a.moveTo(0,0),a.lineTo(b,0),a.lineTo(b,c),a.lineTo(0,c),a.close(),a.fillAndStroke()):"dblFrame"===d&&(f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,
79"#ffffff"),a.setFillColor(f),a.begin(),a.moveTo(0,0),a.lineTo(b,0),a.lineTo(b,c),a.lineTo(0,c),a.close(),a.fillAndStroke(),f=Math.min(b,c),a.begin(),a.moveTo(.1*f,.1*f),a.lineTo(b-.1*f,.1*f),a.lineTo(b-.1*f,c-.1*f),a.lineTo(.1*f,c-.1*f),a.close(),a.stroke())};mxShapeEREntity.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(.5*b,.5*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
80mxCellRenderer.registerShape("mxgraph.er.entity",mxShapeEREntity);
81mxShapeEREntity.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,
821),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];function mxShapeEREntityExt(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeEREntityExt,mxShape);
83mxShapeEREntityExt.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"buttonText","Entity"),g=mxUtils.getValue(this.style,"subText","+ attribute 1,+ attribute 2,+ attribute 3").toString().split(","),h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),k=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17"),l=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#008cff"),m=mxUtils.getValue(this.style,"fillColor2","#ffffff"),n=0;a.translate(d,
84e);for(var p=1.25*k,q=0;q<g.length;q++){var t=mxUtils.getSizeForString(g[q],k,mxConstants.DEFAULT_FONTFAMILY).width;t>n&&(n=t)}b=Math.max(b,20,n+10);c=Math.max(c,20,(g.length+1)*p);this.background(a,d,e,b,c,10);a.setShadow(!1);this.shapes(a,d,e,b,c,k,l,m,10,p);this.mainText(a,d,e,b,c,f,k,m);this.attrText(a,d,e,b,c,g,k,h,p,10)};
85mxShapeEREntityExt.prototype.background=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,"buttonStyle","round").toString();a.begin();"round"===d?(a.moveTo(0,f),a.arcTo(f,f,0,0,1,f,0),a.lineTo(b-f,0),a.arcTo(f,f,0,0,1,b,f),a.lineTo(b,c-f),a.arcTo(f,f,0,0,1,b-f,c),a.lineTo(f,c),a.arcTo(f,f,0,0,1,0,c-f)):"rect"===d&&(a.moveTo(0,0),a.lineTo(b,0),a.lineTo(b,c),a.lineTo(0,c));a.close();a.fillAndStroke()};
86mxShapeEREntityExt.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(.5*b,.5*g,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
87mxShapeEREntityExt.prototype.shapes=function(a,d,e,b,c,f,g,h,k,l){d=mxUtils.getValue(this.style,"buttonStyle","round").toString();"round"===d?(a.begin(),a.moveTo(0,k),a.arcTo(k,k,0,0,1,k,0),a.lineTo(b-k,0),a.arcTo(k,k,0,0,1,b,k),a.lineTo(b,l),a.lineTo(0,l),a.close(),a.fill(),a.setFillColor(h),a.begin(),a.moveTo(b,l),a.lineTo(b,c-k),a.arcTo(k,k,0,0,1,b-k,c),a.lineTo(k,c),a.arcTo(k,k,0,0,1,0,c-k),a.lineTo(0,l),a.close(),a.fill()):"rect"===d&&(a.begin(),a.moveTo(0,0),a.lineTo(b,0),a.lineTo(b,l),a.lineTo(0,
88l),a.close(),a.fill(),a.setFillColor(h),a.begin(),a.moveTo(0,l),a.lineTo(b,l),a.lineTo(b,c),a.lineTo(0,c),a.close(),a.fill());a.begin();"round"===d?(a.moveTo(0,k),a.arcTo(k,k,0,0,1,k,0),a.lineTo(b-k,0),a.arcTo(k,k,0,0,1,b,k),a.lineTo(b,c-k),a.arcTo(k,k,0,0,1,b-k,c),a.lineTo(k,c),a.arcTo(k,k,0,0,1,0,c-k)):"rect"===d&&(a.moveTo(0,0),a.lineTo(b,0),a.lineTo(b,c),a.lineTo(0,c));a.close();a.stroke()};
89mxShapeEREntityExt.prototype.attrText=function(a,d,e,b,c,f,g,h,k,l){for(d=0;d<f.length;d++)a.begin(),a.setFontSize(g),a.setFontColor(h),a.text(.5*l,(d+1.5)*k,0,0,f[d],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape("mxgraph.er.entityExt",mxShapeEREntityExt);
90mxShapeEREntityExt.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,
911),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];function mxShapeERAttribute(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeERAttribute,mxShape);
92mxShapeERAttribute.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"buttonText","Entity"),g=mxUtils.getValue(this.style,"textColor","#666666"),h=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17");a.translate(d,e);b=Math.max(b,20);c=Math.max(c,20);this.background(a,d,e,b,c,10,g);a.setShadow(!1);this.mainText(a,d,e,b,c,f,h,g)};
93mxShapeERAttribute.prototype.background=function(a,d,e,b,c,f,g){d=mxUtils.getValue(this.style,"buttonStyle","simple").toString();"simple"===d?(a.begin(),a.ellipse(0,0,b,c),a.fillAndStroke()):"dblFrame"===d&&(d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#666666"),a.setFillColor(d),a.begin(),a.ellipse(0,0,b,c),a.fillAndStroke(),f=Math.min(b,c),a.begin(),a.ellipse(.1*f,.1*f,b-.2*f,c-.2*f),a.stroke())};
94mxShapeERAttribute.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(.5*b,.5*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape("mxgraph.er.attribute",mxShapeERAttribute);
95mxShapeERAttribute.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.144,.144),!1),new mxConnectionConstraint(new mxPoint(.856,.144),!1),new mxConnectionConstraint(new mxPoint(.856,.856),!1),new mxConnectionConstraint(new mxPoint(.144,.856),!1),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0)];
96function mxShapeERHas(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeERHas,mxShape);
97mxShapeERHas.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"buttonText","Entity"),g=mxUtils.getValue(this.style,"textColor","#666666"),h=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17");a.translate(d,e);b=Math.max(b,20);c=Math.max(c,20);this.background(a,d,e,b,c,10,g);a.setShadow(!1);this.mainText(a,d,e,b,c,f,h,g)};
98mxShapeERHas.prototype.background=function(a,d,e,b,c,f,g){d=mxUtils.getValue(this.style,"buttonStyle","rhombus").toString();"rhombus"===d?(a.begin(),a.moveTo(0,.5*c),a.lineTo(.5*b,0),a.lineTo(b,.5*c),a.lineTo(.5*b,c),a.close(),a.fillAndStroke()):"dblFrame"===d&&(d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#666666"),a.setFillColor(d),a.begin(),a.moveTo(0,.5*c),a.lineTo(.5*b,0),a.lineTo(b,.5*c),a.lineTo(.5*b,c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.1*b,.5*c),a.lineTo(.5*b,.1*
99c),a.lineTo(.9*b,.5*c),a.lineTo(.5*b,.9*c),a.close(),a.stroke())};mxShapeERHas.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(.5*b,.5*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape("mxgraph.er.has",mxShapeERHas);
100mxShapeERHas.prototype.constraints=[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),!0),new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.75),!1),new mxConnectionConstraint(new mxPoint(.75,.25),!1),new mxConnectionConstraint(new mxPoint(.75,.75),!1)];
101function mxShapeERCloud(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeERCloud,mxShape);
102mxShapeERCloud.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"buttonText","Entity"),g=mxUtils.getValue(this.style,"textColor","#666666"),h=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17");a.translate(d,e);b=Math.max(b,20);c=Math.max(c,20);this.background(a,d,e,b,c,10,g);a.setShadow(!1);this.mainText(a,d,e,b,c,f,h,g)};
103mxShapeERCloud.prototype.background=function(a,d,e,b,c,f,g){a.begin();a.moveTo(.25*b,.25*c);a.curveTo(.05*b,.25*c,0,.5*c,.16*b,.55*c);a.curveTo(0,.66*c,.18*b,.9*c,.31*b,.8*c);a.curveTo(.4*b,c,.7*b,c,.8*b,.8*c);a.curveTo(b,.8*c,b,.6*c,.875*b,.5*c);a.curveTo(b,.3*c,.8*b,.1*c,.625*b,.2*c);a.curveTo(.5*b,.05*c,.3*b,.05*c,.25*b,.25*c);a.fillAndStroke()};
104mxShapeERCloud.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(.5*b,.5*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape("mxgraph.er.cloud",mxShapeERCloud);
105mxShapeERCloud.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.08,.5),!1),new mxConnectionConstraint(new mxPoint(.9,.5),!1),new mxConnectionConstraint(new mxPoint(.5,.1),!1),new mxConnectionConstraint(new mxPoint(.5,.92),!1),new mxConnectionConstraint(new mxPoint(.24,.24),!1),new mxConnectionConstraint(new mxPoint(.22,.8),!1),new mxConnectionConstraint(new mxPoint(.81,.2),!1),new mxConnectionConstraint(new mxPoint(.78,.78),!1)];
106function mxShapeERHierarchy(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeERHierarchy,mxShape);
107mxShapeERHierarchy.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"buttonText","main").toString().split(","),g=mxUtils.getValue(this.style,"subText","sub").toString().split(","),h=mxUtils.getValue(this.style,"textColor","#666666"),k=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17");a.translate(d,e);b=Math.max(b,20);c=Math.max(c,20);this.background(a,d,e,b,c,10,h);a.setShadow(!1);this.shapeText(a,d,e,b,c,f,g,k,h)};
108mxShapeERHierarchy.prototype.background=function(a,d,e,b,c,f,g){d=mxUtils.getValue(this.style,"buttonStyle","round").toString();"round"===d?(a.begin(),a.moveTo(0,f),a.arcTo(f,f,0,0,1,f,0),a.lineTo(b-f,0),a.arcTo(f,f,0,0,1,b,f),a.lineTo(b,c-f),a.arcTo(f,f,0,0,1,b-f,c),a.lineTo(f,c),a.arcTo(f,f,0,0,1,0,c-f),a.close(),a.fillAndStroke()):"rect"===d?(a.begin(),a.moveTo(0,0),a.lineTo(b,0),a.lineTo(b,c),a.lineTo(0,c),a.close(),a.fillAndStroke()):"dblFrame"===d&&(f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,
109"#666666"),a.setFillColor(f),a.begin(),a.moveTo(0,0),a.lineTo(b,0),a.lineTo(b,c),a.lineTo(0,c),a.close(),a.fillAndStroke(),f=Math.min(b,c),a.begin(),a.moveTo(.1*f,.1*f),a.lineTo(b-.1*f,.1*f),a.lineTo(b-.1*f,c-.1*f),a.lineTo(.1*f,c-.1*f),a.close(),a.stroke());g=e=0;"round"===d?(e=.5*b,g=f,a.translate(e,g),b=.5*b-f,c-=2*f,a.begin(),a.moveTo(0,f),a.arcTo(f,f,0,0,1,f,0),a.lineTo(b-f,0),a.arcTo(f,f,0,0,1,b,f),a.lineTo(b,c-f),a.arcTo(f,f,0,0,1,b-f,c),a.lineTo(f,c),a.arcTo(f,f,0,0,1,0,c-f),a.close(),a.fillAndStroke()):
110"rect"===d?(e=.5*b,g=f,a.translate(e,g),b=.5*b-f,c-=2*f,a.begin(),a.moveTo(0,0),a.lineTo(b,0),a.lineTo(b,c),a.lineTo(0,c),a.close(),a.fillAndStroke()):"dblFrame"===d&&(e=.5*b,g=.15*f,a.translate(e,g),b=.5*b-.15*f,c-=.3*f,f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#666666"),a.setFillColor(f),a.begin(),a.moveTo(0,0),a.lineTo(b,0),a.lineTo(b,c),a.lineTo(0,c),a.close(),a.fillAndStroke(),f=Math.min(b,c),a.begin(),a.moveTo(.1*f,.1*f),a.lineTo(b-.1*f,.1*f),a.lineTo(b-.1*f,c-.1*f),a.lineTo(.1*
111f,c-.1*f),a.close(),a.stroke());a.translate(-e,-g)};
112mxShapeERHierarchy.prototype.shapeText=function(a,d,e,b,c,f,g,h,k,l){a.begin();a.setFontSize(h);a.setFontColor(k);a.text(.25*b,.5*(c-h),0,0,f[0],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.25*b,.5*(c+h),0,0,f[1],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.7*b,.5*(c-h),0,0,g[0],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.7*b,.5*(c+h),0,0,g[1],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
113mxCellRenderer.registerShape("mxgraph.er.hierarchy",mxShapeERHierarchy);
114mxShapeERHierarchy.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,
1151),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];function mxShapeERNote(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeERNote,mxShape);
116mxShapeERNote.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"buttonText","Entity"),g=mxUtils.getValue(this.style,"textColor","#666666"),h=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17"),k=mxUtils.getValue(this.style,"fillColor2","#ffffff");a.translate(d,e);b=Math.max(b,40);c=Math.max(c,40);this.background(a,d,e,b,c,20);a.setShadow(!1);this.flipShape(a,d,e,b,c,20,k);this.mainText(a,d,e,b,c,f,h,g)};
117mxShapeERNote.prototype.background=function(a,d,e,b,c,f){a.begin();a.moveTo(0,0);a.lineTo(b-f,0);a.lineTo(b,f);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxShapeERNote.prototype.flipShape=function(a,d,e,b,c,f,g){a.setLineJoin("round");a.setFillColor(g);a.begin();a.moveTo(b-f,0);a.lineTo(b,f);a.lineTo(b-f,f);a.close();a.fillAndStroke()};
118mxShapeERNote.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(.5*b,.5*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape("mxgraph.er.note",mxShapeERNote);
119mxShapeERNote.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),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,
120.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)];function mxShapeERChen(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeERChen,mxShape);
121mxShapeERChen.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"textColor","#666666"),g=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17");a.translate(d,e);b=Math.max(b,40);c=Math.max(c,40);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c,g,f)};mxShapeERChen.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};
122mxShapeERChen.prototype.foreground=function(a,d,e,b,c,f,g){a.begin();a.moveTo(0,.25*c);a.lineTo(b,.25*c);a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.moveTo(0,.75*c);a.lineTo(b,.75*c);a.moveTo(.25*b,.5*c);a.lineTo(.25*b,c);a.moveTo(.5*b,.25*c);a.lineTo(.5*b,c);a.moveTo(.75*b,.5*c);a.lineTo(.75*b,c);a.stroke();a.begin();a.setFontSize(f);a.setFontColor(g);a.text(.5*b,.125*c,0,0,"ERD Peter Chen's Notation",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontSize(.85*f);a.text(.25*b,.375*
123c,0,0,"Cardinality",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.75*b,.375*c,0,0,"Optionality",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontSize(.7*f);a.text(.125*b,.625*c,0,0,"1",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.375*b,.625*c,0,0,"One",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.625*b,.625*c,0,0,"0",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.875*b,
124.625*c,0,0,"Optional",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.125*b,.875*c,0,0,"N",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.375*b,.875*c,0,0,"Many",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.625*b,.875*c,0,0,"1",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.875*b,.875*c,0,0,"Mandatory",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
125mxCellRenderer.registerShape("mxgraph.er.chens",mxShapeERChen);
126mxShapeERChen.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(.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,
127.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)];function mxShapeERBachman(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeERBachman,mxShape);
128mxShapeERBachman.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"textColor","#666666"),g=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17");a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c,g,f)};mxShapeERBachman.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};
129mxShapeERBachman.prototype.foreground=function(a,d,e,b,c,f,g){a.begin();a.moveTo(0,.125*c);a.lineTo(b,.125*c);a.moveTo(0,.25*c);a.lineTo(b,.25*c);a.moveTo(0,.375*c);a.lineTo(b,.375*c);a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.moveTo(0,.625*c);a.lineTo(b,.625*c);a.moveTo(0,.75*c);a.lineTo(b,.75*c);a.moveTo(0,.875*c);a.lineTo(b,.875*c);a.moveTo(.5*b,.125*c);a.lineTo(.5*b,c);a.stroke();a.begin();a.setFontSize(f);a.setFontColor(g);a.text(.5*b,.0625*c,0,0,"ERD Bachman's Notation",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,
1300,null,0,0,0);a.setFontSize(.85*f);a.text(.52*b,.1875*c,0,0,"Relationship",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.52*b,.3125*c,0,0,"Cardinality (One)",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.52*b,.4375*c,0,0,"Cardinality (Many)",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.52*b,.5625*c,0,0,"Mandatory, One",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.52*b,.6875*c,0,0,"Mandatory, Many",mxConstants.ALIGN_LEFT,
131mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.52*b,.8125*c,0,0,"Optional, One",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.52*b,.9375*c,0,0,"Optional, Many",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);d=mxUtils.getSizeForString("has/forms",f,mxConstants.DEFAULT_FONTFAMILY).width;a.begin();a.moveTo(.04*b,.1875*c);a.lineTo(.25*b-.5*d,.1875*c);a.moveTo(.25*b+.5*d,.1875*c);a.lineTo(.46*b,.1875*c);a.text(.25*b,.1875*c,0,0,"has/forms",mxConstants.ALIGN_CENTER,
132mxConstants.ALIGN_MIDDLE,0,null,!0,0,0);a.moveTo(.04*b,.3125*c);a.lineTo(.46*b,.3125*c);a.moveTo(.04*b,.4375*c);a.lineTo(.46*b,.4375*c);a.moveTo(.46*b,.405*c);a.lineTo(.4*b,.4375*c);a.lineTo(.46*b,.47*c);a.moveTo(.04*b,.5625*c);a.lineTo(.46*b,.5625*c);a.moveTo(.38*b,.53*c);a.lineTo(.38*b,.595*c);a.moveTo(.04*b,.6875*c);a.lineTo(.46*b,.6875*c);a.moveTo(.46*b,.655*c);a.lineTo(.4*b,.6875*c);a.lineTo(.46*b,.72*c);a.moveTo(.38*b,.655*c);a.lineTo(.38*b,.72*c);a.moveTo(.04*b,.8125*c);a.lineTo(.46*b,.8125*
133c);a.moveTo(.04*b,.9375*c);a.lineTo(.46*b,.9375*c);a.moveTo(.46*b,.905*c);a.lineTo(.4*b,.9375*c);a.lineTo(.46*b,.97*c);a.stroke();d=c/15;a.begin();a.ellipse(.46*b-d,.8125*c-.5*d,d,d);a.fillAndStroke();a.begin();a.ellipse(.4*b-d,.9375*c-.5*d,d,d);a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.er.bachmans",mxShapeERBachman);
134mxShapeERBachman.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(.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,
135.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)];function mxShapeERInfEng(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeERInfEng,mxShape);
136mxShapeERInfEng.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"textColor","#666666"),g=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17");a.translate(d,e);b=Math.max(b,c/1.5);c=Math.max(c,5*g);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c,g,f)};mxShapeERInfEng.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};
137mxShapeERInfEng.prototype.foreground=function(a,d,e,b,c,f,g){a.begin();a.moveTo(0,.2*c);a.lineTo(b,.2*c);a.moveTo(0,.4*c);a.lineTo(b,.4*c);a.moveTo(0,.6*c);a.lineTo(b,.6*c);a.moveTo(0,.8*c);a.lineTo(b,.8*c);a.moveTo(.5*b,.2*c);a.lineTo(.5*b,c);a.stroke();a.begin();a.setFontSize(f);a.setFontColor(g);a.text(.5*b,.1*c,0,0,"ERD Information Engineering Notation",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontSize(.85*f);a.text(.52*b,.3*c,0,0,"Zero or one",mxConstants.ALIGN_LEFT,
138mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.52*b,.5*c,0,0,"One only",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.52*b,.7*c,0,0,"Zero or more",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.52*b,.9*c,0,0,"One or more",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);d=c/12;a.begin();a.moveTo(.04*b,.3*c);a.lineTo(.46*b,.3*c);a.moveTo(.46*b-d,.25*c);a.lineTo(.46*b-d,.35*c);a.moveTo(.04*b,.5*c);a.lineTo(.46*b,.5*c);a.moveTo(.46*b-2*d,.45*
139c);a.lineTo(.46*b-2*d,.55*c);a.moveTo(.46*b-2.5*d,.45*c);a.lineTo(.46*b-2.5*d,.55*c);a.moveTo(.04*b,.7*c);a.lineTo(.46*b,.7*c);a.moveTo(.46*b,.65*c);a.lineTo(.46*b-2*d,.7*c);a.lineTo(.46*b,.75*c);a.stroke();a.moveTo(.04*b,.9*c);a.lineTo(.46*b,.9*c);a.moveTo(.46*b,.85*c);a.lineTo(.46*b-2*d,.9*c);a.lineTo(.46*b,.95*c);a.moveTo(.46*b-2.5*d,.85*c);a.lineTo(.46*b-2.5*d,.95*c);a.stroke();a.begin();a.ellipse(.46*b-3*d,.3*c-.5*d,d,d);a.fillAndStroke();a.begin();a.ellipse(.46*b-3*d,.7*c-.5*d,d,d);a.fillAndStroke()};
140mxCellRenderer.registerShape("mxgraph.er.ie",mxShapeERInfEng);
141mxShapeERInfEng.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(.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,
142.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)];mxMarker.addMarker("ERone",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(b.x-m/2-n/2,b.y-n/2+m/2);a.lineTo(b.x-m/2+n/2,b.y-n/2-m/2);a.stroke()}});
143mxMarker.addMarker("ERmandOne",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(b.x-m/2-n/2,b.y-n/2+m/2);a.lineTo(b.x-m/2+n/2,b.y-n/2-m/2);a.moveTo(b.x-m-n/2,b.y-n+m/2);a.lineTo(b.x-m+n/2,b.y-n-m/2);a.stroke()}});mxMarker.addMarker("ERmany",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(b.x+n/2,b.y-m/2);a.lineTo(b.x-m,b.y-n);a.lineTo(b.x-n/2,b.y+m/2);a.stroke()}});
144mxMarker.addMarker("ERoneToMany",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(b.x-m-n/2,b.y-n+m/2);a.lineTo(b.x-m+n/2,b.y-n-m/2);a.moveTo(b.x+n/2,b.y-m/2);a.lineTo(b.x-m,b.y-n);a.lineTo(b.x-n/2,b.y+m/2);a.stroke()}});
145mxMarker.addMarker("ERzeroToMany",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1),p=g/2,q=b.x,t=b.y;l||(b.x-=2*m-c*k/2,b.y-=2*n-f*k/2);return function(){a.begin();a.ellipse(q-1.5*m-p,t-1.5*n-p,2*p,2*p);if(l){var b=mxUtils.getValue(d.style,mxConstants.STYLE_STROKECOLOR,"#666666");a.setFillColor("#ffffff");a.fillAndStroke();a.setFillColor(b)}else a.stroke();a.begin();a.moveTo(q+n/2,t-m/2);a.lineTo(q-m,t-n);a.lineTo(q-n/2,t+m/2);l||(a.moveTo(q-m,t-n),a.lineTo(q,t));a.stroke()}});
146mxMarker.addMarker("ERzeroToOne",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1),p=g/2,q=b.x,t=b.y;l||(b.x-=2*m-c*k/2,b.y-=2*n-f*k/2);return function(){a.begin();a.ellipse(q-1.5*m-p,t-1.5*n-p,2*p,2*p);if(l){var b=mxUtils.getValue(d.style,mxConstants.STYLE_STROKECOLOR,"#666666");a.setFillColor("#ffffff");a.fillAndStroke();a.setFillColor(b)}else a.stroke();a.begin();a.moveTo(q-m/2-n/2,t-n/2+m/2);a.lineTo(q-m/2+n/2,t-n/2-m/2);l||(a.moveTo(q-m-c*k/2,t-n-f*k/2),a.lineTo(q,t));a.stroke()}});
147function mxShapeERRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeERRRect,mxShape);mxShapeERRRect.prototype.cst={RRECT:"mxgraph.er.rrect",R_SIZE:"rSize"};mxShapeERRRect.prototype.customProperties=[{name:"rSize",dispName:"Rounding Size",type:"float"}];
148mxShapeERRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeERRRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeERRRect.prototype.cst.RRECT,mxShapeERRRect);
149mxShapeERRRect.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,
1501),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];function mxShapeERAnchor(a,d,e,b){mxShape.call(this);this.bounds=a}mxUtils.extend(mxShapeERAnchor,mxShape);mxShapeERAnchor.prototype.cst={ANCHOR:"mxgraph.er.anchor"};mxShapeERAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeERAnchor.prototype.cst.ANCHOR,mxShapeERAnchor);
151var mxIOS7C={MAIN_TEXT:"mainText",SUB_TEXT:"subText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",BAR_POS:"barPos",BUTTON_TEXT:"buttonText",BUTTON_STATE:"buttonState",SELECTED:"+",STATE_ON:"on",STATE_OFF:"off",GRID_SIZE:"gridSize",SHAPE_IOS7_APP_BAR:"mxgraph.ios7ui.appBar",SHAPE_IOS7_ON_OFF_BUTTON:"mxgraph.ios7ui.onOffButton",SHAPE_IOS7_SLIDER:"mxgraph.ios7ui.slider",SHAPE_IOS7_DOWNLOAD_BAR:"mxgraph.ios7ui.downloadBar",SHAPE_IOS7_ICON:"mxgraph.ios7ui.icon",SHAPE_IOS7_HOR_BUTTON_BAR:"mxgraph.ios7ui.horButtonBar",
152SHAPE_IOS7_PAGE_CONTROL:"mxgraph.ios7ui.pageControl",SHAPE_IOS7_EXPAND:"mxgraph.ios7ui.expand",SHAPE_IOS7_ICON_GRID:"mxgraph.ios7ui.iconGrid",SHAPE_IOS7_PHONE:"mxgraph.ios7ui.phone",SHAPE_IOS7_SEARCH_BOX:"mxgraph.ios7ui.searchBox",SHAPE_IOS7_URL:"mxgraph.ios7ui.url",SHAPE_IOS7_ACTION_DIALOG:"mxgraph.ios7ui.actionDialog",STYLE_FILLCOLOR2:"fillColor2",STYLE_FILLCOLOR3:"fillColor3",STYLE_TEXTCOLOR:"textColor",STYLE_TEXTCOLOR2:"textColor2",STYLE_STROKECOLOR2:"strokeColor2",STYLE_STROKECOLOR3:"strokeColor3",
153STYLE_TEXTSIZE:"textSize"};function mxShapeIOS7AppBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7AppBar,mxShape);mxShapeIOS7AppBar.prototype.customProperties=[{name:"fillColor2",dispName:"Fill Color 2",type:"color"}];mxShapeIOS7AppBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
154mxShapeIOS7AppBar.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fill()};
155mxShapeIOS7AppBar.prototype.foreground=function(a,d,e,b,c){a.setFillColor(mxUtils.getValue(this.style,mxIOS7C.STYLE_FILLCOLOR2,"#222222"));a.ellipse(5,.5*c-1.5,3,3);a.fill();a.ellipse(9,.5*c-1.5,3,3);a.fill();a.ellipse(13,.5*c-1.5,3,3);a.fill();a.ellipse(17,.5*c-1.5,3,3);a.fill();a.ellipse(21,.5*c-1.5,3,3);a.fill();a.ellipse(54,.5*c+2,2,2);a.fillAndStroke();a.setStrokeWidth(2);a.begin();a.moveTo(52,.5*c+1);a.arcTo(3.5,3.5,0,0,1,58,.5*c+1);a.stroke();a.begin();a.moveTo(50,.5*c-1);a.arcTo(6,6,0,0,1,
15660,.5*c-1);a.stroke();a.begin();a.moveTo(b-19,.5*c-2);a.lineTo(b-6,.5*c-2);a.lineTo(b-6,.5*c+2);a.lineTo(b-19,.5*c+2);a.close();a.fill();a.setStrokeWidth(1);a.begin();a.moveTo(b-44,.5*c-2.5);a.lineTo(b-36,.5*c+2.5);a.lineTo(b-40,.5*c+5);a.lineTo(b-40,.5*c-5);a.lineTo(b-36,.5*c-2.5);a.lineTo(b-44,.5*c+2.5);a.stroke();a.begin();a.moveTo(b-20,.5*c-3);a.lineTo(b-5,.5*c-3);a.lineTo(b-5,.5*c-1);a.lineTo(b-3.5,.5*c-1);a.lineTo(b-3.5,.5*c+1);a.lineTo(b-5,.5*c+1);a.lineTo(b-5,.5*c+3);a.lineTo(b-20,.5*c+3);
157a.close();a.stroke()};mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_APP_BAR,mxShapeIOS7AppBar);function mxShapeIOS7OnOffButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7OnOffButton,mxShape);
158mxShapeIOS7OnOffButton.prototype.customProperties=[{name:"buttonState",dispName:"Button State",type:"enum",enumList:[{val:"on",dispName:"On"},{val:"off",dispName:"Off"}]},{name:"strokeColor2",dispName:"Stroke Color 2",type:"color"},{name:"fillColor2",dispName:"Fill Color 2",type:"color"}];
159mxShapeIOS7OnOffButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);b=Math.max(b,2*c);var f=mxUtils.getValue(this.style,mxIOS7C.BUTTON_STATE,mxIOS7C.STATE_ON);this.background(a,d,e,b,c,f);a.setShadow(!1);this.foreground(a,d,e,b,c,f)};
160mxShapeIOS7OnOffButton.prototype.background=function(a,d,e,b,c,f){f===mxIOS7C.STATE_ON?(a.roundrect(0,0,b,c,.5*c,.5*c),a.fillAndStroke()):f===mxIOS7C.STATE_OFF&&(a.setStrokeColor(mxUtils.getValue(this.style,mxIOS7C.STYLE_STROKECOLOR2,"#aaaaaa")),a.setFillColor(mxUtils.getValue(this.style,mxIOS7C.STYLE_FILLCOLOR2,"#ffffff")),a.roundrect(0,0,b,c,.5*c,.5*c),a.fillAndStroke())};
161mxShapeIOS7OnOffButton.prototype.foreground=function(a,d,e,b,c,f){a.setFillColor("#ffffff");f===mxIOS7C.STATE_ON?(a.ellipse(b-c+1,1,c-2,c-2),a.fill()):(a.ellipse(0,0,c,c),a.stroke())};mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_ON_OFF_BUTTON,mxShapeIOS7OnOffButton);function mxShapeIOS7Slider(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.barPos=80}mxUtils.extend(mxShapeIOS7Slider,mxShape);
162mxShapeIOS7Slider.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setShadow(!1);this.foreground(a,b,c)};mxShapeIOS7Slider.prototype.foreground=function(a,d,e){a.setStrokeWidth(2);a.begin();a.moveTo(0,.5*e);a.lineTo(d,.5*e);a.stroke();var b=mxUtils.getValue(this.style,mxIOS7C.BAR_POS,"80"),b=Math.min(b,100),b=Math.max(b,0);d=0+(d-0)*b/100;a.setStrokeColor(mxUtils.getValue(this.style,mxIOS7C.STYLE_STROKECOLOR2,"#a0a0a0"));a.ellipse(d-5,.5*e-5,10,10);a.fillAndStroke()};
163mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_SLIDER,mxShapeIOS7Slider);Graph.handleFactory[mxIOS7C.SHAPE_IOS7_SLIDER]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"barPos",this.barPos))));return new mxPoint(a.x+d/100*a.width,a.y+a.height/2)},function(a,e){this.state.style.barPos=Math.round(1E3*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/1E3})]};
164function mxShapeIOS7DownloadBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.barPos=80}mxUtils.extend(mxShapeIOS7DownloadBar,mxShape);mxShapeIOS7DownloadBar.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"float",min:0,max:1,defVal:30},{name:"strokeColor2",dispName:"Stroke Color 2",type:"color"}];mxShapeIOS7DownloadBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.foreground(a,b,c)};
165mxShapeIOS7DownloadBar.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxIOS7C.BUTTON_TEXT,"");a.setFontStyle(mxConstants.FONT_BOLD);a.text(.5*d,.2*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);b=mxUtils.getValue(this.style,mxIOS7C.BAR_POS,"80");b=Math.min(b,100);b=Math.max(b,0);b=d*b/100;a.setStrokeWidth(2);a.setStrokeColor(mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,""));a.begin();a.moveTo(0,.5*e);a.lineTo(d,.5*e);a.stroke();a.setStrokeColor(mxUtils.getValue(this.style,
166mxConstants.STYLE_STROKECOLOR,""));a.begin();a.moveTo(0,.5*e);a.lineTo(b,.5*e);a.stroke()};mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_DOWNLOAD_BAR,mxShapeIOS7DownloadBar);
167Graph.handleFactory[mxIOS7C.SHAPE_IOS7_DOWNLOAD_BAR]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"barPos",this.barPos))));return new mxPoint(a.x+d/100*a.width,a.y+a.height/2)},function(a,e){this.state.style.barPos=Math.round(1E3*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/1E3})]};
168function mxShapeIOS7Icon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7Icon,mxShape);mxShapeIOS7Icon.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.foreground(a,b,c)};
169mxShapeIOS7Icon.prototype.foreground=function(a,d,e){a.setGradient("#00D0F0","#0080F0",.325*d,0,.675*d,.5*e,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(0,0,d,e,.1*d,.1*e);a.fill();var b=mxUtils.getValue(this.style,mxIOS7C.BUTTON_TEXT,"");a.setFontColor("#ffffff");a.setFontStyle(mxConstants.FONT_BOLD);a.setFontSize(8);a.text(.5*d,.5*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_ICON,mxShapeIOS7Icon);
170function mxShapeIOS7horButtonBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7horButtonBar,mxShape);
171mxShapeIOS7horButtonBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxIOS7C.BUTTON_TEXT,"+Button 1, Button 2, Button 3").toString().split(","),g=mxUtils.getValue(this.style,mxIOS7C.STYLE_TEXTCOLOR,"#666666"),h=mxUtils.getValue(this.style,mxIOS7C.STYLE_TEXTCOLOR2,"#ffffff"),k=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8.5").toString(),l=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),m=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,
172"#ffffff"),n=mxUtils.getValue(this.style,mxIOS7C.STYLE_FILLCOLOR2,"#008cff"),p=f.length,q=Array(p),t=0,u=-1,v=0;v<p;v++){var r=f[v];r.charAt(0)===mxIOS7C.SELECTED&&(r=f[v].substring(1),u=v);q[v]=mxUtils.getSizeForString(r,k,mxConstants.DEFAULT_FONTFAMILY).width;t+=q[v]}c=Math.max(c,1.5*k,10);t=5*p+t;b=Math.max(b,t);a.translate(d,e);this.background(a,b,c,2.5,p,q,2.5,t,l,m,n,u);a.setShadow(!1);for(v=d=0;v<p;v++)v===u?a.setFontColor(h):a.setFontColor(g),d+=2.5,this.buttonText(a,d,c,f[v],q[v],k,t,b),
173d=d+q[v]+2.5};
174mxShapeIOS7horButtonBar.prototype.background=function(a,d,e,b,c,f,g,h,k,l,m,n){a.begin();a.setStrokeColor(k);a.setFillColor(l);a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,e-b);a.arcTo(b,b,0,0,1,d-b,e);a.lineTo(b,e);a.arcTo(b,b,0,0,1,0,e-b);a.close();a.fillAndStroke();a.setStrokeColor(k);a.begin();for(m=1;m<c;m++)if(m!==n&&m!==n+1){for(var p=0,q=0;q<m;q++)p+=f[q]+2*g;p=p*d/h;a.moveTo(p,0);a.lineTo(p,e)}a.stroke();p=0;a.setStrokeColor(mxConstants.NONE);for(m=
1750;m<n;m++)p+=f[m]+2*g;p=p*d/h;f=(f[n]+2*g)*d/h;f+=p;a.setFillColor("#0080F0");0===n?(a.begin(),a.moveTo(0,b),a.arcTo(b,b,0,0,1,b,0),a.lineTo(f,0),a.lineTo(f,e),a.lineTo(b,e),a.arcTo(b,b,0,0,1,0,e-b),a.close(),a.fill()):n===c-1?(a.begin(),a.moveTo(p,0),a.lineTo(f-b,0),a.arcTo(b,b,0,0,1,f,b),a.lineTo(f,e-b),a.arcTo(b,b,0,0,1,f-b,e),a.lineTo(p,e),a.close(),a.fill()):-1!==n&&(a.begin(),a.moveTo(p,0),a.lineTo(f,0),a.lineTo(f,e),a.lineTo(p,e),a.close(),a.fill());a.setStrokeColor(k);a.setFillColor(l);a.begin();
176a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,e-b);a.arcTo(b,b,0,0,1,d-b,e);a.lineTo(b,e);a.arcTo(b,b,0,0,1,0,e-b);a.close();a.stroke()};mxShapeIOS7horButtonBar.prototype.buttonText=function(a,d,e,b,c,f,g,h){b.charAt(0)===mxIOS7C.SELECTED&&(b=b.substring(1));a.begin();a.setFontSize(f);a.text((d+.5*c)*h/g,.5*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_HOR_BUTTON_BAR,mxShapeIOS7horButtonBar);
177function mxShapeIOS7pageControl(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7pageControl,mxShape);
178mxShapeIOS7pageControl.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#000000");e=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");var f=Math.min(.5*c,.05*b);a.setFillColor(e);a.ellipse(0,.5*c-f,2*f,2*f);a.fill();a.ellipse(.25*b-.5*f,.5*c-f,2*f,2*f);a.fill();a.ellipse(.5*b-f,.5*c-f,2*f,2*f);a.fill();a.ellipse(.75*b-1.5*f,.5*c-f,2*f,2*f);a.fill();a.setFillColor(d);a.ellipse(b-2*f,.5*c-f,2*f,2*f);a.fill()};
179mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_PAGE_CONTROL,mxShapeIOS7pageControl);function mxShapeIOS7iconGrid(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7iconGrid,mxShape);mxShapeIOS7iconGrid.prototype.customProperties=[{name:"gridSize",dispName:"Grid Size",type:"String"}];
180mxShapeIOS7iconGrid.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxIOS7C.GRID_SIZE,"4,7").toString().split(",");b/=parseInt(d[0],10)+.1*(d[0]-1);c/=parseInt(d[1],10)+.1*(d[1]-1);for(e=0;e<d[0];e++)for(var f=0;f<d[1];f++)a.rect(1.1*b*e,1.1*c*f,b,c),a.fill()};mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_ICON_GRID,mxShapeIOS7iconGrid);
181function mxShapeIOS7phone(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7phone,mxShape);mxShapeIOS7phone.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.roundrect(0,0,b,c,25,25);a.fillAndStroke();a.setShadow(!1);this.foreground(a,d,e,b,c,25)};
182mxShapeIOS7phone.prototype.foreground=function(a,d,e,b,c,f){a.rect(.0625*b,.15*c,.875*b,.7*c);a.stroke();a.ellipse(.4875*b,.04125*c,.025*b,.0125*c);a.stroke();a.roundrect(.375*b,.075*c,.25*b,.01875*c,.02*b,.01*c);a.stroke();a.ellipse(.4*b,.875*c,.2*b,.1*c);a.stroke();a.roundrect(.4575*b,.905*c,.085*b,.04375*c,.00625*c,.00625*c);a.stroke()};mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_PHONE,mxShapeIOS7phone);
183function mxShapeIOS7searchBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7searchBox,mxShape);mxShapeIOS7searchBox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeIOS7searchBox.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fill()};
184mxShapeIOS7searchBox.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxIOS7C.BUTTON_TEXT,"Search"),c=mxUtils.getValue(this.style,mxIOS7C.STYLE_TEXTCOLOR,"#666666"),f=mxUtils.getValue(this.style,mxIOS7C.STYLE_STROKECOLOR2,"#008cff");mxUtils.getValue(this.style,mxIOS7C.STYLE_TEXTSIZE,"17");var g=.1*Math.min(d,e);a.setFillColor("#ffffff");a.roundrect(.05*d,.15*e,.5*d,.7*e,g,g);a.fillAndStroke();a.setFontColor(c);a.setFontSize(Math.min(.7*e,.1*d));a.text(5,.5*e,0,0,b,mxConstants.ALIGN_LEFT,
185mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setStrokeColor(f);a.ellipse(.05*d+3,.5*e-3,4,4);a.stroke();a.begin();a.moveTo(.05*d+8,.5*e+3.5);a.lineTo(.05*d+6,.5*e+.5);a.stroke()};mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_SEARCH_BOX,mxShapeIOS7searchBox);function mxShapeIOS7URL(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7URL,mxShape);
186mxShapeIOS7URL.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeIOS7URL.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fill()};
187mxShapeIOS7URL.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxIOS7C.BUTTON_TEXT,"draw.io"),c=mxUtils.getValue(this.style,mxIOS7C.STYLE_TEXTCOLOR,"#666666"),f=mxUtils.getValue(this.style,mxIOS7C.STYLE_STROKECOLOR2,"#008cff");mxUtils.getValue(this.style,mxIOS7C.STYLE_TEXTSIZE,"17");var g=.1*Math.min(d,e);a.setFillColor("#d8d8d8");a.roundrect(.05*d,.15*e,.9*d,.7*e,g,g);a.fill();a.setFontColor(c);a.setFontSize(Math.min(.7*e,.1*d));a.text(.5*d,.5*e,0,0,b,mxConstants.ALIGN_LEFT,
188mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setStrokeColor(f);a.begin();a.moveTo(.95*d-5,.5*e);a.arcTo(3,3,0,1,1,.95*d-8,.5*e-3);a.stroke();a.setFillColor(f);a.begin();a.moveTo(.95*d-8,.5*e-4);a.lineTo(.95*d-6,.5*e-3);a.lineTo(.95*d-8,.5*e-2);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_URL,mxShapeIOS7URL);function mxShapeIOS7Actiondialog(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
189mxUtils.extend(mxShapeIOS7Actiondialog,mxShape);
190mxShapeIOS7Actiondialog.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxIOS7C.MAIN_TEXT,"Main Text"),g=mxUtils.getValue(this.style,mxIOS7C.SUB_TEXT,"Sub Text"),h=mxUtils.getValue(this.style,mxIOS7C.STYLE_TEXTCOLOR,"#666666"),k=mxUtils.getValue(this.style,mxIOS7C.STYLE_TEXTSIZE,"17");a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);a.setFillColor("#e0e0e0");a.roundrect(.05*b,.1*c,.9*b,.35*c,.025*b,.05*c);a.fill();a.roundrect(.05*b,.55*c,.9*b,.35*c,.025*
191b,.05*c);a.fill();a.setFontStyle(mxConstants.FONT_BOLD);this.mainText(a,d,e,b,c,f,k,h);this.subText(a,d,e,b,c,g,k/1.4,h)};mxShapeIOS7Actiondialog.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fill()};mxShapeIOS7Actiondialog.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(.5*b,.4*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
192mxShapeIOS7Actiondialog.prototype.subText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.text(.5*b,.7*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxIOS7C.SHAPE_IOS7_ACTION_DIALOG,mxShapeIOS7Actiondialog);function mxShapeIOS7Anchor(a,d,e,b){mxShape.call(this);this.bounds=a}mxUtils.extend(mxShapeIOS7Anchor,mxShape);mxShapeIOS7Anchor.prototype.cst={ANCHOR:"mxgraph.ios7ui.anchor"};
193mxShapeIOS7Anchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeIOS7Anchor.prototype.cst.ANCHOR,mxShapeIOS7Anchor);function mxShapeIOS7RRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7RRect,mxShape);mxShapeIOS7RRect.prototype.cst={RRECT:"mxgraph.ios7ui.rrect",R_SIZE:"rSize"};mxShapeIOS7RRect.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:3}];
194mxShapeIOS7RRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeIOS7RRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeIOS7RRect.prototype.cst.RRECT,mxShapeIOS7RRect);function mxShapeIOS7LeftButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7LeftButton,mxShape);
195mxShapeIOS7LeftButton.prototype.cst={LEFT_BUTTON:"mxgraph.ios7ui.leftButton",R_SIZE:"rSize"};mxShapeIOS7LeftButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:3}];
196mxShapeIOS7LeftButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeIOS7LeftButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(b,0);a.lineTo(b,c);a.lineTo(d,c);a.arcTo(d,d,0,0,1,0,c-d);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeIOS7LeftButton.prototype.cst.LEFT_BUTTON,mxShapeIOS7LeftButton);
197function mxShapeIOS7RightButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7RightButton,mxShape);mxShapeIOS7RightButton.prototype.cst={RIGHT_BUTTON:"mxgraph.ios7ui.rightButton",R_SIZE:"rSize"};mxShapeIOS7RightButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:3}];
198mxShapeIOS7RightButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeIOS7RightButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(0,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c-d);a.arcTo(d,d,0,0,1,b-d,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeIOS7RightButton.prototype.cst.RIGHT_BUTTON,mxShapeIOS7RightButton);
199function mxShapeIOS7TopButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7TopButton,mxShape);mxShapeIOS7TopButton.prototype.cst={TOP_BUTTON:"mxgraph.ios7ui.topButton",R_SIZE:"rSize"};mxShapeIOS7TopButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:3}];
200mxShapeIOS7TopButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeIOS7TopButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(b,c);a.lineTo(0,c);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeIOS7TopButton.prototype.cst.TOP_BUTTON,mxShapeIOS7TopButton);
201function mxShapeIOS7BottomButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7BottomButton,mxShape);mxShapeIOS7BottomButton.prototype.cst={BOTTOM_BUTTON:"mxgraph.ios7ui.bottomButton",R_SIZE:"rSize"};mxShapeIOS7BottomButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:3}];
202mxShapeIOS7BottomButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeIOS7BottomButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(b,0);a.lineTo(0,0);a.lineTo(0,c-d);a.arcTo(d,d,0,0,0,d,c);a.lineTo(b-d,c);a.arcTo(d,d,0,0,0,b,c-d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeIOS7BottomButton.prototype.cst.BOTTOM_BUTTON,mxShapeIOS7BottomButton);
203function mxShapeIOS7HorLines(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7HorLines,mxShape);mxShapeIOS7HorLines.prototype.cst={HOR_LINES:"mxgraph.ios7ui.horLines"};mxShapeIOS7HorLines.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fill();a.begin();a.moveTo(0,0);a.lineTo(b,0);a.moveTo(0,c);a.lineTo(b,c);a.stroke()};
204mxCellRenderer.registerShape(mxShapeIOS7HorLines.prototype.cst.HOR_LINES,mxShapeIOS7HorLines);function mxShapeIOS7MarginRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7MarginRect,mxShape);
205mxShapeIOS7MarginRect.prototype.customProperties=[{name:"rx",dispName:"Hor. Rounding Size",type:"float",min:0,defVal:3},{name:"ry",dispName:"Ver. Rounding Size",type:"float",min:0,defVal:3},{name:"rectMargin",dispName:"Global Margin",type:"float",min:0,defVal:5},{name:"rectMarginTop",dispName:"Top Margin",type:"float",min:0,defVal:0},{name:"rectMarginLeft",dispName:"Left Margin",type:"float",min:0,defVal:0},{name:"rectMarginBottom",dispName:"Bottom Margin",type:"float",min:0,defVal:0},{name:"rectMarginRight",
206dispName:"Right Margin",type:"float",min:0,defVal:0}];mxShapeIOS7MarginRect.prototype.cst={SHAPE_MARGIN_RECT:"mxgraph.ios7ui.marginRect",MARGIN:"rectMargin",RX:"rx",RY:"ry",MARGIN_TOP:"rectMarginTop",MARGIN_LEFT:"rectMarginLeft",MARGIN_BOTTOM:"rectMarginBottom",MARGIN_RIGHT:"rectMarginRight"};mxShapeIOS7MarginRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
207mxShapeIOS7MarginRect.prototype.background=function(a,d,e,b,c,f){f=parseFloat(mxUtils.getValue(this.style,mxShapeIOS7MarginRect.prototype.cst.MARGIN,"0"));var g=parseFloat(mxUtils.getValue(this.style,mxShapeIOS7MarginRect.prototype.cst.MARGIN_TOP,"0")),h=parseFloat(mxUtils.getValue(this.style,mxShapeIOS7MarginRect.prototype.cst.MARGIN_LEFT,"0")),k=parseFloat(mxUtils.getValue(this.style,mxShapeIOS7MarginRect.prototype.cst.MARGIN_BOTTOM,"0")),l=parseFloat(mxUtils.getValue(this.style,mxShapeIOS7MarginRect.prototype.cst.MARGIN_RIGHT,
208"0"));d=parseFloat(mxUtils.getValue(this.style,mxShapeIOS7MarginRect.prototype.cst.RX,"0"));e=parseFloat(mxUtils.getValue(this.style,mxShapeIOS7MarginRect.prototype.cst.RY,"0"));h=f+h;g=f+g;b=b-l-h-f;c=c-k-g-f;0<b&&0<c&&(a.begin(),a.roundrect(h,g,b,c,d,e),a.fillAndStroke())};mxCellRenderer.registerShape(mxShapeIOS7MarginRect.prototype.cst.SHAPE_MARGIN_RECT,mxShapeIOS7MarginRect);
209function mxShapeIOS7Callout(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIOS7Callout,mxShape);mxShapeIOS7Callout.prototype.cst={SHAPE_CALLOUT:"mxgraph.ios7ui.callout"};mxShapeIOS7Callout.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
210mxShapeIOS7Callout.prototype.background=function(a,d,e,b,c,f){30<=b&&20<=c&&(a.begin(),a.moveTo(15,c-3),a.arcTo(20,10,0,0,1,0,c),a.arcTo(15,15,0,0,0,10,c-10),a.lineTo(10,10),a.arcTo(10,10,0,0,1,20,0),a.lineTo(b-10,0),a.arcTo(10,10,0,0,1,b,10),a.lineTo(b,c-10),a.arcTo(10,10,0,0,1,b-10,c),a.lineTo(20,c),a.arcTo(10,10,0,0,1,15,c-3),a.close(),a.fillAndStroke())};mxCellRenderer.registerShape(mxShapeIOS7Callout.prototype.cst.SHAPE_CALLOUT,mxShapeIOS7Callout);
211function mxShapeIOS7SelectBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.dx2=70;this.size=10}mxUtils.extend(mxShapeIOS7SelectBar,mxActor);mxShapeIOS7SelectBar.prototype.cst={SELECT_BAR:"mxgraph.ios7ui.selectBar"};
212mxShapeIOS7SelectBar.prototype.customProperties=[{name:"dx",dispName:"Callout Position",type:"float",min:0,defVal:120},{name:"dx2",dispName:"Field Size",type:"float",min:0,defVal:75},{name:"size",dispName:"Rounding size",type:"float",min:0,defVal:5},{name:"dy",dispName:"Callout Size",type:"float",min:0,defVal:5}];
213mxShapeIOS7SelectBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2))));e=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"size",this.size))));var g=Math.max(0,Math.min(c,(b-Math.max(20,e)-e)/2,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.min(c/2,b/2,e);f=Math.max(e+g,f);f=Math.min(b-e-g,b-
21420-g,f);a.begin();a.moveTo(f-g,c);a.lineTo(e,c);a.arcTo(e,e,0,0,1,0,c-e);a.lineTo(0,e);a.arcTo(e,e,0,0,1,e,0);a.lineTo(b-e,0);a.arcTo(e,e,0,0,1,b,e);a.lineTo(b,c-e);a.arcTo(e,e,0,0,1,b-e,c);a.lineTo(f+g,c);a.lineTo(f,c+g);a.close();a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(b-Math.max(20,e),0);a.lineTo(b-Math.max(20,e),c);a.stroke();f=d;for(a.begin();f<b-Math.max(20,e);)a.moveTo(f,0),a.lineTo(f,c),f+=d;a.stroke();d=Math.min(Math.max(20,e),c);b-=.5*d;c*=.5;a.setFillColor(mxUtils.getValue(this.style,
215mxConstants.STYLE_STROKECOLOR,""));a.begin();a.moveTo(b-.15*d,c-.225*d);a.lineTo(b+.25*d,c);a.lineTo(b-.15*d,c+.225*d);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeIOS7SelectBar.prototype.cst.SELECT_BAR,mxShapeIOS7SelectBar);mxShapeIOS7SelectBar.prototype.constraints=null;
216Graph.handleFactory[mxShapeIOS7SelectBar.prototype.cst.SELECT_BAR]=function(a){var d=[Graph.createHandle(a,["dx"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+b,a.y+a.height)},function(a,c){var b=.6*parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy));this.state.style.dx=Math.round(100*Math.max(b,Math.min(a.width-b,c.x-a.x)))/100})],e=Graph.createHandle(a,["dy"],function(a){var b=Math.max(0,Math.min(a.height,
217parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)),a.y+a.height+b)},function(a,c){this.state.style.dy=Math.round(100*Math.max(0,Math.min(a.height,c.y-a.y-a.height)))/100});d.push(e);e=Graph.createHandle(a,["size"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"size",this.size))));return new mxPoint(a.x+a.width-b,a.y+10)},function(a,c){this.state.style.size=Math.round(100*
218Math.max(0,Math.min(a.width/2,a.height/2,a.x+a.width-c.x)))/100});d.push(e);a=Graph.createHandle(a,["dx2"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2))));return new mxPoint(a.x+b,a.y+a.height/2)},function(a,c){this.state.style.dx2=Math.round(100*Math.max(0,Math.min(a.width,c.x-a.x)))/100});d.push(a);return d};function mxShapeIOS7Slider2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
219mxUtils.extend(mxShapeIOS7Slider2,mxShape);mxShapeIOS7Slider2.prototype.cst={SHAPE_SLIDER:"mxgraph.ios7ui.slider",BAR_POS:"barPos",HANDLE_SIZE:"handleSize"};mxShapeIOS7Slider2.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"float",min:0,max:1,defVal:20},{name:"handleSize",dispName:"Handle Size",type:"float",min:0,defVal:10}];mxShapeIOS7Slider2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0)};
220mxShapeIOS7Slider2.prototype.background=function(a,d,e,b,c){d=parseFloat(mxUtils.getValue(this.style,mxShapeIOS7Slider2.prototype.cst.HANDLE_SIZE,"10"));e=parseFloat(mxUtils.getValue(this.style,mxShapeIOS7Slider2.prototype.cst.BAR_POS,"40"))/100;e=Math.max(0,Math.min(1,e));a.save();a.setStrokeColor("#bbbbbb");a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.fillAndStroke();a.restore();a.begin();a.moveTo(0,.5*c);a.lineTo(e*b,.5*c);a.fillAndStroke();a.setStrokeColor("#bbbbbb");a.begin();a.ellipse(e*b-
221.5*d,.5*c-.5*d,d,d);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeIOS7Slider2.prototype.cst.SHAPE_SLIDER,mxShapeIOS7Slider2);mxShapeIOS7Slider2.prototype.constraints=null;
222Graph.handleFactory[mxShapeIOS7Slider2.prototype.cst.SHAPE_SLIDER]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"barPos",.4))));return new mxPoint(a.x+d*a.width/100,a.y+a.height/2)},function(a,e){this.state.style.barPos=Math.round(100*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/100})]};
223function mxShapeMockupMultiButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupMultiButton,mxShape);mxShapeMockupMultiButton.prototype.cst={MAIN_TEXT:"mainText",SHAPE_MULTILINE_BUTTON:"mxgraph.mockup.buttons.multiButton",SUB_TEXT:"subText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",BUTTON_STYLE:"buttonStyle",ROUND:"round",CHEVRON:"chevron"};
224mxShapeMockupMultiButton.prototype.customProperties=[{name:"buttonStyle",dispName:"Style",type:"enum",defVal:"round",enumList:[{val:"round",dispName:"Round"},{val:"chevron",dispName:"Chevron"}]}];
225mxShapeMockupMultiButton.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupMultiButton.prototype.cst.MAIN_TEXT,"Main Text"),g=mxUtils.getValue(this.style,mxShapeMockupMultiButton.prototype.cst.SUB_TEXT,"Sub Text"),h=mxUtils.getValue(this.style,mxShapeMockupMultiButton.prototype.cst.TEXT_COLOR,"#666666"),k=mxUtils.getValue(this.style,mxShapeMockupMultiButton.prototype.cst.TEXT_SIZE,"17");a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);a.setFontStyle(mxConstants.FONT_BOLD);
226this.mainText(a,d,e,b,c,f,k,h);this.subText(a,d,e,b,c,g,k/1.4,h)};
227mxShapeMockupMultiButton.prototype.background=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupMultiButton.prototype.cst.BUTTON_STYLE,mxShapeMockupMultiButton.prototype.cst.ROUND).toString();a.begin();d===mxShapeMockupMultiButton.prototype.cst.ROUND?(a.moveTo(0,10),a.arcTo(10,10,0,0,1,10,0),a.lineTo(b-10,0),a.arcTo(10,10,0,0,1,b,10),a.lineTo(b,c-10),a.arcTo(10,10,0,0,1,b-10,c),a.lineTo(10,c),a.arcTo(10,10,0,0,1,0,c-10)):d===mxShapeMockupMultiButton.prototype.cst.CHEVRON&&(a.moveTo(0,
228.1*c),a.arcTo(.0372*b,.1111*c,0,0,1,.0334*b,0),a.lineTo(.768*b,0),a.arcTo(.0722*b,.216*c,0,0,1,.8014*b,.0399*c),a.lineTo(.99*b,.4585*c),a.arcTo(.09*b,.1*c,0,0,1,.99*b,.5415*c),a.lineTo(.8014*b,.9568*c),a.arcTo(.0722*b,.216*c,0,0,1,.768*b,c),a.lineTo(.0334*b,c),a.arcTo(.0372*b,.1111*c,0,0,1,0,.9*c));a.close();a.fillAndStroke()};
229mxShapeMockupMultiButton.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(.5*b,.4*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxShapeMockupMultiButton.prototype.subText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.text(.5*b,.7*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupMultiButton.prototype.cst.SHAPE_MULTILINE_BUTTON,mxShapeMockupMultiButton);
230function mxShapeMockupButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupButton,mxShape);mxShapeMockupButton.prototype.cst={MAIN_TEXT:"mainText",SHAPE_BUTTON:"mxgraph.mockup.buttons.button",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",BUTTON_STYLE:"buttonStyle",ROUND:"round",CHEVRON:"chevron"};
231mxShapeMockupButton.prototype.customProperties=[{name:"buttonStyle",dispName:"Style",type:"enum",defVal:"round",enumList:[{val:"round",dispName:"Round"},{val:"chevron",dispName:"Chevron"}]}];
232mxShapeMockupButton.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupButton.prototype.cst.MAIN_TEXT,"Main Text"),g=mxUtils.getValue(this.style,mxShapeMockupButton.prototype.cst.TEXT_COLOR,"#666666").toString(),h=mxUtils.getValue(this.style,mxShapeMockupButton.prototype.cst.TEXT_SIZE,"17").toString();a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.mainText(a,d,e,b,c,f,h,g)};
233mxShapeMockupButton.prototype.background=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupButton.prototype.cst.BUTTON_STYLE,mxShapeMockupButton.prototype.cst.ROUND).toString();a.begin();d===mxShapeMockupButton.prototype.cst.ROUND?(a.moveTo(0,10),a.arcTo(10,10,0,0,1,10,0),a.lineTo(b-10,0),a.arcTo(10,10,0,0,1,b,10),a.lineTo(b,c-10),a.arcTo(10,10,0,0,1,b-10,c),a.lineTo(10,c),a.arcTo(10,10,0,0,1,0,c-10)):d===mxShapeMockupButton.prototype.cst.CHEVRON&&(a.moveTo(0,.1*c),a.arcTo(.0372*b,.1111*
234c,0,0,1,.0334*b,0),a.lineTo(.768*b,0),a.arcTo(.0722*b,.216*c,0,0,1,.8014*b,.0399*c),a.lineTo(.99*b,.4585*c),a.arcTo(.09*b,.1*c,0,0,1,.99*b,.5415*c),a.lineTo(.8014*b,.9568*c),a.arcTo(.0722*b,.216*c,0,0,1,.768*b,c),a.lineTo(.0334*b,c),a.arcTo(.0372*b,.1111*c,0,0,1,0,.9*c));a.close();a.fillAndStroke()};
235mxShapeMockupButton.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.setFontStyle(mxConstants.FONT_BOLD);a.text(b/2,c/2,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupButton.prototype.cst.SHAPE_BUTTON,mxShapeMockupButton);function mxShapeMockupHorButtonBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
236mxUtils.extend(mxShapeMockupHorButtonBar,mxShape);mxShapeMockupHorButtonBar.prototype.cst={MAIN_TEXT:"mainText",SHAPE_HOR_BUTTON_BAR:"mxgraph.mockup.buttons.horButtonBar",TEXT_COLOR:"textColor",TEXT_COLOR2:"textColor2",STROKE_COLOR2:"strokeColor2",FILL_COLOR2:"fillColor2",SELECTED:"+",TEXT_SIZE:"textSize"};
237mxShapeMockupHorButtonBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeMockupHorButtonBar.prototype.cst.MAIN_TEXT,"+Button 1, Button 2, Button 3").toString().split(","),g=mxUtils.getValue(this.style,mxShapeMockupHorButtonBar.prototype.cst.TEXT_COLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupHorButtonBar.prototype.cst.TEXT_COLOR2,"#ffffff"),k=mxUtils.getValue(this.style,mxShapeMockupHorButtonBar.prototype.cst.TEXT_SIZE,"17").toString(),l=mxUtils.getValue(this.style,
238mxConstants.STYLE_STROKECOLOR,"#666666"),m=mxUtils.getValue(this.style,mxShapeMockupHorButtonBar.prototype.cst.STROKE_COLOR2,"#c4c4c4"),n=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),p=mxUtils.getValue(this.style,mxShapeMockupHorButtonBar.prototype.cst.FILL_COLOR2,"#008cff"),q=f.length,t=Array(q),u=0,v=-1,r=0;r<q;r++){var w=f[r];w.charAt(0)===mxShapeMockupHorButtonBar.prototype.cst.SELECTED&&(w=f[r].substring(1),v=r);t[r]=mxUtils.getSizeForString(w,k,mxConstants.DEFAULT_FONTFAMILY).width;
239u+=t[r]}c=Math.max(c,1.5*k,20);u=10*q+u;b=Math.max(b,u);a.translate(d,e);this.background(a,b,c,10,q,t,5,u,l,m,n,p,v);a.setShadow(!1);a.setFontStyle(mxConstants.FONT_BOLD);for(r=d=0;r<q;r++)r===v?a.setFontColor(h):a.setFontColor(g),d+=5,this.buttonText(a,d,c,f[r],t[r],k,u,b),d=d+t[r]+5};
240mxShapeMockupHorButtonBar.prototype.background=function(a,d,e,b,c,f,g,h,k,l,m,n,p){a.begin();a.setStrokeColor(k);a.setFillColor(m);a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,e-b);a.arcTo(b,b,0,0,1,d-b,e);a.lineTo(b,e);a.arcTo(b,b,0,0,1,0,e-b);a.close();a.fillAndStroke();a.setStrokeColor(l);a.begin();for(l=1;l<c;l++)if(l!==p&&l!==p+1){for(var q=0,t=0;t<l;t++)q+=f[t]+2*g;q=q*d/h;a.moveTo(q,0);a.lineTo(q,e)}a.stroke();q=0;a.setFillColor(n);for(l=0;l<p;l++)q+=
241f[l]+2*g;q=q*d/h;f=(f[p]+2*g)*d/h;f+=q;0===p?(a.begin(),a.moveTo(0,b),a.arcTo(b,b,0,0,1,b,0),a.lineTo(f,0),a.lineTo(f,e),a.lineTo(b,e),a.arcTo(b,b,0,0,1,0,e-b),a.close(),a.fill()):p===c-1?(a.begin(),a.moveTo(q,0),a.lineTo(f-b,0),a.arcTo(b,b,0,0,1,f,b),a.lineTo(f,e-b),a.arcTo(b,b,0,0,1,f-b,e),a.lineTo(q,e),a.close(),a.fill()):-1!==p&&(a.begin(),a.moveTo(q,0),a.lineTo(f,0),a.lineTo(f,e),a.lineTo(q,e),a.close(),a.fill());a.setStrokeColor(k);a.setFillColor(m);a.begin();a.moveTo(0,b);a.arcTo(b,b,0,0,1,
242b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,e-b);a.arcTo(b,b,0,0,1,d-b,e);a.lineTo(b,e);a.arcTo(b,b,0,0,1,0,e-b);a.close();a.stroke()};mxShapeMockupHorButtonBar.prototype.buttonText=function(a,d,e,b,c,f,g,h){b.charAt(0)===mxShapeMockupHorButtonBar.prototype.cst.SELECTED&&(b=b.substring(1));a.begin();a.setFontSize(f);a.text((d+.5*c)*h/g,.5*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
243mxCellRenderer.registerShape(mxShapeMockupHorButtonBar.prototype.cst.SHAPE_HOR_BUTTON_BAR,mxShapeMockupHorButtonBar);function mxShapeMockupVerButtonBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupVerButtonBar,mxShape);
244mxShapeMockupVerButtonBar.prototype.cst={MAIN_TEXT:"mainText",SHAPE_VER_BUTTON_BAR:"mxgraph.mockup.buttons.verButtonBar",TEXT_COLOR:"textColor",TEXT_COLOR2:"textColor2",STROKE_COLOR2:"strokeColor2",FILL_COLOR2:"fillColor2",SELECTED:"+",TEXT_SIZE:"textSize"};
245mxShapeMockupVerButtonBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeMockupVerButtonBar.prototype.cst.MAIN_TEXT,"+Button 1, Button 2, Button 3").toString().split(","),g=mxUtils.getValue(this.style,mxShapeMockupVerButtonBar.prototype.cst.TEXT_COLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupVerButtonBar.prototype.cst.TEXT_COLOR2,"#ffffff"),k=mxUtils.getValue(this.style,mxShapeMockupVerButtonBar.prototype.cst.TEXT_SIZE,"17").toString(),l=mxUtils.getValue(this.style,
246mxConstants.STYLE_STROKECOLOR,"#666666"),m=mxUtils.getValue(this.style,mxShapeMockupVerButtonBar.prototype.cst.STROKE_COLOR2,"#c4c4c4"),n=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),p=mxUtils.getValue(this.style,mxShapeMockupVerButtonBar.prototype.cst.FILL_COLOR2,"#008cff"),q=f.length,t=0,u=-1,v=0;v<q;v++){var r=f[v];r.charAt(0)===mxShapeMockupVerButtonBar.prototype.cst.SELECTED&&(r=f[v].substring(1),u=v);r=mxUtils.getSizeForString(r,k,mxConstants.DEFAULT_FONTFAMILY).width;
247r>t&&(t=r)}var w=1.5*k,x=q*w;c=Math.max(c,x);b=Math.max(b,10+t);a.translate(d,e);this.background(a,b,c,10,q,5,q*w,l,m,n,p,u,w);a.setShadow(!1);r=0;a.setFontStyle(mxConstants.FONT_BOLD);for(v=0;v<q;v++)v===u?a.setFontColor(h):a.setFontColor(g),r+=5,this.buttonText(a,b,(v*w+.5*w)*c/x,f[v],k)};
248mxShapeMockupVerButtonBar.prototype.background=function(a,d,e,b,c,f,g,h,k,l,m,n,p){a.begin();a.setStrokeColor(h);a.setFillColor(l);a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,e-b);a.arcTo(b,b,0,0,1,d-b,e);a.lineTo(b,e);a.arcTo(b,b,0,0,1,0,e-b);a.close();a.fillAndStroke();a.setStrokeColor(k);a.begin();for(f=1;f<c;f++)f!==n&&f!==n+1&&(k=f*p*e/g,a.moveTo(0,k),a.lineTo(d,k));a.stroke();a.setFillColor(m);0===n?(a.begin(),g=p*e/g,a.moveTo(0,b),a.arcTo(b,b,0,0,
2491,b,0),a.lineTo(d-b,0),a.arcTo(b,b,0,0,1,d,b),a.lineTo(d,g),a.lineTo(0,g),a.close(),a.fill()):n===c-1?(a.begin(),c=e-p*e/g,a.moveTo(0,c),a.lineTo(d,c),a.lineTo(d,e-b),a.arcTo(b,b,0,0,1,d-b,e),a.lineTo(b,e),a.arcTo(b,b,0,0,1,0,e-b),a.close(),a.fill()):-1!==n&&(a.begin(),c=p*n*e/g,g=p*(n+1)*e/g,a.moveTo(0,c),a.lineTo(d,c),a.lineTo(d,g),a.lineTo(0,g),a.close(),a.fill());a.begin();a.setStrokeColor(h);a.setFillColor(l);a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,
250e-b);a.arcTo(b,b,0,0,1,d-b,e);a.lineTo(b,e);a.arcTo(b,b,0,0,1,0,e-b);a.close();a.stroke()};mxShapeMockupVerButtonBar.prototype.buttonText=function(a,d,e,b,c){b.charAt(0)===mxShapeMockupVerButtonBar.prototype.cst.SELECTED&&(b=b.substring(1));a.begin();a.setFontSize(c);a.text(.5*d,e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupVerButtonBar.prototype.cst.SHAPE_VER_BUTTON_BAR,mxShapeMockupVerButtonBar);
251function mxShapeMockupOnOffButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupOnOffButton,mxShape);mxShapeMockupOnOffButton.prototype.cst={SHAPE_ON_OFF_BUTTON:"mxgraph.mockup.buttons.onOffButton",BUTTON_STATE:"buttonState",STATE_ON:"on",STATE_OFF:"off",FILL_COLOR2:"fillColor2",MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize"};
252mxShapeMockupOnOffButton.prototype.customProperties=[{name:"buttonState",dispName:"Button State",type:"enum",enumList:[{val:"on",dispName:"On"},{val:"off",dispName:"Off"}]}];mxShapeMockupOnOffButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);b=Math.max(b,10);c=Math.max(c,10);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupOnOffButton.prototype.background=function(a,d,e,b,c){a.roundrect(0,0,b,c,10,10);a.fillAndStroke()};
253mxShapeMockupOnOffButton.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupOnOffButton.prototype.cst.BUTTON_STATE,mxShapeMockupOnOffButton.prototype.cst.STATE_ON);e=mxUtils.getValue(this.style,mxShapeMockupOnOffButton.prototype.cst.FILL_COLOR2,"#008cff");var f=mxUtils.getValue(this.style,mxShapeMockupOnOffButton.prototype.cst.TEXT_COLOR,"#ffffff,#999999").toString().split(","),g=mxUtils.getValue(this.style,mxShapeMockupOnOffButton.prototype.cst.MAIN_TEXT,"ON,OFF").toString().split(","),
254h=mxUtils.getValue(this.style,mxShapeMockupOnOffButton.prototype.cst.TEXT_SIZE,"17");d===mxShapeMockupOnOffButton.prototype.cst.STATE_ON?(a.setFillColor(e),a.setFontColor(f[0]),a.roundrect(0,0,.75*b,c,10,10)):(a.setFontColor(f[1]),a.roundrect(.25*b,0,.75*b,c,10,10));a.fillAndStroke();a.setFontSize(h);a.setFontStyle(mxConstants.FONT_BOLD);d===mxShapeMockupOnOffButton.prototype.cst.STATE_ON?a.text(.375*b,.5*c,0,0,g[0],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):d===mxShapeMockupOnOffButton.prototype.cst.STATE_OFF&&
255a.text(.625*b,.5*c,0,0,g[1],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupOnOffButton.prototype.cst.SHAPE_ON_OFF_BUTTON,mxShapeMockupOnOffButton);function mxShapeMockupRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupRRect,mxShape);mxShapeMockupRRect.prototype.cst={RRECT:"mxgraph.mockup.rrect",R_SIZE:"rSize"};
256mxShapeMockupRRect.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];mxShapeMockupRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupRRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupRRect.prototype.cst.RRECT,mxShapeMockupRRect);function mxShapeMockupAnchor(a,d,e,b){mxShape.call(this);this.bounds=a}
257mxUtils.extend(mxShapeMockupAnchor,mxShape);mxShapeMockupAnchor.prototype.cst={ANCHOR:"mxgraph.mockup.anchor"};mxShapeMockupAnchor.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];mxShapeMockupAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeMockupAnchor.prototype.cst.ANCHOR,mxShapeMockupAnchor);
258function mxShapeMockupTopButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupTopButton,mxShape);mxShapeMockupTopButton.prototype.cst={TOP_BUTTON:"mxgraph.mockup.topButton",R_SIZE:"rSize"};mxShapeMockupTopButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
259mxShapeMockupTopButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupTopButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupTopButton.prototype.cst.TOP_BUTTON,mxShapeMockupTopButton);
260function mxShapeMockupBottomButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupBottomButton,mxShape);mxShapeMockupBottomButton.prototype.cst={BOTTOM_BUTTON:"mxgraph.mockup.bottomButton",R_SIZE:"rSize"};mxShapeMockupBottomButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
261mxShapeMockupBottomButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupBottomButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c-d);a.arcTo(d,d,0,0,1,b-d,c);a.lineTo(d,c);a.arcTo(d,d,0,0,1,0,c-d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupBottomButton.prototype.cst.BOTTOM_BUTTON,mxShapeMockupBottomButton);
262function mxShapeMockupRightButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupRightButton,mxShape);mxShapeMockupRightButton.prototype.cst={RIGHT_BUTTON:"mxgraph.mockup.rightButton",R_SIZE:"rSize"};mxShapeMockupRightButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
263mxShapeMockupRightButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupRightButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(0,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c-d);a.arcTo(d,d,0,0,1,b-d,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupRightButton.prototype.cst.RIGHT_BUTTON,mxShapeMockupRightButton);
264function mxShapeMockupLeftButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupLeftButton,mxShape);mxShapeMockupLeftButton.prototype.cst={LEFT_BUTTON:"mxgraph.mockup.leftButton",R_SIZE:"rSize"};mxShapeMockupLeftButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
265mxShapeMockupLeftButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupLeftButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(b,0);a.lineTo(b,c);a.lineTo(d,c);a.arcTo(d,d,0,0,1,0,c-d);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupLeftButton.prototype.cst.LEFT_BUTTON,mxShapeMockupLeftButton);
266function mxShapeMockupVideoPlayer(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.barPos=20;this.barHeight=30}mxUtils.extend(mxShapeMockupVideoPlayer,mxShape);mxShapeMockupVideoPlayer.prototype.cst={FILL_COLOR2:"fillColor2",TEXT_COLOR:"textColor",STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",SHAPE_VIDEO_PLAYER:"mxgraph.mockup.containers.videoPlayer",BAR_POS:"barPos",BAR_HEIGHT:"barHeight"};
267mxShapeMockupVideoPlayer.prototype.customProperties=[{name:"fillColor2",dispName:"Fill2 Color",type:"color"},{name:"textColor",dispName:"Text Color",type:"color"},{name:"strokeColor2",dispName:"Stroke2 Color",type:"color"},{name:"strokeColor3",dispName:"Stroke3 Color",type:"color"},{name:"barPos",dispName:"Handle Position",type:"float",min:0,max:100,defVal:20},{name:"barHeight",dispName:"Video Bar Height",type:"float",min:0,defVal:30}];
268mxShapeMockupVideoPlayer.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),g=mxUtils.getValue(this.style,mxShapeMockupVideoPlayer.prototype.cst.FILL_COLOR2,"#c4c4c4"),h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),k=mxUtils.getValue(this.style,mxShapeMockupVideoPlayer.prototype.cst.STROKE_COLOR2,"#008cff"),l=mxUtils.getValue(this.style,mxShapeMockupVideoPlayer.prototype.cst.STROKE_COLOR3,"#c4c4c4"),m=mxUtils.getValue(this.style,
269mxShapeMockupVideoPlayer.prototype.cst.BAR_HEIGHT,"30");b=Math.max(b,5*m);c=Math.max(c,m+10);a.translate(d,e);this.background(a,d,e,b,c,f,h);a.setShadow(!1);this.otherShapes(a,d,e,b,c,g,h,k,l,m)};mxShapeMockupVideoPlayer.prototype.background=function(a,d,e,b,c,f,g){a.setFillColor(f);a.setStrokeColor(g);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};
270mxShapeMockupVideoPlayer.prototype.otherShapes=function(a,d,e,b,c,f,g,h,k,l){var m=mxUtils.getValue(this.style,mxShapeMockupVideoPlayer.prototype.cst.BAR_POS,"20"),m=Math.max(0,m),m=Math.min(100,m);d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1");e=c-l;m=8+(b-8-8)*m/100;a.setStrokeColor(h);a.begin();a.moveTo(0,e);a.lineTo(m,e);a.stroke();a.setStrokeColor(k);a.begin();a.moveTo(m,e);a.lineTo(b,e);a.stroke();a.setStrokeColor(g);a.begin();a.ellipse(m-8,e-8,16,16);a.fillAndStroke();a.begin();
271a.setStrokeWidth(d/2);a.ellipse(m-4,e-4,8,8);a.fillAndStroke();a.setStrokeWidth(d);g=.3*l;h=c-.5*(l+g);k=.3*l;a.setFillColor(f);a.setStrokeColor(f);a.begin();a.moveTo(k,h);a.lineTo(k+g,h+.5*g);a.lineTo(k,h+g);a.close();a.fillAndStroke();f=c-l;a.moveTo(l+.05*l,f+.4*l);a.lineTo(l+.15*l,f+.4*l);a.lineTo(l+.3*l,f+.25*l);a.lineTo(l+.3*l,f+.75*l);a.lineTo(l+.15*l,f+.6*l);a.lineTo(l+.05*l,f+.6*l);a.close();a.fillAndStroke();a.begin();a.moveTo(l+.4*l,f+.35*l);a.arcTo(.2*l,.3*l,0,0,1,l+.4*l,f+.65*l);a.moveTo(l+
272.425*l,f+.25*l);a.arcTo(.225*l,.35*l,0,0,1,l+.425*l,f+.75*l);a.stroke();b-=1.3*l;a.begin();a.moveTo(b+.1*l,f+.4*l);a.lineTo(b+.1*l,f+.3*l);a.lineTo(b+.25*l,f+.3*l);a.moveTo(b+.1*l,f+.6*l);a.lineTo(b+.1*l,f+.7*l);a.lineTo(b+.25*l,f+.7*l);a.moveTo(b+.9*l,f+.4*l);a.lineTo(b+.9*l,f+.3*l);a.lineTo(b+.75*l,f+.3*l);a.moveTo(b+.9*l,f+.6*l);a.lineTo(b+.9*l,f+.7*l);a.lineTo(b+.75*l,f+.7*l);a.stroke();b=mxUtils.getValue(this.style,mxShapeMockupVideoPlayer.prototype.cst.TEXT_COLOR,"#666666");a.begin();a.setFontSize(.5*
273l);a.setFontColor(b);a.text(1.9*l,c-.45*l,0,0,"0:00/3:53",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupVideoPlayer.prototype.cst.SHAPE_VIDEO_PLAYER,mxShapeMockupVideoPlayer);
274Graph.handleFactory[mxShapeMockupVideoPlayer.prototype.cst.SHAPE_VIDEO_PLAYER]=function(a){var d=[Graph.createHandle(a,["barPos"],function(a){var b=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"barPos",this.barPos)))),c=parseFloat(mxUtils.getValue(this.state.style,"barHeight",this.barHeight));return new mxPoint(a.x+(a.width-16)*b/a.width/100*a.width+8,a.y+a.height-c-20)},function(a,b){this.state.style.barPos=Math.round(1E3*Math.max(0,Math.min(100,100*(b.x-a.x)/a.width)))/1E3})];
275a=Graph.createHandle(a,["barHeight"],function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"barHeight",this.barHeight))));return new mxPoint(a.x+a.width-20,a.y+a.height-b)},function(a,b){this.state.style.barHeight=Math.round(1E3*Math.max(0,Math.min(a.height,a.y+a.height-b.y)))/1E3});d.push(a);return d};function mxShapeMockupAccordion(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
276mxUtils.extend(mxShapeMockupAccordion,mxShape);mxShapeMockupAccordion.prototype.cst={TEXT_COLOR:"textColor",TEXT_COLOR2:"textColor2",TEXT_SIZE:"textSize",SHAPE_ACCORDION:"mxgraph.mockup.containers.accordion",STROKE_COLOR2:"strokeColor2",FILL_COLOR2:"fillColor2",SELECTED:"+",MAIN_TEXT:"mainText"};
277mxShapeMockupAccordion.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeMockupAccordion.prototype.cst.MAIN_TEXT,"+Group 1, Group 2, Group 3").toString().split(","),g=mxUtils.getValue(this.style,mxShapeMockupAccordion.prototype.cst.TEXT_COLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupAccordion.prototype.cst.TEXT_COLOR2,"#ffffff"),k=mxUtils.getValue(this.style,mxShapeMockupAccordion.prototype.cst.TEXT_SIZE,"17").toString(),l=mxUtils.getValue(this.style,
278mxConstants.STYLE_STROKECOLOR,"#666666"),m=mxUtils.getValue(this.style,mxShapeMockupAccordion.prototype.cst.STROKE_COLOR2,"#c4c4c4"),n=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),p=mxUtils.getValue(this.style,mxShapeMockupAccordion.prototype.cst.FILL_COLOR2,"#008cff"),q=f.length,t=0,u=-1,v=0;v<q;v++){var r=f[v];r.charAt(0)===mxShapeMockupAccordion.prototype.cst.SELECTED&&(r=f[v].substring(1),u=v);r=mxUtils.getSizeForString(r,k,mxConstants.DEFAULT_FONTFAMILY).width;r>t&&(t=r)}var w=
2791.5*k;c=Math.max(c,q*w);b=Math.max(b,10+t);a.translate(d,e);this.background(a,b,c,10,q,5,q*w,l,m,n,p,u,w);a.setShadow(!1);for(v=r=0;v<q;v++)v===u?a.setFontColor(h):a.setFontColor(g),r+=5,this.buttonText(a,b,-1===u||v<=u?v*w+.5*w:c-(q-v-.5)*w,f[v],k)};
280mxShapeMockupAccordion.prototype.background=function(a,d,e,b,c,f,g,h,k,l,m,n,p){a.begin();a.setStrokeColor(h);a.setFillColor(l);a.moveTo(0,0);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(0,e);a.close();a.fillAndStroke();a.setStrokeColor(k);a.begin();for(b=1;b<c;b++)b!==n&&(f=-1===n||b<n?b*p:e-(c-b)*p,a.moveTo(0,f),a.lineTo(d,f));a.stroke();a.setStrokeColor(mxConstants.NONE);a.setFillColor(m);-1!==n&&(a.begin(),c=p*n,n=p*(n+1),a.moveTo(0,c),a.lineTo(d,c),a.lineTo(d,n),a.lineTo(0,n),a.close(),a.fill());a.begin();
281a.setStrokeColor(h);a.setFillColor(l);a.moveTo(0,0);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(0,e);a.close();a.stroke()};mxShapeMockupAccordion.prototype.buttonText=function(a,d,e,b,c){b.charAt(0)===mxShapeMockupAccordion.prototype.cst.SELECTED&&(b=b.substring(1));a.begin();a.setFontSize(c);a.text(.5*d,e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupAccordion.prototype.cst.SHAPE_ACCORDION,mxShapeMockupAccordion);
282function mxShapeMockupBrowserWindow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupBrowserWindow,mxShape);mxShapeMockupBrowserWindow.prototype.cst={STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",MAIN_TEXT:"mainText",SHAPE_BROWSER_WINDOW:"mxgraph.mockup.containers.browserWindow"};
283mxShapeMockupBrowserWindow.prototype.customProperties=[{name:"strokeColor2",dispName:"Stroke2 Color",type:"color"},{name:"strokeColor3",dispName:"Stroke3 Color",type:"color"}];
284mxShapeMockupBrowserWindow.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupBrowserWindow.prototype.cst.STROKE_COLOR2,"#008cff"),k=mxUtils.getValue(this.style,mxShapeMockupBrowserWindow.prototype.cst.STROKE_COLOR3,"#c4c4c4");b=Math.max(b,260);c=Math.max(c,110);a.translate(d,e);this.background(a,d,e,b,c,f,g);a.setShadow(!1);
285this.otherShapes(a,d,e,b,c,g,k,h)};mxShapeMockupBrowserWindow.prototype.background=function(a,d,e,b,c,f,g){a.setFillColor(f);a.setStrokeColor(g);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};
286mxShapeMockupBrowserWindow.prototype.otherShapes=function(a,d,e,b,c,f,g,h){d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1");e=mxUtils.getValue(this.style,mxShapeMockupBrowserWindow.prototype.cst.MAIN_TEXT,"http://www.draw.io,Page 1").toString().split(",");a.setStrokeColor(f);a.ellipse(b-75,5,20,20);a.stroke();a.ellipse(b-50,5,20,20);a.stroke();a.setStrokeColor(h);a.ellipse(b-25,5,20,20);a.stroke();a.setStrokeColor(g);a.begin();a.moveTo(0,40);a.lineTo(30,40);a.lineTo(30,15);a.arcTo(5,
2875,0,0,1,35,10);a.lineTo(170,10);a.arcTo(5,5,0,0,1,175,15);a.lineTo(175,40);a.lineTo(b,40);a.stroke();a.begin();a.moveTo(0,110);a.lineTo(b,110);a.stroke();a.begin();a.moveTo(100,60);a.arcTo(5,5,0,0,1,105,55);a.lineTo(b-15,55);a.arcTo(5,5,0,0,1,b-10,60);a.lineTo(b-10,85);a.arcTo(5,5,0,0,1,b-15,90);a.lineTo(105,90);a.arcTo(5,5,0,0,1,100,85);a.close();a.stroke();b=mxUtils.getValue(this.style,mxShapeMockupBrowserWindow.prototype.cst.TEXT_COLOR,"#666666");a.setFontColor(b);a.setFontSize(17);a.text(65,25,
2880,0,e[1],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(130,73,0,0,e[0],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.stroke();a.translate(37,17);a.begin();a.moveTo(0,0);a.lineTo(11,0);a.lineTo(15,4);a.lineTo(15,18);a.lineTo(0,18);a.close();a.stroke();a.setStrokeWidth(.5*d);a.begin();a.moveTo(11,0);a.lineTo(11,4);a.lineTo(15,5);a.stroke();a.setStrokeWidth(2*d);a.translate(70,47);a.begin();a.moveTo(0,0);a.lineTo(11,0);a.lineTo(15,4);a.lineTo(15,18);a.lineTo(0,
28918);a.close();a.stroke();a.setStrokeWidth(.5*d);a.begin();a.moveTo(11,0);a.lineTo(11,4);a.lineTo(15,5);a.stroke();a.setFillColor(g);a.begin();a.setStrokeWidth(2*d);a.translate(-95,0);a.moveTo(0,10);a.lineTo(10,0);a.lineTo(10,6);a.lineTo(20,6);a.lineTo(20,14);a.lineTo(10,14);a.lineTo(10,20);a.close();a.fillAndStroke();a.begin();a.translate(30,0);a.moveTo(20,10);a.lineTo(10,0);a.lineTo(10,6);a.lineTo(0,6);a.lineTo(0,14);a.lineTo(10,14);a.lineTo(10,20);a.close();a.fillAndStroke();a.begin();a.translate(30,
2900);a.moveTo(20*.78,13.3);a.arcTo(6,6,0,1,1,13.5,5.04);a.lineTo(20*.595,6.5);a.lineTo(19.8,20*.415);a.lineTo(18,.8);a.lineTo(20*.815,2.4);a.arcTo(9.8,9.8,0,1,0,20*.92,16);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupBrowserWindow.prototype.cst.SHAPE_BROWSER_WINDOW,mxShapeMockupBrowserWindow);function mxShapeMockupUserMale(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupUserMale,mxShape);
291mxShapeMockupUserMale.prototype.cst={STROKE_COLOR2:"strokeColor2",SHAPE_MALE_USER:"mxgraph.mockup.containers.userMale"};mxShapeMockupUserMale.prototype.customProperties=[{name:"strokeColor2",dispName:"Stroke2 Color",type:"color"}];
292mxShapeMockupUserMale.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupUserMale.prototype.cst.STROKE_COLOR2,"#008cff");a.translate(d,e);this.background(a,d,e,b,c,f,g);a.setShadow(!1);this.otherShapes(a,d,e,b,c,h,g)};
293mxShapeMockupUserMale.prototype.background=function(a,d,e,b,c,f,g){a.setFillColor(f);a.setStrokeColor(g);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};
294mxShapeMockupUserMale.prototype.otherShapes=function(a,d,e,b,c,f,g){a.setStrokeColor(f);a.setLineCap("round");a.setLineJoin("round");a.begin();a.moveTo(.5*b,.6721*c);a.curveTo(.3891*b,.6721*c,.31*b,.5648*c,.31*b,.3962*c);a.curveTo(.31*b,.3656*c,.3012*b,.3473*c,.3051*b,.3227*c);a.curveTo(.3126*b,.2762*c,.3124*b,.2212*c,.332*b,.1939*c);a.curveTo(.354*b,.1633*c,.4382*b,.12*c,.5*b,.12*c);a.stroke();a.begin();a.moveTo(.3046*b,.3716*c);a.curveTo(.3046*b,.3716*c,.3046*b,.341*c,.2826*b,.3594*c);a.curveTo(.2606*
295b,.3778*c,.2661*b,.4452*c,.266*b,.4452*c);a.quadTo(.2715*b,.4942*c,.277*b,.5065*c);a.curveTo(.2825*b,.5187*c,.277*b,.5187*c,.2935*b,.5371*c);a.curveTo(.31*b,.5554*c,.3375*b,.5615*c,.3375*b,.5616*c);a.stroke();a.begin();a.moveTo(.3829*b,.6213*c);a.curveTo(.3829*b,.6213*c,.405*b,.7704*c,.2921*b,.7888*c);a.curveTo(.2536*b,.795*c,.1328*b,.85*c,.1052*b,.8745*c);a.curveTo(.0776*b,.899*c,.0641*b,.9316*c,.0571*b,.9622*c);a.quadTo(.05*b,c,.05*b,c);a.stroke();a.begin();a.moveTo(.3427*b,.4185*c);a.curveTo(.3427*
296b,.4185*c,.3427*b,.3839*c,.3427*b,.3593*c);a.curveTo(.3427*b,.3348*c,.3663*b,.3103*c,.3718*b,.3041*c);a.curveTo(.3773*b,.298*c,.3822*b,.2673*c,.3877*b,.2551*c);a.curveTo(.3932*b,.2429*c,.4095*b,.2429*c,.4259*b,.2367*c);a.curveTo(.4424*b,.2306*c,.4984*b,.2357*c,.4984*b,.2357*c);a.stroke();a.begin();a.moveTo(.365*b,.7427*c);a.curveTo(.365*b,.7427*c,.3772*b,.8076*c,.4286*b,.8224*c);a.curveTo(.4816*b,.8377*c,.5028*b,.8347*c,.5028*b,.8347*c);a.stroke();a.begin();a.moveTo(.3322*b,.7764*c);a.curveTo(.3322*
297b,.7764*c,.3556*b,.8386*c,.4038*b,.8684*c);a.curveTo(.4533*b,.8991*c,.5029*b,.8929*c,.5029*b,.8929*c);a.stroke();a.begin();a.moveTo(.2717*b,.9*c);a.lineTo(.2717*b,c);a.stroke();a.begin();a.moveTo(.1671*b,.8991*c);a.curveTo(.1671*b,.8991*c,.1726*b,.9114*c,.1836*b,.9481*c);a.curveTo(.1946*b,.9849*c,.2*b,c,.2*b,c);a.stroke();a.begin();a.moveTo(.5*b,.6721*c);a.curveTo(.6109*b,.6721*c,.69*b,.5648*c,.69*b,.3962*c);a.curveTo(.69*b,.3656*c,.6988*b,.3473*c,.6949*b,.3227*c);a.curveTo(.6847*b,.2762*c,.6876*
298b,.2212*c,.668*b,.1939*c);a.curveTo(.646*b,.1633*c,.5618*b,.12*c,.5*b,.12*c);a.stroke();a.begin();a.moveTo(.6954*b,.3716*c);a.curveTo(.6954*b,.3716*c,.6954*b,.341*c,.7174*b,.3594*c);a.curveTo(.7394*b,.3778*c,.7339*b,.4452*c,.734*b,.4452*c);a.quadTo(.7285*b,.4942*c,.723*b,.5065*c);a.curveTo(.7175*b,.5187*c,.723*b,.5187*c,.7065*b,.5371*c);a.curveTo(.69*b,.5554*c,.6625*b,.5615*c,.6625*b,.5616*c);a.stroke();a.begin();a.moveTo(.6171*b,.6213*c);a.curveTo(.6171*b,.6213*c,.595*b,.7704*c,.7079*b,.7888*c);
299a.curveTo(.7464*b,.795*c,.8672*b,.85*c,.8948*b,.8745*c);a.curveTo(.9224*b,.899*c,.9359*b,.9316*c,.9429*b,.9622*c);a.quadTo(.95*b,c,.95*b,c);a.stroke();a.begin();a.moveTo(.6573*b,.4185*c);a.curveTo(.6573*b,.4185*c,.6573*b,.3839*c,.6573*b,.3593*c);a.curveTo(.6573*b,.3348*c,.6337*b,.3103*c,.6282*b,.3041*c);a.curveTo(.6227*b,.298*c,.6178*b,.2673*c,.6123*b,.2551*c);a.curveTo(.6068*b,.2429*c,.5905*b,.2429*c,.5741*b,.2367*c);a.curveTo(.5576*b,.2306*c,.5016*b,.2357*c,.5016*b,.2357*c);a.stroke();a.begin();
300a.moveTo(.635*b,.7427*c);a.curveTo(.635*b,.7427*c,.6228*b,.8076*c,.5714*b,.8224*c);a.curveTo(.5184*b,.8377*c,.4972*b,.8347*c,.4972*b,.8347*c);a.stroke();a.begin();a.moveTo(.6678*b,.7764*c);a.curveTo(.6678*b,.7764*c,.6444*b,.8386*c,.5962*b,.8684*c);a.curveTo(.5467*b,.8991*c,.4971*b,.8929*c,.4971*b,.8929*c);a.stroke();a.begin();a.moveTo(.7283*b,.9*c);a.lineTo(.7283*b,c);a.stroke();a.begin();a.moveTo(.8329*b,.8991*c);a.curveTo(.8329*b,.8991*c,.8274*b,.9114*c,.8164*b,.9481*c);a.curveTo(.8054*b,.9849*
301c,.8*b,c,.8*b,c);a.stroke();a.setStrokeColor(g);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeMockupUserMale.prototype.cst.SHAPE_MALE_USER,mxShapeMockupUserMale);function mxShapeMockupUserFemale(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupUserFemale,mxShape);mxShapeMockupUserFemale.prototype.cst={STROKE_COLOR2:"strokeColor2",SHAPE_FEMALE_USER:"mxgraph.mockup.containers.userFemale"};
302mxShapeMockupUserFemale.prototype.customProperties=[{name:"strokeColor2",dispName:"Stroke2 Color",type:"color"}];
303mxShapeMockupUserFemale.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupUserFemale.prototype.cst.STROKE_COLOR2,"#008cff");a.translate(d,e);this.background(a,d,e,b,c,f,g);a.setShadow(!1);this.otherShapes(a,d,e,b,c,h,g)};
304mxShapeMockupUserFemale.prototype.background=function(a,d,e,b,c,f,g){a.setFillColor(f);a.setStrokeColor(g);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};
305mxShapeMockupUserFemale.prototype.otherShapes=function(a,d,e,b,c,f,g){a.setStrokeColor(f);a.setLineCap("round");a.setLineJoin("round");a.begin();a.moveTo(.3148*b,.468*c);a.curveTo(.3045*b,.3195*c,.3176*b,.2383*c,.3302*b,.2069*c);a.curveTo(.3508*b,.1557*c,.44*b,.1156*c,.5026*b,.1156*c);a.stroke();a.begin();a.moveTo(.5029*b,.6728*c);a.curveTo(.4616*b,.6728*c,.4018*b,.6177*c,.3663*b,.5653*c);a.stroke();a.begin();a.moveTo(.3108*b,.4021*c);a.curveTo(.3108*b,.4021*c,.3091*b,.3765*c,.2891*b,.3933*c);a.curveTo(.2691*
306b,.4101*c,.2782*b,.4661*c,.2782*b,.4661*c);a.quadTo(.2862*b,.5067*c,.2922*b,.5166*c);a.curveTo(.2982*b,.5265*c,.2929*b,.5268*c,.3097*b,.5412*c);a.stroke();a.begin();a.moveTo(.4038*b,.6176*c);a.curveTo(.4038*b,.6176*c,.4324*b,.7778*c,.3375*b,.7963*c);a.curveTo(.3054*b,.8026*c,.1753*b,.8578*c,.15*b,.8826*c);a.curveTo(.1247*b,.9074*c,.1126*b,.9412*c,.1063*b,.9722*c);a.curveTo(.1*b,1.0032*c,.1*b,c,.1*b,c);a.stroke();a.begin();a.moveTo(.6377*b,.3365*c);a.curveTo(.5927*b,.2634*c,.5206*b,.2634*c,.5206*b,
307.2634*c);a.quadTo(.3769*b,.2591*c,.3713*b,.2659*c);a.curveTo(.3657*b,.2727*c,.3405*b,.3674*c,.3405*b,.3946*c);a.curveTo(.3405*b,.4218*c,.3405*b,.4602*c,.3405*b,.4602*c);a.quadTo(.3546*b,.6401*c,.3546*b,.6626*c);a.stroke();a.begin();a.moveTo(.2931*b,.818*c);a.curveTo(.2931*b,.818*c,.3224*b,.9159*c,.3826*b,.9677*c);a.curveTo(.4446*b,1.01*c,.5065*b,c,.5065*b,c);a.stroke();a.begin();a.moveTo(.2995*b,.9106*c);a.lineTo(.2995*b,c);a.stroke();a.begin();a.moveTo(.2081*b,.907*c);a.curveTo(.2081*b,.907*c,.2131*
308b,.9194*c,.2232*b,.9565*c);a.curveTo(.2333*b,.9936*c,.24*b,c,.24*b,c);a.stroke();a.begin();a.moveTo(.6951*b,.4988*c);a.curveTo(.6951*b,.4662*c,.7042*b,.3453*c,.7*b,.32*c);a.curveTo(.6923*b,.273*c,.6926*b,.2175*c,.6727*b,.19*c);a.curveTo(.6504*b,.159*c,.5651*b,.1157*c,.5025*b,.1157*c);a.stroke();a.begin();a.moveTo(.5029*b,.6728*c);a.curveTo(.5546*b,.6728*c,.6107*b,.6316*c,.6461*b,.5602*c);a.stroke();a.begin();a.moveTo(.696*b,.4022*c);a.curveTo(.696*b,.4022*c,.6983*b,.3766*c,.7179*b,.4106*c);a.curveTo(.7375*
309b,.4278*c,.7273*b,.4836*c,.7273*b,.4836*c);a.quadTo(.7184*b,.5241*c,.7123*b,.5338*c);a.curveTo(.7062*b,.5436*c,.7114*b,.544*c,.6943*b,.558*c);a.stroke();a.begin();a.moveTo(.5995*b,.6278*c);a.curveTo(.5995*b,.6278*c,.5724*b,.7777*c,.6663*b,.7963*c);a.curveTo(.6984*b,.8026*c,.8386*b,.8578*c,.8638*b,.8826*c);a.curveTo(.8891*b,.9074*c,.9016*b,.9412*c,.9079*b,.9722*c);a.curveTo(.9142*b,1.0032*c,.91*b,c,.91*b,c);a.stroke();a.begin();a.moveTo(.6545*b,.6802*c);a.lineTo(.6545*b,.3986*c);a.stroke();a.begin();
310a.moveTo(.7132*b,.8078*c);a.curveTo(.7132*b,.8078*c,.6839*b,.916*c,.6237*b,.9678*c);a.curveTo(.5617*b,1.01*c,.4998*b,c,.4998*b,c);a.stroke();a.begin();a.moveTo(.7111*b,.9106*c);a.lineTo(.7111*b,c);a.stroke();a.begin();a.moveTo(.8075*b,.907*c);a.curveTo(.8075*b,.907*c,.8025*b,.9194*c,.7924*b,.9565*c);a.curveTo(.7823*b,.9936*c,.775*b,c,.775*b,c);a.stroke();a.begin();a.moveTo(.3148*b,.5448*c);a.curveTo(.3148*b,.5448*c,.32*b,.6216*c,.3148*b,.6677*c);a.quadTo(.2891*b,.7343*c,.2891*b,.7343*c);a.lineTo(.3303*
311b,.7625*c);a.lineTo(.39*b,.7625*c);a.stroke();a.begin();a.moveTo(.6852*b,.5448*c);a.curveTo(.6852*b,.5448*c,.68*b,.6216*c,.6852*b,.6677*c);a.quadTo(.7109*b,.7343*c,.7109*b,.7343*c);a.lineTo(.6697*b,.7625*c);a.lineTo(.62*b,.7625*c);a.stroke();a.setStrokeColor(g);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeMockupUserFemale.prototype.cst.SHAPE_FEMALE_USER,mxShapeMockupUserFemale);
312function mxShapeMockupGroup(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupGroup,mxShape);mxShapeMockupGroup.prototype.cst={MAIN_TEXT:"mainText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",FILL_COLOR2:"fillColor2",SHAPE_GROUP:"mxgraph.mockup.containers.group"};
313mxShapeMockupGroup.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupGroup.prototype.cst.MAIN_TEXT,"Group").toString(),g=mxUtils.getValue(this.style,mxShapeMockupGroup.prototype.cst.TEXT_SIZE,"17"),h=mxUtils.getSizeForString(f,g,mxConstants.DEFAULT_FONTFAMILY).width;0===h&&(h=Math.max(80,h));a.translate(d,e);b=Math.max(b,h+15);c=Math.max(c,g+10);this.background(a,b,c,h,g);a.setShadow(!1);this.foreground(a,b,c,h,g);this.buttonText(a,b,c,f,g)};
314mxShapeMockupGroup.prototype.background=function(a,d,e,b,c){a.roundrect(0,.5*c,d,e-.5*c,5,5);a.fillAndStroke()};mxShapeMockupGroup.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupGroup.prototype.cst.FILL_COLOR2,"#000000");a.setFillColor(d);a.roundrect(3,0,b+6,1.5*c,.25*c,.25*c);a.fill()};
315mxShapeMockupGroup.prototype.buttonText=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupGroup.prototype.cst.TEXT_COLOR,"#ffffff");a.setFontColor(d);a.setFontSize(c);a.text(6,0,0,0,b,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_TOP,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupGroup.prototype.cst.SHAPE_GROUP,mxShapeMockupGroup);function mxShapeMockupWindow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
316mxUtils.extend(mxShapeMockupWindow,mxShape);mxShapeMockupWindow.prototype.cst={MAIN_TEXT:"mainText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",SHAPE_WINDOW:"mxgraph.mockup.containers.window"};mxShapeMockupWindow.prototype.customProperties=[{name:"strokeColor2",dispName:"Stroke2 Color",type:"color"},{name:"strokeColor3",dispName:"Stroke3 Color",type:"color"}];
317mxShapeMockupWindow.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupWindow.prototype.cst.STROKE_COLOR2,"#008cff"),k=mxUtils.getValue(this.style,mxShapeMockupWindow.prototype.cst.STROKE_COLOR3,"#c4c4c4");a.translate(d,e);c=Math.max(c,30);b=Math.max(b,90);this.background(a,d,e,b,c,f,g);a.setShadow(!1);this.otherShapes(a,
318d,e,b,c,g,k,h)};mxShapeMockupWindow.prototype.background=function(a,d,e,b,c,f,g){a.setFillColor(f);a.setStrokeColor(g);a.rect(0,0,b,c);a.fillAndStroke()};
319mxShapeMockupWindow.prototype.otherShapes=function(a,d,e,b,c,f,g,h){mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1");a.setStrokeColor(f);a.ellipse(b-75,5,20,20);a.stroke();a.ellipse(b-50,5,20,20);a.stroke();a.setStrokeColor(h);a.ellipse(b-25,5,20,20);a.stroke();a.setStrokeColor(g);a.begin();a.moveTo(0,30);a.lineTo(b,30);a.stroke();d=mxUtils.getValue(this.style,mxShapeMockupWindow.prototype.cst.MAIN_TEXT,"Window Title");e=mxUtils.getValue(this.style,mxShapeMockupWindow.prototype.cst.TEXT_COLOR,
320"#666666");b=mxUtils.getValue(this.style,mxShapeMockupWindow.prototype.cst.TEXT_SIZE,"17").toString();a.setFontColor(e);a.setFontSize(b);a.text(10,15,0,0,d,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupWindow.prototype.cst.SHAPE_WINDOW,mxShapeMockupWindow);function mxShapeMockupHorTabBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupHorTabBar,mxShape);
321mxShapeMockupHorTabBar.prototype.cst={BLOCK:"block",CONE:"cone",HALF_CONE:"halfCone",ROUND:"round",TEXT_SIZE:"textSize",TAB_NAMES:"tabs",TAB_STYLE:"tabStyle",STYLE_FILLCOLOR2:"fillColor2",TEXT_COLOR:"textColor",SEL_TEXT_COLOR:"textColor2",SHAPE_HOR_TAB_BAR:"mxgraph.mockup.containers.horTabBar"};
322mxShapeMockupHorTabBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeMockupHorTabBar.prototype.cst.TEXT_SIZE,"17").toString(),g=mxUtils.getValue(this.style,mxShapeMockupHorTabBar.prototype.cst.TAB_NAMES,"Tab 1,+Tab 2,Tab 3").toString().split(","),h=1.5*f,k=g.length,l=20+5*(k-1)+20*k,m=[],n=-1,p=0;p<k;p++){var q=g[p];"+"===q.charAt(0)&&(q=q.substring(1),n=p);currW=mxUtils.getSizeForString(q,f,mxConstants.DEFAULT_FONTFAMILY).width;m[p]=0===currW?40:currW;
323l+=m[p]}b=Math.max(b,l);c=Math.max(c,h+5);a.translate(d,e);this.background(a,b,c,5,h);a.setShadow(!1);this.backTabs(a,b,c,5,h,10,5,10,k,m,n);this.focusTab(a,b,c,5,h,10,5,10,k,m,n);this.tabText(a,b,c,5,h,10,5,10,k,m,n,g)};mxShapeMockupHorTabBar.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,c+b);a.arcTo(b,b,0,0,1,b,c);a.lineTo(d-b,c);a.arcTo(b,b,0,0,1,d,c+b);a.lineTo(d,e);a.lineTo(0,e);a.close();a.fillAndStroke()};
324mxShapeMockupHorTabBar.prototype.backTabs=function(a,d,e,b,c,f,g,h,k,l,m){d=mxUtils.getValue(this.style,mxShapeMockupHorTabBar.prototype.cst.TAB_STYLE,mxShapeMockupHorTabBar.prototype.cst.BLOCK);for(e=0;e<k;e++){var n=l[e]+2*h;m!==e&&(d===mxShapeMockupHorTabBar.prototype.cst.BLOCK?a.rect(f,0,n,c):d===mxShapeMockupHorTabBar.prototype.cst.CONE?(a.begin(),a.moveTo(f,c),a.lineTo(f+.5*h,0),a.lineTo(f+n-.5*h,0),a.lineTo(f+n,c)):d===mxShapeMockupHorTabBar.prototype.cst.HALF_CONE?(a.begin(),a.moveTo(f,c),
325a.lineTo(f+.5*h,0),a.lineTo(f+n,0),a.lineTo(f+n,c)):d===mxShapeMockupHorTabBar.prototype.cst.ROUND&&(a.begin(),a.moveTo(f-b,c),a.arcTo(b,b,0,0,0,f,c-b),a.lineTo(f,b),a.arcTo(b,b,0,0,1,f+b,0),a.lineTo(f+n-b,0),a.arcTo(b,b,0,0,1,f+n,b),a.lineTo(f+n,c-b),a.arcTo(b,b,0,0,0,f+n+b,c)),a.fillAndStroke());f=f+n+g}};
326mxShapeMockupHorTabBar.prototype.focusTab=function(a,d,e,b,c,f,g,h,k,l,m){e=mxUtils.getValue(this.style,mxShapeMockupHorTabBar.prototype.cst.TAB_STYLE,mxShapeMockupHorTabBar.prototype.cst.BLOCK);k=mxUtils.getValue(this.style,mxShapeMockupHorTabBar.prototype.cst.STYLE_FILLCOLOR2,"#008cff");a.setStrokeColor(k);a.setFillColor(k);for(k=0;k<=m;k++){var n=l[k]+2*h;m===k&&(e===mxShapeMockupHorTabBar.prototype.cst.BLOCK?(a.begin(),a.moveTo(0,c+b),a.arcTo(b,b,0,0,1,b,c),a.lineTo(f,c),a.lineTo(f,0),a.lineTo(f+
327n,0),a.lineTo(f+n,c),a.lineTo(d-b,c),a.arcTo(b,b,0,0,1,d,c+b),a.close()):e===mxShapeMockupHorTabBar.prototype.cst.CONE?(a.begin(),a.moveTo(0,c+b),a.arcTo(b,b,0,0,1,b,c),a.lineTo(f,c),a.lineTo(f+.5*h,0),a.lineTo(f+n-.5*h,0),a.lineTo(f+n,c),a.lineTo(d-b,c),a.arcTo(b,b,0,0,1,d,c+b),a.close()):e===mxShapeMockupHorTabBar.prototype.cst.HALF_CONE?(a.begin(),a.moveTo(0,c+b),a.arcTo(b,b,0,0,1,b,c),a.lineTo(f,c),a.lineTo(f+.5*h,0),a.lineTo(f+n,0),a.lineTo(f+n,c),a.lineTo(d-b,c),a.arcTo(b,b,0,0,1,d,c+b),a.close()):
328e===mxShapeMockupHorTabBar.prototype.cst.ROUND&&(a.begin(),a.moveTo(0,c+b),a.arcTo(b,b,0,0,1,b,c),a.lineTo(f-b,c),a.arcTo(b,b,0,0,0,f,c-b),a.lineTo(f,b),a.arcTo(b,b,0,0,1,f+b,0),a.lineTo(f+n-b,0),a.arcTo(b,b,0,0,1,f+n,b),a.lineTo(f+n,c-b),a.arcTo(b,b,0,0,0,f+n+b,c),a.lineTo(d-b,c),a.arcTo(b,b,0,0,1,d,c+b),a.close()),a.fillAndStroke());f=f+n+g}};
329mxShapeMockupHorTabBar.prototype.tabText=function(a,d,e,b,c,f,g,h,k,l,m,n){d=mxUtils.getValue(this.style,mxShapeMockupHorTabBar.prototype.cst.TEXT_COLOR,"#666666");e=mxUtils.getValue(this.style,mxShapeMockupHorTabBar.prototype.cst.SEL_TEXT_COLOR,"#ffffff");b=mxUtils.getValue(this.style,mxShapeMockupHorTabBar.prototype.cst.TEXT_SIZE,"17").toString();a.setFontColor(d);a.setFontSize(b);for(b=0;b<k;b++){var p=n[b];b===m&&a.setFontColor(e);"+"===p.charAt(0)&&(p=p.substring(1));var q=l[b]+2*h;a.text(f+
330h,.5*c,0,0,p,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);f=f+q+g;b===m&&a.setFontColor(d)}};mxCellRenderer.registerShape(mxShapeMockupHorTabBar.prototype.cst.SHAPE_HOR_TAB_BAR,mxShapeMockupHorTabBar);function mxShapeMockupVerTabBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupVerTabBar,mxShape);
331mxShapeMockupVerTabBar.prototype.cst={BLOCK:"block",ROUND:"round",TEXT_SIZE:"textSize",TAB_NAMES:"tabs",TAB_STYLE:"tabStyle",STYLE_FILLCOLOR2:"fillColor2",TEXT_COLOR:"textColor",SEL_TEXT_COLOR:"textColor2",SHAPE_VER_TAB_BAR:"mxgraph.mockup.containers.verTabBar"};
332mxShapeMockupVerTabBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeMockupVerTabBar.prototype.cst.TEXT_SIZE,"17").toString(),g=mxUtils.getValue(this.style,mxShapeMockupVerTabBar.prototype.cst.TAB_NAMES,"Tab 1,+Tab 2,Tab 3").toString().split(","),h=1.5*f,k=g.length,l=[],m=-1,n=0;n<k;n++){var p=g[n];"+"===p.charAt(0)&&(p=p.substring(1),m=n);p=mxUtils.getSizeForString(p,f,mxConstants.DEFAULT_FONTFAMILY).width;l[n]=0===p?42:p}f=20+Math.max.apply(Math,l);
333b=Math.max(b,f+5);c=Math.max(c,20+k*h+5*(k-1));a.translate(d,e);this.background(a,b,c,5,f);a.setShadow(!1);this.backTabs(a,b,c,5,h,f,10,5,10,k,l,m);this.focusTab(a,b,c,5,h,f,10,5,10,k,l,m);this.tabText(a,b,c,5,h,f,10,5,10,k,l,m,g)};mxShapeMockupVerTabBar.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(c+b,e);a.arcTo(b,b,0,0,1,c,e-b);a.lineTo(c,b);a.arcTo(b,b,0,0,1,c+b,0);a.lineTo(d,0);a.lineTo(d,e);a.close();a.fillAndStroke()};
334mxShapeMockupVerTabBar.prototype.backTabs=function(a,d,e,b,c,f,g,h,k,l,m,n){d=mxUtils.getValue(this.style,mxShapeMockupVerTabBar.prototype.cst.TAB_STYLE,mxShapeMockupVerTabBar.prototype.cst.BLOCK);for(e=0;e<l;e++)n!==e&&(d===mxShapeMockupVerTabBar.prototype.cst.BLOCK?a.rect(0,g,f,c):d===mxShapeMockupVerTabBar.prototype.cst.ROUND&&(a.begin(),a.moveTo(f,g+c+b),a.arcTo(b,b,0,0,0,f-b,g+c),a.lineTo(b,g+c),a.arcTo(b,b,0,0,1,0,g+c-b),a.lineTo(0,g+b),a.arcTo(b,b,0,0,1,b,g),a.lineTo(f-b,g),a.arcTo(b,b,0,0,
3350,f,g-b)),a.fillAndStroke()),g=g+c+h};
336mxShapeMockupVerTabBar.prototype.focusTab=function(a,d,e,b,c,f,g,h,k,l,m,n){d=mxUtils.getValue(this.style,mxShapeMockupVerTabBar.prototype.cst.TAB_STYLE,mxShapeMockupVerTabBar.prototype.cst.BLOCK);k=mxUtils.getValue(this.style,mxShapeMockupVerTabBar.prototype.cst.STYLE_FILLCOLOR2,"#008cff");-1!==n&&(g+=(c+h)*n,a.setStrokeColor(k),a.setFillColor(k),d===mxShapeMockupVerTabBar.prototype.cst.BLOCK?(a.begin(),a.moveTo(f+b,e),a.arcTo(b,b,0,0,1,f,e-b),a.lineTo(f,g+c),a.lineTo(0,g+c),a.lineTo(0,g),a.lineTo(f,
337g),a.lineTo(f,b),a.arcTo(b,b,0,0,1,f+b,0),a.close()):d===mxShapeMockupVerTabBar.prototype.cst.ROUND&&(a.begin(),a.moveTo(f+b,e),a.arcTo(b,b,0,0,1,f,e-b),a.lineTo(f,g+c+b),a.arcTo(b,b,0,0,0,f-b,g+c),a.lineTo(b,g+c),a.arcTo(b,b,0,0,1,0,g+c-b),a.lineTo(0,g+b),a.arcTo(b,b,0,0,1,b,g),a.lineTo(f-b,g),a.arcTo(b,b,0,0,0,f,g-b),a.lineTo(f,b),a.arcTo(b,b,0,0,1,f+b,0),a.close()),a.fillAndStroke())};
338mxShapeMockupVerTabBar.prototype.tabText=function(a,d,e,b,c,f,g,h,k,l,m,n,p){d=mxUtils.getValue(this.style,mxShapeMockupVerTabBar.prototype.cst.TEXT_COLOR,"#666666");e=mxUtils.getValue(this.style,mxShapeMockupVerTabBar.prototype.cst.SEL_TEXT_COLOR,"#ffffff");b=mxUtils.getValue(this.style,mxShapeMockupVerTabBar.prototype.cst.TEXT_SIZE,"17").toString();a.setFontColor(d);a.setFontSize(b);for(b=0;b<l;b++)k=p[b],b===n&&a.setFontColor(e),"+"===k.charAt(0)&&(k=k.substring(1)),a.text(.5*f,g+.5*c,0,0,k,mxConstants.ALIGN_CENTER,
339mxConstants.ALIGN_MIDDLE,0,null,0,0,0),g=g+c+h,b===n&&a.setFontColor(d)};mxCellRenderer.registerShape(mxShapeMockupVerTabBar.prototype.cst.SHAPE_VER_TAB_BAR,mxShapeMockupVerTabBar);function mxShapeMockupAlertBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupAlertBox,mxShape);
340mxShapeMockupAlertBox.prototype.cst={MAIN_TEXT:"mainText",SUB_TEXT:"subText",BUTTON_TEXT:"buttonText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",SHAPE_ALERT_BOX:"mxgraph.mockup.containers.alertBox"};
341mxShapeMockupAlertBox.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupAlertBox.prototype.cst.STROKE_COLOR2,"#008cff"),k=mxUtils.getValue(this.style,mxShapeMockupAlertBox.prototype.cst.STROKE_COLOR3,"#c4c4c4");a.translate(d,e);c=Math.max(c,75);b=Math.max(b,90);this.background(a,d,e,b,c,f,g);a.setShadow(!1);this.foreground(a,
342d,e,b,c,g,k,h)};mxShapeMockupAlertBox.prototype.background=function(a,d,e,b,c,f,g){a.setFillColor(f);a.setStrokeColor(g);a.rect(0,0,b,c);a.fillAndStroke()};
343mxShapeMockupAlertBox.prototype.foreground=function(a,d,e,b,c,f,g,h){mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1");a.setStrokeColor(h);a.ellipse(b-25,5,20,20);a.stroke();a.setStrokeColor(g);a.begin();a.moveTo(0,30);a.lineTo(b,30);a.stroke();h=mxUtils.getValue(this.style,mxShapeMockupAlertBox.prototype.cst.MAIN_TEXT,"Window Title").toString();d=mxUtils.getValue(this.style,mxShapeMockupAlertBox.prototype.cst.SUB_TEXT,"Sub Text").toString().split(",");e=mxUtils.getValue(this.style,mxShapeMockupAlertBox.prototype.cst.BUTTON_TEXT,
344"OK,Cancel").toString().split(",");var k=mxUtils.getValue(this.style,mxShapeMockupAlertBox.prototype.cst.TEXT_COLOR,"#666666");f=mxUtils.getValue(this.style,mxShapeMockupAlertBox.prototype.cst.TEXT_SIZE,"17").toString();g=e.length;g=(b-10*(g+1))/g;a.setFontColor(k);a.setFontSize(f);a.text(10,15,0,0,h,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);h=10;for(k=0;k<e.length;k++)""!==e[k]&&(a.rect(h,c-10-1.5*f,g,1.5*f),a.stroke(),a.text(h+.5*g,c-10-.75*f,0,0,e[k],mxConstants.ALIGN_CENTER,
345mxConstants.ALIGN_MIDDLE,0,null,0,0,0)),h=h+g+10;for(k=0;k<d.length;k++)a.text(.5*b,30+f*(1.5*k+.75),0,0,d[k],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupAlertBox.prototype.cst.SHAPE_ALERT_BOX,mxShapeMockupAlertBox);function mxShapeMockupContainersRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupContainersRRect,mxShape);
346mxShapeMockupContainersRRect.prototype.cst={RRECT:"mxgraph.mockup.containers.rrect",R_SIZE:"rSize"};mxShapeMockupContainersRRect.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];mxShapeMockupContainersRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupContainersRRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};
347mxCellRenderer.registerShape(mxShapeMockupContainersRRect.prototype.cst.RRECT,mxShapeMockupContainersRRect);function mxShapeMockupContainersAnchor(a,d,e,b){mxShape.call(this);this.bounds=a}mxUtils.extend(mxShapeMockupContainersAnchor,mxShape);mxShapeMockupContainersAnchor.prototype.cst={ANCHOR:"mxgraph.mockup.containers.anchor"};mxShapeMockupContainersAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeMockupContainersAnchor.prototype.cst.ANCHOR,mxShapeMockupContainersAnchor);
348function mxShapeMockupContrainersTopButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupContrainersTopButton,mxShape);mxShapeMockupContrainersTopButton.prototype.cst={TOP_BUTTON:"mxgraph.mockup.containers.topButton",R_SIZE:"rSize"};mxShapeMockupContrainersTopButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
349mxShapeMockupContrainersTopButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupContrainersTopButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupContrainersTopButton.prototype.cst.TOP_BUTTON,mxShapeMockupContrainersTopButton);
350function mxShapeMockupContainersLeftButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupContainersLeftButton,mxShape);mxShapeMockupContainersLeftButton.prototype.cst={LEFT_BUTTON:"mxgraph.mockup.containers.leftButton",R_SIZE:"rSize"};mxShapeMockupContainersLeftButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
351mxShapeMockupContainersLeftButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupContainersLeftButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(b,0);a.lineTo(b,c);a.lineTo(d,c);a.arcTo(d,d,0,0,1,0,c-d);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupContainersLeftButton.prototype.cst.LEFT_BUTTON,mxShapeMockupContainersLeftButton);
352function mxShapeMockupContainersMarginRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupContainersMarginRect,mxShape);mxShapeMockupContainersMarginRect.prototype.cst={SHAPE_MARGIN_RECT:"mxgraph.mockup.containers.marginRect",MARGIN:"rectMargin",MARGIN_TOP:"rectMarginTop",MARGIN_LEFT:"rectMarginLeft",MARGIN_BOTTOM:"rectMarginBottom",MARGIN_RIGHT:"rectMarginRight"};
353mxShapeMockupContainersMarginRect.prototype.customProperties=[{name:"rectMargin",dispName:"Global Margin",type:"float",min:0,defVal:0},{name:"rectMarginTop",dispName:"Top Margin",type:"float",min:0,defVal:0},{name:"rectMarginLeft",dispName:"Left Margin",type:"float",min:0,defVal:0},{name:"rectMarginBottom",dispName:"Bottom Margin",type:"float",min:0,defVal:0},{name:"rectMarginRight",dispName:"Right Margin",type:"float",min:0,defVal:0}];
354mxShapeMockupContainersMarginRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
355mxShapeMockupContainersMarginRect.prototype.background=function(a,d,e,b,c,f){d=parseFloat(mxUtils.getValue(this.style,mxShapeMockupContainersMarginRect.prototype.cst.MARGIN,"0"));var g=parseFloat(mxUtils.getValue(this.style,mxShapeMockupContainersMarginRect.prototype.cst.MARGIN_TOP,"0"));f=parseFloat(mxUtils.getValue(this.style,mxShapeMockupContainersMarginRect.prototype.cst.MARGIN_LEFT,"0"));e=parseFloat(mxUtils.getValue(this.style,mxShapeMockupContainersMarginRect.prototype.cst.MARGIN_BOTTOM,"0"));
356var h=parseFloat(mxUtils.getValue(this.style,mxShapeMockupContainersMarginRect.prototype.cst.MARGIN_RIGHT,"0"));f=d+f;g=d+g;b=b-h-f-d;c=c-e-g-d;0<b&&0<c&&(a.begin(),a.roundrect(f,g,b,c,10,10),a.fillAndStroke())};mxCellRenderer.registerShape(mxShapeMockupContainersMarginRect.prototype.cst.SHAPE_MARGIN_RECT,mxShapeMockupContainersMarginRect);function mxShapeMockupContainersMarginRect2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
357mxUtils.extend(mxShapeMockupContainersMarginRect2,mxShape);mxShapeMockupContainersMarginRect2.prototype.cst={SHAPE_MARGIN_RECT:"mxgraph.mockup.containers.marginRect2",MARGIN:"rectMargin",MARGIN_TOP:"rectMarginTop",MARGIN_LEFT:"rectMarginLeft",MARGIN_BOTTOM:"rectMarginBottom",MARGIN_RIGHT:"rectMarginRight"};
358mxShapeMockupContainersMarginRect2.prototype.customProperties=[{name:"rectMargin",dispName:"Global Margin",type:"float",min:0,defVal:0},{name:"rectMarginTop",dispName:"Top Margin",type:"float",min:0,defVal:0},{name:"rectMarginLeft",dispName:"Left Margin",type:"float",min:0,defVal:0},{name:"rectMarginBottom",dispName:"Bottom Margin",type:"float",min:0,defVal:0},{name:"rectMarginRight",dispName:"Right Margin",type:"float",min:0,defVal:0}];
359mxShapeMockupContainersMarginRect2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
360mxShapeMockupContainersMarginRect2.prototype.background=function(a,d,e,b,c,f){d=parseFloat(mxUtils.getValue(this.style,mxShapeMockupContainersMarginRect2.prototype.cst.MARGIN,"0"));var g=parseFloat(mxUtils.getValue(this.style,mxShapeMockupContainersMarginRect2.prototype.cst.MARGIN_TOP,"0"));f=parseFloat(mxUtils.getValue(this.style,mxShapeMockupContainersMarginRect2.prototype.cst.MARGIN_LEFT,"0"));e=parseFloat(mxUtils.getValue(this.style,mxShapeMockupContainersMarginRect2.prototype.cst.MARGIN_BOTTOM,
361"0"));var h=parseFloat(mxUtils.getValue(this.style,mxShapeMockupContainersMarginRect2.prototype.cst.MARGIN_RIGHT,"0"));f=d+f;g=d+g;b=b-h-f-d;c=c-e-g-d;0<b&&0<c&&(a.begin(),a.rect(f,g,b,c),a.fillAndStroke())};mxCellRenderer.registerShape(mxShapeMockupContainersMarginRect2.prototype.cst.SHAPE_MARGIN_RECT,mxShapeMockupContainersMarginRect2);function mxShapeMockupCheckboxGroup(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
362mxUtils.extend(mxShapeMockupCheckboxGroup,mxShape);mxShapeMockupCheckboxGroup.prototype.cst={MAIN_TEXT:"mainText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",SELECTED:"+",SHAPE_CHECKBOX_GROUP:"mxgraph.mockup.forms.checkboxGroup"};
363mxShapeMockupCheckboxGroup.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxShapeMockupCheckboxGroup.prototype.cst.TEXT_COLOR,"#666666,#008cff").toString().split(",");var f=mxUtils.getValue(this.style,mxShapeMockupCheckboxGroup.prototype.cst.TEXT_SIZE,"17").toString();e=mxUtils.getValue(this.style,mxShapeMockupCheckboxGroup.prototype.cst.MAIN_TEXT,"Option 1").toString().split(",");var g=e.length,h=Math.max(1.5*f,15),k=0,l=-1,m=g*h;c=Math.max(c,m);for(var n=
3640;n<g;n++){var p=e[n];p.charAt(0)===mxShapeMockupCheckboxGroup.prototype.cst.SELECTED&&(p=e[n].substring(1),l=n);p=mxUtils.getSizeForString(p,f,mxConstants.DEFAULT_FONTFAMILY).width;p>k&&(k=p)}a.rect(0,0,Math.max(b,5+k+30),c);a.fillAndStroke();a.setShadow(!1);a.setFontSize(f);for(n=0;n<g;n++)b=(n*h+.5*h)*c/m,p=e[n],p.charAt(0)===mxShapeMockupCheckboxGroup.prototype.cst.SELECTED?(a.setFontColor(d[1]),p=e[n].substring(1),l=n):a.setFontColor(d[0]),a.text(32.5,b,0,0,p,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,
3650,null,0,0,0),b-=7.5,a.setFillColor("#dddddd"),a.setStrokeColor("#999999"),l===n?(a.setGradient("#aaaaaa","#666666",7.5,b,15,15,mxConstants.DIRECTION_SOUTH,1,1),a.rect(7.5,b,15,15),a.fillAndStroke(),a.setStrokeColor("#333333"),a.begin(),a.moveTo(11.25,b+7.5),a.lineTo(15,b+11.25),a.lineTo(18.75,b+3.75),a.stroke()):(a.setGradient("#eeeeee","#cccccc",7.5,b,15,15,mxConstants.DIRECTION_SOUTH,1,1),a.rect(7.5,b,15,15),a.fillAndStroke()),l=-1};
366mxCellRenderer.registerShape(mxShapeMockupCheckboxGroup.prototype.cst.SHAPE_CHECKBOX_GROUP,mxShapeMockupCheckboxGroup);function mxShapeMockupRadioGroup(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupRadioGroup,mxShape);mxShapeMockupRadioGroup.prototype.cst={MAIN_TEXT:"mainText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",SELECTED:"+",SHAPE_RADIO_GROUP:"mxgraph.mockup.forms.radioGroup"};
367mxShapeMockupRadioGroup.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxShapeMockupRadioGroup.prototype.cst.TEXT_COLOR,"#666666,#008cff").toString().split(",");var f=mxUtils.getValue(this.style,mxShapeMockupRadioGroup.prototype.cst.TEXT_SIZE,"17").toString();e=mxUtils.getValue(this.style,mxShapeMockupRadioGroup.prototype.cst.MAIN_TEXT,"Option 1").toString().split(",");var g=e.length,h=Math.max(1.5*f,15),k=0,l=-1,m=g*h;c=Math.max(c,m);for(var n=0;n<g;n++){var p=
368e[n];p.charAt(0)===mxShapeMockupRadioGroup.prototype.cst.SELECTED&&(p=e[n].substring(1),l=n);p=mxUtils.getSizeForString(p,f,mxConstants.DEFAULT_FONTFAMILY).width;p>k&&(k=p)}a.rect(0,0,Math.max(b,5+k+30),c);a.fillAndStroke();a.setShadow(!1);a.setFontSize(f);for(n=0;n<g;n++)b=(n*h+.5*h)*c/m,p=e[n],p.charAt(0)===mxShapeMockupRadioGroup.prototype.cst.SELECTED?(a.setFontColor(d[1]),p=e[n].substring(1),l=n):a.setFontColor(d[0]),a.text(32.5,b,0,0,p,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,
3690,0,0),b-=7.5,a.setStrokeColor("#999999"),l===n?(a.setGradient("#aaaaaa","#666666",7.5,b,15,15,mxConstants.DIRECTION_SOUTH,1,1),a.ellipse(7.5,b,15,15),a.fillAndStroke(),a.setFillColor("#333333"),a.setStrokeColor("#333333"),a.ellipse(11.25,b+3.75,7.5,7.5)):(a.setGradient("#eeeeee","#cccccc",7.5,b,15,15,mxConstants.DIRECTION_SOUTH,1,1),a.ellipse(7.5,b,15,15)),a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupRadioGroup.prototype.cst.SHAPE_RADIO_GROUP,mxShapeMockupRadioGroup);
370function mxShapeMockupColorPicker(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupColorPicker,mxShape);mxShapeMockupColorPicker.prototype.cst={COLOR:"chosenColor",SHAPE_COLOR_PICKER:"mxgraph.mockup.forms.colorPicker"};mxShapeMockupColorPicker.prototype.customProperties=[{name:"chosenColor",dispName:"Current Color",type:"color"}];
371mxShapeMockupColorPicker.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupColorPicker.prototype.cst.COLOR,"#aaddff");a.translate(d,e);a.setStrokeColor("#999999");a.roundrect(0,0,b,c,.05*b,.05*c);a.fillAndStroke();a.setShadow(!1);a.setFillColor(f);a.rect(.1*b,.1*c,.8*b,.8*c);a.fill();a.setFillColor("#ffffff");a.begin();a.moveTo(.75*b,.75*c);a.lineTo(.75*b,c);a.lineTo(.95*b,c);a.arcTo(.05*b,.05*c,0,0,0,b,.95*c);a.lineTo(b,.75*c);a.close();a.fill();a.setFillColor("#999999");
372a.begin();a.moveTo(.77*b,.77*c);a.lineTo(.875*b,.98*c);a.lineTo(.98*b,.77*c);a.close();a.fill();a.roundrect(0,0,b,c,.05*b,.05*c);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupColorPicker.prototype.cst.SHAPE_COLOR_PICKER,mxShapeMockupColorPicker);function mxShapeMockupComboBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupComboBox,mxShape);
373mxShapeMockupComboBox.prototype.cst={MAIN_TEXT:"mainText",FILL_COLOR2:"fillColor2",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",SHAPE_COMBO_BOX:"mxgraph.mockup.forms.comboBox"};mxShapeMockupComboBox.prototype.customProperties=[{name:"fillColor2",dispName:"Fill2 Color",type:"color"}];mxShapeMockupComboBox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c);this.mainText(a,d,e,b,c)};
374mxShapeMockupComboBox.prototype.background=function(a,d,e,b,c){a.setFillColor("#ffffff");a.roundrect(0,0,b,c,5,5);a.fillAndStroke()};
375mxShapeMockupComboBox.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxShapeMockupComboBox.prototype.cst.FILL_COLOR2,"").toString();a.setGradient(d,e,b-30,0,30,c,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(b-30,0);a.lineTo(b-5,0);a.arcTo(5,5,0,0,1,b,5);a.lineTo(b,c-5);a.arcTo(5,5,0,0,1,b-5,c);a.lineTo(b-30,c);a.close();a.fillAndStroke();a.setFillColor("#ffffff");a.begin();a.moveTo(b-22,.5*c-5);
376a.lineTo(b-15,.5*c+5);a.lineTo(b-8,.5*c-5);a.fill()};
377mxShapeMockupComboBox.prototype.mainText=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupComboBox.prototype.cst.MAIN_TEXT,"Main Text");e=mxUtils.getValue(this.style,mxShapeMockupComboBox.prototype.cst.TEXT_COLOR,"#666666").toString();b=mxUtils.getValue(this.style,mxShapeMockupComboBox.prototype.cst.TEXT_SIZE,"17").toString();a.begin();a.setFontSize(b);a.setFontColor(e);a.text(5,.5*c,0,0,d,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
378mxCellRenderer.registerShape(mxShapeMockupComboBox.prototype.cst.SHAPE_COMBO_BOX,mxShapeMockupComboBox);function mxShapeMockupSpinner(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupSpinner,mxShape);
379mxShapeMockupSpinner.prototype.cst={LAYOUT:"spinLayout",SPINNER_STYLE:"spinStyle",ADJ_STYLE:"adjStyle",LAYOUT_RIGHT:"right",LAYOUT_LEFT:"left",LAYOUT_TOP:"top",LAYOUT_BOTTOM:"bottom",LAYOUT_VERTICAL:"vertical",LAYOUT_HORIZONTAL:"horizontal",SPINNER_MERGED:"merged",SPINNER_NORMAL:"normal",ADJ_TRIANGLE:"triangle",ADJ_PLUSMINUS:"plusMinus",ADJ_ARROW:"arrow",MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",SHAPE_SPINNER:"mxgraph.mockup.forms.spinner"};
380mxShapeMockupSpinner.prototype.customProperties=[{name:"spinLayout",dispName:"Layout",type:"enum",enumList:[{val:"right",dispName:"Right"},{val:"left",dispName:"Left"},{val:"top",dispName:"Top"},{val:"bottom",dispName:"Bottom"},{val:"vertical",dispName:"Vertical"},{val:"horizontal",dispName:"Horizontal"}]},{name:"spinStyle",dispName:"Spinner Style",type:"enum",enumList:[{val:"merged",dispName:"Merged"},{val:"normal",dispName:"Normal"}]},{name:"adjStyle",dispName:"Button Style",type:"enum",enumList:[{val:"triangle",
381dispName:"Triangle"},{val:"plusMinus",dispName:"+/-"},{val:"arrow",dispName:"Arrow"}]}];mxShapeMockupSpinner.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupSpinner.prototype.cst.LAYOUT,mxShapeMockupSpinner.prototype.cst.LAYOUT_RIGHT);a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c,f);this.mainText(a,b,c,f)};mxShapeMockupSpinner.prototype.background=function(a,d,e){a.setFillColor("#ffffff");a.roundrect(0,0,d,e,10,10);a.fillAndStroke()};
382mxShapeMockupSpinner.prototype.foreground=function(a,d,e,b){var c=mxUtils.getValue(this.style,mxShapeMockupSpinner.prototype.cst.SPINNER_STYLE,mxShapeMockupSpinner.prototype.cst.SPINNER_NORMAL),f=mxUtils.getValue(this.style,mxShapeMockupSpinner.prototype.cst.ADJ_STYLE,mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE),g=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");a.setFillColor(g);c===mxShapeMockupSpinner.prototype.cst.SPINNER_NORMAL&&(b===mxShapeMockupSpinner.prototype.cst.LAYOUT_RIGHT?
383(a.begin(),a.moveTo(d-20,0),a.lineTo(d-20,e),a.moveTo(d-20,.5*e),a.lineTo(d,.5*e),a.stroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_LEFT?(a.begin(),a.moveTo(20,0),a.lineTo(20,e),a.moveTo(20,.5*e),a.lineTo(0,.5*e),a.stroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_TOP?(a.begin(),a.moveTo(0,15),a.lineTo(d,15),a.moveTo(.5*d,15),a.lineTo(.5*d,0),a.stroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_BOTTOM?(a.begin(),a.moveTo(0,e-15),a.lineTo(d,e-15),a.moveTo(.5*d,e-15),a.lineTo(.5*
384d,e),a.stroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_VERTICAL?(a.begin(),a.moveTo(0,15),a.lineTo(d,15),a.moveTo(0,e-15),a.lineTo(d,e-15),a.stroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_HORIZONTAL&&(a.begin(),a.moveTo(20,0),a.lineTo(20,e),a.moveTo(d-20,0),a.lineTo(d-20,e),a.stroke()));a.setStrokeColor(g);b===mxShapeMockupSpinner.prototype.cst.LAYOUT_RIGHT?f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(d-14,.25*e+4.5),a.lineTo(d-10,.25*e-2.5),a.lineTo(d-
3856,.25*e+4.5),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(d-10,.25*e-4),a.lineTo(d-10,.25*e+4),a.moveTo(d-14,.25*e),a.lineTo(d-6,.25*e),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&(a.begin(),a.moveTo(d-14,.25*e+1.5),a.lineTo(d-10,.25*e-2.5),a.lineTo(d-6,.25*e+1.5),a.close(),a.moveTo(d-10,.25*e+4.5),a.lineTo(d-10,.25*e-2.5),a.fillAndStroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_LEFT?f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?
386(a.begin(),a.moveTo(14,.25*e+4.5),a.lineTo(10,.25*e-2.5),a.lineTo(6,.25*e+4.5),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(10,.25*e-4),a.lineTo(10,.25*e+4),a.moveTo(14,.25*e),a.lineTo(6,.25*e),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&(a.begin(),a.moveTo(14,.25*e+1.5),a.lineTo(10,.25*e-2.5),a.lineTo(6,.25*e+1.5),a.close(),a.moveTo(10,.25*e+4.5),a.lineTo(10,.25*e-2.5),a.fillAndStroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_TOP?
387f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(.75*d+4,12),a.lineTo(.75*d,5),a.lineTo(.75*d-4,12),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(.75*d,3.5),a.lineTo(.75*d,11.5),a.moveTo(.75*d+4,7.5),a.lineTo(.75*d-4,7.5),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&(a.begin(),a.moveTo(.75*d+4,9),a.lineTo(.75*d,5),a.lineTo(.75*d-4,9),a.close(),a.moveTo(.75*d,12),a.lineTo(.75*d,5),a.fillAndStroke()):b===
388mxShapeMockupSpinner.prototype.cst.LAYOUT_BOTTOM?f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(.75*d+4,e-5),a.lineTo(.75*d,e-12),a.lineTo(.75*d-4,e-5),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(.75*d,e-3.5),a.lineTo(.75*d,e-11.5),a.moveTo(.75*d+4,e-7.5),a.lineTo(.75*d-4,e-7.5),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&(a.begin(),a.moveTo(.75*d+4,e-6),a.lineTo(.75*d,e-10),a.lineTo(.75*d-4,e-6),
389a.close(),a.moveTo(.75*d,e-3),a.lineTo(.75*d,e-10),a.fillAndStroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_VERTICAL?f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(.5*d+4,12),a.lineTo(.5*d,5),a.lineTo(.5*d-4,12),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(.5*d,3.5),a.lineTo(.5*d,11.5),a.moveTo(.5*d+4,7.5),a.lineTo(.5*d-4,7.5),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&(a.begin(),a.moveTo(.5*
390d+4,9),a.lineTo(.5*d,5),a.lineTo(.5*d-4,9),a.close(),a.moveTo(.5*d,12),a.lineTo(.5*d,5),a.fillAndStroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_HORIZONTAL&&(f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(d-6,.5*e+4.5),a.lineTo(d-10,.5*e-2.5),a.lineTo(d-14,.5*e+4.5),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(d-10,.5*e-4),a.lineTo(d-10,.5*e+4),a.moveTo(d-14,.5*e),a.lineTo(d-6,.5*e),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&
391(a.begin(),a.moveTo(d-14,.5*e+1.5),a.lineTo(d-10,.5*e-2.5),a.lineTo(d-6,.5*e+1.5),a.close(),a.moveTo(d-10,.5*e+4.5),a.lineTo(d-10,.5*e-2.5),a.fillAndStroke()));b===mxShapeMockupSpinner.prototype.cst.LAYOUT_RIGHT?f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(d-14,.75*e-4.5),a.lineTo(d-10,.75*e+2.5),a.lineTo(d-6,.75*e-4.5),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(d-14,.75*e),a.lineTo(d-6,.75*e),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&
392(a.begin(),a.moveTo(d-14,.75*e-1.5),a.lineTo(d-10,.75*e+2.5),a.lineTo(d-6,.75*e-1.5),a.close(),a.moveTo(d-10,.75*e-4.5),a.lineTo(d-10,.75*e+2.5),a.fillAndStroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_LEFT?f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(14,.75*e-4.5),a.lineTo(10,.75*e+2.5),a.lineTo(6,.75*e-4.5),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(14,.75*e),a.lineTo(6,.75*e),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&
393(a.begin(),a.moveTo(14,.75*e-1.5),a.lineTo(10,.75*e+2.5),a.lineTo(6,.75*e-1.5),a.close(),a.moveTo(10,.75*e-4.5),a.lineTo(10,.75*e+2.5),a.fillAndStroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_TOP?f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(.25*d+4,5),a.lineTo(.25*d,12),a.lineTo(.25*d-4,5),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(.25*d+4,7.5),a.lineTo(.25*d-4,7.5),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&
394(a.begin(),a.moveTo(.25*d+4,6),a.lineTo(.25*d,10),a.lineTo(.25*d-4,6),a.close(),a.moveTo(.25*d,3),a.lineTo(.25*d,10),a.fillAndStroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_BOTTOM?f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(.25*d+4,e-12),a.lineTo(.25*d,e-5),a.lineTo(.25*d-4,e-12),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(.25*d+4,e-7.5),a.lineTo(.25*d-4,e-7.5),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&
395(a.begin(),a.moveTo(.25*d+4,e-9),a.lineTo(.25*d,e-5),a.lineTo(.25*d-4,e-9),a.close(),a.moveTo(.25*d,e-12),a.lineTo(.25*d,e-5),a.fillAndStroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_VERTICAL?f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(.5*d+4,e-12),a.lineTo(.5*d,e-5),a.lineTo(.5*d-4,e-12),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(.5*d+4,e-7.5),a.lineTo(.5*d-4,e-7.5),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&
396(a.begin(),a.moveTo(.5*d+4,e-9),a.lineTo(.5*d,e-5),a.lineTo(.5*d-4,e-9),a.close(),a.moveTo(.5*d,e-12),a.lineTo(.5*d,e-5),a.fillAndStroke()):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_HORIZONTAL&&(f===mxShapeMockupSpinner.prototype.cst.ADJ_TRIANGLE?(a.begin(),a.moveTo(6,.5*e-4.5),a.lineTo(10,.5*e+2.5),a.lineTo(14,.5*e-4.5),a.close(),a.fillAndStroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_PLUSMINUS?(a.begin(),a.moveTo(14,.5*e),a.lineTo(6,.5*e),a.stroke()):f===mxShapeMockupSpinner.prototype.cst.ADJ_ARROW&&
397(a.begin(),a.moveTo(14,.5*e-1.5),a.lineTo(10,.5*e+2.5),a.lineTo(6,.5*e-1.5),a.close(),a.moveTo(10,.5*e-4.5),a.lineTo(10,.5*e+2.5),a.fillAndStroke()))};
398mxShapeMockupSpinner.prototype.mainText=function(a,d,e,b){var c=mxUtils.getValue(this.style,mxShapeMockupSpinner.prototype.cst.MAIN_TEXT,"100").toString(),f=mxUtils.getValue(this.style,mxShapeMockupSpinner.prototype.cst.TEXT_SIZE,"17"),g=mxUtils.getValue(this.style,mxShapeMockupSpinner.prototype.cst.TEXT_COLOR,"#666666");a.setFontSize(f);a.setFontColor(g);b===mxShapeMockupSpinner.prototype.cst.LAYOUT_RIGHT?a.text(.5*(d-20),.5*e,0,0,c,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):
399b===mxShapeMockupSpinner.prototype.cst.LAYOUT_LEFT?a.text(.5*(d+20),.5*e,0,0,c,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_TOP?a.text(.5*d,.5*(e+15),0,0,c,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_BOTTOM?a.text(.5*d,.5*(e-15),0,0,c,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_VERTICAL?a.text(.5*d,.5*e,
4000,0,c,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):b===mxShapeMockupSpinner.prototype.cst.LAYOUT_HORIZONTAL&&a.text(.5*d,.5*e,0,0,c,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupSpinner.prototype.cst.SHAPE_SPINNER,mxShapeMockupSpinner);function mxShapeMockupMenuBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupMenuBar,mxShape);
401mxShapeMockupMenuBar.prototype.cst={MAIN_TEXT:"mainText",SHAPE_MENU_BAR:"mxgraph.mockup.forms.menuBar",TEXT_COLOR:"textColor",TEXT_COLOR2:"textColor2",STROKE_COLOR2:"strokeColor2",FILL_COLOR2:"fillColor2",SELECTED:"+",TEXT_SIZE:"textSize"};
402mxShapeMockupMenuBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeMockupMenuBar.prototype.cst.MAIN_TEXT,"+Menu 1, Menu 2, Menu 3").toString().split(","),g=mxUtils.getValue(this.style,mxShapeMockupMenuBar.prototype.cst.TEXT_COLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupMenuBar.prototype.cst.TEXT_COLOR2,"#ffffff"),k=mxUtils.getValue(this.style,mxShapeMockupMenuBar.prototype.cst.TEXT_SIZE,"17").toString(),l=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,
403"#666666"),m=mxUtils.getValue(this.style,mxShapeMockupMenuBar.prototype.cst.STROKE_COLOR2,"#c4c4c4"),n=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),p=mxUtils.getValue(this.style,mxShapeMockupMenuBar.prototype.cst.FILL_COLOR2,"#008cff"),q=f.length,t=Array(q),u=0,v=-1,r=0;r<q;r++){var w=f[r];w.charAt(0)===mxShapeMockupMenuBar.prototype.cst.SELECTED&&(w=f[r].substring(1),v=r);t[r]=mxUtils.getSizeForString(w,k,mxConstants.DEFAULT_FONTFAMILY).width;u+=t[r]}c=Math.max(c,1.5*k,20);
404u=10*q+u;b=Math.max(b,u);a.translate(d,e);this.background(a,b,c,10,q,t,5,u,l,m,n,p,v);a.setShadow(!1);for(r=d=0;r<q;r++)r===v?a.setFontColor(h):a.setFontColor(g),d+=5,this.buttonText(a,d,c,f[r],t[r],k,u,b),d=d+t[r]+5};
405mxShapeMockupMenuBar.prototype.background=function(a,d,e,b,c,f,g,h,k,l,m,n,p){a.setStrokeColor(k);a.setFillColor(m);a.rect(0,0,d,e);a.fillAndStroke();a.setStrokeColor(l);a.begin();for(b=1;b<c;b++)if(b!==p&&b!==p+1){for(var q=l=0;q<b;q++)l+=f[q]+2*g;l=l*d/h;a.moveTo(l,0);a.lineTo(l,e)}a.stroke();if(-1!==p){c=0;a.setFillColor(n);for(b=0;b<p;b++)c+=f[b]+2*g;c=c*d/h;a.rect(c,0,(f[p]+2*g)*d/h+c-c,e);a.fill()}a.setStrokeColor(k);a.setFillColor(m);a.rect(0,0,d,e);a.stroke()};
406mxShapeMockupMenuBar.prototype.buttonText=function(a,d,e,b,c,f,g,h){b.charAt(0)===mxShapeMockupMenuBar.prototype.cst.SELECTED&&(b=b.substring(1));a.setFontSize(f);a.text((d+.5*c)*h/g,.5*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupMenuBar.prototype.cst.SHAPE_MENU_BAR,mxShapeMockupMenuBar);function mxShapeMockupHorSlider(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
407mxUtils.extend(mxShapeMockupHorSlider,mxShape);mxShapeMockupHorSlider.prototype.cst={STYLE:"sliderStyle",SLIDER_BASIC:"basic",SLIDER_FANCY:"fancy",SLIDER_POS:"sliderPos",HANDLE_TRIANGLE:"triangle",HANDLE_CIRCLE:"circle",HANDLE_HANDLE:"handle",HANDLE_STYLE:"handleStyle",FILL_COLOR2:"fillColor2",SHAPE_HOR_SLIDER:"mxgraph.mockup.forms.horSlider"};
408mxShapeMockupHorSlider.prototype.customProperties=[{name:"sliderStyle",dispName:"Slider Style",type:"enum",enumList:[{val:"basic",dispName:"Basic"},{val:"fancy",dispName:"Fancy"}]},{name:"handleStyle",dispName:"Handle Style",type:"enum",enumList:[{val:"triangle",dispName:"Triangle"},{val:"circle",dispName:"Circle"},{val:"handle",dispName:"Handle"}]},{name:"sliderPos",dispName:"Handle Position",type:"float"},{name:"fillColor2",dispName:"Fill2 Color",type:"color"}];
409mxShapeMockupHorSlider.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupHorSlider.prototype.cst.STYLE,mxShapeMockupHorSlider.prototype.cst.SLIDER_BASIC);a.translate(d,e);this.background(a,b,c,5,f);a.setShadow(!1);this.foreground(a,b,c,5,f);this.sliderPos=20};
410mxShapeMockupHorSlider.prototype.background=function(a,d,e,b,c){c===mxShapeMockupHorSlider.prototype.cst.SLIDER_BASIC?(a.begin(),a.moveTo(0,.5*e),a.lineTo(d,.5*e),a.stroke()):c===mxShapeMockupHorSlider.prototype.cst.SLIDER_FANCY&&(a.roundrect(0,.5*e-b,d,2*b,b,b),a.fillAndStroke())};
411mxShapeMockupHorSlider.prototype.foreground=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupHorSlider.prototype.cst.SLIDER_POS,"20"),g=mxUtils.getValue(this.style,mxShapeMockupHorSlider.prototype.cst.HANDLE_STYLE,mxShapeMockupHorSlider.prototype.cst.HANDLE_CIRCLE),h=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),k=mxUtils.getValue(this.style,mxShapeMockupHorSlider.prototype.cst.FILL_COLOR2,"#ddeeff"),l=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,
412"#999999"),f=Math.min(100,f),f=Math.max(0,f);c===mxShapeMockupHorSlider.prototype.cst.SLIDER_BASIC?(a.setStrokeColor(k),c=d*f/100,a.begin(),a.moveTo(0,.5*e),a.lineTo(c,.5*e),a.stroke(),a.setStrokeColor(l)):c===mxShapeMockupHorSlider.prototype.cst.SLIDER_FANCY&&(c=10+(d-10)*f/100,a.setFillColor(k),a.roundrect(0,.5*e-b,c,2*b,b,b),a.fillAndStroke(),a.setFillColor(h));d=5+(d-10)*f/100;g===mxShapeMockupHorSlider.prototype.cst.HANDLE_CIRCLE?(a.ellipse(d-10,.5*e-10,20,20),a.fillAndStroke()):g===mxShapeMockupHorSlider.prototype.cst.HANDLE_TRIANGLE?
413(a.begin(),a.moveTo(d-10,.5*e+10),a.lineTo(d,.5*e-10),a.lineTo(d+10,.5*e+10),a.close(),a.fillAndStroke()):g===mxShapeMockupHorSlider.prototype.cst.HANDLE_HANDLE&&(a.begin(),a.moveTo(d-7,.5*e+10),a.lineTo(d-7,.5*e),a.lineTo(d,.5*e-10),a.lineTo(d+7,.5*e),a.lineTo(d+7,.5*e+10),a.close(),a.fillAndStroke())};mxCellRenderer.registerShape(mxShapeMockupHorSlider.prototype.cst.SHAPE_HOR_SLIDER,mxShapeMockupHorSlider);
414Graph.handleFactory[mxShapeMockupHorSlider.prototype.cst.SHAPE_HOR_SLIDER]=function(a){return[Graph.createHandle(a,["sliderPos"],function(a){var d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"sliderPos",this.sliderPos))));return new mxPoint(a.x+(a.width-10)*d/a.width/100*a.width+5,a.y+a.height/2)},function(a,e){this.state.style.sliderPos=Math.round(1E3*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/1E3})]};
415function mxShapeMockupListBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupListBox,mxShape);mxShapeMockupListBox.prototype.cst={MAIN_TEXT:"mainText",SUB_TEXT:"subText",BUTTON_TEXT:"buttonText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",SELECTED_COLOR:"selectedColor",SELECTED:"+",SHAPE_LIST_BOX:"mxgraph.mockup.forms.listBox"};
416mxShapeMockupListBox.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupListBox.prototype.cst.TEXT_SIZE,"17").toString(),k=-1,l=b,m=mxUtils.getValue(this.style,mxShapeMockupListBox.prototype.cst.SUB_TEXT,"Sub Text").toString().split(","),n=0;n<m.length;n++){var p=m[n];p.charAt(0)===mxShapeMockupListBox.prototype.cst.SELECTED&&
417(p=m[n].substring(1),k=n);p=mxUtils.getSizeForString(p,h,mxConstants.DEFAULT_FONTFAMILY).width;p>l&&(l=p)}a.translate(d,e);b=Math.min(b,l);c=Math.max(c,30+m.length*h*1.5);this.background(a,b,c,f,g);a.setShadow(!1);this.foreground(a,b,c,g,k,m,h)};mxShapeMockupListBox.prototype.background=function(a,d,e,b,c){a.setFillColor(b);a.setStrokeColor(c);a.rect(0,0,d,e);a.fillAndStroke()};
418mxShapeMockupListBox.prototype.foreground=function(a,d,e,b,c,f,g){mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1");b=mxUtils.getValue(this.style,mxShapeMockupListBox.prototype.cst.SELECTED_COLOR,"#ddeeff");-1!==c&&(a.setFillColor(b),a.rect(0,30+c*g*1.5,d,1.5*g),a.fill());a.begin();a.moveTo(0,30);a.lineTo(d,30);a.stroke();c=mxUtils.getValue(this.style,mxShapeMockupListBox.prototype.cst.MAIN_TEXT,"Window Title").toString();b=mxUtils.getValue(this.style,mxShapeMockupListBox.prototype.cst.TEXT_COLOR,
419"#666666,#008cff").toString().split(",");a.setFontColor(b[1]);a.setFontSize(g);a.text(10,15,0,0,c,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontColor(b[0]);for(c=0;c<f.length;c++)b=f[c],b.charAt(0)===mxShapeMockupListBox.prototype.cst.SELECTED&&(b=f[c].substring(1)),a.text(10,30+g*(1.5*c+.75),0,0,b,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.rect(0,0,d,e);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupListBox.prototype.cst.SHAPE_LIST_BOX,mxShapeMockupListBox);
420function mxShapeMockupPwField(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupPwField,mxShape);mxShapeMockupPwField.prototype.cst={MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",SHAPE_PW_FIELD:"mxgraph.mockup.forms.pwField"};mxShapeMockupPwField.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};
421mxShapeMockupPwField.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
422mxShapeMockupPwField.prototype.foreground=function(a,d,e){d=mxUtils.getValue(this.style,mxShapeMockupPwField.prototype.cst.MAIN_TEXT,"******");var b=mxUtils.getValue(this.style,mxShapeMockupPwField.prototype.cst.TEXT_COLOR,"#666666"),c=mxUtils.getValue(this.style,mxShapeMockupPwField.prototype.cst.TEXT_SIZE,"17");a.setFontColor(b);a.setFontSize(c);a.text(5,.5*e,0,0,d,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
423mxCellRenderer.registerShape(mxShapeMockupPwField.prototype.cst.SHAPE_PW_FIELD,mxShapeMockupPwField);function mxShapeMockupSplitter(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupSplitter,mxShape);mxShapeMockupSplitter.prototype.cst={MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",SHAPE_SPLITTER:"mxgraph.mockup.forms.splitter"};
424mxShapeMockupSplitter.prototype.paintVertexShape=function(a,d,e,b,c){b=Math.max(b,35);a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeMockupSplitter.prototype.background=function(a,d,e){a.begin();a.moveTo(0,.5*e-5);a.lineTo(d,.5*e-5);a.lineTo(d,.5*e+5);a.lineTo(0,.5*e+5);a.close();a.fill()};
425mxShapeMockupSplitter.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#999999");a.begin();a.moveTo(0,.5*e-5);a.lineTo(d,.5*e-5);a.moveTo(d,.5*e+5);a.lineTo(0,.5*e+5);a.stroke();a.setFillColor(b);a.ellipse(.5*d-17,.5*e-2,4,4);a.fill();a.ellipse(.5*d-2,.5*e-2,4,4);a.fill();a.ellipse(.5*d+13,.5*e-2,4,4);a.fill()};mxCellRenderer.registerShape(mxShapeMockupSplitter.prototype.cst.SHAPE_SPLITTER,mxShapeMockupSplitter);
426function mxShapeMockupWedgeBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupWedgeBar,mxShape);mxShapeMockupWedgeBar.prototype.cst={BLOCK:"block",CONE:"cone",HALF_CONE:"halfCone",ROUND:"round",TEXT_SIZE:"textSize",TAB_NAMES:"tabs",TAB_STYLE:"tabStyle",STYLE_FILLCOLOR2:"fillColor2",TEXT_COLOR:"textColor",SEL_TEXT_COLOR:"textColor2",SHAPE_WEDGE_BAR:"mxgraph.mockup.forms.wedgeBar"};
427mxShapeMockupWedgeBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeMockupWedgeBar.prototype.cst.TEXT_SIZE,"17").toString(),g=mxUtils.getValue(this.style,mxShapeMockupWedgeBar.prototype.cst.TAB_NAMES,"Tab 1,+Tab 2,Tab 3").toString().split(","),h=1.5*f,k=g.length,l=20+5*(k-1)+20*k,m=[],n=-1,p=0;p<k;p++){var q=g[p];"+"===q.charAt(0)&&(q=q.substring(1),n=p);q=mxUtils.getSizeForString(q,f,mxConstants.DEFAULT_FONTFAMILY).width;m[p]=0===q?42:q;l+=m[p]}b=Math.max(b,
428l);c=Math.max(c,h+5);a.translate(d,e);a.setShadow(!1);this.backTabs(a,b,c,5,h,10,5,10,k,m,n);this.focusTab(a,b,c,5,h,10,5,10,k,m,n);this.tabText(a,b,c,5,h,10,5,10,k,m,n,g)};
429mxShapeMockupWedgeBar.prototype.backTabs=function(a,d,e,b,c,f,g,h,k,l,m){d=mxUtils.getValue(this.style,mxShapeMockupWedgeBar.prototype.cst.TAB_STYLE,mxShapeMockupWedgeBar.prototype.cst.BLOCK);for(e=0;e<k;e++){var n=l[e]+2*h;m!==e&&(d===mxShapeMockupWedgeBar.prototype.cst.BLOCK?(a.begin(),a.moveTo(f,c),a.lineTo(f,0),a.lineTo(f+n,0),a.lineTo(f+n,c)):d===mxShapeMockupWedgeBar.prototype.cst.CONE?(a.begin(),a.moveTo(f,c),a.lineTo(f+.5*h,0),a.lineTo(f+n-.5*h,0),a.lineTo(f+n,c)):d===mxShapeMockupWedgeBar.prototype.cst.HALF_CONE?
430(a.begin(),a.moveTo(f,c),a.lineTo(f+.5*h,0),a.lineTo(f+n,0),a.lineTo(f+n,c)):d===mxShapeMockupWedgeBar.prototype.cst.ROUND&&(a.begin(),a.moveTo(f-b,c),a.arcTo(b,b,0,0,0,f,c-b),a.lineTo(f,b),a.arcTo(b,b,0,0,1,f+b,0),a.lineTo(f+n-b,0),a.arcTo(b,b,0,0,1,f+n,b),a.lineTo(f+n,c-b),a.arcTo(b,b,0,0,0,f+n+b,c)),a.fillAndStroke());f=f+n+g}};
431mxShapeMockupWedgeBar.prototype.focusTab=function(a,d,e,b,c,f,g,h,k,l,m){d=mxUtils.getValue(this.style,mxShapeMockupWedgeBar.prototype.cst.TAB_STYLE,mxShapeMockupWedgeBar.prototype.cst.BLOCK);e=mxUtils.getValue(this.style,mxShapeMockupWedgeBar.prototype.cst.STYLE_FILLCOLOR2,"#008cff");a.setStrokeColor(e);a.setFillColor(e);for(e=0;e<=m;e++)k=l[e]+2*h,m===e&&(d===mxShapeMockupWedgeBar.prototype.cst.BLOCK?(a.begin(),a.moveTo(f,c),a.lineTo(f,0),a.lineTo(f+k,0),a.lineTo(f+k,c)):d===mxShapeMockupWedgeBar.prototype.cst.CONE?
432(a.begin(),a.moveTo(f,c),a.lineTo(f+.5*h,0),a.lineTo(f+k-.5*h,0),a.lineTo(f+k,c)):d===mxShapeMockupWedgeBar.prototype.cst.HALF_CONE?(a.begin(),a.moveTo(f,c),a.lineTo(f+.5*h,0),a.lineTo(f+k,0),a.lineTo(f+k,c)):d===mxShapeMockupWedgeBar.prototype.cst.ROUND&&(a.begin(),a.moveTo(f-b,c),a.arcTo(b,b,0,0,0,f,c-b),a.lineTo(f,b),a.arcTo(b,b,0,0,1,f+b,0),a.lineTo(f+k-b,0),a.arcTo(b,b,0,0,1,f+k,b),a.lineTo(f+k,c-b),a.arcTo(b,b,0,0,0,f+k+b,c)),a.fillAndStroke()),f=f+k+g};
433mxShapeMockupWedgeBar.prototype.tabText=function(a,d,e,b,c,f,g,h,k,l,m,n){d=mxUtils.getValue(this.style,mxShapeMockupWedgeBar.prototype.cst.TEXT_COLOR,"#666666");e=mxUtils.getValue(this.style,mxShapeMockupWedgeBar.prototype.cst.SEL_TEXT_COLOR,"#ffffff");b=mxUtils.getValue(this.style,mxShapeMockupWedgeBar.prototype.cst.TEXT_SIZE,"17").toString();a.setFontColor(d);a.setFontSize(b);for(b=0;b<k;b++){var p=n[b];b===m&&a.setFontColor(e);"+"===p.charAt(0)&&(p=p.substring(1));var q=l[b]+2*h;a.text(f+h,.5*
434c,0,0,p,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);f=f+q+g;b===m&&a.setFontColor(d)}};mxCellRenderer.registerShape(mxShapeMockupWedgeBar.prototype.cst.SHAPE_WEDGE_BAR,mxShapeMockupWedgeBar);function mxShapeMockupSearchBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupSearchBox,mxShape);
435mxShapeMockupSearchBox.prototype.cst={MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",STROKE_COLOR2:"strokeColor2",SHAPE_SEARCH_BOX:"mxgraph.mockup.forms.searchBox"};mxShapeMockupSearchBox.prototype.customProperties=[{name:"strokeColor2",dispName:"Icon Color",type:"color"}];mxShapeMockupSearchBox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};
436mxShapeMockupSearchBox.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
437mxShapeMockupSearchBox.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxShapeMockupSearchBox.prototype.cst.MAIN_TEXT,"Search"),c=mxUtils.getValue(this.style,mxShapeMockupSearchBox.prototype.cst.TEXT_COLOR,"#666666"),f=mxUtils.getValue(this.style,mxShapeMockupSearchBox.prototype.cst.STROKE_COLOR2,"#008cff"),g=mxUtils.getValue(this.style,mxShapeMockupSearchBox.prototype.cst.TEXT_SIZE,"17");a.setFontColor(c);a.setFontSize(g);a.text(5,.5*e,0,0,b,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,
4380,null,0,0,0);a.setStrokeColor(f);a.ellipse(d-15,.5*e-8,10,10);a.stroke();a.begin();a.moveTo(d-19,.5*e+9);a.lineTo(d-13,.5*e+1);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupSearchBox.prototype.cst.SHAPE_SEARCH_BOX,mxShapeMockupSearchBox);function mxShapeMockupSignIn(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupSignIn,mxShape);
439mxShapeMockupSignIn.prototype.cst={MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_COLOR2:"textColor2",TEXT_SIZE:"textSize",TEXT_SIZE2:"textSize2",STROKE_COLOR2:"strokeColor2",FILL_COLOR2:"fillColor2",SHAPE_SIGN_IN:"mxgraph.mockup.forms.signIn"};mxShapeMockupSignIn.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeMockupSignIn.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
440mxShapeMockupSignIn.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxShapeMockupSignIn.prototype.cst.MAIN_TEXT,"Sign In,User Name:,johndoe,Password:,********,Forgot Password?,New User,SIGN IN,SIGN UP").toString().split(","),c=mxUtils.getValue(this.style,mxShapeMockupSignIn.prototype.cst.TEXT_COLOR,"#666666"),f=mxUtils.getValue(this.style,mxShapeMockupSignIn.prototype.cst.TEXT_COLOR2,"#ffffff"),g=mxUtils.getValue(this.style,mxShapeMockupSignIn.prototype.cst.TEXT_SIZE,"12"),
441h=mxUtils.getValue(this.style,mxShapeMockupSignIn.prototype.cst.TEXT_SIZE2,"15"),k=mxUtils.getValue(this.style,mxShapeMockupSignIn.prototype.cst.STROKE_COLOR2,"#ddeeff"),l=mxUtils.getValue(this.style,mxShapeMockupSignIn.prototype.cst.FILL_COLOR2,"#66bbff");a.setFillColor(l);a.roundrect(.09*d,.52*e,.36*d,.09*e,5,5);a.fill();a.roundrect(.09*d,.84*e,.36*d,.09*e,5,5);a.fill();a.rect(.05*d,.22*e,.75*d,.08*e);a.stroke();a.rect(.05*d,.4*e,.75*d,.08*e);a.stroke();a.setStrokeColor(k);a.setStrokeWidth(2);a.begin();
442a.moveTo(.05*d,.12*e);a.lineTo(.95*d,.12*e);a.moveTo(.05*d,.72*e);a.lineTo(.95*d,.72*e);a.stroke();a.setFontColor(c);a.setFontSize(g);a.text(.05*d,.1*e,0,0,b[0],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_BOTTOM,0,null,0,0,0);a.text(.05*d,.2*e,0,0,b[1],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_BOTTOM,0,null,0,0,0);a.text(.075*d,.26*e,0,0,b[2],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.05*d,.38*e,0,0,b[3],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_BOTTOM,0,null,0,0,0);a.text(.075*
443d,.44*e,0,0,b[4],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.05*d,.8*e,0,0,b[6],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setStrokeWidth(1);a.setFontColor("#9999ff");a.setStrokeColor("#9999ff");c=mxUtils.getSizeForString(b[5],g,mxConstants.DEFAULT_FONTFAMILY).width;a.text(.05*d,.7*e,0,0,b[5],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_BOTTOM,0,null,0,0,0);a.begin();a.moveTo(.05*d,.7*e);a.lineTo(.05*d+c,.7*e);a.stroke();a.setFontColor(f);a.setFontStyle(mxConstants.FONT_BOLD);
444a.setFontSize(h);a.text(.27*d,.565*e,0,0,b[7],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.27*d,.885*e,0,0,b[8],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupSignIn.prototype.cst.SHAPE_SIGN_IN,mxShapeMockupSignIn);function mxShapeMockupCalendar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupCalendar,mxShape);
445mxShapeMockupCalendar.prototype.cst={SHAPE_CALENDAR:"mxgraph.mockup.forms.calendar",DAYS:"days",SELECTED_DAY:"selDay",PREV_DAYS:"prevDays",FIRST_DAY:"firstDay",START_ON:"startOn",DAY_NAMES:"dayNames",MAIN_TEXT:"mainText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",TEXT_COLOR2:"textColor2",STROKE_COLOR2:"strokeColor2",FILL_COLOR2:"fillColor2"};mxShapeMockupCalendar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};
446mxShapeMockupCalendar.prototype.background=function(a,d,e){a.roundrect(0,0,d,e,.0312*d,.0286*e);a.fillAndStroke()};
447mxShapeMockupCalendar.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#999999"),c=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),f=mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.STROKE_COLOR2,"#008cff"),g=mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.FILL_COLOR2,"#ddeeff"),h=mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.MAIN_TEXT,""),k=mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.TEXT_SIZE,
448"15"),l=mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.TEXT_COLOR,"#999999"),m=mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.TEXT_COLOR2,"#ffffff"),n=parseInt(mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.DAYS,"30"),10),p=parseInt(mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.PREV_DAYS,"31"),10),q=parseInt(mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.FIRST_DAY,"0"),10),t=parseInt(mxUtils.getValue(this.style,
449mxShapeMockupCalendar.prototype.cst.START_ON,"6",10)),u=mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.DAY_NAMES,"Mo,Tu,We,Th,Fr,Sa,Su").toString().split(","),v=parseInt(mxUtils.getValue(this.style,mxShapeMockupCalendar.prototype.cst.SELECTED_DAY,"24"),10);fistDay=Math.max(q,0);t=Math.max(t,0);fistDay=Math.min(q,6);t=Math.min(t,6);a.roundrect(.05*d,.0457*e,.1438*d,.1029*e,.025*d,.0229*e);a.stroke();a.roundrect(.8125*d,.0457*e,.1438*d,.1029*e,.025*d,.0229*e);a.stroke();a.setStrokeWidth(2);
450a.setStrokeColor(f);a.begin();a.moveTo(.1438*d,.0743*e);a.lineTo(.1*d,.0971*e);a.lineTo(.1438*d,.12*e);a.moveTo(.8625*d,.0743*e);a.lineTo(.9062*d,.0971*e);a.lineTo(.8625*d,.12*e);a.stroke();a.setFontSize(k);a.setFontColor(l);a.text(.5*d,.0971*e,0,0,h,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);h=.875*d/7;for(k=0;7>k;k++){var l=.0625*d+.5*h+k*h,r=k+t;6<r&&(r-=7);a.text(l,.2114*e,0,0,u[r],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)}a.setStrokeWidth(1);var w=0,
451r=u=-1;if(q!==t){a.setStrokeColor(b);a.setFillColor(g);q-=t;0>q&&(q+=7);for(k=0;k<q;k++)l=.0625*d+k*h,a.rect(l,.2686*e,h,.1143*e),a.fillAndStroke(),a.text(l+.5*h,.2686*e+.5*h,0,0,(p-q+k+1).toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);w=q}a.setFillColor(c);a.setStrokeColor(b);for(k=b=0;k<n;k++)c=k+1,l=.0625*d+w*h,p=.2686*e+b*e*.1143,c===v?(u=l,r=p):(a.rect(l,p,h,.1143*e),a.fillAndStroke(),a.text(l+.5*h,p+.5*h,0,0,c.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,
4520,null,0,0,0)),6>w?w++:(w=0,b++);k=1;for(a.setFillColor(g);6>b;)l=.0625*d+w*h,p=.2686*e+b*e*.1143,a.rect(l,p,h,.1143*e),a.fillAndStroke(),a.text(l+.5*h,p+.5*h,0,0,k.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),6>w?w++:(w=0,b++),k++;0<=u&&(a.setStrokeColor("#ff0000"),a.setStrokeWidth(2),a.setFillColor(f),a.setFontColor(m),a.rect(u,r,h,.1143*e),a.fillAndStroke(),a.text(u+.5*h,r+.5*h,0,0,v.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0))};
453mxCellRenderer.registerShape(mxShapeMockupCalendar.prototype.cst.SHAPE_CALENDAR,mxShapeMockupCalendar);function mxShapeMockupEmailForm(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupEmailForm,mxShape);mxShapeMockupEmailForm.prototype.cst={MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",SHOW_CC:"showCC",SHOW_BCC:"showBCC",TEXT_SIZE:"textSize",SHAPE_EMAIL_FORM:"mxgraph.mockup.forms.emailForm"};
454mxShapeMockupEmailForm.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupEmailForm.prototype.cst.TEXT_SIZE,"12"),g=mxUtils.getValue(this.style,mxShapeMockupEmailForm.prototype.cst.SHOW_CC,"true"),h=mxUtils.getValue(this.style,mxShapeMockupEmailForm.prototype.cst.SHOW_BCC,"true"),k=4*f,l=0;"true"===g&&l++;"true"===h&&l++;b=Math.max(b,5*f);c=Math.max(c,10.5*f+l*f*3);a.translate(d,e);this.background(a,b,c,f,k,g,h);a.setShadow(!1);this.foreground(a,b,c,f,k,
455g,h)};mxShapeMockupEmailForm.prototype.background=function(a,d,e,b,c,f,g){var h=9*b;"true"===f&&(h+=3*b,a.rect(c,9*b,d-c,1.5*b),a.fillAndStroke());"true"===g&&(a.rect(c,h,d-c,1.5*b),h+=3*b,a.fillAndStroke());a.rect(c,0,d-c,1.5*b);a.fillAndStroke();a.rect(c,3*b,d-c,1.5*b);a.fillAndStroke();a.rect(c,6*b,d-c,1.5*b);a.fillAndStroke();a.rect(0,h,d,e-h);a.fillAndStroke()};
456mxShapeMockupEmailForm.prototype.foreground=function(a,d,e,b,c,f,g){d=mxUtils.getValue(this.style,mxShapeMockupEmailForm.prototype.cst.MAIN_TEXT,"john@jgraph.com,Greeting,fred@jgraph.com,,,Lorem ipsum").toString().split(",");e=mxUtils.getValue(this.style,mxShapeMockupEmailForm.prototype.cst.TEXT_COLOR,"#666666");a.setFontColor(e);a.setFontSize(b);a.text(c-.5*b,.75*b,0,0,"From",mxConstants.ALIGN_RIGHT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(c-.5*b,3.75*b,0,0,"Subject",mxConstants.ALIGN_RIGHT,
457mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(c-.5*b,6.75*b,0,0,"To",mxConstants.ALIGN_RIGHT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(c+.5*b,.75*b,0,0,d[0],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(c+.5*b,3.75*b,0,0,d[1],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(c+.5*b,6.75*b,0,0,d[2],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);e=9*b;"true"===f&&(e+=3*b,a.text(c-.5*b,9.75*b,0,0,"CC",mxConstants.ALIGN_RIGHT,mxConstants.ALIGN_MIDDLE,
4580,null,0,0,0),a.text(c+.5*b,9.75*b,0,0,d[3],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0));"true"===g&&(a.text(c-.5*b,e+.75*b,0,0,"BCC",mxConstants.ALIGN_RIGHT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),a.text(c+.5*b,e+.75*b,0,0,d[4],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),e+=3*b);a.text(.5*b,e+.75*b,0,0,d[5],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupEmailForm.prototype.cst.SHAPE_EMAIL_FORM,mxShapeMockupEmailForm);
459function mxShapeMockupFormsRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupFormsRRect,mxShape);mxShapeMockupFormsRRect.prototype.cst={RRECT:"mxgraph.mockup.forms.rrect",R_SIZE:"rSize"};mxShapeMockupFormsRRect.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
460mxShapeMockupFormsRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupFormsRRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupFormsRRect.prototype.cst.RRECT,mxShapeMockupFormsRRect);function mxShapeMockupFormsAnchor(a,d,e,b){mxShape.call(this);this.bounds=a}mxUtils.extend(mxShapeMockupFormsAnchor,mxShape);mxShapeMockupFormsAnchor.prototype.cst={ANCHOR:"mxgraph.mockup.forms.anchor"};
461mxShapeMockupFormsAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeMockupFormsAnchor.prototype.cst.ANCHOR,mxShapeMockupFormsAnchor);function mxShapeMockupFormsCheckbox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupFormsCheckbox,mxShape);mxShapeMockupFormsCheckbox.prototype.cst={CHECKBOX:"mxgraph.mockup.forms.checkbox"};
462mxShapeMockupFormsCheckbox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke();a.begin();a.moveTo(.8*b,.2*c);a.lineTo(.4*b,.8*c);a.lineTo(.25*b,.6*c);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupFormsCheckbox.prototype.cst.CHECKBOX,mxShapeMockupFormsCheckbox);function mxShapeMockupFormsURect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupFormsURect,mxShape);
463mxShapeMockupFormsURect.prototype.cst={U_RECT:"mxgraph.mockup.forms.uRect"};mxShapeMockupFormsURect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,c);a.lineTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupFormsURect.prototype.cst.U_RECT,mxShapeMockupFormsURect);function mxShapeMockupBarChart(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
464mxUtils.extend(mxShapeMockupBarChart,mxShape);mxShapeMockupBarChart.prototype.cst={STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",FILL_COLOR2:"fillColor2",FILL_COLOR3:"fillColor3",SHAPE_BAR_CHART:"mxgraph.mockup.graphics.barChart"};
465mxShapeMockupBarChart.prototype.customProperties=[{name:"strokeColor2",dispName:"Stroke2 Color",type:"color"},{name:"strokeColor3",dispName:"Stroke3 Color",type:"color"},{name:"fillColor2",dispName:"Fill2 Color",type:"color"},{name:"fillColor3",dispName:"Fill3 Color",type:"color"}];
466mxShapeMockupBarChart.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);"none"!==mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"none")&&a.setShadow(!1);this.bars(a,d,e,b,c)};mxShapeMockupBarChart.prototype.background=function(a,d,e,b,c,f,g){a.rect(0,0,b,c);a.fillAndStroke()};
467mxShapeMockupBarChart.prototype.bars=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupBarChart.prototype.cst.STROKE_COLOR2,"none");e=mxUtils.getValue(this.style,mxShapeMockupBarChart.prototype.cst.STROKE_COLOR3,"#666666");var f=mxUtils.getValue(this.style,mxShapeMockupBarChart.prototype.cst.FILL_COLOR2,"#008cff"),g=mxUtils.getValue(this.style,mxShapeMockupBarChart.prototype.cst.FILL_COLOR3,"#dddddd"),h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1");a.setStrokeColor(d);
468a.setFillColor(f);a.rect(0,.2*c,.75*b,.05*c);a.fillAndStroke();a.rect(0,.45*c,.6*b,.05*c);a.fillAndStroke();a.rect(0,.7*c,.95*b,.05*c);a.fillAndStroke();a.setFillColor(g);a.rect(0,.25*c,.85*b,.05*c);a.fillAndStroke();a.rect(0,.5*c,.65*b,.05*c);a.fillAndStroke();a.rect(0,.75*c,.8*b,.05*c);a.fillAndStroke();a.setStrokeWidth(2*h);a.setStrokeColor(e);a.setShadow(!1);a.begin();a.moveTo(0,0);a.lineTo(0,c);a.lineTo(b,c);a.stroke()};
469mxCellRenderer.registerShape(mxShapeMockupBarChart.prototype.cst.SHAPE_BAR_CHART,mxShapeMockupBarChart);function mxShapeMockupColumnChart(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupColumnChart,mxShape);mxShapeMockupColumnChart.prototype.cst={STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",FILL_COLOR2:"fillColor2",FILL_COLOR3:"fillColor3",SHAPE_COLUMN_CHART:"mxgraph.mockup.graphics.columnChart"};
470mxShapeMockupColumnChart.prototype.customProperties=[{name:"strokeColor2",dispName:"Bar Stroke Color",type:"color"},{name:"strokeColor3",dispName:"Coord System Color",type:"color"},{name:"fillColor2",dispName:"Bar1 Color",type:"color"},{name:"fillColor3",dispName:"Bar2 Color",type:"color"}];
471mxShapeMockupColumnChart.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);"none"!==mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"none")&&a.setShadow(!1);this.bars(a,d,e,b,c)};mxShapeMockupColumnChart.prototype.background=function(a,d,e,b,c,f,g){a.rect(0,0,b,c);a.fillAndStroke()};
472mxShapeMockupColumnChart.prototype.bars=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupColumnChart.prototype.cst.STROKE_COLOR2,"none");e=mxUtils.getValue(this.style,mxShapeMockupColumnChart.prototype.cst.STROKE_COLOR3,"#666666");var f=mxUtils.getValue(this.style,mxShapeMockupColumnChart.prototype.cst.FILL_COLOR2,"#008cff"),g=mxUtils.getValue(this.style,mxShapeMockupColumnChart.prototype.cst.FILL_COLOR3,"#dddddd"),h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1");a.setStrokeColor(d);
473a.setFillColor(f);a.rect(.2*b,.25*c,.05*b,.75*c);a.fillAndStroke();a.rect(.45*b,.4*c,.05*b,.6*c);a.fillAndStroke();a.rect(.7*b,.05*c,.05*b,.95*c);a.fillAndStroke();a.setFillColor(g);a.rect(.25*b,.15*c,.05*b,.85*c);a.fillAndStroke();a.rect(.5*b,.35*c,.05*b,.65*c);a.fillAndStroke();a.rect(.75*b,.2*c,.05*b,.8*c);a.fillAndStroke();a.setStrokeWidth(2*h);a.setStrokeColor(e);a.setShadow(!1);a.begin();a.moveTo(0,0);a.lineTo(0,c);a.lineTo(b,c);a.stroke()};
474mxCellRenderer.registerShape(mxShapeMockupColumnChart.prototype.cst.SHAPE_COLUMN_CHART,mxShapeMockupColumnChart);function mxShapeMockupLineChart(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupLineChart,mxShape);mxShapeMockupLineChart.prototype.cst={STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",STROKE_COLOR4:"strokeColor4",SHAPE_LINE_CHART:"mxgraph.mockup.graphics.lineChart"};
475mxShapeMockupLineChart.prototype.customProperties=[{name:"strokeColor2",dispName:"Coord. System Color",type:"color"},{name:"strokeColor3",dispName:"Line1 Color",type:"color"},{name:"strokeColor4",dispName:"Line2 Color",type:"color"}];mxShapeMockupLineChart.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);"none"!==mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"none")&&a.setShadow(!1);this.bars(a,d,e,b,c)};
476mxShapeMockupLineChart.prototype.background=function(a,d,e,b,c,f,g){a.rect(0,0,b,c);a.fillAndStroke()};
477mxShapeMockupLineChart.prototype.bars=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupLineChart.prototype.cst.STROKE_COLOR2,"#666666");e=mxUtils.getValue(this.style,mxShapeMockupLineChart.prototype.cst.STROKE_COLOR3,"#008cff");var f=mxUtils.getValue(this.style,mxShapeMockupLineChart.prototype.cst.STROKE_COLOR4,"#dddddd"),g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1");a.setStrokeWidth(2*g);a.setStrokeColor(f);a.begin();a.moveTo(0,c);a.lineTo(.3*b,.5*c);a.lineTo(.6*
478b,.74*c);a.lineTo(.9*b,.24*c);a.stroke();a.setStrokeColor(e);a.begin();a.moveTo(0,c);a.lineTo(.3*b,.65*c);a.lineTo(.6*b,.6*c);a.lineTo(.9*b,.35*c);a.stroke();a.setStrokeColor(d);a.setShadow(!1);a.begin();a.moveTo(0,0);a.lineTo(0,c);a.lineTo(b,c);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupLineChart.prototype.cst.SHAPE_LINE_CHART,mxShapeMockupLineChart);function mxShapeMockupPieChart(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
479mxUtils.extend(mxShapeMockupPieChart,mxShape);mxShapeMockupPieChart.prototype.cst={PARTS:"parts",PART_COLORS:"partColors",SHAPE_PIE_CHART:"mxgraph.mockup.graphics.pieChart"};
480mxShapeMockupPieChart.prototype.customProperties=[{name:"partsCount",dispName:"partsCount",type:"int",defVal:4,dependentProps:["partColors","parts"]},{name:"partColors",dispName:"Part Colors",type:"staticArr",subType:"color",sizeProperty:"partsCount",subDefVal:"#FFFFFF"},{name:"parts",dispName:"Part Sizes",type:"staticArr",subType:"int",sizeProperty:"partsCount",subDefVal:"10"}];
481mxShapeMockupPieChart.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupPieChart.prototype.background=function(a,d,e,b,c,f,g){a.ellipse(0,0,b,c);a.fillAndStroke()};
482mxShapeMockupPieChart.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupPieChart.prototype.cst.PARTS,"10,20,30").toString().split(",");e=d.length;for(var f=mxUtils.getValue(this.style,mxShapeMockupPieChart.prototype.cst.PART_COLORS,"#333333,#666666,#999999").toString().split(","),g=0,h=0;h<e;h++)g+=parseInt(d[h],10);for(h=0;h<e;h++){f.length>h?a.setFillColor(f[h]):a.setFillColor("#ff0000");var k=0,l;l=parseInt(d[h],10)/g;.5===l&&(l=.501);for(var m=0;m<h;m++)k+=parseInt(d[m],
48310)/g;l+=k;var n=2*Math.PI*k,p=2*Math.PI*l,m=.5*b-b*Math.sin(n)*.5,n=.5*c-c*Math.cos(n)*.5,q=.5*b-b*Math.sin(p)*.5,p=.5*c-c*Math.cos(p)*.5,t=1;.5>l-k&&(t=0);a.begin();a.moveTo(.5*b,.5*c);a.lineTo(q,p);a.arcTo(.5*b,.5*c,0,t,1,m,n);a.close();a.fillAndStroke()}};mxCellRenderer.registerShape(mxShapeMockupPieChart.prototype.cst.SHAPE_PIE_CHART,mxShapeMockupPieChart);function mxShapeMockupIconGrid(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
484mxUtils.extend(mxShapeMockupIconGrid,mxShape);mxShapeMockupIconGrid.prototype.cst={GRID_SIZE:"gridSize",SHAPE_ICON_GRID:"mxgraph.mockup.graphics.iconGrid"};mxShapeMockupIconGrid.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxShapeMockupIconGrid.prototype.cst.GRID_SIZE,"3,3").toString().split(",");this.background(a,b,c,d);a.setShadow(!1);this.foreground(a,b,c,d)};
485mxShapeMockupIconGrid.prototype.background=function(a,d,e,b){d/=parseInt(b[0],10)+.5*(b[0]-1);e/=parseInt(b[1],10)+.5*(b[1]-1);for(var c=0;c<b[0];c++)for(var f=0;f<b[1];f++)a.rect(1.5*d*c,1.5*e*f,d,e),a.fillAndStroke()};
486mxShapeMockupIconGrid.prototype.foreground=function(a,d,e,b){d/=parseInt(b[0],10)+.5*(b[0]-1);e/=parseInt(b[1],10)+.5*(b[1]-1);for(var c=0;c<b[0];c++)for(var f=0;f<b[1];f++)a.begin(),a.moveTo(1.5*d*c,1.5*e*f),a.lineTo(1.5*d*c+d,1.5*e*f+e),a.moveTo(1.5*d*c+d,1.5*e*f),a.lineTo(1.5*d*c,1.5*e*f+e),a.stroke()};mxCellRenderer.registerShape(mxShapeMockupIconGrid.prototype.cst.SHAPE_ICON_GRID,mxShapeMockupIconGrid);
487function mxShapeMockupBubbleChart(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupBubbleChart,mxShape);mxShapeMockupBubbleChart.prototype.cst={STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",FILL_COLOR2:"fillColor2",FILL_COLOR3:"fillColor3",SHAPE_BUBBLE_CHART:"mxgraph.mockup.graphics.bubbleChart"};
488mxShapeMockupBubbleChart.prototype.customProperties=[{name:"strokeColor2",dispName:"Bubble Stroke Color",type:"color"},{name:"strokeColor3",dispName:"Coord. System Color",type:"color"},{name:"fillColor2",dispName:"Bubble1 Color",type:"color"},{name:"fillColor3",dispName:"Bubble2 Color",type:"color"}];
489mxShapeMockupBubbleChart.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);"none"!==mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"none")&&a.setShadow(!1);this.bars(a,d,e,b,c)};mxShapeMockupBubbleChart.prototype.background=function(a,d,e,b,c,f,g){a.rect(0,0,b,c);a.fillAndStroke()};
490mxShapeMockupBubbleChart.prototype.bars=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupBubbleChart.prototype.cst.STROKE_COLOR2,"none");d=mxUtils.getValue(this.style,mxShapeMockupBubbleChart.prototype.cst.STROKE_COLOR3,"#666666");var g=mxUtils.getValue(this.style,mxShapeMockupBubbleChart.prototype.cst.FILL_COLOR2,"#008cff");e=mxUtils.getValue(this.style,mxShapeMockupBubbleChart.prototype.cst.FILL_COLOR3,"#dddddd");var h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,
491"1");a.setStrokeColor(f);a.setFillColor(g);f=.14*Math.min(c,b);a.ellipse(.4*b-f,.45*c-f,2*f,2*f);a.fillAndStroke();f=.1*Math.min(c,b);a.ellipse(.1*b-f,.8*c-f,2*f,2*f);a.fillAndStroke();f=.22*Math.min(c,b);a.ellipse(.7*b-f,.7*c-f,2*f,2*f);a.fillAndStroke();a.setFillColor(e);f=.19*Math.min(c,b);a.ellipse(.15*b-f,.25*c-f,2*f,2*f);a.fillAndStroke();f=.12*Math.min(c,b);a.ellipse(.48*b-f,.7*c-f,2*f,2*f);a.fillAndStroke();f=.1*Math.min(c,b);a.ellipse(.74*b-f,.17*c-f,2*f,2*f);a.fillAndStroke();a.setStrokeWidth(2*
492h);a.setStrokeColor(d);a.setShadow(!1);a.begin();a.moveTo(0,0);a.lineTo(0,c);a.lineTo(b,c);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupBubbleChart.prototype.cst.SHAPE_BUBBLE_CHART,mxShapeMockupBubbleChart);function mxShapeMockupGauge(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.gaugePos=25}mxUtils.extend(mxShapeMockupGauge,mxShape);
493mxShapeMockupGauge.prototype.cst={SCALE_COLORS:"scaleColors",GAUGE_LABELS:"gaugeLabels",NEEDLE_COLOR:"needleColor",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",GAUGE_POS:"gaugePos",SHAPE_GAUGE:"mxgraph.mockup.graphics.gauge"};mxShapeMockupGauge.prototype.customProperties=[{name:"scaleColors",dispName:"Scale Colors",type:"String"},{name:"needleColor",dispName:"Needle Color",type:"color"},{name:"gaugePos",dispName:"Needle Position",type:"float",min:0,max:100,defVal:25}];
494mxShapeMockupGauge.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeMockupGauge.prototype.background=function(a,d,e){a.ellipse(0,0,d,e);a.fillAndStroke()};
495mxShapeMockupGauge.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxShapeMockupGauge.prototype.cst.GAUGE_POS,"0"),c=mxUtils.getValue(this.style,mxShapeMockupGauge.prototype.cst.SCALE_COLORS,"#888888,#aaaaaa,#444444").toString().split(","),f=mxUtils.getValue(this.style,mxShapeMockupGauge.prototype.cst.GAUGE_LABELS,"CPU[%],0,100").toString().split(","),g=mxUtils.getValue(this.style,mxShapeMockupGauge.prototype.cst.NEEDLE_COLOR,"#008cff"),h=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,
496"#ffffff"),k=mxUtils.getValue(this.style,mxShapeMockupGauge.prototype.cst.TEXT_COLOR,"#666666"),l=mxUtils.getValue(this.style,mxShapeMockupGauge.prototype.cst.TEXT_SIZE,"12"),b=Math.max(0,b),b=Math.min(100,b);a.setFillColor(c[1]);a.begin();a.moveTo(.05*d,.5*e);a.arcTo(.4*d,.4*e,0,0,1,.95*d,.5*e);a.lineTo(d,.5*e);a.arcTo(.5*d,.5*e,0,0,0,0,.5*e);a.close();a.fill();a.setFillColor(c[0]);a.begin();a.moveTo(.05*d,.5*e);a.arcTo(.45*d,.45*e,0,0,0,.182*d,.818*e);a.lineTo(.146*d,.854*e);a.arcTo(.5*d,.5*e,0,
4970,1,0,.5*e);a.close();a.fill();a.setFillColor(c[2]);a.begin();a.moveTo(d,.5*e);a.arcTo(.5*d,.5*e,0,0,1,.854*d,.854*e);a.lineTo(.818*d,.818*e);a.arcTo(.45*d,.45*e,0,0,0,.95*d,.5*e);a.close();a.fill();a.setFontSize(l);a.setFontColor(k);a.text(.5*d,.3*e,0,0,f[0],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.2*d,.85*e,0,0,f[1],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8*d,.85*e,0,0,f[2],mxConstants.ALIGN_RIGHT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);
498b=.75*(2*Math.PI*parseFloat(b)/100)+1.25*Math.PI;c=.5*d+.38*d*Math.sin(b);f=.5*e-.38*e*Math.cos(b);a.setFillColor(g);a.begin();a.moveTo(c,f);c=.5*d+.05*d*Math.cos(b);f=.5*e+.05*e*Math.sin(b);a.lineTo(c,f);g=.5*d+-.05*d*Math.sin(b);c=.5*e- -.05*e*Math.cos(b);a.arcTo(.05*d,.05*e,0,0,1,g,c);g=.5*d-.05*d*Math.cos(b);c=.5*e-.05*e*Math.sin(b);a.arcTo(.05*d,.05*e,0,0,1,g,c);a.close();a.fill();a.setFillColor(h);a.begin();a.moveTo(.49*d,.49*e);a.lineTo(.51*d,.49*e);a.lineTo(.51*d,.51*e);a.lineTo(.49*d,.51*
499e);a.close();a.fill();a.begin();a.ellipse(0,0,d,e);a.stroke();a.begin();a.moveTo(.146*d,.854*e);a.lineTo(.219*d,.781*e);a.moveTo(.854*d,.854*e);a.lineTo(.781*d,.781*e);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupGauge.prototype.cst.SHAPE_GAUGE,mxShapeMockupGauge);
500Graph.handleFactory[mxShapeMockupGauge.prototype.cst.SHAPE_GAUGE]=function(a){return[Graph.createHandle(a,["gaugePos"],function(a){var d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"gaugePos",this.gaugePos))));return new mxPoint(a.x+.2*a.width+.6*d*a.width/100,a.y+.8*a.height)},function(a,e){this.state.style.gaugePos=Math.round(1E3*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/1E3})]};
501function mxShapeMockupPlotChart(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupPlotChart,mxShape);mxShapeMockupPlotChart.prototype.cst={STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",SHAPES_COLORS:"fillColor2",SHAPE_PLOT_CHART:"mxgraph.mockup.graphics.plotChart"};
502mxShapeMockupPlotChart.prototype.customProperties=[{name:"strokeColor2",dispName:"Bubble Stroke Color",type:"color"},{name:"strokeColor3",dispName:"Coord. System Color",type:"color"},{name:"fillColor2",dispName:"Shapes Color",type:"string"}];mxShapeMockupPlotChart.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);"none"!==mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"none")&&a.setShadow(!1);this.foreground(a,d,e,b,c)};
503mxShapeMockupPlotChart.prototype.background=function(a,d,e,b,c,f,g){a.rect(0,0,b,c);a.fillAndStroke()};
504mxShapeMockupPlotChart.prototype.foreground=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupPlotChart.prototype.cst.STROKE_COLOR2,"#dddddd");d=mxUtils.getValue(this.style,mxShapeMockupPlotChart.prototype.cst.STROKE_COLOR3,"#666666");e=mxUtils.getValue(this.style,mxShapeMockupPlotChart.prototype.cst.SHAPES_COLORS,"#00aaff,#0044ff,#008cff").toString().split(",");var g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1"),h=.03*Math.min(b,c);a.setStrokeColor(f);a.setFillColor(e[0]);
505var f=.2*b,k=.8*c;a.begin();a.moveTo(f-.5*h,k-.5*h);a.lineTo(f+.5*h,k-.5*h);a.lineTo(f+.5*h,k+.5*h);a.lineTo(f-.5*h,k+.5*h);a.close();a.fillAndStroke();f=.3*b;k=.65*c;a.begin();a.moveTo(f-.5*h,k-.5*h);a.lineTo(f+.5*h,k-.5*h);a.lineTo(f+.5*h,k+.5*h);a.lineTo(f-.5*h,k+.5*h);a.close();a.fillAndStroke();f=.6*b;k=.44*c;a.begin();a.moveTo(f-.5*h,k-.5*h);a.lineTo(f+.5*h,k-.5*h);a.lineTo(f+.5*h,k+.5*h);a.lineTo(f-.5*h,k+.5*h);a.close();a.fillAndStroke();f=.85*b;k=.9*c;a.begin();a.moveTo(f-.5*h,k-.5*h);a.lineTo(f+
506.5*h,k-.5*h);a.lineTo(f+.5*h,k+.5*h);a.lineTo(f-.5*h,k+.5*h);a.close();a.fillAndStroke();a.setFillColor(e[1]);f=.08*b;k=.65*c;a.begin();a.moveTo(f,k-.5*h);a.lineTo(f+.5*h,k+.5*h);a.lineTo(f-.5*h,k+.5*h);a.close();a.fillAndStroke();f=.58*b;k=.85*c;a.begin();a.moveTo(f,k-.5*h);a.lineTo(f+.5*h,k+.5*h);a.lineTo(f-.5*h,k+.5*h);a.close();a.fillAndStroke();f=.72*b;k=.92*c;a.begin();a.moveTo(f,k-.5*h);a.lineTo(f+.5*h,k+.5*h);a.lineTo(f-.5*h,k+.5*h);a.close();a.fillAndStroke();a.setFillColor(e[2]);f=.32*b;
507k=.28*c;a.begin();a.moveTo(f,k-.75*h);a.lineTo(f+.75*h,k);a.lineTo(f,k+.75*h);a.lineTo(f-.75*h,k);a.close();a.fillAndStroke();f=.92*b;k=.45*c;a.begin();a.moveTo(f,k-.75*h);a.lineTo(f+.75*h,k);a.lineTo(f,k+.75*h);a.lineTo(f-.75*h,k);a.close();a.fillAndStroke();f=.81*b;k=.37*c;a.begin();a.moveTo(f,k-.75*h);a.lineTo(f+.75*h,k);a.lineTo(f,k+.75*h);a.lineTo(f-.75*h,k);a.close();a.fillAndStroke();f=.51*b;k=.7*c;a.begin();a.moveTo(f,k-.75*h);a.lineTo(f+.75*h,k);a.lineTo(f,k+.75*h);a.lineTo(f-.75*h,k);a.close();
508a.fillAndStroke();a.setStrokeWidth(2*g);a.setStrokeColor(d);a.setShadow(!1);a.begin();a.moveTo(0,0);a.lineTo(0,c);a.lineTo(b,c);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupPlotChart.prototype.cst.SHAPE_PLOT_CHART,mxShapeMockupPlotChart);function mxShapeMockupGanttChart(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupGanttChart,mxShape);
509mxShapeMockupGanttChart.prototype.cst={STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3",SHAPES_COLORS:"fillColor2",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",SHAPE_GANTT_CHART:"mxgraph.mockup.graphics.ganttChart"};mxShapeMockupGanttChart.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupGanttChart.prototype.background=function(a,d,e,b,c,f,g){a.rect(0,0,b,c);a.fillAndStroke()};
510mxShapeMockupGanttChart.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupGanttChart.prototype.cst.SHAPES_COLORS,"#888888,#bbbbbb").toString().split(",");mxUtils.getValue(this.style,mxShapeMockupGanttChart.prototype.cst.TEXT_COLOR,"#666666");mxUtils.getValue(this.style,mxShapeMockupGanttChart.prototype.cst.TEXT_SIZE,"#12");a.begin();a.moveTo(0,.13*c);a.lineTo(b,.13*c);a.moveTo(.4*b,0);a.lineTo(.4*b,c);a.moveTo(.4*b,.065*c);a.lineTo(b,.065*c);a.moveTo(.03*b,0);a.lineTo(.03*
511b,.13*c);a.moveTo(.1*b,0);a.lineTo(.1*b,.13*c);a.moveTo(.315*b,0);a.lineTo(.315*b,.13*c);a.moveTo(.45*b,.065*c);a.lineTo(.45*b,.13*c);a.moveTo(.5*b,.065*c);a.lineTo(.5*b,c);a.moveTo(.55*b,.065*c);a.lineTo(.55*b,.13*c);a.moveTo(.6*b,.065*c);a.lineTo(.6*b,c);a.moveTo(.65*b,.065*c);a.lineTo(.65*b,.13*c);a.moveTo(.7*b,.065*c);a.lineTo(.7*b,c);a.moveTo(.75*b,0);a.lineTo(.75*b,.13*c);a.moveTo(.8*b,.065*c);a.lineTo(.8*b,c);a.moveTo(.85*b,.065*c);a.lineTo(.85*b,.13*c);a.moveTo(.9*b,.065*c);a.lineTo(.9*b,
512c);a.moveTo(.95*b,.065*c);a.lineTo(.95*b,.13*c);a.stroke();a.setFillColor(d[0]);a.begin();a.moveTo(.41*b,.15*c);a.lineTo(.64*b,.15*c);a.lineTo(.64*b,.18*c);a.lineTo(.625*b,.21*c);a.lineTo(.61*b,.18*c);a.lineTo(.44*b,.18*c);a.lineTo(.425*b,.21*c);a.lineTo(.41*b,.18*c);a.close();a.moveTo(.41*b,.24*c);a.lineTo(.49*b,.24*c);a.lineTo(.49*b,.275*c);a.lineTo(.41*b,.275*c);a.close();a.moveTo(.46*b,.31*c);a.lineTo(.64*b,.31*c);a.lineTo(.64*b,.345*c);a.lineTo(.46*b,.345*c);a.close();a.moveTo(.56*b,.39*c);a.lineTo(.69*
513b,.39*c);a.lineTo(.69*b,.425*c);a.lineTo(.56*b,.425*c);a.close();a.fill();a.setFillColor(d[1]);a.begin();a.moveTo(.46*b,.32*c);a.lineTo(.58*b,.32*c);a.lineTo(.58*b,.335*c);a.lineTo(.46*b,.335*c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeMockupGanttChart.prototype.cst.SHAPE_GANTT_CHART,mxShapeMockupGanttChart);function mxShapeMockupSimpleIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupSimpleIcon,mxShape);
514mxShapeMockupSimpleIcon.prototype.cst={SIMPLE_ICON:"mxgraph.mockup.graphics.simpleIcon"};mxShapeMockupSimpleIcon.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke();a.begin();a.moveTo(0,0);a.lineTo(b,c);a.moveTo(0,c);a.lineTo(b,0);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupSimpleIcon.prototype.cst.SIMPLE_ICON,mxShapeMockupSimpleIcon);function mxShapeMockupGraphicsAnchor(a,d,e,b){mxShape.call(this);this.bounds=a}
515mxUtils.extend(mxShapeMockupGraphicsAnchor,mxShape);mxShapeMockupGraphicsAnchor.prototype.cst={ANCHOR:"mxgraph.mockup.graphics.anchor"};mxShapeMockupGraphicsAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeMockupGraphicsAnchor.prototype.cst.ANCHOR,mxShapeMockupGraphicsAnchor);function mxShapeMockupGraphicsRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupGraphicsRRect,mxShape);
516mxShapeMockupGraphicsRRect.prototype.cst={RRECT:"mxgraph.mockup.graphics.rrect",R_SIZE:"rSize"};mxShapeMockupGraphicsRRect.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];mxShapeMockupGraphicsRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupGraphicsRRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};
517mxCellRenderer.registerShape(mxShapeMockupGraphicsRRect.prototype.cst.RRECT,mxShapeMockupGraphicsRRect);function mxShapeMockupCurlyBrace(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupCurlyBrace,mxShape);mxShapeMockupCurlyBrace.prototype.cst={SHAPE_CURLY_BRACE:"mxgraph.mockup.markup.curlyBrace"};mxShapeMockupCurlyBrace.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
518mxShapeMockupCurlyBrace.prototype.background=function(a,d,e,b,c){d=.5*c;e=Math.min(.125*b,d);a.begin();a.moveTo(0,d+e);a.arcTo(e,e,0,0,1,e,d);a.lineTo(.5*b-e,d);a.arcTo(e,e,0,0,0,.5*b,d-e);a.arcTo(e,e,0,0,0,.5*b+e,d);a.lineTo(b-e,d);a.arcTo(e,e,0,0,1,b,d+e);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupCurlyBrace.prototype.cst.SHAPE_CURLY_BRACE,mxShapeMockupCurlyBrace);
519function mxShapeMockupLine(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupLine,mxShape);mxShapeMockupLine.prototype.cst={SHAPE_LINE:"mxgraph.mockup.markup.line"};mxShapeMockupLine.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupLine.prototype.cst.SHAPE_LINE,mxShapeMockupLine);
520function mxShapeMockupScratchOut(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupScratchOut,mxShape);mxShapeMockupScratchOut.prototype.cst={SHAPE_SCRATCH_OUT:"mxgraph.mockup.markup.scratchOut"};
521mxShapeMockupScratchOut.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(.038*b,.095*c);a.curveTo(.038*b,.095*c,.289*b,-.045*c,.186*b,.05*c);a.curveTo(.084*b,.145*c,-.046*b,.251*c,.072*b,.208*c);a.curveTo(.191*b,.164*c,.522*b,-.09*c,.366*b,.062*c);a.curveTo(.21*b,.215*c,-.094*b,.38*c,.108*b,.304*c);a.curveTo(.309*b,.228*c,.73*b,-.126*c,.544*b,.096*c);a.curveTo(.358*b,.319*c,-.168*b,.592*c,.108*b,.476*c);a.curveTo(.382*b,.36*c,.972*b,-.138*c,.779*b,.114*c);a.curveTo(.585*
522b,.365*c,-.12*b,.688*c,.071*b,.639*c);a.curveTo(.262*b,.59*c,1.174*b,.012*c,.936*b,.238*c);a.curveTo(.699*b,.462*c,-.216*b,.855*c,.085*b,.806*c);a.curveTo(.386*b,.758*c,1.185*b,.26*c,.935*b,.534*c);a.curveTo(.685*b,.808*c,-.186*b,.94*c,.236*b,.895*c);a.curveTo(.659*b,.85*c,1.095*b,.608*c,.905*b,.769*c);a.curveTo(.715*b,.93*c,.286*b,.962*c,.661*b,.931*c);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupScratchOut.prototype.cst.SHAPE_SCRATCH_OUT,mxShapeMockupScratchOut);
523function mxShapeMockupRedX(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupRedX,mxShape);mxShapeMockupRedX.prototype.cst={SHAPE_RED_X:"mxgraph.mockup.markup.redX"};
524mxShapeMockupRedX.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(.1*b,0);a.lineTo(.5*b,.4*c);a.lineTo(.9*b,0);a.lineTo(b,.1*c);a.lineTo(.6*b,.5*c);a.lineTo(b,.9*c);a.lineTo(.9*b,c);a.lineTo(.5*b,.6*c);a.lineTo(.1*b,c);a.lineTo(0,.9*c);a.lineTo(.4*b,.5*c);a.lineTo(0,.1*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupRedX.prototype.cst.SHAPE_RED_X,mxShapeMockupRedX);
525function mxShapeMockupPlaybackControls(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupPlaybackControls,mxShape);mxShapeMockupPlaybackControls.prototype.cst={SHAPE_PLAYBACK_CONTROLS:"mxgraph.mockup.misc.playbackControls",FILL_COLOR2:"fillColor2",STROKE_COLOR2:"strokeColor2",FILL_COLOR3:"fillColor3",STROKE_COLOR3:"strokeColor3"};
526mxShapeMockupPlaybackControls.prototype.customProperties=[{name:"fillColor2",dispName:"Outline Color",type:"color"},{name:"fillColor3",dispName:"Symbol Color",type:"color"},{name:"strokeColor2",dispName:"Outline Stroke Color",type:"color"},{name:"strokeColor3",dispName:"Symbol Stroke Color",type:"color"}];
527mxShapeMockupPlaybackControls.prototype.paintVertexShape=function(a,d,e,b,c){c=Math.max(c,30);b=Math.max(225,b);a.translate(d,e);this.background(a,b,c,30);a.setShadow(!1);this.foreground(a,b,c,30,22)};mxShapeMockupPlaybackControls.prototype.background=function(a,d,e,b){a.rect(0,.5*(e-b),d,b);a.fillAndStroke()};
528mxShapeMockupPlaybackControls.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapeMockupPlaybackControls.prototype.cst.FILL_COLOR2,"#99ddff");var f=mxUtils.getValue(this.style,mxShapeMockupPlaybackControls.prototype.cst.STROKE_COLOR2,"none"),g=mxUtils.getValue(this.style,mxShapeMockupPlaybackControls.prototype.cst.FILL_COLOR3,"#ffffff"),h=mxUtils.getValue(this.style,mxShapeMockupPlaybackControls.prototype.cst.STROKE_COLOR3,"none");a.setStrokeColor(f);a.setFillColor(d);a.ellipse(10,
529.5*e-.5*c,c,c);a.fillAndStroke();a.ellipse(40,.5*e-.5*c,c,c);a.fillAndStroke();a.ellipse(70,.5*e-.5*c,c,c);a.fillAndStroke();a.ellipse(100,.5*e-.5*c,c,c);a.fillAndStroke();a.ellipse(130,.5*e-.5*c,c,c);a.fillAndStroke();a.ellipse(160,.5*e-.5*c,c,c);a.fillAndStroke();a.ellipse(190,.5*e-.5*c,c,c);a.fillAndStroke();a.setStrokeColor(h);a.setFillColor(g);e=.5*e-.5*b;a.begin();a.moveTo(16,e+10);a.lineTo(16,e+20);a.lineTo(18,e+20);a.lineTo(18,e+10);a.close();a.moveTo(20,e+15);a.lineTo(25,e+20);a.lineTo(25,
530e+10);a.close();a.fillAndStroke();a.begin();a.moveTo(44,e+15);a.lineTo(49,e+20);a.lineTo(49,e+10);a.close();a.moveTo(51,e+15);a.lineTo(56,e+20);a.lineTo(56,e+10);a.close();a.fillAndStroke();a.begin();a.moveTo(77,e+15);a.lineTo(82,e+20);a.lineTo(82,e+10);a.close();a.fillAndStroke();a.begin();a.moveTo(108,e+10);a.lineTo(108,e+20);a.lineTo(110,e+20);a.lineTo(110,e+10);a.close();a.moveTo(117,e+15);a.lineTo(112,e+20);a.lineTo(112,e+10);a.close();a.fillAndStroke();a.begin();a.moveTo(144,e+15);a.lineTo(139,
531e+20);a.lineTo(139,e+10);a.close();a.fillAndStroke();a.begin();a.moveTo(171,e+15);a.lineTo(166,e+20);a.lineTo(166,e+10);a.close();a.moveTo(178,e+15);a.lineTo(173,e+20);a.lineTo(173,e+10);a.close();a.fillAndStroke();a.begin();a.moveTo(203,e+10);a.lineTo(203,e+20);a.lineTo(205,e+20);a.lineTo(205,e+10);a.close();a.moveTo(201,e+15);a.lineTo(196,e+20);a.lineTo(196,e+10);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupPlaybackControls.prototype.cst.SHAPE_PLAYBACK_CONTROLS,mxShapeMockupPlaybackControls);
532function mxShapeMockupProgressBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.barPos=20}mxUtils.extend(mxShapeMockupProgressBar,mxShape);mxShapeMockupProgressBar.prototype.cst={SHAPE_PROGRESS_BAR:"mxgraph.mockup.misc.progressBar",BAR_POS:"barPos",FILL_COLOR2:"fillColor2"};
533mxShapeMockupProgressBar.prototype.customProperties=[{name:"fillColor2",dispName:"Outline Color",type:"color"},{name:"barPos",dispName:"Handle Position",type:"float",min:0,defVal:80}];mxShapeMockupProgressBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeMockupProgressBar.prototype.background=function(a,d,e){a.roundrect(0,.5*e-5,d,10,5,5);a.fillAndStroke()};
534mxShapeMockupProgressBar.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxShapeMockupProgressBar.prototype.cst.FILL_COLOR2,"#ddeeff"),c=mxUtils.getValue(this.style,mxShapeMockupProgressBar.prototype.cst.BAR_POS,"80"),c=Math.min(c,100),c=Math.max(c,0);d=0+(d-0)*c/100;a.setFillColor(b);a.roundrect(0,.5*e-5,d,10,5,5);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupProgressBar.prototype.cst.SHAPE_PROGRESS_BAR,mxShapeMockupProgressBar);
535Graph.handleFactory[mxShapeMockupProgressBar.prototype.cst.SHAPE_PROGRESS_BAR]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"barPos",this.barPos))));return new mxPoint(a.x+d*a.width/100,a.y+.5*a.height)},function(a,e){this.state.style.barPos=Math.round(1E3*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/1E3})]};
536function mxShapeMockupShoppingCart(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupShoppingCart,mxShape);mxShapeMockupShoppingCart.prototype.cst={SHAPE_SHOPPING_CART:"mxgraph.mockup.misc.shoppingCart"};
537mxShapeMockupShoppingCart.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.translate(d,e);a.setStrokeWidth(3);a.begin();a.moveTo(.975*b,.025*c);a.lineTo(.82*b,.055*c);a.lineTo(.59*b,.66*c);a.lineTo(.7*b,.765*c);a.arcTo(.06*b,.06*c,0,0,1,.665*b,.86*c);a.lineTo(.05*b,.86*c);a.moveTo(.74*b,.26*c);a.lineTo(.03*b,.28*c);a.lineTo(.065*b,.61*c);a.lineTo(.59*b,.66*c);a.stroke();a.setStrokeWidth(1);a.begin();a.moveTo(.15*b,.28*c);a.lineTo(.15*
538b,.62*c);a.moveTo(.265*b,.275*c);a.lineTo(.265*b,.63*c);a.moveTo(.38*b,.27*c);a.lineTo(.38*b,.64*c);a.moveTo(.495*b,.265*c);a.lineTo(.495*b,.65*c);a.moveTo(.61*b,.265*c);a.lineTo(.61*b,.61*c);a.stroke();a.begin();a.moveTo(.69*b,.405*c);a.lineTo(.045*b,.405*c);a.moveTo(.645*b,.52*c);a.lineTo(.055*b,.52*c);a.stroke();a.setFillColor(f);a.ellipse(.075*b,.89*c,.1*b,.1*c);a.fillAndStroke();a.ellipse(.62*b,.89*c,.1*b,.1*c);a.fillAndStroke()};
539mxCellRenderer.registerShape(mxShapeMockupShoppingCart.prototype.cst.SHAPE_SHOPPING_CART,mxShapeMockupShoppingCart);function mxShapeMockupRating(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupRating,mxShape);mxShapeMockupRating.prototype.cst={SHAPE_RATING:"mxgraph.mockup.misc.rating",RATING_STYLE:"ratingStyle",RATING_SCALE:"ratingScale",RATING_HEART:"heart",RATING_STAR:"star",EMPTY_FILL_COLOR:"emptyFillColor",GRADE:"grade"};
540mxShapeMockupRating.prototype.customProperties=[{name:"ratingStyle",dispName:"Style",type:"enum",enumList:[{val:"heart",dispName:"Heart"},{val:"star",dispName:"Star"}]},{name:"ratingScale",dispName:"Max. Rating",type:"int"},{name:"grade",dispName:"Current Rating",type:"int"},{name:"emptyFillColor",dispName:"Fill2 Color",type:"color"}];
541mxShapeMockupRating.prototype.paintVertexShape=function(a,d,e,b,c){b=mxUtils.getValue(this.style,mxShapeMockupRating.prototype.cst.RATING_STYLE,mxShapeMockupRating.prototype.cst.RATING_STAR);var f=mxUtils.getValue(this.style,mxShapeMockupRating.prototype.cst.GRADE,"5"),g=mxUtils.getValue(this.style,mxShapeMockupRating.prototype.cst.RATING_SCALE,"10");a.translate(d,e);if(b===mxShapeMockupRating.prototype.cst.RATING_STAR)for(d=0;d<f;d++)a.begin(),a.moveTo(d*c*1.5,.33*c),a.lineTo(d*c*1.5+.364*c,.33*
542c),a.lineTo(d*c*1.5+.475*c,0),a.lineTo(d*c*1.5+.586*c,.33*c),a.lineTo(d*c*1.5+.95*c,.33*c),a.lineTo(d*c*1.5+.66*c,.551*c),a.lineTo(d*c*1.5+.775*c,.9*c),a.lineTo(d*c*1.5+.475*c,.684*c),a.lineTo(d*c*1.5+.175*c,.9*c),a.lineTo(d*c*1.5+.29*c,.551*c),a.close(),a.fillAndStroke();else if(b===mxShapeMockupRating.prototype.cst.RATING_HEART)for(d=0;d<f;d++)a.begin(),a.moveTo(d*c*1.5+.519*c,.947*c),a.curveTo(d*c*1.5+.558*c,.908*c,d*c*1.5+.778*c,.682*c,d*c*1.5+.916*c,.54*c),a.curveTo(d*c*1.5+1.039*c,.414*c,d*
543c*1.5+1.036*c,.229*c,d*c*1.5+.924*c,.115*c),a.curveTo(d*c*1.5+.812*c,0,d*c*1.5+.631*c,0,d*c*1.5+.519*c,.115*c),a.curveTo(d*c*1.5+.408*c,0,d*c*1.5+.227*c,0,d*c*1.5+.115*c,.115*c),a.curveTo(d*c*1.5+.03*c,.229*c,d*c*1.5,.414*c,d*c*1.5+.123*c,.54*c),a.close(),a.fillAndStroke();d=mxUtils.getValue(this.style,mxShapeMockupRating.prototype.cst.EMPTY_FILL_COLOR,"#ffffff");a.setFillColor(d);if(b===mxShapeMockupRating.prototype.cst.RATING_STAR)for(d=f;d<g;d++)a.begin(),a.moveTo(d*c*1.5,.33*c),a.lineTo(d*c*1.5+
544.364*c,.33*c),a.lineTo(d*c*1.5+.475*c,0),a.lineTo(d*c*1.5+.586*c,.33*c),a.lineTo(d*c*1.5+.95*c,.33*c),a.lineTo(d*c*1.5+.66*c,.551*c),a.lineTo(d*c*1.5+.775*c,.9*c),a.lineTo(d*c*1.5+.475*c,.684*c),a.lineTo(d*c*1.5+.175*c,.9*c),a.lineTo(d*c*1.5+.29*c,.551*c),a.close(),a.fillAndStroke();else if(b===mxShapeMockupRating.prototype.cst.RATING_HEART)for(d=f;d<g;d++)a.begin(),a.moveTo(d*c*1.5+.519*c,.947*c),a.curveTo(d*c*1.5+.558*c,.908*c,d*c*1.5+.778*c,.682*c,d*c*1.5+.916*c,.54*c),a.curveTo(d*c*1.5+1.039*
545c,.414*c,d*c*1.5+1.036*c,.229*c,d*c*1.5+.924*c,.115*c),a.curveTo(d*c*1.5+.812*c,0,d*c*1.5+.631*c,0,d*c*1.5+.519*c,.115*c),a.curveTo(d*c*1.5+.408*c,0,d*c*1.5+.227*c,0,d*c*1.5+.115*c,.115*c),a.curveTo(d*c*1.5+.03*c,.229*c,d*c*1.5,.414*c,d*c*1.5+.123*c,.54*c),a.close(),a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupRating.prototype.cst.SHAPE_RATING,mxShapeMockupRating);
546function mxShapeMockupMail(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupMail,mxShape);mxShapeMockupMail.prototype.cst={SHAPE_MAIL:"mxgraph.mockup.misc.mail2"};mxShapeMockupMail.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(0,0);a.lineTo(.5*b,.5*c);a.lineTo(b,0);a.stroke()};
547mxCellRenderer.registerShape(mxShapeMockupMail.prototype.cst.SHAPE_MAIL,mxShapeMockupMail);function mxShapeMockupVolumeSlider(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.barPos=80}mxUtils.extend(mxShapeMockupVolumeSlider,mxShape);mxShapeMockupVolumeSlider.prototype.cst={SHAPE_VOLUME_SLIDER:"mxgraph.mockup.misc.volumeSlider",BAR_POS:"barPos",FILL_COLOR2:"fillColor2"};
548mxShapeMockupVolumeSlider.prototype.customProperties=[{name:"fillColor2",dispName:"Fill2 Color",type:"color"},{name:"barPos",dispName:"Handle Position",type:"float"}];
549mxShapeMockupVolumeSlider.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);e=mxUtils.getValue(this.style,mxShapeMockupVolumeSlider.prototype.cst.BAR_POS,"80");d=mxUtils.getValue(this.style,mxShapeMockupVolumeSlider.prototype.cst.FILL_COLOR2,"#ddeeff");mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#999999");e=Math.min(e,100);e=Math.max(e,0);c=Math.max(c,25);b=Math.max(b,87.5);var f=b-25,g=.5*(c-25);a.begin();a.moveTo(f+1.25,g+8.75);a.lineTo(f+3.75,g+8.75);a.lineTo(f+7.5,
550g+5);a.lineTo(f+7.5,g+20);a.lineTo(f+3.75,g+16.25);a.lineTo(f+1.25,g+16.25);a.close();a.fill();e=0+(b-32.5-0)*e/100;f=b-25;g=.5*(c-25);a.begin();a.moveTo(f+10,g+8.75);a.arcTo(5,7.5,0,0,1,f+10,g+16.25);a.moveTo(f+10.625,g+6.25);a.arcTo(5.625,8.75,0,0,1,f+10.625,g+18.75);a.moveTo(f+12.5,g+5);a.arcTo(6.25,10,0,0,1,f+12.5,g+20);a.fillAndStroke();c=.5*(c-25);a.roundrect(0,c+8.75,b-32.5,7.5,5,5);a.fill();a.setShadow(!1);a.setFillColor(d);a.roundrect(0,c+8.75,e,7.5,5,5);a.fill();a.ellipse(e-6.25,c+6.25,
55112.5,12.5);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupVolumeSlider.prototype.cst.SHAPE_VOLUME_SLIDER,mxShapeMockupVolumeSlider);
552Graph.handleFactory[mxShapeMockupVolumeSlider.prototype.cst.SHAPE_VOLUME_SLIDER]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"barPos",this.barPos))));return new mxPoint(a.x+d*(a.width-32.5)/100,a.y+.5*a.height)},function(a,e){this.state.style.barPos=Math.round(1E3*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/1E3})]};
553function mxShapeMockupEdit(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupEdit,mxShape);mxShapeMockupEdit.prototype.cst={SHAPE_EDIT:"mxgraph.mockup.misc.editIcon"};
554mxShapeMockupEdit.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#999999");a.translate(d,e);a.roundrect(0,0,b,c,.05*b,.05*c);a.fillAndStroke();a.setShadow(!1);a.setFillColor(f);a.begin();a.moveTo(.11*b,.8*c);a.lineTo(.2*b,.89*c);a.lineTo(.05*b,.95*c);a.close();a.moveTo(.74*b,.16*c);a.lineTo(.84*b,.26*c);a.lineTo(.22*b,.88*c);a.lineTo(.12*b,.78*c);a.close();a.moveTo(.755*b,.145*c);a.lineTo(.82*b,.08*c);a.lineTo(.92*b,.18*c);a.lineTo(.855*
555b,.245*c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeMockupEdit.prototype.cst.SHAPE_EDIT,mxShapeMockupEdit);function mxShapeMockupPrint(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupPrint,mxShape);mxShapeMockupPrint.prototype.cst={SHAPE_PRINT:"mxgraph.mockup.misc.printIcon"};
556mxShapeMockupPrint.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#999999");a.translate(d,e);a.roundrect(0,0,b,c,.05*b,.05*c);a.fillAndStroke();a.setShadow(!1);a.setFillColor(f);a.begin();a.moveTo(.15*b,.58*c);a.arcTo(.03*b,.03*c,0,0,1,.18*b,.55*c);a.lineTo(.82*b,.55*c);a.arcTo(.03*b,.03*c,0,0,1,.85*b,.58*c);a.lineTo(.85*b,.82*c);a.arcTo(.03*b,.03*c,0,0,1,.82*b,.85*c);a.lineTo(.18*b,.85*c);a.arcTo(.03*b,.03*c,0,0,1,.15*b,.82*c);a.close();
557a.moveTo(.7*b,.52*c);a.lineTo(.3*b,.52*c);a.lineTo(.3*b,.15*c);a.lineTo(.55*b,.15*c);a.lineTo(.55*b,.3*c);a.lineTo(.7*b,.3*c);a.close();a.moveTo(.57*b,.15*c);a.lineTo(.7*b,.28*c);a.lineTo(.57*b,.28*c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeMockupPrint.prototype.cst.SHAPE_PRINT,mxShapeMockupPrint);function mxShapeMockupShare(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupShare,mxShape);
558mxShapeMockupShare.prototype.cst={SHAPE_SHARE:"mxgraph.mockup.misc.shareIcon"};
559mxShapeMockupShare.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#999999");a.translate(d,e);a.roundrect(0,0,b,c,.05*b,.05*c);a.fillAndStroke();a.setShadow(!1);a.setFillColor(f);a.begin();a.moveTo(.15*b,.18*c);a.arcTo(.03*b,.03*c,0,0,1,.18*b,.15*c);a.lineTo(.82*b,.15*c);a.arcTo(.03*b,.03*c,0,0,1,.85*b,.18*c);a.lineTo(.85*b,.82*c);a.arcTo(.03*b,.03*c,0,0,1,.82*b,.85*c);a.lineTo(.18*b,.85*c);a.arcTo(.03*b,.03*c,0,0,1,.15*b,.82*c);a.close();
560a.fill();d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");a.setFillColor(d);a.begin();a.moveTo(.563*b,.34*c);a.arcTo(.095*b,.095*c,0,1,1,.603*b,.42*c);a.lineTo(.44*b,.5*c);a.lineTo(.602*b,.582*c);a.arcTo(.095*b,.095*c,0,1,1,.563*b,.653*c);a.lineTo(.403*b,.575*c);a.arcTo(.095*b,.095*c,0,1,1,.4*b,.42*c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeMockupShare.prototype.cst.SHAPE_SHARE,mxShapeMockupShare);
561function mxShapeMockupTrashcan(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupTrashcan,mxShape);mxShapeMockupTrashcan.prototype.cst={SHAPE_TRASHCAN:"mxgraph.mockup.misc.trashcanIcon"};
562mxShapeMockupTrashcan.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#999999");a.translate(d,e);a.roundrect(0,0,b,c,.05*b,.05*c);a.fillAndStroke();a.setShadow(!1);a.setFillColor(f);a.begin();a.moveTo(.24*b,.24*c);a.arcTo(.04*b,.04*c,0,0,1,.24*b,.16*c);a.lineTo(.4*b,.16*c);a.lineTo(.4*b,.12*c);a.lineTo(.6*b,.12*c);a.lineTo(.6*b,.16*c);a.lineTo(.76*b,.16*c);a.arcTo(.04*b,.04*c,0,0,1,.76*b,.24*c);a.close();a.fill();a.roundrect(.26*b,.3*
563c,.1*b,.6*c,.06*b,.06*c);a.fill();a.roundrect(.44*b,.3*c,.1*b,.6*c,.06*b,.06*c);a.fill();a.roundrect(.62*b,.3*c,.1*b,.6*c,.06*b,.06*c);a.fill()};mxCellRenderer.registerShape(mxShapeMockupTrashcan.prototype.cst.SHAPE_TRASHCAN,mxShapeMockupTrashcan);function mxShapeMockupCopyright(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupCopyright,mxShape);mxShapeMockupCopyright.prototype.cst={SHAPE_COPYRIGHT:"mxgraph.mockup.misc.copyrightIcon"};
564mxShapeMockupCopyright.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#999999");a.translate(d,e);a.ellipse(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.setFillColor(f);a.begin();a.moveTo(.713*b,.288*c);a.arcTo(.3*b,.3*c,0,1,0,.713*b,.712*c);a.lineTo(.784*b,.783*c);a.arcTo(.4*b,.4*c,0,1,1,.784*b,.217*c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeMockupCopyright.prototype.cst.SHAPE_COPYRIGHT,mxShapeMockupCopyright);
565function mxShapeMockupRegistered(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupRegistered,mxShape);mxShapeMockupRegistered.prototype.cst={SHAPE_REGISTERED:"mxgraph.mockup.misc.registeredIcon"};
566mxShapeMockupRegistered.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#999999");a.translate(d,e);a.ellipse(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.setFillColor(f);a.begin();a.moveTo(.29*b,.9*c);a.lineTo(.29*b,.09*c);a.lineTo(.5*b,.09*c);a.arcTo(.2195*b,.2195*c,0,0,1,.545*b,.525*c);a.lineTo(.738*b,.91*c);a.lineTo(.674*b,.91*c);a.lineTo(.4825*b,.53*c);a.lineTo(.35*b,.53*c);a.lineTo(.35*b,.9*c);a.close();a.moveTo(.35*b,.47*c);a.lineTo(.5*
567b,.47*c);a.arcTo(.15*b,.15*c,0,0,0,.5*b,.15*c);a.lineTo(.35*b,.15*c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeMockupRegistered.prototype.cst.SHAPE_REGISTERED,mxShapeMockupRegistered);function mxShapeMockupVolume(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupVolume,mxShape);mxShapeMockupVolume.prototype.cst={SHAPE_VOLUME:"mxgraph.mockup.misc.volumeIcon"};
568mxShapeMockupVolume.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#999999");a.translate(d,e);a.roundrect(0,0,b,c,.05*b,.05*c);a.fillAndStroke();a.setShadow(!1);a.setFillColor(f);a.begin();a.moveTo(.1*b,.3*c);a.lineTo(.3*b,.3*c);a.lineTo(.5*b,.15*c);a.lineTo(.5*b,.85*c);a.lineTo(.3*b,.7*c);a.lineTo(.1*b,.7*c);a.close();a.fill();a.begin();a.moveTo(.6*b,.4*c);a.arcTo(.2*b,.2*c,0,0,1,.6*b,.6*c);a.moveTo(.7*b,.3*c);a.arcTo(.3*b,.3*c,0,0,
5691,.7*b,.7*c);a.moveTo(.8*b,.2*c);a.arcTo(.4*b,.4*c,0,0,1,.8*b,.8*c);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupVolume.prototype.cst.SHAPE_VOLUME,mxShapeMockupVolume);function mxShapeMockupRuler(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupRuler,mxShape);mxShapeMockupRuler.prototype.cst={SHAPE_RULER:"mxgraph.mockup.misc.ruler",ORIENTATION:"rulerOrient",UNIT_SIZE:"unitSize",FACE_UP:"up",FACE_DOWN:"down"};
570mxShapeMockupRuler.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeMockupRuler.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
571mxShapeMockupRuler.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxShapeMockupRuler.prototype.cst.ORIENTATION,mxShapeMockupRuler.prototype.cst.FACE_DOWN),c=mxUtils.getValue(this.style,mxShapeMockupRuler.prototype.cst.UNIT_SIZE,"10"),f=c=Math.max(c,1),g=1;if(b===mxShapeMockupRuler.prototype.cst.FACE_DOWN){for(a.begin();f<d;)b=g%10,0===b?a.moveTo(f,.5*e):5===b?a.moveTo(f,.7*e):a.moveTo(f,.8*e),a.lineTo(f,e),f+=c,g+=1;a.stroke()}else if(b===mxShapeMockupRuler.prototype.cst.FACE_UP){for(a.begin();f<
572d;)b=g%10,0===b?a.moveTo(f,.5*e):5===b?a.moveTo(f,.3*e):a.moveTo(f,.2*e),a.lineTo(f,0),f+=c,g+=1;a.stroke()}};mxCellRenderer.registerShape(mxShapeMockupRuler.prototype.cst.SHAPE_RULER,mxShapeMockupRuler);function mxShapeMockupRuler2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupRuler2,mxShape);
573mxShapeMockupRuler2.prototype.cst={SHAPE_RULER:"mxgraph.mockup.misc.ruler2",ORIENTATION:"rulerOrient",UNIT_SIZE:"dx",FACE_UP:"up",FACE_DOWN:"down"};mxShapeMockupRuler2.prototype.customProperties=[{name:"rulerOrient",dispName:"Orientation",defVal:"up",type:"enum",enumList:[{val:"up",dispName:"Up"},{val:"down",dispName:"Down"}]},{name:"dx",dispName:"Unit Size",type:"float",min:0,defVal:100}];
574mxShapeMockupRuler2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupRuler2.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
575mxShapeMockupRuler2.prototype.foreground=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupRuler2.prototype.cst.ORIENTATION,mxShapeMockupRuler2.prototype.cst.FACE_DOWN);e=mxUtils.getValue(this.style,mxConstants.STYLE_FONTCOLOR,"#000000");d=mxUtils.getValue(this.style,"dx","100");this.state.style.spacingLeft=Math.round(1E3*Math.max(0,Math.min(b,d)))/1E3-4;d=Math.max(d/10,1);a.setFontColor(e);e=d;var g=1;if(f===mxShapeMockupRuler2.prototype.cst.FACE_DOWN){for(a.begin();e<b;)f=g%10,
5760===f?(a.moveTo(e,c-10),a.lineTo(e,c),f=this.state.view.graph.getLabel(this.state.cell),isNaN(f)||(a.stroke(),f=g*Math.round(100*f)/1E3,10!=g&&0!=f&&a.text(e,.5*(c-10),0,0,f.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),a.begin())):(5===f?a.moveTo(e,c-6):a.moveTo(e,c-4),a.lineTo(e,c)),e+=d,g+=1;a.stroke()}else if(f===mxShapeMockupRuler2.prototype.cst.FACE_UP){for(a.begin();e<b;)f=g%10,0===f?(a.moveTo(e,10),a.lineTo(e,0),f=this.state.view.graph.getLabel(this.state.cell),
577isNaN(f)||(a.stroke(),f=g*Math.round(100*f)/1E3,10!=g&&0!=f&&a.text(e,.5*(c+10),0,0,f.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),a.begin())):(5===f?a.moveTo(e,6):a.moveTo(e,4),a.lineTo(e,0)),e+=d,g+=1;a.stroke()}};mxCellRenderer.registerShape(mxShapeMockupRuler2.prototype.cst.SHAPE_RULER,mxShapeMockupRuler2);
578Graph.handleFactory[mxShapeMockupRuler2.prototype.cst.SHAPE_RULER]=function(a){return[Graph.createHandle(a,"dx spacingLeft align varticalAlign spacingBottom spacingTop spacingRight spacing".split(" "),function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+a.height-10)},function(a,e){this.state.style.dx=Math.round(1E3*Math.max(0,Math.min(a.width,e.x-a.x)))/1E3;this.state.style.spacingLeft=Math.round(1E3*Math.max(0,Math.min(a.width,
579e.x-a.x)))/1E3-4;this.state.style.align="left";this.state.style.verticalAlign="middle";"down"==mxUtils.getValue(this.state.style,"rulerOrient","1")?(this.state.style.spacingBottom=10,this.state.style.spacingTop=0):(this.state.style.spacingBottom=0,this.state.style.spacingTop=10);this.state.style.spacingRight=0;this.state.style.spacing=0})]};function mxShapeMockupRevisionTable(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
580mxUtils.extend(mxShapeMockupRevisionTable,mxShape);mxShapeMockupRevisionTable.prototype.cst={SHAPE_REVISION_TABLE:"mxgraph.mockup.misc.revisionTable",MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize"};mxShapeMockupRevisionTable.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeMockupRevisionTable.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
581mxShapeMockupRevisionTable.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxShapeMockupRevisionTable.prototype.cst.MAIN_TEXT,"").toString().split(","),c=mxUtils.getValue(this.style,mxShapeMockupRevisionTable.prototype.cst.TEXT_COLOR,"#999999"),f=mxUtils.getValue(this.style,mxShapeMockupRevisionTable.prototype.cst.TEXT_SIZE,"17");a.begin();a.moveTo(0,.33*e);a.lineTo(d,.33*e);a.moveTo(0,.67*e);a.lineTo(d,.67*e);a.moveTo(.125*d,.33*e);a.lineTo(.125*d,e);a.moveTo(.5*d,.33*e);a.lineTo(.5*
582d,e);a.stroke();a.setFontSize(f);a.setFontColor(c);a.text(.5*d,.165*e,0,0,b[0],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.0625*d,.5*e,0,0,b[1],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.3125*d,.5*e,0,0,b[2],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.75*d,.5*e,0,0,b[3],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.0625*d,.835*e,0,0,b[4],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,
5830,null,0,0,0);a.text(.3125*d,.835*e,0,0,b[5],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.75*d,.835*e,0,0,b[6],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupRevisionTable.prototype.cst.SHAPE_REVISION_TABLE,mxShapeMockupRevisionTable);function mxShapeMockupStatusBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupStatusBar,mxShape);
584mxShapeMockupStatusBar.prototype.cst={SHAPE_STATUS_BAR:"mxgraph.mockup.misc.statusBar",MAIN_TEXT:"mainText",FILL_COLOR2:"fillColor2",STROKE_COLOR2:"strokeColor2",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize"};mxShapeMockupStatusBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);b=Math.max(b,105);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeMockupStatusBar.prototype.background=function(a,d,e){a.rect(0,.5*e-15,d,30);a.fillAndStroke()};
585mxShapeMockupStatusBar.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxShapeMockupStatusBar.prototype.cst.FILL_COLOR2,"#ddeeff"),c=mxUtils.getValue(this.style,mxShapeMockupStatusBar.prototype.cst.STROKE_COLOR2,"#008cff"),f=mxUtils.getValue(this.style,mxShapeMockupStatusBar.prototype.cst.MAIN_TEXT,"").toString().split(","),g=mxUtils.getValue(this.style,mxShapeMockupStatusBar.prototype.cst.TEXT_COLOR,"#999999"),h=mxUtils.getValue(this.style,mxShapeMockupStatusBar.prototype.cst.TEXT_SIZE,
586"17");a.setFillColor(b);a.roundrect(5,.5*e-10,.46*(d-75),20,5,5);a.fill();a.roundrect(10+.46*(d-75),.5*e-10,.23*(d-75),20,5,5);a.fill();a.roundrect(15+.69*(d-75),.5*e-10,.276*(d-75),20,5,5);a.fill();a.setFontSize(h);a.setFontColor(g);a.text(10,.5*e,0,0,f[0],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(10+.575*(d-75),.5*e,0,0,f[1],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(15+.828*(d-75),.5*e,0,0,f[2],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,
5870,null,0,0,0);a.setStrokeColor(c);a.ellipse(d-25,.5*e-10,20,20);a.stroke();a.begin();a.moveTo(d-55,.5*e+10);a.lineTo(d-35,.5*e+10);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupStatusBar.prototype.cst.SHAPE_STATUS_BAR,mxShapeMockupStatusBar);function mxShapeMockupPin(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupPin,mxShape);
588mxShapeMockupPin.prototype.cst={SHAPE_PIN:"mxgraph.mockup.misc.pin",FILL_COLOR2:"fillColor2",FILL_COLOR3:"fillColor3"};mxShapeMockupPin.prototype.customProperties=[{name:"fillColor2",dispName:"Fill2 Color",type:"color"},{name:"fillColor3",dispName:"Fill3 Color",type:"color"}];
589mxShapeMockupPin.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupPin.prototype.cst.FILL_COLOR2,"#000000"),g=mxUtils.getValue(this.style,mxShapeMockupPin.prototype.cst.FILL_COLOR3,"#000000"),h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setShadow(!1);a.translate(d,e);a.setStrokeWidth(3);a.setStrokeColor("#666666");a.begin();a.moveTo(.5*b,.4*c);a.lineTo(.5*b,c);a.stroke();a.setStrokeWidth(2);a.setStrokeColor(h);a.setGradient(f,
590g,0,0,b,.4*c,mxConstants.DIRECTION_SOUTH,1,1);a.setAlpha(.9);a.ellipse(0,0,b,.4*c);a.fillAndStroke();a.setFillColor("#ffffff");a.setAlpha(.5);a.ellipse(.2*b,.08*c,.3*b,.12*c);a.fill()};mxCellRenderer.registerShape(mxShapeMockupPin.prototype.cst.SHAPE_PIN,mxShapeMockupPin);function mxShapeMockupMiscRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupMiscRRect,mxShape);
591mxShapeMockupMiscRRect.prototype.cst={RRECT:"mxgraph.mockup.misc.rrect",R_SIZE:"rSize"};mxShapeMockupMiscRRect.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];mxShapeMockupMiscRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupMiscRRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupMiscRRect.prototype.cst.RRECT,mxShapeMockupMiscRRect);
592function mxShapeMockupMiscAnchor(a,d,e,b){mxShape.call(this);this.bounds=a}mxUtils.extend(mxShapeMockupMiscAnchor,mxShape);mxShapeMockupMiscAnchor.prototype.cst={ANCHOR:"mxgraph.mockup.misc.anchor"};mxShapeMockupMiscAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeMockupMiscAnchor.prototype.cst.ANCHOR,mxShapeMockupMiscAnchor);
593function mxShapeMockupBreadcrumb(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupBreadcrumb,mxShape);mxShapeMockupBreadcrumb.prototype.cst={SHAPE_BREADCRUMB:"mxgraph.mockup.navigation.breadcrumb",MAIN_TEXT:"mainText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",TEXT_COLOR2:"textColor2"};
594mxShapeMockupBreadcrumb.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeMockupBreadcrumb.prototype.cst.MAIN_TEXT,"Layer 1, Layer 2, Layer 3").toString().split(","),g=mxUtils.getValue(this.style,mxShapeMockupBreadcrumb.prototype.cst.TEXT_COLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupBreadcrumb.prototype.cst.TEXT_COLOR2,"#008cff"),k=mxUtils.getValue(this.style,mxShapeMockupBreadcrumb.prototype.cst.TEXT_SIZE,"17").toString(),l=mxUtils.getValue(this.style,
595mxConstants.STYLE_STROKECOLOR,"#c4c4c4"),m=f.length,n=Array(m),p=0,q=0;q<m;q++)n[q]=mxUtils.getSizeForString(f[q],k,mxConstants.DEFAULT_FONTFAMILY).width,p+=n[q];c=Math.max(c,1.5*k,20);p=20*m+p;b=Math.max(b,p);a.translate(d,e);a.setShadow(!1);this.separators(a,b,c,m,n,10,p,l);for(q=d=0;q<m;q++)q+1===m?a.setFontColor(h):a.setFontColor(g),d+=10,this.buttonText(a,d,c,f[q],n[q],k,p,b),d=d+n[q]+10};
596mxShapeMockupBreadcrumb.prototype.separators=function(a,d,e,b,c,f,g,h){a.setStrokeColor(h);e*=.5;a.begin();for(h=1;h<b;h++){for(var k=0,l=0;l<h;l++)k+=c[l]+2*f;k=k*d/g;a.moveTo(k-2.5,e-5);a.lineTo(k+2.5,e);a.lineTo(k-2.5,e+5)}a.stroke()};mxShapeMockupBreadcrumb.prototype.buttonText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(f);a.text((d+.5*c)*h/g,.5*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
597mxCellRenderer.registerShape(mxShapeMockupBreadcrumb.prototype.cst.SHAPE_BREADCRUMB,mxShapeMockupBreadcrumb);function mxShapeMockupStepBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupStepBar,mxShape);mxShapeMockupStepBar.prototype.cst={SHAPE_STEP_BAR:"mxgraph.mockup.navigation.stepBar",SELECTED:"+",MAIN_TEXT:"mainText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",TEXT_COLOR2:"textColor2"};
598mxShapeMockupStepBar.prototype.customProperties=[{name:"mainText",dispName:"Text",type:"string"},{name:"textSize",dispName:"Text Size",type:"float"},{name:"textColor",dispName:"Text Color",type:"color"},{name:"textColor2",dispName:"Text2 Color",type:"color"}];
599mxShapeMockupStepBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeMockupStepBar.prototype.cst.MAIN_TEXT,"Step 1, Step 2, Step 3").toString().split(","),g=mxUtils.getValue(this.style,mxShapeMockupStepBar.prototype.cst.TEXT_COLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupStepBar.prototype.cst.TEXT_COLOR2,"#008cff"),k=mxUtils.getValue(this.style,mxShapeMockupStepBar.prototype.cst.TEXT_SIZE,"17").toString(),l=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,
600"#c4c4c4"),m=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#666666"),n=f.length,p=Array(n),q=0,t=-1,u=0;u<n;u++){var v=f[u];v.charAt(0)===mxShapeMockupStepBar.prototype.cst.SELECTED&&(v=f[u].substring(1),t=u);p[u]=mxUtils.getSizeForString(v,k,mxConstants.DEFAULT_FONTFAMILY).width;q+=p[u]}c=Math.max(c,1.5*k,20);q=20*n+q;b=Math.max(b,q);a.translate(d,e);this.stepLineBg(a,b,c,n,p,10,q,l,k,b);a.setShadow(!1);this.stepLineFg(a,b,c,n,p,10,q,l,m,h,k,b,t);for(u=d=0;u<n;u++)u>=t?a.setFontColor(h):
601a.setFontColor(g),d+=10,this.buttonText(a,d,c,f[u],p[u],k,q,b),d=d+p[u]+10};mxShapeMockupStepBar.prototype.stepLineBg=function(a,d,e,b,c,f,g,h,k,l){a.setStrokeColor(h);a.setFillColor(h);e=2*k;for(l=k=h=0;l<b;l++){for(var m=0,n=0;n<l;n++)m+=c[n]+2*f;m+=.5*c[l]+f;m=m*d/g;0===l?h=m:l+1===b&&(k=m);a.begin();a.ellipse(m-10,e-10,20,20);a.fillAndStroke()}a.begin();a.rect(h,e-2,k-h,4);a.fillAndStroke()};
602mxShapeMockupStepBar.prototype.stepLineFg=function(a,d,e,b,c,f,g,h,k,l,m,n,p){a.setStrokeColor(k);e=2*m;m=b=0;n=mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1");for(var q=0;q<=p;q++){for(var t=0,u=0;u<q;u++)t+=c[u]+2*f;t+=.5*c[q]+f;t=t*d/g;0===q?b=t:q===p&&(m=t)}a.setFillColor(k);a.begin();a.rect(b,e-1.125,m-b,2.25);a.fill();a.setFillColor(h);for(q=0;q<=p;q++){for(u=t=0;u<q;u++)t+=c[u]+2*f;t+=.5*c[q]+f;t=t*d/g;q<p?(a.setStrokeWidth(n),a.begin(),a.ellipse(t-7.5,e-7.5,15,15),a.fillAndStroke(),
603a.setStrokeWidth(.5*n),a.begin(),a.ellipse(t-4.5,e-4.5,9,9)):(a.setStrokeWidth(n),a.setFillColor(h),a.setStrokeColor(h),a.begin(),a.ellipse(t-10,e-10,20,20),a.fillAndStroke(),a.setStrokeWidth(n),a.setFillColor("#ffffff"),a.setStrokeColor("#ffffff"),a.begin(),a.ellipse(t-7.5,e-7.5,15,15),a.fillAndStroke(),a.setFillColor(l),a.setStrokeColor(l),a.setStrokeWidth(.5*n),a.begin(),a.ellipse(t-5.25,e-5.25,10.5,10.5));a.fillAndStroke()}};
604mxShapeMockupStepBar.prototype.buttonText=function(a,d,e,b,c,f,g,h){b.charAt(0)===mxShapeMockupStepBar.prototype.cst.SELECTED&&(b=b.substring(1));a.begin();a.setFontSize(f);a.text((d+.5*c)*h/g,.5*f,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupStepBar.prototype.cst.SHAPE_STEP_BAR,mxShapeMockupStepBar);function mxShapeMockupCoverFlow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
605mxUtils.extend(mxShapeMockupCoverFlow,mxShape);mxShapeMockupCoverFlow.prototype.cst={SHAPE_COVER_FLOW:"mxgraph.mockup.navigation.coverFlow"};
606mxShapeMockupCoverFlow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(.0924*b,.07*c);a.lineTo(.005*b,.01*c);a.lineTo(.005*b,.99*c);a.lineTo(.0924*b,.93*c);a.moveTo(.1774*b,.09*c);a.lineTo(.0924*b,.01*c);a.lineTo(.0924*b,.99*c);a.lineTo(.1774*b,.91*c);a.moveTo(.3373*b,.22*c);a.lineTo(.1774*b,.01*c);a.lineTo(.1774*b,.99*c);a.lineTo(.3373*b,.78*c);a.moveTo(.912*b,.07*c);a.lineTo(.998*b,.01*c);a.lineTo(.998*b,.99*c);a.lineTo(.912*b,.93*c);a.moveTo(.8271*b,.09*c);a.lineTo(.912*
607b,.01*c);a.lineTo(.912*b,.99*c);a.lineTo(.8271*b,.91*c);a.moveTo(.6672*b,.22*c);a.lineTo(.8271*b,.01*c);a.lineTo(.8271*b,.99*c);a.lineTo(.6672*b,.78*c);a.moveTo(.3373*b,.005*c);a.lineTo(.3373*b,.995*c);a.lineTo(.6672*b,.995*c);a.lineTo(.6672*b,.005*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupCoverFlow.prototype.cst.SHAPE_COVER_FLOW,mxShapeMockupCoverFlow);
608function mxShapeMockupScrollBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupScrollBar,mxShape);mxShapeMockupScrollBar.prototype.cst={SHAPE_SCROLL_BAR:"mxgraph.mockup.navigation.scrollBar",FILL_COLOR2:"fillColor2",STROKE_COLOR2:"strokeColor2",BAR_POS:"barPos"};
609mxShapeMockupScrollBar.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"float"},{name:"fillColor2",dispName:"Fill2 Color",type:"color"},{name:"strokeColor2",dispName:"Stroke2 Color",type:"color"}];mxShapeMockupScrollBar.prototype.paintVertexShape=function(a,d,e,b,c){c=20;b=Math.max(b,40);a.translate(d,e);this.background(a,b,c,20);a.setShadow(!1);this.foreground(a,b,c,20);this.barPos=20};
610mxShapeMockupScrollBar.prototype.background=function(a,d,e,b){a.rect(0,0,d,e);a.fillAndStroke();a.begin();a.moveTo(b,0);a.lineTo(b,e);a.moveTo(d-b,0);a.lineTo(d-b,e);a.stroke()};
611mxShapeMockupScrollBar.prototype.foreground=function(a,d,e,b){var c=mxUtils.getValue(this.style,mxShapeMockupScrollBar.prototype.cst.BAR_POS,"20"),f=mxUtils.getValue(this.style,mxShapeMockupScrollBar.prototype.cst.FILL_COLOR2,"#99ddff"),g=mxUtils.getValue(this.style,mxShapeMockupScrollBar.prototype.cst.STROKE_COLOR2,"none"),c=Math.max(0,c),c=Math.min(100,c);a.setStrokeColor(g);a.setFillColor(f);a.begin();a.moveTo(.2*b,.5*e);a.lineTo(.8*b,.2*e);a.lineTo(.8*b,.8*e);a.close();a.moveTo(d-.2*b,.5*e);a.lineTo(d-
612.8*b,.2*e);a.lineTo(d-.8*b,.8*e);a.close();a.fillAndStroke();f=d-b;d=Math.min(60,f-b);a.roundrect(b+(f-d/2-(b+d/2))*c/100,.15*e,d,.7*e,5,5);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupScrollBar.prototype.cst.SHAPE_SCROLL_BAR,mxShapeMockupScrollBar);
613Graph.handleFactory[mxShapeMockupScrollBar.prototype.cst.SHAPE_SCROLL_BAR]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"barPos",this.barPos))));return new mxPoint(a.x+(a.width-100)*d/a.width/100*a.width+50,a.y+10)},function(a,e){this.state.style.barPos=Math.round(1E3*Math.max(0,Math.min(100,100*(e.x-a.x-50)/(a.width-100))))/1E3})]};
614function mxShapeMockupPagination(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupPagination,mxShape);mxShapeMockupPagination.prototype.cst={MAIN_TEXT:"linkText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",SHAPE_PAGINATION:"mxgraph.mockup.navigation.pagination"};
615mxShapeMockupPagination.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupPagination.prototype.cst.MAIN_TEXT,"0-9 A B C D E F G H I J K L M N O P Q R S T U V X Y Z"),g=mxUtils.getValue(this.style,mxShapeMockupPagination.prototype.cst.TEXT_SIZE,"17"),h=mxUtils.getValue(this.style,mxShapeMockupPagination.prototype.cst.TEXT_COLOR,"#0000ff");a.translate(d,e);d=mxUtils.getSizeForString(f,g,mxConstants.DEFAULT_FONTFAMILY).width;a.setStrokeColor(h);a.setFontSize(g);
616a.setFontColor(h);a.text(.5*b,.5*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.begin();a.moveTo(.5*b-.5*d,.5*(c+parseInt(g,10)));a.lineTo(.5*b+.5*d,.5*(c+parseInt(g,10)));a.stroke()};mxCellRenderer.registerShape(mxShapeMockupPagination.prototype.cst.SHAPE_PAGINATION,mxShapeMockupPagination);function mxShapeMockupPageControl(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupPageControl,mxShape);
617mxShapeMockupPageControl.prototype.cst={SHAPE_PAGE_CONTROL:"mxgraph.mockup.navigation.pageControl"};
618mxShapeMockupPageControl.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#000000");e=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");var f=Math.min(.5*c,.05*b);a.setFillColor(e);a.ellipse(0,.5*c-f,2*f,2*f);a.fill();a.setFillColor(d);a.ellipse(.35*b-f,.5*c-f,2*f,2*f);a.fill();a.ellipse(.65*b-f,.5*c-f,2*f,2*f);a.fill();a.ellipse(b-2*f,.5*c-f,2*f,2*f);a.fill()};
619mxCellRenderer.registerShape(mxShapeMockupPageControl.prototype.cst.SHAPE_PAGE_CONTROL,mxShapeMockupPageControl);function mxShapeMockupMapNavigator(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupMapNavigator,mxShape);mxShapeMockupMapNavigator.prototype.cst={SHAPE_MAP_NAVIGATOR:"mxgraph.mockup.navigation.mapNavigator",FILL_COLOR2:"fillColor2",STROKE_COLOR2:"strokeColor2",STROKE_COLOR3:"strokeColor3"};
620mxShapeMockupMapNavigator.prototype.customProperties=[{name:"fillColor2",dispName:"Fill2 Color",type:"color"},{name:"strokeColor2",dispName:"Stroke2 Color",type:"color"},{name:"strokeColor3",dispName:"Stroke3 Color",type:"color"}];mxShapeMockupMapNavigator.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};
621mxShapeMockupMapNavigator.prototype.background=function(a,d,e){a.ellipse(0,0,d,.6*e);a.fillAndStroke();a.begin();a.moveTo(.35*d,.584*e);a.lineTo(.35*d,.95*e);a.arcTo(.083*d,.05*e,0,0,0,.43*d,e);a.lineTo(.56*d,e);a.arcTo(.083*d,.05*e,0,0,0,.65*d,.95*e);a.lineTo(.65*d,.584*e);a.fillAndStroke()};
622mxShapeMockupMapNavigator.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxShapeMockupMapNavigator.prototype.cst.FILL_COLOR2,"#99ddff"),c=mxUtils.getValue(this.style,mxShapeMockupMapNavigator.prototype.cst.STROKE_COLOR2,"none"),f=mxUtils.getValue(this.style,mxShapeMockupMapNavigator.prototype.cst.STROKE_COLOR3,"#ffffff");a.setFillColor(b);a.setStrokeColor(c);a.ellipse(.4*d,.65*e,.2*d,.12*e);a.fillAndStroke();a.ellipse(.4*d,.85*e,.2*d,.12*e);a.fillAndStroke();a.begin();a.moveTo(.1806*
623d,.34*e);a.lineTo(.1357*d,.366*e);a.lineTo(.0228*d,.3*e);a.lineTo(.1357*d,.234*e);a.lineTo(.1806*d,.26*e);a.lineTo(.1142*d,.3*e);a.close();a.fillAndStroke();a.begin();a.moveTo(.433*d,.108*e);a.lineTo(.3881*d,.08*e);a.lineTo(.4994*d,.012*e);a.lineTo(.6123*d,.08*e);a.lineTo(.5658*d,.108*e);a.lineTo(.4994*d,.068*e);a.close();a.fillAndStroke();a.begin();a.moveTo(.8198*d,.262*e);a.lineTo(.868*d,.233*e);a.lineTo(.9776*d,.3*e);a.lineTo(.868*d,.367*e);a.lineTo(.8198*d,.341*e);a.lineTo(.8863*d,.3*e);a.close();
624a.fillAndStroke();a.begin();a.moveTo(.5641*d,.493*e);a.lineTo(.6123*d,.522*e);a.lineTo(.4994*d,.588*e);a.lineTo(.3881*d,.521*e);a.lineTo(.4363*d,.493*e);a.lineTo(.4994*d,.533*e);a.close();a.fillAndStroke();a.begin();a.moveTo(.3333*d,.32*e);a.lineTo(.3333*d,.28*e);a.lineTo(.4163*d,.3*e);a.close();a.moveTo(.4662*d,.2*e);a.lineTo(.5326*d,.2*e);a.lineTo(.4994*d,.25*e);a.close();a.moveTo(.6654*d,.28*e);a.lineTo(.6654*d,.32*e);a.lineTo(.5824*d,.3*e);a.close();a.moveTo(.5326*d,.4*e);a.lineTo(.4662*d,.4*
625e);a.lineTo(.4994*d,.35*e);a.close();a.fillAndStroke();a.setStrokeWidth(2);a.setStrokeColor(f);a.begin();a.moveTo(.5*d,.67*e);a.lineTo(.5*d,.75*e);a.moveTo(.43*d,.71*e);a.lineTo(.57*d,.71*e);a.moveTo(.43*d,.91*e);a.lineTo(.57*d,.91*e);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupMapNavigator.prototype.cst.SHAPE_MAP_NAVIGATOR,mxShapeMockupMapNavigator);function mxShapeMockupNavigationAnchor(a,d,e,b){mxShape.call(this);this.bounds=a}mxUtils.extend(mxShapeMockupNavigationAnchor,mxShape);
626mxShapeMockupNavigationAnchor.prototype.cst={ANCHOR:"mxgraph.mockup.navigation.anchor"};mxShapeMockupNavigationAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeMockupNavigationAnchor.prototype.cst.ANCHOR,mxShapeMockupNavigationAnchor);function mxShapeMockupLink(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupLink,mxShape);
627mxShapeMockupLink.prototype.cst={LINK_TEXT:"linkText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",SHAPE_LINK:"mxgraph.mockup.text.link"};
628mxShapeMockupLink.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupLink.prototype.cst.LINK_TEXT,"Link"),g=mxUtils.getValue(this.style,mxShapeMockupLink.prototype.cst.TEXT_SIZE,"17"),h=mxUtils.getValue(this.style,mxShapeMockupLink.prototype.cst.TEXT_COLOR,"#0000ff");a.translate(d,e);d=mxUtils.getSizeForString(f,g,mxConstants.DEFAULT_FONTFAMILY).width;a.setStrokeColor(h);a.setFontSize(g);a.setFontColor(h);a.text(.5*b,.5*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,
6290,null,0,0,0);a.begin();a.moveTo(.5*b-.5*d,.5*(c+parseInt(g,10)));a.lineTo(.5*b+.5*d,.5*(c+parseInt(g,10)));a.stroke()};mxCellRenderer.registerShape(mxShapeMockupLink.prototype.cst.SHAPE_LINK,mxShapeMockupLink);function mxShapeMockupLinkBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupLinkBar,mxShape);
630mxShapeMockupLinkBar.prototype.cst={MAIN_TEXT:"mainText",SHAPE_LINK_BAR:"mxgraph.mockup.text.linkBar",TEXT_COLOR:"textColor",TEXT_COLOR2:"textColor2",STROKE_COLOR2:"strokeColor2",FILL_COLOR2:"fillColor2",SELECTED:"+",TEXT_SIZE:"textSize"};
631mxShapeMockupLinkBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeMockupLinkBar.prototype.cst.MAIN_TEXT,"+Button 1, Button 2, Button 3").toString().split(","),g=mxUtils.getValue(this.style,mxShapeMockupLinkBar.prototype.cst.TEXT_COLOR,"#666666"),h=mxUtils.getValue(this.style,mxShapeMockupLinkBar.prototype.cst.TEXT_COLOR2,"#ffffff"),k=mxUtils.getValue(this.style,mxShapeMockupLinkBar.prototype.cst.TEXT_SIZE,"17").toString(),l=mxUtils.getValue(this.style,
632mxConstants.STYLE_STROKECOLOR,"#666666"),m=mxUtils.getValue(this.style,mxShapeMockupLinkBar.prototype.cst.STROKE_COLOR2,"#c4c4c4"),n=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),p=mxUtils.getValue(this.style,mxShapeMockupLinkBar.prototype.cst.FILL_COLOR2,"#008cff"),q=f.length,t=Array(q),u=0,v=-1,r=0;r<q;r++){var w=f[r];w.charAt(0)===mxShapeMockupLinkBar.prototype.cst.SELECTED&&(w=f[r].substring(1),v=r);w=mxUtils.getSizeForString(w,k,mxConstants.DEFAULT_FONTFAMILY).width;t[r]=
6330===w?42:w;u+=t[r]}c=Math.max(c,1.5*k,20);u=10*q+u;b=Math.max(b,u);a.translate(d,e);this.background(a,b,c,10,q,t,5,u,l,m,n,p,v);a.setShadow(!1);for(r=d=0;r<q;r++)r===v?(a.setFontColor(h),a.setStrokeColor(h)):(a.setFontColor(g),a.setStrokeColor(g)),d+=5,this.buttonText(a,d,c,f[r],t[r],k,u,b),d=d+t[r]+5};
634mxShapeMockupLinkBar.prototype.background=function(a,d,e,b,c,f,g,h,k,l,m,n,p){a.begin();a.setStrokeColor(k);a.setFillColor(m);a.rect(0,0,d,e);a.fillAndStroke();a.setStrokeColor(l);a.begin();for(b=1;b<c;b++)if(b!==p&&b!==p+1){for(var q=l=0;q<b;q++)l+=f[q]+2*g;l=l*d/h;a.moveTo(l,0);a.lineTo(l,e)}a.stroke();l=0;a.setFillColor(n);for(b=0;b<p;b++)l+=f[b]+2*g;l=l*d/h;f=(f[p]+2*g)*d/h;f+=l;0===p?(a.rect(0,0,f,e),a.fill()):p===c-1?(a.rect(l,0,f-l,e),a.fill()):-1!==p&&(a.rect(l,0,f-l,e),a.fill());a.setStrokeColor(k);
635a.setFillColor(m);a.rect(0,0,d,e);a.stroke()};mxShapeMockupLinkBar.prototype.buttonText=function(a,d,e,b,c,f,g,h){b.charAt(0)===mxShapeMockupLinkBar.prototype.cst.SELECTED&&(b=b.substring(1));a.begin();a.setFontSize(f);a.text((d+.5*c)*h/g,.5*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);var k=.5*mxUtils.getSizeForString(b,f,mxConstants.DEFAULT_FONTFAMILY).width;null!==b&&""!==b&&(a.begin(),a.moveTo((d+.5*c)*h/g-k,.5*e+.5*f),a.lineTo((d+.5*c)*h/g+k,.5*e+.5*f),a.stroke())};
636mxCellRenderer.registerShape(mxShapeMockupLinkBar.prototype.cst.SHAPE_LINK_BAR,mxShapeMockupLinkBar);function mxShapeMockupCallout(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupCallout,mxShape);
637mxShapeMockupCallout.prototype.cst={CALLOUT_TEXT:"linkText",CALLOUT_DIR:"callDir",CALLOUT_STYLE:"callStyle",STYLE_LINE:"line",STYLE_RECT:"rect",STYLE_ROUNDRECT:"roundRect",DIR_NW:"NW",DIR_NE:"NE",DIR_SE:"SE",DIR_SW:"SW",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",SHAPE_CALLOUT:"mxgraph.mockup.text.callout"};
638mxShapeMockupCallout.prototype.customProperties=[{name:"callDir",dispName:"Direction",type:"enum",enumList:[{val:"NW",dispName:"North-West"},{val:"NE",dispName:"North-East"},{val:"SE",dispName:"South-East"},{val:"SW",dispName:"South-West"}]},{name:"callStyle",dispName:"Style",type:"enum",enumList:[{val:"line",dispName:"Line"},{val:"rect",dispName:"Rectangle"}]}];
639mxShapeMockupCallout.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupCallout.prototype.cst.CALLOUT_TEXT,"Callout"),g=mxUtils.getValue(this.style,mxShapeMockupCallout.prototype.cst.TEXT_SIZE,"17"),h=mxUtils.getValue(this.style,mxShapeMockupCallout.prototype.cst.TEXT_COLOR,"#666666"),k=mxUtils.getValue(this.style,mxShapeMockupCallout.prototype.cst.CALLOUT_STYLE,mxShapeMockupCallout.prototype.cst.STYLE_LINE),l=mxUtils.getValue(this.style,mxShapeMockupCallout.prototype.cst.CALLOUT_DIR,
640mxShapeMockupCallout.prototype.cst.DIR_NW),m=mxUtils.getSizeForString(f,g,mxConstants.DEFAULT_FONTFAMILY).width,m=1.2*m;0==m&&(m=70);a.translate(d,e);a.setFontSize(g);a.setFontColor(h);d=1.5*g;l===mxShapeMockupCallout.prototype.cst.DIR_NW?(k===mxShapeMockupCallout.prototype.cst.STYLE_LINE?(a.begin(),a.moveTo(0,d),a.lineTo(m,d),a.lineTo(b,c),a.stroke()):k===mxShapeMockupCallout.prototype.cst.STYLE_RECT?(a.rect(0,0,m,d),a.fillAndStroke(),a.begin(),a.moveTo(.5*m,d),a.lineTo(b,c),a.stroke()):k===mxShapeMockupCallout.prototype.cst.STYLE_ROUNDRECT&&
641(a.roundrect(0,0,m,d,.25*d,.25*d),a.fillAndStroke(),a.begin(),a.moveTo(.5*m,d),a.lineTo(b,c),a.stroke()),a.text(.5*m,.5*d,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)):l===mxShapeMockupCallout.prototype.cst.DIR_NE?(k===mxShapeMockupCallout.prototype.cst.STYLE_LINE?(a.begin(),a.moveTo(b,d),a.lineTo(b-m,d),a.lineTo(0,c),a.stroke()):k===mxShapeMockupCallout.prototype.cst.STYLE_RECT?(a.rect(b-m,0,m,d),a.fillAndStroke(),a.begin(),a.moveTo(b-.5*m,d),a.lineTo(0,c),a.stroke()):k===
642mxShapeMockupCallout.prototype.cst.STYLE_ROUNDRECT&&(a.roundrect(b-m,0,m,d,.25*d,.25*d),a.fillAndStroke(),a.begin(),a.moveTo(b-.5*m,d),a.lineTo(0,c),a.stroke()),a.text(b-.5*m,.5*d,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)):l===mxShapeMockupCallout.prototype.cst.DIR_SE?(k===mxShapeMockupCallout.prototype.cst.STYLE_LINE?(a.begin(),a.moveTo(b,c),a.lineTo(b-m,c),a.lineTo(0,0),a.stroke()):k===mxShapeMockupCallout.prototype.cst.STYLE_RECT?(a.rect(b-m,c-d,m,d),a.fillAndStroke(),
643a.begin(),a.moveTo(b-.5*m,c-d),a.lineTo(0,0),a.stroke()):k===mxShapeMockupCallout.prototype.cst.STYLE_ROUNDRECT&&(a.roundrect(b-m,c-d,m,d,.25*d,.25*d),a.fillAndStroke(),a.begin(),a.moveTo(b-.5*m,c-d),a.lineTo(0,0),a.stroke()),a.text(b-.5*m,c-.5*d,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)):l===mxShapeMockupCallout.prototype.cst.DIR_SW&&(k===mxShapeMockupCallout.prototype.cst.STYLE_LINE?(a.begin(),a.moveTo(0,c),a.lineTo(m,c),a.lineTo(b,0),a.stroke()):k===mxShapeMockupCallout.prototype.cst.STYLE_RECT?
644(a.rect(0,c-d,m,d),a.fillAndStroke(),a.begin(),a.moveTo(.5*m,c-d),a.lineTo(b,0),a.stroke()):k===mxShapeMockupCallout.prototype.cst.STYLE_ROUNDRECT&&(a.roundrect(0,c-d,m,d,.25*d,.25*d),a.fillAndStroke(),a.begin(),a.moveTo(.5*m,c-d),a.lineTo(b,0),a.stroke()),a.text(.5*m,c-.5*d,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0))};mxCellRenderer.registerShape(mxShapeMockupCallout.prototype.cst.SHAPE_CALLOUT,mxShapeMockupCallout);
645function mxShapeMockupStickyNote(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupStickyNote,mxShape);mxShapeMockupStickyNote.prototype.cst={MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",SHAPE_STICKY_NOTE:"mxgraph.mockup.text.stickyNote"};mxShapeMockupStickyNote.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};
646mxShapeMockupStickyNote.prototype.background=function(a,d,e){a.setFillColor("#ffffcc");a.begin();a.moveTo(.03*d,.07*e);a.lineTo(.89*d,.06*e);a.arcTo(2.81*d,2.92*e,1,0,0,.99*d,.98*e);a.lineTo(.09*d,.99*e);a.arcTo(2.81*d,2.92*e,1,0,1,.03*d,.07*e);a.close();a.fill()};
647mxShapeMockupStickyNote.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxShapeMockupStickyNote.prototype.cst.MAIN_TEXT,"Note line 1,Note line 2,Note line 3").toString().split(","),c=mxUtils.getValue(this.style,mxShapeMockupStickyNote.prototype.cst.TEXT_COLOR,"#666666").toString(),f=mxUtils.getValue(this.style,mxShapeMockupStickyNote.prototype.cst.TEXT_SIZE,"17").toString();a.setFillColor("#ff3300");a.begin();a.moveTo(.28*d,0);a.lineTo(.59*d,0);a.lineTo(.6*d,.12*e);a.lineTo(.28*
648d,.13*e);a.close();a.fill();a.setFontSize(f);a.setFontColor(c);for(var c=b.length*f*1.5,g=0;g<b.length;g++)a.text(d/2,(e-c)/2+g*f*1.5+.75*f,0,0,b[g],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeMockupStickyNote.prototype.cst.SHAPE_STICKY_NOTE,mxShapeMockupStickyNote);function mxShapeMockupStickyNote2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupStickyNote2,mxShape);
649mxShapeMockupStickyNote2.prototype.cst={SHAPE_STICKY_NOTE:"mxgraph.mockup.text.stickyNote2"};mxShapeMockupStickyNote2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeMockupStickyNote2.prototype.background=function(a,d,e){a.begin();a.moveTo(.03*d,.07*e);a.lineTo(.89*d,.06*e);a.arcTo(2.81*d,2.92*e,1,0,0,.99*d,.98*e);a.lineTo(.09*d,.99*e);a.arcTo(2.81*d,2.92*e,1,0,1,.03*d,.07*e);a.close();a.fill()};
650mxShapeMockupStickyNote2.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,"strokeColor","#000000");a.setFillColor(b);a.begin();a.moveTo(.28*d,0);a.lineTo(.59*d,0);a.lineTo(.6*d,.12*e);a.lineTo(.28*d,.13*e);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeMockupStickyNote2.prototype.cst.SHAPE_STICKY_NOTE,mxShapeMockupStickyNote2);function mxShapeMockupBulletedList(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
651mxUtils.extend(mxShapeMockupBulletedList,mxShape);mxShapeMockupBulletedList.prototype.cst={MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",BULLET_STYLE:"bulletStyle",STYLE_HYPHEN:"hyphen",STYLE_NUM:"number",STYLE_DOT:"dot",SHAPE_BULLETED_LIST:"mxgraph.mockup.text.bulletedList"};mxShapeMockupBulletedList.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};
652mxShapeMockupBulletedList.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
653mxShapeMockupBulletedList.prototype.foreground=function(a,d,e){d=mxUtils.getValue(this.style,mxShapeMockupBulletedList.prototype.cst.MAIN_TEXT,"Note line 1,Note line 2,Note line 3").toString().split(",");var b=mxUtils.getValue(this.style,mxShapeMockupBulletedList.prototype.cst.TEXT_COLOR,"#666666");e=mxUtils.getValue(this.style,mxShapeMockupBulletedList.prototype.cst.TEXT_SIZE,"17");var c=mxUtils.getValue(this.style,mxShapeMockupBulletedList.prototype.cst.BULLET_STYLE,"none");a.setFontColor(b);a.setFontSize(e);
654for(b=0;b<d.length;b++){var f;f=c===mxShapeMockupBulletedList.prototype.cst.STYLE_NUM?b+1+") "+d[b]:c===mxShapeMockupBulletedList.prototype.cst.STYLE_HYPHEN?"- "+d[b]:c===mxShapeMockupBulletedList.prototype.cst.STYLE_DOT?String.fromCharCode(8226)+" "+d[b]:"  "+d[b];a.text(10,b*e*1.5+.75*e,0,0,f,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)}};mxCellRenderer.registerShape(mxShapeMockupBulletedList.prototype.cst.SHAPE_BULLETED_LIST,mxShapeMockupBulletedList);
655function mxShapeMockupTextBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupTextBox,mxShape);mxShapeMockupTextBox.prototype.cst={MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",SHAPE_TEXT_BOX:"mxgraph.mockup.text.textBox"};mxShapeMockupTextBox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};
656mxShapeMockupTextBox.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
657mxShapeMockupTextBox.prototype.foreground=function(a,d,e){d=mxUtils.getValue(this.style,mxShapeMockupTextBox.prototype.cst.MAIN_TEXT,"Note line 1").toString().split(",");var b=mxUtils.getValue(this.style,mxShapeMockupTextBox.prototype.cst.TEXT_COLOR,"#666666");e=mxUtils.getValue(this.style,mxShapeMockupTextBox.prototype.cst.TEXT_SIZE,"17");a.setFontColor(b);a.setFontSize(e);for(b=0;b<d.length;b++)a.text(5,b*e*1.5+.75*e,0,0,d[b],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
658mxCellRenderer.registerShape(mxShapeMockupTextBox.prototype.cst.SHAPE_TEXT_BOX,mxShapeMockupTextBox);function mxShapeMockupCaptcha(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupCaptcha,mxShape);mxShapeMockupCaptcha.prototype.cst={MAIN_TEXT:"mainText",TEXT_COLOR:"textColor",TEXT_SIZE:"textSize",SHAPE_CAPTCHA:"mxgraph.mockup.text.captcha"};
659mxShapeMockupCaptcha.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxShapeMockupCaptcha.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
660mxShapeMockupCaptcha.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxShapeMockupCaptcha.prototype.cst.MAIN_TEXT,"Note line 1"),c=mxUtils.getValue(this.style,mxShapeMockupCaptcha.prototype.cst.TEXT_COLOR,"#666666"),f=mxUtils.getValue(this.style,mxShapeMockupCaptcha.prototype.cst.TEXT_SIZE,"25");a.setFillColor("#88aaff");a.begin();a.moveTo(0,0);a.lineTo(.35*d,0);a.lineTo(.55*d,.85*e);a.lineTo(.4*d,.75*e);a.close();a.fill();a.begin();a.moveTo(.7*d,.1*e);a.lineTo(.95*d,.23*e);
661a.lineTo(d,.4*e);a.lineTo(d,.9*e);a.lineTo(d,e);a.lineTo(.8*d,e);a.close();a.fill();a.setFontColor(c);a.setFontSize(f);a.text(.5*d,.5*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.rect(0,0,d,e);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupCaptcha.prototype.cst.SHAPE_CAPTCHA,mxShapeMockupCaptcha);function mxShapeMockupAlphanumeric(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
662mxUtils.extend(mxShapeMockupAlphanumeric,mxShape);mxShapeMockupAlphanumeric.prototype.cst={MAIN_TEXT:"linkText",TEXT_SIZE:"textSize",TEXT_COLOR:"textColor",SHAPE_ALPHANUMERIC:"mxgraph.mockup.text.alphanumeric"};
663mxShapeMockupAlphanumeric.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeMockupAlphanumeric.prototype.cst.MAIN_TEXT,"0-9 A B C D E F G H I J K L M N O P Q R S T U V X Y Z"),g=mxUtils.getValue(this.style,mxShapeMockupAlphanumeric.prototype.cst.TEXT_SIZE,"17"),h=mxUtils.getValue(this.style,mxShapeMockupAlphanumeric.prototype.cst.TEXT_COLOR,"#0000ff");a.translate(d,e);d=mxUtils.getSizeForString(f,g,mxConstants.DEFAULT_FONTFAMILY).width;a.setStrokeColor(h);a.setFontSize(g);
664a.setFontColor(h);a.text(.5*b,.5*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.begin();a.moveTo(.5*b-.5*d,.5*(c+parseInt(g,10)));a.lineTo(.5*b+.5*d,.5*(c+parseInt(g,10)));a.stroke()};mxCellRenderer.registerShape(mxShapeMockupAlphanumeric.prototype.cst.SHAPE_ALPHANUMERIC,mxShapeMockupAlphanumeric);function mxShapeMockupTextRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupTextRRect,mxShape);
665mxShapeMockupTextRRect.prototype.cst={RRECT:"mxgraph.mockup.text.rrect",R_SIZE:"rSize"};mxShapeMockupTextRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupTextRRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupTextRRect.prototype.cst.RRECT,mxShapeMockupTextRRect);
666var mxMockupC={BAR_HEIGHT:"barHeight",BAR_POS:"barPos",BG_STYLE:"bgStyle",BG_FLAT_GREEN:"bgGreen",BG_FLAT_WHITE:"bgWhite",BG_FLAT_GRAY:"bgGray",BG_FLAT_CUSTOM:"bgFlat",BG_MAP:"bgMap",BG_STRIPED:"bgStriped",BUTTON_STYLE:"buttonStyle",BUTTON_TEXT:"buttonText",BUTTON_STATE:"buttonState",CHEVRON:"chevron",GRID_SIZE:"gridSize",POINTER_BOTTOM:"bottom",POINTER_POS:"pointerPos",POINTER_TOP:"top",ROUND:"round",SELECTED:"+",STATE_ON:"on",STATE_OFF:"off",SUB_TEXT:"subText",SHAPE_IADD_ICON:"mxgraph.ios.iAddIcon",
667SHAPE_IALERT_BOX:"mxgraph.ios.iAlertBox",SHAPE_IALPHA_LIST:"mxgraph.ios.iAlphaList",SHAPE_IAPP_BAR:"mxgraph.ios.iAppBar",SHAPE_IARROW_ICON:"mxgraph.ios.iArrowIcon",SHAPE_IBG_FLAT:"mxgraph.ios.iBgFlat",SHAPE_IBG_MAP:"mxgraph.ios.iBgMap",SHAPE_IBG_STRIPED:"mxgraph.ios.iBgStriped",SHAPE_IBUTTON:"mxgraph.ios.iButton",SHAPE_IBUTTON_BACK:"mxgraph.ios.iButtonBack",SHAPE_IBUTTON_FORWARD:"mxgraph.ios.iButtonFw",SHAPE_IBUTTON_BAR:"mxgraph.ios.iButtonBar",SHAPE_ICALL_BUTTONS:"mxgraph.ios.iCallButtons",SHAPE_ICALL_DIALOG:"mxgraph.ios.iCallDialog",
668SHAPE_ICHECKBOX_GROUP:"mxgraph.ios.iCheckboxGroup",SHAPE_ICHECK_ICON:"mxgraph.ios.iCheckIcon",SHAPE_ICLOUD_PROGRESS_BAR:"mxgraph.ios.iCloudProgressBar",SHAPE_ICOMBO_BOX:"mxgraph.ios.iComboBox",SHAPE_ICOPY:"mxgraph.ios.iCopy",SHAPE_ICOPY_AREA:"mxgraph.ios.iCopyArea",SHAPE_IICON_GRID:"mxgraph.ios.iIconGrid",SHAPE_IDELETE_APP:"mxgraph.ios.iDeleteApp",SHAPE_IDELETE_ICON:"mxgraph.ios.iDeleteIcon",SHAPE_IDOWNLOAD_BAR:"mxgraph.ios.iDownloadBar",SHAPE_IDIALOG_BOX:"mxgraph.ios.iDialogBox",SHAPE_IDIRECTION:"mxgraph.ios.iDir",
669SHAPE_IHOME_PAGE_CONTROL:"mxgraph.ios.iHomePageControl",SHAPE_IKEYB_LETTERS:"mxgraph.ios.iKeybLett",SHAPE_IKEYB_NUMBERS:"mxgraph.ios.iKeybNumb",SHAPE_IKEYB_SYMBOLS:"mxgraph.ios.iKeybSymb",SHAPE_ILOCATION_BAR:"mxgraph.ios.iLocBar",SHAPE_ILOCK_BUTTON:"mxgraph.ios.iLockButton",SHAPE_IHOR_BUTTON_BAR:"mxgraph.ios.iHorButtonBar",SHAPE_IINFO_ICON:"mxgraph.ios.iInfoIcon",SHAPE_ION_OFF_BUTTON:"mxgraph.ios.iOnOffButton",SHAPE_IOPTION:"mxgraph.ios.iOption",SHAPE_IPAGE_CONTROL:"mxgraph.ios.iPageControl",SHAPE_IPAD:"mxgraph.ios.iPad",
670SHAPE_IPHONE:"mxgraph.ios.iPhone",SHAPE_IPIN:"mxgraph.ios.iPin",SHAPE_IPREV_NEXT:"mxgraph.ios.iPrevNext",SHAPE_IPROGRESS_BAR:"mxgraph.ios.iProgressBar",SHAPE_IRADIO_GROUP:"mxgraph.ios.iRadioGroup",SHAPE_ISLIDER:"mxgraph.ios.iSlider",SHAPE_ISORT_FIND_ICON:"mxgraph.ios.iSortFindIcon",SHAPE_ITEXT_INPUT:"mxgraph.ios.iTextInput",SHAPE_ITOP_BAR:"mxgraph.ios.iTopBar",SHAPE_ITOP_BAR_LOCKED:"mxgraph.ios.iTopBarLocked",SHAPE_IURL_BAR:"mxgraph.ios.iURLBar",SHAPE_IVIDEO_CONTROLS:"mxgraph.ios.iVideoControls",
671SHAPE_ISCREEN_NAME_BAR:"mxgraph.ios.iScreenNameBar",STYLE_FILLCOLOR2:"fillColor2",STYLE_FILLCOLOR3:"fillColor3",STYLE_TEXTCOLOR:"textColor",STYLE_TEXTCOLOR2:"textColor2",STYLE_STROKECOLOR2:"strokeColor2",STYLE_STROKECOLOR3:"strokeColor3"};function mxShapeMockupiPhone(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiPhone,mxShape);
672mxShapeMockupiPhone.prototype.customProperties=[{name:"bgStyle",dispName:"Background",type:"enum",enumList:[{val:"bgGreen",dispName:"Green"},{val:"bgWhite",dispName:"White"},{val:"bgGray",dispName:"Gray"},{val:"bgFlat",dispName:"Flat"},{val:"bgMap",dispName:"Map"},{val:"bgStriped",dispName:"Striped"}]}];mxShapeMockupiPhone.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c,25);a.setShadow(!1);this.foreground(a,d,e,b,c,25)};
673mxShapeMockupiPhone.prototype.background=function(a,d,e,b,c,f){a.setFillColor("#000000");a.setStrokeColor("#000000");a.roundrect(0,0,b,c,f,f);a.fillAndStroke()};
674mxShapeMockupiPhone.prototype.foreground=function(a,d,e,b,c,f){a.setStrokeWidth(1.5);a.begin();a.setGradient("#808080","#000000",.325*b,0,.675*b,.5*c,mxConstants.DIRECTION_SOUTH,1,1);a.moveTo(.325*b,0);a.lineTo(b-f,0);a.arcTo(f,f,0,0,1,b,f);a.lineTo(b,.5*c);a.lineTo(.7*b,.5*c);a.close();a.fill();d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"");e=mxUtils.getValue(this.style,mxMockupC.BG_STYLE,mxMockupC.BG_FLAT_GREEN);a.setStrokeWidth(1);if(e===mxMockupC.BG_FLAT_WHITE)a.setFillColor("#ffffff"),
675a.rect(.0625*b,.15*c,.875*b,.7*c),a.fill();else if(e===mxMockupC.BG_FLAT_GREEN)a.setFillColor("#1f2923"),a.rect(.0625*b,.15*c,.875*b,.7*c),a.fill();else if(e===mxMockupC.BG_FLAT_GRAY)a.setFillColor("#dddddd"),a.rect(.0625*b,.15*c,.875*b,.7*c),a.fill();else if(e===mxMockupC.BG_FLAT_CUSTOM)a.setFillColor(d),a.rect(.0625*b,.15*c,.875*b,.7*c),a.fill();else if(e===mxMockupC.BG_STRIPED){d=b;e=c;a.translate(.0625*b,.15*c);b*=.875;c*=.7;a.setFillColor("#5D7585");a.rect(0,0,b,c);a.fillAndStroke();a.setStrokeColor("#657E8F");
676var g=5;for(a.begin();g<b;)a.moveTo(g,0),a.lineTo(g,c),g+=5;a.stroke();a.setStrokeColor("#18211b");a.begin();a.rect(0,0,b,c);a.stroke();b=d;c=e;a.translate(.0625*-b,.15*-c)}else e===mxMockupC.BG_MAP&&(d=b,e=c,a.translate(.0625*b,.15*c),b*=.875,c*=.7,a.setFillColor("#ffffff"),a.rect(0,0,b,c),a.fillAndStroke(),a.setFillColor("#96D1FF"),a.setStrokeColor("#008cff"),a.setStrokeWidth(1),a.begin(),a.moveTo(0,0),a.lineTo(.1171*b,0),a.lineTo(.1136*b,.0438*c),a.lineTo(.0993*b,.054*c),a.lineTo(0,.0446*c),a.close(),
677a.fillAndStroke(),a.begin(),a.moveTo(.1993*b,0),a.lineTo(.1914*b,.03884*c),a.lineTo(.1536*b,.0362*c),a.lineTo(.1586*b,0),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.24*b,0),a.lineTo(.2257*b,.054*c),a.lineTo(.2414*b,.0674*c),a.lineTo(.4707*b,.0835*c),a.lineTo(.5264*b,.0906*c),a.lineTo(.6429*b,.0929*c),a.arcTo(.0857*b,.0536*c,0,0,0,.7193*b,.0621*c),a.arcTo(.48*b,.2143*c,0,0,0,.7286*b,0),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.8*b,0),a.lineTo(.7886*b,.04554*c),a.arcTo(.0857*b,.0536*c,0,0,
6780,.8164*b,.0875*c),a.arcTo(.1429*b,.0893*c,0,0,0,.88*b,.1036*c),a.lineTo(b,.1112*c),a.lineTo(b,0),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(0,.0933*c),a.lineTo(.08*b,.1036*c),a.lineTo(.1021*b,.1246*c),a.lineTo(.1007*b,.1768*c),a.lineTo(.0471*b,.2241*c),a.lineTo(0,.2527*c),a.close(),a.fillAndStroke(),a.ellipse(.1214*b,.0603*c,.0843*b,.0576*c),a.fillAndStroke(),a.begin(),a.moveTo(.1293*b,.1924*c),a.lineTo(.1729*b,.142*c),a.lineTo(.1407*b,.1411*c),a.lineTo(.14*b,.1777*c),a.close(),a.fillAndStroke(),
679a.begin(),a.moveTo(.4586*b,.1241*c),a.lineTo(.455*b,.1835*c),a.lineTo(.3893*b,.2246*c),a.lineTo(.2171*b,.1362*c),a.lineTo(.2171*b,.1308*c),a.lineTo(.2293*b,.1214*c),a.lineTo(.2857*b,.1174*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.5079*b,.1134*c),a.lineTo(.7307*b,.1223*c),a.lineTo(.7279*b,.1625*c),a.lineTo(.715*b,.1772*c),a.lineTo(.6929*b,.1688*c),a.lineTo(.625*b,.1795*c),a.lineTo(.4779*b,.2835*c),a.lineTo(.395*b,.2299*c),a.lineTo(.4657*b,.1826*c),a.lineTo(.4707*b,.1223*c),a.close(),a.fillAndStroke(),
680a.begin(),a.moveTo(b,.1362*c),a.lineTo(.7643*b,.1237*c),a.lineTo(.7543*b,.1562*c),a.lineTo(.7643*b,.1585*c),a.lineTo(.9186*b,.2366*c),a.lineTo(b,.1732*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.2079*b,.1545*c),a.lineTo(.3886*b,.2536*c),a.lineTo(.3414*b,.2933*c),a.lineTo(.1743*b,.1969*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.1579*b,.2134*c),a.lineTo(.3221*b,.3067*c),a.lineTo(.2957*b,.3237*c),a.lineTo(.1157*b,.2424*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.405*b,.2656*c),
681a.lineTo(.31*b,.3353*c),a.lineTo(.3693*b,.3661*c),a.lineTo(.4571*b,.2982*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.7121*b,.1848*c),a.lineTo(.6879*b,.1754*c),a.lineTo(.6329*b,.1844*c),a.lineTo(.61*b,.2018*c),a.lineTo(.6207*b,.2085*c),a.lineTo(.4986*b,.2982*c),a.lineTo(.535*b,.3237*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.5557*b,.3379*c),a.lineTo(.7464*b,.1826*c),a.lineTo(.8036*b,.2076*c),a.lineTo(.595*b,.3616*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.8293*b,.2188*c),a.lineTo(.8979*
682b,.2509*c),a.lineTo(.6936*b,.4125*c),a.lineTo(.6171*b,.3737*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(b,.2138*c),a.lineTo(.6821*b,.4603*c),a.lineTo(.815*b,.5277*c),a.lineTo(b,.4*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(0,.317*c),a.lineTo(.0971*b,.2554*c),a.lineTo(.4121*b,.4143*c),a.lineTo(.3736*b,.4415*c),a.lineTo(.315*b,.4076*c),a.lineTo(.3093*b,.4116*c),a.lineTo(.3686*b,.4455*c),a.lineTo(.285*b,.5045*c),a.lineTo(.1114*b,.4134*c),a.lineTo(.025*b,.4603*c),a.lineTo(.0371*b,.4723*c),
683a.lineTo(.1114*b,.4371*c),a.lineTo(.2871*b,.5312*c),a.lineTo(.1929*b,.6058*c),a.lineTo(.2271*b,.6705*c),a.lineTo(.17*b,.7147*c),a.lineTo(.0314*b,.6321*c),a.lineTo(0,.6246*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.48*b,.3121*c),a.lineTo(.5157*b,.3375*c),a.lineTo(.4314*b,.3982*c),a.lineTo(.3929*b,.3786*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.3086*b,.5179*c),a.lineTo(.53*b,.3518*c),a.lineTo(.5757*b,.3745*c),a.lineTo(.3479*b,.5411*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.5964*
684b,.3884*c),a.lineTo(.6736*b,.4277*c),a.lineTo(.445*b,.5991*c),a.lineTo(.3664*b,.5531*c),a.lineTo(.5057*b,.4545*c),a.lineTo(.5507*b,.4754*c),a.lineTo(.5571*b,.4723*c),a.lineTo(.5114*b,.4504*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.4793*b,.6161*c),a.lineTo(.6771*b,.4643*c),a.lineTo(.8086*b,.5326*c),a.lineTo(.7471*b,.5817*c),a.lineTo(.7214*b,.567*c),a.lineTo(.715*b,.571*c),a.lineTo(.7421*b,.5871*c),a.lineTo(.6014*b,.6933*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(b,.4371*c),a.lineTo(.8443*
685b,.546*c),a.lineTo(.9071*b,.5701*c),a.lineTo(b,.5022*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.8407*b,.5504*c),a.lineTo(.8993*b,.5759*c),a.lineTo(.6757*b,.7416*c),a.lineTo(.6286*b,.7139*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(b,.5321*c),a.lineTo(.6979*b,.7549*c),a.lineTo(.7457*b,.7781*c),a.lineTo(.9814*b,.6094*c),a.lineTo(b,.6067*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(b,.6254*c),a.lineTo(.7664*b,.792*c),a.lineTo(.9586*b,.9062*c),a.lineTo(b,.8786*c),a.close(),a.fillAndStroke(),
686a.begin(),a.moveTo(.3093*b,.5464*c),a.lineTo(.4271*b,.6152*c),a.lineTo(.245*b,.7643*c),a.lineTo(.185*b,.7228*c),a.lineTo(.2493*b,.6728*c),a.lineTo(.2214*b,.6143*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(0,.65*c),a.lineTo(.2179*b,.7826*c),a.lineTo(.1136*b,.8424*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(0,.7272*c),a.lineTo(.0821*b,.859*c),a.lineTo(0,.9085*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.4529*b,.6366*c),a.lineTo(.575*b,.7143*c),a.lineTo(.39*b,.8621*c),a.lineTo(.2657*
687b,.7902*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(0,.9415*c),a.lineTo(.1036*b,.8821*c),a.lineTo(.2343*b,.959*c),a.lineTo(.1721*b,c),a.lineTo(0,c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.2586*b,.7951*c),a.lineTo(.3829*b,.8674*c),a.lineTo(.2543*b,.9451*c),a.lineTo(.1279*b,.8692*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.2836*b,.9639*c),a.lineTo(.4207*b,.8772*c),a.lineTo(.605*b,.7321*c),a.lineTo(.6521*b,.7634*c),a.lineTo(.3486*b,c),a.lineTo(.3393*b,c),a.close(),a.fillAndStroke(),
688a.begin(),a.moveTo(.3879*b,c),a.lineTo(.6721*b,.7759*c),a.lineTo(.7171*b,.7982*c),a.lineTo(.4564*b,c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.4986*b,c),a.lineTo(.7386*b,.8125*c),a.lineTo(.9307*b,.925*c),a.lineTo(.8264*b,c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.8671*b,c),a.lineTo(.9464*b,.9491*c),a.lineTo(b,.975*c),a.lineTo(b,c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.2295*b,c),a.lineTo(.2648*b,.9792*c),a.lineTo(.2981*b,c),a.close(),a.fillAndStroke(),b=d,c=e,a.translate(.0625*
689-b,.15*-c));a.setStrokeWidth(1);a.setStrokeColor("#18211b");a.rect(.0625*b,.15*c,.875*b,.7*c);a.stroke();a.setStrokeWidth(1.5);a.setAlpha(.8);a.setStrokeColor("#dddddd");a.roundrect(0,0,b,c,f,f);a.stroke();f=22.5;a.begin();a.setStrokeColor("#666666");a.roundrect(5,5,b-10,c-10,f,f);a.stroke();a.setAlpha(1);a.ellipse(.4875*b,.04125*c,.025*b,.0125*c);a.setStrokeWidth(2.5);a.setStrokeColor("#000000");a.setFillColor("#000099");a.fillAndStroke();a.begin();a.setStrokeWidth(1.5);a.setFillColor("#444444");
690a.setStrokeColor("#333333");a.roundrect(.375*b,.075*c,.25*b,.01875*c,.02*b,.01*c);a.fillAndStroke();a.setGradient("#bbbbbb","#000000",.4*b,.875*c,.2*b,.1*c,mxConstants.DIRECTION_SOUTH,1,1);a.ellipse(.4*b,.875*c,.2*b,.1*c);a.fill();a.setAlpha(.5);a.ellipse(.404*b,.876*c,.19*b,.095*c);a.stroke();a.begin();a.setAlpha(.85);a.setFillColor("#000000");a.moveTo(.4025*b,.925*c);a.arcTo(.0975*b,.04625*c,0,0,1,.5975*b,.925*c);a.arcTo(.2*b,.1*c,0,0,1,.4025*b,.925*c);a.close();a.fillAndStroke();a.begin();a.setAlpha(.7);
691a.setStrokeWidth(1.5);a.setStrokeColor("#dddddd");a.roundrect(.4575*b,.905*c,.0875*b,.04375*c,.00625*c,.00625*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IPHONE,mxShapeMockupiPhone);function mxShapeMockupiBgFlat(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiBgFlat,mxShape);mxShapeMockupiBgFlat.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
692mxShapeMockupiBgFlat.prototype.background=function(a,d,e,b,c){a.begin();a.rect(0,0,b,c);a.fillAndStroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IBG_FLAT,mxShapeMockupiBgFlat);function mxShapeMockupiBgStriped(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiBgStriped,mxShape);
693mxShapeMockupiBgStriped.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupiBgStriped.prototype.background=function(a,d,e,b,c){a.setStrokeWidth(1);a.begin();a.rect(0,0,b,c);a.fillAndStroke()};
694mxShapeMockupiBgStriped.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"");e=mxUtils.getValue(this.style,mxMockupC.STYLE_STROKECOLOR2,"");a.setStrokeColor(e);e=5;for(a.begin();e<b;)a.moveTo(e,0),a.lineTo(e,c),e+=5;a.stroke();a.setStrokeColor(d);a.begin();a.rect(0,0,b,c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IBG_STRIPED,mxShapeMockupiBgStriped);
695function mxShapeMockupiBgMap(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiBgMap,mxShape);mxShapeMockupiBgMap.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupiBgMap.prototype.background=function(a,d,e,b,c){a.begin();a.rect(0,0,b,c);a.fillAndStroke()};
696mxShapeMockupiBgMap.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"");e=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"");var f=mxUtils.getValue(this.style,mxMockupC.STYLE_STROKECOLOR2,"");a.setFillColor(d);a.setStrokeColor(f);a.setStrokeWidth(.5);a.begin();a.moveTo(0,0);a.lineTo(.1171*b,0);a.lineTo(.1136*b,.0438*c);a.lineTo(.0993*b,.054*c);a.lineTo(0,.0446*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.1993*b,0);a.lineTo(.1914*b,
697.03884*c);a.lineTo(.1536*b,.0362*c);a.lineTo(.1586*b,0);a.close();a.fillAndStroke();a.begin();a.moveTo(.24*b,0);a.lineTo(.2257*b,.054*c);a.lineTo(.2414*b,.0674*c);a.lineTo(.4707*b,.0835*c);a.lineTo(.5264*b,.0906*c);a.lineTo(.6429*b,.0929*c);a.arcTo(.0857*b,.0536*c,0,0,0,.7193*b,.0621*c);a.arcTo(.48*b,.2143*c,0,0,0,.7286*b,0);a.close();a.fillAndStroke();a.begin();a.moveTo(.8*b,0);a.lineTo(.7886*b,.04554*c);a.arcTo(.0857*b,.0536*c,0,0,0,.8164*b,.0875*c);a.arcTo(.1429*b,.0893*c,0,0,0,.88*b,.1036*c);
698a.lineTo(b,.1112*c);a.lineTo(b,0);a.close();a.fillAndStroke();a.begin();a.moveTo(0,.0933*c);a.lineTo(.08*b,.1036*c);a.lineTo(.1021*b,.1246*c);a.lineTo(.1007*b,.1768*c);a.lineTo(.0471*b,.2241*c);a.lineTo(0,.2527*c);a.close();a.fillAndStroke();a.ellipse(.1214*b,.0603*c,.0843*b,.0576*c);a.fillAndStroke();a.begin();a.moveTo(.1293*b,.1924*c);a.lineTo(.1729*b,.142*c);a.lineTo(.1407*b,.1411*c);a.lineTo(.14*b,.1777*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.4586*b,.1241*c);a.lineTo(.455*b,.1835*c);
699a.lineTo(.3893*b,.2246*c);a.lineTo(.2171*b,.1362*c);a.lineTo(.2171*b,.1308*c);a.lineTo(.2293*b,.1214*c);a.lineTo(.2857*b,.1174*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.5079*b,.1134*c);a.lineTo(.7307*b,.1223*c);a.lineTo(.7279*b,.1625*c);a.lineTo(.715*b,.1772*c);a.lineTo(.6929*b,.1688*c);a.lineTo(.625*b,.1795*c);a.lineTo(.4779*b,.2835*c);a.lineTo(.395*b,.2299*c);a.lineTo(.4657*b,.1826*c);a.lineTo(.4707*b,.1223*c);a.close();a.fillAndStroke();a.begin();a.moveTo(b,.1362*c);a.lineTo(.7643*b,.1237*
700c);a.lineTo(.7543*b,.1562*c);a.lineTo(.7643*b,.1585*c);a.lineTo(.9186*b,.2366*c);a.lineTo(b,.1732*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.2079*b,.1545*c);a.lineTo(.3886*b,.2536*c);a.lineTo(.3414*b,.2933*c);a.lineTo(.1743*b,.1969*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.1579*b,.2134*c);a.lineTo(.3221*b,.3067*c);a.lineTo(.2957*b,.3237*c);a.lineTo(.1157*b,.2424*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.405*b,.2656*c);a.lineTo(.31*b,.3353*c);a.lineTo(.3693*b,.3661*c);a.lineTo(.4571*
701b,.2982*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.7121*b,.1848*c);a.lineTo(.6879*b,.1754*c);a.lineTo(.6329*b,.1844*c);a.lineTo(.61*b,.2018*c);a.lineTo(.6207*b,.2085*c);a.lineTo(.4986*b,.2982*c);a.lineTo(.535*b,.3237*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.5557*b,.3379*c);a.lineTo(.7464*b,.1826*c);a.lineTo(.8036*b,.2076*c);a.lineTo(.595*b,.3616*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.8293*b,.2188*c);a.lineTo(.8979*b,.2509*c);a.lineTo(.6936*b,.4125*c);a.lineTo(.6171*b,
702.3737*c);a.close();a.fillAndStroke();a.begin();a.moveTo(b,.2138*c);a.lineTo(.6821*b,.4603*c);a.lineTo(.815*b,.5277*c);a.lineTo(b,.4*c);a.close();a.fillAndStroke();a.begin();a.moveTo(0,.317*c);a.lineTo(.0971*b,.2554*c);a.lineTo(.4121*b,.4143*c);a.lineTo(.3736*b,.4415*c);a.lineTo(.315*b,.4076*c);a.lineTo(.3093*b,.4116*c);a.lineTo(.3686*b,.4455*c);a.lineTo(.285*b,.5045*c);a.lineTo(.1114*b,.4134*c);a.lineTo(.025*b,.4603*c);a.lineTo(.0371*b,.4723*c);a.lineTo(.1114*b,.4371*c);a.lineTo(.2871*b,.5312*c);
703a.lineTo(.1929*b,.6058*c);a.lineTo(.2271*b,.6705*c);a.lineTo(.17*b,.7147*c);a.lineTo(.0314*b,.6321*c);a.lineTo(0,.6246*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.48*b,.3121*c);a.lineTo(.5157*b,.3375*c);a.lineTo(.4314*b,.3982*c);a.lineTo(.3929*b,.3786*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.3086*b,.5179*c);a.lineTo(.53*b,.3518*c);a.lineTo(.5757*b,.3745*c);a.lineTo(.3479*b,.5411*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.5964*b,.3884*c);a.lineTo(.6736*b,.4277*c);a.lineTo(.445*
704b,.5991*c);a.lineTo(.3664*b,.5531*c);a.lineTo(.5057*b,.4545*c);a.lineTo(.5507*b,.4754*c);a.lineTo(.5571*b,.4723*c);a.lineTo(.5114*b,.4504*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.4793*b,.6161*c);a.lineTo(.6771*b,.4643*c);a.lineTo(.8086*b,.5326*c);a.lineTo(.7471*b,.5817*c);a.lineTo(.7214*b,.567*c);a.lineTo(.715*b,.571*c);a.lineTo(.7421*b,.5871*c);a.lineTo(.6014*b,.6933*c);a.close();a.fillAndStroke();a.begin();a.moveTo(b,.4371*c);a.lineTo(.8443*b,.546*c);a.lineTo(.9071*b,.5701*c);a.lineTo(b,
705.5022*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.8407*b,.5504*c);a.lineTo(.8993*b,.5759*c);a.lineTo(.6757*b,.7416*c);a.lineTo(.6286*b,.7139*c);a.close();a.fillAndStroke();a.begin();a.moveTo(b,.5321*c);a.lineTo(.6979*b,.7549*c);a.lineTo(.7457*b,.7781*c);a.lineTo(.9814*b,.6094*c);a.lineTo(b,.6067*c);a.close();a.fillAndStroke();a.begin();a.moveTo(b,.6254*c);a.lineTo(.7664*b,.792*c);a.lineTo(.9586*b,.9062*c);a.lineTo(b,.8786*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.3093*b,.5464*c);a.lineTo(.4271*
706b,.6152*c);a.lineTo(.245*b,.7643*c);a.lineTo(.185*b,.7228*c);a.lineTo(.2493*b,.6728*c);a.lineTo(.2214*b,.6143*c);a.close();a.fillAndStroke();a.begin();a.moveTo(0,.65*c);a.lineTo(.2179*b,.7826*c);a.lineTo(.1136*b,.8424*c);a.close();a.fillAndStroke();a.begin();a.moveTo(0,.7272*c);a.lineTo(.0821*b,.859*c);a.lineTo(0,.9085*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.4529*b,.6366*c);a.lineTo(.575*b,.7143*c);a.lineTo(.39*b,.8621*c);a.lineTo(.2657*b,.7902*c);a.close();a.fillAndStroke();a.begin();
707a.moveTo(0,.9415*c);a.lineTo(.1036*b,.8821*c);a.lineTo(.2343*b,.959*c);a.lineTo(.1721*b,c);a.lineTo(0,c);a.close();a.fillAndStroke();a.begin();a.moveTo(.2586*b,.7951*c);a.lineTo(.3829*b,.8674*c);a.lineTo(.2543*b,.9451*c);a.lineTo(.1279*b,.8692*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.2836*b,.9639*c);a.lineTo(.4207*b,.8772*c);a.lineTo(.605*b,.7321*c);a.lineTo(.6521*b,.7634*c);a.lineTo(.3486*b,c);a.lineTo(.3393*b,c);a.close();a.fillAndStroke();a.begin();a.moveTo(.3879*b,c);a.lineTo(.6721*
708b,.7759*c);a.lineTo(.7171*b,.7982*c);a.lineTo(.4564*b,c);a.close();a.fillAndStroke();a.begin();a.moveTo(.4986*b,c);a.lineTo(.7386*b,.8125*c);a.lineTo(.9307*b,.925*c);a.lineTo(.8264*b,c);a.close();a.fillAndStroke();a.begin();a.moveTo(.8671*b,c);a.lineTo(.9464*b,.9491*c);a.lineTo(b,.975*c);a.lineTo(b,c);a.close();a.fillAndStroke();a.begin();a.moveTo(.2295*b,c);a.lineTo(.2648*b,.9792*c);a.lineTo(.2981*b,c);a.close();a.fillAndStroke();a.setStrokeWidth(1);a.setStrokeColor(e);a.begin();a.rect(0,0,b,c);
709a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IBG_MAP,mxShapeMockupiBgMap);function mxShapeMockupiButtonBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiButtonBar,mxShape);
710mxShapeMockupiButtonBar.prototype.customProperties=[{name:"buttonText",dispName:"Labels",type:"string"},{name:"textColor",dispName:"Text Color",type:"color"},{name:"textColor2",dispName:"Text2 Color",type:"color"},{name:"strokeColor2",dispName:"Stroke2 Color",type:"color"}];
711mxShapeMockupiButtonBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"+Button 1, Button 2, Button 3").toString().split(","),g=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR,"#666666"),h=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR2,"#ffffff"),k=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17").toString(),l=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),m=mxUtils.getValue(this.style,mxMockupC.STYLE_STROKECOLOR2,
712"#c4c4c4"),n=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),p=f.length,q=0,t=-1,u=0;u<p;u++){var v=f[u];v.charAt(0)===mxMockupC.SELECTED&&(v=f[u].substring(1),t=u);v=mxUtils.getSizeForString(v,k,mxConstants.DEFAULT_FONTFAMILY).width;v>q&&(q=v)}var r=1.5*k,w=p*r;c=Math.max(c,w);b=Math.max(b,5+q);a.translate(d,e);this.background(a,b,c,2.5,p,2.5,p*r,l,m,n,t,r);a.setShadow(!1);this.foreground(a,b,c,2.5,p,2.5,p*r,l,m,n,t,r);for(u=v=0;u<p;u++)u===t?a.setFontColor(h):a.setFontColor(g),
713v+=2.5,this.buttonText(a,b,(u*r+.5*r)*c/w,f[u],k,m)};mxShapeMockupiButtonBar.prototype.background=function(a,d,e,b,c,f,g,h,k,l,m,n){a.begin();a.setStrokeWidth(1);a.setStrokeColor(h);a.setFillColor(l);a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,e-b);a.arcTo(b,b,0,0,1,d-b,e);a.lineTo(b,e);a.arcTo(b,b,0,0,1,0,e-b);a.close();a.fillAndStroke()};
714mxShapeMockupiButtonBar.prototype.foreground=function(a,d,e,b,c,f,g,h,k,l,m,n){f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1");a.setStrokeWidth(f);a.setStrokeColor(k);a.begin();for(k=1;k<c;k++)k!==m&&k!==m+1&&(f=k*n*e/g,a.moveTo(0,f),a.lineTo(d,f));a.stroke();a.setStrokeColor(mxConstants.NONE);0===m?(a.begin(),g=n*e/g,a.setGradient("#5D7585","#008cff",0,0,d,g,mxConstants.DIRECTION_SOUTH,1,1),a.moveTo(0,b),a.arcTo(b,b,0,0,1,b,0),a.lineTo(d-b,0),a.arcTo(b,b,0,0,1,d,b),a.lineTo(d,g),
715a.lineTo(0,g),a.close(),a.fill()):m===c-1?(a.begin(),c=e-n*e/g,a.setGradient("#5D7585","#008cff",0,c,d,e-c,mxConstants.DIRECTION_SOUTH,1,1),a.moveTo(0,c),a.lineTo(d,c),a.lineTo(d,e-b),a.arcTo(b,b,0,0,1,d-b,e),a.lineTo(b,e),a.arcTo(b,b,0,0,1,0,e-b),a.close(),a.fill()):-1!==m&&(a.begin(),c=n*m*e/g,g=n*(m+1)*e/g,a.setGradient("#5D7585","#008cff",0,c,d,g-c,mxConstants.DIRECTION_SOUTH,1,1),a.moveTo(0,c),a.lineTo(d,c),a.lineTo(d,g),a.lineTo(0,g),a.close(),a.fill());a.begin();a.setStrokeColor(h);a.setFillColor(l);
716a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,e-b);a.arcTo(b,b,0,0,1,d-b,e);a.lineTo(b,e);a.arcTo(b,b,0,0,1,0,e-b);a.close();a.stroke()};
717mxShapeMockupiButtonBar.prototype.buttonText=function(a,d,e,b,c,f){b.charAt(0)===mxMockupC.SELECTED&&(b=b.substring(1));a.setFontSize(c);a.text(10,e,0,0,b,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);b=.5*c;a.setStrokeWidth(.3*c);a.setStrokeColor(f);a.begin();a.moveTo(d-20-b,e-b);a.lineTo(d-20,e);a.lineTo(d-20-b,e+b);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IBUTTON_BAR,mxShapeMockupiButtonBar);
718function mxShapeMockupiAppBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiAppBar,mxShape);mxShapeMockupiAppBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupiAppBar.prototype.background=function(a,d,e,b,c){a.setGradient("#eeeeee","#999999",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.rect(0,0,b,c);a.fill()};
719mxShapeMockupiAppBar.prototype.foreground=function(a,d,e,b,c){a.setFillColor("#0099ff");a.rect(5,.5*c+1.75,1.5,2.5);a.fill();a.rect(7,.5*c+.75,1.5,3.5);a.fill();a.rect(9,.5*c-.25,1.5,4.5);a.fill();a.rect(11,.5*c-1.25,1.5,5.5);a.fill();a.rect(13,.5*c-2.25,1.5,6.5);a.fill();a.rect(15,.5*c-3.25,1.5,7.5);a.fill();a.setFillColor("#999999");a.ellipse(b-56.5,.5*c-4,8,8);a.fill();a.setStrokeColor("#cccccc");a.begin();a.moveTo(b-52.5,.5*c-3);a.lineTo(b-52.5,.5*c);a.lineTo(b-54.5,.5*c);a.stroke();a.setStrokeWidth(.5);
720a.setStrokeColor("#333333");a.setFillColor("#990000");a.begin();a.moveTo(b-45.5,.5*c);a.lineTo(b-37.5,.5*c-5);a.lineTo(b-41.5,.5*c+4);a.lineTo(b-42,.5*c+.5);a.close();a.fillAndStroke();a.setFillColor("#999999");a.setStrokeColor("#999999");a.begin();a.moveTo(b-28.5,.5*c+3.5);a.arcTo(3.5,3.5,0,1,1,b-26.5,.5*c+1);a.stroke();a.begin();a.moveTo(b-27.25,.5*c+.25);a.lineTo(b-25.75,.5*c+.25);a.lineTo(b-26.5,.5*c+1.5);a.close();a.fillAndStroke();a.begin();a.moveTo(b-31,.5*c-.5);a.arcTo(1,1.5,0,0,1,b-29,.5*
721c-.5);a.stroke();a.rect(b-31.5,.5*c-.5,3,2);a.fillAndStroke();a.setGradient("#eeeeee","#444444",b-20,.5*c-3,16.5,6,mxConstants.DIRECTION_NORTH,1,1);a.begin();a.moveTo(b-20,.5*c-3);a.lineTo(b-5,.5*c-3);a.lineTo(b-5,.5*c-1);a.lineTo(b-3.5,.5*c-1);a.lineTo(b-3.5,.5*c+1);a.lineTo(b-5,.5*c+1);a.lineTo(b-5,.5*c+3);a.lineTo(b-20,.5*c+3);a.close();a.fill();a.setGradient("#E2FFEB","#008215",b-20,.5*c-3,10,6,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(b-20,.5*c-3);a.lineTo(b-10,.5*c-3);a.lineTo(b-10,
722.5*c+3);a.lineTo(b-20,.5*c+3);a.close();a.fill();a.setStrokeColor("#666666");a.begin();a.moveTo(b-20,.5*c-3);a.lineTo(b-5,.5*c-3);a.lineTo(b-5,.5*c-1);a.lineTo(b-3.5,.5*c-1);a.lineTo(b-3.5,.5*c+1);a.lineTo(b-5,.5*c+1);a.lineTo(b-5,.5*c+3);a.lineTo(b-20,.5*c+3);a.close();a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IAPP_BAR,mxShapeMockupiAppBar);function mxShapeMockupiTopBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
723mxUtils.extend(mxShapeMockupiTopBar,mxShape);mxShapeMockupiTopBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupiTopBar.prototype.background=function(a,d,e,b,c){a.setAlpha(.5);a.setFillColor("#999999");a.rect(0,0,b,c);a.fill()};
724mxShapeMockupiTopBar.prototype.foreground=function(a,d,e,b,c){a.setFillColor("#cccccc");a.setStrokeColor("#cccccc");a.setFontColor("#cccccc");a.setFontSize(7.5);a.rect(5,.5*c+1.75,1.5,2.5);a.fill();a.rect(7,.5*c+.75,1.5,3.5);a.fill();a.rect(9,.5*c-.25,1.5,4.5);a.fill();a.rect(11,.5*c-1.25,1.5,5.5);a.fill();a.rect(13,.5*c-2.25,1.5,6.5);a.fill();a.rect(15,.5*c-3.25,1.5,7.5);a.fill();a.text(18,.5*c,0,0,"CARRIER",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.5*c,0,0,"11:15AM",
725mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.begin();a.moveTo(b-19,.5*c-2);a.lineTo(b-10,.5*c-2);a.lineTo(b-10,.5*c+2);a.lineTo(b-19,.5*c+2);a.close();a.fill();a.begin();a.moveTo(b-20,.5*c-3);a.lineTo(b-5,.5*c-3);a.lineTo(b-5,.5*c-1);a.lineTo(b-3.5,.5*c-1);a.lineTo(b-3.5,.5*c+1);a.lineTo(b-5,.5*c+1);a.lineTo(b-5,.5*c+3);a.lineTo(b-20,.5*c+3);a.close();a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_ITOP_BAR,mxShapeMockupiTopBar);
726function mxShapeMockupiTopBar2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiTopBar2,mxShape);mxShapeMockupiTopBar2.prototype.cst={SHAPE_ITOP_BAR2:"mxgraph.ios.iTopBar2"};mxShapeMockupiTopBar2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupiTopBar2.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fill()};
727mxShapeMockupiTopBar2.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(d);a.setStrokeColor(d);a.rect(5,.5*c+1.75,1.5,2.5);a.fill();a.rect(7,.5*c+.75,1.5,3.5);a.fill();a.rect(9,.5*c-.25,1.5,4.5);a.fill();a.rect(11,.5*c-1.25,1.5,5.5);a.fill();a.rect(13,.5*c-2.25,1.5,6.5);a.fill();a.rect(15,.5*c-3.25,1.5,7.5);a.fill();a.begin();a.moveTo(b-19,.5*c-2);a.lineTo(b-10,.5*c-2);a.lineTo(b-10,.5*c+2);a.lineTo(b-19,.5*c+2);a.close();
728a.fill();a.begin();a.moveTo(b-20,.5*c-3);a.lineTo(b-5,.5*c-3);a.lineTo(b-5,.5*c-1);a.lineTo(b-3.5,.5*c-1);a.lineTo(b-3.5,.5*c+1);a.lineTo(b-5,.5*c+1);a.lineTo(b-5,.5*c+3);a.lineTo(b-20,.5*c+3);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeMockupiTopBar2.prototype.cst.SHAPE_ITOP_BAR2,mxShapeMockupiTopBar2);function mxShapeMockupiTopBarLocked(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiTopBarLocked,mxShape);
729mxShapeMockupiTopBarLocked.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupiTopBarLocked.prototype.background=function(a,d,e,b,c){a.setFillColor("#000000");a.rect(0,0,b,c);a.fill()};
730mxShapeMockupiTopBarLocked.prototype.foreground=function(a,d,e,b,c){a.setFillColor("#cccccc");a.setStrokeColor("#cccccc");a.rect(5,.5*c+1.75,1.5,2.5);a.fill();a.rect(7,.5*c+.75,1.5,3.5);a.fill();a.rect(9,.5*c-.25,1.5,4.5);a.fill();a.rect(11,.5*c-1.25,1.5,5.5);a.fill();a.rect(13,.5*c-2.25,1.5,6.5);a.fill();a.rect(15,.5*c-3.25,1.5,7.5);a.fill();a.begin();a.moveTo(.5*b-2,.5*c-1);a.arcTo(2,3,0,0,1,.5*b+2,.5*c-1);a.stroke();a.rect(.5*b-3,.5*c-1,6,4);a.fillAndStroke();a.begin();a.moveTo(b-19,.5*c-2);a.lineTo(b-
73110,.5*c-2);a.lineTo(b-10,.5*c+2);a.lineTo(b-19,.5*c+2);a.close();a.fill();a.begin();a.moveTo(b-20,.5*c-3);a.lineTo(b-5,.5*c-3);a.lineTo(b-5,.5*c-1);a.lineTo(b-3.5,.5*c-1);a.lineTo(b-3.5,.5*c+1);a.lineTo(b-5,.5*c+1);a.lineTo(b-5,.5*c+3);a.lineTo(b-20,.5*c+3);a.close();a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_ITOP_BAR_LOCKED,mxShapeMockupiTopBarLocked);function mxShapeMockupiButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
732mxUtils.extend(mxShapeMockupiButton,mxShape);mxShapeMockupiButton.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Main Text"),g=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR2,"#666666").toString(),h=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8.5").toString();a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.mainText(a,d,e,b,c,f,h,g)};
733mxShapeMockupiButton.prototype.background=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(0,0,b,c,2.5,2.5);a.fill()};mxShapeMockupiButton.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(b/2,c/2,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
734mxCellRenderer.registerShape(mxMockupC.SHAPE_IBUTTON,mxShapeMockupiButton);function mxShapeMockupiButtonBack(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiButtonBack,mxShape);
735mxShapeMockupiButtonBack.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Main Text"),g=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR2,"#666666").toString(),h=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17").toString();a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.mainText(a,d,e,b,c,f,h,g)};
736mxShapeMockupiButtonBack.prototype.background=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);rSize=2.5;a.begin();a.moveTo(b,rSize);a.arcTo(rSize,rSize,0,0,0,b-rSize,0);a.lineTo(10,0);a.lineTo(.87,.5*c-.75);a.arcTo(rSize,rSize,0,0,0,.87,.5*c+.75);a.lineTo(10,c);a.lineTo(b-rSize,c);a.arcTo(rSize,rSize,0,0,0,b,c-rSize);a.close();
737a.fill()};mxShapeMockupiButtonBack.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(.5*b+2.5,.5*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxMockupC.SHAPE_IBUTTON_BACK,mxShapeMockupiButtonBack);function mxShapeMockupiButtonForward(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiButtonForward,mxShape);
738mxShapeMockupiButtonForward.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Main Text"),g=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR2,"#666666").toString(),h=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"17").toString();a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.mainText(a,d,e,b,c,f,h,g)};
739mxShapeMockupiButtonForward.prototype.background=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);rSize=2.5;a.begin();a.moveTo(0,rSize);a.arcTo(rSize,rSize,0,0,1,rSize,0);a.lineTo(b-10,0);a.lineTo(b-.87,.5*c-.75);a.arcTo(rSize,rSize,0,0,1,b-.87,.5*c+.75);a.lineTo(b-10,c);a.lineTo(rSize,c);a.arcTo(rSize,rSize,0,0,1,0,c-rSize);
740a.close();a.fill()};mxShapeMockupiButtonForward.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(.5*b-2.5,.5*c,0,0,f,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxMockupC.SHAPE_IBUTTON_FORWARD,mxShapeMockupiButtonForward);function mxShapeMockupiPrevNextButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiPrevNextButton,mxShape);
741mxShapeMockupiPrevNextButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
742mxShapeMockupiPrevNextButton.prototype.background=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(0,0,b,c,5,5);a.fill();a.begin();a.moveTo(.5*b,0);a.lineTo(.5*b,c);a.stroke()};
743mxShapeMockupiPrevNextButton.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR3,"").toString();a.setFillColor(d);a.begin();a.moveTo(.25*b,.25*c);a.lineTo(.35*b,.75*c);a.lineTo(.15*b,.75*c);a.close();a.fill();a.begin();a.moveTo(.75*b,.75*c);a.lineTo(.85*b,.25*c);a.lineTo(.65*b,.25*c);a.close();a.fill()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IPREV_NEXT,mxShapeMockupiPrevNextButton);
744function mxShapeMockupiTextInput(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiTextInput,mxShape);
745mxShapeMockupiTextInput.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Main Text"),g=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR2,"#000000").toString(),h=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8").toString();a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.mainText(a,d,e,b,c,f,h,g)};mxShapeMockupiTextInput.prototype.background=function(a,d,e,b,c){a.roundrect(0,0,b,c,2.5,2.5);a.fillAndStroke()};
746mxShapeMockupiTextInput.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(2,.5*c,0,0,f,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxMockupC.SHAPE_ITEXT_INPUT,mxShapeMockupiTextInput);function mxShapeMockupiRadioGroup(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiRadioGroup,mxShape);
747mxShapeMockupiRadioGroup.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR2,"#666666").toString(),g=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8").toString();d=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Option 1").toString().split(",");e=d.length;var h=Math.max(1.5*g,5),k=0,l=-1,m=e*h;c=Math.max(c,m);for(var n=0;n<e;n++){var p=d[n];p.charAt(0)===mxMockupC.SELECTED&&(p=d[n].substring(1),l=n);p=mxUtils.getSizeForString(p,
748g,mxConstants.DEFAULT_FONTFAMILY).width;p>k&&(k=p)}a.roundrect(0,0,Math.max(b,5+k+10),c,2.5,2.5);a.fillAndStroke();a.setShadow(!1);a.setFontSize(g);a.setFontColor(f);for(n=0;n<e;n++)b=(n*h+.5*h)*c/m,p=d[n],p.charAt(0)===mxMockupC.SELECTED&&(p=d[n].substring(1),l=n),a.text(12.5,b,0,0,p,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),b-=2.5,a.setFillColor("#dddddd"),a.setStrokeColor("#000000"),l===n?(a.setGradient("#aaaaaa","#666666",2.5,b,5,5,mxConstants.DIRECTION_SOUTH,1,1),a.ellipse(2.5,
749b,5,5),a.fillAndStroke(),a.setFillColor("#333333"),a.setStrokeColor("#333333"),a.ellipse(3.75,b+1.25,2.5,2.5)):(a.setGradient("#eeeeee","#cccccc",2.5,b,5,5,mxConstants.DIRECTION_SOUTH,1,1),a.ellipse(2.5,b,5,5)),a.fillAndStroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IRADIO_GROUP,mxShapeMockupiRadioGroup);function mxShapeMockupiCheckboxGroup(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiCheckboxGroup,mxShape);
750mxShapeMockupiCheckboxGroup.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR2,"#666666").toString(),g=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8").toString();d=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Option 1").toString().split(",");e=d.length;var h=Math.max(1.5*g,5),k=0,l=-1,m=e*h;c=Math.max(c,m);for(var n=0;n<e;n++){var p=d[n];p.charAt(0)===mxMockupC.SELECTED&&(p=d[n].substring(1),l=n);p=mxUtils.getSizeForString(p,
751g,mxConstants.DEFAULT_FONTFAMILY).width;p>k&&(k=p)}a.roundrect(0,0,Math.max(b,5+k+10),c,2.5,2.5);a.fillAndStroke();a.setShadow(!1);a.setFontSize(g);a.setFontColor(f);for(n=0;n<e;n++)b=(n*h+.5*h)*c/m,p=d[n],p.charAt(0)===mxMockupC.SELECTED&&(p=d[n].substring(1),l=n),a.text(12.5,b,0,0,p,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),b-=2.5,a.setFillColor("#dddddd"),a.setStrokeColor("#000000"),l===n?(a.setGradient("#aaaaaa","#666666",2.5,b,5,5,mxConstants.DIRECTION_SOUTH,1,1),a.rect(2.5,
752b,5,5),a.fillAndStroke(),a.setStrokeColor("#333333"),a.begin(),a.moveTo(3.75,b+2.5),a.lineTo(5,b+3.75),a.lineTo(6.25,b+1.25),a.stroke()):(a.setGradient("#eeeeee","#cccccc",2.5,b,5,5,mxConstants.DIRECTION_SOUTH,1,1),a.rect(2.5,b,5,5),a.fillAndStroke()),l=-1};mxCellRenderer.registerShape(mxMockupC.SHAPE_ICHECKBOX_GROUP,mxShapeMockupiCheckboxGroup);function mxShapeMockupiComboBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
753mxUtils.extend(mxShapeMockupiComboBox,mxShape);mxShapeMockupiComboBox.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Main Text"),g=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR2,"#666666").toString(),h=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8.5").toString();a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c);this.mainText(a,d,e,b,c,f,h,g)};
754mxShapeMockupiComboBox.prototype.background=function(a,d,e,b,c){a.setFillColor("#ffffff");a.roundrect(0,0,b,c,2.5,2.5);a.fillAndStroke()};
755mxShapeMockupiComboBox.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,b-30,0,30,c,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(b-15,0);a.lineTo(b-2.5,0);a.arcTo(2.5,2.5,0,0,1,b,2.5);a.lineTo(b,c-2.5);a.arcTo(2.5,2.5,0,0,1,b-2.5,c);a.lineTo(b-15,c);a.close();a.fillAndStroke();a.setFillColor("#ffffff");a.begin();a.moveTo(b-11,5);a.lineTo(b-
7567.5,10);a.lineTo(b-4,5);a.fill()};mxShapeMockupiComboBox.prototype.mainText=function(a,d,e,b,c,f,g,h){a.begin();a.setFontSize(g);a.setFontColor(h);a.text(2.5,.5*c,0,0,f,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxMockupC.SHAPE_ICOMBO_BOX,mxShapeMockupiComboBox);function mxShapeMockupiOnOffButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiOnOffButton,mxShape);
757mxShapeMockupiOnOffButton.prototype.customProperties=[{name:"buttonState",dispName:"State",type:"enum",enumList:[{val:"on",dispName:"On"},{val:"off",dispName:"Off"}]}];mxShapeMockupiOnOffButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);b=Math.max(b,2*c);var f=mxUtils.getValue(this.style,mxMockupC.BUTTON_STATE,mxMockupC.STATE_ON);this.background(a,d,e,b,c,f);a.setShadow(!1);this.foreground(a,d,e,b,c,f);this.mainText(a,d,e,b,c,f)};
758mxShapeMockupiOnOffButton.prototype.background=function(a,d,e,b,c,f){f===mxMockupC.STATE_ON?(a.setGradient("#E2FFEB","#008215",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1),a.roundrect(0,0,b,c,.5*c,.5*c),a.fillAndStroke()):f===mxMockupC.STATE_OFF&&(a.setGradient("#cc9999","#881100",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1),a.roundrect(0,0,b,c,.5*c,.5*c),a.fillAndStroke())};
759mxShapeMockupiOnOffButton.prototype.foreground=function(a,d,e,b,c,f){f===mxMockupC.STATE_ON?(a.setGradient("#ffffff","#888888",b-c,0,c,c,mxConstants.DIRECTION_SOUTH,1,1),a.ellipse(b-c,0,c,c)):(a.setGradient("#ffffff","#888888",0,0,c,c,mxConstants.DIRECTION_SOUTH,1,1),a.ellipse(0,0,c,c));a.fillAndStroke()};
760mxShapeMockupiOnOffButton.prototype.mainText=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,"mainText",null);a.setFontColor("#ffffff");a.setFontSize(8.5);""!=d&&(f===mxMockupC.STATE_ON?a.text(.5*b-.4*c,.5*c,0,0,d||"ON",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):f===mxMockupC.STATE_OFF&&a.text(.5*b+.4*c,.5*c,0,0,d||"OFF",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0))};mxCellRenderer.registerShape(mxMockupC.SHAPE_ION_OFF_BUTTON,mxShapeMockupiOnOffButton);
761function mxShapeMockupiAlertBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiAlertBox,mxShape);mxShapeMockupiAlertBox.prototype.paintVertexShape=function(a,d,e,b,c){b=Math.max(b,15);c=Math.max(c,15);a.translate(d,e);rSize=7.5;this.background(a,d,e,b,c,rSize);a.setShadow(!1);this.foreground(a,d,e,b,c,rSize)};
762mxShapeMockupiAlertBox.prototype.background=function(a,d,e,b,c,f){a.setGradient("#497198","#193168",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.setAlpha(.8);a.setStrokeWidth(1);a.roundrect(0,0,b,c,f,f);a.fillAndStroke()};
763mxShapeMockupiAlertBox.prototype.foreground=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Main Text").toString().split(",");a.setStrokeColor("#497198");a.setGradient("#497198","#c5cee1",0,0,b,22.5,mxConstants.DIRECTION_SOUTH,1,1);a.setAlpha(.5);a.begin();a.moveTo(b-f,0);a.arcTo(f,f,0,0,1,b,f);a.lineTo(b,17.5);a.arcTo(1.67*b,2.5*c,0,0,1,0,17.5);a.lineTo(0,f);a.arcTo(f,f,0,0,1,f,0);a.close();a.fillAndStroke();a.setAlpha(.8);a.setStrokeColor("#ffffff");a.setStrokeWidth(1);
764a.roundrect(0,0,b,c,f,f);a.stroke();a.setGradient("#497198","#c5cee1",5,c-50,b-20,20,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(5,c-25,b-10,20,2.5,2.5);a.fillAndStroke();a.setAlpha(.9);a.setFontSize(9.5);a.setFontColor("#ffffff");a.text(.5*b,.15*c,0,0,d[0],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontSize(8);a.text(.5*b,.4*c,0,0,d[2],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.55*c,0,0,d[3],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,
7650,null,0,0,0);a.setFontSize(8.5);a.text(.5*b,c-15,0,0,d[1],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxMockupC.SHAPE_IALERT_BOX,mxShapeMockupiAlertBox);function mxShapeMockupiDialogBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiDialogBox,mxShape);
766mxShapeMockupiDialogBox.prototype.paintVertexShape=function(a,d,e,b,c){b=Math.max(b,15);c=Math.max(c,15);a.translate(d,e);rSize=7.5;this.background(a,d,e,b,c,rSize);a.setShadow(!1);this.foreground(a,d,e,b,c,rSize)};mxShapeMockupiDialogBox.prototype.background=function(a,d,e,b,c,f){a.setGradient("#497198","#193168",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.setAlpha(.8);a.setStrokeWidth(1);a.roundrect(0,0,b,c,f,f);a.fillAndStroke()};
767mxShapeMockupiDialogBox.prototype.foreground=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Main Text").toString().split(",");a.setStrokeColor("#497198");a.setGradient("#497198","#c5cee1",0,0,b,22.5,mxConstants.DIRECTION_SOUTH,1,1);a.setAlpha(.5);a.begin();a.moveTo(b-f,0);a.arcTo(f,f,0,0,1,b,f);a.lineTo(b,17.5);a.arcTo(1.67*b,2.5*c,0,0,1,0,17.5);a.lineTo(0,f);a.arcTo(f,f,0,0,1,f,0);a.close();a.fillAndStroke();a.setAlpha(.8);a.setStrokeColor("#ffffff");a.setStrokeWidth(1);
768a.roundrect(0,0,b,c,f,f);a.stroke();a.setGradient("#497198","#c5cee1",5,c-25,.5*b-10,20,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(5,c-25,.5*b-10,20,2.5,2.5);a.fillAndStroke();a.roundrect(.5*b+2.5,c-25,.5*b-10,20,2.5,2.5);a.fillAndStroke();a.setAlpha(.9);a.setFontSize(9.5);a.setFontColor("#ffffff");a.text(.5*b,.15*c,0,0,d[0],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontSize(8);a.text(.5*b,.4*c,0,0,d[3],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*
769b,.55*c,0,0,d[4],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontSize(8.5);a.text(.25*b,c-15,0,0,d[1],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.75*b,c-15,0,0,d[2],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxMockupC.SHAPE_IDIALOG_BOX,mxShapeMockupiDialogBox);function mxShapeMockupiLockButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
770mxUtils.extend(mxShapeMockupiLockButton,mxShape);
771mxShapeMockupiLockButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setShadow(!1);a.setAlpha(.7);a.setGradient("#4A4F56","#70757B",0,0,b,c,mxConstants.DIRECTION_NORTH,1,1);a.rect(0,0,b,c);a.fill();a.setAlpha(.8);a.setGradient("#18232D","#1F2933",10,10,154,30,mxConstants.DIRECTION_NORTH,1,1);a.roundrect(10,.5*c-15,b-20,30,7.5,7.5);a.fill();a.setAlpha(1);a.setGradient("#E9F3FD","#ADB7C1",12.5,12.5,40,25,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(12.5,.5*c-12.5,40,25,5,5);a.fill();
772a.setAlpha(.8);a.setStrokeWidth(.5);a.setStrokeColor("#aabbbb");a.setGradient("#AEB7C1","#667079",20,17.5,25,15,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(20,.5*c-3.5);a.lineTo(35,.5*c-3.5);a.lineTo(35,.5*c-7.5);a.lineTo(45,.5*c);a.lineTo(35,.5*c+7.5);a.lineTo(35,.5*c+3.5);a.lineTo(20,.5*c+3.5);a.close();a.fillAndStroke();""!=mxUtils.getValue(this.style,"mainText",null)&&(a.setFontSize(12.5),a.setFontColor("#cccccc"),a.text(b/2+20.5,c/2,0,0,"slide to unlock",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,
7730,null,0,0,0))};mxCellRenderer.registerShape(mxMockupC.SHAPE_ILOCK_BUTTON,mxShapeMockupiLockButton);function mxShapeMockupiArrowIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiArrowIcon,mxShape);
774mxShapeMockupiArrowIcon.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"").toString();a.translate(d,e);this.background(a,d,e,b,c,f);a.setShadow(!1);this.foreground(a,d,e,b,c,f)};
775mxShapeMockupiArrowIcon.prototype.background=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.setStrokeWidth(1.5);a.setStrokeColor(f);a.ellipse(0,0,b,c);a.fillAndStroke()};
776mxShapeMockupiArrowIcon.prototype.foreground=function(a,d,e,b,c,f){a.setStrokeWidth(2.5);a.begin();a.moveTo(.4*b,.22*c);a.lineTo(.65*b,.5*c);a.lineTo(.4*b,.78*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IARROW_ICON,mxShapeMockupiArrowIcon);function mxShapeMockupiDeleteIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiDeleteIcon,mxShape);
777mxShapeMockupiDeleteIcon.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"").toString();a.translate(d,e);this.background(a,d,e,b,c,f);a.setShadow(!1);this.foreground(a,d,e,b,c,f)};
778mxShapeMockupiDeleteIcon.prototype.background=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.setStrokeWidth(1.5);a.setStrokeColor(f);a.ellipse(0,0,b,c);a.fillAndStroke()};mxShapeMockupiDeleteIcon.prototype.foreground=function(a,d,e,b,c,f){a.setStrokeWidth(2.5);a.begin();a.moveTo(.25*b,.5*c);a.lineTo(.75*b,.5*c);a.stroke()};
779mxCellRenderer.registerShape(mxMockupC.SHAPE_IDELETE_ICON,mxShapeMockupiDeleteIcon);function mxShapeMockupiAddIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiAddIcon,mxShape);
780mxShapeMockupiAddIcon.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"").toString(),g=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString(),h=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(g,h,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.setStrokeColor(f);a.translate(d,e);this.background(a,d,e,b,c,f);a.setShadow(!1);this.foreground(a,d,e,b,c,f)};
781mxShapeMockupiAddIcon.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(1.5);a.ellipse(0,0,b,c);a.fillAndStroke()};mxShapeMockupiAddIcon.prototype.foreground=function(a,d,e,b,c,f){a.setStrokeWidth(2.5);a.begin();a.moveTo(.25*b,.5*c);a.lineTo(.75*b,.5*c);a.moveTo(.5*b,.25*c);a.lineTo(.5*b,.75*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IADD_ICON,mxShapeMockupiAddIcon);
782function mxShapeMockupiInfoIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiInfoIcon,mxShape);mxShapeMockupiInfoIcon.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"").toString();a.translate(d,e);this.background(a,d,e,b,c,f);a.setShadow(!1);this.foreground(a,d,e,b,c,f)};
783mxShapeMockupiInfoIcon.prototype.background=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.setStrokeWidth(1.5);a.setStrokeColor(f);a.ellipse(0,0,b,c);a.fillAndStroke()};
784mxShapeMockupiInfoIcon.prototype.foreground=function(a,d,e,b,c,f){a.setStrokeWidth(2.5);a.begin();a.setFillColor("#ffffff");a.moveTo(.47*b,.334*c);a.arcTo(.1*b,.15*c,60,0,1,.61*b,.42*c);a.lineTo(.51*b,.7*c);a.arcTo(.026*b,.03*c,30,0,0,.54*b,.74*c);a.lineTo(.608*b,.684*c);a.arcTo(.02*b,.015*c,0,0,1,.638*b,.706*c);a.arcTo(.45*b,.45*c,0,0,1,.42*b,.865*c);a.arcTo(.1*b,.08*c,-15,0,1,.325*b,.77*c);a.lineTo(.358*b,.66*c);a.lineTo(.435*b,.46*c);a.arcTo(.023*b,.03*c,0,0,0,.4*b,.43*c);a.lineTo(.338*b,.484*
785c);a.arcTo(.01*b,.015*c,45,0,1,.31*b,.47*c);a.arcTo(.3*b,.3*c,0,0,1,.47*b,.334*c);a.fill();a.begin();a.moveTo(.5438*b,.141*c);a.arcTo(.0776*b,.0898*c,40,0,1,.6671*b,.2308*c);a.arcTo(.0776*b,.0898*c,40,0,1,.5438*b,.141*c);a.close();a.fill()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IINFO_ICON,mxShapeMockupiInfoIcon);function mxShapeMockupiSortFindIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiSortFindIcon,mxShape);
786mxShapeMockupiSortFindIcon.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"").toString();a.translate(d,e);this.background(a,d,e,b,c,f);a.setShadow(!1);this.foreground(a,d,e,b,c,f)};
787mxShapeMockupiSortFindIcon.prototype.background=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.setStrokeWidth(1.5);a.setStrokeColor(f);a.roundrect(0,0,b,c,.1*b,.1*c);a.fillAndStroke()};
788mxShapeMockupiSortFindIcon.prototype.foreground=function(a,d,e,b,c,f){a.setStrokeWidth(Math.min(c,b)/20);a.begin();a.setFillColor("#ffffff");a.moveTo(.1*b,.25*c);a.lineTo(.9*b,.25*c);a.moveTo(.1*b,.4*c);a.lineTo(.9*b,.4*c);a.moveTo(.1*b,.55*c);a.lineTo(.6*b,.55*c);a.moveTo(.1*b,.7*c);a.lineTo(.5*b,.7*c);a.stroke();a.begin();a.ellipse(.6*b,.6*c,.2*b,.2*c);a.stroke();a.begin();a.moveTo(.77*b,.77*c);a.lineTo(.85*b,.85*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_ISORT_FIND_ICON,mxShapeMockupiSortFindIcon);
789function mxShapeMockupiCheckIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiCheckIcon,mxShape);mxShapeMockupiCheckIcon.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"").toString();a.translate(d,e);this.background(a,d,e,b,c,f);a.setShadow(!1);this.foreground(a,d,e,b,c,f)};
790mxShapeMockupiCheckIcon.prototype.background=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.setStrokeWidth(1.5);a.setStrokeColor(f);a.ellipse(0,0,b,c);a.fillAndStroke()};
791mxShapeMockupiCheckIcon.prototype.foreground=function(a,d,e,b,c,f){a.setStrokeWidth(2.5);a.begin();a.moveTo(.25*b,.5*c);a.lineTo(.5*b,.65*c);a.lineTo(.75*b,.25*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_ICHECK_ICON,mxShapeMockupiCheckIcon);function mxShapeMockupiKeybLetters(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiKeybLetters,mxShape);
792mxShapeMockupiKeybLetters.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0);this.foreground(a,d,e,b,c)};mxShapeMockupiKeybLetters.prototype.background=function(a,d,e,b,c){a.setGradient("#8A97A7","#425163",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.rect(0,0,b,c);a.fill()};
793mxShapeMockupiKeybLetters.prototype.foreground=function(a,d,e,b,c,f){a.setGradient("#EEF3F9","#DBE2E9",.0086*b,.03*c,.0776*b,.19*c,mxConstants.DIRECTION_SOUTH,1,1);rSizeX=.0144*b;rSizeY=.025*c;a.setFontSize(10.5);a.setFontColor("#000000");a.roundrect(.0086*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.0474*b,.125*c,0,0,"Q",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.1092*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.148*b,.125*c,0,0,"W",mxConstants.ALIGN_CENTER,
794mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.2098*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.2486*b,.125*c,0,0,"E",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.3103*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.3491*b,.125*c,0,0,"R",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.4109*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.4497*b,.125*c,0,0,"T",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,
795null,0,0,0);a.roundrect(.5115*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.5503*b,.125*c,0,0,"Y",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.6121*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.6509*b,.125*c,0,0,"U",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.7126*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.7514*b,.125*c,0,0,"I",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.8132*
796b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.852*b,.125*c,0,0,"O",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.9138*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.9526*b,.125*c,0,0,"P",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.0632*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.102*b,.375*c,0,0,"A",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.1638*b,.28*c,.0776*b,.19*c,rSizeX,
797rSizeY);a.fill();a.text(.2026*b,.375*c,0,0,"S",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.2644*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.3032*b,.375*c,0,0,"D",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.3649*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.4037*b,.375*c,0,0,"F",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.4655*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.5043*
798b,.375*c,0,0,"G",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.5661*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.6049*b,.375*c,0,0,"H",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.6667*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.7055*b,.375*c,0,0,"J",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.7672*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.806*b,.375*c,0,0,"K",mxConstants.ALIGN_CENTER,
799mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.8678*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.9066*b,.375*c,0,0,"L",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.1638*b,.53*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.2026*b,.625*c,0,0,"Z",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.2644*b,.53*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.3032*b,.625*c,0,0,"X",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,
800null,0,0,0);a.roundrect(.3649*b,.53*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.4037*b,.625*c,0,0,"C",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.4655*b,.53*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.5043*b,.625*c,0,0,"V",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.5661*b,.53*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.6049*b,.625*c,0,0,"B",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.6667*
801b,.53*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.7055*b,.625*c,0,0,"N",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.7672*b,.53*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.806*b,.625*c,0,0,"M",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.2644*b,.78*c,.4799*b,.19*c,rSizeX,rSizeY);a.fill();a.setFontColor("#666666");a.text(.5043*b,.875*c,0,0,"space",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontColor("#ffffff");
802a.setGradient("#8B98A8","#677488",.0115*b,.53*c,.1207*b,.19*c,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(.0115*b,.53*c,.1207*b,.19*c,rSizeX,rSizeY);a.fill();a.setGradient("#8B98A8","#677488",.8736*b,.53*c,.115*b,.19*c,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(.8736*b,.53*c,.115*b,.19*c,rSizeX,rSizeY);a.fill();a.setGradient("#8B98A8","#677488",.0115*b,.78*c,.2299*b,.19*c,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(.0115*b,.78*c,.2299*b,.19*c,rSizeX,rSizeY);a.fill();a.setGradient("#8B98A8","#677488",
803.7672*b,.78*c,.2213*b,.19*c,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(.7672*b,.78*c,.2213*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.1264*b,.875*c,0,0,".?123",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8779*b,.875*c,0,0,"return",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setShadow(!1);a.setLineJoin("round");a.setStrokeColor("#ffffff");a.setFillColor("#ffffff");a.setStrokeWidth(1.5);a.begin();a.moveTo(.0402*b,.635*c);a.lineTo(.0718*b,.58*c);a.lineTo(.1034*
804b,.635*c);a.lineTo(.0862*b,.635*c);a.lineTo(.0862*b,.67*c);a.lineTo(.0575*b,.67*c);a.lineTo(.0575*b,.635*c);a.close();a.stroke();a.begin();a.moveTo(.9109*b,.585*c);a.lineTo(.9655*b,.585*c);a.lineTo(.9655*b,.665*c);a.lineTo(.9109*b,.665*c);a.lineTo(.8879*b,.625*c);a.close();a.fillAndStroke();a.setStrokeColor("#677488");a.begin();a.moveTo(.9224*b,.605*c);a.lineTo(.9454*b,.645*c);a.moveTo(.9224*b,.645*c);a.lineTo(.9454*b,.605*c);a.stroke()};
805mxCellRenderer.registerShape(mxMockupC.SHAPE_IKEYB_LETTERS,mxShapeMockupiKeybLetters);function mxShapeMockupiKeybNumbers(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiKeybNumbers,mxShape);mxShapeMockupiKeybNumbers.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0);this.foreground(a,d,e,b,c)};
806mxShapeMockupiKeybNumbers.prototype.background=function(a,d,e,b,c){a.setGradient("#8A97A7","#425163",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.rect(0,0,b,c);a.fill()};
807mxShapeMockupiKeybNumbers.prototype.foreground=function(a,d,e,b,c,f){a.setGradient("#EEF3F9","#DBE2E9",.0086*b,.03*c,.0776*b,.19*c,mxConstants.DIRECTION_SOUTH,1,1);rSizeX=.0144*b;rSizeY=.025*c;a.setFontSize(10.5);a.setFontColor("#000000");a.roundrect(.0086*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.0474*b,.125*c,0,0,"1",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.1092*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.148*b,.125*c,0,0,"2",mxConstants.ALIGN_CENTER,
808mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.2098*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.2486*b,.125*c,0,0,"3",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.3103*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.3491*b,.125*c,0,0,"4",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.4109*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.4497*b,.125*c,0,0,"5",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,
809null,0,0,0);a.roundrect(.5115*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.5503*b,.125*c,0,0,"6",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.6121*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.6509*b,.125*c,0,0,"7",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.7126*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.7514*b,.125*c,0,0,"8",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.8132*
810b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.852*b,.125*c,0,0,"9",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.9138*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.9526*b,.125*c,0,0,"0",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.0086*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.0474*b,.375*c,0,0,"-",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.1092*b,.28*c,.0776*b,.19*c,rSizeX,
811rSizeY);a.fill();a.text(.148*b,.375*c,0,0,"/",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.2098*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.2486*b,.375*c,0,0,":",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.3103*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.3491*b,.375*c,0,0,";",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.4109*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.4497*
812b,.375*c,0,0,"(",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.5115*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.5503*b,.375*c,0,0,")",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.6121*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.6509*b,.375*c,0,0,"$",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.7126*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.7514*b,.375*c,0,0,"&",mxConstants.ALIGN_CENTER,
813mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.8132*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.852*b,.375*c,0,0,"@",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.9138*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.9526*b,.375*c,0,0,'"',mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.1638*b,.53*c,.1178*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.2227*b,.625*c,0,0,".",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,
8140,0,0);a.roundrect(.3046*b,.53*c,.1178*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.3635*b,.625*c,0,0,",",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.4454*b,.53*c,.1178*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.5043*b,.625*c,0,0,"?",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.5862*b,.53*c,.1178*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.6451*b,.625*c,0,0,"!",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.727*b,.53*
815c,.1178*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.7859*b,.625*c,0,0,"'",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.2644*b,.78*c,.4799*b,.19*c,rSizeX,rSizeY);a.fill();a.setFontColor("#666666");a.text(.5043*b,.875*c,0,0,"space",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setGradient("#8B98A8","#677488",.0115*b,.53*c,.1207*b,.19*c,mxConstants.DIRECTION_SOUTH,1,1);a.setFontColor("#ffffff");a.roundrect(.0115*b,.53*c,.1207*b,.19*c,rSizeX,rSizeY);a.fill();
816a.roundrect(.8736*b,.53*c,.115*b,.19*c,rSizeX,rSizeY);a.fill();a.roundrect(.0115*b,.78*c,.2299*b,.19*c,rSizeX,rSizeY);a.fill();a.roundrect(.7672*b,.78*c,.2213*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.0718*b,.625*c,0,0,"#+=",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.1264*b,.875*c,0,0,"ABC",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8779*b,.875*c,0,0,"return",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setShadow(!1);a.setLineJoin("round");
817a.setStrokeColor("#ffffff");a.setFillColor("#ffffff");a.setStrokeWidth(1.5);a.begin();a.moveTo(.9109*b,.585*c);a.lineTo(.9655*b,.585*c);a.lineTo(.9655*b,.665*c);a.lineTo(.9109*b,.665*c);a.lineTo(.8879*b,.625*c);a.close();a.fillAndStroke();a.setStrokeColor("#677488");a.begin();a.moveTo(.9224*b,.605*c);a.lineTo(.9454*b,.645*c);a.moveTo(.9224*b,.645*c);a.lineTo(.9454*b,.605*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IKEYB_NUMBERS,mxShapeMockupiKeybNumbers);
818function mxShapeMockupiKeybSymbols(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiKeybSymbols,mxShape);mxShapeMockupiKeybSymbols.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0);this.foreground(a,d,e,b,c)};
819mxShapeMockupiKeybSymbols.prototype.background=function(a,d,e,b,c){a.setGradient("#8A97A7","#425163",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.rect(0,0,b,c);a.fill()};
820mxShapeMockupiKeybSymbols.prototype.foreground=function(a,d,e,b,c,f){a.setGradient("#EEF3F9","#DBE2E9",.0086*b,.03*c,.0776*b,.19*c,mxConstants.DIRECTION_SOUTH,1,1);rSizeX=.0144*b;rSizeY=.025*c;a.setFontSize(10.5);a.setFontColor("#000000");a.roundrect(.0086*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.0474*b,.125*c,0,0,"[",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.1092*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.148*b,.125*c,0,0,"]",mxConstants.ALIGN_CENTER,
821mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.2098*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.2486*b,.125*c,0,0,"{",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.3103*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.3491*b,.125*c,0,0,"}",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.4109*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.4497*b,.125*c,0,0,"#",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,
822null,0,0,0);a.roundrect(.5115*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.5503*b,.125*c,0,0,"%",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.6121*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.6509*b,.125*c,0,0,"^",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.7126*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.7514*b,.125*c,0,0,"*",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.8132*
823b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.852*b,.125*c,0,0,"+",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.9138*b,.03*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.9526*b,.125*c,0,0,"=",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.0086*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.0474*b,.375*c,0,0,"_",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.1092*b,.28*c,.0776*b,.19*c,rSizeX,
824rSizeY);a.fill();a.text(.148*b,.375*c,0,0,"\\",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.2098*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.2486*b,.375*c,0,0,"|",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.3103*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.3491*b,.375*c,0,0,"~",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.4109*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.4497*
825b,.375*c,0,0,"<",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.5115*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.5503*b,.375*c,0,0,">",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.6121*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.6509*b,.375*c,0,0,String.fromCharCode(128),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.7126*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.7514*b,.375*
826c,0,0,String.fromCharCode(163),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.8132*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.852*b,.375*c,0,0,String.fromCharCode(165),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.9138*b,.28*c,.0776*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.9526*b,.375*c,0,0,String.fromCharCode(149),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.1638*b,.53*c,.1178*b,.19*c,rSizeX,rSizeY);
827a.fill();a.text(.2227*b,.625*c,0,0,".",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.3046*b,.53*c,.1178*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.3635*b,.625*c,0,0,",",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.4454*b,.53*c,.1178*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.5043*b,.625*c,0,0,"?",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.5862*b,.53*c,.1178*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.6451*b,.625*
828c,0,0,"!",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.727*b,.53*c,.1178*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.7859*b,.625*c,0,0,"'",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.roundrect(.2644*b,.78*c,.4799*b,.19*c,rSizeX,rSizeY);a.fill();a.setFontColor("#666666");a.text(.5043*b,.875*c,0,0,"space",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setGradient("#8B98A8","#677488",.0115*b,.53*c,.1207*b,.19*c,mxConstants.DIRECTION_SOUTH,
8291,1);a.setFontColor("#ffffff");a.roundrect(.0115*b,.53*c,.1207*b,.19*c,rSizeX,rSizeY);a.fill();a.roundrect(.8736*b,.53*c,.115*b,.19*c,rSizeX,rSizeY);a.fill();a.roundrect(.0115*b,.78*c,.2299*b,.19*c,rSizeX,rSizeY);a.fill();a.roundrect(.7672*b,.78*c,.2213*b,.19*c,rSizeX,rSizeY);a.fill();a.text(.0718*b,.625*c,0,0,"123",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.1264*b,.875*c,0,0,"ABC",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8779*b,.875*c,0,
8300,"return",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setShadow(!1);a.setLineJoin("round");a.setStrokeColor("#ffffff");a.setFillColor("#ffffff");a.setStrokeWidth(1.5);a.begin();a.moveTo(.9109*b,.585*c);a.lineTo(.9655*b,.585*c);a.lineTo(.9655*b,.665*c);a.lineTo(.9109*b,.665*c);a.lineTo(.8879*b,.625*c);a.close();a.fillAndStroke();a.setStrokeColor("#677488");a.begin();a.moveTo(.9224*b,.605*c);a.lineTo(.9454*b,.645*c);a.moveTo(.9224*b,.645*c);a.lineTo(.9454*b,.605*c);a.stroke()};
831mxCellRenderer.registerShape(mxMockupC.SHAPE_IKEYB_SYMBOLS,mxShapeMockupiKeybSymbols);function mxShapeMockupiDeleteApp(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiDeleteApp,mxShape);mxShapeMockupiDeleteApp.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"").toString();a.translate(d,e);this.background(a,d,e,b,c,f);a.setShadow(!1);this.foreground(a,d,e,b,c)};
832mxShapeMockupiDeleteApp.prototype.background=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"").toString();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"").toString();a.setGradient(d,e,0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.setStrokeWidth(1.5);a.setStrokeColor(f);a.ellipse(0,0,b,c);a.fillAndStroke()};
833mxShapeMockupiDeleteApp.prototype.foreground=function(a,d,e,b,c){a.setStrokeWidth(2.5);a.begin();a.moveTo(.3*b,.3*c);a.lineTo(.7*b,.7*c);a.moveTo(.3*b,.7*c);a.lineTo(.7*b,.3*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IDELETE_APP,mxShapeMockupiDeleteApp);function mxShapeMockupiDirection(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiDirection,mxShape);
834mxShapeMockupiDirection.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeMockupiDirection.prototype.background=function(a,d,e,b,c){a.setStrokeWidth(.5);a.setStrokeColor("#008cff");a.ellipse(0,0,b,c);a.stroke()};
835mxShapeMockupiDirection.prototype.foreground=function(a,d,e,b,c){a.setAlpha(1);a.setGradient("#ffffff","#ffffff",.29*b,.2*c,.42*b,.3*c,mxConstants.DIRECTION_NORTH,1,0);a.begin();a.moveTo(.29*b,.2*c);a.lineTo(.5*b,.5*c);a.lineTo(.71*b,.2*c);a.fillAndStroke();a.setStrokeColor("#006cdf");a.setGradient("#ffffff","#007cef",.47*b,.47*c,.06*b,.06*c,mxConstants.DIRECTION_SOUTH,1,1);a.setAlpha(1);a.ellipse(.47*b,.47*c,.06*b,.06*c);a.fillAndStroke();a.setFillColor("#ffffff");a.setAlpha(.8);a.ellipse(.4825*
836b,.4825*c,.015*b,.015*c);a.fill()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IDIRECTION,mxShapeMockupiDirection);function mxShapeMockupiLocationBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiLocationBar,mxShape);
837mxShapeMockupiLocationBar.prototype.customProperties=[{name:"buttonText",dispName:"Text",type:"string"},{name:"barPos",dispName:"Callout Position",type:"float",min:0,defVal:80},{name:"pointerPos",dispName:"Callout Orientation",type:"enum",enumList:[{val:"bottom",dispName:"Bottom"},{val:"top",dispName:"Top"}]}];mxShapeMockupiLocationBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
838mxShapeMockupiLocationBar.prototype.background=function(a,d,e,b,c){e=mxUtils.getValue(this.style,mxMockupC.BAR_POS,"80");e=Math.min(e,100);e=Math.max(e,0);d=mxUtils.getValue(this.style,mxMockupC.POINTER_POS,mxMockupC.POINTER_BOTTOM);e=10+(b-20)*e/100;a.setStrokeWidth(.5);a.setStrokeColor("#000000");a.setAlpha(.7);a.begin();d===mxMockupC.POINTER_BOTTOM?(a.setGradient("#000000","#888888",0,0,b,c,mxConstants.DIRECTION_NORTH,1,1),a.moveTo(0,2.5),a.arcTo(2.5,2.5,0,0,1,2.5,0),a.lineTo(b-2.5,0),a.arcTo(2.5,
8392.5,0,0,1,b,2.5),a.lineTo(b,c-2.5-7.5),a.arcTo(2.5,2.5,0,0,1,b-2.5,c-7.5),a.lineTo(e+7.5,c-7.5),a.lineTo(e,c),a.lineTo(e-7.5,c-7.5),a.lineTo(2.5,c-7.5),a.arcTo(2.5,2.5,0,0,1,0,c-2.5-7.5)):d===mxMockupC.POINTER_TOP&&(a.setGradient("#000000","#888888",0,0,b,c,mxConstants.DIRECTION_NORTH,1,1),a.moveTo(0,10),a.arcTo(2.5,2.5,0,0,1,2.5,7.5),a.lineTo(e-7.5,7.5),a.lineTo(e,0),a.lineTo(e+7.5,7.5),a.lineTo(b-2.5,7.5),a.arcTo(2.5,2.5,0,0,1,b,10),a.lineTo(b,c-2.5),a.arcTo(2.5,2.5,0,0,1,b-2.5,c),a.lineTo(2.5,
840c),a.arcTo(2.5,2.5,0,0,1,0,c-2.5));a.close();a.fillAndStroke()};
841mxShapeMockupiLocationBar.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxMockupC.POINTER_POS,mxMockupC.POINTER_BOTTOM);e=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Some Location");a.setAlpha(1);a.setFontColor("#ffffff");a.setFontSize(9.5);d===mxMockupC.POINTER_BOTTOM?(a.text(5,.5*(c-7.5),0,0,e,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),a.translate(b-20,.5*(c-7.5)-7.5)):(a.text(5,.5*(c+7.5),0,0,e,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,
842null,0,0,0),a.translate(b-20,.5*(c+7.5)-7.5));c=b=15;a.setGradient("#8BbEff","#135Ec8",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.setStrokeWidth(1.5);a.setStrokeColor("#ffffff");a.ellipse(0,0,b,c);a.fillAndStroke();a.setStrokeWidth(2.5);a.begin();a.moveTo(.4*b,.22*c);a.lineTo(.65*b,.5*c);a.lineTo(.4*b,.78*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_ILOCATION_BAR,mxShapeMockupiLocationBar);
843function mxShapeMockupiCallDialog(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiCallDialog,mxShape);mxShapeMockupiCallDialog.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c,5);a.setShadow(!1);this.foreground(a,d,e,b,c,5)};
844mxShapeMockupiCallDialog.prototype.background=function(a,d,e,b,c,f){a.setAlpha(.8);a.setStrokeColor("#888888");a.setStrokeWidth(1.5);a.setFillColor("#000000");a.roundrect(0,0,b,c,f,f);a.fillAndStroke()};
845mxShapeMockupiCallDialog.prototype.foreground=function(a,d,e,b,c,f){a.begin();a.moveTo(.33*b,0);a.lineTo(.33*b,c);a.moveTo(.67*b,0);a.lineTo(.67*b,c);a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke();a.setStrokeColor("#000000");a.setFillColor("#ffffff");a.setStrokeWidth(.5);a.roundrect(.1433*b,.104*c,.0417*b,.148*c,.02*b,.024*c);a.fill();a.begin();a.moveTo(.14*b,.188*c);a.lineTo(.14*b,.228*c);a.arcTo(.025*b,.03*c,0,0,0,.19*b,.228*c);a.lineTo(.19*b,.188*c);a.lineTo(.2*b,.188*c);a.lineTo(.2*b,.228*c);a.arcTo(.0367*
846b,.044*c,0,0,1,.17*b,.27*c);a.lineTo(.17*b,.296*c);a.lineTo(.195*b,.296*c);a.lineTo(.195*b,.308*c);a.lineTo(.1367*b,.308*c);a.lineTo(.1367*b,.296*c);a.lineTo(.16*b,.296*c);a.lineTo(.16*b,.27*c);a.arcTo(.0367*b,.044*c,0,0,1,.13*b,.228*c);a.lineTo(.13*b,.188*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.1033*b,.108*c);a.lineTo(.24*b,.286*c);a.lineTo(.2317*b,.298*c);a.lineTo(.095*b,.12*c);a.close();a.fillAndStroke();a.rect(.44*b,.128*c,.033*b,.04*c);a.fill();a.rect(.485*b,.128*c,.033*b,.04*c);a.fill();
847a.rect(.53*b,.128*c,.033*b,.04*c);a.fill();a.rect(.44*b,.186*c,.033*b,.04*c);a.fill();a.rect(.485*b,.186*c,.033*b,.04*c);a.fill();a.rect(.53*b,.186*c,.033*b,.04*c);a.fill();a.rect(.44*b,.244*c,.033*b,.04*c);a.fill();a.rect(.485*b,.244*c,.033*b,.04*c);a.fill();a.rect(.53*b,.244*c,.033*b,.04*c);a.fill();a.begin();a.moveTo(.7567*b,.18*c);a.lineTo(.785*b,.18*c);a.lineTo(.825*b,.128*c);a.lineTo(.825*b,.28*c);a.lineTo(.79*b,.234*c);a.lineTo(.7567*b,.234*c);a.close();a.fill();a.setStrokeWidth(1.5);a.setStrokeColor("#ffffff");
848a.begin();a.moveTo(.8383*b,.16*c);a.arcTo(.0533*b,.064*c,0,0,1,.8383*b,.252*c);a.moveTo(.8583*b,.134*c);a.arcTo(.0817*b,.098*c,0,0,1,.8583*b,.276*c);a.moveTo(.8767*b,.11*c);a.arcTo(.1133*b,.136*c,0,0,1,.8767*b,.304*c);a.stroke();a.begin();a.moveTo(.1467*b,.62*c);a.lineTo(.1833*b,.62*c);a.lineTo(.1833*b,.676*c);a.lineTo(.2267*b,.676*c);a.lineTo(.2267*b,.724*c);a.lineTo(.1833*b,.724*c);a.lineTo(.1833*b,.78*c);a.lineTo(.1467*b,.78*c);a.lineTo(.1467*b,.724*c);a.lineTo(.105*b,.724*c);a.lineTo(.105*b,.676*
849c);a.lineTo(.1467*b,.676*c);a.close();a.fill();a.rect(.4517*b,.624*c,.0333*b,.152*c);a.fill();a.rect(.5183*b,.624*c,.0333*b,.152*c);a.fill();a.begin();a.moveTo(.76*b,.752*c);a.arcTo(.1*b,.12*c,0,0,1,.8033*b,.728*c);a.arcTo(.0167*b,.02*c,0,0,0,.8167*b,.712*c);a.lineTo(.8175*b,.7*c);a.arcTo(.0267*b,.06*c,0,0,1,.8067*b,.644*c);a.arcTo(.0287*b,.0344*c,0,0,1,.8633*b,.644*c);a.arcTo(.0267*b,.06*c,0,0,1,.855*b,.7*c);a.arcTo(.05*b,.724*c,0,0,1,.8633*b,.724*c);a.arcTo(.1667*b,.75*c,0,0,1,.9083*b,.75*c);a.lineTo(.9083*
850b,.78*c);a.lineTo(.76*b,.78*c);a.close();a.fill();a.setFontColor("#ffffff");a.setFontSize(8.5);a.text(.1667*b,.35*c,0,0,"mute",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.35*c,0,0,"keypad",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8333*b,.35*c,0,0,"speaker",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.1667*b,.85*c,0,0,"add",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.85*c,0,0,
851"pause",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8333*b,.85*c,0,0,"contacts",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setGradient("#808080","#ffffff",0,0,b,.308*c,mxConstants.DIRECTION_NORTH,1,1);a.setAlpha(.4);a.begin();a.moveTo(0,.308*c);a.lineTo(0,f);a.arcTo(f,f,0,0,1,f,0);a.lineTo(b-f,0);a.arcTo(f,f,0,0,1,b,f);a.lineTo(b,.308*c);a.arcTo(1.5*b,1.8*c,0,0,1,0,.308*c);a.close();a.fill()};
852mxCellRenderer.registerShape(mxMockupC.SHAPE_ICALL_DIALOG,mxShapeMockupiCallDialog);function mxShapeMockupiCallButtons(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiCallButtons,mxShape);mxShapeMockupiCallButtons.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
853mxShapeMockupiCallButtons.prototype.background=function(a,d,e,b,c){a.setStrokeWidth(.5);a.setStrokeColor("#008cff");a.setGradient("#0F1B2B","#4F5B6B",0,0,b,c,mxConstants.DIRECTION_NORTH,1,1);a.rect(0,0,b,c);a.fillAndStroke()};
854mxShapeMockupiCallButtons.prototype.foreground=function(a,d,e,b,c){a.begin();a.moveTo(0,.1667*c);a.lineTo(b,.1667*c);a.moveTo(0,.3333*c);a.lineTo(b,.3333*c);a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.moveTo(0,.6667*c);a.lineTo(b,.6667*c);a.moveTo(0,.8333*c);a.lineTo(b,.8333*c);a.moveTo(.3333*b,.1667*c);a.lineTo(.3333*b,c);a.moveTo(.6667*b,.1667*c);a.lineTo(.6667*b,c);a.stroke();a.setFontSize(15.5);a.setFontColor("#ffffff");a.setFontStyle(mxConstants.FONT_BOLD);a.text(.5*b,.0834*c,0,0,"(123) 456-7890",mxConstants.ALIGN_CENTER,
855mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.1667*b,.22*c,0,0,"1",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.22*c,0,0,"2",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8333*b,.22*c,0,0,"3",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.1667*b,.3867*c,0,0,"3",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.3867*c,0,0,"4",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);
856a.text(.8333*b,.3867*c,0,0,"5",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.1667*b,.5534*c,0,0,"6",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.5534*c,0,0,"7",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8333*b,.5534*c,0,0,"8",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontSize(27.5);a.text(.1667*b,.76*c,0,0,"*",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontSize(15.5);
857a.text(.5*b,.72*c,0,0,"0",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8333*b,.75*c,0,0,"#",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setGradient("#E2FFEB","#008215",.3333*b,.8333*c,.3333*b,.1667*c,mxConstants.DIRECTION_SOUTH,1,1);a.rect(.3333*b,.8333*c,.3333*b,.1667*c);a.fillAndStroke();a.text(.5*b,.9168*c,0,0,"Call",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontStyle(0);a.setFontSize(8);a.setFontColor("#bbbbbb");a.text(.5*
858b,.28*c,0,0,"ABC",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8333*b,.28*c,0,0,"DEF",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.1667*b,.4467*c,0,0,"GHI",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.4467*c,0,0,"JKL",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8333*b,.4467*c,0,0,"MNO",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.1667*b,.6134*c,0,0,"PQRS",mxConstants.ALIGN_CENTER,
859mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.6134*c,0,0,"TUV",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.8333*b,.6134*c,0,0,"WXYZ",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.78*c,0,0,"+",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFillColor("#ffffff");a.begin();a.moveTo(.1028*b,.9464*c);a.arcTo(.0862*b,.0652*c,0,0,1,.1402*b,.9333*c);a.arcTo(.0144*b,.0109*c,0,0,0,.1517*b,.9246*c);a.lineTo(.1524*b,.9181*c);
860a.arcTo(.023*b,.0326*c,0,0,1,.143*b,.8877*c);a.arcTo(.0247*b,.0187*c,0,0,1,.1919*b,.8877*c);a.arcTo(.023*b,.0326*c,0,0,1,.1847*b,.9181*c);a.arcTo(.0431*b,.0174*c,0,0,0,.1919*b,.9311*c);a.arcTo(.1437*b,.1087*c,0,0,1,.2307*b,.9453*c);a.lineTo(.2307*b,.9616*c);a.lineTo(.1028*b,.9616*c);a.close();a.fill();a.setStrokeColor("#ffffff");a.setStrokeWidth(2.5);a.setLineJoin("round");a.begin();a.moveTo(.79*b,.89*c);a.lineTo(.9*b,.89*c);a.lineTo(.9*b,.95*c);a.lineTo(.79*b,.95*c);a.lineTo(.76*b,.92*c);a.close();
861a.fillAndStroke();a.setStrokeColor("#0F1B2B");a.begin();a.moveTo(.82*b,.907*c);a.lineTo(.85*b,.933*c);a.moveTo(.82*b,.933*c);a.lineTo(.85*b,.907*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_ICALL_BUTTONS,mxShapeMockupiCallButtons);function mxShapeMockupiOption(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiOption,mxShape);
862mxShapeMockupiOption.prototype.customProperties=[{name:"buttonText",dispName:"Text",type:"string"},{name:"barPos",dispName:"Callout Position",type:"float",min:0,defVal:80},{name:"pointerPos",dispName:"Callout Orientation",type:"enum",enumList:[{val:"bottom",dispName:"Bottom"},{val:"top",dispName:"Top"}]}];mxShapeMockupiOption.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
863mxShapeMockupiOption.prototype.background=function(a,d,e,b,c){e=mxUtils.getValue(this.style,mxMockupC.BAR_POS,"80");e=Math.min(e,100);e=Math.max(e,0);d=mxUtils.getValue(this.style,mxMockupC.POINTER_POS,mxMockupC.POINTER_BOTTOM);e=10+(b-20)*e/100;a.setStrokeWidth(.5);a.setStrokeColor("#000000");a.setAlpha(.9);a.begin();d===mxMockupC.POINTER_BOTTOM?(a.setGradient("#000000","#888888",0,0,b,c,mxConstants.DIRECTION_NORTH,1,1),a.moveTo(0,2.5),a.arcTo(2.5,2.5,0,0,1,2.5,0),a.lineTo(b-2.5,0),a.arcTo(2.5,2.5,
8640,0,1,b,2.5),a.lineTo(b,c-2.5-7.5),a.arcTo(2.5,2.5,0,0,1,b-2.5,c-7.5),a.lineTo(e+7.5,c-7.5),a.lineTo(e,c),a.lineTo(e-7.5,c-7.5),a.lineTo(2.5,c-7.5),a.arcTo(2.5,2.5,0,0,1,0,c-2.5-7.5)):d===mxMockupC.POINTER_TOP&&(a.setGradient("#000000","#888888",0,0,b,c,mxConstants.DIRECTION_NORTH,1,1),a.moveTo(0,10),a.arcTo(2.5,2.5,0,0,1,2.5,7.5),a.lineTo(e-7.5,7.5),a.lineTo(e,0),a.lineTo(e+7.5,7.5),a.lineTo(b-2.5,7.5),a.arcTo(2.5,2.5,0,0,1,b,10),a.lineTo(b,c-2.5),a.arcTo(2.5,2.5,0,0,1,b-2.5,c),a.lineTo(2.5,c),a.arcTo(2.5,
8652.5,0,0,1,0,c-2.5));a.close();a.fillAndStroke()};
866mxShapeMockupiOption.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"Some Location");e=mxUtils.getValue(this.style,mxMockupC.POINTER_POS,mxMockupC.POINTER_BOTTOM);a.setAlpha(1);a.setFontColor("#ffffff");a.setFontSize(9.5);e===mxMockupC.POINTER_BOTTOM?a.text(.5*b,.5*(c-7.5),0,0,d,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):a.text(.5*b,.5*(c+7.5),0,0,d,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
867mxCellRenderer.registerShape(mxMockupC.SHAPE_IOPTION,mxShapeMockupiOption);function mxShapeMockupiAlphaList(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiAlphaList,mxShape);
868mxShapeMockupiAlphaList.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setShadow(!1);d=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8");a.setFontColor("#999999");a.setFontSize(d);a.text(.5*b,.069*c,0,0,"A",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.1035*c,0,0,"B",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.138*c,0,0,"C",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.1725*
869c,0,0,"D",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.207*c,0,0,"E",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.2415*c,0,0,"F",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.276*c,0,0,"G",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.3105*c,0,0,"H",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.345*c,0,0,"I",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,
8700,null,0,0,0);a.text(.5*b,.3795*c,0,0,"J",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.414*c,0,0,"K",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.4485*c,0,0,"L",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.483*c,0,0,"M",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.5175*c,0,0,"N",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.552*c,0,0,"O",mxConstants.ALIGN_CENTER,
871mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.5865*c,0,0,"P",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.621*c,0,0,"Q",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.6555*c,0,0,"R",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.69*c,0,0,"S",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.7245*c,0,0,"T",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*
872b,.759*c,0,0,"U",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.7935*c,0,0,"V",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.828*c,0,0,"W",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.8625*c,0,0,"X",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.897*c,0,0,"Y",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.text(.5*b,.9315*c,0,0,"Z",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,
8730,null,0,0,0);a.text(.5*b,.966*c,0,0,"#",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setStrokeColor("#999999");a.ellipse(.5*b-2.25,.0345*c-3.5,4.5,4.5);a.stroke();a.begin();a.moveTo(.5*b-4.25,.0345*c+3);a.lineTo(.5*b-1.75,.0345*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IALPHA_LIST,mxShapeMockupiAlphaList);function mxShapeMockupiHorButtonBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
874mxUtils.extend(mxShapeMockupiHorButtonBar,mxShape);mxShapeMockupiHorButtonBar.prototype.customProperties=[{name:"buttonText",dispName:"Labels",type:"string"},{name:"textColor",dispName:"Text Color",type:"color"},{name:"textColor2",dispName:"Text2 Color",type:"color"},{name:"strokeColor2",dispName:"Stroke2 Color",type:"color"}];
875mxShapeMockupiHorButtonBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"+Button 1, Button 2, Button 3").toString().split(","),g=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR,"#666666"),h=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR2,"#ffffff"),k=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8.5").toString(),l=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#666666"),m=mxUtils.getValue(this.style,mxMockupC.STYLE_STROKECOLOR2,
876"#c4c4c4"),n=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),p=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"#008cff"),q=f.length,t=Array(q),u=0,v=-1,r=0;r<q;r++){var w=f[r];w.charAt(0)===mxMockupC.SELECTED&&(w=f[r].substring(1),v=r);t[r]=mxUtils.getSizeForString(w,k,mxConstants.DEFAULT_FONTFAMILY).width;u+=t[r]}c=Math.max(c,1.5*k,10);u=5*q+u;b=Math.max(b,u);a.translate(d,e);this.background(a,b,c,2.5,q,t,2.5,u,l,m,n,p,v);a.setShadow(!1);for(r=d=0;r<q;r++)r===v?a.setFontColor(h):
877a.setFontColor(g),d+=2.5,this.buttonText(a,d,c,f[r],t[r],k,u,b),d=d+t[r]+2.5};
878mxShapeMockupiHorButtonBar.prototype.background=function(a,d,e,b,c,f,g,h,k,l,m,n,p){a.begin();a.setStrokeColor(k);a.setFillColor(m);a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,e-b);a.arcTo(b,b,0,0,1,d-b,e);a.lineTo(b,e);a.arcTo(b,b,0,0,1,0,e-b);a.close();a.fillAndStroke();a.setStrokeColor(l);a.begin();for(l=1;l<c;l++)if(l!==p&&l!==p+1){for(var q=n=0;q<l;q++)n+=f[q]+2*g;n=n*d/h;a.moveTo(n,0);a.lineTo(n,e)}a.stroke();n=0;a.setStrokeColor(mxConstants.NONE);
879for(l=0;l<p;l++)n+=f[l]+2*g;n=n*d/h;f=(f[p]+2*g)*d/h;f+=n;0===p?(a.setGradient("#5D7585","#008cff",0,0,f,e,mxConstants.DIRECTION_SOUTH,1,1),a.begin(),a.moveTo(0,b),a.arcTo(b,b,0,0,1,b,0),a.lineTo(f,0),a.lineTo(f,e),a.lineTo(b,e),a.arcTo(b,b,0,0,1,0,e-b),a.close(),a.fill()):p===c-1?(a.setGradient("#5D7585","#008cff",n,0,f-n,e,mxConstants.DIRECTION_SOUTH,1,1),a.begin(),a.moveTo(n,0),a.lineTo(f-b,0),a.arcTo(b,b,0,0,1,f,b),a.lineTo(f,e-b),a.arcTo(b,b,0,0,1,f-b,e),a.lineTo(n,e),a.close(),a.fill()):-1!==
880p&&(a.setGradient("#5D7585","#008cff",n,0,f-n,e,mxConstants.DIRECTION_SOUTH,1,1),a.begin(),a.moveTo(n,0),a.lineTo(f,0),a.lineTo(f,e),a.lineTo(n,e),a.close(),a.fill());a.setStrokeColor(k);a.setFillColor(m);a.begin();a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,e-b);a.arcTo(b,b,0,0,1,d-b,e);a.lineTo(b,e);a.arcTo(b,b,0,0,1,0,e-b);a.close();a.stroke()};
881mxShapeMockupiHorButtonBar.prototype.buttonText=function(a,d,e,b,c,f,g,h){b.charAt(0)===mxMockupC.SELECTED&&(b=b.substring(1));a.begin();a.setFontSize(f);a.text((d+.5*c)*h/g,.5*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxMockupC.SHAPE_IHOR_BUTTON_BAR,mxShapeMockupiHorButtonBar);function mxShapeMockupiPin(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiPin,mxShape);
882mxShapeMockupiPin.prototype.customProperties=[{name:"fillColor2",dispName:"Fill2 Color",type:"color"},{name:"fillColor3",dispName:"Fill3 Color",type:"color"}];
883mxShapeMockupiPin.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"#000000"),g=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR3,"#000000"),h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setShadow(!1);a.translate(d,e);a.setStrokeWidth(1.5);a.setStrokeColor("#666666");a.begin();a.moveTo(.5*b,.4*c);a.lineTo(.5*b,c);a.stroke();a.setStrokeWidth(1);a.setStrokeColor(h);a.setGradient(f,g,0,0,b,.4*c,mxConstants.DIRECTION_SOUTH,
8841,1);a.setAlpha(.9);a.ellipse(0,0,b,.4*c);a.fillAndStroke();a.setFillColor("#ffffff");a.setAlpha(.5);a.ellipse(.2*b,.08*c,.3*b,.12*c);a.fill()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IPIN,mxShapeMockupiPin);function mxShapeMockupiVideoControls(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiVideoControls,mxShape);
885mxShapeMockupiVideoControls.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"float",min:0,defVal:20}];mxShapeMockupiVideoControls.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setStrokeWidth(1);a.setFillColor("#000000");a.setStrokeColor("#bbbbbb");a.setAlpha(.7);a.roundrect(0,0,b,c,5,5);a.fillAndStroke();a.setShadow(!1);this.foreground(a,b,c,5)};
886mxShapeMockupiVideoControls.prototype.foreground=function(a,d,e,b){a.setGradient("#ffffff","#ffffff",0,0,d,.5*e,mxConstants.DIRECTION_SOUTH,.8,.1);a.begin();a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,.5*e);a.lineTo(0,.5*e);a.close();a.fill();a.setAlpha(1);a.setFillColor("#ffffff");a.setStrokeColor("#ffffff");var c=.1*d,f=.35*e;a.begin();a.moveTo(c-7.5,f-2.5);a.arcTo(6,6,0,0,1,c,f-2.5);a.arcTo(6,6,0,0,1,c+7.5,f-2.5);a.lineTo(c+7.5,f+4);a.arcTo(6,6,0,0,0,
887c,f+4);a.arcTo(6,6,0,0,0,c-7.5,f+4);a.close();a.stroke();a.begin();a.moveTo(c,f-2.5);a.lineTo(c,f+4);a.stroke();c=.3*d;a.rect(c-7.5,f-5,1,10);a.fill();a.begin();a.moveTo(c-6.5,f);a.lineTo(c+.5,f-5);a.lineTo(c+.5,f+5);a.close();a.fill();a.begin();a.moveTo(c+.5,f);a.lineTo(c+7.5,f-5);a.lineTo(c+7.5,f+5);a.close();a.fill();c=.5*d;a.begin();a.moveTo(c-6,f-5);a.lineTo(c+6,f);a.lineTo(c-6,f+5);a.close();a.fill();c=.7*d;a.begin();a.moveTo(c-7.5,f-5);a.lineTo(c-.5,f);a.lineTo(c-7.5,f+5);a.close();a.fill();
888a.begin();a.moveTo(c-.5,f-5);a.lineTo(c+6.5,f);a.lineTo(c-.5,f+5);a.close();a.fill();a.rect(c+6.5,f-5,1,10);a.fill();c=.9*d;a.rect(c-7.5,f-4,15,8);a.stroke();a.setStrokeWidth(.5);a.begin();a.moveTo(c-7.5,f-4);a.lineTo(c,f+1.5);a.lineTo(c+7.5,f-4);a.stroke();a.begin();a.moveTo(c-7.5,f+4);a.lineTo(c-2,f);a.stroke();a.begin();a.moveTo(c+7.5,f+4);a.lineTo(c+2,f);a.stroke();a.setGradient("#444444","#ffffff",.1*d,.75*e-2.5,.8*d,5,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(.1*d,.75*e-2.5,.8*d,5,2.5,2.5);
889a.fill();c=mxUtils.getValue(this.style,mxMockupC.BAR_POS,"80");c=Math.min(c,100);c=Math.max(c,0);f=.1*d;c=f+(d-2*f)*c/100;a.setGradient("#96D1FF","#003377",.1*d,.75*e-5,c-.1*d,10,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(c,.75*e-2.5);a.lineTo(c,.75*e+2.5);a.lineTo(.1*d+2.5,.75*e+2.5);a.arcTo(2.5,2.5,0,0,1,.1*d+2.5,.75*e-2.5);a.close();a.fill();a.setStrokeColor("#999999");a.setGradient("#444444","#ffffff",c-5,.75*e-5,10,10,mxConstants.DIRECTION_NORTH,1,1);a.ellipse(c-5,.75*e-5,10,10);a.fillAndStroke();
890a.setStrokeColor("#dddddd");a.roundrect(0,0,d,e,b,b);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IVIDEO_CONTROLS,mxShapeMockupiVideoControls);
891Graph.handleFactory[mxMockupC.SHAPE_IVIDEO_CONTROLS]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"barPos",40))));return new mxPoint(a.x+.1*a.width+d*a.width*.8/100,a.y+.75*a.height)},function(a,e){this.state.style.barPos=Math.round(100*Math.max(0,Math.min(100,100*(e.x-.1*a.width-a.x)/(.8*a.width))))/100})]};
892function mxShapeMockupiURLBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiURLBar,mxShape);mxShapeMockupiURLBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setGradient("#cccccc","#003377",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.rect(0,0,b,c);a.fill();a.setShadow(!1);this.foreground(a,b,c)};
893mxShapeMockupiURLBar.prototype.foreground=function(a,d,e){a.setStrokeWidth(.5);a.setFillColor("#ffffff");a.setStrokeColor("#008cff");a.roundrect(.0287*d,.625*e-6.25,.7184*d,12.5,6.25,6.25);a.fillAndStroke();a.setGradient("#cccccc","#001144",.7816*d,.625*e-6.25,.1868*d,12.5,mxConstants.DIRECTION_SOUTH,1,1);a.setStrokeColor("#000000");a.roundrect(.7816*d,.625*e-6.25,.1868*d,12.5,2.5,2.5);a.fillAndStroke();a.setFillColor("#bbbbbb");a.ellipse(.7471*d-11.5,.625*e-5,10,10);a.fill();a.setStrokeColor("#ffffff");
894a.setStrokeWidth(1.5);a.begin();a.moveTo(.7471*d-8.5,.625*e-2.5);a.lineTo(.7471*d-3.5,.625*e+2.5);a.moveTo(.7471*d-8.5,.625*e+2.5);a.lineTo(.7471*d-3.5,.625*e-2.5);a.stroke();var b=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"").toString().split(",");a.setFontColor("#425664");a.setFontStyle(mxConstants.FONT_BOLD);a.setFontSize(8);a.text(.5*d,.2*e,0,0,b[0],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontColor("#000000");a.text(.06*d,.625*e,0,0,b[1],mxConstants.ALIGN_LEFT,
895mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFontColor("#ffffff");a.text(.875*d,.625*e,0,0,b[2],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxMockupC.SHAPE_IURL_BAR,mxShapeMockupiURLBar);function mxShapeMockupiSlider(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiSlider,mxShape);
896mxShapeMockupiSlider.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"float",min:0,defVal:20}];mxShapeMockupiSlider.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setShadow(!1);this.foreground(a,b,c)};
897mxShapeMockupiSlider.prototype.foreground=function(a,d,e){a.setStrokeWidth(.5);a.setGradient("#444444","#ffffff",0,.5*e-2.5,d,5,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(0,.5*e-2.5,d,5,2.5,2.5);a.fill();var b=mxUtils.getValue(this.style,mxMockupC.BAR_POS,"80"),b=Math.min(b,100),b=Math.max(b,0);d=0+(d-0)*b/100;a.setGradient("#96D1FF","#003377",2.5,.5*e-2.5,d-2.5,5,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(d,.5*e-2.5);a.lineTo(d,.5*e+2.5);a.lineTo(2.5,.5*e+2.5);a.arcTo(2.5,2.5,0,0,1,2.5,
898.5*e-2.5);a.close();a.fill();a.setStrokeColor("#999999");a.setGradient("#444444","#ffffff",d-5,.5*e-5,10,10,mxConstants.DIRECTION_NORTH,1,1);a.ellipse(d-5,.5*e-5,10,10);a.fillAndStroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_ISLIDER,mxShapeMockupiSlider);
899Graph.handleFactory[mxMockupC.SHAPE_ISLIDER]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"barPos",.4))));return new mxPoint(a.x+d*a.width/100,a.y+a.height/2)},function(a,e){this.state.style.barPos=Math.round(100*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/100})]};function mxShapeMockupiProgressBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
900mxUtils.extend(mxShapeMockupiProgressBar,mxShape);mxShapeMockupiProgressBar.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"float",min:0,defVal:40}];mxShapeMockupiProgressBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setShadow(!1);this.foreground(a,b,c)};
901mxShapeMockupiProgressBar.prototype.foreground=function(a,d,e){a.setStrokeWidth(.5);a.setGradient("#444444","#ffffff",0,.5*e-2.5,d,5,mxConstants.DIRECTION_SOUTH,1,1);a.roundrect(0,.5*e-2.5,d,5,2.5,2.5);a.fill();var b=mxUtils.getValue(this.style,mxMockupC.BAR_POS,"80"),b=Math.min(b,100),b=Math.max(b,0);d=0+(d-0)*b/100;a.setGradient("#96D1FF","#003377",2.5,.5*e-2.5,d-2.5,5,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(d,.5*e-2.5);a.arcTo(2.5,2.5,0,0,1,d,.5*e+2.5);a.lineTo(2.5,.5*e+2.5);a.arcTo(2.5,
9022.5,0,0,1,2.5,.5*e-2.5);a.close();a.fill()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IPROGRESS_BAR,mxShapeMockupiProgressBar);Graph.handleFactory[mxMockupC.SHAPE_IPROGRESS_BAR]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"barPos",.4))));return new mxPoint(a.x+d*a.width/100,a.y+a.height/2)},function(a,e){this.state.style.barPos=Math.round(100*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/100})]};
903function mxShapeMockupiCloudProgressBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiCloudProgressBar,mxShape);mxShapeMockupiCloudProgressBar.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"float",min:0,defVal:20}];mxShapeMockupiCloudProgressBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setShadow(!1);this.foreground(a,b,c)};
904mxShapeMockupiCloudProgressBar.prototype.foreground=function(a,d,e){a.setStrokeWidth(.5);a.setFillColor("#5C6E86");a.rect(0,.5*e-2.5,d,5);a.fill();var b=mxUtils.getValue(this.style,mxMockupC.BAR_POS,"80"),b=Math.min(b,100),b=Math.max(b,0);d=0+(d-0)*b/100;a.setFillColor("#8AD155");a.rect(0,.5*e-2.5,d,5);a.fill()};mxCellRenderer.registerShape(mxMockupC.SHAPE_ICLOUD_PROGRESS_BAR,mxShapeMockupiCloudProgressBar);
905Graph.handleFactory[mxMockupC.SHAPE_ICLOUD_PROGRESS_BAR]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"barPos",.4))));return new mxPoint(a.x+d*a.width/100,a.y+a.height/2)},function(a,e){this.state.style.barPos=Math.round(100*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/100})]};
906function mxShapeMockupiDownloadBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiDownloadBar,mxShape);mxShapeMockupiDownloadBar.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"float",min:0,defVal:30}];
907mxShapeMockupiDownloadBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setGradient("#00ccff","#0066cc",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.rect(0,0,b,c);a.fill();a.setShadow(!1);this.foreground(a,b,c)};
908mxShapeMockupiDownloadBar.prototype.foreground=function(a,d,e){var b=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"");a.setFontColor("#ffffff");a.setFontStyle(mxConstants.FONT_BOLD);a.setFontSize(8);a.text(.5*d,.2*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);var c=mxUtils.getValue(this.style,mxMockupC.BAR_POS,"80"),c=Math.min(c,100),c=Math.max(c,0),b=.1*d,c=b+(d-2*b)*c/100;a.setStrokeWidth(.5);a.setGradient("#96D1FF","#003377",b,.65*e-2.5,d-2*b,5,mxConstants.DIRECTION_NORTH,
9091,1);a.roundrect(b,.65*e-2.5,d-2*b,5,2.5,2.5);a.fill();a.setGradient("#aaaaaa","#ffffff",b+2.5,.65*e-2.5,c-b-2.5,5,mxConstants.DIRECTION_NORTH,1,1);a.begin();a.moveTo(c,.65*e-2.5);a.arcTo(2.5,2.5,0,0,1,c,.65*e+2.5);a.lineTo(b+2.5,.65*e+2.5);a.arcTo(2.5,2.5,0,0,1,b+2.5,.65*e-2.5);a.close();a.fill()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IDOWNLOAD_BAR,mxShapeMockupiDownloadBar);
910Graph.handleFactory[mxMockupC.SHAPE_IDOWNLOAD_BAR]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"barPos",40))));return new mxPoint(a.x+.1*a.width+d*a.width*.8/100,a.y+.65*a.height)},function(a,e){this.state.style.barPos=Math.round(100*Math.max(0,Math.min(100,100*(e.x-.1*a.width-a.x)/(.8*a.width))))/100})]};
911function mxShapeMockupiScreenNameBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiScreenNameBar,mxShape);mxShapeMockupiScreenNameBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setStrokeWidth(.5);d=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"#00ff00");a.setFillColor(d);a.rect(0,0,b,c);a.fill();a.setShadow(!1);this.foreground(a,b,c,5)};
912mxShapeMockupiScreenNameBar.prototype.foreground=function(a,d,e,b){b=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR3,"#00ff00");a.setGradient(b,b,0,0,d,.5*e,mxConstants.DIRECTION_SOUTH,.8,.1);a.rect(0,0,d,.5*e);a.fill();b=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"");var c=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR,"#00ff00");a.setFontColor(c);a.setFontSize(9.5);a.text(.5*d,.45*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
913mxCellRenderer.registerShape(mxMockupC.SHAPE_ISCREEN_NAME_BAR,mxShapeMockupiScreenNameBar);function mxShapeMockupiIconGrid(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiIconGrid,mxShape);mxShapeMockupiIconGrid.prototype.customProperties=[{name:"gridSize",dispName:"Grid Size",type:"string"}];
914mxShapeMockupiIconGrid.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxMockupC.GRID_SIZE,"3,3").toString().split(",");this.background(a,b,c,d);a.setShadow(!1);this.foreground(a,b,c,d)};
915mxShapeMockupiIconGrid.prototype.background=function(a,d,e,b){var c=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#00ff00"),f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#00ff00");a.setStrokeColor(f);a.setFillColor(c);d/=parseInt(b[0],10)+.5*(b[0]-1);e/=parseInt(b[1],10)+.5*(b[1]-1);for(c=0;c<b[0];c++)for(f=0;f<b[1];f++)a.rect(1.5*d*c,1.5*e*f,d,e),a.fillAndStroke()};
916mxShapeMockupiIconGrid.prototype.foreground=function(a,d,e,b){d/=parseInt(b[0],10)+.5*(b[0]-1);e/=parseInt(b[1],10)+.5*(b[1]-1);for(var c=0;c<b[0];c++)for(var f=0;f<b[1];f++)a.begin(),a.moveTo(1.5*d*c,1.5*e*f),a.lineTo(1.5*d*c+d,1.5*e*f+e),a.moveTo(1.5*d*c+d,1.5*e*f),a.lineTo(1.5*d*c,1.5*e*f+e),a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IICON_GRID,mxShapeMockupiIconGrid);
917function mxShapeMockupiCopy(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiCopy,mxShape);mxShapeMockupiCopy.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c,5);a.setShadow(!1);this.foreground(a,b,c,5)};
918mxShapeMockupiCopy.prototype.background=function(a,d,e,b){a.begin();a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,e-b-7.5);a.arcTo(b,b,0,0,1,d-b,e-7.5);a.lineTo(.5*d+7.5,e-7.5);a.lineTo(.5*d,e);a.lineTo(.5*d-7.5,e-7.5);a.lineTo(b,e-7.5);a.arcTo(b,b,0,0,1,0,e-b-7.5);a.close();a.fillAndStroke()};
919mxShapeMockupiCopy.prototype.foreground=function(a,d,e,b){var c=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR3,"#00ff00");a.setGradient(c,c,0,0,d,.5*e,mxConstants.DIRECTION_SOUTH,.8,.1);a.begin();a.moveTo(0,b);a.arcTo(b,b,0,0,1,b,0);a.lineTo(d-b,0);a.arcTo(b,b,0,0,1,d,b);a.lineTo(d,.5*(e-7.5));a.lineTo(0,.5*(e-7.5));a.close();a.fill();b=mxUtils.getValue(this.style,mxMockupC.BUTTON_TEXT,"");c=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR,"#00ff00");a.setFontColor(c);a.setFontSize(8.5);
920a.text(.5*d,.45*(e-7.5),0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxMockupC.SHAPE_ICOPY,mxShapeMockupiCopy);function mxShapeMockupiCopyArea(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiCopyArea,mxShape);mxShapeMockupiCopyArea.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c,5);a.setShadow(!1);this.foreground(a,b,c,5)};
921mxShapeMockupiCopyArea.prototype.background=function(a,d,e,b){a.begin();a.moveTo(.5*d-20,0+b);a.arcTo(b,b,0,0,1,.5*d-20+b,0);a.lineTo(.5*d+20-b,0);a.arcTo(b,b,0,0,1,.5*d+20,b);a.lineTo(.5*d+20,20-b);a.arcTo(b,b,0,0,1,.5*d+20-b,20);a.lineTo(.5*d+7.5,20);a.lineTo(.5*d,27.5);a.lineTo(.5*d-7.5,20);a.lineTo(.5*d-20+b,20);a.arcTo(b,b,0,0,1,.5*d-20,20-b);a.close();a.fillAndStroke()};
922mxShapeMockupiCopyArea.prototype.foreground=function(a,d,e,b){a.setAlpha(.3);a.setFillColor("#2266ff");a.rect(2.5,27.5,d-5,e-30);a.fill();a.setAlpha(1);27.5<e&&(a.setStrokeColor("#ffffff"),a.setGradient("#88ddff","#2266ff",.5*d-2.5,25,5,5,mxConstants.DIRECTION_SOUTH,1,1),a.ellipse(.5*d-2.5,25,5,5),a.fillAndStroke(),a.setGradient("#88ddff","#2266ff",.5*d-2.5,e-5,5,5,mxConstants.DIRECTION_SOUTH,1,1),a.ellipse(.5*d-2.5,e-5,5,5),a.fillAndStroke(),a.setGradient("#88ddff","#2266ff",0,.5*e+10,5,5,mxConstants.DIRECTION_SOUTH,
9231,1),a.ellipse(0,.5*e+10,5,5),a.fillAndStroke(),a.setGradient("#88ddff","#2266ff",d-5,.5*e+10,5,5,mxConstants.DIRECTION_SOUTH,1,1),a.ellipse(d-5,.5*e+10,5,5),a.fillAndStroke());e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR2,"#00ff00");var c=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#00ff00");a.setFillColor(e);a.setStrokeColor(c);a.begin();a.moveTo(.5*d-20,0+b);a.arcTo(b,b,0,0,1,.5*d-20+b,0);a.lineTo(.5*d+20-b,0);a.arcTo(b,b,0,0,1,.5*d+20,b);a.lineTo(.5*d+20,20-b);a.arcTo(b,
924b,0,0,1,.5*d+20-b,20);a.lineTo(.5*d+7.5,20);a.lineTo(.5*d,27.5);a.lineTo(.5*d-7.5,20);a.lineTo(.5*d-20+b,20);a.arcTo(b,b,0,0,1,.5*d-20,20-b);a.close();a.fillAndStroke();e=mxUtils.getValue(this.style,mxMockupC.STYLE_FILLCOLOR3,"#00ff00");a.setGradient(e,e,.5*d-20,0,40,10,mxConstants.DIRECTION_SOUTH,.8,.1);a.begin();a.moveTo(.5*d-20,b);a.arcTo(b,b,0,0,1,.5*d-20+b,0);a.lineTo(.5*d+20-b,0);a.arcTo(b,b,0,0,1,.5*d+20,b);a.lineTo(.5*d+20,10);a.lineTo(.5*d-20,10);a.close();a.fill();b=mxUtils.getValue(this.style,
925mxMockupC.BUTTON_TEXT,"");e=mxUtils.getValue(this.style,mxMockupC.STYLE_TEXTCOLOR,"#00ff00");a.setFontColor(e);a.setFontSize(8.5);a.text(.5*d,8.75,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxMockupC.SHAPE_ICOPY_AREA,mxShapeMockupiCopyArea);function mxShapeMockupiHomePageControl(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiHomePageControl,mxShape);
926mxShapeMockupiHomePageControl.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#000000");e=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setStrokeColor(e);a.setFillColor(d);d=Math.min(.5*c,.05*b);a.ellipse(.35*b-d,.5*c-d,2*d,2*d);a.fill();a.ellipse(.65*b-d,.5*c-d,2*d,2*d);a.fill();a.ellipse(b-2*d,.5*c-d,2*d,2*d);a.fill();a.ellipse(.2*d,.5*c-.8*d,1.2*d,1.2*d);a.stroke();a.begin();a.moveTo(1.15*d,.5*c+
927.25*d);a.lineTo(1.6*d,.5*c+.8*d);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IHOME_PAGE_CONTROL,mxShapeMockupiHomePageControl);function mxShapeMockupiPageControl(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiPageControl,mxShape);
928mxShapeMockupiPageControl.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#000000");e=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");var f=Math.min(.5*c,.05*b);a.setFillColor(e);a.ellipse(0,.5*c-f,2*f,2*f);a.fill();a.setFillColor(d);a.ellipse(.35*b-f,.5*c-f,2*f,2*f);a.fill();a.ellipse(.65*b-f,.5*c-f,2*f,2*f);a.fill();a.ellipse(b-2*f,.5*c-f,2*f,2*f);a.fill()};
929mxCellRenderer.registerShape(mxMockupC.SHAPE_IPAGE_CONTROL,mxShapeMockupiPageControl);function mxShapeMockupiPad(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupiPad,mxShape);
930mxShapeMockupiPad.prototype.customProperties=[{name:"bgStyle",dispName:"Background",type:"enum",enumList:[{val:"bgGreen",dispName:"Green"},{val:"bgWhite",dispName:"White"},{val:"bgGray",dispName:"Gray"},{val:"bgFlat",dispName:"Flat"},{val:"bgMap",dispName:"Map"},{val:"bgStriped",dispName:"Striped"}]}];mxShapeMockupiPad.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c,25);a.setShadow(!1);this.foreground(a,d,e,b,c,25)};
931mxShapeMockupiPad.prototype.background=function(a,d,e,b,c,f){a.setFillColor("#000000");a.setStrokeColor("#000000");a.roundrect(0,0,b,c,f,f);a.fillAndStroke()};
932mxShapeMockupiPad.prototype.foreground=function(a,d,e,b,c,f){a.setStrokeWidth(1.5);a.setStrokeColor("#999999");a.begin();a.setStrokeColor("none");a.setFillColor("#808080");a.setGradient("#808080","#000000",.325*b,0,.675*b,.5*c,mxConstants.DIRECTION_SOUTH,1,1);a.moveTo(.325*b,0);a.lineTo(b-f,0);a.arcTo(f,f,0,0,1,b,f);a.lineTo(b,.5*c);a.lineTo(.7*b,.5*c);a.close();a.fillAndStroke();a.begin();a.setFillColor("#1f2923");a.setStrokeColor("#18211b");a.setStrokeWidth(1);d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,
933"");e=mxUtils.getValue(this.style,mxMockupC.BG_STYLE,mxMockupC.BG_FLAT_GREEN);a.setStrokeWidth(1);if(e===mxMockupC.BG_FLAT_WHITE)a.setFillColor("#ffffff"),a.rect(.0928*b,.08*c,.8144*b,.816*c),a.fill();else if(e===mxMockupC.BG_FLAT_GREEN)a.setFillColor("#1f2923"),a.rect(.0928*b,.08*c,.8144*b,.816*c),a.fill();else if(e===mxMockupC.BG_FLAT_GRAY)a.setFillColor("#dddddd"),a.rect(.0928*b,.08*c,.8144*b,.816*c),a.fill();else if(e===mxMockupC.BG_FLAT_CUSTOM)a.setFillColor(d),a.rect(.0928*b,.08*c,.8144*b,.816*
934c),a.fill();else if(e===mxMockupC.BG_STRIPED){d=b;e=c;a.translate(.0928*b,.08*c);b*=.8144;c*=.816;a.setFillColor("#5D7585");a.rect(0,0,b,c);a.fillAndStroke();a.setStrokeColor("#657E8F");var g=7;for(a.begin();g<b;)a.moveTo(g,0),a.lineTo(g,c),g+=7;a.stroke();a.setStrokeColor("#18211b");a.begin();a.rect(0,0,b,c);a.stroke();b=d;c=e;a.translate(.0928*-b,.08*-c)}else e===mxMockupC.BG_MAP&&(d=b,e=c,a.translate(.0928*b,.08*c),b*=.8144,c*=.816,a.setFillColor("#ffffff"),a.rect(0,0,b,c),a.fillAndStroke(),a.setFillColor("#96D1FF"),
935a.setStrokeColor("#008cff"),a.setStrokeWidth(.5),a.begin(),a.moveTo(0,0),a.lineTo(.1171*b,0),a.lineTo(.1136*b,.0438*c),a.lineTo(.0993*b,.054*c),a.lineTo(0,.0446*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.1993*b,0),a.lineTo(.1914*b,.03884*c),a.lineTo(.1536*b,.0362*c),a.lineTo(.1586*b,0),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.24*b,0),a.lineTo(.2257*b,.054*c),a.lineTo(.2414*b,.0674*c),a.lineTo(.4707*b,.0835*c),a.lineTo(.5264*b,.0906*c),a.lineTo(.6429*b,.0929*c),a.arcTo(.0857*b,.0536*
936c,0,0,0,.7193*b,.0621*c),a.arcTo(.48*b,.2143*c,0,0,0,.7286*b,0),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.8*b,0),a.lineTo(.7886*b,.04554*c),a.arcTo(.0857*b,.0536*c,0,0,0,.8164*b,.0875*c),a.arcTo(.1429*b,.0893*c,0,0,0,.88*b,.1036*c),a.lineTo(b,.1112*c),a.lineTo(b,0),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(0,.0933*c),a.lineTo(.08*b,.1036*c),a.lineTo(.1021*b,.1246*c),a.lineTo(.1007*b,.1768*c),a.lineTo(.0471*b,.2241*c),a.lineTo(0,.2527*c),a.close(),a.fillAndStroke(),a.ellipse(.1214*b,.0603*
937c,.0843*b,.0576*c),a.fillAndStroke(),a.begin(),a.moveTo(.1293*b,.1924*c),a.lineTo(.1729*b,.142*c),a.lineTo(.1407*b,.1411*c),a.lineTo(.14*b,.1777*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.4586*b,.1241*c),a.lineTo(.455*b,.1835*c),a.lineTo(.3893*b,.2246*c),a.lineTo(.2171*b,.1362*c),a.lineTo(.2171*b,.1308*c),a.lineTo(.2293*b,.1214*c),a.lineTo(.2857*b,.1174*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.5079*b,.1134*c),a.lineTo(.7307*b,.1223*c),a.lineTo(.7279*b,.1625*c),a.lineTo(.715*b,.1772*
938c),a.lineTo(.6929*b,.1688*c),a.lineTo(.625*b,.1795*c),a.lineTo(.4779*b,.2835*c),a.lineTo(.395*b,.2299*c),a.lineTo(.4657*b,.1826*c),a.lineTo(.4707*b,.1223*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(b,.1362*c),a.lineTo(.7643*b,.1237*c),a.lineTo(.7543*b,.1562*c),a.lineTo(.7643*b,.1585*c),a.lineTo(.9186*b,.2366*c),a.lineTo(b,.1732*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.2079*b,.1545*c),a.lineTo(.3886*b,.2536*c),a.lineTo(.3414*b,.2933*c),a.lineTo(.1743*b,.1969*c),a.close(),a.fillAndStroke(),
939a.begin(),a.moveTo(.1579*b,.2134*c),a.lineTo(.3221*b,.3067*c),a.lineTo(.2957*b,.3237*c),a.lineTo(.1157*b,.2424*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.405*b,.2656*c),a.lineTo(.31*b,.3353*c),a.lineTo(.3693*b,.3661*c),a.lineTo(.4571*b,.2982*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.7121*b,.1848*c),a.lineTo(.6879*b,.1754*c),a.lineTo(.6329*b,.1844*c),a.lineTo(.61*b,.2018*c),a.lineTo(.6207*b,.2085*c),a.lineTo(.4986*b,.2982*c),a.lineTo(.535*b,.3237*c),a.close(),a.fillAndStroke(),a.begin(),
940a.moveTo(.5557*b,.3379*c),a.lineTo(.7464*b,.1826*c),a.lineTo(.8036*b,.2076*c),a.lineTo(.595*b,.3616*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.8293*b,.2188*c),a.lineTo(.8979*b,.2509*c),a.lineTo(.6936*b,.4125*c),a.lineTo(.6171*b,.3737*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(b,.2138*c),a.lineTo(.6821*b,.4603*c),a.lineTo(.815*b,.5277*c),a.lineTo(b,.4*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(0,.317*c),a.lineTo(.0971*b,.2554*c),a.lineTo(.4121*b,.4143*c),a.lineTo(.3736*b,.4415*
941c),a.lineTo(.315*b,.4076*c),a.lineTo(.3093*b,.4116*c),a.lineTo(.3686*b,.4455*c),a.lineTo(.285*b,.5045*c),a.lineTo(.1114*b,.4134*c),a.lineTo(.025*b,.4603*c),a.lineTo(.0371*b,.4723*c),a.lineTo(.1114*b,.4371*c),a.lineTo(.2871*b,.5312*c),a.lineTo(.1929*b,.6058*c),a.lineTo(.2271*b,.6705*c),a.lineTo(.17*b,.7147*c),a.lineTo(.0314*b,.6321*c),a.lineTo(0,.6246*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.48*b,.3121*c),a.lineTo(.5157*b,.3375*c),a.lineTo(.4314*b,.3982*c),a.lineTo(.3929*b,.3786*c),a.close(),
942a.fillAndStroke(),a.begin(),a.moveTo(.3086*b,.5179*c),a.lineTo(.53*b,.3518*c),a.lineTo(.5757*b,.3745*c),a.lineTo(.3479*b,.5411*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.5964*b,.3884*c),a.lineTo(.6736*b,.4277*c),a.lineTo(.445*b,.5991*c),a.lineTo(.3664*b,.5531*c),a.lineTo(.5057*b,.4545*c),a.lineTo(.5507*b,.4754*c),a.lineTo(.5571*b,.4723*c),a.lineTo(.5114*b,.4504*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.4793*b,.6161*c),a.lineTo(.6771*b,.4643*c),a.lineTo(.8086*b,.5326*c),a.lineTo(.7471*
943b,.5817*c),a.lineTo(.7214*b,.567*c),a.lineTo(.715*b,.571*c),a.lineTo(.7421*b,.5871*c),a.lineTo(.6014*b,.6933*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(b,.4371*c),a.lineTo(.8443*b,.546*c),a.lineTo(.9071*b,.5701*c),a.lineTo(b,.5022*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.8407*b,.5504*c),a.lineTo(.8993*b,.5759*c),a.lineTo(.6757*b,.7416*c),a.lineTo(.6286*b,.7139*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(b,.5321*c),a.lineTo(.6979*b,.7549*c),a.lineTo(.7457*b,.7781*c),a.lineTo(.9814*
944b,.6094*c),a.lineTo(b,.6067*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(b,.6254*c),a.lineTo(.7664*b,.792*c),a.lineTo(.9586*b,.9062*c),a.lineTo(b,.8786*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.3093*b,.5464*c),a.lineTo(.4271*b,.6152*c),a.lineTo(.245*b,.7643*c),a.lineTo(.185*b,.7228*c),a.lineTo(.2493*b,.6728*c),a.lineTo(.2214*b,.6143*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(0,.65*c),a.lineTo(.2179*b,.7826*c),a.lineTo(.1136*b,.8424*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(0,
945.7272*c),a.lineTo(.0821*b,.859*c),a.lineTo(0,.9085*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.4529*b,.6366*c),a.lineTo(.575*b,.7143*c),a.lineTo(.39*b,.8621*c),a.lineTo(.2657*b,.7902*c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(0,.9415*c),a.lineTo(.1036*b,.8821*c),a.lineTo(.2343*b,.959*c),a.lineTo(.1721*b,c),a.lineTo(0,c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.2586*b,.7951*c),a.lineTo(.3829*b,.8674*c),a.lineTo(.2543*b,.9451*c),a.lineTo(.1279*b,.8692*c),a.close(),a.fillAndStroke(),
946a.begin(),a.moveTo(.2836*b,.9639*c),a.lineTo(.4207*b,.8772*c),a.lineTo(.605*b,.7321*c),a.lineTo(.6521*b,.7634*c),a.lineTo(.3486*b,c),a.lineTo(.3393*b,c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.3879*b,c),a.lineTo(.6721*b,.7759*c),a.lineTo(.7171*b,.7982*c),a.lineTo(.4564*b,c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.4986*b,c),a.lineTo(.7386*b,.8125*c),a.lineTo(.9307*b,.925*c),a.lineTo(.8264*b,c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.8671*b,c),a.lineTo(.9464*b,.9491*c),a.lineTo(b,
947.975*c),a.lineTo(b,c),a.close(),a.fillAndStroke(),a.begin(),a.moveTo(.2295*b,c),a.lineTo(.2648*b,.9792*c),a.lineTo(.2981*b,c),a.close(),a.fillAndStroke(),b=d,c=e,a.translate(.0928*-b,.08*-c));a.setStrokeWidth(1);a.setStrokeColor("#18211b");a.rect(.0928*b,.08*c,.8144*b,.816*c);a.stroke();a.setStrokeWidth(1.5);a.setAlpha(.8);a.setStrokeColor("#dddddd");a.begin();a.moveTo(0,f);a.arcTo(f,f,0,0,1,f,0);a.lineTo(b-f,0);a.arcTo(f,f,0,0,1,b,f);a.lineTo(b,c-f);a.arcTo(f,f,0,0,1,b-f,c);a.lineTo(f,c);a.arcTo(f,
948f,0,0,1,0,c-f);a.close();a.stroke();f=22.5;a.begin();a.setStrokeColor("#666666");a.begin();a.moveTo(2.5,2.5+f);a.arcTo(f,f,0,0,1,2.5+f,2.5);a.lineTo(b-f-5,2.5);a.arcTo(f,f,0,0,1,b-2.5,f+2.5);a.lineTo(b-2.5,c-f-2.5);a.arcTo(f,f,0,0,1,b-f-2.5,c-2.5);a.lineTo(f+2.5,c-2.5);a.arcTo(f,f,0,0,1,2.5,c-f-2.5);a.close();a.stroke();a.setAlpha(1);a.ellipse(.4948*b,.0444*c,.0103*b,.008*c);a.setStrokeWidth(2.5);a.setStrokeColor("#000000");a.setFillColor("#000099");a.fillAndStroke();a.setGradient("#bbbbbb","#000000",
949.4588*b,.912*c,.0825*b,.064*c,mxConstants.DIRECTION_SOUTH,1,1);a.ellipse(.4588*b,.912*c,.0825*b,.064*c);a.fill();a.setAlpha(.5);a.ellipse(.4588*b,.912*c,.0825*b,.064*c);a.stroke();a.begin();a.setAlpha(.85);a.setFillColor("#000000");a.moveTo(.4598*b,.944*c);a.arcTo(.0402*b,.0296*c,0,0,1,.5402*b,.944*c);a.arcTo(.0825*b,.064*c,0,0,1,.4598*b,.944*c);a.close();a.fillAndStroke();a.begin();a.setAlpha(.7);a.setStrokeWidth(1.5);a.setStrokeColor("#dddddd");a.roundrect(.4814*b,.9296*c,.0371*b,.0288*c,.00515*
950c,.004*c);a.stroke()};mxCellRenderer.registerShape(mxMockupC.SHAPE_IPAD,mxShapeMockupiPad);function mxShapeMockupRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupRRect,mxShape);mxShapeMockupRRect.prototype.cst={RRECT:"mxgraph.ios.rrect",R_SIZE:"rSize"};mxShapeMockupRRect.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:5}];
951mxShapeMockupRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupRRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeMockupRRect.prototype.cst.RRECT,mxShapeMockupRRect);function mxShapeIosTopButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIosTopButton,mxShape);
952mxShapeIosTopButton.prototype.cst={TOP_BUTTON:"mxgraph.ios.topButton",R_SIZE:"rSize"};mxShapeIosTopButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:5}];mxShapeIosTopButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeIosTopButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};
953mxCellRenderer.registerShape(mxShapeIosTopButton.prototype.cst.TOP_BUTTON,mxShapeIosTopButton);function mxShapeIosBottomButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIosBottomButton,mxShape);mxShapeIosBottomButton.prototype.cst={BOTTOM_BUTTON:"mxgraph.ios.bottomButton",R_SIZE:"rSize"};mxShapeIosBottomButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:5}];
954mxShapeIosBottomButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeIosBottomButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c-d);a.arcTo(d,d,0,0,1,b-d,c);a.lineTo(d,c);a.arcTo(d,d,0,0,1,0,c-d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeIosBottomButton.prototype.cst.BOTTOM_BUTTON,mxShapeIosBottomButton);function mxShapeIosAnchor(a,d,e,b){mxShape.call(this);this.bounds=a}
955mxUtils.extend(mxShapeIosAnchor,mxShape);mxShapeIosAnchor.prototype.cst={ANCHOR:"mxgraph.ios.anchor"};mxShapeIosAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeIosAnchor.prototype.cst.ANCHOR,mxShapeIosAnchor);function mxShapeIosCheckbox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIosCheckbox,mxShape);mxShapeIosCheckbox.prototype.cst={CHECKBOX:"mxgraph.ios.checkbox"};
956mxShapeIosCheckbox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke();a.begin();a.moveTo(.8*b,.2*c);a.lineTo(.4*b,.8*c);a.lineTo(.25*b,.6*c);a.stroke()};mxCellRenderer.registerShape(mxShapeIosCheckbox.prototype.cst.CHECKBOX,mxShapeIosCheckbox);function mxShapeMockupFancyRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeMockupFancyRRect,mxShape);
957mxShapeMockupFancyRRect.prototype.cst={FANCY_RRECT:"mxgraph.ios.fancyRRect",R_SIZE:"rSize"};mxShapeMockupFancyRRect.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:8}];
958mxShapeMockupFancyRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeMockupFancyRRect.prototype.cst.R_SIZE,"10"));e=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.roundrect(0,0,b,c,d);a.fillAndStroke();a.setShadow(!1);a.setStrokeColor(e);a.setGradient(e,"#ffffff",0,0,b,22.5,mxConstants.DIRECTION_SOUTH,1,1);a.setAlpha(.3);a.begin();a.moveTo(b-
959d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,17.5);a.arcTo(1.67*b,2.5*c,0,0,1,0,17.5);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.close();a.fillAndStroke();a.setAlpha(.8);a.setStrokeColor(f);a.setStrokeWidth(1);a.roundrect(0,0,b,c,d,d);a.stroke()};mxCellRenderer.registerShape(mxShapeMockupFancyRRect.prototype.cst.FANCY_RRECT,mxShapeMockupFancyRRect);function mxShapeAws3dArrowNE(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
960mxUtils.extend(mxShapeAws3dArrowNE,mxShape);mxShapeAws3dArrowNE.prototype.cst={ARROW_NE:"mxgraph.aws3d.arrowNE"};mxShapeAws3dArrowNE.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(b-17,8);a.lineTo(b-21,5.5);a.lineTo(b,0);a.lineTo(b-9.7,12.2);a.lineTo(b-13.9,9.8);a.lineTo(9.7,c-3.5);a.arcTo(6,3,0,0,1,9,c-.4);a.arcTo(5.2,3,0,0,1,1,c-1.4);a.arcTo(6,2.8,0,0,1,3,c-5.4);a.arcTo(5,3,0,0,1,6.7,c-5.2);a.close();a.fillAndStroke()};
961mxCellRenderer.registerShape(mxShapeAws3dArrowNE.prototype.cst.ARROW_NE,mxShapeAws3dArrowNE);function mxShapeAws3dArrowSE(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dArrowSE,mxShape);mxShapeAws3dArrowSE.prototype.cst={ARROW_SE:"mxgraph.aws3d.arrowSE"};
962mxShapeAws3dArrowSE.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(b-17,c-8);a.lineTo(b-21,c-5.5);a.lineTo(b,c);a.lineTo(b-9.7,c-12.2);a.lineTo(b-13.9,c-9.8);a.lineTo(9.7,3.5);a.arcTo(6,3,0,0,0,9,.4);a.arcTo(5.2,3,0,0,0,1,1.4);a.arcTo(6,2.8,0,0,0,3,5.4);a.arcTo(5,3,0,0,0,6.7,5.2);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeAws3dArrowSE.prototype.cst.ARROW_SE,mxShapeAws3dArrowSE);
963function mxShapeAws3dArrowSW(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dArrowSW,mxShape);mxShapeAws3dArrowSW.prototype.cst={ARROW_SW:"mxgraph.aws3d.arrowSW"};
964mxShapeAws3dArrowSW.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(17,c-8);a.lineTo(21,c-5.5);a.lineTo(0,c);a.lineTo(9.7,c-12.2);a.lineTo(13.9,c-9.8);a.lineTo(b-9.7,3.5);a.arcTo(6,3,0,0,1,b-9,.4);a.arcTo(5.2,3,0,0,1,b-1,1.4);a.arcTo(6,2.8,0,0,1,b-3,5.4);a.arcTo(5,3,0,0,1,b-6.7,5.2);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeAws3dArrowSW.prototype.cst.ARROW_SW,mxShapeAws3dArrowSW);
965function mxShapeAws3dArrowNW(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dArrowNW,mxShape);mxShapeAws3dArrowNW.prototype.cst={ARROW_NW:"mxgraph.aws3d.arrowNW"};
966mxShapeAws3dArrowNW.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(17,8);a.lineTo(21,5.5);a.lineTo(0,0);a.lineTo(9.7,12.2);a.lineTo(13.9,9.8);a.lineTo(b-9.7,c-3.5);a.arcTo(6,3,0,0,0,b-9,c-.4);a.arcTo(5.2,3,0,0,0,b-1,c-1.4);a.arcTo(6,2.8,0,0,0,b-3,c-5.4);a.arcTo(5,3,0,0,0,b-6.7,c-5.2);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeAws3dArrowNW.prototype.cst.ARROW_NW,mxShapeAws3dArrowNW);
967function mxShapeAws3dArrowlessNE(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dArrowlessNE,mxShape);mxShapeAws3dArrowlessNE.prototype.cst={ARROWLESS_NE:"mxgraph.aws3d.arrowlessNE"};
968mxShapeAws3dArrowlessNE.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(b-3.1,0);a.lineTo(b,1.8);a.lineTo(9.7,c-3.5);a.arcTo(6,3,0,0,1,9,c-.4);a.arcTo(5.2,3,0,0,1,1,c-1.4);a.arcTo(6,2.8,0,0,1,3,c-5.4);a.arcTo(5,3,0,0,1,6.7,c-5.2);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeAws3dArrowlessNE.prototype.cst.ARROWLESS_NE,mxShapeAws3dArrowlessNE);
969function mxShapeAws3dDashedEdgeDouble(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dDashedEdgeDouble,mxShape);mxShapeAws3dDashedEdgeDouble.prototype.cst={DASHED_EDGE_DOUBLE:"mxgraph.aws3d.dashedEdgeDouble"};
970mxShapeAws3dDashedEdgeDouble.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setFillColor("#2D6195");a.save();a.setStrokeColor("none");a.begin();a.moveTo(21,5.5);a.lineTo(0,0);a.lineTo(9.7,12.2);a.fillAndStroke();a.begin();a.moveTo(b-21,c-5.5);a.lineTo(b,c);a.lineTo(b-9.7,c-12.2);a.fillAndStroke();a.restore();a.setStrokeColor("#2D6195");a.setStrokeWidth("4");a.setDashed("true");a.setLineCap("round");a.begin();a.moveTo(7.675,4.425);a.lineTo(b-7.675,c-4.425);a.stroke()};
971mxCellRenderer.registerShape(mxShapeAws3dDashedEdgeDouble.prototype.cst.DASHED_EDGE_DOUBLE,mxShapeAws3dDashedEdgeDouble);function mxShapeAws3dDashedArrowlessEdge(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dDashedArrowlessEdge,mxShape);mxShapeAws3dDashedArrowlessEdge.prototype.cst={DASHED_ARROWLESS_EDGE:"mxgraph.aws3d.dashedArrowlessEdge"};
972mxShapeAws3dDashedArrowlessEdge.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setStrokeColor("#2D6195");a.setStrokeWidth("4");a.setDashed("true");a.setLineCap("round");a.begin();a.moveTo(0,0);a.lineTo(b,c);a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dDashedArrowlessEdge.prototype.cst.DASHED_ARROWLESS_EDGE,mxShapeAws3dDashedArrowlessEdge);function mxShapeAws3dDashedEdge(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
973mxUtils.extend(mxShapeAws3dDashedEdge,mxShape);mxShapeAws3dDashedEdge.prototype.cst={DASHED_EDGE:"mxgraph.aws3d.dashedEdge"};
974mxShapeAws3dDashedEdge.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setFillColor("#2D6195");a.save();a.setStrokeColor("none");a.begin();a.moveTo(b-21,5.5);a.lineTo(b,0);a.lineTo(b-9.7,12.2);a.fillAndStroke();a.restore();a.setStrokeColor("#2D6195");a.setStrokeWidth("4");a.setDashed("true");a.setLineCap("round");a.begin();a.moveTo(b-7.675,4.425);a.lineTo(0,c);a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dDashedEdge.prototype.cst.DASHED_EDGE,mxShapeAws3dDashedEdge);
975function mxShapeAws3dFlatEdge(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dFlatEdge,mxShape);mxShapeAws3dFlatEdge.prototype.cst={FLAT_EDGE:"mxgraph.aws3d.flatEdge"};
976mxShapeAws3dFlatEdge.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setFillColor("#F4B934");a.setStrokeColor("none");a.begin();a.moveTo(b-46,8.8);a.lineTo(b-61.2,0);a.lineTo(b,0);a.lineTo(b,35.5);a.lineTo(b-15.4,26.5);a.lineTo(30.7,c);a.lineTo(0,c-17.7);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeAws3dFlatEdge.prototype.cst.FLAT_EDGE,mxShapeAws3dFlatEdge);
977function mxShapeAws3dFlatDoubleEdge(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dFlatDoubleEdge,mxShape);mxShapeAws3dFlatDoubleEdge.prototype.cst={FLAT_DOUBLE_EDGE:"mxgraph.aws3d.flatDoubleEdge"};
978mxShapeAws3dFlatDoubleEdge.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setFillColor("#F4B934");a.setStrokeColor("none");a.begin();a.moveTo(15.3,61.9);a.lineTo(30.8,53.2);a.lineTo(15.4,44.2);a.lineTo(0,53.2);a.lineTo(15.4,8.8);a.lineTo(92.1,0);a.lineTo(76.5,8.8);a.lineTo(92.1,17.7);a.lineTo(107.4,8.8);a.lineTo(b-15.3,c-61.9);a.lineTo(b-30.8,c-53.2);a.lineTo(b-15.4,c-44.2);a.lineTo(b,c-53.2);a.lineTo(b-15.4,c-8.8);a.lineTo(b-92.1,c);a.lineTo(b-76.5,c-8.8);a.lineTo(b-92.1,c-17.7);
979a.lineTo(b-107.4,c-8.8);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeAws3dFlatDoubleEdge.prototype.cst.FLAT_DOUBLE_EDGE,mxShapeAws3dFlatDoubleEdge);function mxShapeAws3dAMI(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dAMI,mxShape);mxShapeAws3dAMI.prototype.cst={AMI:"mxgraph.aws3d.ami",SHADING_COLORS:"shadingCols"};
980mxShapeAws3dAMI.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(d*b/92,d*c/60);a.setStrokeWidth(d);a.setShadow(!1);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==e&&a.setShadow(!0);a.begin();a.moveTo(0,.6483*c);a.lineTo(.0684*b,.4133*c);a.lineTo(.5326*b,0);a.lineTo(.6685*b,0);a.lineTo(.9359*b,.2367*
981c);a.lineTo(b,.465*c);a.lineTo(.4*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dAMI.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");var f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.65*c);a.lineTo(.0652*b,.5*c);a.lineTo(.3326*b,.7667*c);a.lineTo(.4663*b,.7667*c);a.lineTo(.4*b,c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();
982a.moveTo(.4*b,c);a.lineTo(.4641*b,.77*c);a.lineTo(.9326*b,.355*c);a.lineTo(.9347*b,.24*c);a.lineTo(b,.4667*c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.65*c);a.lineTo(.0652*b,.5*c);a.lineTo(.3326*b,.7667*c);a.lineTo(.4663*b,.7667*c);a.lineTo(.4*b,c);a.close();a.stroke();a.begin();a.moveTo(.4*b,c);a.lineTo(.4641*b,.77*c);a.lineTo(.9326*b,.355*c);a.lineTo(.9347*b,.24*c);a.lineTo(b,.4667*c);a.close();a.stroke();a.begin();a.moveTo(.0652*b,.42*c);a.lineTo(.0652*b,.5*c);
983a.moveTo(.3337*b,.7667*c);a.lineTo(.4*b,c);a.moveTo(.9348*b,.355*c);a.lineTo(b,.4733*c);a.stroke();a.setLineJoin("miter");e=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(e);a.begin();a.moveTo(.1935*b,.42*c);a.lineTo(.5543*b,.0967*c);a.lineTo(.6652*b,.1967*c);a.lineTo(.3*b,.5133*c);a.close();a.moveTo(.2967*b,.4633*c);a.lineTo(.3837*b,.3883*c);a.lineTo(.3326*b,.3417*c);a.lineTo(.2467*b,.42*c);a.close();a.moveTo(.362*b,.32*c);a.lineTo(.412*b,.3633*c);a.lineTo(.5054*b,.2867*
984c);a.lineTo(.4522*b,.24*c);a.close();a.moveTo(.5293*b,.26*c);a.lineTo(.6109*b,.1933*c);a.lineTo(.5511*b,.145*c);a.lineTo(.4739*b,.2133*c);a.close();a.moveTo(.3528*b,.557*c);a.lineTo(.7137*b,.2337*c);a.lineTo(.8246*b,.3337*c);a.lineTo(.4593*b,.6503*c);a.close();a.moveTo(.4561*b,.6003*c);a.lineTo(.543*b,.5253*c);a.lineTo(.492*b,.4787*c);a.lineTo(.4061*b,.557*c);a.close();a.moveTo(.5213*b,.457*c);a.lineTo(.5713*b,.5003*c);a.lineTo(.6648*b,.4237*c);a.lineTo(.6115*b,.377*c);a.close();a.moveTo(.6887*b,
985.397*c);a.lineTo(.7702*b,.3303*c);a.lineTo(.7104*b,.282*c);a.lineTo(.6333*b,.3503*c);a.close();a.fill();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.6483*c);a.lineTo(.0684*b,.4133*c);a.lineTo(.5326*b,0);a.lineTo(.6685*b,0);a.lineTo(.9359*b,.2367*c);a.lineTo(b,.465*c);a.lineTo(.4*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dAMI.prototype.cst.AMI,mxShapeAws3dAMI);
986function mxShapeAws3dSnapshot(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dSnapshot,mxShape);mxShapeAws3dSnapshot.prototype.cst={SNAPSHOT:"mxgraph.aws3d.snapshot",SHADING_COLORS:"shadingCols"};
987mxShapeAws3dSnapshot.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=d*b/92;d=d*c/60;var f=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(e,d);a.setStrokeWidth(d);a.setShadow(!1);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==f&&a.setShadow(!0);a.begin();a.moveTo(b,.6483*c);a.lineTo(.9316*b,.4133*c);a.lineTo(.4674*b,0);a.lineTo(.3315*b,0);a.lineTo(.0641*
988b,.2367*c);a.lineTo(0,.465*c);a.lineTo(.6*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dSnapshot.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(b,.65*c);a.lineTo(.9348*b,.52*c);a.lineTo(.6674*b,.7667*c);a.lineTo(.5337*b,.7667*c);a.lineTo(.6*b,c);a.close();a.fill();"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);
989a.begin();a.moveTo(.6*b,c);a.lineTo(.5359*b,.77*c);a.lineTo(.0674*b,.355*c);a.lineTo(.0653*b,.24*c);a.lineTo(0,.4667*c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(b,.65*c);a.lineTo(.9348*b,.52*c);a.lineTo(.6674*b,.7667*c);a.lineTo(.5337*b,.7667*c);a.lineTo(.6*b,c);a.close();a.stroke();a.begin();a.moveTo(.6*b,c);a.lineTo(.5359*b,.77*c);a.lineTo(.0674*b,.355*c);a.lineTo(.0653*b,.24*c);a.lineTo(0,.4667*c);a.close();a.stroke();a.begin();a.moveTo(.9348*b,.42*c);a.lineTo(.9348*
990b,.52*c);a.moveTo(.6663*b,.7667*c);a.lineTo(.6*b,c);a.moveTo(.0652*b,.355*c);a.lineTo(0,.4733*c);a.stroke();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(b,.6483*c);a.lineTo(.9316*b,.4133*c);a.lineTo(.4674*b,0);a.lineTo(.3315*b,0);a.lineTo(.0641*b,.2367*c);a.lineTo(0,.465*c);a.lineTo(.6*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dSnapshot.prototype.cst.SNAPSHOT,mxShapeAws3dSnapshot);
991function mxShapeAws3dApplication(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dApplication,mxShape);mxShapeAws3dApplication.prototype.cst={APPLICATION:"mxgraph.aws3d.application",SHADING_COLORS:"shadingCols"};
992mxShapeAws3dApplication.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=d*b/62;d=d*c/68.8;var f=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(e,d);a.setShadow(!1);a.setStrokeWidth(d);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==f&&a.setShadow(!0);a.begin();a.moveTo(0,.2544*c);a.lineTo(.5*b,0);a.lineTo(b,.2544*c);a.lineTo(b,.7485*c);a.lineTo(.5*
993b,c);a.lineTo(0,.7485*c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dApplication.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.2544*c);a.lineTo(.5*b,.5015*c);a.lineTo(.5*b,c);a.lineTo(0,.7485*c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(.5*b,.5015*c);a.lineTo(b,.2544*
994c);a.lineTo(b,.7485*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.2544*c);a.lineTo(.5*b,.5015*c);a.lineTo(.5*b,c);a.lineTo(0,.7485*c);a.close();a.stroke();a.begin();a.moveTo(.5*b,.5015*c);a.lineTo(b,.2544*c);a.lineTo(b,.7485*c);a.lineTo(.5*b,c);a.close();a.stroke();a.setLineJoin("miter");e=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(e);a.begin();a.moveTo(.6694*b,.0872*c);a.lineTo(.7629*b,.1337*c);a.lineTo(.2661*b,.3882*
995c);a.lineTo(.2661*b,.5407*c);a.lineTo(.1742*b,.4953*c);a.lineTo(.1742*b,.3459*c);a.close();a.moveTo(.8629*b,.1846*c);a.lineTo(.379*b,.4331*c);a.lineTo(.379*b,.5945*c);a.lineTo(.2855*b,.5494*c);a.lineTo(.2855*b,.3953*c);a.lineTo(.7839*b,.1439*c);a.close();a.fill();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.2544*c);a.lineTo(.5*b,0);a.lineTo(b,.2544*c);a.lineTo(b,.7485*c);a.lineTo(.5*b,c);a.lineTo(0,.7485*c);a.close();a.stroke()};
996mxCellRenderer.registerShape(mxShapeAws3dApplication.prototype.cst.APPLICATION,mxShapeAws3dApplication);function mxShapeAws3dApplicationServer(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dApplicationServer,mxShape);mxShapeAws3dApplicationServer.prototype.cst={APPLICATION_SERVER:"mxgraph.aws3d.application_server",SHADING_COLORS:"shadingCols"};
997mxShapeAws3dApplicationServer.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/124);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
998mxShapeAws3dApplicationServer.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7236*c);a.lineTo(0,.2863*c);a.lineTo(.5*b,0);a.lineTo(b,.2863*c);a.lineTo(b,.7236*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
999mxShapeAws3dApplicationServer.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dApplicationServer.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(0,.2863*c);a.lineTo(.5*b,.5726*c);a.lineTo(.5*b,c);a.lineTo(0,.7177*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();
1000a.moveTo(b,.2863*c);a.lineTo(.5*b,.5726*c);a.lineTo(.5*b,c);a.lineTo(b,.7177*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.2863*c);a.lineTo(.5*b,.5726*c);a.lineTo(.5*b,c);a.lineTo(0,.7177*c);a.close();a.stroke();a.begin();a.moveTo(b,.2863*c);a.lineTo(.5*b,.5726*c);a.lineTo(.5*b,c);a.lineTo(b,.7177*c);a.close();a.stroke();a.setLineJoin("miter");d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.374*b,.4435*
1001c);a.arcTo(.0325*b,.0202*c,0,0,1,.374*b,.4153*c);a.lineTo(.4797*b,.3548*c);a.arcTo(.0325*b,.0161*c,0,0,1,.5203*b,.3548*c);a.lineTo(.626*b,.4153*c);a.arcTo(.0325*b,.0202*c,0,0,1,.626*b,.4411*c);a.lineTo(.5203*b,.5016*c);a.arcTo(.0325*b,.0161*c,0,0,1,.4797*b,.5016*c);a.close();a.fill();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7236*c);a.lineTo(0,.2863*c);a.lineTo(.5*b,0);a.lineTo(b,.2863*c);a.lineTo(b,.7236*c);a.lineTo(.5*b,c);a.close();a.stroke()};
1002mxCellRenderer.registerShape(mxShapeAws3dApplicationServer.prototype.cst.APPLICATION_SERVER,mxShapeAws3dApplicationServer);function mxShapeAws3dCloudFront(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dCloudFront,mxShape);mxShapeAws3dCloudFront.prototype.cst={CLOUDFRONT:"mxgraph.aws3d.cloudfront",SHADING_COLORS:"shadingCols"};
1003mxShapeAws3dCloudFront.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=d*b/103.8;d=d*c/169.8;var f=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(e,d);a.setShadow(!1);a.setStrokeWidth(d);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==f&&a.setShadow(!0);a.begin();a.moveTo(0,.7915*c);a.lineTo(0,.7491*c);a.lineTo(.0588*b,.7279*c);a.lineTo(.0588*b,
1004.1036*c);a.lineTo(.3526*b,0);a.lineTo(.9422*b,.2073*c);a.lineTo(.9422*b,.8316*c);a.lineTo(b,.8539*c);a.lineTo(b,.894*c);a.lineTo(.7013*b,c);a.lineTo(.5877*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dCloudFront.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(.0588*b,.106*c);a.lineTo(.6474*b,.3121*c);a.lineTo(.6474*
1005b,.9352*c);a.lineTo(.7052*b,c);a.lineTo(.5915*b,c);a.lineTo(0,.7915*c);a.lineTo(0,.7491*c);a.lineTo(.0588*b,.7279*c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(.6474*b,.3121*c);a.lineTo(.9422*b,.2073*c);a.lineTo(.9422*b,.8363*c);a.lineTo(b,.8539*c);a.lineTo(b,.894*c);a.lineTo(.7013*b,c);a.lineTo(.6474*b,.9305*c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.7915*c);a.lineTo(.0559*b,.7291*c);a.lineTo(.6474*b,.9364*c);a.lineTo(.5896*
1006b,c);a.moveTo(.6493*b,.9364*c);a.lineTo(.9412*b,.8333*c);a.lineTo(b,.894*c);a.stroke();a.begin();a.moveTo(.0588*b,.106*c);a.lineTo(.6474*b,.3121*c);a.lineTo(.6474*b,.9352*c);a.lineTo(.7052*b,c);a.lineTo(.5915*b,c);a.lineTo(0,.7915*c);a.lineTo(0,.7491*c);a.lineTo(.0588*b,.7279*c);a.close();a.stroke();a.begin();a.moveTo(.6474*b,.3121*c);a.lineTo(.9422*b,.2073*c);a.lineTo(.9422*b,.8363*c);a.lineTo(b,.8539*c);a.lineTo(b,.894*c);a.lineTo(.7013*b,c);a.lineTo(.6474*b,.9305*c);a.close();a.stroke();e=mxUtils.getValue(this.state.style,
1007"strokeColor","#000000");a.setFillColor(e);a.begin();a.moveTo(.3333*b,.6643*c);a.arcTo(.3372*b,.2061*c,0,0,1,.2351*b,.6042*c);a.arcTo(.4528*b,.2768*c,0,0,1,.1724*b,.523*c);a.lineTo(.2428*b,.5677*c);a.lineTo(.2427*b,.5895*c);a.lineTo(.2765*b,.5995*c);a.close();a.moveTo(.1599*b,.4935*c);a.arcTo(.3372*b,.2061*c,0,0,1,.1522*b,.4146*c);a.arcTo(.1156*b,.0883*c,0,0,1,.2071*b,.3486*c);a.lineTo(.2013*b,.4187*c);a.lineTo(.1859*b,.4146*c);a.lineTo(.1859*b,.4464*c);a.lineTo(.1907*b,.4493*c);a.close();a.moveTo(.2235*
1008b,.3445*c);a.arcTo(.1927*b,.1767*c,0,0,1,.368*b,.361*c);a.arcTo(.3854*b,.2356*c,0,0,1,.468*b,.4299*c);a.lineTo(.368*b,.4034*c);a.lineTo(.368*b,.394*c);a.lineTo(.3256*b,.3799*c);a.lineTo(.3256*b,.3887*c);a.close();a.moveTo(.4855*b,.4499*c);a.arcTo(.3854*b,.2356*c,0,0,1,.5337*b,.5395*c);a.arcTo(.3854*b,.2356*c,0,0,1,.5328*b,.6302*c);a.lineTo(.4952*b,.5589*c);a.lineTo(.5019*b,.5595*c);a.lineTo(.5019*b,.5265*c);a.lineTo(.4855*b,.5194*c);a.close();a.moveTo(.5241*b,.6455*c);a.arcTo(.0963*b,.0589*c,0,0,
10091,.4663*b,.682*c);a.arcTo(.1445*b,.0883*c,0,0,1,.3642*b,.6761*c);a.lineTo(.4239*b,.6525*c);a.lineTo(.4566*b,.6643*c);a.lineTo(.4566*b,.6413*c);a.close();a.moveTo(.3507*b,.6667*c);a.lineTo(.2871*b,.5919*c);a.lineTo(.4123*b,.6366*c);a.close();a.moveTo(.2563*b,.5595*c);a.lineTo(.1753*b,.5088*c);a.lineTo(.2052*b,.4594*c);a.close();a.moveTo(.2139*b,.4229*c);a.lineTo(.2197*b,.3528*c);a.lineTo(.3256*b,.4028*c);a.lineTo(.2283*b,.4252*c);a.close();a.moveTo(.2264*b,.4417*c);a.lineTo(.3218*b,.4146*c);a.lineTo(.3353*
1010b,.4181*c);a.lineTo(.3353*b,.4971*c);a.lineTo(.3208*b,.4912*c);a.lineTo(.3208*b,.4965*c);a.lineTo(.2264*b,.4482*c);a.close();a.moveTo(.2697*b,.5618*c);a.lineTo(.2245*b,.4635*c);a.lineTo(.2331*b,.4588*c);a.lineTo(.3256*b,.5112*c);a.lineTo(.3237*b,.5241*c);a.close();a.moveTo(.2852*b,.576*c);a.lineTo(.2852*b,.5654*c);a.lineTo(.3391*b,.53*c);a.lineTo(.3516*b,.5347*c);a.lineTo(.4133*b,.6213*c);a.close();a.moveTo(.368*b,.5141*c);a.lineTo(.368*b,.5088*c);a.lineTo(.3526*b,.5029*c);a.lineTo(.3526*b,.4234*
1011c);a.lineTo(.3622*b,.4276*c);a.lineTo(.4547*b,.5177*c);a.lineTo(.4557*b,.5277*c);a.close();a.moveTo(.3671*b,.417*c);a.lineTo(.4692*b,.4411*c);a.lineTo(.4721*b,.52*c);a.close();a.moveTo(.368*b,.5253*c);a.lineTo(.4566*b,.5359*c);a.lineTo(.4566*b,.5453*c);a.lineTo(.4663*b,.5465*c);a.lineTo(.4335*b,.6201*c);a.lineTo(.422*b,.616*c);a.lineTo(.368*b,.5389*c);a.close();a.moveTo(.4798*b,.5583*c);a.lineTo(.5183*b,.629*c);a.lineTo(.4557*b,.6313*c);a.lineTo(.4557*b,.6237*c);a.lineTo(.447*b,.6225*c);a.close();
1012a.fill();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7915*c);a.lineTo(0,.7491*c);a.lineTo(.0588*b,.7279*c);a.lineTo(.0588*b,.1036*c);a.lineTo(.3526*b,0);a.lineTo(.9422*b,.2073*c);a.lineTo(.9422*b,.8316*c);a.lineTo(b,.8539*c);a.lineTo(b,.894*c);a.lineTo(.7013*b,c);a.lineTo(.5877*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dCloudFront.prototype.cst.CLOUDFRONT,mxShapeAws3dCloudFront);
1013function mxShapeAws3dDataCenter(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dDataCenter,mxShape);mxShapeAws3dDataCenter.prototype.cst={DATA_CENTER:"mxgraph.aws3d.dataCenter",SHADING_COLORS:"shadingCols"};
1014mxShapeAws3dDataCenter.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=d*b/123;d=d*c/142;var f=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(e,d);a.setShadow(!1);a.setStrokeWidth(d);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==f&&a.setShadow(!0);a.begin();a.moveTo(0,.7465*c);a.lineTo(0,.25*c);a.lineTo(.5*b,0);a.lineTo(b,.25*c);a.lineTo(b,.7465*
1015c);a.lineTo(.5*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dDataCenter.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.7465*c);a.lineTo(0,.25*c);a.lineTo(.5*b,.5*c);a.lineTo(.5*b,c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(b,.7465*c);a.lineTo(b,.25*c);a.lineTo(.5*
1016b,.5*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.7465*c);a.lineTo(0,.25*c);a.lineTo(.5*b,.5*c);a.lineTo(.5*b,c);a.close();a.stroke();a.begin();a.moveTo(b,.7465*c);a.lineTo(b,.25*c);a.lineTo(.5*b,.5*c);a.lineTo(.5*b,c);a.close();a.stroke();a.setLineCap("round");a.setStrokeWidth(3*d);a.begin();a.moveTo(.0894*b,.3838*c);a.lineTo(.4187*b,.5493*c);a.moveTo(.0894*b,.4331*c);a.lineTo(.4187*b,.5986*c);a.moveTo(.0894*b,.4824*c);a.lineTo(.4187*b,.6479*c);
1017a.moveTo(.5854*b,.5493*c);a.lineTo(.9146*b,.3838*c);a.moveTo(.5854*b,.5986*c);a.lineTo(.9146*b,.4331*c);a.moveTo(.5854*b,.6479*c);a.lineTo(.9146*b,.4824*c);a.stroke();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7465*c);a.lineTo(0,.25*c);a.lineTo(.5*b,0);a.lineTo(b,.25*c);a.lineTo(b,.7465*c);a.lineTo(.5*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dDataCenter.prototype.cst.DATA_CENTER,mxShapeAws3dDataCenter);
1018function mxShapeAws3dDataServer(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dDataServer,mxShape);mxShapeAws3dDataServer.prototype.cst={DATA_SERVER:"mxgraph.aws3d.dataServer",SHADING_COLORS:"shadingCols"};
1019mxShapeAws3dDataServer.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=d*b/123;d=d*c/106;var f=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(e,d);a.setShadow(!1);a.setStrokeWidth(d);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==f&&a.setShadow(!0);a.begin();a.moveTo(0,.6651*c);a.lineTo(0,.3349*c);a.lineTo(.5*b,0);a.lineTo(b,.3349*c);a.lineTo(b,
1020.6651*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dDataServer.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.6651*c);a.lineTo(0,.3349*c);a.lineTo(.5*b,.6698*c);a.lineTo(.5*b,c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(b,.6651*c);a.lineTo(b,.3349*c);
1021a.lineTo(.5*b,.6698*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.6651*c);a.lineTo(0,.3349*c);a.lineTo(.5*b,.6698*c);a.lineTo(.5*b,c);a.close();a.stroke();a.begin();a.moveTo(b,.6651*c);a.lineTo(b,.3349*c);a.lineTo(.5*b,.6698*c);a.lineTo(.5*b,c);a.close();a.stroke();a.setLineCap("round");a.setStrokeWidth(3*d);a.begin();a.moveTo(.0878*b,.4858*c);a.lineTo(.4187*b,.7094*c);a.moveTo(.587*b,.7094*c);a.lineTo(.9187*b,.4858*c);a.stroke();a.setStrokeWidth(2*
1022d);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.6651*c);a.lineTo(0,.3349*c);a.lineTo(.5*b,0);a.lineTo(b,.3349*c);a.lineTo(b,.6651*c);a.lineTo(.5*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dDataServer.prototype.cst.DATA_SERVER,mxShapeAws3dDataServer);function mxShapeAws3dElasticLoadBalancing(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dElasticLoadBalancing,mxShape);
1023mxShapeAws3dElasticLoadBalancing.prototype.cst={ELASTIC_LOAD_BALANCING:"mxgraph.aws3d.elasticLoadBalancing",SHADING_COLORS:"shadingCols"};
1024mxShapeAws3dElasticLoadBalancing.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);e=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));var f=e*b/92;e=e*c/88.17;d=mxUtils.getValue(this.state.style,"strokeColor","#000000");var g=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));e=Math.min(f,e);a.setShadow(!1);a.setStrokeWidth(e);a.save();a.save();a.save();a.save();a.setStrokeWidth(2*e);a.setStrokeColor("#292929");a.setLineJoin("round");1==g&&a.setShadow(!0);a.begin();
1025a.moveTo(0,.7996*c);a.lineTo(0,.1985*c);a.lineTo(.3315*b,0);a.lineTo(.6685*b,0);a.lineTo(b,.1985*c);a.lineTo(b,.7996*c);a.lineTo(.6685*b,c);a.lineTo(.3315*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");f=mxUtils.getValue(this.state.style,mxShapeAws3dElasticLoadBalancing.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");g=mxUtils.getValue(this.state.style,"flipH","0");"0"==g?a.setAlpha(f[0]):a.setAlpha(f[1]);a.begin();a.moveTo(0,.4026*c);a.lineTo(.3315*b,.6011*c);
1026a.lineTo(.6685*b,.6011*c);a.lineTo(.6685*b,c);a.lineTo(.3315*b,c);a.lineTo(0,.7996*c);a.close();a.fill();"0"==g?a.setAlpha(f[1]):a.setAlpha(f[0]);a.begin();a.moveTo(.6685*b,.6011*c);a.lineTo(b,.4026*c);a.lineTo(b,.7996*c);a.lineTo(.6685*b,c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.4026*c);a.lineTo(.3315*b,.6011*c);a.lineTo(.6685*b,.6011*c);a.lineTo(.6685*b,c);a.lineTo(.3315*b,c);a.lineTo(0,.7996*c);a.close();a.stroke();a.begin();a.moveTo(.6685*b,.6011*c);a.lineTo(b,
1027.4026*c);a.lineTo(b,.7996*c);a.lineTo(.6685*b,c);a.close();a.moveTo(.3315*b,.6011*c);a.lineTo(.3315*b,c);a.stroke();a.restore();a.setFillColor(d);a.begin();a.moveTo(.337*b,.1395*c);a.arcTo(.3043*b,.1928*c,0,0,1,.5*b,.1191*c);a.arcTo(.3043*b,.1928*c,0,0,1,.6739*b,.1645*c);a.arcTo(.3261*b,.2155*c,0,0,1,.8152*b,.3176*c);a.arcTo(.3261*b,.1701*c,0,0,1,.75*b,.4367*c);a.arcTo(.3261*b,.3403*c,0,0,1,.6033*b,.4854*c);a.arcTo(.3261*b,.2268*c,0,0,1,.4348*b,.4741*c);a.arcTo(.3261*b,.2268*c,0,0,1,.2848*b,.4094*
1028c);a.arcTo(.3261*b,.2268*c,0,0,1,.2065*b,.3062*c);a.arcTo(.3261*b,.1701*c,0,0,1,.2446*b,.1928*c);a.arcTo(.2717*b,.1701*c,0,0,1,.337*b,.1395*c);a.fill();a.restore();a.begin();a.moveTo(.2826*b,.372*c);a.lineTo(.362*b,.3232*c);a.lineTo(.4054*b,.3482*c);a.lineTo(.4457*b,.2654*c);a.lineTo(.4185*b,.2643*c);a.lineTo(.4728*b,.2132*c);a.lineTo(.4348*b,.1928*c);a.lineTo(.5141*b,.144*c);a.lineTo(.5837*b,.1883*c);a.lineTo(.5043*b,.2348*c);a.lineTo(.4848*b,.2223*c);a.lineTo(.4967*b,.2688*c);a.lineTo(.463*b,.2665*
1029c);a.lineTo(.4304*b,.3346*c);a.lineTo(.4946*b,.2949*c);a.lineTo(.4761*b,.2858*c);a.lineTo(.5511*b,.2631*c);a.lineTo(.5261*b,.2472*c);a.lineTo(.6043*b,.1996*c);a.lineTo(.6761*b,.2404*c);a.lineTo(.5978*b,.2892*c);a.lineTo(.5652*b,.2699*c);a.lineTo(.5293*b,.3198*c);a.lineTo(.5087*b,.3051*c);a.lineTo(.4543*b,.3391*c);a.lineTo(.563*b,.3221*c);a.lineTo(.5598*b,.3017*c);a.lineTo(.6326*b,.3096*c);a.lineTo(.6163*b,.2994*c);a.lineTo(.6957*b,.2529*c);a.lineTo(.7674*b,.2938*c);a.lineTo(.687*b,.3425*c);a.lineTo(.6489*
1030b,.321*c);a.lineTo(.5707*b,.3539*c);a.lineTo(.5674*b,.3369*c);a.lineTo(.4293*b,.3618*c);a.lineTo(.4641*b,.3834*c);a.lineTo(.3859*b,.4299*c);a.close();a.fill();a.setStrokeWidth(2*e);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7996*c);a.lineTo(0,.1985*c);a.lineTo(.3315*b,0);a.lineTo(.6685*b,0);a.lineTo(b,.1985*c);a.lineTo(b,.7996*c);a.lineTo(.6685*b,c);a.lineTo(.3315*b,c);a.close();a.stroke()};
1031mxCellRenderer.registerShape(mxShapeAws3dElasticLoadBalancing.prototype.cst.ELASTIC_LOAD_BALANCING,mxShapeAws3dElasticLoadBalancing);function mxShapeAws3dInstance(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dInstance,mxShape);mxShapeAws3dInstance.prototype.cst={INSTANCE:"mxgraph.aws3d.instance",SHADING_COLORS:"shadingCols"};
1032mxShapeAws3dInstance.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/97);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1033mxShapeAws3dInstance.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.634*c);a.lineTo(0,.2732*c);a.lineTo(.374*b,0);a.lineTo(.622*b,0);a.lineTo(b,.2732*c);a.lineTo(b,.634*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1034mxShapeAws3dInstance.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dInstance.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(0,.2732*c);a.lineTo(.5*b,.6392*c);a.lineTo(.5*b,c);a.lineTo(0,.634*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.5*b,.6392*
1035c);a.lineTo(b,.2732*c);a.lineTo(b,.6392*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.2732*c);a.lineTo(.5*b,.6392*c);a.lineTo(.5*b,c);a.lineTo(0,.634*c);a.close();a.stroke();a.begin();a.moveTo(.5*b,.6392*c);a.lineTo(b,.2732*c);a.lineTo(b,.6392*c);a.lineTo(.5*b,c);a.close();a.stroke();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.374*b,.4742*c);a.arcTo(.0325*b,.0258*c,0,0,1,.374*b,
1036.4381*c);a.lineTo(.4797*b,.3608*c);a.arcTo(.0325*b,.0206*c,0,0,1,.5203*b,.3608*c);a.lineTo(.626*b,.4381*c);a.arcTo(.0325*b,.0258*c,0,0,1,.626*b,.4711*c);a.lineTo(.5203*b,.5485*c);a.arcTo(.0325*b,.0206*c,0,0,1,.4797*b,.5485*c);a.close();a.fill();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.634*c);a.lineTo(0,.2732*c);a.lineTo(.374*b,0);a.lineTo(.622*b,0);a.lineTo(b,.2732*c);a.lineTo(b,.634*c);a.lineTo(.5*b,c);a.close();a.stroke()};
1037mxCellRenderer.registerShape(mxShapeAws3dInstance.prototype.cst.INSTANCE,mxShapeAws3dInstance);function mxShapeAws3dInternetGateway(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dInternetGateway,mxShape);mxShapeAws3dInternetGateway.prototype.cst={INTERNET_GATEWAY:"mxgraph.aws3d.internetGateway",SHADING_COLORS:"shadingCols"};
1038mxShapeAws3dInternetGateway.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/116.7,d*c/102.8);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1039mxShapeAws3dInternetGateway.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(.4199*b,.5447*c);a.lineTo(.4199*b,.035*c);a.lineTo(.8946*b,0);a.lineTo(b,.0691*c);a.lineTo(b,.4134*c);a.lineTo(.6812*b,.7247*c);a.close();a.fillAndStroke();a.restore();a.save();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dInternetGateway.prototype.cst.SHADING_COLORS,
1040"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.4199*b,.5447*c);a.lineTo(.4199*b,.035*c);a.lineTo(.6838*b,.2072*c);a.lineTo(.6838*b,.7247*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.6838*b,.2072*c);a.lineTo(b,.0691*c);a.lineTo(b,.4134*c);a.lineTo(.6838*b,.7247*c);a.close();a.fill();a.restore();a.setShadow(!1);a.begin();a.moveTo(.4199*b,.5447*c);a.lineTo(.4199*b,.035*
1041c);a.lineTo(.6838*b,.2072*c);a.lineTo(.6838*b,.7247*c);a.close();a.stroke();a.restore();a.setLineJoin("round");a.setShadow(!1);a.begin();a.moveTo(.6838*b,.2072*c);a.lineTo(b,.0691*c);a.lineTo(b,.4134*c);a.lineTo(.6838*b,.7247*c);a.close();a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(.4199*b,.5447*c);a.lineTo(.4199*b,.035*c);a.lineTo(.8946*b,0);a.lineTo(b,.0691*c);a.lineTo(b,.4134*c);a.lineTo(.6812*b,.7247*c);a.close();a.stroke();a.restore();a.setStrokeWidth(2*f);
1042a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.929*c);a.lineTo(0,.5866*c);a.lineTo(.3171*b,.1031*c);a.lineTo(.5784*b,.2753*c);a.lineTo(.5784*b,.7928*c);a.lineTo(.1054*b,c);a.close();a.fillAndStroke()};
1043mxShapeAws3dInternetGateway.prototype.foreground=function(a,d,e,b,c,f){a.restore();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setShadow(!1);a.setLineJoin("round");a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dInternetGateway.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");var g=mxUtils.getValue(this.state.style,"flipH","0");"0"==g?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.929*c);a.lineTo(0,.5866*c);a.lineTo(.1054*b,.6537*
1044c);a.lineTo(.1054*b,c);a.close();a.fill();"0"==g?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(.1054*b,c);a.lineTo(.1054*b,.6537*c);a.lineTo(.5784*b,.2753*c);a.lineTo(.5784*b,.7928*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.929*c);a.lineTo(0,.5866*c);a.lineTo(.1054*b,.6537*c);a.lineTo(.1054*b,c);a.close();a.stroke();a.begin();a.moveTo(.1054*b,c);a.lineTo(.1054*b,.6537*c);a.lineTo(.5784*b,.2753*c);a.lineTo(.5784*b,.7928*c);a.close();a.stroke();
1045a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.929*c);a.lineTo(0,.5866*c);a.lineTo(.3171*b,.1031*c);a.lineTo(.5784*b,.2753*c);a.lineTo(.5784*b,.7928*c);a.lineTo(.1054*b,c);a.close();a.stroke();a.setFillColor(d);a.begin();a.moveTo(.7849*b,.5039*c);a.arcTo(.0343*b,.0632*c,0,0,1,.7481*b,.4796*c);a.arcTo(.0857*b,.0973*c,0,0,1,.7661*b,.3911*c);a.arcTo(.06*b,.0681*c,0,0,1,.7712*b,.3356*c);a.arcTo(.0257*b,.0292*c,0,0,1,.7952*b,.32*c);a.arcTo(.1285*b,.1459*
1046c,0,0,1,.8166*b,.2461*c);a.arcTo(.06*b,.0973*c,0,0,1,.8595*b,.2238*c);a.arcTo(.0514*b,.0973*c,0,0,1,.8937*b,.2743*c);a.arcTo(.0428*b,.0778*c,0,0,1,.9323*b,.3093*c);a.arcTo(.0686*b,.0778*c,0,0,1,.928*b,.3716*c);a.arcTo(.0857*b,.0973*c,0,0,1,.8972*b,.4125*c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeAws3dInternetGateway.prototype.cst.INTERNET_GATEWAY,mxShapeAws3dInternetGateway);
1047function mxShapeAws3dOracleDataCenter(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dOracleDataCenter,mxShape);mxShapeAws3dOracleDataCenter.prototype.cst={ORACLE_DATA_CENTER:"mxgraph.aws3d.oracleDataCenter"};
1048mxShapeAws3dOracleDataCenter.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/142);a.setStrokeWidth(d);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1049mxShapeAws3dOracleDataCenter.prototype.background=function(a,d,e,b,c,f){a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7464*c);a.lineTo(0,.25*c);a.lineTo(.5*b,0);a.lineTo(b,.25*c);a.lineTo(b,.7464*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1050mxShapeAws3dOracleDataCenter.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");a.setAlpha("0.1");a.begin();a.moveTo(0,.7464*c);a.lineTo(0,.25*c);a.lineTo(.5*b,.5*c);a.lineTo(.5*b,c);a.close();a.fill();a.setAlpha("0.3");a.begin();a.moveTo(.5*b,.5*c);a.lineTo(b,.25*c);a.lineTo(b,.7464*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.setFillColor("#ff0000");a.begin();a.moveTo(0,.5866*c);a.lineTo(.5*b,.8359*c);a.lineTo(b,
1051.5866*c);a.lineTo(b,.6986*c);a.lineTo(.5*b,.9486*c);a.lineTo(0,.6986*c);a.fill();a.setStrokeWidth(.5*f);a.setStrokeColor("#ffffff");a.setFillColor("#ffffff");a.begin();a.moveTo(0,.5866*c);a.lineTo(.5*b,.8359*c);a.lineTo(b,.5866*c);a.moveTo(b,.6986*c);a.lineTo(.5*b,.9486*c);a.lineTo(0,.6986*c);a.stroke();a.begin();a.moveTo(.0813*b,.7113*c);a.arcTo(.0569*b,.0493*c,0,0,1,.065*b,.6831*c);a.arcTo(.065*b,.0563*c,0,0,1,.065*b,.6613*c);a.arcTo(.0163*b,.0141*c,0,0,1,.0797*b,.6549*c);a.lineTo(.122*b,.6754*
1052c);a.arcTo(.065*b,.0563*c,0,0,1,.1358*b,.6937*c);a.arcTo(.065*b,.0563*c,0,0,1,.139*b,.7232*c);a.arcTo(.0179*b,.0155*c,0,0,1,.1187*b,.7296*c);a.close();a.moveTo(.1163*b,.7183*c);a.arcTo(.0089*b,.0077*c,0,0,0,.1285*b,.7148*c);a.arcTo(.0407*b,.0352*c,0,0,0,.1293*b,.7021*c);a.arcTo(.0407*b,.0352*c,0,0,0,.1179*b,.6831*c);a.lineTo(.087*b,.6676*c);a.arcTo(.0081*b,.007*c,0,0,0,.0764*b,.6697*c);a.arcTo(.0325*b,.0352*c,0,0,0,.078*b,.6937*c);a.arcTo(.0407*b,.0352*c,0,0,0,.087*b,.7035*c);a.close();a.moveTo(.1439*
1053b,.743*c);a.lineTo(.1439*b,.6866*c);a.lineTo(.1846*b,.707*c);a.arcTo(.0407*b,.0352*c,0,0,1,.1967*b,.7183*c);a.arcTo(.0407*b,.0352*c,0,0,1,.2*b,.738*c);a.arcTo(.0138*b,.0155*c,0,0,1,.1813*b,.743*c);a.lineTo(.1992*b,.769*c);a.lineTo(.187*b,.7641*c);a.lineTo(.1577*b,.7218*c);a.lineTo(.1854*b,.7345*c);a.arcTo(.0041*b,.0035*c,0,0,0,.1911*b,.7317*c);a.arcTo(.0163*b,.0141*c,0,0,0,.1894*b,.7225*c);a.arcTo(.0325*b,.0282*c,0,0,0,.1821*b,.7155*c);a.lineTo(.1528*b,.7007*c);a.lineTo(.1528*b,.7472*c);a.close();
1054a.moveTo(.2008*b,.7711*c);a.lineTo(.2293*b,.7338*c);a.arcTo(.0065*b,.0056*c,0,0,1,.2382*b,.7324*c);a.arcTo(.0407*b,.0352*c,0,0,1,.2431*b,.7415*c);a.lineTo(.2699*b,.8035*c);a.lineTo(.2602*b,.8007*c);a.lineTo(.252*b,.7859*c);a.lineTo(.2293*b,.7754*c);a.lineTo(.2244*b,.7634*c);a.lineTo(.248*b,.7739*c);a.lineTo(.235*b,.7444*c);a.lineTo(.2122*b,.7768*c);a.close();a.moveTo(.3244*b,.8225*c);a.lineTo(.3171*b,.8289*c);a.lineTo(.2854*b,.8127*c);a.arcTo(.0407*b,.0352*c,0,0,1,.2724*b,.7986*c);a.arcTo(.0569*b,
1055.0493*c,0,0,1,.265*b,.7746*c);a.arcTo(.0407*b,.0352*c,0,0,1,.2683*b,.762*c);a.arcTo(.0163*b,.0141*c,0,0,1,.2829*b,.757*c);a.lineTo(.3228*b,.7761*c);a.lineTo(.3179*b,.7831*c);a.lineTo(.2878*b,.7683*c);a.arcTo(.0081*b,.007*c,0,0,0,.2789*b,.7697*c);a.arcTo(.0244*b,.0211*c,0,0,0,.2748*b,.7831*c);a.arcTo(.0407*b,.0352*c,0,0,0,.2878*b,.8042*c);a.close();a.moveTo(.3276*b,.7789*c);a.lineTo(.3366*b,.7831*c);a.lineTo(.3366*b,.8289*c);a.lineTo(.3805*b,.8507*c);a.lineTo(.3748*b,.857*c);a.lineTo(.3317*b,.8359*
1056c);a.arcTo(.0163*b,.0141*c,0,0,1,.3276*b,.8275*c);a.close();a.moveTo(.435*b,.8775*c);a.lineTo(.4325*b,.8866*c);a.lineTo(.3959*b,.8683*c);a.arcTo(.0407*b,.0352*c,0,0,1,.3862*b,.8563*c);a.arcTo(.0528*b,.0458*c,0,0,1,.3805*b,.8183*c);a.arcTo(.0163*b,.0141*c,0,0,1,.3951*b,.8134*c);a.lineTo(.435*b,.8324*c);a.lineTo(.4285*b,.838*c);a.lineTo(.4008*b,.8246*c);a.arcTo(.0098*b,.0085*c,0,0,0,.3878*b,.831*c);a.lineTo(.4333*b,.8542*c);a.lineTo(.426*b,.8606*c);a.lineTo(.3878*b,.8415*c);a.arcTo(.0325*b,.0282*c,
10570,0,0,.3976*b,.8585*c);a.close();a.moveTo(.6171*b,.8063*c);a.arcTo(.0163*b,.0141*c,0,0,1,.6366*b,.8092*c);a.arcTo(.0325*b,.0282*c,0,0,1,.639*b,.8303*c);a.arcTo(.065*b,.0563*c,0,0,1,.6211*b,.8592*c);a.lineTo(.5894*b,.8761*c);a.arcTo(.0203*b,.0176*c,0,0,1,.565*b,.8732*c);a.arcTo(.0407*b,.0352*c,0,0,1,.5659*b,.8458*c);a.arcTo(.0488*b,.0422*c,0,0,1,.5805*b,.8246*c);a.close();a.moveTo(.5886*b,.8296*c);a.arcTo(.0325*b,.0282*c,0,0,0,.5748*b,.8472*c);a.arcTo(.0325*b,.0282*c,0,0,0,.574*b,.862*c);a.arcTo(.0098*
1058b,.0085*c,0,0,0,.587*b,.8676*c);a.lineTo(.6163*b,.8528*c);a.arcTo(.0407*b,.0352*c,0,0,0,.6285*b,.8359*c);a.arcTo(.0244*b,.0211*c,0,0,0,.6293*b,.8225*c);a.arcTo(.0098*b,.0085*c,0,0,0,.6163*b,.8155*c);a.close();a.moveTo(.64*b,.85*c);a.lineTo(.64*b,.793*c);a.lineTo(.6854*b,.7718*c);a.arcTo(.0106*b,.0092*c,0,0,1,.7008*b,.7782*c);a.arcTo(.0407*b,.0352*c,0,0,1,.6959*b,.8*c);a.arcTo(.0407*b,.0352*c,0,0,1,.6805*b,.8127*c);a.lineTo(.6992*b,.8218*c);a.lineTo(.6854*b,.8282*c);a.lineTo(.6569*b,.8141*c);a.lineTo(.6805*
1059b,.8021*c);a.arcTo(.0203*b,.0176*c,0,0,0,.6894*b,.7923*c);a.arcTo(.0244*b,.0211*c,0,0,0,.6894*b,.7845*c);a.arcTo(.0041*b,.0035*c,0,0,0,.6837*b,.7831*c);a.lineTo(.6528*b,.7979*c);a.lineTo(.6528*b,.8437*c);a.close();a.moveTo(.7*b,.8204*c);a.lineTo(.7301*b,.7507*c);a.arcTo(.0098*b,.0085*c,0,0,1,.7358*b,.7444*c);a.arcTo(.0098*b,.0085*c,0,0,1,.7415*b,.7486*c);a.lineTo(.7699*b,.7852*c);a.lineTo(.7602*b,.7908*c);a.lineTo(.7537*b,.7838*c);a.lineTo(.7276*b,.7958*c);a.lineTo(.7228*b,.788*c);a.lineTo(.748*b,
1060.7768*c);a.lineTo(.7358*b,.7585*c);a.lineTo(.7114*b,.8155*c);a.close();a.moveTo(.8244*b,.7486*c);a.lineTo(.8171*b,.762*c);a.lineTo(.7894*b,.7761*c);a.arcTo(.0244*b,.0211*c,0,0,1,.7683*b,.7746*c);a.arcTo(.0407*b,.0352*c,0,0,1,.7667*b,.7507*c);a.arcTo(.0488*b,.0423*c,0,0,1,.7937*b,.7162*c);a.lineTo(.822*b,.7035*c);a.lineTo(.8171*b,.7155*c);a.lineTo(.7902*b,.7296*c);a.arcTo(.0325*b,.0282*c,0,0,0,.778*b,.743*c);a.arcTo(.0407*b,.0352*c,0,0,0,.7756*b,.7606*c);a.arcTo(.0077*b,.0067*c,0,0,0,.787*b,.767*c);
1061a.close();a.moveTo(.8366*b,.6949*c);a.lineTo(.8366*b,.7423*c);a.lineTo(.878*b,.7231*c);a.lineTo(.874*b,.7338*c);a.lineTo(.8333*b,.7535*c);a.arcTo(.0041*b,.0035*c,0,0,1,.8268*b,.75*c);a.lineTo(.8268*b,.7007*c);a.close();a.moveTo(.9342*b,.6472*c);a.lineTo(.9293*b,.6599*c);a.lineTo(.9033*b,.6725*c);a.arcTo(.0325*b,.0282*c,0,0,0,.8927*b,.6817*c);a.arcTo(.0406*b,.0352*c,0,0,0,.887*b,.6937*c);a.lineTo(.9309*b,.6725*c);a.lineTo(.9268*b,.6845*c);a.lineTo(.887*b,.7035*c);a.arcTo(.0089*b,.0077*c,0,0,0,.8992*
1062b,.7106*c);a.lineTo(.935*b,.693*c);a.lineTo(.9285*b,.7063*c);a.lineTo(.9008*b,.7197*c);a.arcTo(.0163*b,.0141*c,0,0,1,.8829*b,.7204*c);a.arcTo(.0407*b,.0352*c,0,0,1,.8764*b,.7028*c);a.arcTo(.065*b,.0563*c,0,0,1,.8959*b,.6669*c);a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.7464*c);a.lineTo(0,.25*c);a.lineTo(.5*b,.5*c);a.lineTo(.5*b,c);a.close();a.stroke();a.begin();a.moveTo(.5*b,.5*c);a.lineTo(b,.25*c);a.lineTo(b,.7464*c);a.lineTo(.5*b,c);a.close();a.stroke();a.setStrokeWidth(2*
1063f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7464*c);a.lineTo(0,.25*c);a.lineTo(.5*b,0);a.lineTo(b,.25*c);a.lineTo(b,.7464*c);a.lineTo(.5*b,c);a.close();a.stroke();a.restore();a.setShadow(!1);a.setStrokeWidth(3*f);a.setLineCap("round");a.begin();a.moveTo(.0894*b,.3838*c);a.lineTo(.4187*b,.5493*c);a.moveTo(.0894*b,.4331*c);a.lineTo(.4187*b,.5986*c);a.moveTo(.0894*b,.4824*c);a.lineTo(.4187*b,.6479*c);a.moveTo(.5854*b,.5492*c);a.lineTo(.9146*b,.3838*c);a.moveTo(.5854*b,
1064.5986*c);a.lineTo(.9146*b,.4331*c);a.moveTo(.5854*b,.6479*c);a.lineTo(.9146*b,.4824*c);a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dOracleDataCenter.prototype.cst.ORACLE_DATA_CENTER,mxShapeAws3dOracleDataCenter);function mxShapeAws3dOracleDatabaseServer(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dOracleDatabaseServer,mxShape);mxShapeAws3dOracleDatabaseServer.prototype.cst={ORACLE_DB_SERVER:"mxgraph.aws3d.oracleDbServer"};
1065mxShapeAws3dOracleDatabaseServer.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/142);a.setStrokeWidth(d);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1066mxShapeAws3dOracleDatabaseServer.prototype.background=function(a,d,e,b,c,f){a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1067mxShapeAws3dOracleDatabaseServer.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");a.setAlpha("0.1");a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.lineTo(0,.7331*c);a.lineTo(0,.3346*c);a.close();a.moveTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3308*c);a.fill();a.setAlpha("0.3");a.begin();a.moveTo(.5*b,c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*
1068b,.267*c);a.lineTo(b,.3308*c);a.lineTo(b,.7331*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.setFillColor("#ff0000");a.begin();a.moveTo(0,.5586*c);a.lineTo(.5*b,.8248*c);a.lineTo(b,.5586*c);a.lineTo(b,.6782*c);a.lineTo(.5*b,.9453*c);a.lineTo(0,.6782*c);a.fill();a.setStrokeWidth(.5*f);a.setStrokeColor("#ffffff");a.setFillColor("#ffffff");a.begin();a.moveTo(0,.5586*c);a.lineTo(.5*b,.8248*c);a.lineTo(b,.5586*c);a.moveTo(b,.6782*c);a.lineTo(.5*b,.9453*c);a.lineTo(0,.6782*
1069c);a.stroke();a.begin();a.moveTo(.0813*b,.6918*c);a.arcTo(.0569*b,.0526*c,0,0,1,.065*b,.6616*c);a.arcTo(.065*b,.0601*c,0,0,1,.065*b,.6384*c);a.arcTo(.0163*b,.0151*c,0,0,1,.0797*b,.6315*c);a.lineTo(.122*b,.6534*c);a.arcTo(.065*b,.0601*c,0,0,1,.1358*b,.673*c);a.arcTo(.065*b,.0601*c,0,0,1,.139*b,.7045*c);a.arcTo(.0179*b,.0165*c,0,0,1,.1187*b,.7113*c);a.close();a.moveTo(.1163*b,.6992*c);a.arcTo(.0089*b,.0082*c,0,0,0,.1285*b,.6955*c);a.arcTo(.0407*b,.0376*c,0,0,0,.1293*b,.6819*c);a.arcTo(.0407*b,.0376*
1070c,0,0,0,.1179*b,.6616*c);a.lineTo(.087*b,.6451*c);a.arcTo(.0081*b,.0075*c,0,0,0,.0764*b,.6473*c);a.arcTo(.0325*b,.0376*c,0,0,0,.078*b,.673*c);a.arcTo(.0407*b,.0376*c,0,0,0,.087*b,.6834*c);a.close();a.moveTo(.1439*b,.7256*c);a.lineTo(.1439*b,.6654*c);a.lineTo(.1846*b,.6872*c);a.arcTo(.0407*b,.0376*c,0,0,1,.1967*b,.6992*c);a.arcTo(.0407*b,.0376*c,0,0,1,.2*b,.7203*c);a.arcTo(.0138*b,.0165*c,0,0,1,.1813*b,.7256*c);a.lineTo(.1992*b,.7534*c);a.lineTo(.187*b,.7481*c);a.lineTo(.1577*b,.7029*c);a.lineTo(.1854*
1071b,.7165*c);a.arcTo(.0041*b,.0037*c,0,0,0,.1911*b,.7135*c);a.arcTo(.0163*b,.0151*c,0,0,0,.1894*b,.7037*c);a.arcTo(.0325*b,.0301*c,0,0,0,.1821*b,.6962*c);a.lineTo(.1528*b,.6804*c);a.lineTo(.1528*b,.7301*c);a.close();a.moveTo(.2008*b,.7556*c);a.lineTo(.2293*b,.7158*c);a.arcTo(.0065*b,.006*c,0,0,1,.2382*b,.7143*c);a.arcTo(.0407*b,.0376*c,0,0,1,.2431*b,.724*c);a.lineTo(.2699*b,.7902*c);a.lineTo(.2602*b,.7872*c);a.lineTo(.252*b,.7714*c);a.lineTo(.2293*b,.7602*c);a.lineTo(.2244*b,.7474*c);a.lineTo(.248*
1072b,.7586*c);a.lineTo(.235*b,.7271*c);a.lineTo(.2122*b,.7617*c);a.close();a.moveTo(.3244*b,.8105*c);a.lineTo(.3171*b,.8173*c);a.lineTo(.2854*b,.8*c);a.arcTo(.0407*b,.0376*c,0,0,1,.2724*b,.785*c);a.arcTo(.0569*b,.0526*c,0,0,1,.265*b,.7593*c);a.arcTo(.0407*b,.0376*c,0,0,1,.2683*b,.7459*c);a.arcTo(.0163*b,.0151*c,0,0,1,.2829*b,.7405*c);a.lineTo(.3228*b,.7609*c);a.lineTo(.3179*b,.7684*c);a.lineTo(.2878*b,.7526*c);a.arcTo(.0081*b,.0075*c,0,0,0,.2789*b,.7541*c);a.arcTo(.0244*b,.0225*c,0,0,0,.2748*b,.7684*
1073c);a.arcTo(.0407*b,.0376*c,0,0,0,.2878*b,.7909*c);a.close();a.moveTo(.3276*b,.7639*c);a.lineTo(.3366*b,.7684*c);a.lineTo(.3366*b,.8173*c);a.lineTo(.3805*b,.8406*c);a.lineTo(.3748*b,.8473*c);a.lineTo(.3317*b,.8248*c);a.arcTo(.0163*b,.0151*c,0,0,1,.3276*b,.8158*c);a.close();a.moveTo(.435*b,.8692*c);a.lineTo(.4325*b,.8789*c);a.lineTo(.3959*b,.8594*c);a.arcTo(.0407*b,.0376*c,0,0,1,.3862*b,.8466*c);a.arcTo(.0528*b,.0489*c,0,0,1,.3805*b,.806*c);a.arcTo(.0163*b,.0151*c,0,0,1,.3951*b,.8008*c);a.lineTo(.435*
1074b,.821*c);a.lineTo(.4285*b,.827*c);a.lineTo(.4008*b,.8127*c);a.arcTo(.0098*b,.0091*c,0,0,0,.3878*b,.8196*c);a.lineTo(.4333*b,.8443*c);a.lineTo(.426*b,.8512*c);a.lineTo(.3878*b,.8308*c);a.arcTo(.0325*b,.0301*c,0,0,0,.3976*b,.8489*c);a.close();a.moveTo(.6171*b,.7932*c);a.arcTo(.0163*b,.0151*c,0,0,1,.6366*b,.7963*c);a.arcTo(.0325*b,.0301*c,0,0,1,.639*b,.8188*c);a.arcTo(.065*b,.0601*c,0,0,1,.6211*b,.8497*c);a.lineTo(.5894*b,.8677*c);a.arcTo(.0203*b,.0188*c,0,0,1,.565*b,.8646*c);a.arcTo(.0407*b,.0376*
1075c,0,0,1,.5659*b,.8354*c);a.arcTo(.0488*b,.0451*c,0,0,1,.5805*b,.8127*c);a.close();a.moveTo(.5886*b,.8181*c);a.arcTo(.0325*b,.0301*c,0,0,0,.5748*b,.8368*c);a.arcTo(.0325*b,.0301*c,0,0,0,.574*b,.8527*c);a.arcTo(.0098*b,.0091*c,0,0,0,.587*b,.8586*c);a.lineTo(.6163*b,.8428*c);a.arcTo(.0407*b,.0376*c,0,0,0,.6285*b,.8248*c);a.arcTo(.0244*b,.0225*c,0,0,0,.6293*b,.8105*c);a.arcTo(.0098*b,.0091*c,0,0,0,.6163*b,.803*c);a.close();a.moveTo(.64*b,.8398*c);a.lineTo(.64*b,.779*c);a.lineTo(.6854*b,.7563*c);a.arcTo(.0106*
1076b,.0098*c,0,0,1,.7008*b,.7632*c);a.arcTo(.0407*b,.0376*c,0,0,1,.6959*b,.7865*c);a.arcTo(.0407*b,.0376*c,0,0,1,.6805*b,.8*c);a.lineTo(.6992*b,.8097*c);a.lineTo(.6854*b,.8166*c);a.lineTo(.6569*b,.8015*c);a.lineTo(.6805*b,.7887*c);a.arcTo(.0203*b,.0188*c,0,0,0,.6894*b,.7782*c);a.arcTo(.0244*b,.0225*c,0,0,0,.6894*b,.7699*c);a.arcTo(.0041*b,.0037*c,0,0,0,.6837*b,.7684*c);a.lineTo(.6528*b,.7842*c);a.lineTo(.6528*b,.8331*c);a.close();a.moveTo(.7*b,.8082*c);a.lineTo(.7301*b,.7338*c);a.arcTo(.0098*b,.0091*
1077c,0,0,1,.7358*b,.7271*c);a.arcTo(.0098*b,.0091*c,0,0,1,.7415*b,.7316*c);a.lineTo(.7699*b,.7707*c);a.lineTo(.7602*b,.7766*c);a.lineTo(.7537*b,.7692*c);a.lineTo(.7276*b,.782*c);a.lineTo(.7228*b,.7736*c);a.lineTo(.748*b,.7617*c);a.lineTo(.7358*b,.7421*c);a.lineTo(.7114*b,.803*c);a.close();a.moveTo(.8244*b,.7316*c);a.lineTo(.8171*b,.7459*c);a.lineTo(.7894*b,.7609*c);a.arcTo(.0244*b,.0225*c,0,0,1,.7683*b,.7593*c);a.arcTo(.0407*b,.0376*c,0,0,1,.7667*b,.7338*c);a.arcTo(.0488*b,.0452*c,0,0,1,.7937*b,.697*
1078c);a.lineTo(.822*b,.6834*c);a.lineTo(.8171*b,.6962*c);a.lineTo(.7902*b,.7113*c);a.arcTo(.0325*b,.0301*c,0,0,0,.778*b,.7256*c);a.arcTo(.0407*b,.0376*c,0,0,0,.7756*b,.7444*c);a.arcTo(.0077*b,.0072*c,0,0,0,.787*b,.7512*c);a.close();a.moveTo(.8366*b,.6742*c);a.lineTo(.8366*b,.7248*c);a.lineTo(.878*b,.7043*c);a.lineTo(.874*b,.7158*c);a.lineTo(.8333*b,.7368*c);a.arcTo(.0041*b,.0037*c,0,0,1,.8268*b,.7324*c);a.lineTo(.8268*b,.6804*c);a.close();a.moveTo(.9342*b,.6233*c);a.lineTo(.9293*b,.6369*c);a.lineTo(.9033*
1079b,.6503*c);a.arcTo(.0325*b,.0301*c,0,0,0,.8927*b,.6601*c);a.arcTo(.0406*b,.0376*c,0,0,0,.887*b,.6729*c);a.lineTo(.9309*b,.6503*c);a.lineTo(.9268*b,.6631*c);a.lineTo(.887*b,.6834*c);a.arcTo(.0089*b,.0082*c,0,0,0,.8992*b,.691*c);a.lineTo(.935*b,.6722*c);a.lineTo(.9285*b,.6864*c);a.lineTo(.9008*b,.7007*c);a.arcTo(.0163*b,.0151*c,0,0,1,.8829*b,.7015*c);a.arcTo(.0407*b,.0376*c,0,0,1,.8764*b,.6827*c);a.arcTo(.065*b,.0601*c,0,0,1,.8959*b,.6443*c);a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");
1080a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.moveTo(0,.3346*c);a.lineTo(.126*b,.267*c);a.moveTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.moveTo(b,.3346*c);a.lineTo(.87*b,.267*c);a.moveTo(.378*b,.4023*c);a.lineTo(.622*b,.4023*c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*
1081b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dOracleDatabaseServer.prototype.cst.ORACLE_DB_SERVER,mxShapeAws3dOracleDatabaseServer);function mxShapeAws3dRdsMaster(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dRdsMaster,mxShape);
1082mxShapeAws3dRdsMaster.prototype.cst={RDS_MASTER:"mxgraph.aws3d.rdsMaster",SHADING_COLORS:"shadingCols"};mxShapeAws3dRdsMaster.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/133);a.setStrokeWidth(d);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1083mxShapeAws3dRdsMaster.prototype.background=function(a,d,e,b,c,f){a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1084mxShapeAws3dRdsMaster.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dRdsMaster.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.lineTo(0,.7331*c);a.lineTo(0,.3346*c);a.close();
1085a.moveTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3308*c);a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.5*b,c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*c);a.lineTo(b,.3308*c);a.lineTo(b,.7331*c);a.close();a.fill();a.restore();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.setShadow(!1);a.begin();a.moveTo(.1878*b,.1932*c);a.lineTo(.4854*b,.0414*c);a.lineTo(.5886*b,.094*c);a.lineTo(.4455*b,.2308*c);a.lineTo(.7122*
1086b,.1579*c);a.lineTo(.8171*b,.2098*c);a.lineTo(.5187*b,.3617*c);a.lineTo(.4537*b,.3293*c);a.lineTo(.7016*b,.2053*c);a.lineTo(.3854*b,.2947*c);a.lineTo(.3187*b,.2602*c);a.lineTo(.4959*b,.0992*c);a.lineTo(.2504*b,.2256*c);a.close();a.fill();a.setLineJoin("round");a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.moveTo(0,.3346*c);a.lineTo(.126*b,.267*c);a.moveTo(.5*b,.6015*
1087c);a.lineTo(.5*b,c);a.moveTo(b,.3346*c);a.lineTo(.87*b,.267*c);a.moveTo(.378*b,.4023*c);a.lineTo(.622*b,.4023*c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dRdsMaster.prototype.cst.RDS_MASTER,mxShapeAws3dRdsMaster);
1088function mxShapeAws3dRds(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dRds,mxShape);mxShapeAws3dRds.prototype.cst={RDS:"mxgraph.aws3d.rds",SHADING_COLORS:"shadingCols"};
1089mxShapeAws3dRds.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/133);a.setStrokeWidth(d);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1090mxShapeAws3dRds.prototype.background=function(a,d,e,b,c,f){a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1091mxShapeAws3dRds.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dRds.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.lineTo(0,.7331*c);a.lineTo(0,.3346*c);a.close();a.moveTo(.874*
1092b,.267*c);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3308*c);a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.5*b,c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*c);a.lineTo(b,.3308*c);a.lineTo(b,.7331*c);a.close();a.fill();a.restore();a.setFillColor("#ffffff");a.setShadow(!1);a.begin();a.moveTo(0,.6053*c);a.lineTo(.5*b,.8722*c);a.lineTo(b,.6053*c);a.lineTo(b,.6278*c);a.lineTo(.5*b,.8947*c);a.lineTo(0,.6278*c);a.close();a.fill();a.setLineJoin("round");a.begin();
1093a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.moveTo(0,.3346*c);a.lineTo(.126*b,.267*c);a.moveTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.moveTo(b,.3346*c);a.lineTo(.87*b,.267*c);a.moveTo(.378*b,.4023*c);a.lineTo(.622*b,.4023*c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);
1094a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dRds.prototype.cst.RDS,mxShapeAws3dRds);function mxShapeAws3dRoute53(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dRoute53,mxShape);mxShapeAws3dRoute53.prototype.cst={ROUTE_53:"mxgraph.aws3d.route53",SHADING_COLORS:"shadingCols"};
1095mxShapeAws3dRoute53.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/117,d*c/134.4);a.setStrokeWidth(d);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1096mxShapeAws3dRoute53.prototype.background=function(a,d,e,b,c,f){a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.6994*c);a.lineTo(0,.2009*c);a.lineTo(.0427*b,.0781*c);a.lineTo(.7974*b,0);a.lineTo(b,.1004*c);a.lineTo(b,.5915*c);a.lineTo(.8376*b,.9784*c);a.lineTo(.5983*b,c);a.close();a.fillAndStroke()};
1097mxShapeAws3dRoute53.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dRoute53.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(0,.2009*c);a.lineTo(.6009*b,.5007*c);a.lineTo(.8376*b,.4799*c);a.lineTo(.8376*b,.9784*c);a.lineTo(.5966*b,c);a.lineTo(0,.6979*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):
1098a.setAlpha(d[0]);a.begin();a.moveTo(.8348*b,.4861*c);a.lineTo(.9985*b,.0992*c);a.lineTo(b,.5952*c);a.lineTo(.8404*b,.9747*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.5855*b,.1079*c);a.arcTo(.094*b,.0744*c,0,0,0,.6863*b,.1548*c);a.arcTo(.0855*b,.0446*c,0,0,0,.7761*b,.2031*c);a.lineTo(.7726*b,.2455*c);a.arcTo(.0769*b,.0298*c,0,0,0,.694*b,.2693*c);a.arcTo(.0684*b,.0446*c,0,
10990,1,.5897*b,.3051*c);a.arcTo(.4274*b,.372*c,0,0,0,.4573*b,.2753*c);a.arcTo(.0855*b,.0744*c,0,0,0,.4188*b,.2344*c);a.lineTo(.3846*b,.2083*c);a.arcTo(.0769*b,.0372*c,0,0,1,.4103*b,.1525*c);a.arcTo(.0855*b,.0409*c,0,0,0,.4906*b,.1079*c);a.close();a.fill();a.begin();a.moveTo(0,.2009*c);a.lineTo(.6009*b,.5007*c);a.lineTo(.8376*b,.4799*c);a.lineTo(.8376*b,.9784*c);a.lineTo(.5966*b,c);a.lineTo(0,.6979*c);a.close();a.moveTo(.8348*b,.4861*c);a.lineTo(.9985*b,.0992*c);a.lineTo(b,.5952*c);a.lineTo(.8404*b,.9747*
1100c);a.close();a.moveTo(.6009*b,.5007*c);a.lineTo(.6009*b,c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(0,.6994*c);a.lineTo(0,.2009*c);a.lineTo(.0427*b,.0781*c);a.lineTo(.7974*b,0);a.lineTo(b,.1004*c);a.lineTo(b,.5915*c);a.lineTo(.8376*b,.9784*c);a.lineTo(.5983*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dRoute53.prototype.cst.ROUTE_53,mxShapeAws3dRoute53);
1101function mxShapeAws3dS3Bucket(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dS3Bucket,mxShape);mxShapeAws3dS3Bucket.prototype.cst={S3_BUCKET:"mxgraph.aws3d.s3Bucket",SHADING_COLORS:"shadingCols"};
1102mxShapeAws3dS3Bucket.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=d*b/61.5;d=d*c/63.8;var f=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(e,d);a.setShadow(!1);a.setStrokeWidth(d);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==f&&a.setShadow(!0);a.begin();a.moveTo(0,.2774*c);a.lineTo(.5*b,0);a.lineTo(b,.2774*c);a.lineTo(.7967*b,.8307*c);a.lineTo(.5*
1103b,c);a.lineTo(.1951*b,.8307*c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dS3Bucket.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.2774*c);a.lineTo(.5*b,.5564*c);a.lineTo(.5*b,c);a.lineTo(.1984*b,.8307*c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(.5*b,.5533*c);a.lineTo(b,
1104.2774*c);a.lineTo(.7967*b,.8307*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.2774*c);a.lineTo(.5*b,.5564*c);a.lineTo(b,.2774*c);a.stroke();a.begin();a.moveTo(.5*b,.5564*c);a.lineTo(.5*b,c);a.stroke();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.2774*c);a.lineTo(.5008*b,0);a.lineTo(b,.2774*c);a.lineTo(.7967*b,.8307*c);a.lineTo(.5008*b,c);a.lineTo(.1951*b,.8307*c);a.close();a.stroke()};
1105mxCellRenderer.registerShape(mxShapeAws3dS3Bucket.prototype.cst.S3_BUCKET,mxShapeAws3dS3Bucket);function mxShapeAws3dS3(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dS3,mxShape);mxShapeAws3dS3.prototype.cst={S3:"mxgraph.aws3d.s3",SHADING_COLORS:"shadingCols"};
1106mxShapeAws3dS3.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/231.5,d*c/239);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1107mxShapeAws3dS3.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7782*c);a.lineTo(0,.3406*c);a.lineTo(.5974*b,0);a.lineTo(b,.2218*c);a.lineTo(b,.6674*c);a.lineTo(.3991*b,c);a.close();a.fillAndStroke()};
1108mxShapeAws3dS3.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dS3.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(0,.3406*c);a.lineTo(.3991*b,.5548*c);a.lineTo(.3991*b,c);a.lineTo(0,.7782*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.3991*b,.5548*
1109c);a.lineTo(b,.2218*c);a.lineTo(b,.6661*c);a.lineTo(.3991*b,c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.3406*c);a.lineTo(.3991*b,.5548*c);a.lineTo(b,.2218*c);a.moveTo(.3991*b,.5548*c);a.lineTo(.3991*b,c);a.moveTo(.3991*b,.3335*c);a.lineTo(.2009*b,.448*c);a.lineTo(.2009*b,.8891*c);a.moveTo(.5983*b,.2209*c);a.lineTo(.7948*b,.1109*c);a.moveTo(.2022*b,.2218*c);a.lineTo(.5991*b,.4448*c);a.lineTo(.5991*b,.8891*c);a.moveTo(.4004*b,.1117*c);a.lineTo(.7978*
1110b,.3335*c);a.lineTo(.7978*b,.7791*c);a.stroke();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.4773*b,.2155*c);a.arcTo(.0086*b,.0046*c,0,0,1,.4903*b,.2096*c);a.arcTo(.2808*b,.272*c,0,0,1,.6004*b,.2619*c);a.arcTo(.108*b,.105*c,0,0,1,.6177*b,.277*c);a.arcTo(.0065*b,.0063*c,0,0,1,.6099*b,.2879*c);a.arcTo(.1944*b,.1883*c,0,0,1,.5378*b,.2607*c);a.arcTo(.216*b,.2092*c,0,0,1,.4773*b,.2155*c);a.close();a.fill();a.begin();a.moveTo(.4687*b,.2138*c);a.arcTo(.1512*
1111b,.1464*c,0,0,0,.4838*b,.2343*c);a.arcTo(.2376*b,.2301*c,0,0,0,.5529*b,.2774*c);a.arcTo(.1728*b,.1674*c,0,0,0,.6091*b,.2954*c);a.lineTo(.4946*b,.3339*c);a.arcTo(.1944*b,.1883*c,0,0,1,.4549*b,.3205*c);a.arcTo(.1944*b,.1883*c,0,0,1,.419*b,.3004*c);a.arcTo(.1944*b,.1883*c,0,0,1,.3965*b,.2795*c);a.close();a.fill();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7782*c);a.lineTo(0,.3406*c);a.lineTo(.5974*b,0);a.lineTo(b,.2218*c);a.lineTo(b,.6674*c);a.lineTo(.3991*
1112b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dS3.prototype.cst.S3,mxShapeAws3dS3);function mxShapeAws3dSimpleDB(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dSimpleDB,mxShape);mxShapeAws3dSimpleDB.prototype.cst={SIMPLE_DB:"mxgraph.aws3d.simpleDb",SHADING_COLORS:"shadingCols"};
1113mxShapeAws3dSimpleDB.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/133);a.setStrokeWidth(d);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1114mxShapeAws3dSimpleDB.prototype.background=function(a,d,e,b,c,f){a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1115mxShapeAws3dSimpleDB.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dSimpleDB.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.lineTo(0,.7331*c);a.lineTo(0,.3346*c);a.close();
1116a.moveTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3308*c);a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.5*b,c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*c);a.lineTo(b,.3308*c);a.lineTo(b,.7331*c);a.close();a.fill();a.restore();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.setShadow(!1);a.begin();a.moveTo(.1821*b,.182*c);a.lineTo(.4659*b,.0308*c);a.lineTo(.822*b,.2218*c);a.lineTo(.539*b,.3714*c);a.close();
1117a.fill();a.setLineJoin("round");a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.moveTo(0,.3346*c);a.lineTo(.126*b,.267*c);a.moveTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.moveTo(b,.3346*c);a.lineTo(.87*b,.267*c);a.moveTo(.378*b,.4023*c);a.lineTo(.622*b,.4023*c);a.stroke();a.restore();a.setShadow(!1);d=mxUtils.getValue(this.state.style,"fillColor","#ffffff");a.setStrokeColor(d);
1118a.setStrokeWidth(2.2*f);a.begin();a.moveTo(.2382*b,.2218*c);a.lineTo(.5415*b,.0602*c);a.moveTo(.3821*b,.0564*c);a.lineTo(.7737*b,.2656*c);a.moveTo(.2967*b,.0915*c);a.lineTo(.7114*b,.312*c);a.moveTo(.2209*b,.1316*c);a.lineTo(.6179*b,.3434*c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();
1119a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dSimpleDB.prototype.cst.SIMPLE_DB,mxShapeAws3dSimpleDB);function mxShapeAws3dSqs(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dSqs,mxShape);mxShapeAws3dSqs.prototype.cst={SQS:"mxgraph.aws3d.sqs",SHADING_COLORS:"shadingCols"};
1120mxShapeAws3dSqs.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/184,d*c/212.75);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1121mxShapeAws3dSqs.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7485*c);a.lineTo(0,.584*c);a.lineTo(.1658*b,.1666*c);a.lineTo(.5*b,0);a.lineTo(.8337*b,.1666*c);a.lineTo(b,.584*c);a.lineTo(b,.7485*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1122mxShapeAws3dSqs.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dSqs.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.1658*b,.1671*c);a.lineTo(.5*b,.334*c);a.lineTo(.5*b,c);a.lineTo(0,.7485*c);a.lineTo(0,.584*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();
1123a.moveTo(.5*b,.3344*c);a.lineTo(.8332*b,.1671*c);a.lineTo(b,.584*c);a.lineTo(b,.7509*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(.6674*b,.0844*c);a.lineTo(.3337*b,.2512*c);a.lineTo(.25*b,.7109*c);a.lineTo(.25*b,.8736*c);a.moveTo(.3326*b,.0839*c);a.lineTo(.6674*b,.2512*c);a.lineTo(.75*b,.7053*c);a.lineTo(.75*b,.874*c);a.moveTo(0,.584*c);a.lineTo(.5*b,.8331*c);a.lineTo(b,.584*c);a.moveTo(.1658*b,.1671*c);a.lineTo(.5*b,.334*c);a.lineTo(.8332*
1124b,.1671*c);a.moveTo(.5*b,.334*c);a.lineTo(.5*b,c);a.stroke();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.3337*b,.1511*c);a.lineTo(.4668*b,.0848*c);a.lineTo(.6663*b,.184*c);a.lineTo(.5337*b,.2503*c);a.close();a.fill();d=mxUtils.getValue(this.state.style,"fillColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.3902*b,.153*c);a.lineTo(.4701*b,.113*c);a.lineTo(.4701*b,.153*c);a.close();a.moveTo(.4402*b,.1784*c);a.lineTo(.5196*b,.1384*c);a.lineTo(.5196*
1125b,.1784*c);a.close();a.moveTo(.4908*b,.2033*c);a.lineTo(.5701*b,.1633*c);a.lineTo(.5701*b,.2033*c);a.close();a.fill();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7485*c);a.lineTo(0,.584*c);a.lineTo(.1658*b,.1666*c);a.lineTo(.5*b,0);a.lineTo(.8337*b,.1666*c);a.lineTo(b,.584*c);a.lineTo(b,.7485*c);a.lineTo(.5*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dSqs.prototype.cst.SQS,mxShapeAws3dSqs);
1126function mxShapeAws3dVpcGateway(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dVpcGateway,mxShape);mxShapeAws3dVpcGateway.prototype.cst={VPC_GATEWAY:"mxgraph.aws3d.vpcGateway",SHADING_COLORS:"shadingCols"};
1127mxShapeAws3dVpcGateway.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/116.7,d*c/102.8);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1128mxShapeAws3dVpcGateway.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(.5801*b,.5447*c);a.lineTo(.5801*b,.035*c);a.lineTo(.1054*b,0);a.lineTo(0,.0691*c);a.lineTo(0,.4134*c);a.lineTo(.3188*b,.7247*c);a.close();a.fillAndStroke();a.restore();a.save();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dVpcGateway.prototype.cst.SHADING_COLORS,
1129"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.5801*b,.5447*c);a.lineTo(.5801*b,.035*c);a.lineTo(.3162*b,.2072*c);a.lineTo(.3162*b,.7247*c);a.close();a.fill();"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.3162*b,.2072*c);a.lineTo(0,.0691*c);a.lineTo(0,.4134*c);a.lineTo(.3162*b,.7247*c);a.close();a.fill();a.restore();a.setShadow(!1);a.begin();a.moveTo(.5801*b,.5447*c);a.lineTo(.5801*b,.035*
1130c);a.lineTo(.3162*b,.2072*c);a.lineTo(.3162*b,.7247*c);a.close();a.stroke();a.restore();a.setLineJoin("round");a.setShadow(!1);a.begin();a.moveTo(.3162*b,.2072*c);a.lineTo(0,.0691*c);a.lineTo(0,.4134*c);a.lineTo(.3162*b,.7247*c);a.close();a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(.5801*b,.5447*c);a.lineTo(.5801*b,.035*c);a.lineTo(.1054*b,0);a.lineTo(0,.0691*c);a.lineTo(0,.4134*c);a.lineTo(.3188*b,.7247*c);a.close();a.stroke();a.restore();a.setStrokeWidth(2*f);
1131a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(b,.929*c);a.lineTo(b,.5866*c);a.lineTo(.6829*b,.1031*c);a.lineTo(.4216*b,.2753*c);a.lineTo(.4216*b,.7928*c);a.lineTo(.8946*b,c);a.close();a.fillAndStroke()};
1132mxShapeAws3dVpcGateway.prototype.foreground=function(a,d,e,b,c,f){a.restore();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setShadow(!1);a.setLineJoin("round");a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dVpcGateway.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");var g=mxUtils.getValue(this.state.style,"flipH","0");"0"==g?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(b,.929*c);a.lineTo(b,.5866*c);a.lineTo(.8946*b,.6537*c);a.lineTo(.8946*
1133b,c);a.close();a.fill();"0"==g?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(.8946*b,c);a.lineTo(.8946*b,.6537*c);a.lineTo(.4216*b,.2753*c);a.lineTo(.4216*b,.7928*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(b,.929*c);a.lineTo(b,.5866*c);a.lineTo(.8946*b,.6537*c);a.lineTo(.8946*b,c);a.close();a.stroke();a.begin();a.moveTo(.8946*b,c);a.lineTo(.8946*b,.6537*c);a.lineTo(.4216*b,.2753*c);a.lineTo(.4216*b,.7928*c);a.close();a.stroke();a.setStrokeWidth(2*
1134f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(b,.929*c);a.lineTo(b,.5866*c);a.lineTo(.6829*b,.1031*c);a.lineTo(.4216*b,.2753*c);a.lineTo(.4216*b,.7928*c);a.lineTo(.8946*b,c);a.close();a.stroke();a.setFillColor(d);a.begin();a.moveTo(.5587*b,.7743*c);a.lineTo(.5587*b,.6274*c);a.lineTo(.5775*b,.6342*c);a.lineTo(.5775*b,.57*c);a.arcTo(.0428*b,.0486*c,0,0,1,.6058*b,.5253*c);a.arcTo(.0686*b,.0778*c,0,0,1,.6564*b,.5447*c);a.arcTo(.0857*b,.0973*c,0,0,1,.6847*b,.607*c);a.lineTo(.6847*
1135b,.6877*c);a.lineTo(.7001*b,.6946*c);a.lineTo(.7001*b,.8405*c);a.close();a.moveTo(.6564*b,.6741*c);a.lineTo(.6564*b,.6177*c);a.arcTo(.06*b,.0681*c,0,0,0,.6392*b,.57*c);a.arcTo(.0343*b,.0389*c,0,0,0,.6195*b,.5574*c);a.arcTo(.0111*b,.0126*c,0,0,0,.6058*b,.5691*c);a.lineTo(.6058*b,.6498*c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeAws3dVpcGateway.prototype.cst.VPC_GATEWAY,mxShapeAws3dVpcGateway);
1136function mxShapeAws3dWebServer(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dWebServer,mxShape);mxShapeAws3dWebServer.prototype.cst={WEB_SERVER:"mxgraph.aws3d.webServer",SHADING_COLORS:"shadingCols"};
1137mxShapeAws3dWebServer.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/106);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1138mxShapeAws3dWebServer.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.6651*c);a.lineTo(0,.3349*c);a.lineTo(.5*b,0);a.lineTo(b,.3349*c);a.lineTo(b,.6651*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1139mxShapeAws3dWebServer.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dWebServer.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(0,.3349*c);a.lineTo(.5*b,.6651*c);a.lineTo(.5*b,c);a.lineTo(0,.6651*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.5*
1140b,.6651*c);a.lineTo(b,.3349*c);a.lineTo(b,.6651*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.3349*c);a.lineTo(.5*b,.6651*c);a.lineTo(.5*b,c);a.lineTo(0,.6651*c);a.close();a.stroke();a.begin();a.moveTo(.5*b,.6651*c);a.lineTo(b,.3349*c);a.lineTo(b,.6651*c);a.lineTo(.5*b,c);a.close();a.stroke();a.setLineJoin("miter");d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.374*b,.5189*c);a.arcTo(.0325*
1141b,.0236*c,0,0,1,.374*b,.4858*c);a.lineTo(.4797*b,.4151*c);a.arcTo(.0325*b,.0236*c,0,0,1,.5203*b,.4151*c);a.lineTo(.626*b,.4858*c);a.arcTo(.0325*b,.0236*c,0,0,1,.626*b,.516*c);a.lineTo(.5203*b,.5868*c);a.arcTo(.0325*b,.0236*c,0,0,1,.4797*b,.5868*c);a.close();a.fill();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.6651*c);a.lineTo(0,.3349*c);a.lineTo(.5*b,0);a.lineTo(b,.3349*c);a.lineTo(b,.6651*c);a.lineTo(.5*b,c);a.close();a.stroke()};
1142mxCellRenderer.registerShape(mxShapeAws3dWebServer.prototype.cst.WEB_SERVER,mxShapeAws3dWebServer);function mxShapeAws3dDynamoDB(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dDynamoDB,mxShape);mxShapeAws3dDynamoDB.prototype.cst={DYNAMO_DB:"mxgraph.aws3d.dynamoDb",SHADING_COLORS:"shadingCols"};
1143mxShapeAws3dDynamoDB.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/181.5,d*c/210);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1144mxShapeAws3dDynamoDB.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.8333*c);a.lineTo(0,.1667*c);a.lineTo(.3333*b,.0014*c);a.lineTo(.4986*b,.1667*c);a.lineTo(.6639*b,0);a.lineTo(b,.169*c);a.lineTo(b,.8333*c);a.lineTo(.6667*b,c);a.lineTo(.5014*b,.9162*c);a.lineTo(.3333*b,c);a.close();a.fillAndStroke()};
1145mxShapeAws3dDynamoDB.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dDynamoDB.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.168*b,.3333*c);a.lineTo(0,.3333*c);a.lineTo(.3333*b,.5*c);a.lineTo(.3333*b,c);a.lineTo(0,.8333*c);a.lineTo(0,.1714*c);a.close();a.moveTo(.4986*b,.1667*c);
1146a.lineTo(.6667*b,0);a.lineTo(b,.169*c);a.lineTo(.832*b,.3348*c);a.lineTo(b,.3333*c);a.lineTo(.6667*b,.5*c);a.lineTo(.5014*b,.5*c);a.lineTo(.832*b,.3348*c);a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.3333*b,.5*c);a.lineTo(.4986*b,.5*c);a.lineTo(.4986*b,.9162*c);a.lineTo(.3333*b,c);a.close();a.moveTo(.6667*b,c);a.lineTo(.6667*b,.5*c);a.lineTo(b,.3333*c);a.lineTo(.832*b,.3348*c);a.lineTo(b,.169*c);a.lineTo(b,.831*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");
1147a.begin();a.moveTo(.168*b,.3333*c);a.lineTo(0,.3333*c);a.lineTo(.3333*b,.5*c);a.lineTo(.3333*b,c);a.lineTo(0,.8333*c);a.lineTo(0,.1714*c);a.close();a.moveTo(.4986*b,.1667*c);a.lineTo(.6667*b,0);a.lineTo(b,.169*c);a.lineTo(.832*b,.3348*c);a.lineTo(b,.3333*c);a.lineTo(.6667*b,.5*c);a.lineTo(.5014*b,.5*c);a.lineTo(.832*b,.3348*c);a.close();a.moveTo(.3333*b,.5*c);a.lineTo(.4986*b,.5*c);a.lineTo(.4986*b,.9162*c);a.lineTo(.3333*b,c);a.close();a.moveTo(.6667*b,c);a.lineTo(.6667*b,.5*c);a.lineTo(b,.3333*
1148c);a.lineTo(b,.831*c);a.close();a.moveTo(.168*b,.3333*c);a.lineTo(.5*b,.1667*c);a.moveTo(.168*b,.3333*c);a.lineTo(.5014*b,.5*c);a.stroke();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.4876*b,.2262*c);a.arcTo(.303*b,.2619*c,0,0,1,.5647*b,.25*c);a.arcTo(.4407*b,.381*c,0,0,1,.6419*b,.2905*c);a.arcTo(.303*b,.2619*c,0,0,1,.6799*b,.32*c);a.arcTo(.0132*b,.0076*c,0,0,1,.6634*b,.3314*c);a.arcTo(.303*b,.2619*c,0,0,1,.5978*b,.3119*c);a.arcTo(.4408*b,.381*
1149c,0,0,1,.508*b,.2667*c);a.arcTo(.303*b,.2619*c,0,0,1,.4711*b,.2343*c);a.arcTo(.0132*b,.0076*c,0,0,1,.4876*b,.2262*c);a.close();a.fill();a.begin();a.moveTo(.5124*b,.4143*c);a.arcTo(.1102*b,.0952*c,0,0,1,.4683*b,.4095*c);a.arcTo(.4408*b,.381*c,0,0,1,.3829*b,.3757*c);a.arcTo(.4408*b,.381*c,0,0,1,.3196*b,.3371*c);a.arcTo(.0661*b,.0357*c,0,0,1,.3058*b,.3081*c);a.lineTo(.4612*b,.2333*c);a.arcTo(.0661*b,.0476*c,0,0,0,.4744*b,.2548*c);a.arcTo(.3306*b,.2857*c,0,0,0,.53*b,.2905*c);a.arcTo(.4408*b,.381*c,0,
11500,0,.6198*b,.3295*c);a.arcTo(.1102*b,.0952*c,0,0,0,.665*b,.3367*c);a.close();a.moveTo(.5052*b,.3714*c);a.arcTo(.0275*b,.019*c,0,0,1,.5135*b,.3581*c);a.arcTo(.0275*b,.0238*c,0,0,1,.5344*b,.3571*c);a.lineTo(.5405*b,.3471*c);a.arcTo(.0275*b,.0143*c,0,0,1,.5278*b,.3381*c);a.arcTo(.022*b,.0119*c,0,0,1,.5372*b,.3271*c);a.lineTo(.5306*b,.3186*c);a.arcTo(.0331*b,.0286*c,0,0,1,.5041*b,.3143*c);a.arcTo(.0275*b,.0143*c,0,0,1,.4975*b,.3029*c);a.lineTo(.4777*b,.2995*c);a.arcTo(.0331*b,.0286*c,0,0,1,.4628*b,.3033*
1151c);a.arcTo(.0331*b,.0286*c,0,0,1,.4408*b,.2967*c);a.lineTo(.4187*b,.3*c);a.arcTo(.011*b,.0081*c,0,0,1,.4132*b,.3124*c);a.arcTo(.0386*b,.0333*c,0,0,1,.395*b,.3129*c);a.lineTo(.3873*b,.3224*c);a.arcTo(.0165*b,.0143*c,0,0,1,.3994*b,.3333*c);a.arcTo(.0138*b,.0119*c,0,0,1,.3901*b,.3433*c);a.lineTo(.3994*b,.3514*c);a.arcTo(.0331*b,.0286*c,0,0,1,.4215*b,.3548*c);a.arcTo(.0165*b,.0119*c,0,0,1,.4298*b,.3667*c);a.lineTo(.449*b,.3714*c);a.arcTo(.0331*b,.0286*c,0,0,1,.4711*b,.3657*c);a.arcTo(.0331*b,.0286*c,
11520,0,1,.4887*b,.3724*c);a.close();a.moveTo(.4986*b,.351*c);a.arcTo(.0441*b,.0381*c,0,0,1,.4804*b,.3552*c);a.arcTo(.1102*b,.0952*c,0,0,1,.443*b,.349*c);a.lineTo(.4413*b,.3529*c);a.lineTo(.4242*b,.3371*c);a.arcTo(.1102*b,.0952*c,0,0,0,.4545*b,.3462*c);a.arcTo(.1102*b,.0952*c,0,0,0,.4793*b,.3476*c);a.arcTo(.0441*b,.0381*c,0,0,0,.4986*b,.3448*c);a.close();a.moveTo(.503*b,.3349*c);a.arcTo(.1102*b,.0952*c,0,0,0,.4766*b,.3233*c);a.arcTo(.0826*b,.0714*c,0,0,0,.4529*b,.32*c);a.arcTo(.0551*b,.0476*c,0,0,0,.4325*
1153b,.3238*c);a.lineTo(.427*b,.3195*c);a.arcTo(.0826*b,.0714*c,0,0,1,.4556*b,.3157*c);a.arcTo(.0826*b,.0714*c,0,0,1,.4851*b,.3232*c);a.lineTo(.4876*b,.3181*c);a.close();a.fill();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.8333*c);a.lineTo(0,.1667*c);a.lineTo(.3333*b,.0014*c);a.lineTo(.4986*b,.1667*c);a.lineTo(.6639*b,0);a.lineTo(b,.169*c);a.lineTo(b,.8333*c);a.lineTo(.6667*b,c);a.lineTo(.5014*b,.9162*c);a.lineTo(.3333*b,c);a.close();a.stroke()};
1154mxCellRenderer.registerShape(mxShapeAws3dDynamoDB.prototype.cst.DYNAMO_DB,mxShapeAws3dDynamoDB);function mxShapeAws3dElasticMapReduce(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dElasticMapReduce,mxShape);mxShapeAws3dElasticMapReduce.prototype.cst={ELASTIC_MAP_REDUCE:"mxgraph.aws3d.elasticMapReduce",SHADING_COLORS:"shadingCols"};
1155mxShapeAws3dElasticMapReduce.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/133);a.setStrokeWidth(d);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1156mxShapeAws3dElasticMapReduce.prototype.background=function(a,d,e,b,c,f){a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1157mxShapeAws3dElasticMapReduce.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dDynamoDB.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.lineTo(0,.7331*c);a.lineTo(0,.3346*c);a.close();
1158a.moveTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3308*c);a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.5*b,c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*c);a.lineTo(b,.3308*c);a.lineTo(b,.7331*c);a.close();a.fill();a.restore();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.setShadow(!1);a.begin();a.moveTo(.3336*b,.1789*c);a.arcTo(.0328*b,.0301*c,0,0,1,.359*b,.1789*c);a.lineTo(.4001*b,.2015*c);a.arcTo(.0074*
1159b,.0068*c,0,0,1,.4008*b,.2135*c);a.lineTo(.3574*b,.2368*c);a.arcTo(.0328*b,.0301*c,0,0,1,.3352*b,.2368*c);a.lineTo(.2934*b,.2143*c);a.arcTo(.0074*b,.0068*c,0,0,1,.2934*b,.2015*c);a.close();a.moveTo(.3705*b,.1729*c);a.arcTo(.0074*b,.0068*c,0,0,1,.3705*b,.1602*c);a.lineTo(.4139*b,.1368*c);a.arcTo(.0328*b,.0301*c,0,0,1,.4336*b,.1368*c);a.lineTo(.4811*b,.1617*c);a.arcTo(.0074*b,.0068*c,0,0,1,.4811*b,.1708*c);a.lineTo(.4328*b,.1955*c);a.arcTo(.0328*b,.0301*c,0,0,1,.4156*b,.1955*c);a.close();a.moveTo(.4467*
1160b,.1308*c);a.arcTo(.0074*b,.0068*c,0,0,1,.4467*b,.1203*c);a.lineTo(.491*b,.0962*c);a.arcTo(.0328*b,.0301*c,0,0,1,.5123*b,.0962*c);a.lineTo(.559*b,.1203*c);a.arcTo(.0074*b,.0068*c,0,0,1,.559*b,.1293*c);a.lineTo(.5123*b,.1549*c);a.arcTo(.0328*b,.0301*c,0,0,1,.4918*b,.1549*c);a.close();a.moveTo(.568*b,.1383*c);a.arcTo(.0328*b,.0301*c,0,0,1,.5918*b,.1383*c);a.lineTo(.6361*b,.1624*c);a.arcTo(.0074*b,.0068*c,0,0,1,.6366*b,.1714*c);a.lineTo(.5885*b,.1955*c);a.arcTo(.0328*b,.0301*c,0,0,1,.568*b,.1955*c);
1161a.lineTo(.523*b,.1714*c);a.arcTo(.0074*b,.0068*c,0,0,1,.523*b,.1616*c);a.close();a.moveTo(.6451*b,.1789*c);a.arcTo(.0328*b,.0301*c,0,0,1,.6697*b,.1789*c);a.lineTo(.7123*b,.2023*c);a.arcTo(.0074*b,.0068*c,0,0,1,.7123*b,.2128*c);a.lineTo(.6664*b,.2376*c);a.arcTo(.0328*b,.0301*c,0,0,1,.6492*b,.2376*c);a.lineTo(.6016*b,.2135*c);a.arcTo(.0074*b,.0068*c,0,0,1,.6016*b,.2023*c);a.close();a.moveTo(.6369*b,.2451*c);a.arcTo(.0074*b,.0068*c,0,0,1,.6369*b,.2526*c);a.lineTo(.5172*b,.3173*c);a.arcTo(.0328*b,.0301*
1162c,0,0,1,.4893*b,.3173*c);a.lineTo(.3697*b,.2541*c);a.arcTo(.0074*b,.0068*c,0,0,1,.3697*b,.2436*c);a.lineTo(.4918*b,.1782*c);a.arcTo(.0328*b,.0301*c,0,0,1,.5131*b,.1782*c);a.close();a.fill();a.moveTo(0*b,0*c);a.lineTo(0*b,0*c);a.arcTo(0*b,0*c,0,0,1,0*b,0*c);a.setLineJoin("round");a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.moveTo(0,.3346*c);a.lineTo(.126*b,.267*
1163c);a.moveTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.moveTo(b,.3346*c);a.lineTo(.87*b,.267*c);a.moveTo(.378*b,.4023*c);a.lineTo(.622*b,.4023*c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.stroke()};
1164mxCellRenderer.registerShape(mxShapeAws3dElasticMapReduce.prototype.cst.ELASTIC_MAP_REDUCE,mxShapeAws3dElasticMapReduce);function mxShapeAws3dRdsSlave(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dRdsSlave,mxShape);mxShapeAws3dRdsSlave.prototype.cst={RDS_SLAVE:"mxgraph.aws3d.rdsSlave"};
1165mxShapeAws3dRdsSlave.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/133);a.setStrokeWidth(d);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1166mxShapeAws3dRdsSlave.prototype.background=function(a,d,e,b,c,f){a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1167mxShapeAws3dRdsSlave.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");a.setAlpha("0.1");a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.lineTo(0,.7331*c);a.lineTo(0,.3346*c);a.close();a.moveTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3308*c);a.fill();a.setAlpha("0.3");a.begin();a.moveTo(.5*b,c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*
1168c);a.lineTo(b,.3308*c);a.lineTo(b,.7331*c);a.close();a.fill();a.restore();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.setShadow(!1);a.begin();a.moveTo(.2457*b,.2137*c);a.lineTo(.5393*b,.0593*c);a.lineTo(.6875*b,.1377*c);a.arcTo(.0871*b,.0799*c,0,0,1,.7137*b,.1625*c);a.arcTo(.0348*b,.032*c,0,0,1,.7076*b,.1968*c);a.arcTo(.1743*b,.1599*c,0,0,1,.6597*b,.2249*c);a.arcTo(.1307*b,.1199*c,0,0,1,.5943*b,.232*c);a.arcTo(.1307*b,.1199*c,0,0,1,.5542*b,.2225*c);a.arcTo(.0871*
1169b,.0799*c,0,0,1,.5673*b,.2353*c);a.arcTo(.0261*b,.024*c,0,0,1,.5611*b,.2729*c);a.lineTo(.4889*b,.316*c);a.arcTo(.0261*b,.024*c,0,0,0,.4766*b,.3352*c);a.lineTo(.4052*b,.2992*c);a.arcTo(.0173*b,.0159*c,0,0,1,.4121*b,.2841*c);a.lineTo(.4914*b,.2368*c);a.arcTo(.0218*b,.02*c,0,0,0,.4897*b,.2129*c);a.lineTo(.4409*b,.1857*c);a.lineTo(.3145*b,.2529*c);a.close();a.moveTo(.4801*b,.1633*c);a.lineTo(.5263*b,.1865*c);a.arcTo(.0871*b,.0799*c,0,0,0,.583*b,.1905*c);a.arcTo(.1307*b,.1199*c,0,0,0,.6196*b,.1721*c);
1170a.arcTo(.0261*b,.024*c,0,0,0,.6117*b,.1441*c);a.lineTo(.5655*b,.1193*c);a.fill();a.setLineJoin("round");a.begin();a.moveTo(.126*b,.1316*c);a.lineTo(.126*b,.267*c);a.lineTo(.378*b,.4023*c);a.lineTo(.5*b,.6015*c);a.lineTo(.622*b,.4023*c);a.lineTo(.874*b,.267*c);a.lineTo(.874*b,.1316*c);a.moveTo(0,.3346*c);a.lineTo(.126*b,.267*c);a.moveTo(.5*b,.6015*c);a.lineTo(.5*b,c);a.moveTo(b,.3346*c);a.lineTo(.87*b,.267*c);a.moveTo(.378*b,.4023*c);a.lineTo(.622*b,.4023*c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");
1171a.begin();a.moveTo(0,.7331*c);a.lineTo(0,.3346*c);a.lineTo(.126*b,.1316*c);a.lineTo(.374*b,0);a.lineTo(.626*b,0);a.lineTo(.874*b,.1316*c);a.lineTo(b,.3346*c);a.lineTo(b,.7331*c);a.lineTo(.5*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dRdsSlave.prototype.cst.RDS_SLAVE,mxShapeAws3dRdsSlave);function mxShapeAws3dAMI2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dAMI2,mxShape);
1172mxShapeAws3dAMI2.prototype.cst={AMI_2:"mxgraph.aws3d.ami2",SHADING_COLORS:"shadingCols"};
1173mxShapeAws3dAMI2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(d*b/92,d*c/60);a.setStrokeWidth(d);a.setShadow(!1);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==e&&a.setShadow(!0);a.begin();a.moveTo(0,.572*c);a.lineTo(.0865*b,.284*c);a.lineTo(.4203*b,0);a.lineTo(.5865*b,0);a.lineTo(.919*b,.286*c);
1174a.lineTo(b,.566*c);a.lineTo(.5027*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dAMI2.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");var f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.566*c);a.lineTo(.0892*b,.282*c);a.lineTo(.0878*b,.426*c);a.lineTo(.4216*b,.712*c);a.lineTo(.5865*b,.712*c);a.lineTo(.5027*b,c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):
1175a.setAlpha(e[0]);a.begin();a.moveTo(.5027*b,c);a.lineTo(.5865*b,.712*c);a.lineTo(.9176*b,.43*c);a.lineTo(b,.566*c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.566*c);a.lineTo(.0892*b,.282*c);a.lineTo(.0878*b,.426*c);a.lineTo(.4216*b,.712*c);a.lineTo(.5865*b,.712*c);a.lineTo(.5027*b,c);a.close();a.moveTo(.5027*b,c);a.lineTo(.5865*b,.712*c);a.lineTo(.9176*b,.43*c);a.lineTo(b,.566*c);a.close();a.moveTo(0,.572*c);a.lineTo(.0892*b,.422*c);a.moveTo(.5027*b,c);a.lineTo(.4189*
1176b,.708*c);a.moveTo(.9176*b,.43*c);a.lineTo(.9176*b,.29*c);a.stroke();a.setStrokeWidth(2*d);a.setLineJoin("round");a.begin();a.moveTo(.2095*b,.376*c);a.lineTo(.527*b,.104*c);a.lineTo(.6338*b,.194*c);a.lineTo(.3149*b,.468*c);a.close();a.moveTo(.3716*b,.518*c);a.lineTo(.6892*b,.246*c);a.lineTo(.796*b,.336*c);a.lineTo(.477*b,.61*c);a.close();a.moveTo(.3108*b,.282*c);a.lineTo(.4257*b,.38*c);a.moveTo(.4189*b,.194*c);a.lineTo(.5297*b,.288*c);a.moveTo(.5838*b,.338*c);a.lineTo(.6892*b,.426*c);a.moveTo(.4757*
1177b,.426*c);a.lineTo(.5838*b,.518*c);a.stroke();a.setStrokeColor("#292929");a.begin();a.moveTo(0,.572*c);a.lineTo(.0865*b,.284*c);a.lineTo(.4203*b,0);a.lineTo(.5865*b,0);a.lineTo(.919*b,.286*c);a.lineTo(b,.566*c);a.lineTo(.5027*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dAMI2.prototype.cst.AMI_2,mxShapeAws3dAMI2);function mxShapeAws3dEbs(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dEbs,mxShape);
1178mxShapeAws3dEbs.prototype.cst={EBS:"mxgraph.aws3d.ebs",SHADING_COLORS:"shadingCols"};
1179mxShapeAws3dEbs.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=d*b/92;d=d*c/60;var f=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(e,d);a.setStrokeWidth(d);a.setShadow(!1);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==f&&a.setShadow(!0);a.begin();a.moveTo(0,.5276*c);a.lineTo(0,.4188*c);a.lineTo(.071*b,.2898*c);a.lineTo(.4033*b,0);a.lineTo(.9301*
1180b,.464*c);a.lineTo(b,.5863*c);a.lineTo(b,.7035*c);a.lineTo(.6667*b,c);a.lineTo(.5355*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dEbs.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(.071*b,.2948*c);a.lineTo(.6011*b,.7621*c);a.lineTo(.6667*b,c);a.lineTo(.5355*b,c);a.lineTo(0,.5276*c);a.lineTo(0,.4137*c);
1181a.close();a.fill();"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(.6011*b,.7655*c);a.lineTo(.9344*b,.4724*c);a.lineTo(b,.7035*c);a.lineTo(.6667*b,c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(.071*b,.2948*c);a.lineTo(.6011*b,.7621*c);a.lineTo(.6667*b,c);a.lineTo(.5355*b,c);a.lineTo(0,.5276*c);a.lineTo(0,.4137*c);a.close();a.moveTo(.6011*b,.7655*c);a.lineTo(.9344*b,.4724*c);a.lineTo(b,.7035*c);a.lineTo(.6667*b,c);a.close();a.moveTo(.0033*b,.5276*c);a.lineTo(.071*
1182b,.2898*c);a.moveTo(.5325*b,.9976*c);a.lineTo(.603*b,.7593*c);a.stroke();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.5276*c);a.lineTo(0,.4188*c);a.lineTo(.071*b,.2898*c);a.lineTo(.4033*b,0);a.lineTo(.9301*b,.464*c);a.lineTo(b,.5863*c);a.lineTo(b,.7035*c);a.lineTo(.6667*b,c);a.lineTo(.5355*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dEbs.prototype.cst.EBS,mxShapeAws3dEbs);
1183function mxShapeAws3dOracleServer(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dOracleServer,mxShape);mxShapeAws3dOracleServer.prototype.cst={ORACLE_SERVER:"mxgraph.aws3d.oracleServer"};
1184mxShapeAws3dOracleServer.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/123,d*c/133);a.setStrokeWidth(d);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1185mxShapeAws3dOracleServer.prototype.background=function(a,d,e,b,c,f){a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7464*c);a.lineTo(0,.25*c);a.lineTo(.5*b,0);a.lineTo(b,.25*c);a.lineTo(b,.7464*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
1186mxShapeAws3dOracleServer.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");a.setAlpha("0.1");a.begin();a.moveTo(0,.7464*c);a.lineTo(0,.25*c);a.lineTo(.5*b,.5*c);a.lineTo(.5*b,c);a.close();a.fill();a.setAlpha("0.3");a.begin();a.moveTo(.5*b,.5*c);a.lineTo(b,.25*c);a.lineTo(b,.7464*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.setFillColor("#ff0000");a.begin();a.moveTo(0,.5866*c);a.lineTo(.5*b,.8359*c);a.lineTo(b,
1187.5866*c);a.lineTo(b,.6986*c);a.lineTo(.5*b,.9486*c);a.lineTo(0,.6986*c);a.fill();a.setStrokeWidth(.5*f);a.setStrokeColor("#ffffff");a.setFillColor("#ffffff");a.begin();a.moveTo(0,.5866*c);a.lineTo(.5*b,.8359*c);a.lineTo(b,.5866*c);a.moveTo(b,.6986*c);a.lineTo(.5*b,.9486*c);a.lineTo(0,.6986*c);a.stroke();a.begin();a.moveTo(.0813*b,.7113*c);a.arcTo(.0569*b,.0493*c,0,0,1,.065*b,.6831*c);a.arcTo(.065*b,.0563*c,0,0,1,.065*b,.6613*c);a.arcTo(.0163*b,.0141*c,0,0,1,.0797*b,.6549*c);a.lineTo(.122*b,.6754*
1188c);a.arcTo(.065*b,.0563*c,0,0,1,.1358*b,.6937*c);a.arcTo(.065*b,.0563*c,0,0,1,.139*b,.7232*c);a.arcTo(.0179*b,.0155*c,0,0,1,.1187*b,.7296*c);a.close();a.moveTo(.1163*b,.7183*c);a.arcTo(.0089*b,.0077*c,0,0,0,.1285*b,.7148*c);a.arcTo(.0407*b,.0352*c,0,0,0,.1293*b,.7021*c);a.arcTo(.0407*b,.0352*c,0,0,0,.1179*b,.6831*c);a.lineTo(.087*b,.6676*c);a.arcTo(.0081*b,.007*c,0,0,0,.0764*b,.6697*c);a.arcTo(.0325*b,.0352*c,0,0,0,.078*b,.6937*c);a.arcTo(.0407*b,.0352*c,0,0,0,.087*b,.7035*c);a.close();a.moveTo(.1439*
1189b,.743*c);a.lineTo(.1439*b,.6866*c);a.lineTo(.1846*b,.707*c);a.arcTo(.0407*b,.0352*c,0,0,1,.1967*b,.7183*c);a.arcTo(.0407*b,.0352*c,0,0,1,.2*b,.738*c);a.arcTo(.0138*b,.0155*c,0,0,1,.1813*b,.743*c);a.lineTo(.1992*b,.769*c);a.lineTo(.187*b,.7641*c);a.lineTo(.1577*b,.7218*c);a.lineTo(.1854*b,.7345*c);a.arcTo(.0041*b,.0035*c,0,0,0,.1911*b,.7317*c);a.arcTo(.0163*b,.0141*c,0,0,0,.1894*b,.7225*c);a.arcTo(.0325*b,.0282*c,0,0,0,.1821*b,.7155*c);a.lineTo(.1528*b,.7007*c);a.lineTo(.1528*b,.7472*c);a.close();
1190a.moveTo(.2008*b,.7711*c);a.lineTo(.2293*b,.7338*c);a.arcTo(.0065*b,.0056*c,0,0,1,.2382*b,.7324*c);a.arcTo(.0407*b,.0352*c,0,0,1,.2431*b,.7415*c);a.lineTo(.2699*b,.8035*c);a.lineTo(.2602*b,.8007*c);a.lineTo(.252*b,.7859*c);a.lineTo(.2293*b,.7754*c);a.lineTo(.2244*b,.7634*c);a.lineTo(.248*b,.7739*c);a.lineTo(.235*b,.7444*c);a.lineTo(.2122*b,.7768*c);a.close();a.moveTo(.3244*b,.8225*c);a.lineTo(.3171*b,.8289*c);a.lineTo(.2854*b,.8127*c);a.arcTo(.0407*b,.0352*c,0,0,1,.2724*b,.7986*c);a.arcTo(.0569*b,
1191.0493*c,0,0,1,.265*b,.7746*c);a.arcTo(.0407*b,.0352*c,0,0,1,.2683*b,.762*c);a.arcTo(.0163*b,.0141*c,0,0,1,.2829*b,.757*c);a.lineTo(.3228*b,.7761*c);a.lineTo(.3179*b,.7831*c);a.lineTo(.2878*b,.7683*c);a.arcTo(.0081*b,.007*c,0,0,0,.2789*b,.7697*c);a.arcTo(.0244*b,.0211*c,0,0,0,.2748*b,.7831*c);a.arcTo(.0407*b,.0352*c,0,0,0,.2878*b,.8042*c);a.close();a.moveTo(.3276*b,.7789*c);a.lineTo(.3366*b,.7831*c);a.lineTo(.3366*b,.8289*c);a.lineTo(.3805*b,.8507*c);a.lineTo(.3748*b,.857*c);a.lineTo(.3317*b,.8359*
1192c);a.arcTo(.0163*b,.0141*c,0,0,1,.3276*b,.8275*c);a.close();a.moveTo(.435*b,.8775*c);a.lineTo(.4325*b,.8866*c);a.lineTo(.3959*b,.8683*c);a.arcTo(.0407*b,.0352*c,0,0,1,.3862*b,.8563*c);a.arcTo(.0528*b,.0458*c,0,0,1,.3805*b,.8183*c);a.arcTo(.0163*b,.0141*c,0,0,1,.3951*b,.8134*c);a.lineTo(.435*b,.8324*c);a.lineTo(.4285*b,.838*c);a.lineTo(.4008*b,.8246*c);a.arcTo(.0098*b,.0085*c,0,0,0,.3878*b,.831*c);a.lineTo(.4333*b,.8542*c);a.lineTo(.426*b,.8606*c);a.lineTo(.3878*b,.8415*c);a.arcTo(.0325*b,.0282*c,
11930,0,0,.3976*b,.8585*c);a.close();a.moveTo(.6171*b,.8063*c);a.arcTo(.0163*b,.0141*c,0,0,1,.6366*b,.8092*c);a.arcTo(.0325*b,.0282*c,0,0,1,.639*b,.8303*c);a.arcTo(.065*b,.0563*c,0,0,1,.6211*b,.8592*c);a.lineTo(.5894*b,.8761*c);a.arcTo(.0203*b,.0176*c,0,0,1,.565*b,.8732*c);a.arcTo(.0407*b,.0352*c,0,0,1,.5659*b,.8458*c);a.arcTo(.0488*b,.0422*c,0,0,1,.5805*b,.8246*c);a.close();a.moveTo(.5886*b,.8296*c);a.arcTo(.0325*b,.0282*c,0,0,0,.5748*b,.8472*c);a.arcTo(.0325*b,.0282*c,0,0,0,.574*b,.862*c);a.arcTo(.0098*
1194b,.0085*c,0,0,0,.587*b,.8676*c);a.lineTo(.6163*b,.8528*c);a.arcTo(.0407*b,.0352*c,0,0,0,.6285*b,.8359*c);a.arcTo(.0244*b,.0211*c,0,0,0,.6293*b,.8225*c);a.arcTo(.0098*b,.0085*c,0,0,0,.6163*b,.8155*c);a.close();a.moveTo(.64*b,.85*c);a.lineTo(.64*b,.793*c);a.lineTo(.6854*b,.7718*c);a.arcTo(.0106*b,.0092*c,0,0,1,.7008*b,.7782*c);a.arcTo(.0407*b,.0352*c,0,0,1,.6959*b,.8*c);a.arcTo(.0407*b,.0352*c,0,0,1,.6805*b,.8127*c);a.lineTo(.6992*b,.8218*c);a.lineTo(.6854*b,.8282*c);a.lineTo(.6569*b,.8141*c);a.lineTo(.6805*
1195b,.8021*c);a.arcTo(.0203*b,.0176*c,0,0,0,.6894*b,.7923*c);a.arcTo(.0244*b,.0211*c,0,0,0,.6894*b,.7845*c);a.arcTo(.0041*b,.0035*c,0,0,0,.6837*b,.7831*c);a.lineTo(.6528*b,.7979*c);a.lineTo(.6528*b,.8437*c);a.close();a.moveTo(.7*b,.8204*c);a.lineTo(.7301*b,.7507*c);a.arcTo(.0098*b,.0085*c,0,0,1,.7358*b,.7444*c);a.arcTo(.0098*b,.0085*c,0,0,1,.7415*b,.7486*c);a.lineTo(.7699*b,.7852*c);a.lineTo(.7602*b,.7908*c);a.lineTo(.7537*b,.7838*c);a.lineTo(.7276*b,.7958*c);a.lineTo(.7228*b,.788*c);a.lineTo(.748*b,
1196.7768*c);a.lineTo(.7358*b,.7585*c);a.lineTo(.7114*b,.8155*c);a.close();a.moveTo(.8244*b,.7486*c);a.lineTo(.8171*b,.762*c);a.lineTo(.7894*b,.7761*c);a.arcTo(.0244*b,.0211*c,0,0,1,.7683*b,.7746*c);a.arcTo(.0407*b,.0352*c,0,0,1,.7667*b,.7507*c);a.arcTo(.0488*b,.0423*c,0,0,1,.7937*b,.7162*c);a.lineTo(.822*b,.7035*c);a.lineTo(.8171*b,.7155*c);a.lineTo(.7902*b,.7296*c);a.arcTo(.0325*b,.0282*c,0,0,0,.778*b,.743*c);a.arcTo(.0407*b,.0352*c,0,0,0,.7756*b,.7606*c);a.arcTo(.0077*b,.0067*c,0,0,0,.787*b,.767*c);
1197a.close();a.moveTo(.8366*b,.6949*c);a.lineTo(.8366*b,.7423*c);a.lineTo(.878*b,.7231*c);a.lineTo(.874*b,.7338*c);a.lineTo(.8333*b,.7535*c);a.arcTo(.0041*b,.0035*c,0,0,1,.8268*b,.75*c);a.lineTo(.8268*b,.7007*c);a.close();a.moveTo(.9342*b,.6472*c);a.lineTo(.9293*b,.6599*c);a.lineTo(.9033*b,.6725*c);a.arcTo(.0325*b,.0282*c,0,0,0,.8927*b,.6817*c);a.arcTo(.0406*b,.0352*c,0,0,0,.887*b,.6937*c);a.lineTo(.9309*b,.6725*c);a.lineTo(.9268*b,.6845*c);a.lineTo(.887*b,.7035*c);a.arcTo(.0089*b,.0077*c,0,0,0,.8992*
1198b,.7106*c);a.lineTo(.935*b,.693*c);a.lineTo(.9285*b,.7063*c);a.lineTo(.9008*b,.7197*c);a.arcTo(.0163*b,.0141*c,0,0,1,.8829*b,.7204*c);a.arcTo(.0407*b,.0352*c,0,0,1,.8764*b,.7028*c);a.arcTo(.065*b,.0563*c,0,0,1,.8959*b,.6669*c);a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.7464*c);a.lineTo(0,.25*c);a.lineTo(.5*b,.5*c);a.lineTo(.5*b,c);a.close();a.moveTo(.5*b,.5*c);a.lineTo(b,.25*c);a.lineTo(b,.7464*c);a.lineTo(.5*b,c);a.close();a.stroke();a.setLineJoin("miter");
1199d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.374*b,.3873*c);a.arcTo(.0325*b,.01764*c,0,0,1,.374*b,.3626*c);a.lineTo(.4797*b,.3098*c);a.arcTo(.0325*b,.0141*c,0,0,1,.5203*b,.3098*c);a.lineTo(.626*b,.3626*c);a.arcTo(.0325*b,.01764*c,0,0,1,.626*b,.3852*c);a.lineTo(.5203*b,.438*c);a.arcTo(.0325*b,.0141*c,0,0,1,.4797*b,.438*c);a.close();a.fill();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7464*c);a.lineTo(0,
1200.25*c);a.lineTo(.5*b,0);a.lineTo(b,.25*c);a.lineTo(b,.7464*c);a.lineTo(.5*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dOracleServer.prototype.cst.ORACLE_SERVER,mxShapeAws3dOracleServer);function mxShapeAws3dSecureConnection(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dSecureConnection,mxShape);mxShapeAws3dSecureConnection.prototype.cst={SECURE_CONNECTION:"mxgraph.aws3d.secureConnection"};
1201mxShapeAws3dSecureConnection.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/57,d*c/34);a.setStrokeWidth(d);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1202mxShapeAws3dSecureConnection.prototype.background=function(a,d,e,b,c,f){a.begin();a.moveTo(.0058*b,.3889*c);a.arcTo(.2096*b,.3536*c,0,0,1,.0774*b,.1856*c);a.arcTo(.5241*b,.8839*c,0,0,1,.308*b,.0262*c);a.arcTo(.8735*b,1.4732*c,0,0,1,.6417*b,.056*c);a.arcTo(.6988*b,1.1786*c,0,0,1,.9106*b,.277*c);a.arcTo(.2621*b,.442*c,0,0,1,b,.5451*c);a.arcTo(.2096*b,.3536*c,0,0,1,.9474*b,.7808*c);a.arcTo(.4368*b,.7366*c,0,0,1,.7186*b,.9605*c);a.arcTo(.8735*b,1.4732*c,0,0,1,.3045*b,.9104*c);a.arcTo(.6115*b,1.0312*c,
12030,0,1,.0687*b,.6747*c);a.arcTo(.2096*b,.3536*c,0,0,1,.0058*b,.3889*c);a.close();a.fill()};
1204mxShapeAws3dSecureConnection.prototype.foreground=function(a,d,e,b,c,f){d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.2661*b,.5068*c);a.lineTo(.5002*b,.7336*c);a.lineTo(.6626*b,.5775*c);a.lineTo(.6469*b,.5539*c);a.lineTo(.6958*b,.5097*c);a.arcTo(.0874*b,.1473*c,0,0,0,.7325*b,.4066*c);a.arcTo(.0874*b,.1473*c,0,0,0,.6889*b,.3153*c);a.arcTo(.1747*b,.2946*c,0,0,0,.5928*b,.2622*c);a.arcTo(.1398*b,.2357*c,0,0,0,.5107*b,.3005*c);a.lineTo(.446*b,.3654*
1205c);a.lineTo(.4268*b,.3477*c);a.close();a.moveTo(.4949*b,.4184*c);a.lineTo(.5491*b,.3624*c);a.arcTo(.1222*b,.2062*c,0,0,1,.6277*b,.3536*c);a.arcTo(.0874*b,.1179*c,0,0,1,.6679*b,.3978*c);a.arcTo(.0175*b,.0295*c,0,0,1,.6626*b,.439*c);a.lineTo(.5928*b,.5068*c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeAws3dSecureConnection.prototype.cst.SECURE_CONNECTION,mxShapeAws3dSecureConnection);
1206function mxShapeAws3dEmailService(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dEmailService,mxShape);mxShapeAws3dEmailService.prototype.cst={EMAIL_SERVICE:"mxgraph.aws3d.email_service",SHADING_COLORS:"shadingCols"};
1207mxShapeAws3dEmailService.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/151,d*c/192);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1208mxShapeAws3dEmailService.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.8182*c);a.lineTo(0,.1818*c);a.lineTo(.4007*b,0);a.lineTo(.606*b,0);a.lineTo(b,.1792*c);a.lineTo(b,.8182*c);a.lineTo(.5993*b,c);a.lineTo(.4007*b,c);a.close();a.fillAndStroke()};
1209mxShapeAws3dEmailService.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dEmailService.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(0,.2727*c);a.lineTo(.4007*b,.4546*c);a.lineTo(.5993*b,.4546*c);a.lineTo(.5993*b,c);a.lineTo(.4007*b,c);a.lineTo(0,.8182*c);a.close();a.fill();"0"==
1210e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.5993*b,.4546*c);a.lineTo(b,.2727*c);a.lineTo(.8013*b,.1792*c);a.lineTo(.8013*b,.0883*c);a.lineTo(b,.1792*c);a.lineTo(b,.8182*c);a.lineTo(.5993*b,c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.2727*c);a.lineTo(.4007*b,.4546*c);a.lineTo(.5993*b,.4546*c);a.lineTo(.5993*b,c);a.lineTo(.4007*b,c);a.lineTo(0,.8182*c);a.close();a.stroke();a.begin();a.moveTo(.5993*b,.4546*c);a.lineTo(b,.2727*c);a.lineTo(.8013*
1211b,.1792*c);a.lineTo(.8013*b,.0883*c);a.lineTo(b,.1792*c);a.lineTo(b,.8182*c);a.lineTo(.5993*b,c);a.close();a.stroke();a.begin();a.moveTo(.202*b,.0883*c);a.lineTo(.202*b,.1818*c);a.lineTo(.4007*b,.2727*c);a.lineTo(.5993*b,.2727*c);a.lineTo(.798*b,.1818*c);a.moveTo(.2053*b,.1818*c);a.lineTo(.0033*b,.2714*c);a.moveTo(.4007*b,.2727*c);a.lineTo(.4007*b,.9961*c);a.moveTo(.5993*b,.2727*c);a.lineTo(.5993*b,.4546*c);a.stroke();a.setLineJoin("miter");d=mxUtils.getValue(this.state.style,"strokeColor","#000000");
1212a.setFillColor(d);a.begin();a.moveTo(.4437*b,.0779*c);a.arcTo(.0662*b,.0519*c,0,0,1,.404*b,.0706*c);a.arcTo(.0464*b,.0364*c,0,0,1,.3815*b,.0421*c);a.arcTo(.053*b,.026*c,0,0,1,.4205*b,.0187*c);a.arcTo(.1987*b,.1558*c,0,0,1,.4768*b,.0203*c);a.arcTo(.0795*b,.0364*c,0,0,1,.5199*b,.0494*c);a.arcTo(.0265*b,.0208*c,0,0,1,.5099*b,.0649*c);a.arcTo(.0795*b,.0623*c,0,0,1,.4536*b,.0727*c);a.arcTo(.0199*b,.0156*c,0,0,1,.4404*b,.0597*c);a.arcTo(.0265*b,.0208*c,0,0,1,.4219*b,.0566*c);a.arcTo(.0199*b,.0114*c,0,0,
12131,.4172*b,.0431*c);a.arcTo(.0265*b,.0208*c,0,0,1,.4483*b,.0416*c);a.arcTo(.0132*b,.0104*c,0,0,1,.457*b,.053*c);a.arcTo(.0132*b,.0104*c,0,0,0,.4669*b,.0431*c);a.arcTo(.0166*b,.0166*c,0,0,0,.4464*b,.0358*c);a.lineTo(.4437*b,.0338*c);a.arcTo(.0199*b,.0156*c,0,0,1,.4603*b,.0322*c);a.arcTo(.0397*b,.0156*c,0,0,1,.4755*b,.0462*c);a.arcTo(.0199*b,.0156*c,0,0,1,.4669*b,.0545*c);a.arcTo(.053*b,.0416*c,0,0,1,.453*b,.0608*c);a.arcTo(.0099*b,.0078*c,0,0,0,.4636*b,.0675*c);a.arcTo(.0662*b,.0519*c,0,0,0,.498*b,
1214.0623*c);a.arcTo(.0185*b,.0145*c,0,0,0,.5079*b,.0457*c);a.arcTo(.053*b,.0416*c,0,0,0,.4848*b,.0296*c);a.arcTo(.0993*b,.0779*c,0,0,0,.455*b,.0234*c);a.arcTo(.1325*b,.1039*c,0,0,0,.4172*b,.026*c);a.arcTo(.0397*b,.0312*c,0,0,0,.3927*b,.039*c);a.arcTo(.0265*b,.0208*c,0,0,0,.3974*b,.0571*c);a.arcTo(.053*b,.0416*c,0,0,0,.4205*b,.0701*c);a.arcTo(.0331*b,.026*c,0,0,0,.4404*b,.0722*c);a.moveTo(.42*b,.049*c);a.arcTo(.02*b,.02*c,0,0,0,.435*b,.055*c);a.arcTo(.02*b,.02*c,0,0,0,.45*b,.049*c);a.arcTo(.02*b,.02*
1215c,0,0,0,.435*b,.043*c);a.arcTo(.02*b,.02*c,0,0,0,.42*b,.049*c);a.close();a.moveTo(.4669*b,.0894*c);a.arcTo(.1325*b,.1039*c,0,0,0,.5099*b,.0831*c);a.lineTo(.6689*b,.1543*c);a.lineTo(.4887*b,.1371*c);a.close();a.moveTo(.3887*b,.0769*c);a.arcTo(.0662*b,.0519*c,0,0,0,.4205*b,.0888*c);a.arcTo(.0662*b,.026*c,0,0,0,.447*b,.0894*c);a.lineTo(.4735*b,.1512*c);a.lineTo(.6689*b,.1688*c);a.lineTo(.5199*b,.2364*c);a.lineTo(.2815*b,.1273*c);a.close();a.fill();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");
1216a.begin();a.moveTo(0,.8182*c);a.lineTo(0,.1818*c);a.lineTo(.4007*b,0);a.lineTo(.606*b,0);a.lineTo(b,.1792*c);a.lineTo(b,.8182*c);a.lineTo(.5993*b,c);a.lineTo(.4007*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dEmailService.prototype.cst.EMAIL_SERVICE,mxShapeAws3dEmailService);function mxShapeAws3dWorker(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dWorker,mxShape);
1217mxShapeAws3dWorker.prototype.cst={WORKER:"mxgraph.aws3d.worker",SHADING_COLORS:"shadingCols"};
1218mxShapeAws3dWorker.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(d*b/74,d*c/50);a.setStrokeWidth(d);a.setShadow(!1);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==e&&a.setShadow(!0);a.begin();a.moveTo(0,.572*c);a.lineTo(.0865*b,.284*c);a.lineTo(.4203*b,0);a.lineTo(.5865*b,0);a.lineTo(.919*b,.286*
1219c);a.lineTo(b,.566*c);a.lineTo(.5027*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dWorker.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");var f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.566*c);a.lineTo(.0892*b,.282*c);a.lineTo(.0878*b,.426*c);a.lineTo(.4216*b,.712*c);a.lineTo(.5865*b,.712*c);a.lineTo(.5027*b,c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):
1220a.setAlpha(e[0]);a.begin();a.moveTo(.5027*b,c);a.lineTo(.5865*b,.712*c);a.lineTo(.9176*b,.43*c);a.lineTo(b,.566*c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.566*c);a.lineTo(.0892*b,.282*c);a.lineTo(.0878*b,.426*c);a.lineTo(.4216*b,.712*c);a.lineTo(.5865*b,.712*c);a.lineTo(.5027*b,c);a.close();a.moveTo(.5027*b,c);a.lineTo(.5865*b,.712*c);a.lineTo(.9176*b,.43*c);a.lineTo(b,.566*c);a.close();a.moveTo(0,.572*c);a.lineTo(.0892*b,.422*c);a.moveTo(.5027*b,c);a.lineTo(.4189*
1221b,.708*c);a.moveTo(.9176*b,.43*c);a.lineTo(.9176*b,.29*c);a.stroke();e=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(e);a.setLineJoin("round");a.begin();a.moveTo(.2892*b,.2104*c);a.lineTo(.3595*b,.1503*c);a.lineTo(.3973*b,.1844*c);a.arcTo(.2703*b,.4008*c,0,0,1,.4486*b,.1703*c);a.lineTo(.4486*b,.1242*c);a.lineTo(.5527*b,.1242*c);a.lineTo(.5527*b,.1703*c);a.arcTo(.2703*b,.4008*c,0,0,1,.6149*b,.1924*c);a.lineTo(.6527*b,.1603*c);a.lineTo(.7257*b,.2224*c);a.lineTo(.6892*b,.2545*
1222c);a.arcTo(.2027*b,.3006*c,0,0,1,.7162*b,.3106*c);a.lineTo(.7676*b,.3106*c);a.lineTo(.7676*b,.3988*c);a.lineTo(.7162*b,.3988*c);a.arcTo(.2027*b,.3006*c,0,0,1,.6973*b,.4409*c);a.lineTo(.7378*b,.475*c);a.lineTo(.6635*b,.5371*c);a.lineTo(.6297*b,.505*c);a.arcTo(.2703*b,.4008*c,0,0,1,.5527*b,.5351*c);a.lineTo(.5527*b,.5812*c);a.lineTo(.45*b,.5812*c);a.lineTo(.45*b,.5351*c);a.arcTo(.2703*b,.4008*c,0,0,1,.3878*b,.513*c);a.lineTo(.3514*b,.5431*c);a.lineTo(.2784*b,.481*c);a.lineTo(.3149*b,.4509*c);a.arcTo(.2027*
1223b,.3006*c,0,0,1,.2865*b,.3968*c);a.lineTo(.2351*b,.3968*c);a.lineTo(.2351*b,.3086*c);a.lineTo(.2865*b,.3086*c);a.arcTo(.2027*b,.3006*c,0,0,1,.3203*b,.2425*c);a.close();a.moveTo(.4054*b,.2445*c);a.arcTo(.1351*b,.2004*c,0,0,0,.3554*b,.2986*c);a.arcTo(.0676*b,.1002*c,0,0,0,.3432*b,.3567*c);a.arcTo(.0811*b,.1202*c,0,0,0,.3635*b,.4208*c);a.arcTo(.1351*b,.2004*c,0,0,0,.4122*b,.4649*c);a.arcTo(.2027*b,.3006*c,0,0,0,.4122*b,.4649*c);a.arcTo(.2027*b,.3006*c,0,0,0,.5676*b,.4749*c);a.arcTo(.1351*b,.2004*c,0,
12240,0,.6351*b,.4228*c);a.arcTo(.0676*b,.1002*c,0,0,0,.6595*b,.3467*c);a.arcTo(.0811*b,.1202*c,0,0,0,.6149*b,.2605*c);a.arcTo(.2027*b,.3006*c,0,0,0,.5419*b,.2204*c);a.arcTo(.3378*b,.501*c,0,0,0,.4649*b,.2184*c);a.arcTo(.2027*b,.3006*c,0,0,0,.4054*b,.2445*c);a.close();a.moveTo(.473*b,.2806*c);a.arcTo(.2027*b,.3006*c,0,0,1,.55*b,.2866*c);a.arcTo(.0676*b,.1002*c,0,0,1,.5892*b,.3307*c);a.arcTo(.0338*b,.0501*c,0,0,1,.5824*b,.3888*c);a.arcTo(.0946*b,.1403*c,0,0,1,.5216*b,.4269*c);a.arcTo(.1622*b,.2405*c,0,
12250,1,.4432*b,.4128*c);a.arcTo(.0541*b,.0802*c,0,0,1,.4108*b,.3527*c);a.arcTo(.0541*b,.0802*c,0,0,1,.4351*b,.2986*c);a.arcTo(.0811*b,.1202*c,0,0,1,.473*b,.2806*c);a.close();a.fill();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.begin();a.moveTo(0,.572*c);a.lineTo(.0865*b,.284*c);a.lineTo(.4203*b,0);a.lineTo(.5865*b,0);a.lineTo(.919*b,.286*c);a.lineTo(b,.566*c);a.lineTo(.5027*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dWorker.prototype.cst.WORKER,mxShapeAws3dWorker);
1226function mxShapeAws3dApplication2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dApplication2,mxShape);mxShapeAws3dApplication2.prototype.cst={APPLICATION2:"mxgraph.aws3d.application2",SHADING_COLORS:"shadingCols"};
1227mxShapeAws3dApplication2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=d*b/62;d=d*c/53.5;var f=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(e,d);a.setShadow(!1);a.setStrokeWidth(d);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==f&&a.setShadow(!0);a.begin();a.moveTo(0,.6766*c);a.lineTo(0,.3271*c);a.lineTo(.5*b,0);a.lineTo(b,.3271*c);a.lineTo(b,
1228.6766*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dApplication2.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.3271*c);a.lineTo(.5*b,.6449*c);a.lineTo(.5*b,c);a.lineTo(0,.6766*c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(.5*b,.6449*c);a.lineTo(b,.3271*
1229c);a.lineTo(b,.6766*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.3271*c);a.lineTo(.5*b,.6449*c);a.lineTo(.5*b,c);a.lineTo(0,.6766*c);a.close();a.stroke();a.begin();a.moveTo(.5*b,.6449*c);a.lineTo(b,.3271*c);a.lineTo(b,.6766*c);a.lineTo(.5*b,c);a.close();a.stroke();a.setLineJoin("miter");e=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(e);a.begin();a.moveTo(.1742*b,.6355*c);a.lineTo(.1742*b,.4393*c);a.lineTo(.6726*b,.1121*
1230c);a.lineTo(.7661*b,.1738*c);a.lineTo(.2661*b,.4991*c);a.lineTo(.2661*b,.6916*c);a.close();a.moveTo(.2871*b,.7084*c);a.lineTo(.2871*b,.514*c);a.lineTo(.7823*b,.1869*c);a.lineTo(.8629*b,.2374*c);a.lineTo(.379*b,.5626*c);a.lineTo(.379*b,.7607*c);a.close();a.fill();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.6766*c);a.lineTo(0,.3271*c);a.lineTo(.5*b,0);a.lineTo(b,.3271*c);a.lineTo(b,.6766*c);a.lineTo(.5*b,c);a.close();a.stroke()};
1231mxCellRenderer.registerShape(mxShapeAws3dApplication2.prototype.cst.APPLICATION2,mxShapeAws3dApplication2);function mxShapeAws3dElasticBeanstalk(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dElasticBeanstalk,mxShape);mxShapeAws3dElasticBeanstalk.prototype.cst={ELASTIC_BEANSTALK:"mxgraph.aws3d.elasticBeanstalk",SHADING_COLORS:"shadingCols"};
1232mxShapeAws3dElasticBeanstalk.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=d*b/181.5;d=d*c/140;var f=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(e,d);a.setShadow(!1);a.setStrokeWidth(d);a.save();a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==f&&a.setShadow(!0);a.begin();a.moveTo(0,.6239*c);a.lineTo(0,.3754*c);a.lineTo(.5*b,0);a.lineTo(b,.3754*
1233c);a.lineTo(b,.6239*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dElasticBeanstalk.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.3754*c);a.lineTo(.5*b,.7514*c);a.lineTo(.5*b,c);a.lineTo(0,.6239*c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(.5*b,.7514*
1234c);a.lineTo(b,.3754*c);a.lineTo(b,.6239*c);a.lineTo(.5*b,c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.3754*c);a.lineTo(.5*b,.7514*c);a.lineTo(.5*b,c);a.lineTo(0,.6239*c);a.close();a.moveTo(.5*b,.7514*c);a.lineTo(b,.3754*c);a.lineTo(b,.6239*c);a.lineTo(.5*b,c);a.close();a.moveTo(.2485*b,.187*c);a.lineTo(.7493*b,.5623*c);a.lineTo(.7493*b,.8123*c);a.stroke();a.setLineJoin("miter");e=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(e);a.begin();
1235a.moveTo(.7763*b,.2063*c);a.lineTo(.2749*b,.5817*c);a.lineTo(.2749*b,.8309*c);a.lineTo(.2204*b,.7894*c);a.lineTo(.2204*b,.5394*c);a.lineTo(.7185*b,.1619*c);a.close();a.fill();a.restore();a.begin();a.moveTo(.1713*b,.543*c);a.arcTo(.1653*b,.2149*c,0,0,1,.2028*b,.5723*c);a.arcTo(.1653*b,.2149*c,0,0,1,.2281*b,.6096*c);a.arcTo(.1102*b,.1433*c,0,0,1,.2402*b,.644*c);a.arcTo(.1102*b,.1433*c,0,0,1,.2424*b,.6848*c);a.arcTo(.1653*b,.2149*c,0,0,1,.216*b,.6612*c);a.arcTo(.1653*b,.2149*c,0,0,1,.1895*b,.6239*c);
1236a.arcTo(.1102*b,.1433*c,0,0,1,.1719*b,.5824*c);a.arcTo(.0826*b,.1074*c,0,0,1,.1713*b,.543*c);a.close();a.moveTo(.2507*b,.7794*c);a.arcTo(.1653*b,.2149*c,0,0,1,.254*b,.7421*c);a.arcTo(.022*b,.0287*c,0,0,1,.27*b,.7264*c);a.arcTo(.0551*b,.0716*c,0,0,1,.2986*b,.73*c);a.arcTo(.1653*b,.2149*c,0,0,1,.3234*b,.7457*c);a.arcTo(.1653*b,.2149*c,0,0,1,.3218*b,.7815*c);a.arcTo(.022*b,.0287*c,0,0,1,.3019*b,.7987*c);a.arcTo(.0826*b,.1074*c,0,0,1,.27*b,.7923*c);a.arcTo(.1653*b,.2149*c,0,0,1,.2507*b,.7794*c);a.close();
1237a.moveTo(.2799*b,.5265*c);a.arcTo(.1102*b,.1433*c,0,0,1,.3003*b,.515*c);a.arcTo(.0826*b,.1074*c,0,0,1,.3317*b,.515*c);a.arcTo(.1653*b,.2149*c,0,0,1,.3774*b,.5315*c);a.arcTo(.1653*b,.2149*c,0,0,1,.4033*b,.5487*c);a.arcTo(.0826*b,.1074*c,0,0,1,.3906*b,.5595*c);a.arcTo(.0826*b,.1074*c,0,0,1,.3493*b,.5616*c);a.arcTo(.1653*b,.2149*c,0,0,1,.3069*b,.5444*c);a.arcTo(.1653*b,.2149*c,0,0,1,.2799*b,.5265*c);a.close();a.moveTo(.2887*b,.3933*c);a.arcTo(.1653*b,.2149*c,0,0,1,.314*b,.414*c);a.arcTo(.1653*b,.2149*
1238c,0,0,1,.3322*b,.4391*c);a.arcTo(.0193*b,.0251*c,0,0,1,.3344*b,.4699*c);a.arcTo(.0551*b,.0716*c,0,0,1,.3196*b,.485*c);a.arcTo(.1653*b,.2149*c,0,0,1,.2887*b,.4592*c);a.arcTo(.1102*b,.1433*c,0,0,1,.27*b,.4269*c);a.arcTo(.0165*b,.0215*c,0,0,1,.2727*b,.4054*c);a.arcTo(.0551*b,.0716*c,0,0,1,.2887*b,.3933*c);a.close();a.moveTo(.4613*b,.262*c);a.arcTo(.1653*b,.2149*c,0,0,1,.4867*b,.2827*c);a.arcTo(.1653*b,.2149*c,0,0,1,.5049*b,.3078*c);a.arcTo(.0193*b,.0251*c,0,0,1,.5071*b,.3386*c);a.arcTo(.0551*b,.0716*
1239c,0,0,1,.4922*b,.3537*c);a.arcTo(.1653*b,.2149*c,0,0,1,.4613*b,.3279*c);a.arcTo(.1102*b,.1433*c,0,0,1,.4426*b,.2956*c);a.arcTo(.0165*b,.0215*c,0,0,1,.4453*b,.2741*c);a.arcTo(.0551*b,.0716*c,0,0,1,.4613*b,.262*c);a.close();a.moveTo(.4525*b,.3952*c);a.arcTo(.1102*b,.1433*c,0,0,1,.4729*b,.3837*c);a.arcTo(.0826*b,.1074*c,0,0,1,.5043*b,.3837*c);a.arcTo(.1653*b,.2149*c,0,0,1,.55*b,.4002*c);a.arcTo(.1653*b,.2149*c,0,0,1,.5759*b,.4174*c);a.arcTo(.0826*b,.1074*c,0,0,1,.5633*b,.4282*c);a.arcTo(.0826*b,.1074*
1240c,0,0,1,.5219*b,.4303*c);a.arcTo(.1653*b,.1074*c,0,0,1,.4795*b,.4131*c);a.arcTo(.1653*b,.2149*c,0,0,1,.4525*b,.3952*c);a.close();a.moveTo(.6217*b,.1426*c);a.arcTo(.1653*b,.2149*c,0,0,1,.6471*b,.1633*c);a.arcTo(.1653*b,.2149*c,0,0,1,.6652*b,.1884*c);a.arcTo(.0193*b,.0251*c,0,0,1,.6674*b,.2192*c);a.arcTo(.0551*b,.0716*c,0,0,1,.6526*b,.2342*c);a.arcTo(.1653*b,.2149*c,0,0,1,.6217*b,.2085*c);a.arcTo(.1102*b,.1433*c,0,0,1,.603*b,.1762*c);a.arcTo(.0165*b,.0215*c,0,0,1,.6057*b,.1547*c);a.arcTo(.0551*b,.0716*
1241c,0,0,1,.6217*b,.1426*c);a.close();a.moveTo(.6129*b,.2758*c);a.arcTo(.1102*b,.1433*c,0,0,1,.6333*b,.2643*c);a.arcTo(.0826*b,.1433*c,0,0,1,.6647*b,.2643*c);a.arcTo(.1653*b,.2149*c,0,0,1,.7104*b,.2808*c);a.arcTo(.1653*b,.2149*c,0,0,1,.7363*b,.298*c);a.arcTo(.0826*b,.2149*c,0,0,1,.7363*b,.298*c);a.arcTo(.0826*b,.1074*c,0,0,1,.6823*b,.3109*c);a.arcTo(.1653*b,.2149*c,0,0,1,.6399*b,.2937*c);a.arcTo(.1653*b,.2149*c,0,0,1,.6129*b,.2758*c);a.close();a.fillAndStroke();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");
1242a.setLineJoin("round");a.begin();a.moveTo(0,.6239*c);a.lineTo(0,.3754*c);a.lineTo(.5*b,0);a.lineTo(b,.3754*c);a.lineTo(b,.6239*c);a.lineTo(.5*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dElasticBeanstalk.prototype.cst.ELASTIC_BEANSTALK,mxShapeAws3dElasticBeanstalk);function mxShapeAws3dSimpleDB2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dSimpleDB2,mxShape);
1243mxShapeAws3dSimpleDB2.prototype.cst={SIMPLE_DB_2:"mxgraph.aws3d.simpleDb2",SHADING_COLORS:"shadingCols"};mxShapeAws3dSimpleDB2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/181.5,d*c/210);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1244mxShapeAws3dSimpleDB2.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.8183*c);a.lineTo(0,.1848*c);a.lineTo(.3366*b,0);a.lineTo(.6293*b,.0021*c);a.lineTo(b,.1833*c);a.lineTo(b,.8183*c);a.lineTo(.6694*b,c);a.lineTo(.4986*b,.9091*c);a.lineTo(.3333*b,c);a.close();a.fillAndStroke()};
1245mxShapeAws3dSimpleDB2.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dSimpleDB2.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(0,.1848*c);a.lineTo(.168*b,.1833*c);a.lineTo(0,.365*c);a.lineTo(.3333*b,.5467*c);a.lineTo(.3333*b,c);a.lineTo(0,.8183*c);a.close();a.moveTo(.4986*b,.9078*
1246c);a.lineTo(.4986*b,.3655*c);a.lineTo(.6667*b,.5457*c);a.lineTo(.6667*b,c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.3333*b,.5467*c);a.lineTo(.4986*b,.3655*c);a.lineTo(.4986*b,.9076*c);a.lineTo(.3333*b,c);a.close();a.moveTo(.8292*b,.1822*c);a.lineTo(b,.1848*c);a.lineTo(b,.8183*c);a.lineTo(.6667*b,c);a.lineTo(.6667*b,.5441*c);a.lineTo(b,.3666*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.1848*c);a.lineTo(.168*b,
1247.1833*c);a.lineTo(0,.365*c);a.lineTo(.3333*b,.5467*c);a.lineTo(.3333*b,c);a.lineTo(0,.8183*c);a.close();a.moveTo(.4986*b,.9078*c);a.lineTo(.4986*b,.3655*c);a.lineTo(.6667*b,.5457*c);a.lineTo(.6667*b,c);a.close();a.moveTo(.3333*b,.5467*c);a.lineTo(.4986*b,.3655*c);a.lineTo(.4986*b,.9076*c);a.lineTo(.3333*b,c);a.close();a.moveTo(.8292*b,.1822*c);a.lineTo(b,.1848*c);a.lineTo(b,.8183*c);a.lineTo(.6667*b,c);a.lineTo(.6667*b,.5441*c);a.lineTo(b,.3666*c);a.close();a.moveTo(.1669*b,.1828*c);a.lineTo(.4986*
1248b,.3655*c);a.lineTo(.8314*b,.1833*c);a.lineTo(.4986*b,.0031*c);a.close();a.stroke();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.2634*b,.1833*c);a.lineTo(.5003*b,.0535*c);a.lineTo(.7394*b,.1833*c);a.lineTo(.5003*b,.3136*c);a.close();a.fill();d=mxUtils.getValue(this.state.style,"fillColor","#000000");a.restore();a.setShadow(!1);a.setStrokeWidth(3*f);a.setStrokeColor(d);a.begin();a.moveTo(.3003*b,.2108*c);a.lineTo(.5642*b,.068*c);a.moveTo(.4429*
1249b,.0693*c);a.lineTo(.7059*b,.2121*c);a.moveTo(.6667*b,.2458*c);a.lineTo(.3974*b,.0992*c);a.moveTo(.3499*b,.1277*c);a.lineTo(.6088*b,.2698*c);a.moveTo(.3009*b,.1556*c);a.lineTo(.5496*b,.2913*c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.8183*c);a.lineTo(0,.1848*c);a.lineTo(.3366*b,0);a.lineTo(.6293*b,.0021*c);a.lineTo(b,.1833*c);a.lineTo(b,.8183*c);a.lineTo(.6694*b,c);a.lineTo(.4986*b,.9091*c);a.lineTo(.3333*b,c);a.close();a.stroke()};
1250mxCellRenderer.registerShape(mxShapeAws3dSimpleDB2.prototype.cst.SIMPLE_DB_2,mxShapeAws3dSimpleDB2);function mxShapeAws3dWorkflowService(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dWorkflowService,mxShape);mxShapeAws3dWorkflowService.prototype.cst={WORKFLOW_SERVICE:"mxgraph.aws3d.workflowService",SHADING_COLORS:"shadingCols"};
1251mxShapeAws3dWorkflowService.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/181.5,d*c/210);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1252mxShapeAws3dWorkflowService.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.6456*c);a.lineTo(.2481*b,0);a.lineTo(.7497*b,0);a.lineTo(b,.6456*c);a.lineTo(.4984*b,c);a.close();a.fillAndStroke()};
1253mxShapeAws3dWorkflowService.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dWorkflowService.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(0,.6456*c);a.lineTo(.2486*b,0);a.lineTo(.2486*b,.3531*c);a.lineTo(.4984*b,c);a.close();a.moveTo(.7497*b,.3531*c);a.lineTo(.7497*b,0);a.lineTo(b,
1254.6456*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.4984*b,c);a.lineTo(.7486*b,.3531*c);a.lineTo(b,.6456*c);a.lineTo(.4967*b,c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(.7497*b,.3531*c);a.lineTo(.7497*b,0);a.lineTo(b,.6456*c);a.close();a.moveTo(0,.6456*c);a.lineTo(.2486*b,0);a.lineTo(.2486*b,.3531*c);a.lineTo(.4984*b,c);a.lineTo(.7486*b,.3531*c);a.lineTo(b,.6456*c);a.lineTo(.4967*b,c);a.close();a.moveTo(.2486*b,.3531*
1255c);a.lineTo(.7508*b,.3531*c);a.moveTo(.2488*b,.353*c);a.lineTo(0,.6486*c);a.stroke();a.restore();a.setShadow(!1);d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.setStrokeWidth(2*f);a.begin();a.ellipse(.2925*b,.031*c,.4116*b,.2925*c);a.fill();d=mxUtils.getValue(this.state.style,"fillColor","#ffffff");a.setStrokeColor(d);a.begin();a.moveTo(.5252*b,.0465*c);a.lineTo(.5873*b,.0903*c);a.lineTo(.5483*b,.1173*c);a.lineTo(.4874*b,.0728*c);a.close();a.moveTo(.4896*b,.1132*
1256c);a.lineTo(.5005*b,.1705*c);a.lineTo(.4182*b,.1631*c);a.lineTo(.4122*b,.1058*c);a.close();a.moveTo(.3584*b,.1631*c);a.lineTo(.4204*b,.2062*c);a.lineTo(.3825*b,.2332*c);a.lineTo(.32*b,.19*c);a.close();a.moveTo(.4594*b,.2338*c);a.lineTo(.5214*b,.2783*c);a.lineTo(.4835*b,.3053*c);a.lineTo(.4215*b,.2608*c);a.close();a.moveTo(.5187*b,.0943*c);a.lineTo(.4879*b,.1152*c);a.moveTo(.421*b,.1624*c);a.lineTo(.3895*b,.1846*c);a.moveTo(.5*b,.1698*c);a.lineTo(.5554*b,.2089*c);a.lineTo(.4885*b,.2567*c);a.stroke();
1257a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.6456*c);a.lineTo(.2481*b,0);a.lineTo(.7497*b,0);a.lineTo(b,.6456*c);a.lineTo(.4984*b,c);a.close();a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dWorkflowService.prototype.cst.WORKFLOW_SERVICE,mxShapeAws3dWorkflowService);function mxShapeAws3dDecider(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dDecider,mxShape);
1258mxShapeAws3dDecider.prototype.cst={DECIDER:"mxgraph.aws3d.decider",SHADING_COLORS:"shadingCols"};
1259mxShapeAws3dDecider.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(d*b/74,d*c/50);a.setStrokeWidth(d);a.setShadow(!1);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==e&&a.setShadow(!0);a.begin();a.moveTo(0,.572*c);a.lineTo(.0865*b,.284*c);a.lineTo(.4203*b,0);a.lineTo(.5865*b,0);a.lineTo(.919*b,.286*
1260c);a.lineTo(b,.566*c);a.lineTo(.5027*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dDecider.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");var f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.566*c);a.lineTo(.0892*b,.282*c);a.lineTo(.0878*b,.426*c);a.lineTo(.4216*b,.712*c);a.lineTo(.5865*b,.712*c);a.lineTo(.5027*b,c);a.close();a.fill();"0"==f?a.setAlpha(e[1]):
1261a.setAlpha(e[0]);a.begin();a.moveTo(.5027*b,c);a.lineTo(.5865*b,.712*c);a.lineTo(.9176*b,.43*c);a.lineTo(b,.566*c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(0,.566*c);a.lineTo(.0892*b,.282*c);a.lineTo(.0878*b,.426*c);a.lineTo(.4216*b,.712*c);a.lineTo(.5865*b,.712*c);a.lineTo(.5027*b,c);a.close();a.moveTo(.5027*b,c);a.lineTo(.5865*b,.712*c);a.lineTo(.9176*b,.43*c);a.lineTo(b,.566*c);a.close();a.moveTo(0,.572*c);a.lineTo(.0892*b,.422*c);a.moveTo(.5027*b,c);a.lineTo(.4189*
1262b,.708*c);a.moveTo(.9176*b,.43*c);a.lineTo(.9176*b,.29*c);a.stroke();a.setStrokeWidth(1.6*d);a.setLineJoin("square");a.begin();a.moveTo(.4973*b,.1523*c);a.lineTo(.5608*b,.0982*c);a.lineTo(.6581*b,.1844*c);a.lineTo(.5986*b,.2365*c);a.close();a.moveTo(.3784*b,.2164*c);a.lineTo(.5054*b,.2305*c);a.lineTo(.5203*b,.3407*c);a.lineTo(.3892*b,.3246*c);a.close();a.moveTo(.2932*b,.3246*c);a.lineTo(.3919*b,.4128*c);a.lineTo(.3334*b,.4647*c);a.lineTo(.2357*b,.38*c);a.close();a.moveTo(.4568*b,.4649*c);a.lineTo(.5554*
1263b,.5511*c);a.lineTo(.4932*b,.6032*c);a.lineTo(.3946*b,.517*c);a.close();a.moveTo(.5473*b,.1924*c);a.lineTo(.5027*b,.2365*c);a.moveTo(.4*b,.3186*c);a.lineTo(.3446*b,.3667*c);a.moveTo(.5189*b,.3387*c);a.lineTo(.6081*b,.4148*c);a.lineTo(.5068*b,.501*c);a.stroke();a.setStrokeColor("#292929");a.begin();a.moveTo(0,.572*c);a.lineTo(.0865*b,.284*c);a.lineTo(.4203*b,0);a.lineTo(.5865*b,0);a.lineTo(.919*b,.286*c);a.lineTo(b,.566*c);a.lineTo(.5027*b,c);a.close();a.stroke()};
1264mxCellRenderer.registerShape(mxShapeAws3dDecider.prototype.cst.DECIDER,mxShapeAws3dDecider);function mxShapeAws3dSearchEngine(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dSearchEngine,mxShape);mxShapeAws3dSearchEngine.prototype.cst={SEARCH_ENGINE:"mxgraph.aws3d.searchEngine",SHADING_COLORS:"shadingCols"};
1265mxShapeAws3dSearchEngine.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/180,d*c/192);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1266mxShapeAws3dSearchEngine.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7281*c);a.lineTo(.1667*b,.5444*c);a.lineTo(.1667*b,.1832*c);a.lineTo(.5011*b,0);a.lineTo(.8333*b,.1832*c);a.lineTo(.8333*b,.5446*c);a.lineTo(b,.7281*c);a.lineTo(.7486*b,.7735*c);a.lineTo(.5819*b,.8617*c);a.lineTo(.5011*b,c);a.lineTo(.4169*b,.8653*c);a.lineTo(.2475*b,.7704*c);a.close();a.fillAndStroke()};
1267mxShapeAws3dSearchEngine.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dSearchEngine.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.1672*b,.1837*c);a.lineTo(.4989*b,.3638*c);a.lineTo(.4989*b,.7291*c);a.lineTo(.5825*b,.8633*c);a.lineTo(.4989*b,c);a.lineTo(.4164*b,.8622*c);a.lineTo(.2458*
1268b,.7719*c);a.lineTo(0,.7276*c);a.lineTo(.1661*b,.5454*c);a.close();a.moveTo(.7486*b,.7714*c);a.lineTo(.8317*b,.5459*c);a.lineTo(b,.727*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.4989*b,.3643*c);a.lineTo(.8317*b,.1827*c);a.lineTo(.8317*b,.5465*c);a.lineTo(.7508*b,.7714*c);a.lineTo(.5836*b,.8633*c);a.lineTo(.4989*b,.727*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(.1672*b,.1837*c);a.lineTo(.4989*b,.3638*c);a.lineTo(.4989*
1269b,.7291*c);a.lineTo(.5825*b,.8633*c);a.lineTo(.4989*b,c);a.lineTo(.4164*b,.8622*c);a.lineTo(.2458*b,.7719*c);a.lineTo(0,.7276*c);a.lineTo(.1661*b,.5454*c);a.close();a.moveTo(.7486*b,.7714*c);a.lineTo(.8317*b,.5459*c);a.lineTo(b,.727*c);a.close();a.moveTo(.4989*b,.3643*c);a.lineTo(.8317*b,.1827*c);a.lineTo(.8317*b,.5465*c);a.lineTo(.7508*b,.7714*c);a.lineTo(.5836*b,.8633*c);a.lineTo(.4989*b,.727*c);a.close();a.moveTo(.1667*b,.5459*c);a.lineTo(.2486*b,.7704*c);a.moveTo(.4164*b,.8633*c);a.lineTo(.4989*
1270b,.727*c);a.lineTo(.4989*b,c);a.stroke();a.restore();a.setShadow(!1);d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.3427*b,.179*c);a.arcTo(.0277*b,.0261*c,0,0,1,.3267*b,.1487*c);a.arcTo(.0664*b,.0365*c,0,0,1,.3621*b,.1227*c);a.arcTo(.1052*b,.0992*c,0,0,1,.4247*b,.1195*c);a.arcTo(.1274*b,.12*c,0,0,1,.4884*b,.1018*c);a.arcTo(.1329*b,.1253*c,0,0,1,.5548*b,.1112*c);a.arcTo(.0377*b,.0344*c,0,0,1,.572*b,.166*c);a.arcTo(.0388*b,.0365*c,0,0,1,.6047*b,.1775*
1271c);a.arcTo(.021*b,.0198*c,0,0,1,.5936*b,.2046*c);a.arcTo(.0332*b,.0313*c,0,0,1,.6008*b,.2416*c);a.arcTo(.072*b,.0678*c,0,0,1,.5437*b,.2677*c);a.arcTo(.1052*b,.0939*c,0,0,1,.4828*b,.2563*c);a.close();a.moveTo(.448*b,.2156*c);a.arcTo(.0111*b,.0104*c,0,0,0,.459*b,.2255*c);a.arcTo(.0138*b,.013*c,0,0,0,.4729*b,.2182*c);a.lineTo(.4773*b,.1874*c);a.arcTo(.0664*b,.0626*c,0,0,0,.5116*b,.1759*c);a.arcTo(.0277*b,.0626*c,0,0,0,.5233*b,.1503*c);a.arcTo(.0554*b,.0261*c,0,0,0,.5022*b,.1336*c);a.arcTo(.0886*b,.0835*
1272c,0,0,0,.4607*b,.1305*c);a.arcTo(.0664*b,.0626*c,0,0,0,.4313*b,.142*c);a.arcTo(.0332*b,.0313*c,0,0,0,.4175*b,.1597*c);a.arcTo(.0249*b,.0235*c,0,0,0,.4313*b,.1822*c);a.arcTo(.0443*b,.0418*c,0,0,0,.4535*b,.1884*c);a.close();a.moveTo(.4718*b,.1764*c);a.arcTo(.0443*b,.0418*c,0,0,1,.4496*b,.1754*c);a.arcTo(.0221*b,.0157*c,0,0,1,.4369*b,.1634*c);a.arcTo(.0221*b,.0183*c,0,0,1,.4496*b,.1467*c);a.arcTo(.0609*b,.0574*c,0,0,1,.4759*b,.1414*c);a.arcTo(.0388*b,.0365*c,0,0,1,.5033*b,.1514*c);a.arcTo(.0443*b,.0209*
1273c,0,0,1,.495*b,.1701*c);a.arcTo(.0388*b,.0365*c,0,0,1,.4718*b,.1764*c);a.close();a.fill();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7281*c);a.lineTo(.1667*b,.5444*c);a.lineTo(.1667*b,.1832*c);a.lineTo(.5011*b,0);a.lineTo(.8333*b,.1832*c);a.lineTo(.8333*b,.5446*c);a.lineTo(b,.7281*c);a.lineTo(.7486*b,.7735*c);a.lineTo(.5819*b,.8617*c);a.lineTo(.5011*b,c);a.lineTo(.4169*b,.8653*c);a.lineTo(.2475*b,.7704*c);a.close();a.stroke()};
1274mxCellRenderer.registerShape(mxShapeAws3dSearchEngine.prototype.cst.SEARCH_ENGINE,mxShapeAws3dSearchEngine);function mxShapeAws3dSecurityTokenService(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dSecurityTokenService,mxShape);mxShapeAws3dSecurityTokenService.prototype.cst={SECURITY_TOKEN_SERVICE:"mxgraph.aws3d.securityTokenService",SHADING_COLORS:"shadingCols"};
1275mxShapeAws3dSecurityTokenService.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/180,d*c/192);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1276mxShapeAws3dSecurityTokenService.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.7281*c);a.lineTo(.1667*b,.5444*c);a.lineTo(.1667*b,.1832*c);a.lineTo(.5011*b,0);a.lineTo(.8333*b,.1832*c);a.lineTo(.8333*b,.5446*c);a.lineTo(b,.7281*c);a.lineTo(.7486*b,.7735*c);a.lineTo(.5819*b,.8617*c);a.lineTo(.5011*b,c);a.lineTo(.4169*b,.8653*c);a.lineTo(.2475*b,.7704*c);a.close();
1277a.fillAndStroke()};
1278mxShapeAws3dSecurityTokenService.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dSecurityTokenService.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.1672*b,.1837*c);a.lineTo(.4989*b,.3638*c);a.lineTo(.4989*b,.7291*c);a.lineTo(.5825*b,.8633*c);a.lineTo(.4989*b,c);a.lineTo(.4164*b,
1279.8622*c);a.lineTo(.2458*b,.7719*c);a.lineTo(0,.7276*c);a.lineTo(.1661*b,.5454*c);a.close();a.moveTo(.7486*b,.7714*c);a.lineTo(.8317*b,.5459*c);a.lineTo(b,.727*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.4989*b,.3643*c);a.lineTo(.8317*b,.1827*c);a.lineTo(.8317*b,.5465*c);a.lineTo(.7508*b,.7714*c);a.lineTo(.5836*b,.8633*c);a.lineTo(.4989*b,.727*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(.1672*b,.1837*c);a.lineTo(.4989*
1280b,.3638*c);a.lineTo(.4989*b,.7291*c);a.lineTo(.5825*b,.8633*c);a.lineTo(.4989*b,c);a.lineTo(.4164*b,.8622*c);a.lineTo(.2458*b,.7719*c);a.lineTo(0,.7276*c);a.lineTo(.1661*b,.5454*c);a.close();a.moveTo(.7486*b,.7714*c);a.lineTo(.8317*b,.5459*c);a.lineTo(b,.727*c);a.close();a.moveTo(.4989*b,.3643*c);a.lineTo(.8317*b,.1827*c);a.lineTo(.8317*b,.5465*c);a.lineTo(.7508*b,.7714*c);a.lineTo(.5836*b,.8633*c);a.lineTo(.4989*b,.727*c);a.close();a.moveTo(.1667*b,.5459*c);a.lineTo(.2486*b,.7704*c);a.moveTo(.4164*
1281b,.8633*c);a.lineTo(.4989*b,.727*c);a.lineTo(.4989*b,c);a.stroke();a.restore();a.setShadow(!1);d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.4773*b,.1915*c);a.arcTo(.1274*b,.12*c,0,0,1,.4358*b,.1968*c);a.arcTo(.1107*b,.1044*c,0,0,1,.3937*b,.1905*c);a.arcTo(.0554*b,.0522*c,0,0,1,.3682*b,.1707*c);a.arcTo(.0332*b,.0313*c,0,0,1,.3699*b,.1414*c);a.arcTo(.0775*b,.0731*c,0,0,1,.4009*b,.118*c);a.arcTo(.1107*b,.1044*c,0,0,1,.4524*b,.1059*c);a.arcTo(.1107*
1282b,.1044*c,0,0,1,.5028*b,.1112*c);a.arcTo(.0664*b,.0626*c,0,0,1,.531*b,.1315*c);a.arcTo(.0332*b,.0313*c,0,0,1,.531*b,.1597*c);a.lineTo(.5615*b,.1754*c);a.lineTo(.5526*b,.1905*c);a.lineTo(.5759*b,.1999*c);a.lineTo(.5753*b,.2109*c);a.lineTo(.5792*b,.2161*c);a.lineTo(.6135*b,.2182*c);a.lineTo(.6113*b,.2416*c);a.lineTo(.5819*b,.2474*c);a.close();a.moveTo(.4756*b,.1816*c);a.arcTo(.0554*b,.0522*c,0,0,0,.5*b,.1691*c);a.arcTo(.0332*b,.0313*c,0,0,0,.5144*b,.1435*c);a.arcTo(.0277*b,.0261*c,0,0,0,.4967*b,.1247*
1283c);a.arcTo(.0554*b,.0522*c,0,0,0,.4729*b,.1174*c);a.arcTo(.1107*b,.1044*c,0,0,0,.4452*b,.1169*c);a.arcTo(.0831*b,.0783*c,0,0,0,.4197*b,.1232*c);a.arcTo(.0554*b,.0522*c,0,0,0,.397*b,.1357*c);a.arcTo(.0388*b,.0365*c,0,0,0,.3859*b,.1555*c);a.arcTo(.0305*b,.0287*c,0,0,0,.4053*b,.178*c);a.arcTo(.072*b,.0678*c,0,0,0,.4385*b,.1863*c);a.arcTo(.0831*b,.0783*c,0,0,0,.4596*b,.1848*c);a.arcTo(.0664*b,.0626*c,0,0,0,.4756*b,.1816*c);a.fill();a.setStrokeWidth(1.5*f);a.setLineJoin("round");a.setLineCap("round");
1284a.begin();a.moveTo(.4939*b,.1326*c);a.lineTo(.4474*b,.1508*c);a.lineTo(.4812*b,.1576*c);a.moveTo(.4889*b,.1733*c);a.lineTo(.4939*b,.1775*c);a.moveTo(.5061*b,.1576*c);a.lineTo(.5199*b,.1597*c);a.moveTo(.5094*b,.1394*c);a.lineTo(.5244*b,.1378*c);a.moveTo(.4945*b,.1247*c);a.lineTo(.4994*b,.1185*c);a.moveTo(.4679*b,.1175*c);a.lineTo(.4707*b,.1117*c);a.moveTo(.4396*b,.1195*c);a.lineTo(.4374*b,.1138*c);a.moveTo(.412*b,.1284*c);a.lineTo(.4059*b,.1232*c);a.moveTo(.3948*b,.1441*c);a.lineTo(.3804*b,.1425*c);
1285a.moveTo(.3931*b,.1608*c);a.lineTo(.3804*b,.1649*c);a.moveTo(.4059*b,.1754*c);a.lineTo(.3998*b,.1801*c);a.moveTo(.4308*b,.1822*c);a.lineTo(.4286*b,.1884*c);a.moveTo(.4618*b,.1827*c);a.lineTo(.4635*b,.1868*c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(0,.7281*c);a.lineTo(.1667*b,.5444*c);a.lineTo(.1667*b,.1832*c);a.lineTo(.5011*b,0);a.lineTo(.8333*b,.1832*c);a.lineTo(.8333*b,.5446*c);a.lineTo(b,.7281*c);a.lineTo(.7486*b,.7735*c);a.lineTo(.5819*b,.8617*c);a.lineTo(.5011*
1286b,c);a.lineTo(.4169*b,.8653*c);a.lineTo(.2475*b,.7704*c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dSecurityTokenService.prototype.cst.SECURITY_TOKEN_SERVICE,mxShapeAws3dSecurityTokenService);function mxShapeAws3dGlacier(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dGlacier,mxShape);mxShapeAws3dGlacier.prototype.cst={GLACIER:"mxgraph.aws3d.glacier",SHADING_COLORS:"shadingCols"};
1287mxShapeAws3dGlacier.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/180,d*c/192);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1288mxShapeAws3dGlacier.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.8177*c);a.lineTo(0,.5448*c);a.lineTo(.168*b,.1792*c);a.lineTo(.5008*b,0);a.lineTo(.8309*b,.1812*c);a.lineTo(b,.5469*c);a.lineTo(b,.8188*c);a.lineTo(.6661*b,c);a.lineTo(.3333*b,c);a.close();a.fillAndStroke()};
1289mxShapeAws3dGlacier.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dGlacier.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.1658*b,.1802*c);a.lineTo(.5008*b,.3651*c);a.lineTo(.6661*b,.9089*c);a.lineTo(.6661*b,c);a.lineTo(.3339*b,c);a.lineTo(0,.8177*c);a.lineTo(0,.5427*c);a.close();
1290a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.5008*b,.362*c);a.lineTo(.8314*b,.1823*c);a.lineTo(b,.5469*c);a.lineTo(b,.8177*c);a.lineTo(.6661*b,c);a.lineTo(.6661*b,.9089*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(.1658*b,.1802*c);a.lineTo(.5008*b,.3651*c);a.lineTo(.6661*b,.9089*c);a.lineTo(.6661*b,c);a.lineTo(.3339*b,c);a.lineTo(0,.8177*c);a.lineTo(0,.5427*c);a.close();a.moveTo(.5008*b,.362*c);a.lineTo(.8314*b,.1823*c);a.lineTo(b,
1291.5469*c);a.lineTo(b,.8177*c);a.lineTo(.6661*b,c);a.lineTo(.6661*b,.9089*c);a.close();a.moveTo(.1675*b,.1797*c);a.lineTo(0,.7281*c);a.lineTo(.3284*b,.9089*c);a.lineTo(.6661*b,.9089*c);a.lineTo(b,.7266*c);a.lineTo(.8309*b,.1823*c);a.moveTo(.5003*b,.362*c);a.lineTo(.3311*b,.9089*c);a.lineTo(.3311*b,c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(0,.8177*c);a.lineTo(0,.5448*c);a.lineTo(.168*b,.1792*c);a.lineTo(.5008*b,0);a.lineTo(.8309*b,.1812*c);a.lineTo(b,.5469*c);
1292a.lineTo(b,.8188*c);a.lineTo(.6661*b,c);a.lineTo(.3333*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dGlacier.prototype.cst.GLACIER,mxShapeAws3dGlacier);function mxShapeAws3dCustomerGateway(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dCustomerGateway,mxShape);mxShapeAws3dCustomerGateway.prototype.cst={CUSTOMER_GATEWAY:"mxgraph.aws3d.customerGateway",SHADING_COLORS:"shadingCols"};
1293mxShapeAws3dCustomerGateway.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/116.7,d*c/102.8);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1294mxShapeAws3dCustomerGateway.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(.4199*b,.5447*c);a.lineTo(.4199*b,.035*c);a.lineTo(.8946*b,0);a.lineTo(b,.0691*c);a.lineTo(b,.4134*c);a.lineTo(.6812*b,.7247*c);a.close();a.fillAndStroke();a.restore();a.save();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dCustomerGateway.prototype.cst.SHADING_COLORS,
1295"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(.4199*b,.5447*c);a.lineTo(.4199*b,.035*c);a.lineTo(.6838*b,.2072*c);a.lineTo(.6838*b,.7247*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.6838*b,.2072*c);a.lineTo(b,.0691*c);a.lineTo(b,.4134*c);a.lineTo(.6838*b,.7247*c);a.close();a.fill();a.restore();a.setShadow(!1);a.begin();a.moveTo(.4199*b,.5447*c);a.lineTo(.4199*b,.035*
1296c);a.lineTo(.6838*b,.2072*c);a.lineTo(.6838*b,.7247*c);a.close();a.stroke();a.restore();a.setLineJoin("round");a.setShadow(!1);a.begin();a.moveTo(.6838*b,.2072*c);a.lineTo(b,.0691*c);a.lineTo(b,.4134*c);a.lineTo(.6838*b,.7247*c);a.close();a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(.4199*b,.5447*c);a.lineTo(.4199*b,.035*c);a.lineTo(.8946*b,0);a.lineTo(b,.0691*c);a.lineTo(b,.4134*c);a.lineTo(.6812*b,.7247*c);a.close();a.stroke();a.restore();a.setStrokeWidth(2*f);
1297a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.929*c);a.lineTo(0,.5866*c);a.lineTo(.3171*b,.1031*c);a.lineTo(.5784*b,.2753*c);a.lineTo(.5784*b,.7928*c);a.lineTo(.1054*b,c);a.close();a.fillAndStroke()};
1298mxShapeAws3dCustomerGateway.prototype.foreground=function(a,d,e,b,c,f){a.restore();d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setShadow(!1);a.setLineJoin("round");a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dCustomerGateway.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");var g=mxUtils.getValue(this.state.style,"flipH","0");"0"==g?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(0,.929*c);a.lineTo(0,.5866*c);a.lineTo(.1054*b,.6537*
1299c);a.lineTo(.1054*b,c);a.close();a.fill();"0"==g?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(.1054*b,c);a.lineTo(.1054*b,.6537*c);a.lineTo(.5784*b,.2753*c);a.lineTo(.5784*b,.7928*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.929*c);a.lineTo(0,.5866*c);a.lineTo(.1054*b,.6537*c);a.lineTo(.1054*b,c);a.close();a.stroke();a.begin();a.moveTo(.1054*b,c);a.lineTo(.1054*b,.6537*c);a.lineTo(.5784*b,.2753*c);a.lineTo(.5784*b,.7928*c);a.close();a.stroke();
1300a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.929*c);a.lineTo(0,.5866*c);a.lineTo(.3171*b,.1031*c);a.lineTo(.5784*b,.2753*c);a.lineTo(.5784*b,.7928*c);a.lineTo(.1054*b,c);a.close();a.stroke();a.setFillColor(d);a.begin();a.moveTo(.7575*b,.3969*c);a.arcTo(.2142*b,.2432*c,0,0,1,.7686*b,.3259*c);a.arcTo(.2142*b,.2432*c,0,0,1,.8055*b,.2481*c);a.arcTo(.2142*b,.2432*c,0,0,1,.8406*b,.2091*c);a.lineTo(.8269*b,.2665*c);a.lineTo(.8372*b,.2607*c);a.lineTo(.8372*
1301b,.3444*c);a.lineTo(.7832*b,.3804*c);a.lineTo(.7832*b,.3658*c);a.close();a.moveTo(.8466*b,.2082*c);a.arcTo(.0514*b,.0584*c,0,0,1,.8766*b,.1955*c);a.arcTo(.0514*b,.0584*c,0,0,1,.9186*b,.2286*c);a.arcTo(.12*b,.1362*c,0,0,1,.9297*b,.2821*c);a.lineTo(.9006*b,.2831*c);a.lineTo(.9006*b,.3016*c);a.lineTo(.85*b,.3366*c);a.lineTo(.85*b,.251*c);a.lineTo(.8586*b,.2471*c);a.close();a.moveTo(.9297*b,.2967*c);a.arcTo(.2142*b,.2432*c,0,0,1,.9195*b,.3667*c);a.arcTo(.2571*b,.2918*c,0,0,1,.8869*b,.4436*c);a.arcTo(.1714*
1302b,.1946*c,0,0,1,.8466*b,.4903*c);a.lineTo(.8595*b,.4358*c);a.lineTo(.8492*b,.4416*c);a.lineTo(.8492*b,.357*c);a.lineTo(.9006*b,.32004*c);a.lineTo(.9006*b,.3346*c);a.close();a.moveTo(.838*b,.4942*c);a.arcTo(.0857*b,.0973*c,0,0,1,.8072*b,.5049*c);a.arcTo(.0514*b,.0584*c,0,0,1,.7712*b,.4815*c);a.arcTo(.1714*b,.1946*c,0,0,1,.7566*b,.4163*c);a.lineTo(.7832*b,.4173*c);a.lineTo(.7832*b,.4008*c);a.lineTo(.8372*b,.3638*c);a.lineTo(.8372*b,.4494*c);a.lineTo(.8278*b,.4562*c);a.close();a.fill()};
1303mxCellRenderer.registerShape(mxShapeAws3dCustomerGateway.prototype.cst.CUSTOMER_GATEWAY,mxShapeAws3dCustomerGateway);function mxShapeAws3dRedshift(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dRedshift,mxShape);mxShapeAws3dRedshift.prototype.cst={REDSHIFT:"mxgraph.aws3d.redshift",SHADING_COLORS:"shadingCols"};
1304mxShapeAws3dRedshift.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/149.5,d*c/187.5);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1305mxShapeAws3dRedshift.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.6517*c);a.lineTo(0,.0912*c);a.lineTo(.0368*b,.0155*c);a.lineTo(.2047*b,0);a.lineTo(.3378*b,.0619*c);a.lineTo(.3378*b,.0912*c);a.lineTo(.3819*b,.0693*c);a.lineTo(.6154*b,.0693*c);a.lineTo(.8502*b,.1776*c);a.lineTo(.8502*b,.3083*c);a.lineTo(.8682*b,.3061*c);a.lineTo(b,.3664*c);a.lineTo(b,.9099*c);
1306a.lineTo(.9672*b,.9861*c);a.lineTo(.7926*b,c);a.lineTo(.6629*b,.9392*c);a.lineTo(.6629*b,.9099*c);a.lineTo(.6167*b,.9317*c);a.lineTo(.3813*b,.9317*c);a.lineTo(.1478*b,.8219*c);a.lineTo(.1478*b,.7093*c);a.lineTo(.1365*b,.7163*c);a.close();a.fillAndStroke()};
1307mxShapeAws3dRedshift.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dRedshift.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(0,.6541*c);a.lineTo(0,.0933*c);a.lineTo(.1371*b,.1573*c);a.lineTo(.1371*b,.7157*c);a.close();a.moveTo(.1485*b,.8219*c);a.lineTo(.1485*b,.2864*c);a.lineTo(.3846*
1308b,.3941*c);a.lineTo(.3846*b,.9317*c);a.close();a.moveTo(.6642*b,.9392*c);a.lineTo(.6642*b,.4011*c);a.lineTo(.796*b,.4597*c);a.lineTo(.796*b,c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.1371*b,.7157*c);a.lineTo(.1371*b,.1568*c);a.lineTo(.2027*b,.1525*c);a.lineTo(.1498*b,.1771*c);a.lineTo(.1498*b,.7061*c);a.close();a.moveTo(.3846*b,.3941*c);a.lineTo(.614*b,.3941*c);a.lineTo(.6809*b,.3632*c);a.lineTo(.6642*b,.4*c);a.lineTo(.6642*b,.9067*c);a.lineTo(.6191*b,.9317*
1309c);a.lineTo(.3833*b,.9317*c);a.close();a.moveTo(.796*b,.4608*c);a.lineTo(.9639*b,.4469*c);a.lineTo(b,.3691*c);a.lineTo(b,.9077*c);a.lineTo(.9686*b,.9856*c);a.lineTo(.796*b,c);a.close();a.moveTo(.3378*b,.0608*c);a.lineTo(.3378*b,.0907*c);a.lineTo(.3197*b,.1008*c);a.close();a.moveTo(.8502*b,.2843*c);a.lineTo(.8502*b,.3083*c);a.lineTo(.794*b,.3136*c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.6541*c);a.lineTo(0,.0933*c);a.lineTo(.1371*b,.1573*c);a.lineTo(.1371*
1310b,.7157*c);a.close();a.moveTo(.1485*b,.8219*c);a.lineTo(.1485*b,.2864*c);a.lineTo(.3846*b,.3941*c);a.lineTo(.3846*b,.9317*c);a.close();a.moveTo(.6642*b,.9392*c);a.lineTo(.6642*b,.4011*c);a.lineTo(.796*b,.4597*c);a.lineTo(.796*b,c);a.close();a.moveTo(.1371*b,.7157*c);a.lineTo(.1371*b,.1568*c);a.lineTo(.2027*b,.1525*c);a.lineTo(.1498*b,.1771*c);a.lineTo(.1498*b,.7061*c);a.close();a.moveTo(.3846*b,.3941*c);a.lineTo(.614*b,.3941*c);a.lineTo(.6809*b,.3632*c);a.lineTo(.6642*b,.4*c);a.lineTo(.6642*b,.9067*
1311c);a.lineTo(.6191*b,.9317*c);a.lineTo(.3833*b,.9317*c);a.close();a.moveTo(.796*b,.4608*c);a.lineTo(.9639*b,.4469*c);a.lineTo(b,.3691*c);a.lineTo(b,.9077*c);a.lineTo(.9686*b,.9856*c);a.lineTo(.796*b,c);a.close();a.moveTo(.3378*b,.0608*c);a.lineTo(.3378*b,.0907*c);a.lineTo(.3197*b,.1008*c);a.close();a.moveTo(.8502*b,.2843*c);a.lineTo(.8502*b,.3083*c);a.lineTo(.794*b,.3136*c);a.close();a.moveTo(.6167*b,.3941*c);a.lineTo(.6167*b,.9317*c);a.moveTo(.9652*b,.4448*c);a.lineTo(.9652*b,.9851*c);a.stroke();
1312a.restore();a.setShadow(!1);d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(.4903*b,.1259*c);a.arcTo(.01*b,.008*c,0,0,1,.5023*b,.1189*c);a.arcTo(.2007*b,.16*c,0,0,1,.5639*b,.1333*c);a.arcTo(.602*b,.48*c,0,0,1,.7157*b,.2005*c);a.arcTo(.2006*b,.16*c,0,0,1,.7565*b,.2315*c);a.arcTo(.01*b,.008*c,0,0,1,.7445*b,.2421*c);a.arcTo(.2676*b,.2133*c,0,0,1,.6742*b,.2251*c);a.arcTo(.602*b,.48*c,0,0,1,.5204*b,.1541*c);a.arcTo(.1338*b,.1067*c,0,0,1,.4903*b,.1259*c);
1313a.close();a.moveTo(.4789*b,.1275*c);a.arcTo(.0334*b,.0267*c,0,0,0,.487*b,.1461*c);a.arcTo(.1672*b,.1333*c,0,0,0,.5237*b,.1728*c);a.arcTo(.6689*b,.5333*c,0,0,0,.6609*b,.2352*c);a.arcTo(.2676*b,.2133*c,0,0,0,.7244*b,.2501*c);a.arcTo(.0201*b,.016*c,0,0,0,.7411*b,.2475*c);a.lineTo(.5385*b,.3408*c);a.arcTo(.0669*b,.05333*c,0,0,1,.512*b,.3397*c);a.arcTo(.2676*b,.2133*c,0,0,1,.4548*b,.3248*c);a.arcTo(.6689*b,.5333*c,0,0,1,.3084*b,.2565*c);a.arcTo(.1672*b,.1333*c,0,0,1,.2776*b,.2304*c);a.arcTo(.01*b,.008*
1314c,0,0,1,.2776*b,.2197*c);a.close();a.fill();d=mxUtils.getValue(this.state.style,"fillColor","#ffffff");a.setFillColor(d);a.setLineJoin("round");a.setLineCap("round");a.begin();a.moveTo(.3398*b,.2421*c);a.lineTo(.4769*b,.1797*c);a.lineTo(.6341*b,.2512*c);a.lineTo(.4936*b,.3147*c);a.fill();a.begin();a.moveTo(.4334*b,.1941*c);a.lineTo(.6207*b,.2811*c);a.moveTo(.5338*b,.1995*c);a.lineTo(.3866*b,.2688*c);a.moveTo(.5873*b,.2235*c);a.lineTo(.4334*b,.2955*c);a.stroke();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");
1315a.begin();a.moveTo(0,.6517*c);a.lineTo(0,.0912*c);a.lineTo(.0368*b,.0155*c);a.lineTo(.2047*b,0);a.lineTo(.3378*b,.0619*c);a.lineTo(.3378*b,.0912*c);a.lineTo(.3819*b,.0693*c);a.lineTo(.6154*b,.0693*c);a.lineTo(.8502*b,.1776*c);a.lineTo(.8502*b,.3083*c);a.lineTo(.8682*b,.3061*c);a.lineTo(b,.3664*c);a.lineTo(b,.9099*c);a.lineTo(.9672*b,.9861*c);a.lineTo(.7926*b,c);a.lineTo(.6629*b,.9392*c);a.lineTo(.6629*b,.9099*c);a.lineTo(.6167*b,.9317*c);a.lineTo(.3813*b,.9317*c);a.lineTo(.1478*b,.8219*c);a.lineTo(.1478*
1316b,.7093*c);a.lineTo(.1365*b,.7163*c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dRedshift.prototype.cst.REDSHIFT,mxShapeAws3dRedshift);function mxShapeAws3dLambda(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dLambda,mxShape);mxShapeAws3dLambda.prototype.cst={LAMBDA:"mxgraph.aws3d.lambda",SHADING_COLORS:"shadingCols"};
1317mxShapeAws3dLambda.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));d=Math.min(d*b/92,d*c/109.5);this.background(a,0,0,b,c,d);a.setShadow(!1);this.foreground(a,0,0,b,c,d)};
1318mxShapeAws3dLambda.prototype.background=function(a,d,e,b,c,f){a.setStrokeWidth(f);a.save();a.save();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.1671*c);a.lineTo(.3424*b,0);a.lineTo(.663*b,0);a.lineTo(b,.1671*c);a.lineTo(b,.8365*c);a.lineTo(.663*b,c);a.lineTo(.3424*b,c);a.lineTo(0,.8365*c);a.close();a.fillAndStroke()};
1319mxShapeAws3dLambda.prototype.foreground=function(a,d,e,b,c,f){a.restore();a.setShadow(!1);a.setFillColor("#000000");d=mxUtils.getValue(this.state.style,mxShapeAws3dLambda.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");e=mxUtils.getValue(this.state.style,"flipH","0");"0"==e?a.setAlpha(d[0]):a.setAlpha(d[1]);a.begin();a.moveTo(0,.3242*c);a.lineTo(.3424*b,.4895*c);a.lineTo(.663*b,.4895*c);a.lineTo(.663*b,c);a.lineTo(.3424*b,c);a.lineTo(0,.8365*c);a.close();a.moveTo(0*b,0*c);a.lineTo(0*
1320b,0*c);a.lineTo(0*b,0*c);a.lineTo(0*b,0*c);a.lineTo(0*b,0*c);a.lineTo(0*b,0*c);a.close();a.moveTo(0*b,0*c);a.lineTo(0*b,0*c);a.lineTo(0*b,0*c);a.lineTo(0*b,0*c);a.lineTo(0*b,0*c);a.lineTo(0*b,0*c);a.close();a.fill();"0"==e?a.setAlpha(d[1]):a.setAlpha(d[0]);a.begin();a.moveTo(.663*b,.4895*c);a.lineTo(b,.3242*c);a.lineTo(b,.8365*c);a.lineTo(.663*b,c);a.close();a.fill();a.restore();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,.3242*c);a.lineTo(.3424*b,.4895*c);a.lineTo(.663*b,.4895*c);
1321a.lineTo(b,.3242*c);a.moveTo(.3424*b,.4895*c);a.lineTo(.3424*b,c);a.moveTo(.663*b,.4895*c);a.lineTo(.663*b,c);a.stroke();a.setFillColor("#5E5E5E");a.begin();a.moveTo(.3804*b,.1169*c);a.arcTo(.5435*b,.4566*c,0,0,1,.6087*b,.1123*c);a.arcTo(.33804*b,.3196*c,0,0,1,.725*b,.1553*c);a.arcTo(.1304*b,.1096*c,0,0,1,.7924*b,.2402*c);a.arcTo(.1522*b,.1279*c,0,0,1,.725*b,.3333*c);a.arcTo(.4416*b,.274*c,0,0,1,.6087*b,.3772*c);a.arcTo(.5435*b,.4566*c,0,0,1,.3804*b,.3708*c);a.arcTo(.3804*b,.3196*c,0,0,1,.2772*b,
1322.3324*c);a.arcTo(.1522*b,.1279*c,0,0,1,.2163*b,.2539*c);a.arcTo(.1522*b,.1279*c,0,0,1,.2663*b,.1644*c);a.arcTo(.3804*b,.3196*c,0,0,1,.3804*b,.1169*c);a.fill();a.setFillColor("#ffffff");a.begin();a.moveTo(.5565*b,.2174*c);a.arcTo(.0652*b,.0548*c,0,0,0,.5837*b,.1945*c);a.arcTo(.0326*b,.0274*c,0,0,0,.5793*b,.1671*c);a.arcTo(.0652*b,.0548*c,0,0,0,.525*b,.1598*c);a.arcTo(.0652*b,.0548*c,0,0,1,.5543*b,.1443*c);a.arcTo(.0761*b,.0639*c,0,0,1,.6163*b,.1662*c);a.arcTo(.0598*b,.0502*c,0,0,1,.6087*b,.2091*c);
1323a.lineTo(.5*b,.3032*c);a.arcTo(.0978*b,.0822*c,0,0,0,.4728*b,.3379*c);a.arcTo(.0272*b,.0228*c,0,0,0,.4924*b,.3571*c);a.arcTo(.0326*b,.0274*c,0,0,1,.4489*b,.3571*c);a.arcTo(.038*b,.032*c,0,0,1,.437*b,.3242*c);a.arcTo(.1087*b,.0913*c,0,0,1,.4674*b,.2886*c);a.lineTo(.5141*b,.2557*c);a.lineTo(.3185*b,.2895*c);a.lineTo(.2641*b,.2648*c);a.close();a.fill();a.setStrokeWidth(2*f);a.setStrokeColor("#292929");a.begin();a.moveTo(0,.1671*c);a.lineTo(.3424*b,0);a.lineTo(.663*b,0);a.lineTo(b,.1671*c);a.lineTo(b,
1324.8365*c);a.lineTo(.663*b,c);a.lineTo(.3424*b,c);a.lineTo(0,.8365*c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dLambda.prototype.cst.LAMBDA,mxShapeAws3dLambda);function mxShapeAws3dEbs2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws3dEbs2,mxShape);mxShapeAws3dEbs2.prototype.cst={EBS2:"mxgraph.aws3d.ebs2",SHADING_COLORS:"shadingCols"};
1325mxShapeAws3dEbs2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.state.style,"strokeWidth","1"));e=d*b/92;d=d*c/60;var f=parseFloat(mxUtils.getValue(this.state.style,"shadow","0"));d=Math.min(e,d);a.setStrokeWidth(d);a.setShadow(!1);a.save();a.save();a.setStrokeWidth(2*d);a.setStrokeColor("#292929");a.setLineJoin("round");1==f&&a.setShadow(!0);a.begin();a.moveTo(0,.5276*c);a.lineTo(0,.4188*c);a.lineTo(.071*b,.2898*c);a.lineTo(.4033*b,0);a.lineTo(.9301*
1326b,.464*c);a.lineTo(b,.5863*c);a.lineTo(b,.7035*c);a.lineTo(.6667*b,c);a.lineTo(.5355*b,c);a.close();a.fillAndStroke();a.restore();a.setFillColor("#000000");e=mxUtils.getValue(this.state.style,mxShapeAws3dEbs2.prototype.cst.SHADING_COLORS,"0.1,0.3").toString().split(",");f=mxUtils.getValue(this.state.style,"flipH","0");"0"==f?a.setAlpha(e[0]):a.setAlpha(e[1]);a.begin();a.moveTo(.071*b,.2948*c);a.lineTo(.6011*b,.7621*c);a.lineTo(.6667*b,c);a.lineTo(.5355*b,c);a.lineTo(0,.5276*c);a.lineTo(0,.4137*c);
1327a.close();a.fill();"0"==f?a.setAlpha(e[1]):a.setAlpha(e[0]);a.begin();a.moveTo(.6011*b,.7655*c);a.lineTo(.9344*b,.4724*c);a.lineTo(b,.7035*c);a.lineTo(.6667*b,c);a.close();a.fill();a.restore();a.setLineJoin("round");a.begin();a.moveTo(.071*b,.2948*c);a.lineTo(.6011*b,.7621*c);a.lineTo(.6667*b,c);a.lineTo(.5355*b,c);a.lineTo(0,.5276*c);a.lineTo(0,.4137*c);a.close();a.moveTo(.6011*b,.7655*c);a.lineTo(.9344*b,.4724*c);a.lineTo(b,.7035*c);a.lineTo(.6667*b,c);a.close();a.moveTo(.0033*b,.5276*c);a.lineTo(.071*
1328b,.2898*c);a.moveTo(.5325*b,.9976*c);a.lineTo(.603*b,.7593*c);a.stroke();a.setStrokeWidth(2*d);a.setLineCap("round");a.begin();a.moveTo(.3388*b,.3802*c);a.lineTo(.5027*b,.2345*c);a.lineTo(.6667*b,.3802*c);a.lineTo(.5027*b,.526*c);a.close();a.moveTo(.4426*b,.3802*c);a.lineTo(.5027*b,.3266*c);a.lineTo(.5628*b,.3802*c);a.lineTo(.5027*b,.4338*c);a.close();a.moveTo(.3867*b,.3284*c);a.lineTo(.3541*b,.2998*c);a.moveTo(.4436*b,.2748*c);a.lineTo(.4077*b,.2412*c);a.moveTo(.5704*b,.2803*c);a.lineTo(.5992*b,
1329.2513*c);a.moveTo(.6231*b,.3284*c);a.lineTo(.6503*b,.3032*c);a.moveTo(.622*b,.4338*c);a.lineTo(.6557*b,.4606*c);a.moveTo(.5667*b,.4845*c);a.lineTo(.5992*b,.5156*c);a.moveTo(.4414*b,.4874*c);a.lineTo(.412*b,.5159*c);a.moveTo(.3889*b,.4405*c);a.lineTo(.3607*b,.4657*c);a.stroke();a.setStrokeColor("#292929");a.setLineJoin("round");a.begin();a.moveTo(0,.5276*c);a.lineTo(0,.4188*c);a.lineTo(.071*b,.2898*c);a.lineTo(.4033*b,0);a.lineTo(.9301*b,.464*c);a.lineTo(b,.5863*c);a.lineTo(b,.7035*c);a.lineTo(.6667*
1330b,c);a.lineTo(.5355*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeAws3dEbs2.prototype.cst.EBS2,mxShapeAws3dEbs2);function mxShapeAws4ProductIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws4ProductIcon,mxShape);mxShapeAws4ProductIcon.prototype.cst={PRODUCT_ICON:"mxgraph.aws4.productIcon"};
1331mxShapeAws4ProductIcon.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=e=d=parseFloat(mxUtils.getValue(this.style,"opacity","100"));"none"==g&&(e=0);"none"==h&&(f=0);d=mxUtils.getValue(this.state.style,"strokeColor","none");a.setFillColor(d);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fill();a.setShadow(!1);var g=mxUtils.getValue(this.state.style,"fillColor","#ffffff"),h=mxUtils.getValue(this.state.style,"gradientColor",g),k=mxUtils.getValue(this.state.style,
1332"gradientDirection","south");a.setFillColor(g);a.setGradient(g,h,0,0,b,c,k,e,f);a.begin();a.moveTo(1,1);a.lineTo(b-1,1);a.lineTo(b-1,b-1);a.lineTo(1,b-1);a.close();a.fill();c=mxUtils.getValue(this.state.style,"prIcon","");c=mxStencilRegistry.getStencil(c);null!=c&&(a.setFillColor(d),a.setStrokeColor("none"),c.drawShape(a,this,1+.15*b,1+.15*b,.7*b-2,.7*b-2))};mxCellRenderer.registerShape(mxShapeAws4ProductIcon.prototype.cst.PRODUCT_ICON,mxShapeAws4ProductIcon);
1333function mxShapeAws4ResourceIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws4ResourceIcon,mxShape);mxShapeAws4ResourceIcon.prototype.cst={RESOURCE_ICON:"mxgraph.aws4.resourceIcon"};
1334mxShapeAws4ResourceIcon.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fill();a.setShadow(!1);d=mxUtils.getValue(this.state.style,"resIcon","");d=mxStencilRegistry.getStencil(d);null!=d&&(e=mxUtils.getValue(this.state.style,"strokeColor","#000000"),a.setFillColor(e),a.setStrokeColor("none"),d.drawShape(a,this,.1*b,.1*c,.8*b,.8*c))};
1335mxCellRenderer.registerShape(mxShapeAws4ResourceIcon.prototype.cst.RESOURCE_ICON,mxShapeAws4ResourceIcon);function mxShapeAws4Group(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws4Group,mxShape);mxShapeAws4Group.prototype.cst={GROUP:"mxgraph.aws4.group"};
1336mxShapeAws4Group.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.state.style,"grStroke","1");null!=this.style&&"0"==mxUtils.getValue(this.style,mxConstants.STYLE_POINTER_EVENTS,"1")&&(a.pointerEvents=!1);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();"1"==d?a.fillAndStroke():a.fill();a.pointerEvents=!0;a.setShadow(!1);b=mxUtils.getValue(this.state.style,"grIcon","");b=mxStencilRegistry.getStencil(b);null!=b&&(c=mxUtils.getValue(this.state.style,
1337"strokeColor","#000000"),a.setFillColor(c),a.setStrokeColor("none"),b.drawShape(a,this,0,0,25,25))};mxCellRenderer.registerShape(mxShapeAws4Group.prototype.cst.GROUP,mxShapeAws4Group);function mxShapeAws4GroupCenter(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws4GroupCenter,mxShape);mxShapeAws4GroupCenter.prototype.cst={GROUP_CENTER:"mxgraph.aws4.groupCenter"};
1338mxShapeAws4GroupCenter.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.state.style,"grStroke","1");a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();"1"==d?a.fillAndStroke():a.fill();a.setShadow(!1);c=mxUtils.getValue(this.state.style,"grIcon","");c=mxStencilRegistry.getStencil(c);null!=c&&(d=mxUtils.getValue(this.state.style,"strokeColor","#000000"),a.setFillColor(d),a.setStrokeColor("none"),c.drawShape(a,this,.5*(b-25),0,25,25))};
1339mxCellRenderer.registerShape(mxShapeAws4GroupCenter.prototype.cst.GROUP_CENTER,mxShapeAws4GroupCenter);function mxShapeAws4Group2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAws4Group2,mxShape);mxShapeAws4Group2.prototype.cst={GROUP2:"mxgraph.aws4.group2"};
1340mxShapeAws4Group2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke();a.setShadow(!1);d=mxUtils.getValue(this.state.style,"strokeColor","#000000");a.setFillColor(d);a.begin();a.moveTo(0,0);a.lineTo(25,0);a.lineTo(25,25);a.lineTo(0,25);a.close();a.fill();d=mxUtils.getValue(this.state.style,"grIcon","");d=mxStencilRegistry.getStencil(d);null!=d&&(a.setFillColor("#ffffff"),a.setStrokeColor("none"),
1341d.drawShape(a,this,2.5,2.5,20,20))};mxCellRenderer.registerShape(mxShapeAws4Group2.prototype.cst.GROUP2,mxShapeAws4Group2);function mxShapeAndroidTabBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAndroidTabBar,mxShape);
1342mxShapeAndroidTabBar.prototype.cst={MAIN_TEXT:"mainText",SHAPE_TAB_BAR:"mxgraph.android.tabBar",TEXT_COLOR:"textColor",TEXT_COLOR2:"textColor2",STROKE_COLOR2:"strokeColor2",FILL_COLOR2:"fillColor2",SELECTED:"+",TEXT_SIZE:"textSize"};
1343mxShapeAndroidTabBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeAndroidTabBar.prototype.cst.MAIN_TEXT,"+Tab 1, Tab 2, Tab 3").toString().split(","),g=mxUtils.getValue(this.style,mxShapeAndroidTabBar.prototype.cst.TEXT_COLOR,"none"),h=mxUtils.getValue(this.style,mxShapeAndroidTabBar.prototype.cst.TEXT_COLOR2,"none"),k=mxUtils.getValue(this.style,mxShapeAndroidTabBar.prototype.cst.TEXT_SIZE,"17").toString(),l=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,
1344"none"),m=mxUtils.getValue(this.style,mxShapeAndroidTabBar.prototype.cst.STROKE_COLOR2,"none"),n=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"none"),p=mxUtils.getValue(this.style,mxShapeAndroidTabBar.prototype.cst.FILL_COLOR2,"none"),q=f.length,t=Array(q),u=0,v=-1,r=0;r<q;r++){var w=f[r];w.charAt(0)===mxShapeAndroidTabBar.prototype.cst.SELECTED&&(w=f[r].substring(1),v=r);t[r]=mxUtils.getSizeForString(w,k,mxConstants.DEFAULT_FONTFAMILY).width;u+=t[r]}c=Math.max(c,1.5*k,7);u=10*q+u;b=Math.max(b,
1345u);a.translate(d,e);this.background(a,b,c,q,t,5,u,l,m,n,p,v);a.setShadow(!1);a.setFontStyle(mxConstants.FONT_BOLD);for(r=d=0;r<q;r++)r===v?a.setFontColor(h):a.setFontColor(g),d+=5,this.buttonText(a,d,c,f[r],t[r],k,u,b),d=d+t[r]+5};
1346mxShapeAndroidTabBar.prototype.background=function(a,d,e,b,c,f,g,h,k,l,m,n){a.begin();a.setStrokeColor(h);a.setFillColor(l);a.rect(0,0,d,e);a.fillAndStroke();a.setStrokeColor(k);a.begin();for(h=1;h<b;h++)if(h!==n&&h!==n+1){for(l=k=0;l<h;l++)k+=c[l]+2*f;k=k*d/g;a.moveTo(k,.2*e);a.lineTo(k,.8*e)}a.stroke();b=0;a.setFillColor(m);for(h=0;h<n;h++)b+=c[h]+2*f;b=b*d/g;d=(c[n]+2*f)*d/g;d+=b;a.rect(b,0,d-b,e);a.fill();a.setAlpha(1);a.setFillColor("#33b5e5");a.rect(b,.9*e,d-b,.1*e);a.fill()};
1347mxShapeAndroidTabBar.prototype.buttonText=function(a,d,e,b,c,f,g,h){b.charAt(0)===mxShapeAndroidTabBar.prototype.cst.SELECTED&&(b=b.substring(1));a.begin();a.setFontSize(f);a.text((d+.5*c)*h/g,.5*e,0,0,b,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeAndroidTabBar.prototype.cst.SHAPE_TAB_BAR,mxShapeAndroidTabBar);function mxShapeAndroidPhone(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
1348mxUtils.extend(mxShapeAndroidPhone,mxShape);mxShapeAndroidPhone.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.roundrect(0,0,b,c,25,25);a.fillAndStroke();a.setShadow(!1);this.foreground(a,d,e,b,c,25)};
1349mxShapeAndroidPhone.prototype.foreground=function(a,d,e,b,c,f){a.rect(.0625*b,.15*c,.875*b,.7*c);a.stroke();a.ellipse(.4875*b,.04125*c,.025*b,.0125*c);a.stroke();a.roundrect(.375*b,.075*c,.25*b,.01875*c,.02*b,.01*c);a.stroke();a.ellipse(.4*b,.875*c,.2*b,.1*c);a.stroke();a.roundrect(.4575*b,.905*c,.085*b,.04375*c,.00625*c,.00625*c);a.stroke()};mxCellRenderer.registerShape("mxgraph.android.phone",mxShapeAndroidPhone);
1350function mxShapeAndroidStatusBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAndroidStatusBar,mxShape);mxShapeAndroidStatusBar.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeAndroidStatusBar.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fill()};
1351mxShapeAndroidStatusBar.prototype.foreground=function(a,d,e,b,c){a.rect(0,0,b,c);a.fill();a.setFontColor(mxUtils.getValue(this.style,mxConstants.STYLE_FONTCOLOR,"#222222"));a.setFontSize(mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"5"));a.text(b-30,.5*c+1,0,0,"12:00",mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setFillColor("#444444");a.begin();a.moveTo(b-37,.5*c+6);a.lineTo(b-37,.5*c-5);a.lineTo(b-36,.5*c-5);a.lineTo(b-36,.5*c-6);a.lineTo(b-32,.5*c-6);a.lineTo(b-32,
1352.5*c-5);a.lineTo(b-31,.5*c-5);a.lineTo(b-31,.5*c+6);a.close();a.fill();a.setFillColor(mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"none"));a.ellipse(b-56,.5*c+2,2,2);a.fillAndStroke();a.setStrokeWidth(2);a.begin();a.moveTo(b-52,.5*c+1);a.arcTo(3.5,3.5,0,0,0,b-58,.5*c+1);a.stroke();a.begin();a.moveTo(b-50,.5*c-1);a.arcTo(6,6,0,0,0,b-60,.5*c-1);a.stroke();a.setStrokeWidth(1);a.rect(b-51,.5*c+5,2,1);a.fill();a.rect(b-48,.5*c+2,2,4);a.fill();a.rect(b-45,.5*c-1,2,7);a.fill();a.rect(b-42,
1353.5*c-4,2,10);a.fill();a.rect(b-37,.5*c-2,6,8);a.fill()};mxCellRenderer.registerShape("mxgraph.android.statusBar",mxShapeAndroidStatusBar);function mxShapeAndroidCheckboxGroup(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAndroidCheckboxGroup,mxShape);mxShapeAndroidCheckboxGroup.prototype.cst={STYLE_TEXTCOLOR2:"textColor2",STYLE_STROKECOLOR2:"strokeColor2",BUTTON_TEXT:"buttonText",SELECTED:"+"};
1354mxShapeAndroidCheckboxGroup.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=mxUtils.getValue(this.style,mxConstants.STYLE_TEXTCOLOR,"#666666"),g=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8").toString();d=mxUtils.getValue(this.style,mxShapeAndroidCheckboxGroup.prototype.cst.BUTTON_TEXT,"Option 1").toString().split(",");var h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"none");e=mxUtils.getValue(this.style,mxShapeAndroidCheckboxGroup.prototype.cst.STYLE_STROKECOLOR2,
1355"none");a.setStrokeColor(e);e=d.length;var k=Math.max(1.5*g,5),l=0,m=-1,n=e*k;c=Math.max(c,n);for(var p=0;p<e;p++){var q=d[p];q.charAt(0)===mxShapeAndroidCheckboxGroup.prototype.cst.SELECTED&&(q=d[p].substring(1),m=p);q=mxUtils.getSizeForString(q,g,mxConstants.DEFAULT_FONTFAMILY).width;q>l&&(l=q)}a.roundrect(0,0,Math.max(b,5+l+10),c,2.5,2.5);a.fillAndStroke();a.setShadow(!1);a.setFontSize(g);a.setFontColor(f);a.setStrokeColor(h);for(p=0;p<e;p++)b=(p*k+.5*k)*c/n,q=d[p],q.charAt(0)===mxShapeAndroidCheckboxGroup.prototype.cst.SELECTED&&
1356(q=d[p].substring(1),m=p),a.text(12.5,b,0,0,q,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),b-=2.5,m===p?(a.rect(2.5,b,5,5),a.fillAndStroke(),a.begin(),a.moveTo(3.75,b+2.5),a.lineTo(5,b+3.75),a.lineTo(6.25,b+1.25),a.stroke()):(a.rect(2.5,b,5,5),a.fillAndStroke()),m=-1};mxCellRenderer.registerShape("mxgraph.android.checkboxGroup",mxShapeAndroidCheckboxGroup);
1357function mxShapeAndroidRadioGroup(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAndroidRadioGroup,mxShape);mxShapeAndroidRadioGroup.prototype.cst={STYLE_TEXTCOLOR2:"textColor2",STYLE_STROKECOLOR2:"strokeColor2",BUTTON_TEXT:"buttonText",SELECTED:"+"};
1358mxShapeAndroidRadioGroup.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=mxUtils.getValue(this.style,mxConstants.STYLE_TEXTCOLOR,"#666666"),g=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8").toString();d=mxUtils.getValue(this.style,mxShapeAndroidRadioGroup.prototype.cst.BUTTON_TEXT,"Option 1").toString().split(",");var h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"none");e=mxUtils.getValue(this.style,mxShapeAndroidRadioGroup.prototype.cst.STYLE_STROKECOLOR2,
1359"none");a.setStrokeColor(e);e=d.length;var k=Math.max(1.5*g,5),l=0,m=-1,n=e*k;c=Math.max(c,n);for(var p=0;p<e;p++){var q=d[p];q.charAt(0)===mxShapeAndroidRadioGroup.prototype.cst.SELECTED&&(q=d[p].substring(1),m=p);q=mxUtils.getSizeForString(q,g,mxConstants.DEFAULT_FONTFAMILY).width;q>l&&(l=q)}a.roundrect(0,0,Math.max(b,5+l+10),c,2.5,2.5);a.fillAndStroke();a.setShadow(!1);a.setFontSize(g);a.setFontColor(f);a.setStrokeColor(h);a.setFillColor(h);for(p=0;p<e;p++)b=(p*k+.5*k)*c/n,q=d[p],q.charAt(0)===
1360mxShapeAndroidRadioGroup.prototype.cst.SELECTED&&(q=d[p].substring(1),m=p),a.text(12.5,b,0,0,q,mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),b-=2.5,m===p?(a.ellipse(2.5,b,5,5),a.stroke(),a.ellipse(3.75,b+1.25,2.5,2.5),a.fillAndStroke()):(a.ellipse(2.5,b,5,5),a.stroke())};mxCellRenderer.registerShape("mxgraph.android.radioGroup",mxShapeAndroidRadioGroup);function mxShapeAndroidMenuBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
1361mxUtils.extend(mxShapeAndroidMenuBar,mxShape);mxShapeAndroidMenuBar.prototype.cst={MENU_TEXT:"menuText"};
1362mxShapeAndroidMenuBar.prototype.paintVertexShape=function(a,d,e,b,c){for(var f=mxUtils.getValue(this.style,mxShapeAndroidMenuBar.prototype.cst.MENU_TEXT,"Item 1, Item 2, Item 3").toString().split(","),g=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"12"),h=f.length,k=0,l=0;l<h;l++){var m=mxUtils.getSizeForString(f[l],g,mxConstants.DEFAULT_FONTFAMILY).width;m>k&&(k=m)}g*=1.5;k=h*g;c=Math.max(c,k);a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.begin();for(l=1;l<h;l++)d=
1363l*g*c/k,a.moveTo(0,d),a.lineTo(b,d);a.stroke();for(l=0;l<h;l++)m+=2.5,d=(l*g+.5*g)*c/k,a.text(10,d,0,0,f[l],mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape("mxgraph.android.menuBar",mxShapeAndroidMenuBar);function mxShapeAndroidTextSelHandles(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAndroidTextSelHandles,mxShape);
1364mxShapeAndroidTextSelHandles.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"none");a.translate(d,e);d=Math.max(0,c-22.5);a.setAlpha(.5);a.rect(15,0,b-30,d);a.fill();a.begin();a.moveTo(0,c-15);a.lineTo(7.5,c-22.5);a.lineTo(15,c-15);a.close();a.moveTo(b-15,c-15);a.lineTo(b-7.5,c-22.5);a.lineTo(b,c-15);a.close();a.fill();a.setFillColor(f);a.rect(0,c-15,15,15);a.fill();a.rect(b-15,c-15,15,15);a.fill()};
1365mxCellRenderer.registerShape("mxgraph.android.textSelHandles",mxShapeAndroidTextSelHandles);function mxShapeAndroidIndeterminateSpinner(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAndroidIndeterminateSpinner,mxShape);mxShapeAndroidIndeterminateSpinner.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
1366mxShapeAndroidIndeterminateSpinner.prototype.background=function(a,d,e,b,c){a.setGradient("#aaaaaa","#dddddd",.325*b,0,.675*b,.5*c,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(.5*b,.1*c);a.arcTo(.4*b,.4*c,0,0,0,.5*b,.9*c);a.lineTo(.5*b,c);a.arcTo(.5*b,.5*c,0,0,1,.5*b,0);a.close();a.fill();a.setGradient("#ffffff","#dddddd",.325*b,0,.675*b,.5*c,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(.5*b,.1*c);a.arcTo(.4*b,.4*c,0,0,1,.5*b,.9*c);a.lineTo(.5*b,c);a.arcTo(.5*b,.5*c,0,0,0,.5*b,0);a.close();
1367a.fill()};mxCellRenderer.registerShape("mxgraph.android.indeterminateSpinner",mxShapeAndroidIndeterminateSpinner);function mxShapeAndroidAnchor(a,d,e,b){mxShape.call(this);this.bounds=a}mxUtils.extend(mxShapeAndroidAnchor,mxShape);mxShapeAndroidAnchor.prototype.cst={ANCHOR:"mxgraph.android.anchor"};mxShapeAndroidAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeAndroidAnchor.prototype.cst.ANCHOR,mxShapeAndroidAnchor);
1368function mxShapeAndroidRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAndroidRRect,mxShape);mxShapeAndroidRRect.prototype.cst={RRECT:"mxgraph.android.rrect",R_SIZE:"rSize"};mxShapeAndroidRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeAndroidRRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};
1369mxCellRenderer.registerShape(mxShapeAndroidRRect.prototype.cst.RRECT,mxShapeAndroidRRect);function mxShapeAndroidCheckbox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAndroidCheckbox,mxShape);mxShapeAndroidCheckbox.prototype.cst={CHECKBOX:"mxgraph.android.checkbox"};
1370mxShapeAndroidCheckbox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke();a.begin();a.moveTo(.8*b,.2*c);a.lineTo(.4*b,.8*c);a.lineTo(.25*b,.6*c);a.stroke()};mxCellRenderer.registerShape(mxShapeAndroidCheckbox.prototype.cst.CHECKBOX,mxShapeAndroidCheckbox);function mxShapeAndroidProgressBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx1=.8;this.dx2=.6}mxUtils.extend(mxShapeAndroidProgressBar,mxShape);
1371mxShapeAndroidProgressBar.prototype.customProperties=[{name:"dx1",dispName:"Middle Bar Length",type:"float",min:0,max:1,defVal:.8},{name:"dx2",dispName:"Left Bar Length",type:"float",min:0,max:1,defVal:.6}];mxShapeAndroidProgressBar.prototype.cst={PROGRESS_BAR:"mxgraph.android.progressBar"};
1372mxShapeAndroidProgressBar.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1)))),g=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2))));a.translate(d,e);a.save();a.save();a.setStrokeColor("#444444");a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke();a.restore();a.setShadow(!1);a.begin();a.moveTo(0,.5*c);a.lineTo(f,.5*c);a.stroke();a.setStrokeColor("#000000");a.setAlpha("0.2");a.begin();
1373a.moveTo(0,.5*c);a.lineTo(f,.5*c);a.stroke();a.restore();a.setShadow(!1);a.begin();a.moveTo(0,.5*c);a.lineTo(g,.5*c);a.stroke()};mxCellRenderer.registerShape(mxShapeAndroidProgressBar.prototype.cst.PROGRESS_BAR,mxShapeAndroidProgressBar);mxShapeAndroidProgressBar.prototype.constraints=null;
1374Graph.handleFactory[mxShapeAndroidProgressBar.prototype.cst.PROGRESS_BAR]=function(a){var d=[Graph.createHandle(a,["dx1"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1))));return new mxPoint(a.x+b*a.width,a.y+a.height/2)},function(a,b){this.state.style.dx1=Math.round(100*Math.max(0,Math.min(1,(b.x-a.x)/a.width)))/100})];a=Graph.createHandle(a,["dx2"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx1))));
1375return new mxPoint(a.x+b*a.width,a.y+a.height/2)},function(a,b){this.state.style.dx2=Math.round(100*Math.max(0,Math.min(1,(b.x-a.x)/a.width)))/100});d.push(a);return d};function mxShapeAndroidProgressScrubberDisabled(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.3}mxUtils.extend(mxShapeAndroidProgressScrubberDisabled,mxShape);
1376mxShapeAndroidProgressScrubberDisabled.prototype.customProperties=[{name:"dx",dispName:"Handle Position",type:"float",min:0,max:1,defVal:.3}];mxShapeAndroidProgressScrubberDisabled.prototype.cst={PROGRESS_SCRUBBER_DISABLED:"mxgraph.android.progressScrubberDisabled"};
1377mxShapeAndroidProgressScrubberDisabled.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.translate(d,e);a.save();a.save();a.setStrokeColor("#444444");a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke();a.restore();a.setShadow(!1);a.setAlpha("0.5");a.setFillColor("#666666");a.begin();d=Math.min(c,.1*b)/2;a.ellipse(f-d,.5*c-d,2*d,2*d);a.fill();a.restore();a.setShadow(!1);a.begin();d=Math.min(c,.1*b)/8;a.ellipse(f-
1378d,.5*c-d,2*d,2*d);a.fill()};mxCellRenderer.registerShape(mxShapeAndroidProgressScrubberDisabled.prototype.cst.PROGRESS_SCRUBBER_DISABLED,mxShapeAndroidProgressScrubberDisabled);mxShapeAndroidProgressScrubberDisabled.prototype.constraints=null;
1379Graph.handleFactory[mxShapeAndroidProgressScrubberDisabled.prototype.cst.PROGRESS_SCRUBBER_DISABLED]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+a.height/2)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,(e.x-a.x)/a.width)))/100})]};
1380function mxShapeAndroidProgressScrubberFocused(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.3}mxUtils.extend(mxShapeAndroidProgressScrubberFocused,mxShape);mxShapeAndroidProgressScrubberFocused.prototype.customProperties=[{name:"dx",dispName:"Handle Position",type:"float",min:0,max:1,defVal:.3}];mxShapeAndroidProgressScrubberFocused.prototype.cst={PROGRESS_SCRUBBER_FOCUSED:"mxgraph.android.progressScrubberFocused"};
1381mxShapeAndroidProgressScrubberFocused.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),g=mxUtils.getValue(this.style,"fillColor","#ffffff");a.translate(d,e);a.save();a.save();a.setStrokeColor("#444444");a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke();a.restore();a.setShadow(!1);a.setAlpha("0.75");a.begin();d=Math.min(c,.1*b)/2;a.ellipse(f-d,.5*c-d,2*d,2*d);a.fill();a.restore();a.setShadow(!1);a.setStrokeColor(g);
1382a.begin();a.moveTo(0,.5*c);a.lineTo(f,.5*c);a.stroke();a.begin();d=Math.min(c,.1*b)/8;a.ellipse(f-d,.5*c-d,2*d,2*d);a.fill()};mxCellRenderer.registerShape(mxShapeAndroidProgressScrubberFocused.prototype.cst.PROGRESS_SCRUBBER_FOCUSED,mxShapeAndroidProgressScrubberFocused);mxShapeAndroidProgressScrubberFocused.prototype.constraints=null;
1383Graph.handleFactory[mxShapeAndroidProgressScrubberFocused.prototype.cst.PROGRESS_SCRUBBER_FOCUSED]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+a.height/2)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,(e.x-a.x)/a.width)))/100})]};
1384function mxShapeAndroidProgressScrubberPressed(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.3}mxUtils.extend(mxShapeAndroidProgressScrubberPressed,mxShape);mxShapeAndroidProgressScrubberPressed.prototype.customProperties=[{name:"dx",dispName:"Handle Position",type:"float",min:0,max:1,defVal:.3}];mxShapeAndroidProgressScrubberPressed.prototype.cst={PROGRESS_SCRUBBER_PRESSED:"mxgraph.android.progressScrubberPressed"};
1385mxShapeAndroidProgressScrubberPressed.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),g=mxUtils.getValue(this.style,"fillColor","#ffffff");a.translate(d,e);a.save();a.save();a.setStrokeColor("#444444");a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke();a.restore();a.setShadow(!1);a.setStrokeColor(g);a.setAlpha("0.5");a.begin();d=Math.min(c,.1*b)/2;a.ellipse(f-d,.5*c-d,2*d,2*d);a.fillAndStroke();a.restore();a.setShadow(!1);
1386a.setStrokeColor(g);a.begin();a.moveTo(0,.5*c);a.lineTo(f,.5*c);a.stroke();a.begin();d=Math.min(c,.1*b)/8;a.ellipse(f-d,.5*c-d,2*d,2*d);a.fill()};mxCellRenderer.registerShape(mxShapeAndroidProgressScrubberPressed.prototype.cst.PROGRESS_SCRUBBER_PRESSED,mxShapeAndroidProgressScrubberPressed);mxShapeAndroidProgressScrubberPressed.prototype.constraints=null;
1387Graph.handleFactory[mxShapeAndroidProgressScrubberPressed.prototype.cst.PROGRESS_SCRUBBER_PRESSED]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+a.height/2)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,(e.x-a.x)/a.width)))/100})]};
1388function mxShapeAndroidQuickscroll2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=.5}mxUtils.extend(mxShapeAndroidQuickscroll2,mxShape);mxShapeAndroidQuickscroll2.prototype.customProperties=[{name:"dy",dispName:"Handle Position",type:"float",min:0,max:1,defVal:.5}];mxShapeAndroidQuickscroll2.prototype.cst={QUICKSCROLL:"mxgraph.android.quickscroll2"};
1389mxShapeAndroidQuickscroll2.prototype.paintVertexShape=function(a,d,e,b,c){var f=Math.min(c-20,Math.max(20,c*Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))))));mxUtils.getValue(this.style,"fillColor","#ffffff");a.translate(d,e);a.save();a.save();a.setStrokeColor("#cccccc");a.begin();a.moveTo(b-3,0);a.lineTo(b-3,c);a.stroke();a.restore();a.begin();a.roundrect(b-6,f-10,6,20,1,1);a.fillAndStroke();a.setFillColor("#cccccc");a.begin();a.rect(0,f-20,b-18,40);a.fill();a.setFillColor("#666666");
1390a.begin();a.moveTo(b-18,f-20);a.lineTo(b-6,f);a.lineTo(b-18,f+20);a.close();a.fill();a.setFontSize("12");a.text(.5*(b-18),f,0,0,"Aa",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeAndroidQuickscroll2.prototype.cst.QUICKSCROLL,mxShapeAndroidQuickscroll2);mxShapeAndroidQuickscroll2.prototype.constraints=null;
1391Graph.handleFactory[mxShapeAndroidQuickscroll2.prototype.cst.QUICKSCROLL]=function(a){return[Graph.createHandle(a,["dy"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-3,a.y+Math.min(a.height-20,Math.max(20,d*a.height)))},function(a,e){this.state.style.dy=Math.round(1E3*Math.max(0,Math.min(1,(e.y-a.y)/a.height)))/1E3})]};
1392function mxShapeAndroidQuickscroll3(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=.5}mxUtils.extend(mxShapeAndroidQuickscroll3,mxShape);mxShapeAndroidQuickscroll3.prototype.customProperties=[{name:"dy",dispName:"Handle Position",type:"float",min:0,max:1,defVal:.5}];mxShapeAndroidQuickscroll3.prototype.cst={QUICKSCROLL:"mxgraph.android.quickscroll3"};
1393mxShapeAndroidQuickscroll3.prototype.paintVertexShape=function(a,d,e,b,c){var f=Math.min(c-10,Math.max(10,c*Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))))));mxUtils.getValue(this.style,"fillColor","#ffffff");a.translate(d,e);a.save();a.setStrokeColor("#cccccc");a.begin();a.moveTo(.5*b,0);a.lineTo(.5*b,c);a.stroke();a.restore();a.begin();a.roundrect(.5*b-3,f-10,6,20,1,1);a.fillAndStroke()};
1394mxCellRenderer.registerShape(mxShapeAndroidQuickscroll3.prototype.cst.QUICKSCROLL,mxShapeAndroidQuickscroll3);mxShapeAndroidQuickscroll3.prototype.constraints=null;
1395Graph.handleFactory[mxShapeAndroidQuickscroll3.prototype.cst.QUICKSCROLL]=function(a){return[Graph.createHandle(a,["dy"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+.5*a.width,a.y+Math.min(a.height-10,Math.max(10,d*a.height)))},function(a,e){this.state.style.dy=Math.round(1E3*Math.max(0,Math.min(1,(e.y-a.y)/a.height)))/1E3})]};
1396function mxShapeAndroidScrollbars2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAndroidScrollbars2,mxShape);mxShapeAndroidScrollbars2.prototype.cst={SCROLLBARS:"mxgraph.android.scrollbars2"};mxShapeAndroidScrollbars2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.rect(b-5,0,5,c-7);a.fillAndStroke();a.begin();a.rect(0,c-5,b-7,5);a.fillAndStroke()};
1397mxCellRenderer.registerShape(mxShapeAndroidScrollbars2.prototype.cst.SCROLLBARS,mxShapeAndroidScrollbars2);mxShapeAndroidScrollbars2.prototype.constraints=null;function mxShapeAndroidSpinner2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeAndroidSpinner2,mxShape);mxShapeAndroidSpinner2.prototype.cst={SPINNER:"mxgraph.android.spinner2"};
1398mxShapeAndroidSpinner2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,c);a.lineTo(b,c);a.stroke();d=Math.min(b/10,c);a.begin();a.moveTo(b-d,c);a.lineTo(b,c-d);a.lineTo(b,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeAndroidSpinner2.prototype.cst.SPINNER,mxShapeAndroidSpinner2);mxShapeAndroidSpinner2.prototype.constraints=null;
1399function mxArchiMateLocation(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMateLocation,mxShape);mxArchiMateLocation.prototype.cst={LOCATION:"mxgraph.archimate.location"};mxArchiMateLocation.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);a.translate(b-20,5);this.foreground(a,b-20,5,15,15)};
1400mxArchiMateLocation.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};mxArchiMateLocation.prototype.foreground=function(a,d,e,b,c){a.setDashed(!1);a.translate(3,0);b-=6;a.begin();a.moveTo(.5*b,c);a.arcTo(.1775*b,.3*c,0,0,0,.345*b,.7*c);a.arcTo(.538*b,.364*c,0,0,1,.5*b,0);a.arcTo(.538*b,.364*c,0,0,1,.655*b,.7*c);a.arcTo(.1775*b,.3*c,0,0,0,.5*b,c);a.stroke()};mxCellRenderer.registerShape(mxArchiMateLocation.prototype.cst.LOCATION,mxArchiMateLocation);
1401mxArchiMateLocation.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1402.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1403function mxArchiMateBusiness(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMateBusiness,mxShape);mxArchiMateBusiness.prototype.cst={BUSINESS:"mxgraph.archimate.business",TYPE:"busType",PROCESS:"process",FUNCTION:"function",INTERACTION:"interaction",EVENT:"event",SERVICE:"service"};
1404mxArchiMateBusiness.prototype.customProperties=[{name:"busType",dispName:"Business Type",type:"enum",enumList:[{val:"process",dispName:"Process"},{val:"function",dispName:"Function"},{val:"interaction",dispName:"Interaction"},{val:"event",dispName:"Event"},{val:"service",dispName:"Service"}]}];mxArchiMateBusiness.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);a.translate(b-20,5);this.foreground(a,b-20,5,15,15)};
1405mxArchiMateBusiness.prototype.background=function(a,d,e,b,c){a.roundrect(0,0,b,c,10,10);a.fillAndStroke()};
1406mxArchiMateBusiness.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxArchiMateBusiness.prototype.cst.TYPE,mxArchiMateBusiness.prototype.cst.PROCESS);a.setDashed(!1);d===mxArchiMateBusiness.prototype.cst.PROCESS?(a.translate(0,2),c-=4,a.begin(),a.moveTo(0,.15*c),a.lineTo(.65*b,.15*c),a.lineTo(.65*b,0),a.lineTo(b,.5*c),a.lineTo(.65*b,c),a.lineTo(.65*b,.85*c),a.lineTo(0,.85*c),a.close(),a.stroke()):d===mxArchiMateBusiness.prototype.cst.FUNCTION?(a.translate(2,0),b-=4,a.begin(),
1407a.moveTo(0,.15*c),a.lineTo(.5*b,0),a.lineTo(b,.15*c),a.lineTo(b,c),a.lineTo(.5*b,.85*c),a.lineTo(0,c),a.close(),a.stroke()):d===mxArchiMateBusiness.prototype.cst.INTERACTION?(a.begin(),a.moveTo(.55*b,0),a.arcTo(.45*b,.5*c,0,0,1,.55*b,c),a.close(),a.moveTo(.45*b,0),a.arcTo(.45*b,.5*c,0,0,0,.45*b,c),a.close(),a.stroke()):d===mxArchiMateBusiness.prototype.cst.EVENT?(a.translate(0,3),c-=6,a.begin(),a.moveTo(b-.5*c,0),a.arcTo(.5*c,.5*c,0,0,1,b-.5*c,c),a.lineTo(0,c),a.arcTo(.5*c,.5*c,0,0,0,0,0),a.close(),
1408a.stroke()):d===mxArchiMateBusiness.prototype.cst.SERVICE&&(a.translate(0,3),c-=6,a.begin(),a.moveTo(b-.5*c,0),a.arcTo(.5*c,.5*c,0,0,1,b-.5*c,c),a.lineTo(0,c),a.arcTo(.5*c,.5*c,0,0,1,0,0),a.close(),a.stroke())};mxCellRenderer.registerShape(mxArchiMateBusiness.prototype.cst.BUSINESS,mxArchiMateBusiness);
1409mxArchiMateBusiness.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,-2.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1410.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-2.9,-2.9));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,2.9,-2.9));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1411function mxArchiMateBusinessObject(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMateBusinessObject,mxShape);mxArchiMateBusinessObject.prototype.cst={BUSINESS_OBJECT:"mxgraph.archimate.businessObject"};mxArchiMateBusinessObject.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);this.foreground(a,0,0,b,c)};
1412mxArchiMateBusinessObject.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};mxArchiMateBusinessObject.prototype.foreground=function(a,d,e,b,c){15<=c&&(a.begin(),a.moveTo(0,15),a.lineTo(b,15),a.stroke())};mxCellRenderer.registerShape(mxArchiMateBusinessObject.prototype.cst.BUSINESS_OBJECT,mxArchiMateBusinessObject);
1413mxArchiMateBusinessObject.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,-2.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1414.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-2.9,-2.9));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,2.9,-2.9));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1415function mxArchiMateRepresentation(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMateRepresentation,mxShape);mxArchiMateRepresentation.prototype.cst={REPRESENTATION:"mxgraph.archimate.representation"};mxArchiMateRepresentation.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c)};
1416mxArchiMateRepresentation.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,.85*c);a.arcTo(.35*b,.35*c,0,0,0,.5*b,.85*c);a.arcTo(.35*b,.35*c,0,0,1,0,.85*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMateRepresentation.prototype.cst.REPRESENTATION,mxArchiMateRepresentation);
1417mxArchiMateRepresentation.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1418.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.85),!1,null));a.push(new mxConnectionConstraint(new mxPoint(.75,.745),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.955),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1419function mxArchiMateProduct(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMateProduct,mxShape);mxArchiMateProduct.prototype.cst={PRODUCT:"mxgraph.archimate.product"};mxArchiMateProduct.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);this.foreground(a,0,0,b,c)};mxArchiMateProduct.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};
1420mxArchiMateProduct.prototype.foreground=function(a,d,e,b,c){15<=c&&(a.begin(),a.moveTo(0,15),a.lineTo(.6*b,15),a.lineTo(.6*b,0),a.stroke())};mxCellRenderer.registerShape(mxArchiMateProduct.prototype.cst.PRODUCT,mxArchiMateProduct);function mxArchiMateApplication(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMateApplication,mxShape);
1421mxArchiMateApplication.prototype.cst={APPLICATION:"mxgraph.archimate.application",TYPE:"appType",COMPONENT:"comp",INTERFACE:"interface",INTERFACE2:"interface2",FUNCTION:"function",INTERACTION:"interaction",SERVICE:"service",NODE:"node",NETWORK:"network",COMM_PATH:"commPath",SYS_SW:"sysSw",ARTIFACT:"artifact",ACTOR:"actor",ROLE:"role",COLLABORATION:"collab"};
1422mxArchiMateApplication.prototype.customProperties=[{name:"appType",dispName:"App Type",type:"enum",enumList:[{val:"comp",dispName:"Component"},{val:"interface",dispName:"Interface"},{val:"interface2",dispName:"Interface2"},{val:"function",dispName:"Function"},{val:"interaction",dispName:"Interaction"},{val:"service",dispName:"Service"},{val:"node",dispName:"Node"},{val:"network",dispName:"Network"},{val:"commPath",dispName:"Comm Path"},{val:"artifact",dispName:"Artifact"},{val:"sysSw",dispName:"System Sw"},
1423{val:"path",dispName:"Path"},{val:"actor",dispName:"Actor"},{val:"role",dispName:"Role"},{val:"collab",dispName:"Collaboration"}]}];mxArchiMateApplication.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);a.translate(b-20,5);this.foreground(a,b-20,5,15,15)};mxArchiMateApplication.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};
1424mxArchiMateApplication.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxArchiMateApplication.prototype.cst.TYPE,mxArchiMateApplication.prototype.cst.COMPONENT);a.setDashed(!1);d===mxArchiMateApplication.prototype.cst.COMPONENT?(a.translate(1,0),b-=2,a.rect(.25*b,0,.75*b,c),a.stroke(),a.rect(0,.25*c,.5*b,.15*c),a.fillAndStroke(),a.rect(0,.6*c,.5*b,.15*c),a.fillAndStroke()):d===mxArchiMateApplication.prototype.cst.COLLABORATION?(a.translate(0,3),c-=6,a.ellipse(0,0,.6*b,c),a.stroke(),
1425a.ellipse(.4*b,0,.6*b,c),a.fillAndStroke()):d===mxArchiMateApplication.prototype.cst.INTERFACE?(a.translate(0,4),c-=8,a.ellipse(.5*b,0,.5*b,c),a.stroke(),a.begin(),a.moveTo(0,.5*c),a.lineTo(.5*b,.5*c),a.stroke()):d===mxArchiMateApplication.prototype.cst.INTERFACE2?(a.translate(0,1),c-=2,a.begin(),a.moveTo(0,.5*c),a.lineTo(.6*b,.5*c),a.moveTo(b,0),a.arcTo(.4*b,.5*c,0,0,0,b,c),a.stroke()):d===mxArchiMateApplication.prototype.cst.FUNCTION?(a.begin(),a.moveTo(.5*b,0),a.lineTo(b,.2*c),a.lineTo(b,c),a.lineTo(.5*
1426b,.8*c),a.lineTo(0,c),a.lineTo(0,.2*c),a.close(),a.stroke()):d===mxArchiMateApplication.prototype.cst.INTERACTION?(a.begin(),a.moveTo(.55*b,0),a.arcTo(.45*b,.5*c,0,0,1,.55*b,c),a.close(),a.moveTo(.45*b,0),a.arcTo(.45*b,.5*c,0,0,0,.45*b,c),a.close(),a.stroke()):d===mxArchiMateApplication.prototype.cst.SERVICE?(a.translate(0,3),c-=6,a.begin(),a.moveTo(b-.5*c,0),a.arcTo(.5*c,.5*c,0,0,1,b-.5*c,c),a.lineTo(0,c),a.arcTo(.5*c,.5*c,0,0,1,0,0),a.close(),a.stroke()):d===mxArchiMateApplication.prototype.cst.NODE?
1427(a.begin(),a.moveTo(0,.25*c),a.lineTo(.25*b,0),a.lineTo(b,0),a.lineTo(b,.75*c),a.lineTo(.75*b,c),a.lineTo(0,c),a.close(),a.moveTo(0,.25*c),a.lineTo(.75*b,.25*c),a.lineTo(.75*b,c),a.moveTo(b,0),a.lineTo(.75*b,.25*c),a.stroke()):d===mxArchiMateApplication.prototype.cst.NETWORK?(a.translate(0,2),c-=4,a.begin(),a.moveTo(.4*b,.2*c),a.lineTo(.85*b,.2*c),a.lineTo(.6*b,.8*c),a.lineTo(.15*b,.8*c),a.close(),a.stroke(),e=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),a.setFillColor(e),
1428a.ellipse(.25*b,0,.3*b,.4*c),a.fill(),a.ellipse(.7*b,0,.3*b,.4*c),a.fill(),a.ellipse(0,.6*c,.3*b,.4*c),a.fill(),a.ellipse(.45*b,.6*c,.3*b,.4*c),a.fill()):d===mxArchiMateApplication.prototype.cst.COMM_PATH?(a.translate(0,5),c-=10,a.begin(),a.moveTo(.1*b,0),a.lineTo(0,.5*c),a.lineTo(.1*b,c),a.moveTo(.9*b,0),a.lineTo(b,.5*c),a.lineTo(.9*b,c),a.stroke(),a.setDashed(!0),a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxArchiMateApplication.prototype.cst.SYS_SW?(a.ellipse(.3*b,0,.7*b,.7*c),
1429a.stroke(),a.ellipse(0,.02*c,.98*b,.98*c),a.fillAndStroke()):d===mxArchiMateApplication.prototype.cst.ARTIFACT?(a.translate(2,0),b-=4,a.begin(),a.moveTo(0,0),a.lineTo(.7*b,0),a.lineTo(b,.22*c),a.lineTo(b,c),a.lineTo(0,c),a.close(),a.moveTo(.7*b,0),a.lineTo(.7*b,.22*c),a.lineTo(b,.22*c),a.stroke()):d===mxArchiMateApplication.prototype.cst.ACTOR&&(a.translate(3,0),b-=6,a.ellipse(.2*b,0,.6*b,.3*c),a.stroke(),a.begin(),a.moveTo(.5*b,.3*c),a.lineTo(.5*b,.75*c),a.moveTo(0,.45*c),a.lineTo(b,.45*c),a.moveTo(0,
1430c),a.lineTo(.5*b,.75*c),a.lineTo(b,c),a.stroke());d===mxArchiMateApplication.prototype.cst.ROLE&&(a.translate(0,4),c-=8,a.begin(),a.moveTo(.8*b,0),a.lineTo(.2*b,0),a.arcTo(.2*b,.5*c,0,0,0,.2*b,c),a.lineTo(.8*b,c),a.stroke(),a.ellipse(.6*b,0,.4*b,c),a.stroke())};mxCellRenderer.registerShape(mxArchiMateApplication.prototype.cst.APPLICATION,mxArchiMateApplication);
1431mxArchiMateApplication.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1432.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1433function mxArchiMateTech(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMateTech,mxShape);mxArchiMateTech.prototype.cst={TECH:"mxgraph.archimate.tech",TYPE:"techType",DEVICE:"device",PLATEAU:"plateau"};mxArchiMateTech.prototype.customProperties=[{name:"techType",dispName:"Tech Type",type:"enum",enumList:[{val:"device",dispName:"Device"},{val:"plateau",dispName:"Plateau"}]}];
1434mxArchiMateTech.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);a.translate(b-30,15);this.foreground(a,b-30,15,15,15)};mxArchiMateTech.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,10);a.lineTo(10,0);a.lineTo(b,0);a.lineTo(b,c-10);a.lineTo(b-10,c);a.lineTo(0,c);a.close();a.moveTo(0,10);a.lineTo(b-10,10);a.lineTo(b-10,c);a.moveTo(b,0);a.lineTo(b-10,10);a.fillAndStroke()};
1435mxArchiMateTech.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxArchiMateTech.prototype.cst.TYPE,mxArchiMateTech.prototype.cst.DEVICE);a.setDashed(!1);d===mxArchiMateTech.prototype.cst.DEVICE?(a.roundrect(0,0,b,.88*c,.05*b,.05*c),a.stroke(),a.begin(),a.moveTo(.1*b,.88*c),a.lineTo(0,c),a.lineTo(b,c),a.lineTo(.9*b,.88*c),a.stroke()):d===mxArchiMateTech.prototype.cst.PLATEAU&&(d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),a.setFillColor(d),a.rect(.4*
1436b,0,.6*b,.2*c),a.fill(),a.rect(.2*b,.4*c,.6*b,.2*c),a.fill(),a.rect(0,.8*c,.6*b,.2*c),a.fill())};mxCellRenderer.registerShape(mxArchiMateTech.prototype.cst.TECH,mxArchiMateTech);
1437mxArchiMateTech.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,10));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,10,0));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1438.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,0,-10));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-10,0));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
1439.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};function mxArchiMateMotivational(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMateMotivational,mxShape);mxArchiMateMotivational.prototype.cst={MOTIV:"mxgraph.archimate.motiv",TYPE:"motivType",STAKE:"stake",DRIVER:"driver",ASSESSMENT:"assess",GOAL:"goal",REQUIREMENT:"req",CONSTRAINT:"const",PRINCIPLE:"princ"};
1440mxArchiMateMotivational.prototype.customProperties=[{name:"motivType",dispName:"Motivational Type",type:"enum",enumList:[{val:"stake",dispName:"Stake"},{val:"driver",dispName:"Driver"},{val:"assess",dispName:"Assessment"},{val:"goal",dispName:"Goal"},{val:"req",dispName:"Requirement"},{val:"const",dispName:"Constraint"},{val:"princ",dispName:"Principle"}]}];
1441mxArchiMateMotivational.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);a.translate(b-20,5);this.foreground(a,b-20,5,15,15)};mxArchiMateMotivational.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(10,0);a.lineTo(b-10,0);a.lineTo(b,10);a.lineTo(b,c-10);a.lineTo(b-10,c);a.lineTo(10,c);a.lineTo(0,c-10);a.lineTo(0,10);a.close();a.fillAndStroke()};
1442mxArchiMateMotivational.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxArchiMateMotivational.prototype.cst.TYPE,mxArchiMateMotivational.prototype.cst.STAKE);a.setDashed(!1);d===mxArchiMateMotivational.prototype.cst.STAKE?(a.translate(0,4),c-=8,a.begin(),a.moveTo(.8*b,0),a.lineTo(.2*b,0),a.arcTo(.2*b,.5*c,0,0,0,.2*b,c),a.lineTo(.8*b,c),a.stroke(),a.ellipse(.6*b,0,.4*b,c),a.stroke()):d===mxArchiMateMotivational.prototype.cst.DRIVER?(a.ellipse(.1*b,.1*c,.8*b,.8*c),a.stroke(),
1443a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.moveTo(.5*b,0),a.lineTo(.5*b,c),a.moveTo(.145*b,.145*c),a.lineTo(.855*b,.855*c),a.moveTo(.145*b,.855*c),a.lineTo(.855*b,.145*c),a.stroke(),d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),a.setFillColor(d),a.ellipse(.35*b,.35*c,.3*b,.3*c),a.fillAndStroke()):d===mxArchiMateMotivational.prototype.cst.ASSESSMENT?(a.ellipse(.2*b,0,.8*b,.8*c),a.stroke(),a.begin(),a.moveTo(0,c),a.lineTo(.32*b,.68*c),a.stroke()):d===mxArchiMateMotivational.prototype.cst.GOAL?
1444(a.ellipse(0,0,b,c),a.stroke(),a.ellipse(.15*b,.15*c,.7*b,.7*c),a.stroke(),d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),a.setFillColor(d),a.ellipse(.3*b,.3*c,.4*b,.4*c),a.fillAndStroke()):d===mxArchiMateMotivational.prototype.cst.REQUIREMENT?(a.translate(0,4),c-=8,a.begin(),a.moveTo(.25*b,0),a.lineTo(b,0),a.lineTo(.75*b,c),a.lineTo(0,c),a.close(),a.stroke()):d===mxArchiMateMotivational.prototype.cst.CONSTRAINT?(a.translate(0,4),c-=8,a.begin(),a.moveTo(.25*b,0),a.lineTo(b,
14450),a.lineTo(.75*b,c),a.lineTo(0,c),a.close(),a.moveTo(.45*b,0),a.lineTo(.2*b,c),a.stroke()):d===mxArchiMateMotivational.prototype.cst.PRINCIPLE&&(a.begin(),a.moveTo(.05*b,.05*c),a.arcTo(2.3*b,2.3*c,0,0,1,.95*b,.05*c),a.arcTo(2.3*b,2.3*c,0,0,1,.95*b,.95*c),a.arcTo(2.3*b,2.3*c,0,0,1,.05*b,.95*c),a.arcTo(2.3*b,2.3*c,0,0,1,.05*b,.05*c),a.close(),a.stroke(),d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),a.setFillColor(d),a.begin(),a.moveTo(.45*b,.7*c),a.lineTo(.42*b,.15*c),a.lineTo(.58*
1446b,.15*c),a.lineTo(.55*b,.7*c),a.close(),a.fill(),a.rect(.45*b,.75*c,.1*b,.1*c),a.fill())};mxCellRenderer.registerShape(mxArchiMateMotivational.prototype.cst.MOTIV,mxArchiMateMotivational);
1447mxArchiMateMotivational.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,5,5));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,-5,5));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1448.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-5,-5));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,5,-5));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1449function mxArchiMateGap(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMateGap,mxShape);mxArchiMateGap.prototype.cst={GAP:"mxgraph.archimate.gap"};mxArchiMateGap.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);a.translate(b-20,5);this.foreground(a,b-20,5,15,15)};
1450mxArchiMateGap.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,.85*c);a.arcTo(.35*b,.35*c,0,0,0,.5*b,.85*c);a.arcTo(.35*b,.35*c,0,0,1,0,.85*c);a.close();a.fillAndStroke()};mxArchiMateGap.prototype.foreground=function(a,d,e,b,c){a.setDashed(!1);a.translate(0,2);c-=4;a.ellipse(.15*b,0,.7*b,c);a.stroke();a.begin();a.moveTo(0,.35*c);a.lineTo(b,.35*c);a.moveTo(0,.65*c);a.lineTo(b,.65*c);a.stroke()};
1451mxCellRenderer.registerShape(mxArchiMateGap.prototype.cst.GAP,mxArchiMateGap);
1452mxArchiMateGap.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1453.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.85),!1,null));a.push(new mxConnectionConstraint(new mxPoint(.75,.745),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.955),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1454function mxArchiMate3Application(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Application,mxShape);
1455mxArchiMate3Application.prototype.cst={APPLICATION:"mxgraph.archimate3.application",TYPE:"appType",COMPONENT:"comp",COLLABORATION:"collab",INTERFACE:"interface",INTERFACE2:"interface2",LOCATION:"location",FUNCTION:"func",INTERACTION:"interaction",SERVICE:"serv",EVENT:"event",EVENT2:"event2",NODE:"node",NETWORK:"netw",COMM_PATH:"commPath",ACTOR:"actor",ASSESSMENT:"assess",GOAL:"goal",OUTCOME:"outcome",ROLE:"role",PROCESS:"proc",DRIVER:"driver",PRINCIPLE:"principle",REQUIREMENT:"requirement",CONSTRAINT:"constraint",
1456RESOURCE:"resource",CAPABILITY:"capability",COURSE:"course",MATERIAL:"material",DISTRIBUTION:"distribution",SYS_SW:"sysSw",ARTIFACT:"artifact",PATH:"path",ARCHI_TYPE:"archiType",TYPE_SQUARE:"square",TYPE_ROUNDED:"rounded",TYPE_OCT:"oct"};
1457mxArchiMate3Application.prototype.customProperties=[{name:"archiType",dispName:"Type",type:"enum",enumList:[{val:"square",dispName:"Square"},{val:"rounded",dispName:"Rounded"},{val:"oct",dispName:"Octagonal"}]},{name:"appType",dispName:"App Type",type:"enum",enumList:[{val:"comp",dispName:"Component"},{val:"collab",dispName:"Collaboration"},{val:"interface",dispName:"Interface"},{val:"interface2",dispName:"Interface2"},{val:"func",dispName:"Function"},{val:"interaction",dispName:"Interaction"},{val:"location",
1458dispName:"Location"},{val:"serv",dispName:"Service"},{val:"event",dispName:"Event"},{val:"event2",dispName:"Event2"},{val:"node",dispName:"Node"},{val:"netw",dispName:"Network"},{val:"commPath",dispName:"Comm Path"},{val:"actor",dispName:"Actor"},{val:"assess",dispName:"Assessment"},{val:"goal",dispName:"Goal"},{val:"outcome",dispName:"Outcome"},{val:"role",dispName:"Role"},{val:"proc",dispName:"Process"},{val:"driver",dispName:"Driver"},{val:"principle",dispName:"Principle"},{val:"requirement",dispName:"Requirement"},
1459{val:"constraint",dispName:"Constraint"},{val:"resource",dispName:"Resource"},{val:"capability",dispName:"Capability"},{val:"course",dispName:"Course"},{val:"material",dispName:"Material"},{val:"distribution",dispName:"Distribution"},{val:"sysSw",dispName:"System Sw"},{val:"artifact",dispName:"Artifact"},{val:"path",dispName:"Path"}]}];
1460mxArchiMate3Application.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);a.translate(b-20,5);this.foreground(a,b-20,5,15,15)};
1461mxArchiMate3Application.prototype.background=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxArchiMate3Application.prototype.cst.ARCHI_TYPE,"square");"rounded"===d?a.roundrect(0,0,b,c,10,10):"oct"===d&&20<=b&&20<=c?(a.begin(),a.moveTo(0,10),a.lineTo(10,0),a.lineTo(b-10,0),a.lineTo(b,10),a.lineTo(b,c-10),a.lineTo(b-10,c),a.lineTo(10,c),a.lineTo(0,c-10),a.close(),a.fillAndStroke()):a.rect(0,0,b,c);a.fillAndStroke()};
1462mxArchiMate3Application.prototype.foreground=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxArchiMate3Application.prototype.cst.TYPE,"");a.setDashed(!1);f===mxArchiMate3Application.prototype.cst.COMPONENT?(a.translate(1,0),mxArchiMate3Component.prototype.background(a,d,e,b-2,c)):f===mxArchiMate3Application.prototype.cst.COLLABORATION?(a.translate(0,3),mxArchiMate3Collaboration.prototype.background(a,d,e,b,c-6)):f===mxArchiMate3Application.prototype.cst.INTERFACE?(a.translate(0,4),mxArchiMate3Interface.prototype.background(a,
1463d,e,b,c-8)):f===mxArchiMate3Application.prototype.cst.INTERFACE2?(a.translate(0,1),c-=2,a.begin(),a.moveTo(0,.5*c),a.lineTo(.6*b,.5*c),a.moveTo(b,0),a.arcTo(.4*b,.5*c,0,0,0,b,c),a.stroke()):f===mxArchiMate3Application.prototype.cst.FUNCTION?mxArchiMate3Function.prototype.background(a,d,e,b,c):f===mxArchiMate3Application.prototype.cst.INTERACTION?mxArchiMate3Interaction.prototype.background(a,d,e,b,c):f===mxArchiMate3Application.prototype.cst.LOCATION?(a.translate(3,0),b-=6,a.begin(),a.moveTo(.5*b,
1464c),a.arcTo(.1775*b,.3*c,0,0,0,.345*b,.7*c),a.arcTo(.538*b,.364*c,0,0,1,.5*b,0),a.arcTo(.538*b,.364*c,0,0,1,.655*b,.7*c),a.arcTo(.1775*b,.3*c,0,0,0,.5*b,c),a.stroke()):f===mxArchiMate3Application.prototype.cst.SERVICE?(a.translate(0,3),mxArchiMate3Service.prototype.background(a,d,e,b,c-6)):f===mxArchiMate3Application.prototype.cst.EVENT?(a.translate(0,3),mxArchiMate3Event.prototype.background(a,d,e,b,c-6)):f===mxArchiMate3Application.prototype.cst.EVENT2?(a.translate(0,3),mxArchiMate3Event2.prototype.background(a,
1465d,e,b,c-6)):f===mxArchiMate3Application.prototype.cst.NODE?mxArchiMate3Node.prototype.background(a,d,e,b,c):f===mxArchiMate3Application.prototype.cst.NETWORK?(a.translate(0,2),c-=4,a.begin(),a.moveTo(.4*b,.2*c),a.lineTo(.85*b,.2*c),a.lineTo(.6*b,.8*c),a.lineTo(.15*b,.8*c),a.close(),a.stroke(),d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),a.setFillColor(d),a.ellipse(.25*b,0,.3*b,.4*c),a.fill(),a.ellipse(.7*b,0,.3*b,.4*c),a.fill(),a.ellipse(0,.6*c,.3*b,.4*c),a.fill(),a.ellipse(.45*
1466b,.6*c,.3*b,.4*c),a.fill()):f===mxArchiMate3Application.prototype.cst.COMM_PATH?(a.translate(0,5),c-=10,a.begin(),a.moveTo(.1*b,0),a.lineTo(0,.5*c),a.lineTo(.1*b,c),a.moveTo(.9*b,0),a.lineTo(b,.5*c),a.lineTo(.9*b,c),a.stroke(),a.setDashed(!0),a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):f===mxArchiMate3Application.prototype.cst.ARTIFACT?(a.translate(2,0),b-=4,a.begin(),a.moveTo(0,0),a.lineTo(.7*b,0),a.lineTo(b,.22*c),a.lineTo(b,c),a.lineTo(0,c),a.close(),a.moveTo(.7*b,0),a.lineTo(.7*b,
1467.22*c),a.lineTo(b,.22*c),a.stroke()):f===mxArchiMate3Application.prototype.cst.ACTOR?(a.translate(3,0),mxArchiMate3Actor.prototype.background(a,d,e,b-6,c)):f===mxArchiMate3Application.prototype.cst.ROLE?(a.translate(0,4),mxArchiMate3Role.prototype.background(a,d,e,b,c-8)):f===mxArchiMate3Application.prototype.cst.PROCESS?(a.translate(0,3),mxArchiMate3Process.prototype.background(a,d,e,b,c-6)):f===mxArchiMate3Application.prototype.cst.DRIVER?(a.ellipse(.1*b,.1*c,.8*b,.8*c),a.stroke(),a.begin(),a.moveTo(0,
1468.5*c),a.lineTo(b,.5*c),a.moveTo(.5*b,0),a.lineTo(.5*b,c),a.moveTo(.145*b,.145*c),a.lineTo(.855*b,.855*c),a.moveTo(.145*b,.855*c),a.lineTo(.855*b,.145*c),a.stroke(),d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),a.setFillColor(d),a.ellipse(.35*b,.35*c,.3*b,.3*c),a.fillAndStroke()):f===mxArchiMate3Application.prototype.cst.ASSESSMENT?(a.ellipse(.2*b,0,.8*b,.8*c),a.stroke(),a.begin(),a.moveTo(0,c),a.lineTo(.32*b,.68*c),a.stroke()):f===mxArchiMate3Application.prototype.cst.GOAL?
1469(a.ellipse(0,0,b,c),a.stroke(),a.ellipse(.15*b,.15*c,.7*b,.7*c),a.stroke(),d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),a.setFillColor(d),a.ellipse(.3*b,.3*c,.4*b,.4*c),a.fillAndStroke()):f===mxArchiMate3Application.prototype.cst.OUTCOME?(a.ellipse(0,.2*b,.8*b,.8*c),a.stroke(),a.ellipse(.15*b,.35*b,.5*b,.5*c),a.stroke(),a.ellipse(.3*b,.5*b,.2*b,.2*c),a.stroke(),a.begin(),a.moveTo(.4*b,.6*c),a.lineTo(.9*b,.1*c),a.moveTo(.42*b,.4*c),a.lineTo(.4*b,.6*c),a.lineTo(.6*b,.58*c),
1470a.moveTo(.8*b,0),a.lineTo(.75*b,.25*c),a.lineTo(b,.2*c),a.stroke()):f===mxArchiMate3Application.prototype.cst.PRINCIPLE?(a.begin(),a.moveTo(.05*b,.05*c),a.arcTo(2.3*b,2.3*c,0,0,1,.95*b,.05*c),a.arcTo(2.3*b,2.3*c,0,0,1,.95*b,.95*c),a.arcTo(2.3*b,2.3*c,0,0,1,.05*b,.95*c),a.arcTo(2.3*b,2.3*c,0,0,1,.05*b,.05*c),a.close(),a.stroke(),d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),a.setFillColor(d),a.begin(),a.moveTo(.45*b,.7*c),a.lineTo(.42*b,.15*c),a.lineTo(.58*b,.15*c),a.lineTo(.55*
1471b,.7*c),a.close(),a.fill(),a.rect(.45*b,.75*c,.1*b,.1*c),a.fill()):f===mxArchiMate3Application.prototype.cst.REQUIREMENT?(a.translate(0,4),mxArchiMate3Requirement.prototype.background(a,d,e,b,c-8)):f===mxArchiMate3Application.prototype.cst.CONSTRAINT?(a.translate(0,4),mxArchiMate3Constraint.prototype.background(a,d,e,b,c-8)):f===mxArchiMate3Application.prototype.cst.MATERIAL?(a.translate(0,1),c-=2,a.begin(),a.moveTo(0,.5*c),a.lineTo(.25*b,0),a.lineTo(.75*b,0),a.lineTo(b,.5*c),a.lineTo(.75*b,c),a.lineTo(.25*
1472b,c),a.close(),a.moveTo(.15*b,.5*c),a.lineTo(.31*b,.2*c),a.moveTo(.69*b,.2*c),a.lineTo(.85*b,.5*c),a.moveTo(.68*b,.8*c),a.lineTo(.32*b,.8*c),a.stroke()):f===mxArchiMate3Application.prototype.cst.DISTRIBUTION?(a.translate(0,4),mxArchiMate3Distribution.prototype.background(a,d,e,b,c-8)):f===mxArchiMate3Application.prototype.cst.RESOURCE?(a.translate(0,1),mxArchiMate3Resource.prototype.background(a,d,e,b,c-2)):f===mxArchiMate3Application.prototype.cst.CAPABILITY?mxArchiMate3Capability.prototype.background(a,
1473d,e,b,c):f===mxArchiMate3Application.prototype.cst.COURSE?mxArchiMate3Course.prototype.background(a,d,e,b,c):f===mxArchiMate3Application.prototype.cst.SYS_SW?mxArchiMate3SysSw.prototype.background(a,d,e,b,c):f===mxArchiMate3Application.prototype.cst.ARTIFACT?(a.translate(2,0),mxArchiMate3Artifact.prototype.background(a,d,e,b-4,c)):f===mxArchiMate3Application.prototype.cst.PATH&&(a.translate(0,5),mxArchiMate3Path.prototype.background(a,d,e,b,c-10))};
1474mxCellRenderer.registerShape(mxArchiMate3Application.prototype.cst.APPLICATION,mxArchiMate3Application);
1475mxArchiMate3Application.prototype.getConstraints=function(a,d,e){a=[];var b=mxUtils.getValue(this.style,mxArchiMate3Application.prototype.cst.ARCHI_TYPE,"square");a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.75),
1476!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));"rounded"===b?(a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,2.9)),a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,-2.9,2.9)),
1477a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-2.9,-2.9)),a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,2.9,-2.9))):"oct"===b&&20<=d&&20<=e?(a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,5,5)),a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,-5,5)),a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-5,-5)),a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,5,-5))):(a.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),a.push(new mxConnectionConstraint(new mxPoint(1,
14780),!1)),a.push(new mxConnectionConstraint(new mxPoint(1,1),!1)),a.push(new mxConnectionConstraint(new mxPoint(0,1),!1)));return a};function mxArchiMate3Component(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Component,mxShape);mxArchiMate3Component.prototype.cst={COMPONENT:"mxgraph.archimate3.component"};mxArchiMate3Component.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1479mxArchiMate3Component.prototype.background=function(a,d,e,b,c){a.rect(.25*b,0,.75*b,c);a.fillAndStroke();a.rect(0,.25*c,.5*b,.15*c);a.fillAndStroke();a.rect(0,.6*c,.5*b,.15*c);a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Component.prototype.cst.COMPONENT,mxArchiMate3Component);
1480mxArchiMate3Component.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.625,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.625,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.325),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.675),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
14811),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));return a};function mxArchiMate3Collaboration(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Collaboration,mxShape);mxArchiMate3Collaboration.prototype.cst={COLLABORATION:"mxgraph.archimate3.collaboration"};mxArchiMate3Collaboration.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1482mxArchiMate3Collaboration.prototype.background=function(a,d,e,b,c){a.ellipse(0,0,.6*b,c);a.fillAndStroke();a.ellipse(.4*b,0,.6*b,c);a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Collaboration.prototype.cst.COLLABORATION,mxArchiMate3Collaboration);
1483mxArchiMate3Collaboration.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.11,.11),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.125),!1));a.push(new mxConnectionConstraint(new mxPoint(.89,.11),!1));a.push(new mxConnectionConstraint(new mxPoint(.11,.89),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.875),!1));a.push(new mxConnectionConstraint(new mxPoint(.89,.89),!1));a.push(new mxConnectionConstraint(new mxPoint(.3,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.7,
14840),!1));a.push(new mxConnectionConstraint(new mxPoint(.3,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.7,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));return a};function mxArchiMate3Interface(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Interface,mxShape);mxArchiMate3Interface.prototype.cst={INTERFACE:"mxgraph.archimate3.interface"};
1485mxArchiMate3Interface.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};mxArchiMate3Interface.prototype.background=function(a,d,e,b,c){a.ellipse(.5*b,0,.5*b,c);a.fillAndStroke();a.begin();a.moveTo(0,.5*c);a.lineTo(.5*b,.5*c);a.stroke()};mxCellRenderer.registerShape(mxArchiMate3Interface.prototype.cst.INTERFACE,mxArchiMate3Interface);
1486mxArchiMate3Interface.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));return a};function mxArchiMate3Process(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Process,mxShape);
1487mxArchiMate3Process.prototype.cst={PROCESS:"mxgraph.archimate3.process"};mxArchiMate3Process.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};mxArchiMate3Process.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,.3*c);a.lineTo(.6*b,.3*c);a.lineTo(.6*b,0);a.lineTo(b,.5*c);a.lineTo(.6*b,c);a.lineTo(.6*b,.7*c);a.lineTo(0,.7*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Process.prototype.cst.PROCESS,mxArchiMate3Process);
1488mxArchiMate3Process.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.3),!1));a.push(new mxConnectionConstraint(new mxPoint(.3,.3),!1));a.push(new mxConnectionConstraint(new mxPoint(.6,.3),!1));a.push(new mxConnectionConstraint(new mxPoint(.6,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.6,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.6,.7),!1));a.push(new mxConnectionConstraint(new mxPoint(.3,
1489.7),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.7),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};function mxArchiMate3Function(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Function,mxShape);mxArchiMate3Function.prototype.cst={FUNCTION:"mxgraph.archimate3.function"};mxArchiMate3Function.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1490mxArchiMate3Function.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(.5*b,0);a.lineTo(b,.2*c);a.lineTo(b,c);a.lineTo(.5*b,.8*c);a.lineTo(0,c);a.lineTo(0,.2*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Function.prototype.cst.FUNCTION,mxArchiMate3Function);
1491mxArchiMate3Function.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.2),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.6),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.8),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.6),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
1492.2),!1));return a};function mxArchiMate3Interaction(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Interaction,mxShape);mxArchiMate3Interaction.prototype.cst={INTERACTION:"mxgraph.archimate3.interaction"};mxArchiMate3Interaction.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1493mxArchiMate3Interaction.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(.55*b,0);a.arcTo(.45*b,.5*c,0,0,1,.55*b,c);a.close();a.moveTo(.45*b,0);a.arcTo(.45*b,.5*c,0,0,0,.45*b,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Interaction.prototype.cst.INTERACTION,mxArchiMate3Interaction);
1494mxArchiMate3Interaction.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.86,.14),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.86,.86),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.14,.86),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.14,
1495.14),!1));return a};function mxArchiMate3Service(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Service,mxShape);mxArchiMate3Service.prototype.cst={SERVICE:"mxgraph.archimate3.service"};mxArchiMate3Service.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1496mxArchiMate3Service.prototype.background=function(a,d,e,b,c){d=Math.max(b-.5*c,.5*b);b=Math.min(.5*c,.5*b);a.begin();a.moveTo(d,0);a.arcTo(.5*c,.5*c,0,0,1,d,c);a.lineTo(b,c);a.arcTo(.5*c,.5*c,0,0,1,b,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Service.prototype.cst.SERVICE,mxArchiMate3Service);
1497mxArchiMate3Service.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(d-.5*e,.5*d);d=Math.min(.5*e,.5*d);a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,0));a.push(new mxConnectionConstraint(new mxPoint(0,
14980),!1,null,b+.355*e,.145*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+.5*e,.5*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+.355*e,.855*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.355*e,.145*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.5*e,.5*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.355*e,.855*e));return a};
1499function mxArchiMate3Requirement(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Requirement,mxShape);mxArchiMate3Requirement.prototype.cst={REQUIREMENT:"mxgraph.archimate3.requirement"};mxArchiMate3Requirement.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1500mxArchiMate3Requirement.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(.25*b,0);a.lineTo(b,0);a.lineTo(.75*b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Requirement.prototype.cst.REQUIREMENT,mxArchiMate3Requirement);
1501mxArchiMate3Requirement.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.9375,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(.875,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.8125,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,
15021),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.0625,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.125,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.1875,.25),!1));return a};
1503function mxArchiMate3Constraint(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Constraint,mxShape);mxArchiMate3Constraint.prototype.cst={CONSTRAINT:"mxgraph.archimate3.constraint"};mxArchiMate3Constraint.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1504mxArchiMate3Constraint.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(.25*b,0);a.lineTo(b,0);a.lineTo(.75*b,c);a.lineTo(0,c);a.close();a.moveTo(.45*b,0);a.lineTo(.2*b,c);a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Constraint.prototype.cst.CONSTRAINT,mxArchiMate3Constraint);
1505mxArchiMate3Constraint.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.9375,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(.875,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.8125,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,
15061),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.0625,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.125,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.1875,.25),!1));return a};function mxArchiMate3Event(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
1507mxUtils.extend(mxArchiMate3Event,mxShape);mxArchiMate3Event.prototype.cst={EVENT:"mxgraph.archimate3.event"};mxArchiMate3Event.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};mxArchiMate3Event.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(b-.5*c,0);a.arcTo(.5*c,.5*c,0,0,1,b-.5*c,c);a.lineTo(0,c);a.lineTo(.5*c,.5*c);a.lineTo(0,0);a.close();a.fillAndStroke()};
1508mxCellRenderer.registerShape(mxArchiMate3Event.prototype.cst.EVENT,mxArchiMate3Event);
1509mxArchiMate3Event.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.5*e,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.5*e,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*e,.5*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
15100),!1,null,.5*(d-.5*e),0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-.5*e),e));return a};function mxArchiMate3Event2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Event2,mxShape);mxArchiMate3Event2.prototype.cst={EVENT2:"mxgraph.archimate3.event2"};mxArchiMate3Event2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1511mxArchiMate3Event2.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(b-.5*c,0);a.arcTo(.5*c,.5*c,0,0,1,b-.5*c,c);a.lineTo(0,c);a.arcTo(.5*c,.5*c,0,0,0,0,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Event2.prototype.cst.EVENT2,mxArchiMate3Event2);function mxArchiMate3Actor(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Actor,mxShape);mxArchiMate3Actor.prototype.cst={ACTOR:"mxgraph.archimate3.actor"};
1512mxArchiMate3Actor.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};mxArchiMate3Actor.prototype.background=function(a,d,e,b,c){a.ellipse(.2*b,0,.6*b,.3*c);a.fillAndStroke();a.begin();a.moveTo(.5*b,.3*c);a.lineTo(.5*b,.75*c);a.moveTo(0,.45*c);a.lineTo(b,.45*c);a.moveTo(0,c);a.lineTo(.5*b,.75*c);a.lineTo(b,c);a.stroke()};mxCellRenderer.registerShape(mxArchiMate3Actor.prototype.cst.ACTOR,mxArchiMate3Actor);
1513mxArchiMate3Actor.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.2,.15),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.8,.15),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.45),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.45),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));return a};
1514function mxArchiMate3Role(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Role,mxShape);mxArchiMate3Role.prototype.cst={ROLE:"mxgraph.archimate3.role"};mxArchiMate3Role.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1515mxArchiMate3Role.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(.8*b,0);a.lineTo(.2*b,0);a.arcTo(.2*b,.5*c,0,0,0,.2*b,c);a.lineTo(.8*b,c);a.fillAndStroke();a.ellipse(.6*b,0,.4*b,c);a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Role.prototype.cst.ROLE,mxArchiMate3Role);
1516mxArchiMate3Role.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.2,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.8,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.8,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.2,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
1517.5),!1));return a};function mxArchiMate3BusinessObject(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3BusinessObject,mxShape);mxArchiMate3BusinessObject.prototype.cst={BUSINESS_OBJECT:"mxgraph.archimate3.businessObject"};mxArchiMate3BusinessObject.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);this.foreground(a,0,0,b,c)};
1518mxArchiMate3BusinessObject.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};mxArchiMate3BusinessObject.prototype.foreground=function(a,d,e,b,c){15<=c&&(a.begin(),a.moveTo(0,15),a.lineTo(b,15),a.stroke())};mxCellRenderer.registerShape(mxArchiMate3BusinessObject.prototype.cst.BUSINESS_OBJECT,mxArchiMate3BusinessObject);
1519mxArchiMate3BusinessObject.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1520.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1521function mxArchiMate3Contract(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Contract,mxShape);mxArchiMate3Contract.prototype.cst={CONTRACT:"mxgraph.archimate3.contract"};mxArchiMate3Contract.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);this.foreground(a,0,0,b,c)};mxArchiMate3Contract.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};
1522mxArchiMate3Contract.prototype.foreground=function(a,d,e,b,c){15<=c&&(a.begin(),a.moveTo(0,15),a.lineTo(b,15),a.stroke());30<=c&&(a.begin(),a.moveTo(0,c-15),a.lineTo(b,c-15),a.stroke())};mxCellRenderer.registerShape(mxArchiMate3Contract.prototype.cst.CONTRACT,mxArchiMate3Contract);
1523mxArchiMate3Contract.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1524.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1525function mxArchiMate3Product(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Product,mxShape);mxArchiMate3Product.prototype.cst={PRODUCT:"mxgraph.archimate3.product"};mxArchiMate3Product.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);this.foreground(a,0,0,b,c)};mxArchiMate3Product.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};
1526mxArchiMate3Product.prototype.foreground=function(a,d,e,b,c){15<=c&&(a.begin(),a.moveTo(0,15),a.lineTo(.6*b,15),a.lineTo(.6*b,0),a.stroke())};mxCellRenderer.registerShape(mxArchiMate3Product.prototype.cst.PRODUCT,mxArchiMate3Product);
1527mxArchiMate3Product.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1528.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1529function mxArchiMate3Representation(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Representation,mxShape);mxArchiMate3Representation.prototype.cst={REPRESENTATION:"mxgraph.archimate3.representation"};mxArchiMate3Representation.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c)};
1530mxArchiMate3Representation.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,.85*c);a.arcTo(.35*b,.35*c,0,0,0,.5*b,.85*c);a.arcTo(.35*b,.35*c,0,0,1,0,.85*c);a.close();a.fillAndStroke();20<=c&&a.begin();a.moveTo(0,15);a.lineTo(b,15);a.stroke()};mxCellRenderer.registerShape(mxArchiMate3Representation.prototype.cst.REPRESENTATION,mxArchiMate3Representation);
1531mxArchiMate3Representation.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1532.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,.745),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.955),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1533function mxArchiMate3Deliverable(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Deliverable,mxShape);mxArchiMate3Deliverable.prototype.cst={DELIVERABLE:"mxgraph.archimate3.deliverable"};mxArchiMate3Deliverable.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c)};
1534mxArchiMate3Deliverable.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,.85*c);a.arcTo(.35*b,.35*c,0,0,0,.5*b,.85*c);a.arcTo(.35*b,.35*c,0,0,1,0,.85*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Deliverable.prototype.cst.DELIVERABLE,mxArchiMate3Deliverable);
1535mxArchiMate3Deliverable.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1536.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,.745),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.955),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1537function mxArchiMate3Location(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Location,mxShape);mxArchiMate3Location.prototype.cst={LOCATION:"mxgraph.archimate3.location"};mxArchiMate3Location.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);a.translate(b-20,5);this.foreground(a,b-20,5,15,15)};
1538mxArchiMate3Location.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};mxArchiMate3Location.prototype.foreground=function(a,d,e,b,c){a.setDashed(!1);a.translate(3,0);b-=6;a.begin();a.moveTo(.5*b,c);a.arcTo(.1775*b,.3*c,0,0,0,.345*b,.7*c);a.arcTo(.538*b,.364*c,0,0,1,.5*b,0);a.arcTo(.538*b,.364*c,0,0,1,.655*b,.7*c);a.arcTo(.1775*b,.3*c,0,0,0,.5*b,c);a.stroke()};mxCellRenderer.registerShape(mxArchiMate3Location.prototype.cst.LOCATION,mxArchiMate3Location);
1539function mxArchiMate3Gap(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Gap,mxShape);mxArchiMate3Gap.prototype.cst={GAP:"mxgraph.archimate3.gap"};mxArchiMate3Gap.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);a.translate(b-20,5);this.foreground(a,b-20,5,15,15)};
1540mxArchiMate3Gap.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,.85*c);a.arcTo(.35*b,.35*c,0,0,0,.5*b,.85*c);a.arcTo(.35*b,.35*c,0,0,1,0,.85*c);a.close();a.fillAndStroke()};mxArchiMate3Gap.prototype.foreground=function(a,d,e,b,c){a.setDashed(!1);a.translate(0,2);c-=4;a.ellipse(.15*b,0,.7*b,c);a.stroke();a.begin();a.moveTo(0,.35*c);a.lineTo(b,.35*c);a.moveTo(0,.65*c);a.lineTo(b,.65*c);a.stroke()};
1541mxCellRenderer.registerShape(mxArchiMate3Gap.prototype.cst.GAP,mxArchiMate3Gap);
1542mxArchiMate3Gap.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1543.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,.745),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.955),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.85),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1544function mxArchiMate3Tech(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Tech,mxShape);mxArchiMate3Tech.prototype.cst={TECH:"mxgraph.archimate3.tech",TYPE:"techType",DEVICE:"device",PLATEAU:"plateau",FACILITY:"facility",EQUIPMENT:"equipment",SYS_SW:"sysSw"};
1545mxArchiMate3Tech.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);a.translate(b-30,15);this.foreground(a,b-30,15,15,15)};mxArchiMate3Tech.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,10);a.lineTo(10,0);a.lineTo(b,0);a.lineTo(b,c-10);a.lineTo(b-10,c);a.lineTo(0,c);a.close();a.moveTo(0,10);a.lineTo(b-10,10);a.lineTo(b-10,c);a.moveTo(b,0);a.lineTo(b-10,10);a.fillAndStroke()};
1546mxArchiMate3Tech.prototype.foreground=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxArchiMate3Tech.prototype.cst.TYPE,mxArchiMate3Tech.prototype.cst.DEVICE);a.setDashed(!1);f===mxArchiMate3Tech.prototype.cst.PLATEAU?(d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),a.setFillColor(d),a.rect(.4*b,0,.6*b,.2*c),a.fill(),a.rect(.2*b,.4*c,.6*b,.2*c),a.fill(),a.rect(0,.8*c,.6*b,.2*c),a.fill()):f===mxArchiMate3Tech.prototype.cst.FACILITY?(a.begin(),a.moveTo(0,c),a.lineTo(0,
15470),a.lineTo(.13*b,0),a.lineTo(.13*b,.7*c),a.lineTo(.42*b,.55*c),a.lineTo(.42*b,.7*c),a.lineTo(.71*b,.55*c),a.lineTo(.71*b,.7*c),a.lineTo(b,.55*c),a.lineTo(b,c),a.close(),a.stroke()):f===mxArchiMate3Tech.prototype.cst.EQUIPMENT?(a.begin(),a.moveTo(.72*b,.38*c),a.curveTo(.78*b,.38*b,.85*b,.34*c,.85*b,.26*c),a.curveTo(.85*b,.18*b,.78*b,.14*c,.73*b,.14*c),a.curveTo(.64*b,.14*b,.59*b,.2*c,.59*b,.26*c),a.curveTo(.59*b,.33*c,.65*b,.38*b,.72*b,.38*c),a.close(),a.moveTo(.68*b,.52*c),a.lineTo(.67*b,.45*c),
1548a.lineTo(.61*b,.43*c),a.lineTo(.56*b,.48*c),a.lineTo(.5*b,.42*c),a.lineTo(.54*b,.36*c),a.lineTo(.52*b,.31*c),a.lineTo(.45*b,.31*c),a.lineTo(.45*b,.22*c),a.lineTo(.52*b,.21*c),a.lineTo(.54*b,.16*c),a.lineTo(.5*b,.11*c),a.lineTo(.56*b,.05*c),a.lineTo(.62*b,.09*c),a.lineTo(.67*b,.07*c),a.lineTo(.68*b,0),a.lineTo(.77*b,0),a.lineTo(.78*b,.07*c),a.lineTo(.83*b,.09*c),a.lineTo(.89*b,.05*c),a.lineTo(.95*b,.11*c),a.lineTo(.91*b,.16*c),a.lineTo(.93*b,.21*c),a.lineTo(b,.22*c),a.lineTo(b,.31*c),a.lineTo(.93*
1549b,.31*c),a.lineTo(.91*b,.36*c),a.lineTo(.95*b,.41*c),a.lineTo(.89*b,.47*c),a.lineTo(.83*b,.43*c),a.lineTo(.78*b,.45*c),a.lineTo(.77*b,.52*c),a.lineTo(.68*b,.52*c),a.close(),a.moveTo(.36*b,.81*c),a.curveTo(.44*b,.81*c,.52*b,.75*c,.52*b,.67*c),a.curveTo(.52*b,.59*c,.45*b,.51*c,.35*b,.51*c),a.curveTo(.27*b,.51*c,.19*b,.58*c,.19*b,.67*c),a.curveTo(.19*b,.74*c,.27*b,.82*c,.36*b,.81*c),a.close(),a.moveTo(.21*b,.98*c),a.lineTo(.22*b,.89*c),a.lineTo(.16*b,.85*c),a.lineTo(.08*b,.88*c),a.lineTo(.02*b,.79*c),
1550a.lineTo(.09*b,.74*c),a.lineTo(.08*b,.67*c),a.lineTo(0,.63*c),a.lineTo(.03*b,.53*c),a.lineTo(.12*b,.54*c),a.lineTo(.16*b,.48*c),a.lineTo(.13*b,.4*c),a.lineTo(.22*b,.35*c),a.lineTo(.28*b,.42*c),a.lineTo(.36*b,.41*c),a.lineTo(.39*b,.33*c),a.lineTo(.5*b,.36*c),a.lineTo(.49*b,.45*c),a.lineTo(.55*b,.49*c),a.lineTo(.63*b,.45*c),a.lineTo(.69*b,.54*c),a.lineTo(.62*b,.6*c),a.lineTo(.63*b,.67*c),a.lineTo(.71*b,.7*c),a.lineTo(.68*b,.8*c),a.lineTo(.59*b,.79*c),a.lineTo(.55*b,.85*c),a.lineTo(.59*b,.79*c),a.lineTo(.55*
1551b,.85*c),a.lineTo(.59*b,.93*c),a.lineTo(.49*b,.98*c),a.lineTo(.43*b,.91*c),a.lineTo(.36*b,.92*c),a.lineTo(.32*b,c),a.lineTo(.21*b,.98*c),a.close(),a.stroke()):f===mxArchiMate3Tech.prototype.cst.SYS_SW?mxArchiMate3SysSw.prototype.background(a,d,e,b,c):f===mxArchiMate3Tech.prototype.cst.DEVICE&&mxArchiMate3Device.prototype.background(a,d,e,b,c)};mxCellRenderer.registerShape(mxArchiMate3Tech.prototype.cst.TECH,mxArchiMate3Tech);
1552mxArchiMate3Tech.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,10,0));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1553.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,0,-10));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-10,0));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
1554.25),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,10));return a};function mxArchiMate3Distribution(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Distribution,mxShape);mxArchiMate3Distribution.prototype.cst={DISTRIBUTION:"mxgraph.archimate3.distribution"};mxArchiMate3Distribution.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1555mxArchiMate3Distribution.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(.1*b,.25*c);a.lineTo(.9*b,.25*c);a.lineTo(b,.5*c);a.lineTo(.9*b,.75*c);a.lineTo(.1*b,.75*c);a.lineTo(0,.5*c);a.fillAndStroke();a.begin();a.moveTo(.2*b,0);a.lineTo(0,.5*c);a.lineTo(.2*b,c);a.moveTo(.8*b,0);a.lineTo(b,.5*c);a.lineTo(.8*b,c);a.stroke()};mxCellRenderer.registerShape(mxArchiMate3Distribution.prototype.cst.DISTRIBUTION,mxArchiMate3Distribution);
1556mxArchiMate3Distribution.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.2,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(.8,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.8,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.2,
15571),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};function mxArchiMate3Resource(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Resource,mxShape);mxArchiMate3Resource.prototype.cst={RESOURCE:"mxgraph.archimate3.resource"};mxArchiMate3Resource.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1558mxArchiMate3Resource.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(.51*b,.34*c);a.lineTo(.51*b,.65*c);a.moveTo(.35*b,.34*c);a.lineTo(.35*b,.65*c);a.moveTo(.19*b,.34*c);a.lineTo(.19*b,.65*c);a.moveTo(.91*b,.4*c);a.curveTo(.93*b,.39*c,.95*b,.39*c,.97*b,.4*c);a.curveTo(.99*b,.4*c,b,.41*c,b,.43*c);a.curveTo(b,.48*c,b,.52*c,b,.57*c);a.curveTo(b,.58*c,.99*b,.59*c,.98*b,.6*c);a.curveTo(.96*b,.6*c,.93*b,.6*c,.91*b,.6*c);a.moveTo(0,.73*c);a.curveTo(0,.6*c,0,.43*c,0,.27*c);a.curveTo(0,.24*c,.03*
1559b,.21*c,.08*b,.21*c);a.curveTo(.33*b,.2*c,.61*b,.2*c,.84*b,.21*c);a.curveTo(.88*b,.22*c,.89*b,.24*c,.9*b,.26*c);a.curveTo(.91*b,.41*c,.91*b,.57*c,.9*b,.72*c);a.curveTo(.9*b,.74*c,.88*b,.78*c,.83*b,.79*c);a.curveTo(.57*b,.79*c,.32*b,.79*c,.06*b,.79*c);a.curveTo(.02*b,.78*c,0,.76*c,0,.73*c);a.close();a.stroke()};mxCellRenderer.registerShape(mxArchiMate3Resource.prototype.cst.RESOURCE,mxArchiMate3Resource);
1560function mxArchiMate3Capability(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Capability,mxShape);mxArchiMate3Capability.prototype.cst={CAPABILITY:"mxgraph.archimate3.capability"};mxArchiMate3Capability.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1561mxArchiMate3Capability.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.lineTo(0,.67*c);a.lineTo(.33*b,.67*c);a.lineTo(.33*b,.33*c);a.lineTo(.67*b,.33*c);a.lineTo(.67*b,0);a.close();a.moveTo(.67*b,.33*c);a.lineTo(b,.33*c);a.moveTo(.33*b,.67*c);a.lineTo(b,.67*c);a.moveTo(.33*b,.67*c);a.lineTo(.33*b,c);a.moveTo(.67*b,.33*c);a.lineTo(.67*b,c);a.stroke()};mxCellRenderer.registerShape(mxArchiMate3Capability.prototype.cst.CAPABILITY,mxArchiMate3Capability);
1562function mxArchiMate3Course(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Course,mxShape);mxArchiMate3Course.prototype.cst={COURSE:"mxgraph.archimate3.course"};mxArchiMate3Course.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1563mxArchiMate3Course.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,c);a.arcTo(.7*b,.7*c,0,0,1,.41*b,.56*c);a.moveTo(.14*b,.54*c);a.lineTo(.41*b,.56*c);a.lineTo(.3*b,.78*c);a.stroke();a.ellipse(.4*b,0,.6*b,.6*c);a.stroke();a.ellipse(.5*b,.1*c,.4*b,.4*c);a.stroke();d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#000000");a.setFillColor(d);a.ellipse(.6*b,.2*c,.2*b,.2*c);a.fill()};mxCellRenderer.registerShape(mxArchiMate3Course.prototype.cst.COURSE,mxArchiMate3Course);
1564function mxArchiMate3Node(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Node,mxShape);mxArchiMate3Node.prototype.cst={NODE:"mxgraph.archimate3.node"};mxArchiMate3Node.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1565mxArchiMate3Node.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,.25*c);a.lineTo(.25*b,0);a.lineTo(b,0);a.lineTo(b,.75*c);a.lineTo(.75*b,c);a.lineTo(0,c);a.close();a.moveTo(0,.25*c);a.lineTo(.75*b,.25*c);a.lineTo(.75*b,c);a.moveTo(b,0);a.lineTo(.75*b,.25*c);a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Node.prototype.cst.NODE,mxArchiMate3Node);
1566mxArchiMate3Node.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,
15671),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
1568.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};function mxArchiMate3Device(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Device,mxShape);mxArchiMate3Device.prototype.cst={DEVICE:"mxgraph.archimate3.device"};mxArchiMate3Device.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1569mxArchiMate3Device.prototype.background=function(a,d,e,b,c){a.roundrect(0,0,b,.88*c,.1*b,.1*c);a.fillAndStroke();a.begin();a.moveTo(.1*b,.88*c);a.lineTo(0,c);a.lineTo(b,c);a.lineTo(.9*b,.88*c);a.fillAndStroke()};mxCellRenderer.registerShape(mxArchiMate3Device.prototype.cst.DEVICE,mxArchiMate3Device);
1570mxArchiMate3Device.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.03,.03),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.97,.03),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1571.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1572function mxArchiMate3SysSw(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3SysSw,mxShape);mxArchiMate3SysSw.prototype.cst={SYS_SW:"mxgraph.archimate3.sysSw"};mxArchiMate3SysSw.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};mxArchiMate3SysSw.prototype.background=function(a,d,e,b,c){a.ellipse(.3*b,0,.7*b,.7*c);a.stroke();a.ellipse(0,.02*c,.98*b,.98*c);a.fillAndStroke()};
1573mxCellRenderer.registerShape(mxArchiMate3SysSw.prototype.cst.SYS_SW,mxArchiMate3SysSw);function mxArchiMate3Artifact(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Artifact,mxShape);mxArchiMate3Artifact.prototype.cst={ARTIFACT:"mxgraph.archimate3.artifact"};mxArchiMate3Artifact.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1574mxArchiMate3Artifact.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,0);a.lineTo(.7*b,0);a.lineTo(b,.22*c);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke();a.begin();a.moveTo(.7*b,0);a.lineTo(.7*b,.22*c);a.lineTo(b,.22*c);a.stroke()};mxCellRenderer.registerShape(mxArchiMate3Artifact.prototype.cst.ARTIFACT,mxArchiMate3Artifact);
1575mxArchiMate3Artifact.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.7,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.85,.11),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.22),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1576.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
1577function mxArchiMate3CommNetw(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3CommNetw,mxShape);mxArchiMate3CommNetw.prototype.cst={COMM_NETW:"mxgraph.archimate3.commNetw"};mxArchiMate3CommNetw.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1578mxArchiMate3CommNetw.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(.2*b,c);a.lineTo(0,.5*c);a.lineTo(.2*b,0);a.moveTo(.8*b,c);a.lineTo(b,.5*c);a.lineTo(.8*b,0);a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke()};mxCellRenderer.registerShape(mxArchiMate3CommNetw.prototype.cst.COMM_NETW,mxArchiMate3CommNetw);mxArchiMate3CommNetw.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));return a};
1579function mxArchiMate3Path(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxArchiMate3Path,mxShape);mxArchiMate3Path.prototype.cst={PATH:"mxgraph.archimate3.path"};mxArchiMate3Path.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1)};
1580mxArchiMate3Path.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(.2*b,c);a.lineTo(0,.5*c);a.lineTo(.2*b,0);a.moveTo(.8*b,c);a.lineTo(b,.5*c);a.lineTo(.8*b,0);a.stroke();a.setDashed(!0);a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke()};mxCellRenderer.registerShape(mxArchiMate3Path.prototype.cst.PATH,mxArchiMate3Path);
1581mxArchiMate3Path.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));return a};function mxShapeArrows2Arrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.notch=0}mxUtils.extend(mxShapeArrows2Arrow,mxActor);
1582mxShapeArrows2Arrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:40},{name:"dy",dispName:"Arrow Width",type:"float",min:0,max:1,defVal:.6},{name:"notch",dispName:"Notch",type:"float",min:0,defVal:0},{name:"headCrossline",dispName:"Head Crossline",type:"bool",defVal:!1},{name:"tailCrossline",dispName:"Tail Crossline",type:"bool",defVal:!1}];mxShapeArrows2Arrow.prototype.cst={ARROW:"mxgraph.arrows2.arrow"};
1583mxShapeArrows2Arrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.5*c*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=mxUtils.getValue(this.style,"headCrossline",!1),h=mxUtils.getValue(this.style,"tailCrossline",!1);a.begin();a.moveTo(0,d);a.lineTo(b-e,d);a.lineTo(b-e,0);a.lineTo(b,
1584.5*c);a.lineTo(b-e,c);a.lineTo(b-e,c-d);a.lineTo(0,c-d);a.lineTo(f,.5*c);a.close();a.fillAndStroke();a.setShadow(!1);g&&(a.begin(),a.moveTo(b-e,d),a.lineTo(b-e,c-d),a.stroke());h&&(a.begin(),a.moveTo(f,d),a.lineTo(f,c-d),a.stroke())};
1585mxShapeArrows2Arrow.prototype.getLabelBounds=function(a){if(mxUtils.getValue(this.style,"boundedLbl",!1)){var d=a.width,e=a.height,b,c,f=this.direction||mxConstants.DIRECTION_EAST;mxUtils.getValue(this.style,"flipH",!1)&&(f==mxConstants.DIRECTION_WEST?f=mxConstants.DIRECTION_EAST:f==mxConstants.DIRECTION_EAST&&(f=mxConstants.DIRECTION_WEST));mxUtils.getValue(this.style,"flipV",!1)&&(f==mxConstants.DIRECTION_NORTH?f=mxConstants.DIRECTION_SOUTH:f==mxConstants.DIRECTION_SOUTH&&(f=mxConstants.DIRECTION_NORTH));
1586f==mxConstants.DIRECTION_NORTH||f==mxConstants.DIRECTION_SOUTH?(b=.5*d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))))):(b=.5*e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))));return f==mxConstants.DIRECTION_EAST?new mxRectangle(a.x,a.y+b,d-c,e-2*b):f==mxConstants.DIRECTION_WEST?
1587new mxRectangle(a.x+c,a.y+b,d-c,e-2*b):f==mxConstants.DIRECTION_NORTH?new mxRectangle(a.x+b,a.y+c,d-2*b,e-c):new mxRectangle(a.x+b,a.y,d-2*b,e-c)}return a};mxCellRenderer.registerShape(mxShapeArrows2Arrow.prototype.cst.ARROW,mxShapeArrows2Arrow);
1588Graph.handleFactory[mxShapeArrows2Arrow.prototype.cst.ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),c=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-b,a.y+c*a.height/2)},function(a,b){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch)),
1589a.x+a.width-b.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(1,(b.y-a.y)/a.height*2)))/100})];a=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+b,a.y+a.height/2)},function(a,b){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)),b.x-a.x)))/100});d.push(a);return d};
1590mxShapeArrows2Arrow.prototype.getConstraints=function(a,d,e){a=[];var b=.5*e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,f,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,
15910,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c),b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c),e-b));return a};
1592function mxShapeArrows2TwoWayArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5}mxUtils.extend(mxShapeArrows2TwoWayArrow,mxActor);mxShapeArrows2TwoWayArrow.prototype.cst={TWO_WAY_ARROW:"mxgraph.arrows2.twoWayArrow"};mxShapeArrows2TwoWayArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:35},{name:"dy",dispName:"Arrow Width",type:"float",min:0,max:1,defVal:.6}];
1593mxShapeArrows2TwoWayArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.5*c*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.begin();a.moveTo(e,d);a.lineTo(b-e,d);a.lineTo(b-e,0);a.lineTo(b,.5*c);a.lineTo(b-e,c);a.lineTo(b-e,c-d);a.lineTo(e,c-d);a.lineTo(e,c);a.lineTo(0,.5*c);a.lineTo(e,0);a.close();a.fillAndStroke()};
1594mxShapeArrows2TwoWayArrow.prototype.getLabelBounds=function(a){if(mxUtils.getValue(this.style,"boundedLbl",!1)){var d=a.width,e=a.height,b=this.direction==mxConstants.DIRECTION_NORTH||this.direction==mxConstants.DIRECTION_SOUTH,c,f;b?(c=.5*d*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))))):(c=.5*e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),f=Math.max(0,Math.min(d,
1595parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))));return b?new mxRectangle(a.x+c,a.y+f,d-2*c,e-2*f):new mxRectangle(a.x+f,a.y+c,d-2*f,e-2*c)}return a};mxCellRenderer.registerShape(mxShapeArrows2TwoWayArrow.prototype.cst.TWO_WAY_ARROW,mxShapeArrows2TwoWayArrow);mxShapeArrows2TwoWayArrow.prototype.constraints=null;
1596Graph.handleFactory[mxShapeArrows2TwoWayArrow.prototype.cst.TWO_WAY_ARROW]=function(a){return[Graph.createHandle(a,["dx","dy"],function(a){var d=Math.max(0,Math.min(a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-d,a.y+b*a.height/2)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width/2,a.x+a.width-e.x)))/100;this.state.style.dy=Math.round(100*
1597Math.max(0,Math.min(1,(e.y-a.y)/a.height*2)))/100})]};
1598mxShapeArrows2TwoWayArrow.prototype.getConstraints=function(a,d,e){a=[];var b=.5*e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,e));a.push(new mxConnectionConstraint(new mxPoint(0,
15990),!1,null,c,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e-b));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,e-b));return a};
1600function mxShapeArrows2StylisedArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.notch=0;this.feather=.5}mxUtils.extend(mxShapeArrows2StylisedArrow,mxActor);
1601mxShapeArrows2StylisedArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:40},{name:"dy",dispName:"Arrow Width",type:"float",min:0,max:1,defVal:.6},{name:"notch",dispName:"Notch",type:"float",min:0,defVal:0},{name:"feather",dispName:"Feather",type:"float",min:0,max:1,defVal:.4}];mxShapeArrows2StylisedArrow.prototype.cst={STYLISED_ARROW:"mxgraph.arrows2.stylisedArrow"};
1602mxShapeArrows2StylisedArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.5*c*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=.5*c*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"feather",this.feather))));a.begin();a.moveTo(0,g);a.lineTo(b-e,d);a.lineTo(b-e-10,0);
1603a.lineTo(b,.5*c);a.lineTo(b-e-10,c);a.lineTo(b-e,c-d);a.lineTo(0,c-g);a.lineTo(f,.5*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2StylisedArrow.prototype.cst.STYLISED_ARROW,mxShapeArrows2StylisedArrow);mxShapeArrows2StylisedArrow.prototype.constraints=null;
1604Graph.handleFactory[mxShapeArrows2StylisedArrow.prototype.cst.STYLISED_ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width-10,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-b,a.y+d*a.height/2)},function(a,c){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width-10,a.width-parseFloat(mxUtils.getValue(this.state.style,
1605"notch",this.notch)),a.x+a.width-c.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(1,(c.y-a.y)/a.height*2)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)),parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+b,a.y+a.height/2)},function(a,c){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,
1606"dx",this.dx)),c.x-a.x)))/100});d.push(e);a=Graph.createHandle(a,["feather"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"feather",this.dy))));return new mxPoint(a.x,a.y+b*a.height/2)},function(a,c){this.state.style.feather=Math.round(100*Math.max(0,Math.min(1,(c.y-a.y)/a.height*2)))/100});d.push(a);return d};
1607mxShapeArrows2StylisedArrow.prototype.getConstraints=function(a,d,e){a=[];var b=.5*e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=.5*e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"feather",this.feather))));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
1608.5),!1,null,f,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c-10,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c-10,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c),.5*(b+g)));
1609a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c),e-.5*(b+g)));return a};function mxShapeArrows2SharpArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx2=this.dx1=this.dy1=.5;this.notch=0}mxUtils.extend(mxShapeArrows2SharpArrow,mxActor);mxShapeArrows2SharpArrow.prototype.cst={SHARP_ARROW:"mxgraph.arrows2.sharpArrow"};
1610mxShapeArrows2SharpArrow.prototype.customProperties=[{name:"dx1",dispName:"Arrowhead Arrow Width",type:"float",min:0,defVal:18},{name:"dy1",dispName:"Arrow Arrow Width",type:"float",min:0,max:1,defVal:.67},{name:"dx2",dispName:"Arrowhead Angle",type:"float",min:0,defVal:18},{name:"notch",dispName:"Notch",type:"float",min:0,defVal:0}];
1611mxShapeArrows2SharpArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.5*c*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),g=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),h=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1)))),
1612k=.5*c*Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1)))),l=0;0!=c&&(l=h+f*k*2/c);a.begin();a.moveTo(0,d);a.lineTo(b-e,d);a.lineTo(b-l,0);a.lineTo(b-f,0);a.lineTo(b,.5*c);a.lineTo(b-f,c);a.lineTo(b-l,c);a.lineTo(b-e,c-d);a.lineTo(0,c-d);a.lineTo(g,.5*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2SharpArrow.prototype.cst.SHARP_ARROW,mxShapeArrows2SharpArrow);mxShapeArrows2SharpArrow.prototype.constraints=null;
1613Graph.handleFactory[mxShapeArrows2SharpArrow.prototype.cst.SHARP_ARROW]=function(a){var d=[Graph.createHandle(a,["dx1","dy1"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)))),d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))));return new mxPoint(a.x+a.width-b,a.y+d*a.height/2)},function(a,c){this.state.style.dx1=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"notch",
1614this.notch)),a.x+a.width-c.x)))/100;this.state.style.dy1=Math.round(100*Math.max(0,Math.min(1,(c.y-a.y)/a.height*2)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+b,a.y+a.height/2)},function(a,c){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)),c.x-a.x)))/100});d.push(e);a=Graph.createHandle(a,
1615["dx2"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2))));return new mxPoint(a.x+a.width-b,a.y)},function(a,c){this.state.style.dx2=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch)),a.x+a.width-c.x)))/100});d.push(a);return d};
1616mxShapeArrows2SharpArrow.prototype.getConstraints=function(a,d,e){a=[];var b=.5*e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),g=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),h=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1)))),k=.5*e*
1617Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1)))),l=0;0!=e&&(l=h+f*k*2/e);a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,g,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-l,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-f,0));a.push(new mxConnectionConstraint(new mxPoint(0,
16180),!1,null,0,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-l,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-f,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c),b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c),e-b));return a};
1619function mxShapeArrows2SharpArrow2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx3=this.dy3=this.dx2=this.dx1=this.dy1=.5;this.notch=0}mxUtils.extend(mxShapeArrows2SharpArrow2,mxActor);
1620mxShapeArrows2SharpArrow2.prototype.customProperties=[{name:"dx1",dispName:"Arrowhead Arrow Width",type:"float",min:0,defVal:18},{name:"dy1",dispName:"Arrow Width",type:"float",min:0,max:1,defVal:.67},{name:"dx2",dispName:"Arrowhead Angle",type:"float",min:0,defVal:18},{name:"dx3",dispName:"Arrowhead Edge X",type:"float",min:0,defVal:27},{name:"dy3",dispName:"Arrowhead Edge Y",type:"float",min:0,max:1,defVal:.15},{name:"notch",dispName:"Notch",type:"float",min:0,defVal:0}];
1621mxShapeArrows2SharpArrow2.prototype.cst={SHARP_ARROW2:"mxgraph.arrows2.sharpArrow2"};
1622mxShapeArrows2SharpArrow2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.5*c*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),g=.5*c*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy3",this.dy3)))),h=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx3",
1623this.dx3)))),k=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1));parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1));a.begin();a.moveTo(0,d);a.lineTo(b-e,d);a.lineTo(b-h,g);a.lineTo(b-f,0);a.lineTo(b,.5*c);a.lineTo(b-f,c);a.lineTo(b-h,c-g);a.lineTo(b-e,c-d);a.lineTo(0,c-d);a.lineTo(k,.5*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2SharpArrow2.prototype.cst.SHARP_ARROW2,mxShapeArrows2SharpArrow2);
1624mxShapeArrows2SharpArrow2.prototype.constraints=null;
1625Graph.handleFactory[mxShapeArrows2SharpArrow2.prototype.cst.SHARP_ARROW2]=function(a){var d=[Graph.createHandle(a,["dx1","dy1"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)))),d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))));return new mxPoint(a.x+a.width-b,a.y+d*a.height/2)},function(a,c){this.state.style.dx1=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,
1626"notch",this.notch)),a.x+a.width-c.x)))/100;this.state.style.dy1=Math.round(100*Math.max(0,Math.min(1,(c.y-a.y)/a.height*2)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+b,a.y+a.height/2)},function(a,c){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)),c.x-a.x)))/100});d.push(e);e=Graph.createHandle(a,
1627["dx2"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2))));return new mxPoint(a.x+a.width-b,a.y)},function(a,c){this.state.style.dx2=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch)),a.x+a.width-c.x)))/100});d.push(e);a=Graph.createHandle(a,["dx3","dy3"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx3",this.dx3)))),d=Math.max(0,Math.min(1-
1628parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))/2,parseFloat(mxUtils.getValue(this.state.style,"dy3",this.dy3))));return new mxPoint(a.x+a.width-b,a.y+d*a.height/2)},function(a,c){this.state.style.dx3=Math.round(100*Math.max(parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2)),Math.min(a.width,a.x+a.width-c.x)))/100;this.state.style.dy3=Math.round(100*Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1)),(c.y-a.y)/a.height*2)))/100});d.push(a);return d};
1629mxShapeArrows2SharpArrow2.prototype.getConstraints=function(a,d,e){a=[];var b=.5*e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),g=.5*e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy3",this.dy3)))),h=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx3",this.dx3)))),k=Math.max(0,
1630Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1));parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,k,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-
1631h,g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-f,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-h,e-g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-f,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c),b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c),e-b));return a};
1632function mxShapeArrows2CalloutArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.arrowHead=this.notch=0}mxUtils.extend(mxShapeArrows2CalloutArrow,mxActor);
1633mxShapeArrows2CalloutArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:20},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:10},{name:"dy",dispName:"Arrow Width",type:"float",min:0,defVal:10},{name:"notch",dispName:"Rectangle Width",type:"float",min:0,defVal:60}];mxShapeArrows2CalloutArrow.prototype.cst={CALLOUT_ARROW:"mxgraph.arrows2.calloutArrow"};
1634mxShapeArrows2CalloutArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.begin();a.moveTo(0,0);a.lineTo(f,0);a.lineTo(f,.5*c-d);a.lineTo(b-
1635e,.5*c-d);a.lineTo(b-e,.5*c-d-g);a.lineTo(b,.5*c);a.lineTo(b-e,.5*c+d+g);a.lineTo(b-e,.5*c+d);a.lineTo(f,.5*c+d);a.lineTo(f,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2CalloutArrow.prototype.cst.CALLOUT_ARROW,mxShapeArrows2CalloutArrow);mxShapeArrows2CalloutArrow.prototype.constraints=null;
1636Graph.handleFactory[mxShapeArrows2CalloutArrow.prototype.cst.CALLOUT_ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(a.height/2-b,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-d,a.y+a.height/2-b)},function(a,
1637c){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch)),a.x+a.width-c.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),a.y+a.height/2-c.y)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+b,a.y+a.height/
16382)},function(a,c){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)),c.x-a.x)))/100});d.push(e);a=Graph.createHandle(a,["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),e=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",
1639this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+a.height/2-d-e)},function(a,c){this.state.style.arrowHead=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),a.y+a.height/2-parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))-c.y)))/100});d.push(a);return d};
1640mxShapeArrows2CalloutArrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
16410),!1,null,f,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f,.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e-b-g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e+b+g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,
1642null,f,.5*e+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*f,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*f,e));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,.5*(f+d-c),-b));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,.5*(f+d-c),b));return a};
1643function mxShapeArrows2BendArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.notch=0;this.arrowHead=40}mxUtils.extend(mxShapeArrows2BendArrow,mxActor);
1644mxShapeArrows2BendArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:38},{name:"dy",dispName:"Arrow Width",type:"float",min:0,defVal:15},{name:"notch",dispName:"Notch",type:"float",min:0,defVal:0},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:55},{name:"rounded",dispName:"Rounded",type:"boolean",defVal:!1}];mxShapeArrows2BendArrow.prototype.cst={BEND_ARROW:"mxgraph.arrows2.bendArrow"};
1645mxShapeArrows2BendArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead)))),h=mxUtils.getValue(this.style,"rounded","0");a.begin();a.moveTo(b-e,0);
1646a.lineTo(b,.5*g);a.lineTo(b-e,g);a.lineTo(b-e,g/2+d);"1"==h?(a.lineTo(2.2*d,g/2+d),a.arcTo(.2*d,.2*d,0,0,0,2*d,g/2+1.2*d)):a.lineTo(2*d,g/2+d);a.lineTo(2*d,c);a.lineTo(d,c-f);a.lineTo(0,c);"1"==h?(a.lineTo(0,g/2+d),a.arcTo(2*d,2*d,0,0,1,2*d,g/2-d)):a.lineTo(0,g/2-d);a.lineTo(b-e,g/2-d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2BendArrow.prototype.cst.BEND_ARROW,mxShapeArrows2BendArrow);mxShapeArrows2BendArrow.prototype.constraints=null;
1647Graph.handleFactory[mxShapeArrows2BendArrow.prototype.cst.BEND_ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-d,a.y+b/2-e)},function(a,c){this.state.style.dx=
1648Math.round(100*Math.max(0,Math.min(a.width-2.2*parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),a.x+a.width-c.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))/2,a.y+parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))/2-c.y)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),
1649d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),b=Math.max(0,Math.min(a.height-b/2-d,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+d,a.y+a.height-b)},function(a,c){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.height-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))/2-parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),a.y+a.height-c.y)))/100});d.push(e);a=Graph.createHandle(a,
1650["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+d)},function(a,c){this.state.style.arrowHead=Math.round(100*Math.max(2*parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),Math.min(a.height,c.y-a.y)))/100});d.push(a);return d};
1651mxShapeArrows2BendArrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead)))),h=mxUtils.getValue(this.style,"rounded","0");a.push(new mxConnectionConstraint(new mxPoint(0,
16520),!1,null,.5*(d-c+2*b),g/2-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,g/2-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,g/2+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c+2*b),g/2+b));a.push(new mxConnectionConstraint(new mxPoint(0,
16530),!1,null,2*b,.5*(e-g/2-b)+g/2+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2*b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(e-g/2-b)+g/2+b));"1"==h?(a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.586*b,g/2-.414*b)),a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2*b+.0586*b,g/2+b+.0586*b))):(a.push(new mxConnectionConstraint(new mxPoint(0,
16540),!1,null,0,g/2-b)),a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2*b,g/2+b)));return a};function mxShapeArrows2BendDoubleArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.notch=0;this.arrowHead=40}mxUtils.extend(mxShapeArrows2BendDoubleArrow,mxActor);
1655mxShapeArrows2BendDoubleArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:38},{name:"dy",dispName:"Arrow Width",type:"float",min:0,defVal:15},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:55},{name:"rounded",dispName:"Rounded",type:"boolean",defVal:!1}];mxShapeArrows2BendDoubleArrow.prototype.cst={BEND_DOUBLE_ARROW:"mxgraph.arrows2.bendDoubleArrow"};
1656mxShapeArrows2BendDoubleArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead)))),g=mxUtils.getValue(this.style,"rounded","0");a.begin();a.moveTo(b-e,0);a.lineTo(b,.5*f);a.lineTo(b-e,f);a.lineTo(b-e,f/2+d);"1"==g?(a.lineTo(f/2+1.2*
1657d,f/2+d),a.arcTo(.2*d,.2*d,0,0,0,f/2+d,f/2+1.2*d)):a.lineTo(f/2+d,f/2+d);a.lineTo(f/2+d,c-e);a.lineTo(f,c-e);a.lineTo(f/2,c);a.lineTo(0,c-e);a.lineTo(f/2-d,c-e);"1"==g?(a.lineTo(f/2-d,f/2+d),a.arcTo(2*d,2*d,0,0,1,f/2+d,f/2-d)):a.lineTo(f/2-d,f/2-d);a.lineTo(b-e,f/2-d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2BendDoubleArrow.prototype.cst.BEND_DOUBLE_ARROW,mxShapeArrows2BendDoubleArrow);mxShapeArrows2BendDoubleArrow.prototype.constraints=null;
1658Graph.handleFactory[mxShapeArrows2BendDoubleArrow.prototype.cst.BEND_DOUBLE_ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(Math.min(a.height,a.width)-parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)),parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),c=Math.max(0,Math.min(Math.min(a.width,a.height)-b,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.state.style,
1659"dy",this.dy))));return new mxPoint(a.x+a.width-c,a.y+b/2-d)},function(a,b){this.state.style.dx=Math.round(100*Math.max(0,Math.min(Math.min(a.width,a.height)-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),a.x+a.width-b.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))/2,a.y+parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))/2-b.y)))/100})];a=Graph.createHandle(a,
1660["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),c=Math.max(0,Math.min(Math.min(a.height,a.width)-b,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+c)},function(a,b){this.state.style.arrowHead=Math.round(100*Math.max(2*parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),Math.min(Math.min(a.height,a.width)-parseFloat(mxUtils.getValue(this.state.style,"dx",
1661this.dx)),b.y-a.y)))/100});d.push(a);return d};
1662mxShapeArrows2BendDoubleArrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead)))),g=mxUtils.getValue(this.style,"rounded","0");a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,
1663d,.5*f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,f/2+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(f/2+b+d-c),f/2+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(f/2+b+d-c),f/2-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f/2+b,.5*(f/2+b+e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f/2-b,.5*(f/2+b+e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,
16640),!1,null,f/2+b,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f/2,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f/2-b,e-c));"1"==g?(a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f/2-.414*b,f/2-.414*b)),a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f/2+b+.0586*b,f/2+b+.0586*b))):(a.push(new mxConnectionConstraint(new mxPoint(0,
16650),!1,null,f/2-b,f/2-b)),a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f/2+b,f/2+b)));return a};function mxShapeArrows2CalloutDoubleArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.arrowHead=this.notch=0}mxUtils.extend(mxShapeArrows2CalloutDoubleArrow,mxActor);
1666mxShapeArrows2CalloutDoubleArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:20},{name:"dy",dispName:"Arrow Width",type:"float",min:0,defVal:10},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:10},{name:"notch",dispName:"Rect Size",type:"float",min:0,defVal:24}];mxShapeArrows2CalloutDoubleArrow.prototype.cst={CALLOUT_DOUBLE_ARROW:"mxgraph.arrows2.calloutDoubleArrow"};
1667mxShapeArrows2CalloutDoubleArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.begin();a.moveTo(b/2-f,0);a.lineTo(b/2+f,0);a.lineTo(b/2+f,
1668.5*c-d);a.lineTo(b-e,.5*c-d);a.lineTo(b-e,.5*c-d-g);a.lineTo(b,.5*c);a.lineTo(b-e,.5*c+d+g);a.lineTo(b-e,.5*c+d);a.lineTo(b/2+f,.5*c+d);a.lineTo(b/2+f,c);a.lineTo(b/2-f,c);a.lineTo(b/2-f,.5*c+d);a.lineTo(e,.5*c+d);a.lineTo(e,.5*c+d+g);a.lineTo(0,.5*c);a.lineTo(e,.5*c-d-g);a.lineTo(e,.5*c-d);a.lineTo(b/2-f,.5*c-d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2CalloutDoubleArrow.prototype.cst.CALLOUT_DOUBLE_ARROW,mxShapeArrows2CalloutDoubleArrow);
1669mxShapeArrows2CalloutDoubleArrow.prototype.constraints=null;
1670Graph.handleFactory[mxShapeArrows2CalloutDoubleArrow.prototype.cst.CALLOUT_DOUBLE_ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(a.height/2-b,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-d,a.y+a.height/
16712-b)},function(a,c){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width/2-parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch)),a.x+a.width-c.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),a.y+a.height/2-c.y)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+
1672a.width/2+b,a.y+a.height/2)},function(a,c){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width/2-parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)),c.x-a.x-a.width/2)))/100});d.push(e);a=Graph.createHandle(a,["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),e=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,
1673"arrowHead",this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+a.height/2-d-e)},function(a,c){this.state.style.arrowHead=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),a.y+a.height/2-parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))-c.y)))/100});d.push(a);return d};
1674mxShapeArrows2CalloutDoubleArrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,
16751),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d/2-f,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d/2+f,0));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,d/2-f,0));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,d/2+f,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e-b-g));a.push(new mxConnectionConstraint(new mxPoint(0,
16760),!1,null,d-c,.5*e+b+g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,.5*e-b-g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,.5*e+b+g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(1.5*d-c+f),.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(1.5*d-c+f),.5*e+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(.5*d+c-f),.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(.5*d+c-f),.5*e+b));return a};
1677function mxShapeArrows2CalloutQuadArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.arrowHead=this.notch=0}mxUtils.extend(mxShapeArrows2CalloutQuadArrow,mxActor);
1678mxShapeArrows2CalloutQuadArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:20},{name:"dy",dispName:"Arrow Width",type:"float",min:0,defVal:10},{name:"notch",dispName:"Rect Size",type:"float",min:0,defVal:24},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:10}];mxShapeArrows2CalloutQuadArrow.prototype.cst={CALLOUT_QUAD_ARROW:"mxgraph.arrows2.calloutQuadArrow"};
1679mxShapeArrows2CalloutQuadArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.begin();a.moveTo(.5*b+d,.5*c-f);a.lineTo(.5*b+f,.5*c-f);a.lineTo(.5*
1680b+f,.5*c-d);a.lineTo(b-e,.5*c-d);a.lineTo(b-e,.5*c-d-g);a.lineTo(b,.5*c);a.lineTo(b-e,.5*c+d+g);a.lineTo(b-e,.5*c+d);a.lineTo(.5*b+f,.5*c+d);a.lineTo(.5*b+f,.5*c+f);a.lineTo(.5*b+d,.5*c+f);a.lineTo(.5*b+d,c-e);a.lineTo(.5*b+d+g,c-e);a.lineTo(.5*b,c);a.lineTo(.5*b-d-g,c-e);a.lineTo(.5*b-d,c-e);a.lineTo(.5*b-d,.5*c+f);a.lineTo(.5*b-f,.5*c+f);a.lineTo(.5*b-f,.5*c+d);a.lineTo(e,.5*c+d);a.lineTo(e,.5*c+d+g);a.lineTo(0,.5*c);a.lineTo(e,.5*c-d-g);a.lineTo(e,.5*c-d);a.lineTo(.5*b-f,.5*c-d);a.lineTo(.5*b-
1681f,.5*c-f);a.lineTo(.5*b-d,.5*c-f);a.lineTo(.5*b-d,e);a.lineTo(.5*b-d-g,e);a.lineTo(.5*b,0);a.lineTo(.5*b+d+g,e);a.lineTo(.5*b+d,e);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2CalloutQuadArrow.prototype.cst.CALLOUT_QUAD_ARROW,mxShapeArrows2CalloutQuadArrow);mxShapeArrows2CalloutQuadArrow.prototype.constraints=null;
1682Graph.handleFactory[mxShapeArrows2CalloutQuadArrow.prototype.cst.CALLOUT_QUAD_ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead));var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-b,a.y+a.height/2-d)},function(a,c){this.state.style.dx=Math.round(100*
1683Math.max(0,Math.min(Math.min(a.width,a.height)/2-Math.max(parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch)),parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))),a.x+a.width-c.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch)),a.y+a.height/2-c.y)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=Math.max(parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),Math.min(Math.min(a.width,
1684a.height),parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+a.width/2+b,a.y+a.height/2)},function(a,c){this.state.style.notch=Math.round(100*Math.max(parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),Math.min(Math.min(a.width,a.height)/2-parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)),c.x-a.x-a.width/2)))/100});d.push(e);a=Graph.createHandle(a,["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,
1685"dx",this.dx)))),d=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),e=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+a.height/2-d-e)},function(a,c){this.state.style.arrowHead=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),a.y+a.height/2-c.y)))/100});d.push(a);return d};
1686mxShapeArrows2CalloutQuadArrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,
16871),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b,.5*e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+f,.5*e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+f,.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b,.5*e+f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+f,.5*e+f));a.push(new mxConnectionConstraint(new mxPoint(0,
16880),!1,null,.5*d+f,.5*e+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b,.5*e+f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-f,.5*e+f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-f,.5*e+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b,.5*e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-f,.5*e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-f,.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,
16890),!1,null,d-c,.5*e-b-g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e+b+g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b-g,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b+g,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,.5*e-b-g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,.5*e+b+g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b-g,c));a.push(new mxConnectionConstraint(new mxPoint(0,
16900),!1,null,.5*d+b+g,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d+.5*(f-c),.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d+.5*(f-c),.5*e+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b,.75*e+.5*(f-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b,.75*e+.5*(f-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d-.5*(f-c),.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*
1691d-.5*(f-c),.5*e+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b,.25*e-.5*(f-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b,.25*e-.5*(f-c)));return a};function mxShapeArrows2CalloutDouble90Arrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx1=this.dy1=.5;this.arrowHead=this.dy2=this.dx2=0}mxUtils.extend(mxShapeArrows2CalloutDouble90Arrow,mxActor);
1692mxShapeArrows2CalloutDouble90Arrow.prototype.customProperties=[{name:"dx1",dispName:"Arrowhead Length",type:"float",min:0,defVal:20},{name:"dy1",dispName:"Arrow Width",type:"float",min:0,defVal:10},{name:"dx2",dispName:"Callout Width",type:"float",min:0,defVal:70},{name:"dy2",dispName:"Callout Height",type:"float",min:0,defVal:70},{name:"arrowHead",dispName:"ArrowHead Width",type:"float",min:0,defVal:10}];mxShapeArrows2CalloutDouble90Arrow.prototype.cst={CALLOUT_DOUBLE_90_ARROW:"mxgraph.arrows2.calloutDouble90Arrow"};
1693mxShapeArrows2CalloutDouble90Arrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),g=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dy2",this.dy2)))),h=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",
1694this.arrowHead))));a.begin();a.moveTo(0,0);a.lineTo(f,0);a.lineTo(f,.5*g-d);a.lineTo(b-e,.5*g-d);a.lineTo(b-e,.5*g-d-h);a.lineTo(b,.5*g);a.lineTo(b-e,.5*g+d+h);a.lineTo(b-e,.5*g+d);a.lineTo(f,.5*g+d);a.lineTo(f,g);a.lineTo(f/2+d,g);a.lineTo(f/2+d,c-e);a.lineTo(f/2+d+h,c-e);a.lineTo(f/2,c);a.lineTo(f/2-d-h,c-e);a.lineTo(f/2-d,c-e);a.lineTo(f/2-d,g);a.lineTo(0,g);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2CalloutDouble90Arrow.prototype.cst.CALLOUT_DOUBLE_90_ARROW,mxShapeArrows2CalloutDouble90Arrow);
1695mxShapeArrows2CalloutDouble90Arrow.prototype.constraints=null;
1696Graph.handleFactory[mxShapeArrows2CalloutDouble90Arrow.prototype.cst.CALLOUT_DOUBLE_90_ARROW]=function(a){var d=[Graph.createHandle(a,["dx1","dy1"],function(a){var b=Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),d=Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2)),parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)))),b=Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,
1697"dy2",this.dy2))/2-b,parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))));return new mxPoint(a.x+a.width-d,a.y+parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))/2-b)},function(a,c){this.state.style.dx1=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2)),a.height-parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2)),a.x+a.width-c.x)))/100;this.state.style.dy1=Math.round(100*Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,
1698"dy2",this.dy2))/2-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),a.y+parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))/2-c.y)))/100})],e=Graph.createHandle(a,["dx2","dy2"],function(a){var b=Math.max(parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))+parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)),parseFloat(mxUtils.getValue(this.state.style,"dx2",
1699this.dx2)))),d=Math.max(parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))+parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),Math.min(a.height-parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1)),parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))));return new mxPoint(a.x+b,a.y+d)},function(a,c){this.state.style.dx2=Math.round(100*Math.max(parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))+parseFloat(mxUtils.getValue(this.state.style,
1700"arrowHead",this.arrowHead)),Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)),c.x-a.x)))/100;this.state.style.dy2=Math.round(100*Math.max(parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))+parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),Math.min(a.height-parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)),c.y-a.y)))/100});d.push(e);a=Graph.createHandle(a,["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,
1701"dx1",this.dx1)))),d=Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))/2,parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1)))),e=Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))/2-d-e)},function(a,c){this.state.style.arrowHead=Math.round(100*Math.max(0,
1702Math.min(parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))/2-parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1)),a.y+parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))/2-parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))-c.y)))/100});d.push(a);return d};
1703mxShapeArrows2CalloutDouble90Arrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),g=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dy2",this.dy2)))),h=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));
1704a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*f,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c+f),.5*g-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*g-b-h));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*g+b+h));a.push(new mxConnectionConstraint(new mxPoint(0,
17050),!1,null,.5*(d-c+f),.5*g+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f,g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*f+b,.5*(e-c+g)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*f-b,.5*(e-c+g)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f/2+b+h,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f/2,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f/2-b-h,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,
17060),!1,null,0,g));return a};function mxShapeArrows2QuadArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.arrowHead=this.notch=0}mxUtils.extend(mxShapeArrows2QuadArrow,mxActor);
1707mxShapeArrows2QuadArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:20},{name:"dy",dispName:"Arrow Width",type:"float",min:0,defVal:10},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:10}];mxShapeArrows2QuadArrow.prototype.cst={QUAD_ARROW:"mxgraph.arrows2.quadArrow"};
1708mxShapeArrows2QuadArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.begin();a.moveTo(.5*b+d,.5*c-d);a.lineTo(b-e,.5*c-d);a.lineTo(b-e,.5*c-d-f);a.lineTo(b,.5*c);a.lineTo(b-e,.5*c+d+f);a.lineTo(b-e,.5*c+d);a.lineTo(.5*b+d,
1709.5*c+d);a.lineTo(.5*b+d,c-e);a.lineTo(.5*b+d+f,c-e);a.lineTo(.5*b,c);a.lineTo(.5*b-d-f,c-e);a.lineTo(.5*b-d,c-e);a.lineTo(.5*b-d,.5*c+d);a.lineTo(e,.5*c+d);a.lineTo(e,.5*c+d+f);a.lineTo(0,.5*c);a.lineTo(e,.5*c-d-f);a.lineTo(e,.5*c-d);a.lineTo(.5*b-d,.5*c-d);a.lineTo(.5*b-d,e);a.lineTo(.5*b-d-f,e);a.lineTo(.5*b,0);a.lineTo(.5*b+d+f,e);a.lineTo(.5*b+d,e);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2QuadArrow.prototype.cst.QUAD_ARROW,mxShapeArrows2QuadArrow);
1710mxShapeArrows2QuadArrow.prototype.constraints=null;
1711Graph.handleFactory[mxShapeArrows2QuadArrow.prototype.cst.QUAD_ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead));var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),c=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-b,a.y+a.height/2-c)},function(a,b){this.state.style.dx=Math.round(100*Math.max(0,
1712Math.min(Math.min(a.width,a.height)/2-parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),a.x+a.width-b.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),a.y+a.height/2-b.y)))/100})];a=Graph.createHandle(a,["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),
1713c=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),d=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+a.height/2-c-d)},function(a,b){this.state.style.arrowHead=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),a.y+a.height/2-b.y)))/100});d.push(a);return d};
1714mxShapeArrows2QuadArrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1715.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e-b-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e+b+f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,.5*e-b-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,.5*e+b+f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b-f,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b+f,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,
1716.5*d-b-f,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b+f,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b,.5*(c-b)+.25*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b,.5*(c-b)+.25*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b,.5*(b-c)+.75*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b,.5*(b-c)+.75*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(c-b)+.25*d,.5*e-b));
1717a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(c-b)+.25*d,.5*e+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(b-c)+.75*d,.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(b-c)+.75*d,.5*e+b));return a};function mxShapeArrows2TriadArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.arrowHead=0}mxUtils.extend(mxShapeArrows2TriadArrow,mxActor);
1718mxShapeArrows2TriadArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:20},{name:"dy",dispName:"Arrow Width",type:"float",min:0,defVal:10},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:40}];mxShapeArrows2TriadArrow.prototype.cst={TRIAD_ARROW:"mxgraph.arrows2.triadArrow"};
1719mxShapeArrows2TriadArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.begin();a.moveTo(.5*b+.5*f-d,c-f+d);a.lineTo(b-e,c-f+d);a.lineTo(b-e,c-f);a.lineTo(b,c-.5*f);a.lineTo(b-e,c);a.lineTo(b-e,c-d);a.lineTo(e,c-d);a.lineTo(e,
1720c);a.lineTo(0,c-.5*f);a.lineTo(e,c-f);a.lineTo(e,c-f+d);a.lineTo(.5*b-.5*f+d,c-f+d);a.lineTo(.5*b-.5*f+d,e);a.lineTo(.5*b-.5*f,e);a.lineTo(.5*b,0);a.lineTo(.5*b+.5*f,e);a.lineTo(.5*b+.5*f-d,e);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2TriadArrow.prototype.cst.TRIAD_ARROW,mxShapeArrows2TriadArrow);mxShapeArrows2TriadArrow.prototype.constraints=null;
1721Graph.handleFactory[mxShapeArrows2TriadArrow.prototype.cst.TRIAD_ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),c=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-c,a.y+a.height-b)},function(a,b){this.state.style.dx=
1722Math.round(100*Math.max(0,Math.min(Math.min(a.height-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),a.width/2-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))/2),a.x+a.width-b.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))/2,a.y+a.height-b.y)))/100})];a=Graph.createHandle(a,["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,
1723"dx",this.dx))));parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy));var c=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+a.height-c)},function(a,b){this.state.style.arrowHead=Math.round(100*Math.max(2*parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),Math.min(a.height-parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)),a.width-2*parseFloat(mxUtils.getValue(this.state.style,"dx",
1724this.dx)),a.y+a.height-b.y)))/100});d.push(a);return d};
1725mxShapeArrows2TriadArrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,.5*-f,c));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
17260),!1,null,.5*d,e-b));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,.5*f,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e-.5*f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-.5*f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,e));a.push(new mxConnectionConstraint(new mxPoint(0,
17270),!1,null,.5*(1.5*d-c+.5*f-b),e-f+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(1.5*d-c+.5*f-b),e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(.5*d+c-.5*f+b),e-f+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(.5*d+c-.5*f+b),e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-.5*f+b,.5*(c+e-f+b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+.5*f-b,.5*(c+e-f+b)));return a};
1728function mxShapeArrows2TailedArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.arrowHead=this.notch=0}mxUtils.extend(mxShapeArrows2TailedArrow,mxActor);
1729mxShapeArrows2TailedArrow.prototype.customProperties=[{name:"dx1",dispName:"Arrowhead Length",type:"float",min:0,defVal:20},{name:"dy1",dispName:"Arrow Width",type:"float",min:0,defVal:10},{name:"dx2",dispName:"Tail Length",type:"float",min:0,defVal:25},{name:"dy2",dispName:"Tail Width",type:"float",min:0,defVal:30},{name:"notch",dispName:"Notch",type:"float",min:0,defVal:0},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:20}];mxShapeArrows2TailedArrow.prototype.cst={TAILED_ARROW:"mxgraph.arrows2.tailedArrow"};
1730mxShapeArrows2TailedArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1))));var f=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy2",this.dy2)))),g=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),h=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),
1731k=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead)))),l=0;0!=f&&(l=g+f*(f-d)/f);a.begin();a.moveTo(0,.5*c-f);a.lineTo(g,.5*c-f);a.lineTo(l,.5*c-d);a.lineTo(b-e,.5*c-d);a.lineTo(b-e,.5*c-d-k);a.lineTo(b,.5*c);a.lineTo(b-e,.5*c+d+k);a.lineTo(b-e,.5*c+d);a.lineTo(l,.5*c+d);a.lineTo(g,.5*c+f);a.lineTo(0,.5*c+f);a.lineTo(h,.5*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2TailedArrow.prototype.cst.TAILED_ARROW,mxShapeArrows2TailedArrow);
1732mxShapeArrows2TailedArrow.prototype.constraints=null;
1733Graph.handleFactory[mxShapeArrows2TailedArrow.prototype.cst.TAILED_ARROW]=function(a){var d=[Graph.createHandle(a,["dx1","dy1"],function(a){var b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)))),b=Math.max(0,Math.min(a.height/2-b,parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))));return new mxPoint(a.x+a.width-d,a.y+a.height/2-b)},function(a,
1734c){this.state.style.dx1=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch)),a.width-parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2)),a.x+a.width-c.x)))/100;this.state.style.dy1=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2)),a.y+a.height/2-c.y)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=
1735Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+b,a.y+a.height/2)},function(a,c){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)),parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2)),c.x-a.x)))/100});d.push(e);e=Graph.createHandle(a,["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx1",
1736this.dx1)))),d=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1)))),e=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+a.height/2-d-e)},function(a,c){this.state.style.arrowHead=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1)),a.y+a.height/2-c.y)))/100});d.push(e);a=Graph.createHandle(a,["dx2","dy2"],function(a){var b=
1737Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2)))),d=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))));return new mxPoint(a.x+b,a.y+a.height/2-d)},function(a,c){this.state.style.dx2=Math.round(100*Math.max(parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch)),Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1))-parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))+parseFloat(mxUtils.getValue(this.state.style,
1738"dy1",this.dy1))-1,c.x-a.x)))/100;this.state.style.dy2=Math.round(100*Math.max(parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1)),Math.min(a.height/2,a.y+a.height/2-c.y)))/100});d.push(a);return d};
1739mxShapeArrows2TailedArrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1)))),f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy2",this.dy2)))),g=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),h=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),k=Math.max(0,
1740Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead)))),l=0;0!=f&&(l=g+f*(f-b)/f);a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,h,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g,.5*e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c+l),.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e-b-k));a.push(new mxConnectionConstraint(new mxPoint(0,
17410),!1,null,0,.5*e+f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g,.5*e+f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c+l),.5*e+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e+b+k));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));return a};function mxShapeArrows2TailedNotchedArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.arrowHead=this.notch=0}
1742mxUtils.extend(mxShapeArrows2TailedNotchedArrow,mxActor);
1743mxShapeArrows2TailedNotchedArrow.prototype.customProperties=[{name:"dx1",dispName:"Arrowhead Length",type:"float",mix:0,defVal:20},{name:"dy1",dispName:"Arrow Width",type:"float",min:0,defVal:10},{name:"dx2",dispName:"Tail Length",type:"float",min:0,defVal:25},{name:"dy2",dispName:"Tail Width",type:"float",min:0,defVal:30},{name:"notch",dispName:"Notch",type:"float",min:0,defVal:20},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:20}];
1744mxShapeArrows2TailedNotchedArrow.prototype.cst={TAILED_NOTCHED_ARROW:"mxgraph.arrows2.tailedNotchedArrow"};
1745mxShapeArrows2TailedNotchedArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1))));var f=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy2",this.dy2)))),g=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),h=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),
1746k=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead)))),l=0;0!=f&&(l=g+h*(f-d)/f);a.begin();a.moveTo(0,.5*c-f);a.lineTo(g,.5*c-f);a.lineTo(l,.5*c-d);a.lineTo(b-e,.5*c-d);a.lineTo(b-e,.5*c-d-k);a.lineTo(b,.5*c);a.lineTo(b-e,.5*c+d+k);a.lineTo(b-e,.5*c+d);a.lineTo(l,.5*c+d);a.lineTo(g,.5*c+f);a.lineTo(0,.5*c+f);a.lineTo(h,.5*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2TailedNotchedArrow.prototype.cst.TAILED_NOTCHED_ARROW,mxShapeArrows2TailedNotchedArrow);
1747mxShapeArrows2TailedNotchedArrow.prototype.constraints=null;
1748Graph.handleFactory[mxShapeArrows2TailedNotchedArrow.prototype.cst.TAILED_NOTCHED_ARROW]=function(a){var d=[Graph.createHandle(a,["dx1","dy1"],function(a){var b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)))),b=Math.max(0,Math.min(a.height/2-b,parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))));return new mxPoint(a.x+a.width-d,a.y+a.height/
17492-b)},function(a,c){this.state.style.dx1=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))-parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2)),a.x+a.width-c.x)))/100;this.state.style.dy1=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)),parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2)),a.y+a.height/2-c.y)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=
1750Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+b,a.y+a.height/2)},function(a,c){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)),c.x-a.x)))/100});d.push(e);e=Graph.createHandle(a,["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)))),d=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,
1751"dy1",this.dy1)))),e=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+a.height/2-d-e)},function(a,c){this.state.style.arrowHead=Math.round(100*Math.max(0,Math.min(a.height/2-parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1)),a.y+a.height/2-c.y)))/100});d.push(e);a=Graph.createHandle(a,["dx2","dy2"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx2",
1752this.dx2)))),d=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy2",this.dy2))));return new mxPoint(a.x+b,a.y+a.height/2-d)},function(a,c){this.state.style.dx2=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))-parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1)),c.x-a.x)))/100;this.state.style.dy2=Math.round(100*Math.max(parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1)),Math.min(a.height/2,
1753a.y+a.height/2-c.y)))/100});d.push(a);return d};
1754mxShapeArrows2TailedNotchedArrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1)))),f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy2",this.dy2)))),g=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),h=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),k=Math.max(0,
1755Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead)))),l=0;0!=f&&(l=g+h*(f-b)/f);a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,h,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g,.5*e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c+l),.5*e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e-b-k));a.push(new mxConnectionConstraint(new mxPoint(0,
17560),!1,null,0,.5*e+f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g,.5*e+f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c+l),.5*e+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,.5*e+b+k));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));return a};function mxShapeArrows2StripedArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.notch=0}
1757mxUtils.extend(mxShapeArrows2StripedArrow,mxActor);mxShapeArrows2StripedArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:40},{name:"dy",dispName:"Arrow Width",type:"float",min:0,max:1,defVal:.6},{name:"notch",dispName:"Stripes Length",type:"float",min:0,defVal:25}];mxShapeArrows2StripedArrow.prototype.cst={STRIPED_ARROW:"mxgraph.arrows2.stripedArrow"};
1758mxShapeArrows2StripedArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.5*c*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.begin();a.moveTo(f,d);a.lineTo(b-e,d);a.lineTo(b-e,0);a.lineTo(b,.5*c);a.lineTo(b-e,c);a.lineTo(b-e,c-d);a.lineTo(f,c-d);a.close();a.moveTo(0,c-d);a.lineTo(.16*
1759f,c-d);a.lineTo(.16*f,d);a.lineTo(0,d);a.close();a.moveTo(.32*f,c-d);a.lineTo(.8*f,c-d);a.lineTo(.8*f,d);a.lineTo(.32*f,d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2StripedArrow.prototype.cst.STRIPED_ARROW,mxShapeArrows2StripedArrow);mxShapeArrows2StripedArrow.prototype.constraints=null;
1760Graph.handleFactory[mxShapeArrows2StripedArrow.prototype.cst.STRIPED_ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),c=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-b,a.y+c*a.height/2)},function(a,b){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"notch",
1761this.notch)),a.x+a.width-b.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(1,(b.y-a.y)/a.height*2)))/100})];a=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+b,a.y+a.height/2)},function(a,b){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width-parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)),b.x-a.x)))/100});d.push(a);return d};
1762mxShapeArrows2StripedArrow.prototype.getConstraints=function(a,d,e){a=[];var b=.5*e*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));parseFloat(mxUtils.getValue(this.style,"notch",this.notch));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,0,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(0,
17630),!1,null,0,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-c,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c),b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-c),e-b));return a};
1764function mxShapeArrows2JumpInArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.arrowHead=40}mxUtils.extend(mxShapeArrows2JumpInArrow,mxActor);mxShapeArrows2JumpInArrow.prototype.customProperties=[{name:"dx",dispName:"Arrowhead Length",type:"float",min:0,defVal:38},{name:"dy",dispName:"Arrow Width",type:"float",min:0,defVal:15},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:55}];
1765mxShapeArrows2JumpInArrow.prototype.cst={JUMP_IN_ARROW:"mxgraph.arrows2.jumpInArrow"};
1766mxShapeArrows2JumpInArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.begin();a.moveTo(b-e,0);a.lineTo(b,.5*f);a.lineTo(b-e,f);a.lineTo(b-e,f/2+d);a.arcTo(b-e,c-f/2-d,0,0,0,0,c);a.arcTo(b-e,c-f/2+d,0,0,1,b-e,f/2-d);a.close();
1767a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2JumpInArrow.prototype.cst.JUMP_IN_ARROW,mxShapeArrows2JumpInArrow);mxShapeArrows2JumpInArrow.prototype.constraints=null;
1768Graph.handleFactory[mxShapeArrows2JumpInArrow.prototype.cst.JUMP_IN_ARROW]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),c=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-c,a.y+b/2-d)},function(a,b){this.state.style.dx=
1769Math.round(100*Math.max(0,Math.min(a.width,a.x+a.width-b.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))/2,a.y+parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))/2-b.y)))/100})];a=Graph.createHandle(a,["arrowHead"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),c=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,
1770"arrowHead",this.arrowHead))));return new mxPoint(a.x+a.width-b,a.y+c)},function(a,b){this.state.style.arrowHead=Math.round(100*Math.max(2*parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),Math.min(a.height,b.y-a.y)))/100});d.push(a);return d};
1771mxShapeArrows2JumpInArrow.prototype.getConstraints=function(a,d,e){a=[];parseFloat(mxUtils.getValue(this.style,"dy",this.dy));var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*e));a.push(new mxConnectionConstraint(new mxPoint(0,
17720),!1,null,d-b,e));return a};function mxShapeArrows2UTurnArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.arrowHead=40}mxUtils.extend(mxShapeArrows2UTurnArrow,mxActor);mxShapeArrows2UTurnArrow.prototype.customProperties=[{name:"dx2",dispName:"Arrowhead Length",type:"float",min:0,defVal:25},{name:"dy",dispName:"Arrow Width",type:"float",min:0,defVal:11},{name:"arrowHead",dispName:"Arrowhead Width",type:"float",min:0,defVal:43}];
1773mxShapeArrows2UTurnArrow.prototype.cst={U_TURN_ARROW:"mxgraph.arrows2.uTurnArrow"};
1774mxShapeArrows2UTurnArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead))));var f=(c-e/2+d)/2,g=Math.max(0,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)));a.begin();a.moveTo(f,0);a.lineTo(f+g,.5*e);a.lineTo(f,e);a.lineTo(f,e/2+d);a.arcTo(f-2*d,f-2*d,0,0,0,f,c-2*d);a.lineTo(Math.max(b,f),c-2*d);a.lineTo(Math.max(b,
1775f),c);a.lineTo(f,c);a.arcTo(f,f,0,0,1,f,e/2-d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeArrows2UTurnArrow.prototype.cst.U_TURN_ARROW,mxShapeArrows2UTurnArrow);mxShapeArrows2UTurnArrow.prototype.constraints=null;
1776Graph.handleFactory[mxShapeArrows2UTurnArrow.prototype.cst.U_TURN_ARROW]=function(a){var d=[Graph.createHandle(a,["dy"],function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+(a.height-b/2+d)/2,a.y+b/2-d)},function(a,c){this.state.style.dy=Math.round(100*Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"arrowHead",
1777this.arrowHead))/2,a.y+parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead))/2-c.y)))/100})],e=Graph.createHandle(a,["dx2"],function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),d=(a.height-b/2+d)/2,e=Math.max(0,Math.min(a.width-d,parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2))));return new mxPoint(a.x+d+e,a.y+
1778b/2)},function(a,c){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),b=(a.height-b/2+d)/2;this.state.style.dx2=Math.round(100*Math.max(0,Math.min(Math.max(a.width,b),c.x-a.x-b)))/100});d.push(e);a=Graph.createHandle(a,["arrowHead"],function(a){var b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"arrowHead",this.arrowHead)))),
1779d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+(a.height-b/2+d)/2,a.y+b)},function(a,c){this.state.style.arrowHead=Math.round(100*Math.max(2*parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)),Math.min(a.height/2,c.y-a.y)))/100});d.push(a);return d};
1780mxShapeArrows2UTurnArrow.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"arrowHead",this.arrowHead)))),f=(e-c/2+b)/2,g=Math.max(0,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f+g,.5*c));a.push(new mxConnectionConstraint(new mxPoint(0,
17810),!1,null,f,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(f+d),e-2*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,Math.max(d,f),e-2*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,Math.max(d,f),e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,Math.max(d,f),e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(f+d),e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f,e));a.push(new mxConnectionConstraint(new mxPoint(0,
17820),!1,null,0,.5*(e+.5*c-b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c-2*b,.5*(e+.5*c-b)));return a};function mxAtlassianJiraIssue(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxAtlassianJiraIssue,mxRectangleShape);
1783mxAtlassianJiraIssue.prototype.customProperties=[{name:"issueType",dispName:"Issue Type",type:"enum",enumList:[{val:"story",dispName:"Story"},{val:"task",dispName:"Task"},{val:"subTask",dispName:"Sub-Task"},{val:"feature",dispName:"Feature"},{val:"bug",dispName:"Bug"},{val:"techTask",dispName:"Tech Task"},{val:"epic",dispName:"Epic"},{val:"improvement",dispName:"Improvement"},{val:"fault",dispName:"Fault"},{val:"change",dispName:"Change"},{val:"access",dispName:"Access"},{val:"purchase",dispName:"Purchase"},
1784{val:"itHelp",dispName:"IT Help"}]},{name:"issuePriority",dispName:"Issue Priority",type:"enum",enumList:[{val:"blocker",dispName:"Blocker"},{val:"critical",dispName:"Critical"},{val:"major",dispName:"Major"},{val:"minor",dispName:"Minor"},{val:"trivial",dispName:"Trivial"}]},{name:"issueStatus",dispName:"Issue Status",type:"enum",enumList:[{val:"todo",dispName:"TODO"},{val:"inProgress",dispName:"In Progress"},{val:"inReview",dispName:"In Review"},{val:"done",dispName:"Done"}]}];
1785mxAtlassianJiraIssue.prototype.cst={ISSUE:"mxgraph.atlassian.issue"};
1786mxAtlassianJiraIssue.prototype.paintForeground=function(a,d,e,b,c){a.translate(d,e);c=mxUtils.getValue(this.style,"issueType","task");e=mxUtils.getValue(this.style,"issuePriority","minor");d=mxUtils.getValue(this.style,"issueStatus","todo");a.setStrokeColor("none");switch(c){case "story":c=mxStencilRegistry.getStencil("mxgraph.atlassian.story");null!=c&&(a.setFillColor("#61B659"),c.drawShape(a,this,5,5,10,10));break;case "task":c=mxStencilRegistry.getStencil("mxgraph.atlassian.task");null!=c&&(a.setFillColor("#5EA3E4"),
1787c.drawShape(a,this,5,5,10,10));break;case "subTask":c=mxStencilRegistry.getStencil("mxgraph.atlassian.subtask");null!=c&&(a.setFillColor("#5EA3E4"),c.drawShape(a,this,5,5,10,10));break;case "feature":c=mxStencilRegistry.getStencil("mxgraph.atlassian.new_feature");null!=c&&(a.setFillColor("#61B659"),c.drawShape(a,this,5,5,10,10));break;case "bug":c=mxStencilRegistry.getStencil("mxgraph.atlassian.bug");null!=c&&(a.setFillColor("#CE0000"),c.drawShape(a,this,5,5,10,10));break;case "techTask":c=mxStencilRegistry.getStencil("mxgraph.atlassian.tech_task");
1788null!=c&&(a.setFillColor("#999C95"),c.drawShape(a,this,5,5,10,10));break;case "epic":c=mxStencilRegistry.getStencil("mxgraph.atlassian.epic");null!=c&&(a.setFillColor("#9E4ADD"),c.drawShape(a,this,5,5,10,10));break;case "improvement":c=mxStencilRegistry.getStencil("mxgraph.atlassian.improvement");null!=c&&(a.setFillColor("#61B659"),c.drawShape(a,this,5,5,10,10));break;case "fault":c=mxStencilRegistry.getStencil("mxgraph.atlassian.fault");null!=c&&(a.setFillColor("#F8902F"),c.drawShape(a,this,5,5,
178910,10));break;case "change":c=mxStencilRegistry.getStencil("mxgraph.atlassian.change");null!=c&&(a.setFillColor("#9E4ADD"),c.drawShape(a,this,5,5,10,10));break;case "access":c=mxStencilRegistry.getStencil("mxgraph.atlassian.access");null!=c&&(a.setFillColor("#F8902F"),c.drawShape(a,this,5,5,10,10));break;case "purchase":c=mxStencilRegistry.getStencil("mxgraph.atlassian.purchase");null!=c&&(a.setFillColor("#61B659"),c.drawShape(a,this,5,5,10,10));break;case "itHelp":c=mxStencilRegistry.getStencil("mxgraph.atlassian.it_help"),
1790null!=c&&(a.setFillColor("#5EA3E4"),c.drawShape(a,this,5,5,10,10))}switch(e){case "blocker":c=mxStencilRegistry.getStencil("mxgraph.atlassian.no");null!=c&&(a.setFillColor("#CE0000"),c.drawShape(a,this,85,5,10,10));break;case "critical":c=mxStencilRegistry.getStencil("mxgraph.atlassian.critical");null!=c&&(a.setFillColor("#CE0000"),c.drawShape(a,this,86,3,8,14));break;case "major":c=mxStencilRegistry.getStencil("mxgraph.atlassian.double_up");null!=c&&(a.setFillColor("#CE0000"),c.drawShape(a,this,
179185,5,10,10));break;case "minor":c=mxStencilRegistry.getStencil("mxgraph.atlassian.double");null!=c&&(a.setFillColor("#2A8735"),c.drawShape(a,this,85,5,10,10));break;case "trivial":c=mxStencilRegistry.getStencil("mxgraph.atlassian.single"),null!=c&&(a.setFillColor("#9AA1B2"),c.drawShape(a,this,85,5,10,10))}a.setFillColor("#FFFFFD");a.setFontColor("#4E6B89");switch(d){case "todo":a.rect(b-45,5,40,20);a.fill();a.text(b-25,15,0,0,"TO DO",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);
1792break;case "inProgress":a.rect(b-85,5,80,20);a.fill();a.text(b-45,15,0,0,"IN PROGRESS",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);break;case "inReview":a.rect(b-75,5,70,20);a.fill();a.text(b-40,15,0,0,"IN REVIEW",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);break;case "done":a.rect(b-45,5,40,20);a.fill();a.text(b-25,15,0,0,"DONE",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);break;default:e=mxUtils.getValue(this.style,"issueStatusWidth",6.5*
1793d.length),a.rect(b-e-5,5,e,20),a.fill(),a.text(b-7,15,0,0,d,mxConstants.ALIGN_RIGHT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)}};mxCellRenderer.registerShape(mxAtlassianJiraIssue.prototype.cst.ISSUE,mxAtlassianJiraIssue);function mxShapeBasicCross(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicCross,mxActor);mxShapeBasicCross.prototype.cst={CROSS:"mxgraph.basic.cross2"};
1794mxShapeBasicCross.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.begin();a.moveTo(.5*b+d,0);a.lineTo(.5*b+d,.5*c-d);a.lineTo(b,.5*c-d);a.lineTo(b,.5*c+d);a.lineTo(.5*b+d,.5*c+d);a.lineTo(.5*b+d,c);a.lineTo(.5*b-d,c);a.lineTo(.5*b-d,.5*c+d);a.lineTo(0,.5*c+d);a.lineTo(0,.5*c-d);a.lineTo(.5*b-d,.5*c-d);a.lineTo(.5*b-d,0);a.close();a.fillAndStroke()};
1795mxCellRenderer.registerShape(mxShapeBasicCross.prototype.cst.CROSS,mxShapeBasicCross);mxShapeBasicCross.prototype.constraints=null;
1796Graph.handleFactory[mxShapeBasicCross.prototype.cst.CROSS]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/2,a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+a.width/2+d,a.y+a.height/2-d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,e.x-a.x-a.width/2)))/100})]};
1797function mxShapeBasicRectCallout(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5}mxUtils.extend(mxShapeBasicRectCallout,mxActor);mxShapeBasicRectCallout.prototype.customProperties=[{name:"dx",dispName:"Callout Position",type:"float",min:0,defVal:30},{name:"dy",dispName:"Callout Size",type:"float",min:0,defVal:15}];mxShapeBasicRectCallout.prototype.cst={RECT_CALLOUT:"mxgraph.basic.rectCallout"};
1798mxShapeBasicRectCallout.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));a.begin();a.moveTo(d-.5*e,c-e);a.lineTo(0,c-e);a.lineTo(0,0);a.lineTo(b,0);a.lineTo(b,c-e);a.lineTo(d+.5*e,c-e);a.lineTo(d-e,c);a.close();a.fillAndStroke()};
1799mxShapeBasicRectCallout.prototype.getLabelMargins=function(){return mxUtils.getValue(this.style,"boundedLbl",!1)?new mxRectangle(0,0,0,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))*this.scale):null};mxCellRenderer.registerShape(mxShapeBasicRectCallout.prototype.cst.RECT_CALLOUT,mxShapeBasicRectCallout);
1800Graph.handleFactory[mxShapeBasicRectCallout.prototype.cst.RECT_CALLOUT]=function(a){return[Graph.createHandle(a,["dx","dy"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+d,a.y+a.height-b)},function(a,e){var b=.6*parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy));this.state.style.dx=Math.round(100*Math.max(b,Math.min(a.width-
1801b,e.x-a.x)))/100;this.state.style.dy=Math.round(Math.max(0,Math.min(a.height,a.y+a.height-e.y)))})]};
1802mxShapeBasicRectCallout.prototype.getConstraints=function(a,d,e){a=[];var 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))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
18030),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*(e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b-c,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(e-c)));return a};
1804function mxShapeBasicRoundRectCallout(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=this.dy=.5;this.size=10}mxUtils.extend(mxShapeBasicRoundRectCallout,mxActor);mxShapeBasicRoundRectCallout.prototype.cst={ROUND_RECT_CALLOUT:"mxgraph.basic.roundRectCallout"};mxShapeBasicRoundRectCallout.prototype.getLabelMargins=mxShapeBasicRectCallout.prototype.getLabelMargins;
1805mxShapeBasicRoundRectCallout.prototype.customProperties=[{name:"size",dispName:"Arc Size",type:"float",min:0,defVal:5},{name:"dx",dispName:"Callout Position",type:"float",min:0,defVal:30},{name:"dy",dispName:"Callout Size",type:"float",min:0,defVal:15}];
1806mxShapeBasicRoundRectCallout.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));var f=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"size",this.size)))),f=Math.min((c-e)/2,b/2,f);d=Math.max(f+.5*e,d);d=Math.min(b-f-.5*e,d);a.begin();a.moveTo(d-.5*e,c-e);a.lineTo(f,c-e);a.arcTo(f,f,0,0,1,0,c-e-f);a.lineTo(0,f);a.arcTo(f,
1807f,0,0,1,f,0);a.lineTo(b-f,0);a.arcTo(f,f,0,0,1,b,f);a.lineTo(b,c-e-f);a.arcTo(f,f,0,0,1,b-f,c-e);a.lineTo(d+.5*e,c-e);a.arcTo(1.9*e,1.4*e,0,0,1,d-e,c);a.arcTo(.9*e,1.4*e,0,0,0,d-.5*e,c-e);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicRoundRectCallout.prototype.cst.ROUND_RECT_CALLOUT,mxShapeBasicRoundRectCallout);mxShapeBasicRoundRectCallout.prototype.constraints=null;
1808Graph.handleFactory[mxShapeBasicRoundRectCallout.prototype.cst.ROUND_RECT_CALLOUT]=function(a){return[Graph.createHandle(a,["dx","dy"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+d,a.y+a.height-b)},function(a,e){var b=.6*parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy));this.state.style.dx=Math.round(100*Math.max(b,
1809Math.min(a.width-b,e.x-a.x)))/100;this.state.style.dy=Math.round(Math.max(0,Math.min(a.height,a.y+a.height-e.y)))}),Graph.createHandle(a,["size"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"size",this.size))));return new mxPoint(a.x+a.width-d,a.y+10)},function(a,e){var b=parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy));this.state.style.size=Math.round(100*Math.max(0,Math.min(a.width/2,(a.height-b)/2,a.x+a.width-e.x)))/100})]};
1810mxShapeBasicRoundRectCallout.prototype.getConstraints=function(a,d,e){a=[];var 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)))),f=Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size)))),f=Math.min((e-c)/2,d/2,f),b=Math.max(f+.5*c,b),b=Math.min(d-f-.5*c,b);f<.25*d&&(a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),a.push(new mxConnectionConstraint(new mxPoint(.75,
18110),!1)));f<.25*(e-c)&&(a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.25*(e-c))),a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.75*(e-c))),a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.25*(e-c))),a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.75*(e-c))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.293*f,.293*f));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,
1812null,d-.293*f,.293*f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*(e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.293*f,e-c-.293*f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.293*f,e-c-.293*f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b-c,e));return a};
1813function mxShapeBasicWave(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=.5}mxUtils.extend(mxShapeBasicWave,mxActor);mxShapeBasicWave.prototype.customProperties=[{name:"dy",dispName:"Wave Size",type:"float",min:0,max:1,defVal:.3}];mxShapeBasicWave.prototype.cst={WAVE:"mxgraph.basic.wave2"};
1814mxShapeBasicWave.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=c*Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));a.begin();a.moveTo(0,d/2);a.quadTo(b/6,d*(1-1.4),b/3,d/2);a.quadTo(b/2,1.4*d,2*b/3,d/2);a.quadTo(5*b/6,d*(1-1.4),b,d/2);a.lineTo(b,c-d/2);a.quadTo(5*b/6,c-1.4*d,2*b/3,c-d/2);a.quadTo(b/2,c-d*(1-1.4),b/3,c-d/2);a.quadTo(b/6,c-1.4*d,0,c-d/2);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicWave.prototype.cst.WAVE,mxShapeBasicWave);
1815mxShapeBasicWave.prototype.constraints=null;Graph.handleFactory[mxShapeBasicWave.prototype.cst.WAVE]=function(a){return[Graph.createHandle(a,["dy"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width/2,a.y+d*a.height)},function(a,e){this.state.style.dy=Math.round(100*Math.max(0,Math.min(1,(e.y-a.y)/a.height)))/100})]};
1816mxShapeBasicWave.prototype.getConstraints=function(a,d,e){a=[];var b=e*Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d/6,.015*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d/3,.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d,.95*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.67*d,.5*b));
1817a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.83*d,.015*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e-.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.83*d,e-.95*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.67*d,e-.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d,e-.04*b));
1818a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d/3,e-.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d/6,e-.95*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*e));return a};function mxShapeBasicOctagon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicOctagon,mxActor);
1819mxShapeBasicOctagon.prototype.customProperties=[{name:"dx",dispName:"Cutoff Size",type:"float",min:0,defVal:15}];mxShapeBasicOctagon.prototype.cst={OCTAGON:"mxgraph.basic.octagon2"};
1820mxShapeBasicOctagon.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=2*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(d,0);a.lineTo(b-d,0);a.lineTo(b,d);a.lineTo(b,c-d);a.lineTo(b-d,c);a.lineTo(d,c);a.lineTo(0,c-d);a.lineTo(0,d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicOctagon.prototype.cst.OCTAGON,mxShapeBasicOctagon);mxShapeBasicOctagon.prototype.constraints=null;
1821Graph.handleFactory[mxShapeBasicOctagon.prototype.cst.OCTAGON]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/4,a.width/4,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/4,a.width/4,e.x-a.x)))/100})]};
1822mxShapeBasicOctagon.prototype.getConstraints=function(a,d,e){a=[];var b=2*Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),b=.5*Math.min(.5*d,.5*e,b);a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,b));a.push(new mxConnectionConstraint(new mxPoint(0,
18230),!1,null,d-b,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,e-b));return a};function mxShapeBasicIsoCube(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.isoAngle=15}mxUtils.extend(mxShapeBasicIsoCube,mxActor);mxShapeBasicIsoCube.prototype.customProperties=[{name:"isoAngle",dispName:"Perspective Angle",type:"float",min:0,defVal:15}];
1824mxShapeBasicIsoCube.prototype.cst={ISO_CUBE:"mxgraph.basic.isocube"};
1825mxShapeBasicIsoCube.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(.01,Math.min(94,parseFloat(mxUtils.getValue(this.style,"isoAngle",this.isoAngle))))*Math.PI/200;d=Math.min(b*Math.tan(d),.5*c);a.begin();a.moveTo(.5*b,0);a.lineTo(b,d);a.lineTo(b,c-d);a.lineTo(.5*b,c);a.lineTo(0,c-d);a.lineTo(0,d);a.close();a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(0,d);a.lineTo(.5*b,2*d);a.lineTo(b,d);a.moveTo(.5*b,2*d);a.lineTo(.5*b,c);a.stroke()};
1826mxCellRenderer.registerShape(mxShapeBasicIsoCube.prototype.cst.ISO_CUBE,mxShapeBasicIsoCube);mxShapeBasicIsoCube.prototype.constraints=null;
1827Graph.handleFactory[mxShapeBasicIsoCube.prototype.cst.ISO_CUBE]=function(a){return[Graph.createHandle(a,["isoAngle"],function(a){var d=Math.max(.01,Math.min(94,parseFloat(mxUtils.getValue(this.state.style,"isoAngle",this.isoAngle))))*Math.PI/200;return new mxPoint(a.x,a.y+Math.min(a.width*Math.tan(d),.5*a.height))},function(a,e){this.state.style.isoAngle=Math.round(100*Math.max(0,Math.min(100,e.y-a.y)))/100})]};
1828mxShapeBasicIsoCube.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(.01,Math.min(94,parseFloat(mxUtils.getValue(this.style,"isoAngle",this.isoAngle))))*Math.PI/200,b=Math.min(d*Math.tan(b),.5*e);a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e-b));a.push(new mxConnectionConstraint(new mxPoint(.5,
18291),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b));return a};function mxShapeBasicTriangleAcute(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicTriangleAcute,mxActor);
1830mxShapeBasicTriangleAcute.prototype.customProperties=[{name:"dx",dispName:"Top",type:"float",min:0,max:1,defVal:.5}];mxShapeBasicTriangleAcute.prototype.cst={ACUTE_TRIANGLE:"mxgraph.basic.acute_triangle"};mxShapeBasicTriangleAcute.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.begin();a.moveTo(0,c);a.lineTo(d,0);a.lineTo(b,c);a.close();a.fillAndStroke()};
1831mxCellRenderer.registerShape(mxShapeBasicTriangleAcute.prototype.cst.ACUTE_TRIANGLE,mxShapeBasicTriangleAcute);mxShapeBasicTriangleAcute.prototype.constraints=null;
1832Graph.handleFactory[mxShapeBasicTriangleAcute.prototype.cst.ACUTE_TRIANGLE]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+10)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,(e.x-a.x)/a.width)))/100})]};
1833mxShapeBasicTriangleAcute.prototype.getConstraints=function(a,d,e){a=[];var b=d*Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*b,.5*e));a.push(new mxConnectionConstraint(new mxPoint(0,
18340),!1,null,d-.5*(d-b),.5*e));return a};function mxShapeBasicTriangleObtuse(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicTriangleObtuse,mxActor);mxShapeBasicTriangleObtuse.prototype.customProperties=[{name:"dx",dispName:"Bottom",type:"float",min:0,max:1,defVal:.25}];mxShapeBasicTriangleObtuse.prototype.cst={OBTUSE_TRIANGLE:"mxgraph.basic.obtuse_triangle"};
1835mxShapeBasicTriangleObtuse.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.begin();a.moveTo(d,c);a.lineTo(0,0);a.lineTo(b,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicTriangleObtuse.prototype.cst.OBTUSE_TRIANGLE,mxShapeBasicTriangleObtuse);mxShapeBasicTriangleObtuse.prototype.constraints=null;
1836Graph.handleFactory[mxShapeBasicTriangleObtuse.prototype.cst.OBTUSE_TRIANGLE]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+a.height-10)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,(e.x-a.x)/a.width)))/100})]};
1837mxShapeBasicTriangleObtuse.prototype.getConstraints=function(a,d,e){a=[];var b=d*Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d,.5*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d+b),e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,e));a.push(new mxConnectionConstraint(new mxPoint(0,
18380),!1,null,.5*b,.5*e));return a};function mxShapeBasicDrop(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBasicDrop,mxActor);mxShapeBasicDrop.prototype.cst={DROP:"mxgraph.basic.drop"};
1839mxShapeBasicDrop.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.5*Math.min(c,b);e=c-d;var f=Math.atan(Math.sqrt(e*e-d*d)/d);e=d*Math.sin(f);f=d*Math.cos(f);a.begin();a.moveTo(.5*b,0);a.lineTo(.5*b+e,c-d-f);a.arcTo(d,d,0,0,1,.5*b+d,c-d);a.arcTo(d,d,0,0,1,.5*b,c);a.arcTo(d,d,0,0,1,.5*b-d,c-d);a.arcTo(d,d,0,0,1,.5*b-e,c-d-f);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicDrop.prototype.cst.DROP,mxShapeBasicDrop);mxShapeBasicDrop.prototype.constraints=null;
1840function mxShapeBasicCone2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5;this.dy=.9}mxUtils.extend(mxShapeBasicCone2,mxActor);mxShapeBasicCone2.prototype.customProperties=[{name:"dx",dispName:"Top",type:"float",min:0,max:1,defVal:.5},{name:"dy",dispName:"Bottom",type:"float",min:0,max:1,defVal:.9}];mxShapeBasicCone2.prototype.cst={CONE2:"mxgraph.basic.cone2"};
1841mxShapeBasicCone2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=c*Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=c-e;a.begin();a.moveTo(d,0);0<e?(a.lineTo(b,c-e),a.arcTo(.5*b,e,0,0,1,.5*b,c),a.arcTo(.5*b,e,0,0,1,0,c-e)):(a.lineTo(b,c),a.lineTo(0,c));a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicCone2.prototype.cst.CONE2,mxShapeBasicCone2);
1842mxShapeBasicCone2.prototype.constraints=null;
1843Graph.handleFactory[mxShapeBasicCone2.prototype.cst.CONE2]=function(a){var d=[Graph.createHandle(a,["dx"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+b*a.width,a.y+10)},function(a,b){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,(b.x-a.x)/a.width)))/100})];a=Graph.createHandle(a,["dy"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+
184410,a.y+b*a.height)},function(a,b){this.state.style.dy=Math.round(100*Math.max(0,Math.min(1,(b.y-a.y)/a.height)))/100});d.push(a);return d};
1845mxShapeBasicCone2.prototype.getConstraints=function(a,d,e){a=[];var b=d*Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),c=e*Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),c=e-c;a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-
1846c));return a};function mxShapeBasicPyramid(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx1=.5;this.dx2=.6;this.dy1=.9;this.dy2=.8}mxUtils.extend(mxShapeBasicPyramid,mxActor);
1847mxShapeBasicPyramid.prototype.customProperties=[{name:"dx1",dispName:"Top",type:"float",min:0,max:1,defVal:.4},{name:"dx2",dispName:"Bottom",type:"float",min:0,max:1,defVal:.6},{name:"dy1",dispName:"Perspective Left",type:"float",min:0,max:1,defVal:.9},{name:"dy2",dispName:"Perspective Right",type:"float",min:0,max:1,defVal:.8}];mxShapeBasicPyramid.prototype.cst={PYRAMID:"mxgraph.basic.pyramid"};
1848mxShapeBasicPyramid.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1))));e=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2))));var f=c*Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1)))),g=c*Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy2",this.dy2))));a.begin();a.moveTo(d,0);a.lineTo(b,g);a.lineTo(e,c);a.lineTo(0,f);a.close();a.fillAndStroke();
1849a.setShadow(!1);a.begin();a.moveTo(d,0);a.lineTo(e,c);a.stroke()};mxCellRenderer.registerShape(mxShapeBasicPyramid.prototype.cst.PYRAMID,mxShapeBasicPyramid);mxShapeBasicPyramid.prototype.constraints=null;
1850Graph.handleFactory[mxShapeBasicPyramid.prototype.cst.PYRAMID]=function(a){var d=[Graph.createHandle(a,["dx1"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1))));return new mxPoint(a.x+b*a.width,a.y+10)},function(a,c){this.state.style.dx1=Math.round(100*Math.max(0,Math.min(1,(c.x-a.x)/a.width)))/100})],e=Graph.createHandle(a,["dx2"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2))));return new mxPoint(a.x+
1851b*a.width,a.y+a.height-10)},function(a,c){this.state.style.dx2=Math.round(100*Math.max(0,Math.min(1,(c.x-a.x)/a.width)))/100});d.push(e);e=Graph.createHandle(a,["dy1"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dy1",this.dy1))));return new mxPoint(a.x+10,a.y+b*a.height)},function(a,c){this.state.style.dy1=Math.round(100*Math.max(0,Math.min(1,(c.y-a.y)/a.height)))/100});d.push(e);a=Graph.createHandle(a,["dy2"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,
1852"dy2",this.dy2))));return new mxPoint(a.x+a.width-10,a.y+b*a.height)},function(a,c){this.state.style.dy2=Math.round(100*Math.max(0,Math.min(1,(c.y-a.y)/a.height)))/100});d.push(a);return d};
1853mxShapeBasicPyramid.prototype.getConstraints=function(a,d,e){a=[];var b=d*Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1)))),c=d*Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),f=e*Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy1",this.dy1)))),g=e*Math.max(0,Math.min(e,parseFloat(mxUtils.getValue(this.style,"dy2",this.dy2))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,0));a.push(new mxConnectionConstraint(new mxPoint(0,
18540),!1,null,.5*(d+b),.5*g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,g));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d+c),.5*(e+g)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*c,.5*(e+f)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*b,.5*f));return a};
1855function mxShapeBasic4PointStar2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.8}mxUtils.extend(mxShapeBasic4PointStar2,mxActor);mxShapeBasic4PointStar2.prototype.customProperties=[{name:"dx",dispName:"Thickness",type:"float",min:0,max:1,defVal:.8}];mxShapeBasic4PointStar2.prototype.cst={FOUR_POINT_STAR_2:"mxgraph.basic.4_point_star_2"};
1856mxShapeBasic4PointStar2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.5*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.begin();a.moveTo(0,.5*c);a.lineTo(d*b,d*c);a.lineTo(.5*b,0);a.lineTo(b-d*b,d*c);a.lineTo(b,.5*c);a.lineTo(b-d*b,c-d*c);a.lineTo(.5*b,c);a.lineTo(d*b,c-d*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasic4PointStar2.prototype.cst.FOUR_POINT_STAR_2,mxShapeBasic4PointStar2);
1857mxShapeBasic4PointStar2.prototype.constraints=null;Graph.handleFactory[mxShapeBasic4PointStar2.prototype.cst.FOUR_POINT_STAR_2]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width/2,a.y+d*a.height/2)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,2*(e.x-a.x)/a.width)))/100})]};
1858mxShapeBasic4PointStar2.prototype.getConstraints=function(a,d,e){a=[];d=.5*Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(d,d),!1));a.push(new mxConnectionConstraint(new mxPoint(1-d,d),!1));a.push(new mxConnectionConstraint(new mxPoint(1-
1859d,1-d),!1));a.push(new mxConnectionConstraint(new mxPoint(d,1-d),!1));return a};function mxShapeBasicDiagSnipRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicDiagSnipRect,mxActor);mxShapeBasicDiagSnipRect.prototype.customProperties=[{name:"dx",dispName:"Snip",type:"float",min:0,deVal:6}];mxShapeBasicDiagSnipRect.prototype.cst={DIAG_SNIP_RECT:"mxgraph.basic.diag_snip_rect"};
1860mxShapeBasicDiagSnipRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=2*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(d,0);a.lineTo(b,0);a.lineTo(b,c-d);a.lineTo(b-d,c);a.lineTo(0,c);a.lineTo(0,d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicDiagSnipRect.prototype.cst.DIAG_SNIP_RECT,mxShapeBasicDiagSnipRect);mxShapeBasicDiagSnipRect.prototype.constraints=null;
1861Graph.handleFactory[mxShapeBasicDiagSnipRect.prototype.cst.DIAG_SNIP_RECT]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/4,a.width/4,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/4,a.width/4,e.x-a.x)))/100})]};
1862mxShapeBasicDiagSnipRect.prototype.getConstraints=function(a,d,e){a=[];var b=2*Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),b=.5*Math.min(.5*d,.5*e,b);a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,b));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,e-b));a.push(new mxConnectionConstraint(new mxPoint(.5,
18631),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};function mxShapeBasicDiagRoundRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicDiagRoundRect,mxActor);mxShapeBasicDiagRoundRect.prototype.customProperties=[{name:"dx",dispName:"Rounding Size",type:"float",min:0,defVal:6}];mxShapeBasicDiagRoundRect.prototype.cst={DIAG_ROUND_RECT:"mxgraph.basic.diag_round_rect"};
1864mxShapeBasicDiagRoundRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=2*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(d,0);a.lineTo(b,0);a.lineTo(b,c-d);a.arcTo(d,d,0,0,1,b-d,c);a.lineTo(0,c);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicDiagRoundRect.prototype.cst.DIAG_ROUND_RECT,mxShapeBasicDiagRoundRect);
1865mxShapeBasicDiagRoundRect.prototype.constraints=null;Graph.handleFactory[mxShapeBasicDiagRoundRect.prototype.cst.DIAG_ROUND_RECT]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/4,a.width/4,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/4,a.width/4,e.x-a.x)))/100})]};
1866mxShapeBasicDiagRoundRect.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};
1867function mxShapeBasicCornerRoundRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicCornerRoundRect,mxActor);mxShapeBasicCornerRoundRect.prototype.customProperties=[{name:"dx",dispName:"Rounding Size",type:"float",min:0,defVal:6}];mxShapeBasicCornerRoundRect.prototype.cst={CORNER_ROUND_RECT:"mxgraph.basic.corner_round_rect"};
1868mxShapeBasicCornerRoundRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=2*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(d,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicCornerRoundRect.prototype.cst.CORNER_ROUND_RECT,mxShapeBasicCornerRoundRect);mxShapeBasicCornerRoundRect.prototype.constraints=null;
1869Graph.handleFactory[mxShapeBasicCornerRoundRect.prototype.cst.CORNER_ROUND_RECT]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/4,a.width/4,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/4,a.width/4,e.x-a.x)))/100})]};
1870mxShapeBasicCornerRoundRect.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};
1871function mxShapeBasicPlaque(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicPlaque,mxActor);mxShapeBasicPlaque.prototype.customProperties=[{name:"dx",dispName:"Cutoff Size",type:"float",min:0,defVal:6}];mxShapeBasicPlaque.prototype.cst={PLAQUE:"mxgraph.basic.plaque"};
1872mxShapeBasicPlaque.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=2*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(b-d,0);a.arcTo(d,d,0,0,0,b,d);a.lineTo(b,c-d);a.arcTo(d,d,0,0,0,b-d,c);a.lineTo(d,c);a.arcTo(d,d,0,0,0,0,c-d);a.lineTo(0,d);a.arcTo(d,d,0,0,0,d,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicPlaque.prototype.cst.PLAQUE,mxShapeBasicPlaque);
1873mxShapeBasicPlaque.prototype.constraints=null;Graph.handleFactory[mxShapeBasicPlaque.prototype.cst.PLAQUE]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/4,a.width/4,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+1.41*d,a.y+1.41*d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/4,a.width/4,e.x-a.x)))/100})]};
1874mxShapeBasicPlaque.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};function mxShapeBasicFrame(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicFrame,mxActor);
1875mxShapeBasicFrame.prototype.customProperties=[{name:"dx",dispName:"Width",type:"float",min:0,defVal:10}];mxShapeBasicFrame.prototype.cst={FRAME:"mxgraph.basic.frame"};
1876mxShapeBasicFrame.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.lineTo(0,0);a.close();a.moveTo(d,d);a.lineTo(d,c-d);a.lineTo(b-d,c-d);a.lineTo(b-d,d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicFrame.prototype.cst.FRAME,mxShapeBasicFrame);mxShapeBasicFrame.prototype.constraints=null;
1877Graph.handleFactory[mxShapeBasicFrame.prototype.cst.FRAME]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/2,a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,e.x-a.x)))/100})]};
1878mxShapeBasicFrame.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),b=Math.min(.5*d,.5*e,b);a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d,0));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d,0));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
18790),!1,null,d,.25*e));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.75*e));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d,e));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d,e));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
18800),!1,null,0,.75*e));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.25*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*(d-2*b)+b,b));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(1.5*d-b),b));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,-b,b));a.push(new mxConnectionConstraint(new mxPoint(0,
18810),!1,null,d-b,.25*(e-2*b)+b));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,-b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,.75*(e-2*b)+b));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-b,-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*(d-2*b)+b,e-b));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1,null,0,-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*(d-2*b)+b,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,
18821),!1,null,b,-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,.75*(e-2*b)+b));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,.25*(e-2*b)+b));return a};function mxShapeBasicPlaqueFrame(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicPlaqueFrame,mxActor);
1883mxShapeBasicPlaqueFrame.prototype.customProperties=[{name:"dx",dispName:"Width",type:"float",mix:0,defVal:10}];mxShapeBasicPlaqueFrame.prototype.cst={PLAQUE_FRAME:"mxgraph.basic.plaque_frame"};
1884mxShapeBasicPlaqueFrame.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.25*b,.25*c,d);a.begin();a.moveTo(b-d,0);a.arcTo(d,d,0,0,0,b,d);a.lineTo(b,c-d);a.arcTo(d,d,0,0,0,b-d,c);a.lineTo(d,c);a.arcTo(d,d,0,0,0,0,c-d);a.lineTo(0,d);a.arcTo(d,d,0,0,0,d,0);a.close();a.moveTo(2*d,d);a.arcTo(2*d,2*d,0,0,1,d,2*d);a.lineTo(d,c-2*d);a.arcTo(2*d,2*d,0,0,1,2*d,c-d);a.lineTo(b-2*d,c-d);a.arcTo(2*d,2*d,0,
18850,1,b-d,c-2*d);a.lineTo(b-d,2*d);a.arcTo(2*d,2*d,0,0,1,b-2*d,d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicPlaqueFrame.prototype.cst.PLAQUE_FRAME,mxShapeBasicPlaqueFrame);mxShapeBasicPlaqueFrame.prototype.constraints=null;
1886Graph.handleFactory[mxShapeBasicPlaqueFrame.prototype.cst.PLAQUE_FRAME]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/4,a.width/4,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/4,a.width/4,e.x-a.x)))/100})]};
1887mxShapeBasicPlaqueFrame.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),b=Math.min(.5*d,.5*e,b);a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(1,
1888.5),!1,null,-b,0));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1,null,0,-b));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,b,0));return a};function mxShapeBasicRoundedFrame(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicRoundedFrame,mxActor);mxShapeBasicRoundedFrame.prototype.customProperties=[{name:"dx",dispName:"Width",type:"float",min:0,defVal:10}];
1889mxShapeBasicRoundedFrame.prototype.cst={ROUNDED_FRAME:"mxgraph.basic.rounded_frame"};
1890mxShapeBasicRoundedFrame.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.25*b,.25*c,d);a.begin();a.moveTo(b-2*d,0);a.arcTo(2*d,2*d,0,0,1,b,2*d);a.lineTo(b,c-2*d);a.arcTo(2*d,2*d,0,0,1,b-2*d,c);a.lineTo(2*d,c);a.arcTo(2*d,2*d,0,0,1,0,c-2*d);a.lineTo(0,2*d);a.arcTo(2*d,2*d,0,0,1,2*d,0);a.close();a.moveTo(2*d,d);a.arcTo(d,d,0,0,0,d,2*d);a.lineTo(d,c-2*d);a.arcTo(d,d,0,0,0,2*d,c-d);a.lineTo(b-2*
1891d,c-d);a.arcTo(d,d,0,0,0,b-d,c-2*d);a.lineTo(b-d,2*d);a.arcTo(d,d,0,0,0,b-2*d,d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicRoundedFrame.prototype.cst.ROUNDED_FRAME,mxShapeBasicRoundedFrame);mxShapeBasicRoundedFrame.prototype.constraints=null;
1892Graph.handleFactory[mxShapeBasicRoundedFrame.prototype.cst.ROUNDED_FRAME]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/4,a.width/4,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/4,a.width/4,e.x-a.x)))/100})]};
1893mxShapeBasicRoundedFrame.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),b=Math.min(.5*d,.5*e,b);a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(1,
1894.5),!1,null,-b,0));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1,null,0,-b));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,b,0));return a};function mxShapeBasicFrameCorner(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicFrameCorner,mxActor);mxShapeBasicFrameCorner.prototype.customProperties=[{name:"dx",dispName:"Width",type:"float",min:0,defVal:10}];mxShapeBasicFrameCorner.prototype.cst={FRAME_CORNER:"mxgraph.basic.frame_corner"};
1895mxShapeBasicFrameCorner.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b-d,d);a.lineTo(d,d);a.lineTo(d,c-d);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicFrameCorner.prototype.cst.FRAME_CORNER,mxShapeBasicFrameCorner);mxShapeBasicFrameCorner.prototype.constraints=null;
1896Graph.handleFactory[mxShapeBasicFrameCorner.prototype.cst.FRAME_CORNER]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/2,a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,e.x-a.x)))/100})]};
1897mxShapeBasicFrameCorner.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),b=Math.min(.5*d,.5*e,b);a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,-b,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-2*b)+b,b));a.push(new mxConnectionConstraint(new mxPoint(0,
18980),!1,null,b,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,.5*(e-2*b)+b));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,b,-b));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};function mxShapeBasicDiagStripe(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicDiagStripe,mxActor);
1899mxShapeBasicDiagStripe.prototype.customProperties=[{name:"dx",dispName:"Width",type:"float",mix:0,defVal:10}];mxShapeBasicDiagStripe.prototype.cst={DIAG_STRIPE:"mxgraph.basic.diag_stripe"};mxShapeBasicDiagStripe.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(b,c,d);a.begin();a.moveTo(0,c);a.lineTo(b,0);a.lineTo(b,Math.min(100*d/b,c));a.lineTo(Math.min(100*d/c,b),c);a.close();a.fillAndStroke()};
1900mxCellRenderer.registerShape(mxShapeBasicDiagStripe.prototype.cst.DIAG_STRIPE,mxShapeBasicDiagStripe);mxShapeBasicDiagStripe.prototype.constraints=null;
1901Graph.handleFactory[mxShapeBasicDiagStripe.prototype.cst.DIAG_STRIPE]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+a.height)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,e.x-a.x)))/100})]};
1902mxShapeBasicDiagStripe.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),b=Math.min(d,e,b);a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*Math.min(100*b/d,e)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,Math.min(100*
1903b/d,e)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d+Math.min(100*b/e,d)),.5*(Math.min(100*b/d,e)+e)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,Math.min(100*b/e,d),e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*Math.min(100*b/e,d),e));return a};function mxShapeBasicDonut(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicDonut,mxActor);
1904mxShapeBasicDonut.prototype.customProperties=[{name:"dx",dispName:"Width",type:"float",min:0,defVal:25}];mxShapeBasicDonut.prototype.cst={DONUT:"mxgraph.basic.donut"};
1905mxShapeBasicDonut.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(0,.5*c);a.arcTo(.5*b,.5*c,0,0,1,.5*b,0);a.arcTo(.5*b,.5*c,0,0,1,b,.5*c);a.arcTo(.5*b,.5*c,0,0,1,.5*b,c);a.arcTo(.5*b,.5*c,0,0,1,0,.5*c);a.close();a.moveTo(.5*b,d);a.arcTo(.5*b-d,.5*c-d,0,0,0,d,.5*c);a.arcTo(.5*b-d,.5*c-d,0,0,0,.5*b,c-d);a.arcTo(.5*b-d,.5*c-d,0,0,0,b-d,.5*c);a.arcTo(.5*b-d,.5*c-d,
19060,0,0,.5*b,d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicDonut.prototype.cst.DONUT,mxShapeBasicDonut);mxShapeBasicDonut.prototype.constraints=null;
1907Graph.handleFactory[mxShapeBasicDonut.prototype.cst.DONUT]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/2,a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+a.height/2)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,e.x-a.x)))/100})]};
1908function mxShapeBasicLayeredRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicLayeredRect,mxActor);mxShapeBasicLayeredRect.prototype.customProperties=[{name:"dx",dispName:"Layer Distance",type:"float",mix:0,defVal:10}];mxShapeBasicLayeredRect.prototype.cst={LAYERED_RECT:"mxgraph.basic.layered_rect"};
1909mxShapeBasicLayeredRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(d,d);a.lineTo(b,d);a.lineTo(b,c);a.lineTo(d,c);a.close();a.fillAndStroke();a.begin();a.moveTo(.5*d,.5*d);a.lineTo(b-.5*d,.5*d);a.lineTo(b-.5*d,c-.5*d);a.lineTo(.5*d,c-.5*d);a.close();a.fillAndStroke();a.begin();a.moveTo(0,0);a.lineTo(b-d,0);a.lineTo(b-d,c-d);a.lineTo(0,c-d);a.close();a.fillAndStroke()};
1910mxCellRenderer.registerShape(mxShapeBasicLayeredRect.prototype.cst.LAYERED_RECT,mxShapeBasicLayeredRect);mxShapeBasicLayeredRect.prototype.constraints=null;
1911Graph.handleFactory[mxShapeBasicLayeredRect.prototype.cst.LAYERED_RECT]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/2,a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+a.width-d,a.y+a.height-d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,-e.x+a.width+a.x)))/100})]};
1912mxShapeBasicLayeredRect.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),b=Math.min(.5*d,.5*e,b);a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*(d-b),0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-b),0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*(d-b),0));a.push(new mxConnectionConstraint(new mxPoint(0,0),
1913!1,null,d-b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.5*b,.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.25*(e-b)+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*(e-b)+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.75*(e-b)+b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,
1914.75*(d-b)+b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-b)+b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*(d-b)+b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*b,e-.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.75*(e-b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,
19150,.5*(e-b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.25*(e-b)));return a};function mxShapeBasicButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicButton,mxActor);mxShapeBasicButton.prototype.customProperties=[{name:"dx",dispName:"Button Height",type:"float",min:0,defVal:10}];mxShapeBasicButton.prototype.cst={BUTTON:"mxgraph.basic.button"};
1916mxShapeBasicButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke();a.setShadow(!1);a.setLineJoin("round");a.begin();a.moveTo(0,c);a.lineTo(0,0);a.lineTo(d,d);a.lineTo(d,c-d);a.close();a.fillAndStroke();a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b-d,d);a.lineTo(d,d);a.close();a.fillAndStroke();
1917a.begin();a.moveTo(b,0);a.lineTo(b,c);a.lineTo(b-d,c-d);a.lineTo(b-d,d);a.close();a.fillAndStroke();a.begin();a.moveTo(0,c);a.lineTo(d,c-d);a.lineTo(b-d,c-d);a.lineTo(b,c);a.close();a.fillAndStroke();a.begin();a.moveTo(0,c);a.lineTo(0,0);a.lineTo(d,d);a.lineTo(d,c-d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicButton.prototype.cst.BUTTON,mxShapeBasicButton);mxShapeBasicButton.prototype.constraints=null;
1918Graph.handleFactory[mxShapeBasicButton.prototype.cst.BUTTON]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/2,a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,e.x-a.x)))/100})]};
1919function mxShapeBasicShadedButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicShadedButton,mxActor);mxShapeBasicShadedButton.prototype.customProperties=[{name:"dx",dispName:"Button Height",type:"float",min:0,defVal:10}];mxShapeBasicShadedButton.prototype.cst={SHADED_BUTTON:"mxgraph.basic.shaded_button"};
1920mxShapeBasicShadedButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setShadow(!1);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fill();a.setFillColor("#ffffff");a.setAlpha(.25);a.begin();a.moveTo(0,c);a.lineTo(0,0);a.lineTo(d,d);a.lineTo(d,c-d);a.close();a.fill();a.setAlpha(.5);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b-d,d);a.lineTo(d,
1921d);a.close();a.fill();a.setFillColor("#000000");a.setAlpha(.25);a.begin();a.moveTo(b,0);a.lineTo(b,c);a.lineTo(b-d,c-d);a.lineTo(b-d,d);a.close();a.fill();a.setAlpha(.5);a.begin();a.moveTo(0,c);a.lineTo(d,c-d);a.lineTo(b-d,c-d);a.lineTo(b,c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeBasicShadedButton.prototype.cst.SHADED_BUTTON,mxShapeBasicShadedButton);mxShapeBasicShadedButton.prototype.constraints=null;
1922Graph.handleFactory[mxShapeBasicShadedButton.prototype.cst.SHADED_BUTTON]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/2,a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,e.x-a.x)))/100})]};
1923function mxShapeBasicPie(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.startAngle=.25;this.endAngle=.75}mxUtils.extend(mxShapeBasicPie,mxActor);mxShapeBasicPie.prototype.customProperties=[{name:"startAngle",dispName:"Start Angle",type:"float",min:0,max:1,defVal:.2},{name:"endAngle",dispName:"End Angle",type:"float",min:0,max:1,defVal:.9}];mxShapeBasicPie.prototype.cst={PIE:"mxgraph.basic.pie"};
1924mxShapeBasicPie.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"startAngle",this.startAngle)))),g=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"endAngle",this.endAngle)))),h=2*Math.PI*f,k=2*Math.PI*g;d=.5*b;e=.5*c;var l=d+Math.sin(h)*d,m=e-Math.cos(h)*e,n=d+Math.sin(k)*d,p=e-Math.cos(k)*e,k=k-h;0>k&&(k+=2*Math.PI);h=0;k>=Math.PI&&(h=1);a.begin();f%=1;g%=1;0==f&&.5==g?(a.moveTo(d,e),a.lineTo(l,m),a.arcTo(d,
1925e,0,0,1,b,.5*c),a.arcTo(d,e,0,0,1,.5*b,c)):.5==f&&0==g?(a.moveTo(d,e),a.lineTo(l,m),a.arcTo(d,e,0,0,1,0,.5*c),a.arcTo(d,e,0,0,1,.5*b,0)):(a.moveTo(d,e),a.lineTo(l,m),a.arcTo(d,e,0,h,1,n,p));a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicPie.prototype.cst.PIE,mxShapeBasicPie);mxShapeBasicPie.prototype.constraints=null;
1926Graph.handleFactory[mxShapeBasicPie.prototype.cst.PIE]=function(a){var d=[Graph.createHandle(a,["startAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"startAngle",this.startAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,b){var c=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(b.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,Math.min(1,(b.y-a.y-.5*
1927a.height)/(.5*a.height))))/100)/Math.PI;0>c&&(c=1+c);this.state.style.startAngle=c})];a=Graph.createHandle(a,["endAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"endAngle",this.endAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,b){var c=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(b.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,Math.min(1,(b.y-
1928a.y-.5*a.height)/(.5*a.height))))/100)/Math.PI;0>c&&(c=1+c);this.state.style.endAngle=c});d.push(a);return d};function mxShapeBasicArc(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.startAngle=.25;this.endAngle=.75}mxUtils.extend(mxShapeBasicArc,mxActor);mxShapeBasicArc.prototype.customProperties=[{name:"startAngle",dispName:"Start Angle",type:"float",min:0,max:1,defVal:.3},{name:"endAngle",dispName:"End Angle",type:"float",min:0,max:1,defVal:.1}];
1929mxShapeBasicArc.prototype.cst={ARC:"mxgraph.basic.arc"};
1930mxShapeBasicArc.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"startAngle",this.startAngle)))),g=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"endAngle",this.endAngle)))),h=2*Math.PI*f,k=2*Math.PI*g;d=.5*b;e=.5*c;var l=d+Math.sin(h)*d,m=e-Math.cos(h)*e,n=d+Math.sin(k)*d,p=e-Math.cos(k)*e,k=k-h;0>k&&(k+=2*Math.PI);h=0;k>Math.PI&&(h=1);a.begin();f%=1;g%=1;0==f&&.5==g?(a.moveTo(l,m),a.arcTo(d,e,0,0,1,
1931b,.5*c),a.arcTo(d,e,0,0,1,.5*b,c)):.5==f&&0==g?(a.moveTo(l,m),a.arcTo(d,e,0,0,1,0,.5*c),a.arcTo(d,e,0,0,1,.5*b,0)):(a.moveTo(l,m),a.arcTo(d,e,0,h,1,n,p));a.stroke()};mxCellRenderer.registerShape(mxShapeBasicArc.prototype.cst.ARC,mxShapeBasicArc);mxShapeBasicArc.prototype.constraints=null;
1932Graph.handleFactory[mxShapeBasicArc.prototype.cst.ARC]=function(a){var d=[Graph.createHandle(a,["startAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"startAngle",this.startAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,b){var c=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(b.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,Math.min(1,(b.y-a.y-.5*
1933a.height)/(.5*a.height))))/100)/Math.PI;0>c&&(c=1+c);this.state.style.startAngle=c})];a=Graph.createHandle(a,["endAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"endAngle",this.endAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,b){var c=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(b.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,Math.min(1,(b.y-
1934a.y-.5*a.height)/(.5*a.height))))/100)/Math.PI;0>c&&(c=1+c);this.state.style.endAngle=c});d.push(a);return d};function mxShapeBasicPartConcEllipse(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.startAngle=.25;this.endAngle=.75;this.arcWidth=.5}mxUtils.extend(mxShapeBasicPartConcEllipse,mxActor);
1935mxShapeBasicPartConcEllipse.prototype.customProperties=[{name:"startAngle",dispName:"Start Angle",type:"float",min:0,max:1,defVal:.25},{name:"endAngle",dispName:"End Angle",type:"float",min:0,max:1,defVal:.1},{name:"arcWidth",dispName:"Arc Width",type:"float",min:0,max:1,defVal:.5}];mxShapeBasicPartConcEllipse.prototype.cst={PART_CONC_ELLIPSE:"mxgraph.basic.partConcEllipse"};
1936mxShapeBasicPartConcEllipse.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"startAngle",this.startAngle))));d=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"endAngle",this.endAngle))));var g=1-Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arcWidth",this.arcWidth))));b*=.5;c*=.5;e=b*g;var g=c*g,h=d-f;0>h?h+=2*Math.PI:h==Math.PI&&(d+=1E-5);var k=b+Math.sin(f)*b,l=c-
1937Math.cos(f)*c,m=b+Math.sin(f)*e,f=c-Math.cos(f)*g,n=b+Math.sin(d)*b,p=c-Math.cos(d)*c,q=b+Math.sin(d)*e;d=c-Math.cos(d)*g;var t=0;h>=Math.PI&&(t=1);a.begin();a.moveTo(k,l);a.arcTo(b,c,0,t,1,n,p);a.lineTo(q,d);a.arcTo(e,g,0,t,0,m,f);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicPartConcEllipse.prototype.cst.PART_CONC_ELLIPSE,mxShapeBasicPartConcEllipse);mxShapeBasicPartConcEllipse.prototype.constraints=null;
1938Graph.handleFactory[mxShapeBasicPartConcEllipse.prototype.cst.PART_CONC_ELLIPSE]=function(a){var d=[Graph.createHandle(a,["startAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"startAngle",this.startAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,c){var b=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(c.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,
1939Math.min(1,(c.y-a.y-.5*a.height)/(.5*a.height))))/100)/Math.PI;0>b&&(b=1+b);this.state.style.startAngle=b})],e=Graph.createHandle(a,["endAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"endAngle",this.endAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,c){var b=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(c.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,
1940Math.min(1,(c.y-a.y-.5*a.height)/(.5*a.height))))/100)/Math.PI;0>b&&(b=1+b);this.state.style.endAngle=b});d.push(e);a=Graph.createHandle(a,["arcWidth"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"arcWidth",this.arcWidth))));return new mxPoint(a.x+a.width/2,a.y+b*a.height*.5)},function(a,c){this.state.style.arcWidth=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,(c.y-a.y)/(.5*a.height))))/100});d.push(a);return d};
1941function mxShapeBasicNumEntryVert(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=.5}mxUtils.extend(mxShapeBasicNumEntryVert,mxActor);mxShapeBasicNumEntryVert.prototype.cst={NUM_ENTRY_VERT:"mxgraph.basic.numberedEntryVert"};
1942mxShapeBasicNumEntryVert.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));d=Math.min(d,b-10,c-5);a.ellipse(.5*b-.5*d,0,d,d);a.fillAndStroke();a.begin();a.moveTo(0,.5*d);a.lineTo(.5*b-.5*d-5,.5*d);a.arcTo(.5*d+5,.5*d+5,0,0,0,.5*b+.5*d+5,.5*d);a.lineTo(b,.5*d);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicNumEntryVert.prototype.cst.NUM_ENTRY_VERT,mxShapeBasicNumEntryVert);
1943mxShapeBasicNumEntryVert.prototype.constraints=null;Graph.handleFactory[mxShapeBasicNumEntryVert.prototype.cst.NUM_ENTRY_VERT]=function(a){return[Graph.createHandle(a,["dy"],function(a){var d=Math.max(0,Math.min(a.width,a.width,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width/2,a.y+d)},function(a,e){this.state.style.dy=Math.round(100*Math.max(0,Math.min(a.height,a.width,e.y-a.y)))/100})]};
1944function mxShapeBasicBendingArch(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.startAngle=.25;this.endAngle=.75;this.arcWidth=.5}mxUtils.extend(mxShapeBasicBendingArch,mxActor);mxShapeBasicBendingArch.prototype.cst={BENDING_ARCH:"mxgraph.basic.bendingArch"};
1945mxShapeBasicBendingArch.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"startAngle",this.startAngle)))),g=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"endAngle",this.endAngle)))),h=1-Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arcWidth",this.arcWidth))));d=.5*b;e=.5*c;var k=d*h,h=e*h,l=d+Math.sin(f)*d,m=e-Math.cos(f)*e,n=d+Math.sin(f)*k,p=e-Math.cos(f)*h,q=d+Math.sin(g)*
1946d,t=e-Math.cos(g)*e,u=d+Math.sin(g)*k,v=e-Math.cos(g)*h,g=g-f;0>g&&(g+=2*Math.PI);f=0;g>Math.PI&&(f=1);var g=k-5,r=h-5;a.ellipse(.5*b-g,.5*c-r,2*g,2*r);a.fillAndStroke();a.begin();a.moveTo(l,m);a.arcTo(d,e,0,f,1,q,t);a.lineTo(u,v);a.arcTo(k,h,0,f,0,n,p);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicBendingArch.prototype.cst.BENDING_ARCH,mxShapeBasicBendingArch);mxShapeBasicBendingArch.prototype.constraints=null;
1947Graph.handleFactory[mxShapeBasicBendingArch.prototype.cst.BENDING_ARCH]=function(a){var d=[Graph.createHandle(a,["startAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"startAngle",this.startAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,c){var b=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(c.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,Math.min(1,
1948(c.y-a.y-.5*a.height)/(.5*a.height))))/100)/Math.PI;0>b&&(b=1+b);this.state.style.startAngle=b})],e=Graph.createHandle(a,["endAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"endAngle",this.endAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,c){var b=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(c.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,Math.min(1,
1949(c.y-a.y-.5*a.height)/(.5*a.height))))/100)/Math.PI;0>b&&(b=1+b);this.state.style.endAngle=b});d.push(e);a=Graph.createHandle(a,["arcWidth"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"arcWidth",this.arcWidth))));return new mxPoint(a.x+a.width/2,a.y+b*a.height*.5)},function(a,c){this.state.style.arcWidth=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,(c.y-a.y)/(.5*a.height))))/100});d.push(a);return d};
1950function mxShapeBasicThreeCornerRoundRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicThreeCornerRoundRect,mxActor);mxShapeBasicThreeCornerRoundRect.prototype.customProperties=[{name:"dx",dispName:"Rounding Size",type:"float",min:0,defVal:6}];mxShapeBasicThreeCornerRoundRect.prototype.cst={THREE_CORNER_ROUND_RECT:"mxgraph.basic.three_corner_round_rect"};
1951mxShapeBasicThreeCornerRoundRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=2*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));d=Math.min(.5*b,.5*c,d);a.begin();a.moveTo(d,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c-d);a.arcTo(d,d,0,0,1,b-d,c);a.lineTo(0,c);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBasicThreeCornerRoundRect.prototype.cst.THREE_CORNER_ROUND_RECT,mxShapeBasicThreeCornerRoundRect);
1952mxShapeBasicThreeCornerRoundRect.prototype.constraints=null;Graph.handleFactory[mxShapeBasicThreeCornerRoundRect.prototype.cst.THREE_CORNER_ROUND_RECT]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/4,a.width/4,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+d)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.height/4,a.width/4,e.x-a.x)))/100})]};
1953mxShapeBasicThreeCornerRoundRect.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};
1954function mxShapeBasicPolygon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=this.dx=.5}mxUtils.extend(mxShapeBasicPolygon,mxActor);mxShapeBasicPolygon.prototype.customProperties=[{name:"polyline",dispName:"Polyline",type:"bool",defVal:!1}];mxShapeBasicPolygon.prototype.cst={POLYGON:"mxgraph.basic.polygon"};
1955mxShapeBasicPolygon.prototype.paintVertexShape=function(a,d,e,b,c){try{a.translate(d,e);var f=JSON.parse(mxUtils.getValue(this.state.style,"polyCoords","[]")),g=mxUtils.getValue(this.style,"polyline",!1);if(0<f.length){a.begin();a.moveTo(f[0][0]*b,f[0][1]*c);for(d=1;d<f.length;d++)a.lineTo(f[d][0]*b,f[d][1]*c);0==g&&a.close();a.end();a.fillAndStroke()}}catch(h){}};mxCellRenderer.registerShape(mxShapeBasicPolygon.prototype.cst.POLYGON,mxShapeBasicPolygon);
1956mxShapeBasicPolygon.prototype.constraints=null;
1957Graph.handleFactory[mxShapeBasicPolygon.prototype.cst.POLYGON]=function(a){var d=[];try{for(var e=JSON.parse(mxUtils.getValue(a.style,"polyCoords","[]")),b=0;b<e.length;b++)(function(b){d.push(Graph.createHandle(a,["polyCoords"],function(a){return new mxPoint(a.x+e[b][0]*a.width,a.y+e[b][1]*a.height)},function(c,d){e[b]=[Math.round(100*Math.max(0,Math.min(1,(d.x-c.x)/c.width)))/100,Math.round(100*Math.max(0,Math.min(1,(d.y-c.y)/c.height)))/100];a.style.polyCoords=JSON.stringify(e)},!1))})(b)}catch(c){}return d};
1958function mxShapeBasicPatternFillRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeBasicPatternFillRect,mxActor);mxShapeBasicPatternFillRect.prototype.cst={PATTERN_FILL_RECT:"mxgraph.basic.patternFillRect"};
1959mxShapeBasicPatternFillRect.prototype.customProperties=[{name:"step",dispName:"Fill Step",type:"float",min:0,defVal:5},{name:"fillStyle",dispName:"Fill Style",type:"enum",defVal:"none",enumList:[{val:"none",dispName:"None"},{val:"diag",dispName:"Diagonal"},{val:"diagRev",dispName:"Diagonal Reverse"},{val:"vert",dispName:"Vertical"},{val:"hor",dispName:"Horizontal"},{val:"grid",dispName:"Grid"},{val:"diagGrid",dispName:"Diagonal Grid"}]},{name:"fillStrokeWidth",dispName:"Fill Stroke Width",type:"float",
1960min:0,defVal:1},{name:"fillStrokeColor",dispName:"Fill Stroke Color",type:"color",defVal:"#cccccc"},{name:"top",dispName:"Top Line",type:"bool",defVal:!0},{name:"right",dispName:"Right Line",type:"bool",defVal:!0},{name:"bottom",dispName:"Bottom Line",type:"bool",defVal:!0},{name:"left",dispName:"Left Line",type:"bool",defVal:!0}];
1961mxShapeBasicPatternFillRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,"strokeColor","#000000");e=mxUtils.getValue(this.style,"strokeWidth","1");a.rect(0,0,b,c);a.fill();var f=mxUtils.getValue(this.style,"fillStrokeColor","#cccccc"),g=parseFloat(mxUtils.getValue(this.style,"fillStrokeWidth",1));a.setStrokeColor(f);a.setStrokeWidth(g);f=parseFloat(mxUtils.getValue(this.style,"step",5));g=mxUtils.getValue(this.style,"fillStyle","none");if("diag"==g||
1962"diagGrid"==g){var f=1.41*f,h=0;for(a.begin();h<c+b;)h<=c?a.moveTo(0,h):a.moveTo(h-c,c),h<=b?a.lineTo(h,0):a.lineTo(b,h-b),h+=f;a.stroke()}else if("vert"==g||"grid"==g){a.begin();for(h=0;h<=b;)a.moveTo(h,0),a.lineTo(h,c),h+=f;a.stroke()}if("diagRev"==g||"diagGrid"==g){"diagRev"==g&&(f*=1.41);h=0;for(a.begin();h<c+b;)h<=c?(a.moveTo(b,h),h<=b?a.lineTo(b-h,0):a.lineTo(b-b,h-b)):(a.moveTo(b-h+c,c),h<=b?a.lineTo(b-h,0):a.lineTo(0,h-b)),h+=f;a.stroke()}else if("hor"==g||"grid"==g){a.begin();for(h=0;h<=
1963c;)a.moveTo(0,h),a.lineTo(b,h),h+=f;a.stroke()}a.setStrokeColor(d);a.setStrokeWidth(e);a.begin();a.moveTo(0,0);"1"==mxUtils.getValue(this.style,"top","1")?a.lineTo(b,0):a.moveTo(b,0);"1"==mxUtils.getValue(this.style,"right","1")?a.lineTo(b,c):a.moveTo(b,c);"1"==mxUtils.getValue(this.style,"bottom","1")?a.lineTo(0,c):a.moveTo(0,c);"1"==mxUtils.getValue(this.style,"left","1")&&a.lineTo(0,0);a.end();a.stroke()};
1964mxCellRenderer.registerShape(mxShapeBasicPatternFillRect.prototype.cst.PATTERN_FILL_RECT,mxShapeBasicPatternFillRect);
1965mxShapeBasicPatternFillRect.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
1966.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
1967.25),!1));return a};function mxShapeBootstrapRRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapRRect,mxShape);mxShapeBootstrapRRect.prototype.cst={PACKAGE:"mxgraph.bootstrap.rrect",R_SIZE:"rSize"};mxShapeBootstrapRRect.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
1968mxShapeBootstrapRRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeBootstrapRRect.prototype.cst.R_SIZE,"10"));a.roundrect(0,0,b,c,d);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBootstrapRRect.prototype.cst.PACKAGE,mxShapeBootstrapRRect);function mxShapeBootstrapTopButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapTopButton,mxShape);
1969mxShapeBootstrapTopButton.prototype.cst={TOP_BUTTON:"mxgraph.bootstrap.topButton",R_SIZE:"rSize"};mxShapeBootstrapTopButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
1970mxShapeBootstrapTopButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeBootstrapTopButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBootstrapTopButton.prototype.cst.TOP_BUTTON,mxShapeBootstrapTopButton);
1971function mxShapeBootstrapBottomButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapBottomButton,mxShape);mxShapeBootstrapBottomButton.prototype.cst={BOTTOM_BUTTON:"mxgraph.bootstrap.bottomButton",R_SIZE:"rSize"};mxShapeBootstrapBottomButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
1972mxShapeBootstrapBottomButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeBootstrapBottomButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c-d);a.arcTo(d,d,0,0,1,b-d,c);a.lineTo(d,c);a.arcTo(d,d,0,0,1,0,c-d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBootstrapBottomButton.prototype.cst.BOTTOM_BUTTON,mxShapeBootstrapBottomButton);
1973function mxShapeBootstrapRightButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapRightButton,mxShape);mxShapeBootstrapRightButton.prototype.cst={RIGHT_BUTTON:"mxgraph.bootstrap.rightButton",R_SIZE:"rSize"};mxShapeBootstrapRightButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
1974mxShapeBootstrapRightButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeBootstrapRightButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(0,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c-d);a.arcTo(d,d,0,0,1,b-d,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBootstrapRightButton.prototype.cst.RIGHT_BUTTON,mxShapeBootstrapRightButton);
1975function mxShapeBootstrapLeftButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapLeftButton,mxShape);mxShapeBootstrapLeftButton.prototype.cst={LEFT_BUTTON:"mxgraph.bootstrap.leftButton",R_SIZE:"rSize"};mxShapeBootstrapLeftButton.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10}];
1976mxShapeBootstrapLeftButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeBootstrapLeftButton.prototype.cst.R_SIZE,"10"));a.begin();a.moveTo(b,0);a.lineTo(b,c);a.lineTo(d,c);a.arcTo(d,d,0,0,1,0,c-d);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBootstrapLeftButton.prototype.cst.LEFT_BUTTON,mxShapeBootstrapLeftButton);
1977function mxShapeBootstrapLeftButtonStriped(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapLeftButtonStriped,mxShape);mxShapeBootstrapLeftButtonStriped.prototype.cst={LEFT_BUTTON_STRIPED:"mxgraph.bootstrap.leftButtonStriped"};
1978mxShapeBootstrapLeftButtonStriped.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);rSize=5;a.begin();a.moveTo(b,0);a.lineTo(b,c);a.lineTo(rSize,c);a.arcTo(rSize,rSize,0,0,1,0,c-rSize);a.lineTo(0,rSize);a.arcTo(rSize,rSize,0,0,1,rSize,0);a.close();a.fill();a.setAlpha("0.2");d=.5*c;a.setFillColor("#ffffff");a.begin();a.moveTo(0,.75*c);a.lineTo(0,.25*c);a.lineTo(.75*c,c);a.lineTo(.25*c,c);a.close();a.fill();e=!1;for(var f=.5*d;!e;)a.begin(),a.moveTo(f,0),f+d>=b?(a.lineTo(b,0),a.lineTo(b,
1979b-f)):(a.lineTo(f+d,0),f+d+c>b?(a.lineTo(b,b-f-d),b-f>c?(a.lineTo(b,c),a.lineTo(f+c,c)):a.lineTo(b,b-f)):(a.lineTo(f+d+c,c),a.lineTo(f+c,c))),a.close(),a.fill(),f+=2*d,f>b&&(e=!0)};mxCellRenderer.registerShape(mxShapeBootstrapLeftButtonStriped.prototype.cst.LEFT_BUTTON_STRIPED,mxShapeBootstrapLeftButtonStriped);function mxShapeBootstrapRoundedButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapRoundedButton,mxShape);
1980mxShapeBootstrapRoundedButton.prototype.cst={ROUNDED_BUTTON:"mxgraph.bootstrap.roundedButton"};mxShapeBootstrapRoundedButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);b>c?(d=.5*c,a.begin(),a.moveTo(b-d,0),a.arcTo(d,d,0,0,1,b-d,c),a.lineTo(d,c),a.arcTo(d,d,0,0,1,d,0)):(d=.5*b,a.begin(),a.moveTo(0,c-d),a.arcTo(d,d,0,0,0,b,c-d),a.lineTo(b,d),a.arcTo(d,d,0,0,0,0,d));a.close();a.fillAndStroke()};
1981mxCellRenderer.registerShape(mxShapeBootstrapRoundedButton.prototype.cst.ROUNDED_BUTTON,mxShapeBootstrapRoundedButton);function mxShapeBootstrapArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapArrow,mxShape);mxShapeBootstrapArrow.prototype.cst={ARROW:"mxgraph.bootstrap.arrow"};
1982mxShapeBootstrapArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.moveTo(.9*b,0);a.lineTo(b,.5*c);a.lineTo(.9*b,c);a.stroke()};mxCellRenderer.registerShape(mxShapeBootstrapArrow.prototype.cst.ARROW,mxShapeBootstrapArrow);function mxShapeBootstrapTabTop(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapTabTop,mxShape);
1983mxShapeBootstrapTabTop.prototype.cst={TAB_TOP:"mxgraph.bootstrap.tabTop",R_SIZE:"rSize"};mxShapeBootstrapTabTop.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:5}];
1984mxShapeBootstrapTabTop.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,mxShapeBootstrapTopButton.prototype.cst.R_SIZE,"10"));e=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");a.setStrokeColor(f);a.begin();a.moveTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke();a.setStrokeColor(e);
1985a.begin();a.moveTo(0,c);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c);a.stroke()};mxCellRenderer.registerShape(mxShapeBootstrapTabTop.prototype.cst.TAB_TOP,mxShapeBootstrapTabTop);function mxShapeBootstrapImage(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapImage,mxShape);mxShapeBootstrapImage.prototype.cst={IMAGE:"mxgraph.bootstrap.image",R_SIZE:"rSize"};
1986mxShapeBootstrapImage.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:5}];
1987mxShapeBootstrapImage.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,parseInt(mxUtils.getValue(this.style,mxShapeBootstrapTopButton.prototype.cst.R_SIZE,"10")));mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");a.begin();a.moveTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c-d);a.arcTo(d,d,0,0,1,b-d,c);a.lineTo(d,c);a.arcTo(d,d,0,0,1,0,c-d);a.close();
1988a.stroke();e=.5*d;a.translate(e,e);b=Math.max(0,b-d);c=Math.max(0,c-d);a.begin();a.moveTo(0,e);a.arcTo(e,e,0,0,1,e,0);a.lineTo(b-e,0);a.arcTo(e,e,0,0,1,b,e);a.lineTo(b,c-e);a.arcTo(e,e,0,0,1,b-e,c);a.lineTo(e,c);a.arcTo(e,e,0,0,1,0,c-e);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeBootstrapImage.prototype.cst.IMAGE,mxShapeBootstrapImage);function mxShapeBootstrapCheckbox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
1989mxUtils.extend(mxShapeBootstrapCheckbox,mxShape);mxShapeBootstrapCheckbox.prototype.cst={CHECKBOX:"mxgraph.bootstrap.checkbox"};mxShapeBootstrapCheckbox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.roundrect(0,0,b,c,3,3);a.fillAndStroke();a.setStrokeWidth("3");a.begin();a.moveTo(.8*b,.2*c);a.lineTo(.4*b,.8*c);a.lineTo(.25*b,.6*c);a.stroke()};mxCellRenderer.registerShape(mxShapeBootstrapCheckbox.prototype.cst.CHECKBOX,mxShapeBootstrapCheckbox);
1990function mxShapeBootstrapCheckbox2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapCheckbox2,mxShape);mxShapeBootstrapCheckbox2.prototype.customProperties=[{name:"checked",dispName:"Checked",type:"bool",defVal:!1},{name:"checkedFill",dispName:"Checked Fill Color",type:"color",defVal:"#ffffff"},{name:"checkedStroke",dispName:"Checked Stroke Color",type:"color",defVal:"#000000"}];
1991mxShapeBootstrapCheckbox2.prototype.cst={CHECKBOX2:"mxgraph.bootstrap.checkbox2"};
1992mxShapeBootstrapCheckbox2.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"checked",!1),g=mxUtils.getValue(this.style,"checkedFill","#ffffff"),h=mxUtils.getValue(this.style,"checkedStroke","#000000");a.translate(d,e);f?(a.setFillColor(g),a.setStrokeColor(h),a.roundrect(0,0,b,c,2,2),a.fill(),a.setStrokeWidth("2"),a.begin(),a.moveTo(.8*b,.2*c),a.lineTo(.4*b,.75*c),a.lineTo(.25*b,.6*c),a.stroke()):(a.roundrect(0,0,b,c,2,2),a.fillAndStroke())};
1993mxCellRenderer.registerShape(mxShapeBootstrapCheckbox2.prototype.cst.CHECKBOX2,mxShapeBootstrapCheckbox2);function mxShapeBootstrapRadioButton(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapRadioButton,mxShape);mxShapeBootstrapRadioButton.prototype.cst={RADIO_BUTTON:"mxgraph.bootstrap.radioButton"};
1994mxShapeBootstrapRadioButton.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.ellipse(0,0,b,c);a.fillAndStroke();a.setFillColor(d);a.ellipse(.25*b,.25*c,.5*b,.5*c);a.fill()};mxCellRenderer.registerShape(mxShapeBootstrapRadioButton.prototype.cst.RADIO_BUTTON,mxShapeBootstrapRadioButton);
1995function mxShapeBootstrapRadioButton2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapRadioButton2,mxShape);mxShapeBootstrapRadioButton2.prototype.customProperties=[{name:"checked",dispName:"Checked",type:"bool",defVal:!1},{name:"checkedFill",dispName:"Checked Fill Color",type:"color",defVal:"#ffffff"},{name:"checkedStroke",dispName:"Checked Stroke Color",type:"color",defVal:"#000000"}];
1996mxShapeBootstrapRadioButton2.prototype.cst={RADIO_BUTTON2:"mxgraph.bootstrap.radioButton2"};
1997mxShapeBootstrapRadioButton2.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,"checked",!1),g=mxUtils.getValue(this.style,"checkedFill","#ffffff"),h=mxUtils.getValue(this.style,"checkedStroke","#000000");a.translate(d,e);f?(a.setFillColor(g),a.setStrokeColor(g),a.ellipse(0,0,b,c),a.fillAndStroke(),a.setFillColor(h),a.ellipse(.2*b,.2*c,.6*b,.6*c),a.fill()):(a.ellipse(0,0,b,c),a.fillAndStroke())};
1998mxCellRenderer.registerShape(mxShapeBootstrapRadioButton2.prototype.cst.RADIO_BUTTON2,mxShapeBootstrapRadioButton2);function mxShapeBootstrapHorLines(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapHorLines,mxShape);mxShapeBootstrapHorLines.prototype.cst={HOR_LINES:"mxgraph.bootstrap.horLines"};
1999mxShapeBootstrapHorLines.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fill();a.begin();a.moveTo(0,0);a.lineTo(b,0);a.moveTo(0,c);a.lineTo(b,c);a.stroke()};mxCellRenderer.registerShape(mxShapeBootstrapHorLines.prototype.cst.HOR_LINES,mxShapeBootstrapHorLines);function mxShapeBootstrapUserTwo(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapUserTwo,mxShape);
2000mxShapeBootstrapUserTwo.prototype.cst={USER2:"mxgraph.bootstrap.user2"};
2001mxShapeBootstrapUserTwo.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,.95*c);a.arcTo(.3*b,.3*c,0,0,1,.02*b,.87*c);a.arcTo(.1*b,.1*c,0,0,1,.08*b,.812*c);a.arcTo(3*b,3*c,0,0,1,.29*b,.732*c);a.arcTo(.15*b,.15*c,0,0,0,.385*b,.607*c);a.arcTo(.11*b,.11*c,0,0,0,.355*b,.53*c);a.arcTo(.3*b,.3*c,0,0,1,.305*b,.44*c);a.arcTo(.33*b,.38*c,0,0,1,.312*b,.15*c);a.arcTo(.218*b,.218*c,0,0,1,.688*b,.15*c);a.arcTo(.33*b,.38*c,0,0,1,.693*b,.44*c);a.arcTo(.25*b,.25*c,0,0,1,.645*b,
2002.53*c);a.arcTo(.1*b,.1*c,0,0,0,.612*b,.6*c);a.arcTo(.15*b,.15*c,0,0,0,.7*b,.726*c);a.arcTo(3*b,3*c,0,0,1,.92*b,.812*c);a.arcTo(.1*b,.1*c,0,0,1,.97*b,.865*c);a.arcTo(.2*b,.2*c,0,0,1,.995*b,.952*c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeBootstrapUserTwo.prototype.cst.USER2,mxShapeBootstrapUserTwo);function mxShapeBootstrapRating(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapRating,mxShape);
2003mxShapeBootstrapRating.prototype.cst={RATING:"mxgraph.bootstrap.rating",RATING_STYLE:"ratingStyle",RATING_SCALE:"ratingScale",RATING_HEART:"heart",RATING_STAR:"star",EMPTY_FILL_COLOR:"emptyFillColor",GRADE:"grade"};
2004mxShapeBootstrapRating.prototype.customProperties=[{name:"ratingStyle",dispName:"Rating Style",type:"enum",enumList:[{val:"heart",dispName:"Heart"},{val:"star",dispName:"Star"}]},{name:"ratingScale",dispName:"Rating Scale",type:"int",min:1,defVal:5},{name:"emptyFillColor",dispName:"Inactive Color",type:"color",defVal:"none"},{name:"grade",dispName:"Grade",type:"int",min:1,defVal:3}];
2005mxShapeBootstrapRating.prototype.paintVertexShape=function(a,d,e,b,c){b=mxUtils.getValue(this.style,mxShapeBootstrapRating.prototype.cst.RATING_STYLE,mxShapeBootstrapRating.prototype.cst.RATING_STAR);var f=mxUtils.getValue(this.style,mxShapeBootstrapRating.prototype.cst.GRADE,"5"),g=mxUtils.getValue(this.style,mxShapeBootstrapRating.prototype.cst.RATING_SCALE,"10");a.translate(d,e);if(b===mxShapeBootstrapRating.prototype.cst.RATING_STAR)for(d=0;d<f;d++)a.begin(),a.moveTo(d*c*1.2,.33*c),a.lineTo(d*
2006c*1.2+.364*c,.33*c),a.lineTo(d*c*1.2+.475*c,0),a.lineTo(d*c*1.2+.586*c,.33*c),a.lineTo(d*c*1.2+.95*c,.33*c),a.lineTo(d*c*1.2+.66*c,.551*c),a.lineTo(d*c*1.2+.775*c,.9*c),a.lineTo(d*c*1.2+.475*c,.684*c),a.lineTo(d*c*1.2+.175*c,.9*c),a.lineTo(d*c*1.2+.29*c,.551*c),a.close(),a.fillAndStroke();else if(b===mxShapeBootstrapRating.prototype.cst.RATING_HEART)for(d=0;d<f;d++)a.begin(),a.moveTo(d*c*1.2+.519*c,.947*c),a.curveTo(d*c*1.2+.558*c,.908*c,d*c*1.2+.778*c,.682*c,d*c*1.2+.916*c,.54*c),a.curveTo(d*c*1.2+
20071.039*c,.414*c,d*c*1.2+1.036*c,.229*c,d*c*1.2+.924*c,.115*c),a.curveTo(d*c*1.2+.812*c,0,d*c*1.2+.631*c,0,d*c*1.2+.519*c,.115*c),a.curveTo(d*c*1.2+.408*c,0,d*c*1.2+.227*c,0,d*c*1.2+.115*c,.115*c),a.curveTo(d*c*1.2+.03*c,.229*c,d*c*1.2,.414*c,d*c*1.2+.123*c,.54*c),a.close(),a.fillAndStroke();d=mxUtils.getValue(this.style,mxShapeBootstrapRating.prototype.cst.EMPTY_FILL_COLOR,"#ffffff");a.setFillColor(d);if(b===mxShapeBootstrapRating.prototype.cst.RATING_STAR)for(d=f;d<g;d++)a.begin(),a.moveTo(d*c*1.2,
2008.33*c),a.lineTo(d*c*1.2+.364*c,.33*c),a.lineTo(d*c*1.2+.475*c,0),a.lineTo(d*c*1.2+.586*c,.33*c),a.lineTo(d*c*1.2+.95*c,.33*c),a.lineTo(d*c*1.2+.66*c,.551*c),a.lineTo(d*c*1.2+.775*c,.9*c),a.lineTo(d*c*1.2+.475*c,.684*c),a.lineTo(d*c*1.2+.175*c,.9*c),a.lineTo(d*c*1.2+.29*c,.551*c),a.close(),a.fillAndStroke();else if(b===mxShapeBootstrapRating.prototype.cst.RATING_HEART)for(d=f;d<g;d++)a.begin(),a.moveTo(d*c*1.2+.519*c,.947*c),a.curveTo(d*c*1.2+.558*c,.908*c,d*c*1.2+.778*c,.682*c,d*c*1.2+.916*c,.54*
2009c),a.curveTo(d*c*1.2+1.039*c,.414*c,d*c*1.2+1.036*c,.229*c,d*c*1.2+.924*c,.115*c),a.curveTo(d*c*1.2+.812*c,0,d*c*1.2+.631*c,0,d*c*1.2+.519*c,.115*c),a.curveTo(d*c*1.2+.408*c,0,d*c*1.2+.227*c,0,d*c*1.2+.115*c,.115*c),a.curveTo(d*c*1.2+.03*c,.229*c,d*c*1.2,.414*c,d*c*1.2+.123*c,.54*c),a.close(),a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeBootstrapRating.prototype.cst.RATING,mxShapeBootstrapRating);function mxShapeBoostrapAnchor(a,d,e,b){mxShape.call(this);this.bounds=a}
2010mxUtils.extend(mxShapeBoostrapAnchor,mxShape);mxShapeBoostrapAnchor.prototype.cst={ANCHOR:"mxgraph.bootstrap.anchor"};mxShapeBoostrapAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeBoostrapAnchor.prototype.cst.ANCHOR,mxShapeBoostrapAnchor);function mxShapeBootstrapRangeInput(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.3}mxUtils.extend(mxShapeBootstrapRangeInput,mxShape);
2011mxShapeBootstrapRangeInput.prototype.customProperties=[{name:"dx",dispName:"Handle Position",type:"float",min:0,max:1,defVal:.3},{name:"rangeStyle",dispName:"Range Style",type:"enum",enumList:[{val:"rect",dispName:"Rectangle"},{val:"rounded",dispName:"Rounded"}]},{name:"handleStyle",dispName:"Handle Style",type:"enum",enumList:[{val:"rect",dispName:"Rectangle"},{val:"circle",dispName:"Circle"}]}];mxShapeBootstrapRangeInput.prototype.cst={RANGE_INPUT:"mxgraph.bootstrap.rangeInput"};
2012mxShapeBootstrapRangeInput.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),g=mxUtils.getValue(this.style,"gradientColor","none"),h=mxUtils.getValue(this.state.style,"fillColor","#ffffff"),k=mxUtils.getValue(this.state.style,"strokeColor","#000000"),l=mxUtils.getValue(this.state.style,"gradientDirection","south"),m=mxUtils.getValue(this.state.style,"rangeStyle","rounded"),n=mxUtils.getValue(this.state.style,"handleStyle",
2013"circle"),p=Math.min(.5*c,.5*b),q=.5*p;a.translate(d,e);if("rect"==m){var t=d=parseFloat(mxUtils.getValue(this.style,"opacity","100")),u=d;"none"==h&&(t=0);"none"==g&&(u=0);a.setGradient(h,h,0,0,b,c,l,t,u);a.rect(0,.5*c-2,b,4);a.fill()}else"rounded"==m&&(a.begin(),a.moveTo(0,.5*c),a.arcTo(q,q,0,0,1,q,.5*c-q),a.lineTo(b-q,.5*c-q),a.arcTo(q,q,0,0,1,b,.5*c),a.arcTo(q,q,0,0,1,b-q,.5*c+q),a.lineTo(q,.5*c+q),a.arcTo(q,q,0,0,1,0,.5*c),a.close(),a.fill());"rect"==n?(a.setGradient(h,g,0,0,b,c,l,t,u),b=.5*
2014c,a.rect(f-.5*b,0,b,c),a.fillAndStroke(),a.begin(),a.moveTo(f-.25*b,.3*c),a.lineTo(f+.25*b,.3*c),a.moveTo(f-.25*b,.5*c),a.lineTo(f+.25*b,.5*c),a.moveTo(f-.25*b,.7*c),a.lineTo(f+.25*b,.7*c),a.stroke()):"circle"==n&&(a.setFillColor(k),a.ellipse(f-p,0,2*p,2*p),a.fill())};mxCellRenderer.registerShape(mxShapeBootstrapRangeInput.prototype.cst.RANGE_INPUT,mxShapeBootstrapRangeInput);mxShapeBootstrapRangeInput.prototype.constraints=null;
2015Graph.handleFactory[mxShapeBootstrapRangeInput.prototype.cst.RANGE_INPUT]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+a.height/2)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,(e.x-a.x)/a.width)))/100})]};
2016function mxShapeBootstrapSwitch(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapSwitch,mxShape);mxShapeBootstrapSwitch.prototype.customProperties=[{name:"buttonState",dispName:"Button State",type:"bool",defVal:!0},{name:"onStrokeColor",dispName:"On Stroke Color",type:"color"},{name:"onFillColor",dispName:"On Fill Color",type:"color"}];mxShapeBootstrapSwitch.prototype.cst={SHAPE_SWITCH:"mxgraph.bootstrap.switch"};
2017mxShapeBootstrapSwitch.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);b=Math.max(b,2*c);var f=mxUtils.getValue(this.style,"buttonState",!0);this.background(a,d,e,b,c,f);a.setShadow(!1);this.foreground(a,d,e,b,c,f)};
2018mxShapeBootstrapSwitch.prototype.background=function(a,d,e,b,c,f){1==f?(a.setStrokeColor(mxUtils.getValue(this.style,"onStrokeColor","#ffffff")),a.setFillColor(mxUtils.getValue(this.style,"onFillColor","#0085FC")),a.roundrect(0,0,b,c,.5*c,.5*c),a.fill()):(a.roundrect(0,0,b,c,.5*c,.5*c),a.fillAndStroke())};
2019mxShapeBootstrapSwitch.prototype.foreground=function(a,d,e,b,c,f){d=.8*c;1==f?(a.setFillColor(mxUtils.getValue(this.style,"onStrokeColor","#ffffff")),a.ellipse(b-.9*c,.1*c,d,d)):(a.setFillColor(mxUtils.getValue(this.style,"strokeColor","#000000")),a.ellipse(.1*c,.1*c,d,d));a.fill()};mxCellRenderer.registerShape(mxShapeBootstrapSwitch.prototype.cst.SHAPE_SWITCH,mxShapeBootstrapSwitch);
2020function mxShapeBootstrapX(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeBootstrapX,mxShape);mxShapeBootstrapX.prototype.cst={SHAPE_X:"mxgraph.bootstrap.x"};mxShapeBootstrapX.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b,c);a.moveTo(b,0);a.lineTo(0,c);a.stroke()};mxCellRenderer.registerShape(mxShapeBootstrapX.prototype.cst.SHAPE_X,mxShapeBootstrapX);
2021function mxShapeInfographicPopover(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=this.dx=.5}mxUtils.extend(mxShapeInfographicPopover,mxActor);mxShapeInfographicPopover.prototype.cst={SHAPE_POPOVER:"mxgraph.bootstrap.popover"};
2022mxShapeInfographicPopover.prototype.customProperties=[{name:"rSize",dispName:"Arc Size",type:"float",min:0,defVal:10},{name:"dx",dispName:"Callout Position",min:0,defVal:100},{name:"dy",dispName:"Callout Size",min:0,defVal:30}];
2023mxShapeInfographicPopover.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,"rSize","10"));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));var f=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),g=Math.max(e-f,0),h=Math.min(e+f,b);a.begin();a.moveTo(d,0);a.lineTo(b-d,0);a.arcTo(d,d,0,0,1,b,d);a.lineTo(b,c-f-d);a.arcTo(d,d,0,0,1,b-d,c-f);a.lineTo(h,c-f);a.lineTo(e,c);a.lineTo(g,c-f);a.lineTo(d,
2024c-f);a.arcTo(d,d,0,0,1,0,c-f-d);a.lineTo(0,d);a.arcTo(d,d,0,0,1,d,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeInfographicPopover.prototype.cst.SHAPE_POPOVER,mxShapeInfographicPopover);mxShapeInfographicPopover.prototype.constraints=null;
2025Graph.handleFactory[mxShapeInfographicPopover.prototype.cst.SHAPE_POPOVER]=function(a){return[Graph.createHandle(a,["dx","dy"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+d,a.y+a.height-b)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width,e.x-a.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,
2026Math.min(a.height,a.y+a.height-e.y)))/100})]};
2027mxShapeInfographicPopover.prototype.getConstraints=function(a,d,e){a=[];var 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))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
20280),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*(e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e-c));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,0,e-c));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,0,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-c));return a};
2029function mxShapeC4Person(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeC4Person,mxShape);mxShapeC4Person.prototype.cst={PERSONSHAPE:"mxgraph.c4.person"};
2030mxShapeC4Person.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.min(b/2,c/3);e=d/2;a.ellipse(.5*b-.5*d,0,d,d);a.fillAndStroke();a.begin();a.moveTo(0,.8*d+e);a.arcTo(e,e,0,0,1,e,.8*d);a.lineTo(b-e,.8*d);a.arcTo(e,e,0,0,1,b,.8*d+e);a.lineTo(b,c-e);a.arcTo(e,e,0,0,1,b-e,c);a.lineTo(e,c);a.arcTo(e,e,0,0,1,0,c-e);a.close();a.fillAndStroke();a.setShadow(!1);a.ellipse(.5*b-.5*d,0,d,d);a.fillAndStroke()};
2031mxShapeC4Person.prototype.getLabelMargins=function(a){return new mxRectangle(0,.8*Math.min(a.width/2,a.height/3),0,0)};mxCellRenderer.registerShape(mxShapeC4Person.prototype.cst.PERSONSHAPE,mxShapeC4Person);function mxShapeC4Person2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeC4Person2,mxShape);mxShapeC4Person2.prototype.cst={PERSONSHAPE:"mxgraph.c4.person2"};
2032mxShapeC4Person2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.min(.45*b,.45*c);e=d/2;a.ellipse(.5*b-.5*d,0,d,d);a.fillAndStroke();a.begin();a.moveTo(0,.8*d+e);a.arcTo(e,e,0,0,1,e,.8*d);a.lineTo(b-e,.8*d);a.arcTo(e,e,0,0,1,b,.8*d+e);a.lineTo(b,c-e);a.arcTo(e,e,0,0,1,b-e,c);a.lineTo(e,c);a.arcTo(e,e,0,0,1,0,c-e);a.close();a.fillAndStroke();a.setShadow(!1);a.ellipse(.5*b-.5*d,0,d,d);a.fillAndStroke()};
2033mxShapeC4Person2.prototype.getLabelMargins=function(a){return new mxRectangle(0,.8*Math.min(.45*a.width,.45*a.height),0,0)};mxCellRenderer.registerShape(mxShapeC4Person2.prototype.cst.PERSONSHAPE,mxShapeC4Person2);function mxShapeC4WebBrowserContainer(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeC4WebBrowserContainer,mxShape);mxShapeC4WebBrowserContainer.prototype.cst={WEB_BROWSER_CONTAINER_SHAPE:"mxgraph.c4.webBrowserContainer"};
2034mxShapeC4WebBrowserContainer.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,8);a.arcTo(8,8,0,0,1,8,0);a.lineTo(b-8,0);a.arcTo(8,8,0,0,1,b,8);a.lineTo(b,c-8);a.arcTo(8,8,0,0,1,b-8,c);a.lineTo(8,c);a.arcTo(8,8,0,0,1,0,c-8);a.close();a.fillAndStroke();a.setShadow(!1);61<b&&39<c&&(a.setFillColor("#23A2D9"),a.begin(),a.moveTo(5,8),a.arcTo(3,3,0,0,1,8,5),a.lineTo(b-36-20-3,5),a.arcTo(3,3,0,0,1,b-36-20,8),a.lineTo(b-36-20,14),a.arcTo(3,3,0,0,1,b-36-20-3,17),a.lineTo(8,
203517),a.arcTo(3,3,0,0,1,5,14),a.close(),a.moveTo(b-36-15,8),a.arcTo(3,3,0,0,1,b-36-15+3,5),a.lineTo(b-24-15-3,5),a.arcTo(3,3,0,0,1,b-24-15,8),a.lineTo(b-24-15,14),a.arcTo(3,3,0,0,1,b-24-15-3,17),a.lineTo(b-36-15+3,17),a.arcTo(3,3,0,0,1,b-36-15,14),a.close(),a.moveTo(b-24-10,8),a.arcTo(3,3,0,0,1,b-24-10+3,5),a.lineTo(b-12-10-3,5),a.arcTo(3,3,0,0,1,b-12-10,8),a.lineTo(b-12-10,14),a.arcTo(3,3,0,0,1,b-12-10-3,17),a.lineTo(b-24-10+3,17),a.arcTo(3,3,0,0,1,b-24-10,14),a.close(),a.moveTo(b-12-5,8),a.arcTo(3,
20363,0,0,1,b-12-5+3,5),a.lineTo(b-5-3,5),a.arcTo(3,3,0,0,1,b-5,8),a.lineTo(b-5,14),a.arcTo(3,3,0,0,1,b-5-3,17),a.lineTo(b-12-5+3,17),a.arcTo(3,3,0,0,1,b-12-5,14),a.close(),a.moveTo(5,30),a.arcTo(8,8,0,0,1,13,22),a.lineTo(b-8-5,22),a.arcTo(8,8,0,0,1,b-5,30),a.lineTo(b-5,c-8-5),a.arcTo(8,8,0,0,1,b-8-5,c-5),a.lineTo(13,c-5),a.arcTo(8,8,0,0,1,5,c-8-5),a.close(),a.fill(),a.fill())};mxCellRenderer.registerShape(mxShapeC4WebBrowserContainer.prototype.cst.WEB_BROWSER_CONTAINER_SHAPE,mxShapeC4WebBrowserContainer);
2037function mxCabinetsCabinet(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxCabinetsCabinet,mxShape);mxCabinetsCabinet.prototype.cst={HAS_STAND:"hasStand",CABINET:"mxgraph.cabinets.cabinet"};mxCabinetsCabinet.prototype.customProperties=[{name:"hasStand",dispName:"Has Stand",type:"bool",defVal:!0}];
2038mxCabinetsCabinet.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);this.foreground(a,0,0,b,c)};mxCabinetsCabinet.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};
2039mxCabinetsCabinet.prototype.foreground=function(a,d,e,b,c){a.rect(0,0,b,15);a.stroke();a.begin();a.moveTo(15,15);a.lineTo(15,c);a.moveTo(b-15,15);a.lineTo(b-15,c);a.stroke();1===mxUtils.getValue(this.style,mxCabinetsCabinet.prototype.cst.HAS_STAND,"1")?a.rect(0,c-40,b,40):a.rect(0,c-15,b,15);a.fillAndStroke()};mxCellRenderer.registerShape(mxCabinetsCabinet.prototype.cst.CABINET,mxCabinetsCabinet);
2040function mxCabinetsCoverPlate(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxCabinetsCoverPlate,mxShape);mxCabinetsCoverPlate.prototype.cst={COVER_PLATE:"mxgraph.cabinets.coverPlate"};mxCabinetsCoverPlate.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,0,0,b,c);a.setShadow(!1);this.foreground(a,0,0,b,c)};
2041mxCabinetsCoverPlate.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.moveTo(10,.5*c-12.5);a.lineTo(10,.5*c+12.5);a.lineTo(b-10,.5*c+12.5);a.lineTo(b-10,.5*c-12.5);a.close();a.fillAndStroke()};mxCabinetsCoverPlate.prototype.foreground=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxCabinetsCoverPlate.prototype.cst.COVER_PLATE,mxCabinetsCoverPlate);
2042function mxCabinetsDimension(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxCabinetsDimension,mxShape);mxCabinetsDimension.prototype.cst={DIMENSION:"mxgraph.cabinets.dimension"};mxCabinetsDimension.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2043mxCabinetsDimension.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,20);a.lineTo(b,20);a.moveTo(10,15);a.lineTo(0,20);a.lineTo(10,25);a.moveTo(b-10,15);a.lineTo(b,20);a.lineTo(b-10,25);a.moveTo(0,15);a.lineTo(0,c);a.moveTo(b,15);a.lineTo(b,c);a.stroke()};mxCellRenderer.registerShape(mxCabinetsDimension.prototype.cst.DIMENSION,mxCabinetsDimension);function mxCabinetsDimensionBottom(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2044mxUtils.extend(mxCabinetsDimensionBottom,mxShape);mxCabinetsDimensionBottom.prototype.cst={DIMENSION:"mxgraph.cabinets.dimensionBottom"};mxCabinetsDimensionBottom.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2045mxCabinetsDimensionBottom.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,c-20);a.lineTo(b,c-20);a.moveTo(10,c-15);a.lineTo(0,c-20);a.lineTo(10,c-25);a.moveTo(b-10,c-15);a.lineTo(b,c-20);a.lineTo(b-10,c-25);a.moveTo(0,c-15);a.lineTo(0,0);a.moveTo(b,c-15);a.lineTo(b,0);a.stroke()};mxCellRenderer.registerShape(mxCabinetsDimensionBottom.prototype.cst.DIMENSION,mxCabinetsDimensionBottom);
2046function mxShapeCisco19Rect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeCisco19Rect,mxShape);mxShapeCisco19Rect.prototype.cst={SHAPE_RECT:"mxgraph.cisco19.rect"};
2047mxShapeCisco19Rect.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.state.style,"prIcon","l2_switch");mxUtils.getValue(this.state.style,"fillColor","#ffffff");var g=mxUtils.getValue(this.state.style,"strokeColor","#000000"),h="mxgraph.cisco19.bg1",k="router csr_1000v wireless_router l3_modular3 ucs_express router_with_voice router_with_firewall netflow_router secure_router ip_telephone_router asr_9000 clock vbond vmanage vsmart".split(" ");a.translate(d,e);["l2_modular",
2048"l3_modular","6500_vss","nexus_9500","nexus_7k"].includes(f)?h="mxgraph.cisco19.bg2":["l2_switch_with_dual_supervisor","l3_switch_with_dual_supervisor"].includes(f)?h="mxgraph.cisco19.bg3":["l2_modular2"].includes(f)?h="mxgraph.cisco19.bg4":["l3_modular2","6500_vss2","hypervisor","collab1"].includes(f)?h="mxgraph.cisco19.bg5":k.includes(f)?(a.begin(),"wireless_router"==f?a.ellipse(0,.17*c,b,.83*c):a.ellipse(0,0,b,c),a.fill()):"content_router;router_with_firewall2;netflow_router2;nam_virtual_service_blade;ucs_5108_blade_chassis;storage;nexus_1kv_vsm;nexus_1k;nexus_1010;dual mode access point;wireless_lan_controller;primary_codec;virtual_desktop_service;video_gateway;video_analytics;telepresence_exchange;meeting_scheduling_and_management_server;content_recording_streaming_server;communications_manager;cisco_unified_presence_service;cisco_unified_contact_center_enterprise_and_hosted;h323;monitor;telepresence_endpoint_twin_data_display;operations_manager;transcoder;contact_center_express;ip_ip_gateway;shield;set_top;da_encoder;ad_encoder;da_decoder;ad_decoder;acs;email_security;vpn_concentrator;ssl_terminator;cisco_security_manager;web_security;nac_appliance;ironport;ips_ids;firewall;asa_5500;flow_collector;load_balancer;web_application_firewall;analysis_correlation;flow_analytics;virtual_private_network2;web_security_services;web_security_services2;virtual_private_network_connector".split(";").includes(f)?
2049h="mxgraph.cisco19.bg6":["asr_1000"].includes(f)?h="mxgraph.cisco19.bg7":["fibre_channel_director_mds_9000","fibre_channel_fabric_switch"].includes(f)?h="mxgraph.cisco19.bg8":["ucs_c_series_server"].includes(f)?h="mxgraph.cisco19.bg9":["aci"].includes(f)?(d=mxStencilRegistry.getStencil("mxgraph.cisco19.acibg"),d.drawShape(a,this,.195*b,.195*c,.61*b,.61*c)):["immersive_telepresence_endpoint"].includes(f)&&(h="mxgraph.cisco19.bg10");k.includes(f)||"aci"==f||(d=mxStencilRegistry.getStencil(h),d.drawShape(a,
2050this,0,0,b,c));a.setShadow(!1);f=mxStencilRegistry.getStencil("mxgraph.cisco19."+f);a.setFillColor(g);null!=f&&f.drawShape(a,this,0,0,b,c)};mxCellRenderer.registerShape(mxShapeCisco19Rect.prototype.cst.SHAPE_RECT,mxShapeCisco19Rect);
2051mxShapeCisco19Rect.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.825,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.175,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.16),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.84),!1));a.push(new mxConnectionConstraint(new mxPoint(.66,.17),!1));a.push(new mxConnectionConstraint(new mxPoint(.66,.83),!1));a.push(new mxConnectionConstraint(new mxPoint(.34,.17),!1));a.push(new mxConnectionConstraint(new mxPoint(.34,
2052.83),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,.33),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,.67),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.33),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.67),!1));return a};function mxShapeCiscoSafeCompositeIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeCiscoSafeCompositeIcon,mxShape);mxShapeCiscoSafeCompositeIcon.prototype.cst={SHAPE_COMPOSITE_ICON:"mxgraph.cisco_safe.compositeIcon"};
2053mxShapeCiscoSafeCompositeIcon.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.state.style,"strokeColor","none"),g=mxUtils.getValue(this.state.style,"bgColor","#C2E0AE"),h=mxUtils.getValue(this.state.style,"fillColor","none"),k=mxUtils.getValue(this.state.style,"shadow",!1),l=parseFloat(mxUtils.getValue(this.state.style,"opacity",!1));a.translate(d,e);d=mxUtils.getValue(this.state.style,"bgIcon","");e=mxUtils.getValue(this.state.style,"resIcon","");m=mxStencilRegistry.getStencil(e);
2054null!=m&&"mxgraph.cisco_safe.architecture.generic_appliance"!=d&&m.drawShape(a,this,0,0,b,c);a.setFillColor(f);a.setStrokeColor("none");a.setShadow(!1);if("ellipse"==d)a.begin(),100>b?a.ellipse(.01*b,.01*c,.98*b,.98*c):a.ellipse(1,1,b-2,c-2),a.fill();else if("threat1"==d)a.begin(),a.ellipse(.18*b,.16*c,.66*b,.65*c),a.fill();else if("threat2"==d)a.begin(),a.ellipse(.01*b,.01*c,.98*b,.6*c),a.fill();else if("threat3"==d)a.begin(),a.ellipse(.18*b,.2*c,.64*b,.79*c),a.fill();else if("threat4"==d)a.begin(),
2055a.ellipse(.09*b,.03*c,.82*b,.77*c),a.fill();else if("threat5"==d)a.begin(),a.ellipse(.16*b,.01*c,.67*b,.72*c),a.fill();else if("mxgraph.cisco_safe.architecture.generic_appliance"==d){a.setShadow(k);a.setFillColor(g);a.begin();a.moveTo(0,.3*c);a.arcTo(.3*b,.3*c,0,0,1,.3*b,0);a.lineTo(.7*b,0);a.arcTo(.3*b,.3*c,0,0,1,b,.3*c);a.lineTo(b,.7*c);a.arcTo(.3*b,.3*c,0,0,1,.7*b,c);a.lineTo(.3*b,c);a.arcTo(.3*b,.3*c,0,0,1,0,.7*c);a.close();a.fill();a.setShadow(!1);a.setFillColor(f);var m=mxStencilRegistry.getStencil(d);
2056null!=m&&m.drawShape(a,this,.26*b,.26*c,.48*b,.48*c);a.setAlpha(.5);a.setFillColor("#ffffff");a.ellipse(.105*b,.48*c,.04*b,.04*c);a.fill();a.ellipse(.855*b,.48*c,.04*b,.04*c);a.fill();a.ellipse(.48*b,.105*c,.04*b,.04*c);a.fill();a.ellipse(.48*b,.855*c,.04*b,.04*c);a.fill();a.ellipse(.17*b,.17*c,.04*b,.04*c);a.fill();a.ellipse(.79*b,.17*c,.04*b,.04*c);a.fill();a.ellipse(.79*b,.79*c,.04*b,.04*c);a.fill();a.ellipse(.17*b,.79*c,.04*b,.04*c);a.fill();a.setAlpha(l/100)}else m=mxStencilRegistry.getStencil(d),
2057null!=m&&(100>b?m.drawShape(a,this,.01*b,.01*c,.98*b,.98*c):m.drawShape(a,this,1,1,b-2,c-2));m=mxStencilRegistry.getStencil(e);null!=m&&(a.setFillColor(h),"mxgraph.cisco_safe.architecture.generic_appliance"==d?m.drawShape(a,this,.25*b,.25*c,.5*b,.5*c):m.drawShape(a,this,0,0,b,c))};mxCellRenderer.registerShape(mxShapeCiscoSafeCompositeIcon.prototype.cst.SHAPE_COMPOSITE_ICON,mxShapeCiscoSafeCompositeIcon);
2058function mxShapeDFDStart(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeDFDStart,mxShape);mxShapeDFDStart.prototype.cst={START:"mxgraph.dfd.start"};mxShapeDFDStart.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.min(.5*c,.5*b);a.begin();a.moveTo(b-d,.5*c-d);a.arcTo(d,d,0,0,1,b,.5*c);a.arcTo(d,d,0,0,1,b-d,.5*c+d);a.lineTo(d,.5*c+d);a.arcTo(d,d,0,0,1,0,.5*c);a.arcTo(d,d,0,0,1,d,.5*c-d);a.close();a.fillAndStroke()};
2059mxCellRenderer.registerShape(mxShapeDFDStart.prototype.cst.START,mxShapeDFDStart);
2060mxShapeDFDStart.prototype.getConstraints=function(a,d,e){a=[];var b=Math.min(.5*e,.5*d);a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.5),!1,null,0,-b));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.5),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.293*b,.5*e-.707*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.293*b,.5*e-.707*b));a.push(new mxConnectionConstraint(new mxPoint(0,
20610),!1,null,d-.293*b,.5*e+.707*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.293*b,.5*e+.707*b));d>=4*e&&(a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1)),a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1)));return a};function mxShapeDFDArchive(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2062mxUtils.extend(mxShapeDFDArchive,mxShape);mxShapeDFDArchive.prototype.cst={ARCHIVE:"mxgraph.dfd.archive"};mxShapeDFDArchive.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(.5*b,c);a.close();a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(.1*b,.2*c);a.lineTo(.9*b,.2*c);a.stroke()};mxCellRenderer.registerShape(mxShapeDFDArchive.prototype.cst.ARCHIVE,mxShapeDFDArchive);
2063mxShapeDFDArchive.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.875,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.625,
2064.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.375,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.125,.25),!1));return a};function mxShapeDFDCheck2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeDFDCheck2,mxShape);mxShapeDFDCheck2.prototype.cst={CHECK2:"mxgraph.dfd.check2"};
2065mxShapeDFDCheck2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.min(.5*c,.5*b);a.begin();a.moveTo(0,.5*c);a.lineTo(d,0);a.lineTo(b-d,0);a.lineTo(b,.5*c);a.lineTo(b-d,c);a.lineTo(d,c);a.lineTo(0,.5*c);a.close();a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(b-d,0);a.lineTo(b-2*d,.5*c);a.lineTo(b-d,c);a.stroke()};mxCellRenderer.registerShape(mxShapeDFDCheck2.prototype.cst.CHECK2,mxShapeDFDCheck2);
2066mxShapeDFDCheck2.prototype.getConstraints=function(a,d,e){a=[];var b=Math.min(.5*e,.5*d);a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*b,.25*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.5*b,.25*e));a.push(new mxConnectionConstraint(new mxPoint(0,
20670),!1,null,.5*b,.75*e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.5*b,.75*e));d>e&&(a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,0)),a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,0)),a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,e)),a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,e)));4*b<=d&&(a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),a.push(new mxConnectionConstraint(new mxPoint(.25,
20681),!1)),a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1)));return a};function mxShapeDFDDataStoreID(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeDFDDataStoreID,mxShape);mxShapeDFDDataStoreID.prototype.cst={DATA_STORE_ID:"mxgraph.dfd.dataStoreID"};
2069mxShapeDFDDataStoreID.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(b,c);a.lineTo(0,c);a.lineTo(0,0);a.lineTo(b,0);a.fillAndStroke();a.setShadow(!1);d=Math.min(30,b);a.begin();a.moveTo(d,0);a.lineTo(d,c);a.stroke()};mxCellRenderer.registerShape(mxShapeDFDDataStoreID.prototype.cst.DATA_STORE_ID,mxShapeDFDDataStoreID);mxShapeDFDDataStoreID.prototype.constraints=null;
2070function mxShapeDFDExternalEntity(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeDFDExternalEntity,mxShape);mxShapeDFDExternalEntity.prototype.cst={EXTERNAL_ENTITY:"mxgraph.dfd.externalEntity"};
2071mxShapeDFDExternalEntity.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b-10,0);a.lineTo(b,10);a.lineTo(b,c);a.lineTo(10,c);a.lineTo(0,c-10);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillColor("#000000");a.setAlpha(.5);a.begin();a.moveTo(0,0);a.lineTo(b-10,0);a.lineTo(b,10);a.lineTo(10,10);a.lineTo(10,c);a.lineTo(0,c-10);a.close();a.fill();d=parseFloat(mxUtils.getValue(this.style,"opacity","100"));a.setAlpha(d/100);a.begin();a.moveTo(0,0);a.lineTo(b-
207210,0);a.lineTo(b,10);a.lineTo(b,c);a.lineTo(10,c);a.lineTo(0,c-10);a.close();a.moveTo(10,c);a.lineTo(10,10);a.lineTo(b,10);a.moveTo(0,0);a.lineTo(10,10);a.stroke()};mxCellRenderer.registerShape(mxShapeDFDExternalEntity.prototype.cst.EXTERNAL_ENTITY,mxShapeDFDExternalEntity);
2073mxShapeDFDExternalEntity.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*(d-10),0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-10),0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*(d-10),0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-10,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,10,e));a.push(new mxConnectionConstraint(new mxPoint(0,
20740),!1,null,.25*(d-10)+10,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(d-10)+10,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*(d-10)+10,e));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,10));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,10+.25*(e-10)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,10+.5*(e-10)));a.push(new mxConnectionConstraint(new mxPoint(0,
20750),!1,null,d,10+.75*(e-10)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.25*(e-10)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(e-10)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.75*(e-10)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-10));return a};function mxShapeDFDLoop(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeDFDLoop,mxShape);
2076mxShapeDFDLoop.prototype.cst={LOOP:"mxgraph.dfd.loop"};mxShapeDFDLoop.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.min(.8*c,.8*b);a.begin();a.moveTo(b-.25*d,0);a.arcTo(d,d,0,0,1,b-.25*d,c);a.lineTo(.25*d,c);a.arcTo(d,d,0,0,1,.25*d,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeDFDLoop.prototype.cst.LOOP,mxShapeDFDLoop);
2077mxShapeDFDLoop.prototype.getConstraints=function(a,d,e){a=[];var b=Math.min(.8*e,.8*d);a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.25*b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.25*b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*b,e));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));return a};
2078function mxShapeEipMessageExpiration(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeEipMessageExpiration,mxShape);mxShapeEipMessageExpiration.prototype.cst={SHAPE_MESS_EXP:"mxgraph.eip.messExp"};mxShapeEipMessageExpiration.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2079mxShapeEipMessageExpiration.prototype.background=function(a,d,e,b,c){a.ellipse(0,0,b,c);a.stroke();a.setStrokeColor("#808080");a.begin();a.moveTo(.5*b,.1*c);a.lineTo(.5*b,.5*c);a.lineTo(.6*b,.8*c);a.stroke()};mxCellRenderer.registerShape(mxShapeEipMessageExpiration.prototype.cst.SHAPE_MESS_EXP,mxShapeEipMessageExpiration);
2080mxShapeEipMessageExpiration.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.145,.145),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,.145),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.145,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
2081.5),!1));return a};function mxShapeEipReturnAddress(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeEipReturnAddress,mxShape);mxShapeEipReturnAddress.prototype.cst={SHAPE_RET_ADDR:"mxgraph.eip.retAddr"};mxShapeEipReturnAddress.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2082mxShapeEipReturnAddress.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};
2083mxShapeEipReturnAddress.prototype.foreground=function(a,d,e,b,c){a.begin();a.moveTo(.05*b,.11*c);a.lineTo(.25*b,.11*c);a.moveTo(.05*b,.18*c);a.lineTo(.25*b,.18*c);a.moveTo(.05*b,.25*c);a.lineTo(.25*b,.25*c);a.setStrokeWidth(2);a.moveTo(.3*b,.63*c);a.lineTo(.8*b,.63*c);a.moveTo(.3*b,.72*c);a.lineTo(.8*b,.72*c);a.moveTo(.3*b,.8*c);a.lineTo(.8*b,.8*c);a.stroke();a.setFillColor("#EDEDED");a.rect(.8*b,.1*c,.12*b,.19*c);a.fillAndStroke()};
2084mxCellRenderer.registerShape(mxShapeEipReturnAddress.prototype.cst.SHAPE_RET_ADDR,mxShapeEipReturnAddress);
2085mxShapeEipReturnAddress.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
2086.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
2087function mxShapeEipAnchor(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeEipAnchor,mxShape);mxShapeEipAnchor.prototype.cst={SHAPE_ANCHOR:"mxgraph.eip.anchor"};mxShapeEipAnchor.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeEipAnchor.prototype.cst.SHAPE_ANCHOR,mxShapeEipAnchor);
2088function mxShapeEipMessageChannel(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeEipMessageChannel,mxShape);mxShapeEipMessageChannel.prototype.cst={SHAPE_MESSAGE_CHANNEL:"mxgraph.eip.messageChannel"};mxShapeEipMessageChannel.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2089mxShapeEipMessageChannel.prototype.background=function(a,d,e,b,c){a.setGradient("#e6e6e6","#808080",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(8,.5*c+10);a.arcTo(12,12,0,0,1,8,.5*c-10);a.lineTo(b-8,.5*c-10);a.arcTo(12,12,0,0,1,b-8,.5*c+10);a.close();a.fillAndStroke()};mxShapeEipMessageChannel.prototype.foreground=function(a,d,e,b,c){a.setFillColor("#e6e6e6");a.begin();a.moveTo(b-8,.5*c-10);a.arcTo(12,12,0,0,1,b-8,.5*c+10);a.arcTo(12,12,0,0,1,b-8,.5*c-10);a.fillAndStroke()};
2090mxCellRenderer.registerShape(mxShapeEipMessageChannel.prototype.cst.SHAPE_MESSAGE_CHANNEL,mxShapeEipMessageChannel);mxShapeEipMessageChannel.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,2.7,0));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,-2.7,0));for(e=10;e<d;)a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,e,0)),a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,e,0)),e+=10;return a};
2091function mxShapeEipDatatypeChannel(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeEipDatatypeChannel,mxShape);mxShapeEipDatatypeChannel.prototype.cst={SHAPE_DATATYPE_CHANNEL:"mxgraph.eip.dataChannel"};mxShapeEipDatatypeChannel.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2092mxShapeEipDatatypeChannel.prototype.background=function(a,d,e,b,c){a.setGradient("#e6e6e6","#808080",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(8,.5*c+10);a.arcTo(12,12,0,0,1,8,.5*c-10);a.lineTo(b-8,.5*c-10);a.arcTo(12,12,0,0,1,b-8,.5*c+10);a.close();a.fillAndStroke()};
2093mxShapeEipDatatypeChannel.prototype.foreground=function(a,d,e,b,c){a.setFillColor("#e6e6e6");a.begin();a.moveTo(b-8,.5*c-10);a.arcTo(12,12,0,0,1,b-8,.5*c+10);a.arcTo(12,12,0,0,1,b-8,.5*c-10);a.fillAndStroke();a.setFillColor("#fffbc0");a.setStrokeWidth("1");for(d=1;20*d+10<b-14;d++)a.rect(20*d,.5*c-5,10,10),a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeEipDatatypeChannel.prototype.cst.SHAPE_DATATYPE_CHANNEL,mxShapeEipDatatypeChannel);
2094mxShapeEipDatatypeChannel.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,2.7,0));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,-2.7,0));for(e=10;e<d;)a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,e,0)),a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,e,0)),e+=10;return a};
2095function mxShapeEipDeadLetterChannel(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeEipDeadLetterChannel,mxShape);mxShapeEipDeadLetterChannel.prototype.cst={SHAPE_DEAD_LETTER_CHANNEL:"mxgraph.eip.deadLetterChannel"};mxShapeEipDeadLetterChannel.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2096mxShapeEipDeadLetterChannel.prototype.background=function(a,d,e,b,c){a.setGradient("#e6e6e6","#808080",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(8,.5*c+10);a.arcTo(12,12,0,0,1,8,.5*c-10);a.lineTo(b-8,.5*c-10);a.arcTo(12,12,0,0,1,b-8,.5*c+10);a.close();a.fillAndStroke()};
2097mxShapeEipDeadLetterChannel.prototype.foreground=function(a,d,e,b,c){a.setFillColor("#e6e6e6");a.begin();a.moveTo(b-8,.5*c-10);a.arcTo(12,12,0,0,1,b-8,.5*c+10);a.arcTo(12,12,0,0,1,b-8,.5*c-10);a.fillAndStroke();a.setFillColor("#ff0000");a.setStrokeWidth("1");a.begin();a.moveTo(.5*b-6,.5*c-3);a.lineTo(.5*b-3,.5*c-6);a.lineTo(.5*b+3,.5*c-6);a.lineTo(.5*b+6,.5*c-3);a.lineTo(.5*b+6,.5*c+3);a.lineTo(.5*b+3,.5*c+6);a.lineTo(.5*b-3,.5*c+6);a.lineTo(.5*b-6,.5*c+3);a.close();a.fillAndStroke();a.setStrokeWidth("2");
2098a.setStrokeColor("#ffffff");a.begin();a.moveTo(.5*b-4,.5*c);a.lineTo(.5*b+4,.5*c);a.stroke()};mxCellRenderer.registerShape(mxShapeEipDeadLetterChannel.prototype.cst.SHAPE_DEAD_LETTER_CHANNEL,mxShapeEipDeadLetterChannel);
2099mxShapeEipDeadLetterChannel.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,2.7,0));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,-2.7,0));for(e=10;e<d;)a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,e,0)),a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,e,0)),e+=10;return a};
2100function mxShapeEipInvalidMessageChannel(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeEipInvalidMessageChannel,mxShape);mxShapeEipInvalidMessageChannel.prototype.cst={SHAPE_INVALID_MESSAGE_CHANNEL:"mxgraph.eip.invalidMessageChannel"};mxShapeEipInvalidMessageChannel.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2101mxShapeEipInvalidMessageChannel.prototype.background=function(a,d,e,b,c){a.setGradient("#e6e6e6","#808080",0,0,b,c,mxConstants.DIRECTION_SOUTH,1,1);a.begin();a.moveTo(8,.5*c+10);a.arcTo(12,12,0,0,1,8,.5*c-10);a.lineTo(b-8,.5*c-10);a.arcTo(12,12,0,0,1,b-8,.5*c+10);a.close();a.fillAndStroke()};
2102mxShapeEipInvalidMessageChannel.prototype.foreground=function(a,d,e,b,c){a.setFillColor("#e6e6e6");a.begin();a.moveTo(b-8,.5*c-10);a.arcTo(12,12,0,0,1,b-8,.5*c+10);a.arcTo(12,12,0,0,1,b-8,.5*c-10);a.fillAndStroke();a.setFillColor("#ffe040");a.setStrokeWidth("1");a.begin();a.moveTo(.5*b-6,.5*c+5);a.lineTo(.5*b,.5*c-5);a.lineTo(.5*b+6,.5*c+5);a.close();a.fillAndStroke();a.setStrokeWidth("1");a.begin();a.moveTo(.5*b,.5*c-2);a.lineTo(.5*b,.5*c+2);a.moveTo(.5*b,.5*c+3);a.lineTo(.5*b,.5*c+4);a.stroke()};
2103mxCellRenderer.registerShape(mxShapeEipInvalidMessageChannel.prototype.cst.SHAPE_INVALID_MESSAGE_CHANNEL,mxShapeEipInvalidMessageChannel);
2104mxShapeEipInvalidMessageChannel.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,2.7,0));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,-2.7,0));for(e=10;e<d;)a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,e,0)),a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,e,0)),e+=10;return a};
2105function mxShapeElectricalTestPoint(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeElectricalTestPoint,mxShape);mxShapeElectricalTestPoint.prototype.cst={SHAPE_TEST_POINT:"mxgraph.electrical.transmission.testPoint"};
2106mxShapeElectricalTestPoint.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");e=Math.min(b,c);a.setFillColor(d);a.begin();a.ellipse(.5*b-e/2,0,e,e);a.fillAndStroke();c>b&&(a.begin(),a.moveTo(.5*b,e),a.lineTo(.5*b,c),a.stroke())};mxCellRenderer.registerShape(mxShapeElectricalTestPoint.prototype.cst.SHAPE_TEST_POINT,mxShapeElectricalTestPoint);
2107mxShapeElectricalTestPoint.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0)];function mxShapeElectricalStraightBus(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeElectricalStraightBus,mxShape);mxShapeElectricalStraightBus.prototype.cst={SHAPE_STRAIGHT_BUS:"mxgraph.electrical.transmission.straightBus"};
2108mxShapeElectricalStraightBus.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.2*b;e=b>c?.5*c:b/2;a.begin();a.moveTo(b-d,0);a.lineTo(b-d,c-e);a.lineTo(b,c-e);a.lineTo(.5*b,c);a.lineTo(0,c-e);a.lineTo(d,c-e);a.lineTo(d,0);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeElectricalStraightBus.prototype.cst.SHAPE_STRAIGHT_BUS,mxShapeElectricalStraightBus);
2109mxShapeElectricalStraightBus.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0)];function mxShapeElectricalTwoLineBusElbow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.notch=0}mxUtils.extend(mxShapeElectricalTwoLineBusElbow,mxShape);mxShapeElectricalTwoLineBusElbow.prototype.cst={SHAPE_TWO_LINE_BUS_ELBOW:"mxgraph.electrical.transmission.twoLineBusElbow"};
2110mxShapeElectricalTwoLineBusElbow.prototype.customProperties=[{name:"notch",dispName:"Spacing",type:"float",min:0,defVal:25}];mxShapeElectricalTwoLineBusElbow.prototype.paintVertexShape=function(a,d,e,b,c){var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.translate(d,e);a.begin();a.moveTo(0,c);a.lineTo(b,c);a.lineTo(b,0);a.stroke();d=Math.min(b,f);f=Math.min(c,f);a.begin();a.moveTo(0,c-f);a.lineTo(b-d,c-f);a.lineTo(b-d,0);a.stroke()};
2111mxCellRenderer.registerShape(mxShapeElectricalTwoLineBusElbow.prototype.cst.SHAPE_TWO_LINE_BUS_ELBOW,mxShapeElectricalTwoLineBusElbow);mxShapeElectricalTwoLineBusElbow.prototype.constraints=null;
2112Graph.handleFactory[mxShapeElectricalTwoLineBusElbow.prototype.cst.SHAPE_TWO_LINE_BUS_ELBOW]=function(a){return[Graph.createHandle(a,["notch"],function(a){var d=Math.max(Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))),0);return new mxPoint(a.x+a.width/4,a.y+a.height-d)},function(a,e){this.state.style.notch=Math.round(.2*Math.max(0,a.width-e.y+a.y))/.2})]};
2113function mxShapeElectricalThreeLineBusElbow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.notch=0}mxUtils.extend(mxShapeElectricalThreeLineBusElbow,mxShape);mxShapeElectricalThreeLineBusElbow.prototype.cst={SHAPE_THREE_LINE_BUS_ELBOW:"mxgraph.electrical.transmission.threeLineBusElbow"};mxShapeElectricalThreeLineBusElbow.prototype.customProperties=[{name:"notch",dispName:"Spacing",type:"float",min:0,defVal:30}];
2114mxShapeElectricalThreeLineBusElbow.prototype.paintVertexShape=function(a,d,e,b,c){var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.translate(d,e);a.begin();a.moveTo(0,c);a.lineTo(b,c);a.lineTo(b,0);a.stroke();d=Math.min(b,f);f=Math.min(c,f);a.begin();a.moveTo(0,c-f);a.lineTo(b-d,c-f);a.lineTo(b-d,0);a.stroke();a.begin();a.moveTo(0,c-f/2);a.lineTo(b-d/2,c-f/2);a.lineTo(b-d/2,0);a.stroke()};
2115mxCellRenderer.registerShape(mxShapeElectricalThreeLineBusElbow.prototype.cst.SHAPE_THREE_LINE_BUS_ELBOW,mxShapeElectricalThreeLineBusElbow);mxShapeElectricalThreeLineBusElbow.prototype.constraints=null;
2116Graph.handleFactory[mxShapeElectricalThreeLineBusElbow.prototype.cst.SHAPE_THREE_LINE_BUS_ELBOW]=function(a){return[Graph.createHandle(a,["notch"],function(a){var d=Math.max(Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))),0);return new mxPoint(a.x+a.width/4,a.y+a.height-d)},function(a,e){this.state.style.notch=Math.round(.2*Math.max(0,a.width-e.y+a.y))/.2})]};
2117function mxShapeElectricalFourLineBusElbow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.notch=0}mxUtils.extend(mxShapeElectricalFourLineBusElbow,mxShape);mxShapeElectricalFourLineBusElbow.prototype.cst={SHAPE_FOUR_LINE_BUS_ELBOW:"mxgraph.electrical.transmission.fourLineBusElbow"};mxShapeElectricalFourLineBusElbow.prototype.customProperties=[{name:"notch",dispName:"Spacing",type:"float",min:0,defVal:75}];
2118mxShapeElectricalFourLineBusElbow.prototype.paintVertexShape=function(a,d,e,b,c){var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.translate(d,e);a.begin();a.moveTo(0,c);a.lineTo(b,c);a.lineTo(b,0);a.stroke();d=Math.min(b,f);f=Math.min(c,f);a.begin();a.moveTo(0,c-f);a.lineTo(b-d,c-f);a.lineTo(b-d,0);a.stroke();a.begin();a.moveTo(0,c-f/3);a.lineTo(b-d/3,c-f/3);a.lineTo(b-d/3,0);a.stroke();a.begin();a.moveTo(0,c-2*f/3);a.lineTo(b-2*d/3,c-2*f/3);a.lineTo(b-2*
2119d/3,0);a.stroke()};mxCellRenderer.registerShape(mxShapeElectricalFourLineBusElbow.prototype.cst.SHAPE_FOUR_LINE_BUS_ELBOW,mxShapeElectricalFourLineBusElbow);mxShapeElectricalFourLineBusElbow.prototype.constraints=null;
2120Graph.handleFactory[mxShapeElectricalFourLineBusElbow.prototype.cst.SHAPE_FOUR_LINE_BUS_ELBOW]=function(a){return[Graph.createHandle(a,["notch"],function(a){var d=Math.max(Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))),0);return new mxPoint(a.x+a.width/4,a.y+a.height-d)},function(a,e){this.state.style.notch=Math.round(.2*Math.max(0,a.width-e.y+a.y))/.2})]};
2121function mxShapeElectricalEightLineBusElbow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.notch=0}mxUtils.extend(mxShapeElectricalEightLineBusElbow,mxShape);mxShapeElectricalEightLineBusElbow.prototype.cst={SHAPE_EIGHT_LINE_BUS_ELBOW:"mxgraph.electrical.transmission.eightLineBusElbow"};mxShapeElectricalEightLineBusElbow.prototype.customProperties=[{name:"notch",dispName:"Spacing",type:"float",min:0,defVal:180}];
2122mxShapeElectricalEightLineBusElbow.prototype.paintVertexShape=function(a,d,e,b,c){var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.translate(d,e);a.begin();a.moveTo(0,c);a.lineTo(b,c);a.lineTo(b,0);a.stroke();d=Math.min(b,f);f=Math.min(c,f);a.begin();a.moveTo(0,c-f);a.lineTo(b-d,c-f);a.lineTo(b-d,0);a.stroke();a.begin();a.moveTo(0,c-f/7);a.lineTo(b-d/7,c-f/7);a.lineTo(b-d/7,0);a.stroke();a.begin();a.moveTo(0,c-2*f/7);a.lineTo(b-2*d/7,c-2*f/7);a.lineTo(b-
21232*d/7,0);a.stroke();a.begin();a.moveTo(0,c-3*f/7);a.lineTo(b-3*d/7,c-3*f/7);a.lineTo(b-3*d/7,0);a.stroke();a.begin();a.moveTo(0,c-4*f/7);a.lineTo(b-4*d/7,c-4*f/7);a.lineTo(b-4*d/7,0);a.stroke();a.begin();a.moveTo(0,c-5*f/7);a.lineTo(b-5*d/7,c-5*f/7);a.lineTo(b-5*d/7,0);a.stroke();a.begin();a.moveTo(0,c-6*f/7);a.lineTo(b-6*d/7,c-6*f/7);a.lineTo(b-6*d/7,0);a.stroke()};mxCellRenderer.registerShape(mxShapeElectricalEightLineBusElbow.prototype.cst.SHAPE_EIGHT_LINE_BUS_ELBOW,mxShapeElectricalEightLineBusElbow);
2124mxShapeElectricalEightLineBusElbow.prototype.constraints=null;Graph.handleFactory[mxShapeElectricalEightLineBusElbow.prototype.cst.SHAPE_EIGHT_LINE_BUS_ELBOW]=function(a){return[Graph.createHandle(a,["notch"],function(a){var d=Math.max(Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))),0);return new mxPoint(a.x+a.width/4,a.y+a.height-d)},function(a,e){this.state.style.notch=Math.round(.2*Math.max(0,a.width-e.y+a.y))/.2})]};
2125function mxShapeElectricalLogicGate(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeElectricalLogicGate,mxShape);mxShapeElectricalLogicGate.prototype.cst={SHAPE_LOGIC_GATE:"mxgraph.electrical.logic_gates.logic_gate"};
2126mxShapeElectricalLogicGate.prototype.customProperties=[{name:"operation",dispName:"Operation",type:"enum",defVal:"and",enumList:[{val:"and",dispName:"And"},{val:"or",dispName:"Or"},{val:"xor",dispName:"Xor"}]},{name:"numInputs",dispName:"Inputs",type:"int",min:2,defVal:2},{name:"negating",dispName:"Negating",type:"bool",defVal:0}];
2127mxShapeElectricalLogicGate.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,"numInputs","2"));e=c/d;var f=.5*e;a.begin();a.moveTo(.8*b,.5*c);a.lineTo(b,.5*c);for(var g=mxUtils.getValue(this.style,"operation","and"),h=0;h<d;h++)a.moveTo(0,f),"and"==g?a.lineTo(.2*b,f):a.lineTo(.23*b,f),f+=e;a.stroke();switch(g){case "xor":a.begin(),a.moveTo(.1*b,0),a.arcTo(.6*b,c,0,0,1,.1*b,c),a.stroke();case "or":a.begin();a.moveTo(.4*b,0);a.arcTo(.45*b,.83*c,0,
21280,1,.8*b,.5*c);a.arcTo(.45*b,.83*c,0,0,1,.4*b,c);a.lineTo(.15*b,c);a.arcTo(.6*b,c,0,0,0,.15*b,0);a.close();a.fillAndStroke();break;default:a.begin(),a.moveTo(.2*b,0),a.lineTo(.5*b,0),a.arcTo(.3*b,.5*c,0,0,1,.5*b,c),a.lineTo(.2*b,c),a.close(),a.fillAndStroke()}"1"==mxUtils.getValue(this.style,"negating","0")&&(this.style.negSize?(d=parseFloat(mxUtils.getValue(this.style,"negSize","0.13")),d=Math.min(b*d*.5,c*d)):d=Math.min(.04*b,.07*c),a.begin(),a.ellipse(.8*b,.5*c-.5*d,d,d),a.fillAndStroke())};
2129mxCellRenderer.registerShape(mxShapeElectricalLogicGate.prototype.cst.SHAPE_LOGIC_GATE,mxShapeElectricalLogicGate);mxShapeElectricalLogicGate.prototype.getConstraints=function(a){var d=[new mxConnectionConstraint(new mxPoint(1,.5),!1)];a=parseInt(mxUtils.getValue(a,"numInputs","2"));for(var e=1/a,b=.5*e,c=0;c<a;c++)d.push(new mxConnectionConstraint(new mxPoint(0,b),!1)),b+=e;return d};
2130function mxShapeElectricalBuffer(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeElectricalBuffer,mxShape);mxShapeElectricalBuffer.prototype.cst={SHAPE_BUFFER2:"mxgraph.electrical.logic_gates.buffer2"};mxShapeElectricalBuffer.prototype.customProperties=[{name:"negating",dispName:"Negating",type:"bool",defVal:0}];
2131mxShapeElectricalBuffer.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,.5*c);a.lineTo(.2*b,.5*c);a.moveTo(.8*b,.5*c);a.lineTo(b,.5*c);a.stroke();a.begin();a.moveTo(.2*b,0);a.lineTo(.8*b,.5*c);a.lineTo(.2*b,c);a.close();a.fillAndStroke();"1"==mxUtils.getValue(this.style,"negating","0")&&(d=Math.min(.04*b,.07*c),a.begin(),a.ellipse(.8*b,.5*c-.5*d,d,d),a.fillAndStroke())};mxCellRenderer.registerShape(mxShapeElectricalBuffer.prototype.cst.SHAPE_BUFFER2,mxShapeElectricalBuffer);
2132mxShapeElectricalBuffer.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0)];function mxShapeElectricalDualInLineIC(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeElectricalDualInLineIC,mxShape);mxShapeElectricalDualInLineIC.prototype.cst={SHAPE_DUAL_INLINE_IC:"mxgraph.electrical.logic_gates.dual_inline_ic"};
2133mxShapeElectricalDualInLineIC.prototype.customProperties=[{name:"pinStyle",dispName:"Pin Style",type:"enum",defVal:"line",enumList:[{val:"line",dispName:"Line"},{val:"square",dispName:"Square"}]},{name:"startPin",dispName:"Starting Pin",type:"enum",defVal:"n",enumList:[{val:"n",dispName:"N"},{val:"e",dispName:"E"},{val:"s",dispName:"S"},{val:"w",dispName:"W"}]},{name:"pinSpacing",dispName:"Pin Spacing",type:"float",min:1,defVal:20},{name:"pinLabelType",dispName:"Pin Label Type",type:"enum",defVal:"gen",
2134enumList:[{val:"gen",dispName:"Generated"},{val:"cust",dispName:"Custom"}]},{name:"labelCount",dispName:"Number of Labels",type:"int",defVal:20,dependentProps:["labelNames"]},{name:"labelNames",dispName:"Label Names",type:"staticArr",subType:"string",sizeProperty:"labelCount",subDefVal:"a"}];
2135mxShapeElectricalDualInLineIC.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,"fontColor","#000000");a.setFontColor(d);d=mxUtils.getValue(this.style,"startPin","n");e=mxUtils.getValue(this.style,"pinLabelType","gen");var f=mxUtils.getValue(this.style,"labelNames","").toString().split(",");a.begin();"n"==d||"s"==d?a.rect(10,0,b-20,c):a.rect(0,10,b,c-20);a.fillAndStroke();var g=parseFloat(mxUtils.getValue(this.style,"pinSpacing","20")),h=mxUtils.getValue(this.style,
2136"pinStyle","line"),k=parseFloat(mxUtils.getValue(this.style,"fontSize","12")),l="n"==d||"s"==d?parseInt(c/g):parseInt(b/g);if("line"==h){a.setFontSize(.8*k);h=1;k=.5*g;a.begin();if("n"==d||"s"==d)for(;h*g<=c;){a.moveTo(0,k);a.lineTo(10,k);a.moveTo(b-10,k);a.lineTo(b,k);var m="n"==d?h:l+h;"gen"==e?a.text(20,k,0,0,m.toString(),mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):m-1<f.length&&a.text(20,k,0,0,f[m-1].toString(),mxConstants.ALIGN_LEFT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);m=
2137"n"==d?2*l-h+1:l-h+1;"gen"==e?a.text(b-20,k,0,0,m.toString(),mxConstants.ALIGN_RIGHT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):m-1<f.length&&a.text(b-20,k,0,0,f[m-1].toString(),mxConstants.ALIGN_RIGHT,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);k+=g;h++}else for(;h*g<=b;)a.moveTo(k,0),a.lineTo(k,10),a.moveTo(k,c-10),a.lineTo(k,c),m="e"==d?l-h+1:2*l-h+1,"gen"==e?a.text(k,20,0,0,m.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):m-1<f.length&&a.text(k,20,0,0,f[m-1].toString(),mxConstants.ALIGN_CENTER,
2138mxConstants.ALIGN_MIDDLE,0,null,0,0,0),m="e"==d?l+h:h,"gen"==e?a.text(k,c-20,0,0,m.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):m-1<f.length&&a.text(k,c-20,0,0,f[m-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),k+=g,h++;a.stroke()}else if(a.setFontSize(.5*k),h=1,k=.5*g,"n"==d||"s"==d)for(;h*g<=c;)a.begin(),a.rect(0,k-.25*g,10,.5*g),a.fillAndStroke(),a.begin(),a.rect(b-10,k-.25*g,10,.5*g),a.fillAndStroke(),m="n"==d?h:l+h,"gen"==e?a.text(5,
2139k+1,0,0,m.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):m-1<f.length&&a.text(5,k+1,0,0,f[m-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),m="n"==d?2*l-h+1:l-h+1,"gen"==e?a.text(b-5,k+1,0,0,m.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):m-1<f.length&&a.text(b-5,k+1,0,0,f[m-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),k+=g,h++;else for(;h*g<=b;)a.begin(),a.rect(k-.25*g,0,.5*g,10),
2140a.fillAndStroke(),a.begin(),a.rect(k-.25*g,c-10,.5*g,10),a.fillAndStroke(),m="e"==d?l-h+1:2*l-h+1,"gen"==e?a.text(k,5,0,0,m.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):m-1<f.length&&a.text(k,5,0,0,f[m-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0),m="e"==d?l+h:h,"gen"==e?a.text(k,c-5,0,0,m.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):m-1<f.length&&a.text(k,c-5,0,0,f[m-1].toString(),mxConstants.ALIGN_CENTER,
2141mxConstants.ALIGN_MIDDLE,0,null,0,0,0),k+=g,h++;a.setShadow(!1);a.begin();switch(d){case "e":40<c&&(a.moveTo(b,.5*c-10),a.arcTo(12,12,0,0,0,b,.5*c+10));break;case "s":40<b&&(a.moveTo(.5*b-10,c),a.arcTo(12,12,0,0,1,.5*b+10,c));break;case "w":40<c&&(a.moveTo(0,.5*c-10),a.arcTo(12,12,0,0,1,0,.5*c+10));break;default:40<b&&(a.moveTo(.5*b-10,0),a.arcTo(12,12,0,0,0,.5*b+10,0))}a.stroke()};mxCellRenderer.registerShape(mxShapeElectricalDualInLineIC.prototype.cst.SHAPE_DUAL_INLINE_IC,mxShapeElectricalDualInLineIC);
2142mxShapeElectricalDualInLineIC.prototype.getConstraints=function(a,d,e){a=[];var b=parseFloat(mxUtils.getValue(this.style,"pinSpacing","20")),c=mxUtils.getValue(this.style,"startPin","n"),f=1,g=.5*b;parseInt(e/b);if("n"==c||"s"==c)for(;f*b<=e;)a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,g)),a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,g)),g+=b,f++;else for(;f*b<=d;)a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g,0)),a.push(new mxConnectionConstraint(new mxPoint(0,
21431),!1,null,g,0)),g+=b,f++;return a};function mxShapeElectricalQFPIC(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeElectricalQFPIC,mxShape);mxShapeElectricalQFPIC.prototype.cst={SHAPE_QFP_IC:"mxgraph.electrical.logic_gates.qfp_ic"};
2144mxShapeElectricalQFPIC.prototype.customProperties=[{name:"pinStyle",dispName:"Pin Style",type:"enum",defVal:"line",enumList:[{val:"line",dispName:"Line"},{val:"square",dispName:"Square"}]},{name:"startPin",dispName:"Starting Pin",type:"enum",defVal:"sw",enumList:[{val:"sw",dispName:"SW"},{val:"nw",dispName:"NW"},{val:"ne",dispName:"NE"},{val:"se",dispName:"SE"}]},{name:"pinSpacing",dispName:"Pin Spacing",type:"float",min:1,defVal:20},{name:"pinLabelType",dispName:"Pin Label Type",type:"enum",defVal:"gen",
2145enumList:[{val:"gen",dispName:"Generated"},{val:"cust",dispName:"Custom"}]},{name:"labelCount",dispName:"Number of Labels",type:"int",defVal:40,dependentProps:["labelNames"]},{name:"labelNames",dispName:"Label Names",type:"staticArr",subType:"string",sizeProperty:"labelCount",subDefVal:"a"}];
2146mxShapeElectricalQFPIC.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(15,10);a.lineTo(b-15,10);a.lineTo(b-10,15);a.lineTo(b-10,c-15);a.lineTo(b-15,c-10);a.lineTo(15,c-10);a.lineTo(10,c-15);a.lineTo(10,15);a.close();a.fillAndStroke();d=parseFloat(mxUtils.getValue(this.style,"pinSpacing","20"));var f=mxUtils.getValue(this.style,"pinStyle","line");e=mxUtils.getValue(this.style,"pinLabelType","gen");var g=mxUtils.getValue(this.style,"labelNames","").toString().split(","),
2147h=parseFloat(mxUtils.getValue(this.style,"fontSize","12")),k=mxUtils.getValue(this.style,"fontColor","#000000");a.setFontColor(k);k=mxUtils.getValue(this.style,"startPin","sw");if("line"==f){a.setFontSize(.8*h);f=1;h=.5*d+20;a.begin();for(var l=parseInt((c-d-40)/d)+1,m=parseInt((b-d-40)/d)+1;h<=c-.5*d-20;){a.moveTo(0,h);a.lineTo(10,h);a.moveTo(b-10,h);a.lineTo(b,h);switch(k){case "nw":var n=f;break;case "ne":n=m+f;break;case "se":n=l+m+f;break;default:n=l+2*m+f}"gen"==e?a.text(20,h,0,0,n.toString(),
2148mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):n-1<g.length&&a.text(20,h,0,0,g[n-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);switch(k){case "nw":n=m+2*l-f+1;break;case "ne":n=2*m+2*l-f+1;break;case "se":n=l-f+1;break;default:n=m+l-f+1}"gen"==e?a.text(b-20,h,0,0,n.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):n-1<g.length&&a.text(b-20,h,0,0,g[n-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,
21490);h+=d;f++}f=1;for(h=.5*d+20;h<=b-.5*d-20;){a.moveTo(h,0);a.lineTo(h,10);a.moveTo(h,c-10);a.lineTo(h,c);switch(k){case "nw":n=l+f;break;case "ne":n=l+m+f;break;case "se":n=2*l+m+f;break;default:n=f}"gen"==e?a.text(h,c-20,0,0,n.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):n-1<g.length&&a.text(h,c-20,0,0,g[n-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);switch(k){case "nw":n=2*m+2*l-f+1;break;case "ne":n=m-f+1;break;case "se":n=m+l-f+1;
2150break;default:n=2*m+l-f+1}"gen"==e?a.text(h,20,0,0,n.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):n-1<g.length&&a.text(h,20,0,0,g[n-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);h+=d;f++}a.stroke()}else{a.setFontSize(.5*h);f=1;h=.5*d+20;l=parseInt((c-d-40)/d)+1;for(m=parseInt((b-d-40)/d)+1;h<=c-.5*d-20;){a.begin();a.rect(0,h-.25*d,10,.5*d);a.fillAndStroke();a.begin();a.rect(b-10,h-.25*d,10,.5*d);a.fillAndStroke();switch(k){case "nw":n=
2151f;break;case "ne":n=m+f;break;case "se":n=l+m+f;break;default:n=l+2*m+f}"gen"==e?a.text(5,h+1,0,0,n.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):n-1<g.length&&a.text(5,h+1,0,0,g[n-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);switch(k){case "nw":n=m+2*l-f+1;break;case "ne":n=2*m+2*l-f+1;break;case "se":n=l-f+1;break;default:n=m+l-f+1}"gen"==e?a.text(b-5,h+1,0,0,n.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):
2152n-1<g.length&&a.text(b-5,h+1,0,0,g[n-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);h+=d;f++}f=1;for(h=.5*d+20;h<=b-.5*d-20;){a.begin();a.rect(h-.25*d,0,.5*d,10);a.fillAndStroke();a.begin();a.rect(h-.25*d,c-10,.5*d,10);a.fillAndStroke();switch(k){case "nw":n=l+f;break;case "ne":n=l+m+f;break;case "se":n=2*l+m+f;break;default:n=f}"gen"==e?a.text(h,c-4,0,0,n.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):n-1<g.length&&a.text(h,c-4,0,0,g[n-1].toString(),
2153mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);switch(k){case "nw":n=2*m+2*l-f+1;break;case "ne":n=m-f+1;break;case "se":n=m+l-f+1;break;default:n=2*m+l-f+1}"gen"==e?a.text(h,6,0,0,n.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0):n-1<g.length&&a.text(h,6,0,0,g[n-1].toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);h+=d;f++}}a.setShadow(!1);if(40<b){a.setFillColor(mxUtils.getValue(this.style,"strokeColor","#000000"));a.begin();switch(k){case "nw":a.ellipse(15,
215415,10,10);break;case "ne":a.ellipse(b-25,15,10,10);break;case "se":a.ellipse(b-25,c-25,10,10);break;default:a.ellipse(15,c-25,10,10)}a.fillAndStroke()}};mxCellRenderer.registerShape(mxShapeElectricalQFPIC.prototype.cst.SHAPE_QFP_IC,mxShapeElectricalQFPIC);
2155mxShapeElectricalQFPIC.prototype.getConstraints=function(a,d,e){a=[];var b=parseFloat(mxUtils.getValue(this.style,"pinSpacing","20")),c=.5*b+20;for(parseInt(e/b);c<=e-.5*b-20;)a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,c)),a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,c)),c+=b;for(c=.5*b+20;c<=d-.5*b-20;)a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,0)),a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,c,0)),c+=b;return a};
2156function mxShapeElectricalMux(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeElectricalMux,mxShape);mxShapeElectricalMux.prototype.cst={SHAPE_MUX:"mxgraph.electrical.abstract.mux2"};
2157mxShapeElectricalMux.prototype.customProperties=[{name:"operation",dispName:"Operation",type:"enum",defVal:"mux",enumList:[{val:"mux",dispName:"Mux"},{val:"demux",dispName:"Demux"}]},{name:"selectorPins",dispName:"Selector Pins",type:"int",min:1,max:8,defVal:1}];
2158mxShapeElectricalMux.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseInt(mxUtils.getValue(this.style,"selectorPins","1"));e=mxUtils.getValue(this.style,"operation","mux");var f=parseFloat(mxUtils.getValue(this.style,"fontSize","12"));a.setFontSize(.5*f);f=mxUtils.getValue(this.style,"fontColor","#000000");a.setFontColor(f);f=0;switch(mxUtils.getValue(this.style,"direction","east")){case "south":f=270;break;case "west":f=180;break;case "north":f=90}switch(e){case "demux":a.begin();
2159a.moveTo(b-10,0);a.lineTo(10,.1*c);a.lineTo(10,.9*c-10);a.lineTo(b-10,c-10);a.close();a.fillAndStroke();break;default:a.begin(),a.moveTo(10,0),a.lineTo(b-10,.1*c),a.lineTo(b-10,.9*c-10),a.lineTo(10,c-10),a.close(),a.fillAndStroke()}var g=1,h=1;if("mux"==e)var g=Math.pow(2,d),k=(c-16)/g;else h=Math.pow(2,d),k=(c-16)/h;var l=3+.5*k;a.begin();if(1==g)a.moveTo(0,.5*(c-10)),a.lineTo(10,.5*(c-10));else for(var m=0;m<g;m++)a.moveTo(0,l),a.lineTo(10,l),a.text(14,l+1,0,0,""+m.toString(),mxConstants.ALIGN_CENTER,
2160mxConstants.ALIGN_MIDDLE,0,null,0,0,f),l+=k;if(1==h)a.moveTo(b-10,.5*(c-10)),a.lineTo(b,.5*(c-10));else for(m=0;m<h;m++)a.moveTo(b-10,l),a.lineTo(b,l),a.text(b-14,l+1,0,0,""+m.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,f),l+=k;k=(b-20)/d;g=10+.5*k;for(m=0;m<d;m++)"mux"==e?a.moveTo(g,c-10-(g-10)/(b-20)*c*.1):a.moveTo(g,c-10-(b-g-10)/(b-20)*c*.1),a.lineTo(g,c),a.text(g+5,c-4,0,0,"S"+(d-m-1).toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,f),g+=k;
2161a.stroke()};mxCellRenderer.registerShape(mxShapeElectricalMux.prototype.cst.SHAPE_MUX,mxShapeElectricalMux);
2162mxShapeElectricalMux.prototype.getConstraints=function(a,d,e){a=[];var b=(e-16)/e,c=parseInt(mxUtils.getValue(this.style,"selectorPins","1")),f=1,g=1;"mux"==mxUtils.getValue(this.style,"operation","mux")?(f=Math.pow(2,c),b/=f):(g=Math.pow(2,c),b/=g);var h=.5*b;if(1==f)a.push(new mxConnectionConstraint(new mxPoint(0,.5*(e-10)/e),!1,0,0));else for(e=0;e<f;e++)a.push(new mxConnectionConstraint(new mxPoint(0,h),!1,null,0,3)),h+=b;if(1==g)a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,0,-5));
2163else for(e=0;e<g;e++)a.push(new mxConnectionConstraint(new mxPoint(1,h),!1,null,0,3)),h+=b;b=(d-20)/(d*c);d=.5*b;for(e=0;e<c;e++)a.push(new mxConnectionConstraint(new mxPoint(d,1),!1,null,10,0)),d+=b;return a};function mxShapeElectricalBatteryStack(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeElectricalBatteryStack,mxShape);mxShapeElectricalBatteryStack.prototype.cst={SHAPE_BATTERY_STACK:"mxgraph.electrical.miscellaneous.batteryStack"};
2164mxShapeElectricalBatteryStack.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.3*c;var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");e=mxUtils.getValue(this.style,mxConstants.STYLE_DASHED,"0");var g=Math.floor((b-20)/d),h=.5*(b-g*d);if(0<g)for(a.begin(),a.moveTo(0,.5*c),a.lineTo(h+.2*d,.5*c),a.moveTo(b-h-.2*d,.5*c),a.lineTo(b,.5*c),a.stroke(),b=h,a.setFillColor(f),f=0;f<g;f++)a.rect(b+.2*d,.25*c,.2*d,.5*c),a.fillAndStroke(),a.begin(),a.moveTo(b+.8*d,0),a.lineTo(b+
2165.8*d,c),a.stroke(),0<f&&(a.setDashed("1"),a.begin(),a.moveTo(b-.2*d,.5*c),a.lineTo(b+.2*d,.5*c),a.stroke(),a.setDashed(e)),b+=d};mxCellRenderer.registerShape(mxShapeElectricalBatteryStack.prototype.cst.SHAPE_BATTERY_STACK,mxShapeElectricalBatteryStack);mxShapeElectricalBatteryStack.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0)];
2166function mxShapeElectricalDCSource3_v2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeElectricalDCSource3_v2,mxShape);mxShapeElectricalDCSource3_v2.prototype.cst={SHAPE_DC_SOURCE_3_V2:"mxgraph.electrical.signal_sources.dc_source_3_v2"};
2167mxShapeElectricalDCSource3_v2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(3,.05*Math.min(c,b));a.ellipse(0,0,b,c);a.fillAndStroke();a.begin();a.moveTo(.5*b-d,.05*c+3);a.lineTo(.5*b+d,.05*c+3);a.moveTo(.5*b,.05*c-d+3);a.lineTo(.5*b,.05*c+d+3);a.moveTo(.5*b-d,.95*c-3);a.lineTo(.5*b+d,.95*c-3);a.stroke()};mxCellRenderer.registerShape(mxShapeElectricalDCSource3_v2.prototype.cst.SHAPE_DC_SOURCE_3_V2,mxShapeElectricalDCSource3_v2);
2168mxShapeElectricalDCSource3_v2.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0)];function mxShapeElectricalSource(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeElectricalSource,mxShape);mxShapeElectricalSource.prototype.cst={SHAPE_SOURCE:"mxgraph.electrical.signal_sources.source"};
2169mxShapeElectricalSource.prototype.customProperties=[{name:"elSourceType",dispName:"Source Type",type:"enum",defVal:"independent",enumList:[{val:"independent",dispName:"Independent"},{val:"dependent",dispName:"Dependent"}]},{name:"elSignalType",dispName:"Signal Type",type:"enum",defVal:"ac",enumList:[{val:"ac",dispName:"AC"},{val:"none",dispName:"None"},{val:"square",dispName:"Square"},{val:"triangular",dispName:"Triangular"},{val:"sawtooth",dispName:"Sawtooth"},{val:"noise",dispName:"Noise"},{val:"ideal",
2170dispName:"Ideal"},{val:"expSquib",dispName:"Explosive Squib"},{val:"pulse",dispName:"Pulse"},{val:"invPulse",dispName:"Inverse Pulse"},{val:"chopSquare",dispName:"Chopped Square"},{val:"stepOn",dispName:"Step On"},{val:"stepOff",dispName:"Step Off"},{val:"dc1",dispName:"DC Horizontal"},{val:"dc2",dispName:"DC Vertical"},{val:"dc3",dispName:"DC Plus minus"}]}];
2171mxShapeElectricalSource.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,"elSourceType","independent");e=mxUtils.getValue(this.style,"elSignalType","none");switch(d){case "independent":a.ellipse(0,0,b,c);a.fillAndStroke();break;case "dependent":a.begin(),a.moveTo(0,.5*c),a.lineTo(.5*b,0),a.lineTo(b,.5*c),a.lineTo(.5*b,c),a.lineTo(0,.5*c),a.close(),a.fillAndStroke()}switch(e){case "ac":a.begin();a.moveTo(.3*b,.5*c);a.quadTo(.34*b,.35*c,.4*b,.35*c);a.quadTo(.46*
2172b,.35*c,.5*b,.5*c);a.quadTo(.53*b,.65*c,.6*b,.65*c);a.quadTo(.66*b,.65*c,.7*b,.5*c);a.stroke();break;case "square":a.begin();a.moveTo(.3*b,.5*c);a.lineTo(.3*b,.35*c);a.lineTo(.5*b,.35*c);a.lineTo(.5*b,.65*c);a.lineTo(.7*b,.65*c);a.lineTo(.7*b,.5*c);a.stroke();break;case "triangular":a.begin();a.moveTo(.3*b,.65*c);a.lineTo(.4*b,.35*c);a.lineTo(.5*b,.65*c);a.lineTo(.6*b,.35*c);a.lineTo(.7*b,.65*c);a.stroke();break;case "sawtooth":a.begin();a.moveTo(.24*b,.65*c);a.lineTo(.42*b,.35*c);a.lineTo(.42*b,
2173.65*c);a.lineTo(.58*b,.35*c);a.lineTo(.58*b,.65*c);a.lineTo(.76*b,.35*c);a.lineTo(.76*b,.65*c);a.stroke();break;case "noise":a.begin();a.moveTo(.5*b,.17*c);a.lineTo(.5*b,.5*c);a.moveTo(.18*b,.42*c);a.lineTo(.5*b,.5*c);a.moveTo(.32*b,.78*c);a.lineTo(.5*b,.5*c);a.moveTo(.82*b,.42*c);a.lineTo(.5*b,.5*c);a.moveTo(.68*b,.78*c);a.lineTo(.5*b,.5*c);a.stroke();break;case "ideal":a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke();break;case "expSquib":a.ellipse(0,.43*c,.14*b,.14*c);a.stroke();a.ellipse(.86*
2174b,.43*c,.14*b,.14*c);a.stroke();a.begin();a.moveTo(.83*b,.63*c);a.lineTo(.73*b,.73*c);a.lineTo(.27*b,.27*c);a.lineTo(.17*b,.37*c);a.stroke();a.begin();d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(d);a.moveTo(.2*b,.25*c);a.lineTo(.13*b,.4*c);a.lineTo(.28*b,.33*c);a.close();a.fillAndStroke();break;case "pulse":a.begin();a.moveTo(.3*b,.65*c);a.lineTo(.4*b,.65*c);a.lineTo(.4*b,.35*c);a.lineTo(.6*b,.35*c);a.lineTo(.6*b,.65*c);a.lineTo(.7*b,.65*c);a.stroke();break;
2175case "invPulse":a.begin();a.moveTo(.3*b,.35*c);a.lineTo(.4*b,.35*c);a.lineTo(.4*b,.65*c);a.lineTo(.6*b,.65*c);a.lineTo(.6*b,.35*c);a.lineTo(.7*b,.35*c);a.stroke();break;case "chopSquare":a.begin();a.moveTo(.3*b,.5*c);a.lineTo(.33*b,.35*c);a.lineTo(.47*b,.35*c);a.lineTo(.53*b,.65*c);a.lineTo(.67*b,.65*c);a.lineTo(.7*b,.5*c);a.stroke();break;case "stepOn":a.begin();a.moveTo(.3*b,.65*c);a.lineTo(.5*b,.65*c);a.lineTo(.5*b,.35*c);a.lineTo(.7*b,.35*c);a.stroke();break;case "stepOff":a.begin();a.moveTo(.3*
2176b,.35*c);a.lineTo(.5*b,.35*c);a.lineTo(.5*b,.65*c);a.lineTo(.7*b,.65*c);a.stroke();break;case "dc1":a.begin();a.moveTo(.17*b,.5*c);a.lineTo(.83*b,.5*c);a.moveTo(.67*b,.42*c);a.lineTo(.83*b,.5*c);a.lineTo(.67*b,.58*c);a.stroke();break;case "dc2":a.begin();a.moveTo(.5*b,.17*c);a.lineTo(.5*b,.83*c);a.moveTo(.42*b,.67*c);a.lineTo(.5*b,.83*c);a.lineTo(.58*b,.67*c);a.stroke();break;case "dc3":e=Math.max(3,.05*Math.min(c,b));var f=3;"dependent"==d&&(f+=3);a.begin();a.moveTo(.5*b-e,.05*c+f);a.lineTo(.5*b+
2177e,.05*c+f);a.moveTo(.5*b,.05*c-e+f);a.lineTo(.5*b,.05*c+e+f);a.moveTo(.5*b-e,.95*c-f);a.lineTo(.5*b+e,.95*c-f);a.stroke()}};mxCellRenderer.registerShape(mxShapeElectricalSource.prototype.cst.SHAPE_SOURCE,mxShapeElectricalSource);function mxFloorplanWall(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxFloorplanWall,mxShape);mxFloorplanWall.prototype.cst={WALL:"mxgraph.floorplan.wall",WALL_THICKNESS:"wallThickness"};
2178mxFloorplanWall.prototype.customProperties=[{name:"wallThickness",dispName:"Thickness",type:"float",min:0,defVal:10}];mxFloorplanWall.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};mxFloorplanWall.prototype.background=function(a,d,e,b,c){d=parseFloat(mxUtils.getValue(this.style,mxFloorplanWall.prototype.cst.WALL_THICKNESS,"10"));a.rect(0,.5*c-.5*d,b,d);a.fillAndStroke()};mxCellRenderer.registerShape(mxFloorplanWall.prototype.cst.WALL,mxFloorplanWall);
2179function mxFloorplanWallCorner(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxFloorplanWallCorner,mxShape);mxFloorplanWallCorner.prototype.cst={WALL_CORNER:"mxgraph.floorplan.wallCorner",WALL_THICKNESS:"wallThickness"};mxFloorplanWallCorner.prototype.customProperties=[{name:"wallThickness",dispName:"Thickness",type:"float",min:0,defVal:10}];
2180mxFloorplanWallCorner.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};mxFloorplanWallCorner.prototype.background=function(a,d,e,b,c){d=parseFloat(mxUtils.getValue(this.style,mxFloorplanWallCorner.prototype.cst.WALL_THICKNESS,"10"));a.begin();a.moveTo(0,c);a.lineTo(0,0);a.lineTo(b,0);a.lineTo(b,d);a.lineTo(d,d);a.lineTo(d,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxFloorplanWallCorner.prototype.cst.WALL_CORNER,mxFloorplanWallCorner);
2181function mxFloorplanWallU(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxFloorplanWallU,mxShape);mxFloorplanWallU.prototype.cst={WALL_U:"mxgraph.floorplan.wallU",WALL_THICKNESS:"wallThickness"};mxFloorplanWallU.prototype.customProperties=[{name:"wallThickness",dispName:"Thickness",type:"float",min:0,defVal:10}];mxFloorplanWallU.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2182mxFloorplanWallU.prototype.background=function(a,d,e,b,c){d=parseFloat(mxUtils.getValue(this.style,mxFloorplanWallU.prototype.cst.WALL_THICKNESS,"10"));a.begin();a.moveTo(0,c);a.lineTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(b-d,c);a.lineTo(b-d,d);a.lineTo(d,d);a.lineTo(d,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxFloorplanWallU.prototype.cst.WALL_U,mxFloorplanWallU);
2183function mxFloorplanRoom(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxFloorplanRoom,mxShape);mxFloorplanRoom.prototype.cst={ROOM:"mxgraph.floorplan.room",WALL_THICKNESS:"wallThickness"};mxFloorplanRoom.prototype.customProperties=[{name:"wallThickness",dispName:"Thickness",type:"float",min:0,defVal:10}];mxFloorplanRoom.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2184mxFloorplanRoom.prototype.background=function(a,d,e,b,c){d=parseFloat(mxUtils.getValue(this.style,mxFloorplanRoom.prototype.cst.WALL_THICKNESS,"10"));a.begin();a.moveTo(0,c);a.lineTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.close();a.moveTo(d,d);a.lineTo(d,c-d);a.lineTo(b-d,c-d);a.lineTo(b-d,d);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxFloorplanRoom.prototype.cst.ROOM,mxFloorplanRoom);
2185function mxFloorplanWindow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxFloorplanWindow,mxShape);mxFloorplanWindow.prototype.cst={WINDOW:"mxgraph.floorplan.window",WALL_THICKNESS:"wallThickness"};mxFloorplanWindow.prototype.customProperties=[{name:"wallThickness",dispName:"Thickness",type:"float",min:0,defVal:10}];mxFloorplanWindow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2186mxFloorplanWindow.prototype.background=function(a,d,e,b,c){d=parseFloat(mxUtils.getValue(this.style,mxFloorplanWindow.prototype.cst.WALL_THICKNESS,"10"));a.rect(0,.5*c-.5*d,b,d);a.fillAndStroke();a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke()};mxCellRenderer.registerShape(mxFloorplanWindow.prototype.cst.WINDOW,mxFloorplanWindow);function mxFloorplanDimension(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2187mxUtils.extend(mxFloorplanDimension,mxShape);mxFloorplanDimension.prototype.cst={DIMENSION:"mxgraph.floorplan.dimension"};mxFloorplanDimension.prototype.customProperties=[{name:"wallThickness",dispName:"Thickness",type:"float",min:0,defVal:10}];mxFloorplanDimension.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2188mxFloorplanDimension.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,20);a.lineTo(b,20);a.moveTo(10,15);a.lineTo(0,20);a.lineTo(10,25);a.moveTo(b-10,15);a.lineTo(b,20);a.lineTo(b-10,25);a.moveTo(0,15);a.lineTo(0,c);a.moveTo(b,15);a.lineTo(b,c);a.stroke()};mxCellRenderer.registerShape(mxFloorplanDimension.prototype.cst.DIMENSION,mxFloorplanDimension);function mxFloorplanDimensionBottom(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2189mxUtils.extend(mxFloorplanDimensionBottom,mxShape);mxFloorplanDimensionBottom.prototype.cst={DIMENSION:"mxgraph.floorplan.dimensionBottom"};mxFloorplanDimensionBottom.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2190mxFloorplanDimensionBottom.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,c-20);a.lineTo(b,c-20);a.moveTo(10,c-15);a.lineTo(0,c-20);a.lineTo(10,c-25);a.moveTo(b-10,c-15);a.lineTo(b,c-20);a.lineTo(b-10,c-25);a.moveTo(0,c-15);a.lineTo(0,0);a.moveTo(b,c-15);a.lineTo(b,0);a.stroke()};mxCellRenderer.registerShape(mxFloorplanDimensionBottom.prototype.cst.DIMENSION,mxFloorplanDimensionBottom);
2191function mxFloorplanStairs(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxFloorplanStairs,mxShape);mxFloorplanStairs.prototype.cst={STAIRS:"mxgraph.floorplan.stairs"};mxFloorplanStairs.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,Math.max(b,50),c)};
2192mxFloorplanStairs.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.begin();for(d=25;d<b;d+=25)a.moveTo(d,0),a.lineTo(d,c);a.stroke();a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.moveTo(b-25,0);a.lineTo(b,.5*c);a.lineTo(b-25,c);a.stroke()};mxCellRenderer.registerShape(mxFloorplanStairs.prototype.cst.STAIRS,mxFloorplanStairs);function mxFloorplanStairsRest(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2193mxUtils.extend(mxFloorplanStairsRest,mxShape);mxFloorplanStairsRest.prototype.cst={STAIRS:"mxgraph.floorplan.stairsRest"};mxFloorplanStairsRest.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,Math.max(b,50,c),c)};
2194mxFloorplanStairsRest.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.begin();for(d=25;d<b-.5*c;d+=25)a.moveTo(d,0),a.lineTo(d,c);a.stroke();a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.moveTo(b,0);a.lineTo(b-.5*c,.5*c);a.lineTo(b,c);a.moveTo(b-.5*c,0);a.lineTo(b-.5*c,c);a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke()};mxCellRenderer.registerShape(mxFloorplanStairsRest.prototype.cst.STAIRS,mxFloorplanStairsRest);
2195function mxFloorplanDoorLeft(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxFloorplanDoorLeft,mxShape);mxFloorplanDoorLeft.prototype.cst={DOOR_LEFT:"mxgraph.floorplan.doorLeft"};mxFloorplanDoorLeft.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2196mxFloorplanDoorLeft.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,5);a.fillAndStroke();a.begin();a.moveTo(b,5);a.arcTo(b,b,0,0,1,0,5+b);a.lineTo(0,5);a.stroke()};mxCellRenderer.registerShape(mxFloorplanDoorLeft.prototype.cst.DOOR_LEFT,mxFloorplanDoorLeft);function mxFloorplanDoorRight(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxFloorplanDoorRight,mxShape);mxFloorplanDoorRight.prototype.cst={DOOR_RIGHT:"mxgraph.floorplan.doorRight"};
2197mxFloorplanDoorRight.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};mxFloorplanDoorRight.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,5);a.fillAndStroke();a.begin();a.moveTo(0,5);a.arcTo(b,b,0,0,0,b,5+b);a.lineTo(b,5);a.stroke()};mxCellRenderer.registerShape(mxFloorplanDoorRight.prototype.cst.DOOR_RIGHT,mxFloorplanDoorRight);
2198function mxFloorplanDoorDouble(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxFloorplanDoorDouble,mxShape);mxFloorplanDoorDouble.prototype.cst={DOOR_DOUBLE:"mxgraph.floorplan.doorDouble"};mxFloorplanDoorDouble.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2199mxFloorplanDoorDouble.prototype.background=function(a,d,e,b,c){d=.5*b;a.rect(0,0,b,5);a.fillAndStroke();a.begin();a.moveTo(d,0);a.lineTo(d,5);a.moveTo(d,5);a.arcTo(d,d,0,0,1,0,5+d);a.lineTo(0,5);a.moveTo(d,5);a.arcTo(d,d,0,0,0,b,5+d);a.lineTo(b,5);a.stroke()};mxCellRenderer.registerShape(mxFloorplanDoorDouble.prototype.cst.DOOR_DOUBLE,mxFloorplanDoorDouble);function mxFloorplanDoorUneven(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.3}
2200mxUtils.extend(mxFloorplanDoorUneven,mxShape);mxFloorplanDoorUneven.prototype.customProperties=[{name:"dx",dispName:"Door size",type:"float",min:0,max:1,defVal:.3}];mxFloorplanDoorUneven.prototype.cst={DOOR_UNEVEN:"mxgraph.floorplan.doorUneven"};mxFloorplanDoorUneven.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2201mxFloorplanDoorUneven.prototype.background=function(a,d,e,b,c){d=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.rect(0,0,b,5);a.fillAndStroke();a.begin();a.moveTo(d,0);a.lineTo(d,5);a.arcTo(d,d,0,0,1,0,5+d);a.lineTo(0,5);a.moveTo(d,5);a.arcTo(b-d,b-d,0,0,0,b,5+b-d);a.lineTo(b,5);a.stroke()};mxCellRenderer.registerShape(mxFloorplanDoorUneven.prototype.cst.DOOR_UNEVEN,mxFloorplanDoorUneven);
2202Graph.handleFactory[mxFloorplanDoorUneven.prototype.cst.DOOR_UNEVEN]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+5)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,(e.x-a.x)/a.width)))/100})]};function mxFloorplanDoorOpposing(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.3}
2203mxUtils.extend(mxFloorplanDoorOpposing,mxShape);mxFloorplanDoorOpposing.prototype.customProperties=[{name:"dx",dispName:"Door size",type:"float",min:0,max:1,defVal:.3}];mxFloorplanDoorOpposing.prototype.cst={DOOR_OPPOSING:"mxgraph.floorplan.doorOpposing"};mxFloorplanDoorOpposing.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2204mxFloorplanDoorOpposing.prototype.background=function(a,d,e,b,c){d=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.rect(0,d,b,5);a.fillAndStroke();a.begin();a.moveTo(d,d);a.lineTo(d,d+5);a.arcTo(d,d,0,0,0,0,0);a.lineTo(0,d);a.moveTo(d,d+5);a.arcTo(b-d,b-d,0,0,0,b,5+b);a.lineTo(b,d+5);a.stroke()};mxCellRenderer.registerShape(mxFloorplanDoorOpposing.prototype.cst.DOOR_OPPOSING,mxFloorplanDoorOpposing);
2205Graph.handleFactory[mxFloorplanDoorOpposing.prototype.cst.DOOR_OPPOSING]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+5)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,(e.x-a.x)/a.width)))/100})]};function mxFloorplanDoorRevolving(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2206mxUtils.extend(mxFloorplanDoorRevolving,mxShape);mxFloorplanDoorRevolving.prototype.cst={DOOR_REVOLVING:"mxgraph.floorplan.doorRevolving"};mxFloorplanDoorRevolving.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};mxFloorplanDoorRevolving.prototype.background=function(a,d,e,b,c){d=Math.min(b,c);a.rect(.5*(b-d),.5*c-2.5,d,5);a.fillAndStroke();a.rect(.5*b-2.5,.5*(c-d),5,d);a.fillAndStroke();a.begin();a.ellipse(.5*(b-d),.5*(c-d),d,d);a.stroke()};
2207mxCellRenderer.registerShape(mxFloorplanDoorRevolving.prototype.cst.DOOR_REVOLVING,mxFloorplanDoorRevolving);function mxFloorplanDoorPocket(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxFloorplanDoorPocket,mxShape);mxFloorplanDoorPocket.prototype.customProperties=[{name:"dx",dispName:"Door size",type:"float",min:0,max:1,defVal:.3}];mxFloorplanDoorPocket.prototype.cst={DOOR_POCKET:"mxgraph.floorplan.doorPocket"};
2208mxFloorplanDoorPocket.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.translate(d,e);a.rect(f,.5*c-5,5,10);a.fillAndStroke();a.rect(b-5,.5*c-5,5,10);a.fillAndStroke();a.rect(0,.5*c-2.5,b-f,5);a.fillAndStroke()};mxCellRenderer.registerShape(mxFloorplanDoorPocket.prototype.cst.DOOR_POCKET,mxFloorplanDoorPocket);
2209Graph.handleFactory[mxFloorplanDoorPocket.prototype.cst.DOOR_POCKET]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(.5,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+5)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(.5,(e.x-a.x)/a.width)))/100})]};
2210function mxFloorplanDoorDoublePocket(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxFloorplanDoorDoublePocket,mxShape);mxFloorplanDoorDoublePocket.prototype.customProperties=[{name:"dx",dispName:"Door size",type:"float",min:0,max:1,defVal:.3}];mxFloorplanDoorDoublePocket.prototype.cst={DOOR_DOUBLE_POCKET:"mxgraph.floorplan.doorDoublePocket"};
2211mxFloorplanDoorDoublePocket.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.translate(d,e);a.rect(f,.5*c-5,5,10);a.fillAndStroke();a.rect(b-f-5,.5*c-5,5,10);a.fillAndStroke();a.rect(0,.5*c-2.5,.5*b-f,5);a.fillAndStroke();a.rect(.5*b+f,.5*c-2.5,.5*b-f,5);a.fillAndStroke()};mxCellRenderer.registerShape(mxFloorplanDoorDoublePocket.prototype.cst.DOOR_DOUBLE_POCKET,mxFloorplanDoorDoublePocket);
2212Graph.handleFactory[mxFloorplanDoorDoublePocket.prototype.cst.DOOR_DOUBLE_POCKET]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(.25,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+5)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(.25,(e.x-a.x)/a.width)))/100})]};
2213function mxFloorplanDoorBypass(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxFloorplanDoorBypass,mxShape);mxFloorplanDoorBypass.prototype.customProperties=[{name:"dx",dispName:"Door size",type:"float",min:0,max:1,defVal:.3}];mxFloorplanDoorBypass.prototype.cst={DOOR_BYPASS:"mxgraph.floorplan.doorBypass"};
2214mxFloorplanDoorBypass.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.translate(d,e);a.rect(0,.5*c-5,5,10);a.fillAndStroke();a.rect(b-5,.5*c-5,5,10);a.fillAndStroke();a.rect(0,.5*c,.5*b,5);a.fillAndStroke();a.rect(f,.5*c-5,.5*b,5);a.fillAndStroke()};mxCellRenderer.registerShape(mxFloorplanDoorBypass.prototype.cst.DOOR_BYPASS,mxFloorplanDoorBypass);
2215Graph.handleFactory[mxFloorplanDoorBypass.prototype.cst.DOOR_BYPASS]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(.5,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+5)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(.5,(e.x-a.x)/a.width)))/100})]};function mxFloorplanDoorBifold(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}
2216mxUtils.extend(mxFloorplanDoorBifold,mxShape);mxFloorplanDoorBifold.prototype.customProperties=[{name:"dx",dispName:"Door size",type:"float",min:0,max:1,defVal:.3}];mxFloorplanDoorBifold.prototype.cst={DOOR_BIFOLD:"mxgraph.floorplan.doorBifold"};
2217mxFloorplanDoorBifold.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),g=parseFloat(mxUtils.getValue(this.style,"strokeWidth",this.dx));a.translate(d,e);a.rect(0,c-10,5,10);a.fillAndStroke();a.rect(b-5,c-10,5,10);a.fillAndStroke();a.setStrokeWidth(3*g);a.begin();a.moveTo(5,c-10);a.lineTo(Math.max(.5*(f-10)+5,5),0);a.lineTo(Math.max(f,5),c-10);a.moveTo(b-5,c-10);a.lineTo(b-Math.max(.5*(f-10)+5,5),0);a.lineTo(b-Math.max(f,
22185),c-10);a.stroke()};mxCellRenderer.registerShape(mxFloorplanDoorBifold.prototype.cst.DOOR_BIFOLD,mxFloorplanDoorBifold);Graph.handleFactory[mxFloorplanDoorBifold.prototype.cst.DOOR_BIFOLD]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(.5,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+5)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(.5,(e.x-a.x)/a.width)))/100})]};
2219function mxFloorplanDoorSlidingGlass(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxFloorplanDoorSlidingGlass,mxShape);mxFloorplanDoorSlidingGlass.prototype.customProperties=[{name:"dx",dispName:"Door size",type:"float",min:0,max:1,defVal:.3}];mxFloorplanDoorSlidingGlass.prototype.cst={DOOR_SLIDING_GLASS:"mxgraph.floorplan.doorSlidingGlass"};
2220mxFloorplanDoorSlidingGlass.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.translate(d,e);a.rect(0,.5*c-5,5,10);a.fillAndStroke();a.rect(b-5,.5*c-5,5,10);a.fillAndStroke();a.rect(0,.5*c,.5*b,2);a.fillAndStroke();a.rect(f,.5*c-2,.5*b,2);a.fillAndStroke()};mxCellRenderer.registerShape(mxFloorplanDoorSlidingGlass.prototype.cst.DOOR_SLIDING_GLASS,mxFloorplanDoorSlidingGlass);
2221Graph.handleFactory[mxFloorplanDoorSlidingGlass.prototype.cst.DOOR_SLIDING_GLASS]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(.5,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+5)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(.5,(e.x-a.x)/a.width)))/100})]};
2222function mxFloorplanOverhead(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxFloorplanOverhead,mxShape);mxFloorplanOverhead.prototype.cst={DOOR_OVERHEAD:"mxgraph.floorplan.doorOverhead"};mxFloorplanOverhead.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,c-10,5,10);a.fillAndStroke();a.rect(b-5,c-10,5,10);a.fillAndStroke();a.rect(5,0,b-10,c-5);a.fillAndStroke()};
2223mxCellRenderer.registerShape(mxFloorplanOverhead.prototype.cst.DOOR_OVERHEAD,mxFloorplanOverhead);function mxFloorplanOpening(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxFloorplanOpening,mxShape);mxFloorplanOpening.prototype.cst={OPENING:"mxgraph.floorplan.opening"};mxFloorplanOpening.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,5,c);a.fillAndStroke();a.rect(b-5,0,5,c);a.fillAndStroke()};
2224mxCellRenderer.registerShape(mxFloorplanOpening.prototype.cst.OPENING,mxFloorplanOpening);function mxFloorplanWindowGlider(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxFloorplanWindowGlider,mxShape);mxFloorplanWindowGlider.prototype.customProperties=[{name:"dx",dispName:"Window size",type:"float",min:0,max:1,defVal:.3}];mxFloorplanWindowGlider.prototype.cst={WINDOW_GLIDER:"mxgraph.floorplan.windowGlider"};
2225mxFloorplanWindowGlider.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.translate(d,e);a.rect(0,.5*c-5,b,10);a.fillAndStroke();a.rect(0,.5*c,.5*b,1);a.fillAndStroke();a.rect(f,.5*c-1,.5*b,1);a.fillAndStroke()};mxCellRenderer.registerShape(mxFloorplanWindowGlider.prototype.cst.WINDOW_GLIDER,mxFloorplanWindowGlider);
2226Graph.handleFactory[mxFloorplanWindowGlider.prototype.cst.WINDOW_GLIDER]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(.5,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+5)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(.5,(e.x-a.x)/a.width)))/100})]};
2227function mxFloorplanWindowGarden(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.windowPanes=3}mxUtils.extend(mxFloorplanWindowGarden,mxShape);mxFloorplanWindowGarden.prototype.customProperties=[{name:"windowPanes",dispName:"Panes",type:"int",min:0,max:20,defVal:3}];mxFloorplanWindowGarden.prototype.cst={WINDOW_GARDEN:"mxgraph.floorplan.windowGarden"};
2228mxFloorplanWindowGarden.prototype.paintVertexShape=function(a,d,e,b,c){var f=Math.min(mxUtils.getValue(this.style,"windowPanes",this.windowPanes),20),g=(b-14-2*(f-1))/f;a.translate(d,e);a.rect(0,c-10,5,10);a.fillAndStroke();a.rect(b-5,c-10,5,10);a.fillAndStroke();a.begin();a.moveTo(5,c);a.lineTo(5,0);a.lineTo(b-5,0);a.lineTo(b-5,c);a.lineTo(b-5-2,c);a.lineTo(b-5-2,2);for(d=1;d<f;d++)a.lineTo(b-5-2-d*g-2*(d-1),2),a.lineTo(b-5-2-d*g-2*(d-1),c),a.lineTo(b-5-4-2*(d-1)-d*g,c),a.lineTo(b-5-4-2*(d-1)-d*
2229g,2);a.lineTo(7,2);a.lineTo(7,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxFloorplanWindowGarden.prototype.cst.WINDOW_GARDEN,mxFloorplanWindowGarden);function mxFloorplanWindowBow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.windowPanes=3}mxUtils.extend(mxFloorplanWindowBow,mxShape);mxFloorplanWindowBow.prototype.cst={WINDOW_BOW:"mxgraph.floorplan.windowBow"};
2230mxFloorplanWindowBow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.min(.5*b,c);a.begin();a.moveTo(0,.5*(c-d));a.lineTo(d,.5*(c+d));a.lineTo(b-d,.5*(c+d));a.lineTo(b,.5*(c-d));a.stroke()};mxCellRenderer.registerShape(mxFloorplanWindowBow.prototype.cst.WINDOW_BOW,mxFloorplanWindowBow);function mxFloorplanWindowBay(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.windowPanes=3}mxUtils.extend(mxFloorplanWindowBay,mxShape);
2231mxFloorplanWindowBay.prototype.cst={WINDOW_BAY:"mxgraph.floorplan.windowBay"};mxFloorplanWindowBay.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(.15*b,.6*c);a.lineTo(.35*b,c);a.lineTo(.65*b,c);a.lineTo(.85*b,.6*c);a.lineTo(b,0);a.stroke()};mxCellRenderer.registerShape(mxFloorplanWindowBay.prototype.cst.WINDOW_BAY,mxFloorplanWindowBay);
2232function mxFloorplanDoorAccordion(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxFloorplanDoorAccordion,mxShape);mxFloorplanDoorAccordion.prototype.customProperties=[{name:"dx",dispName:"Door size",type:"float",min:0,max:1,defVal:.3}];mxFloorplanDoorAccordion.prototype.cst={DOOR_ACCORDION:"mxgraph.floorplan.doorAccordion"};
2233mxFloorplanDoorAccordion.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),f=Math.max(5,f),f=Math.min(b-5,f),g=parseFloat(mxUtils.getValue(this.style,"strokeWidth",this.dx));a.translate(d,e);a.rect(0,.5*c-5,5,10);a.fillAndStroke();a.rect(b-5,.5*c-5,5,10);a.fillAndStroke();a.setStrokeWidth(3*g);d=f-5;a.begin();a.moveTo(5,.5*c);a.lineTo(5+.1*d,0);a.lineTo(5+.3*d,c);a.lineTo(5+.5*d,0);a.lineTo(5+.7*d,c);a.lineTo(5+.9*
2234d,0);a.lineTo(5+d,.5*c);a.stroke()};mxCellRenderer.registerShape(mxFloorplanDoorAccordion.prototype.cst.DOOR_ACCORDION,mxFloorplanDoorAccordion);
2235Graph.handleFactory[mxFloorplanDoorAccordion.prototype.cst.DOOR_ACCORDION]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d*a.width,a.y+5)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(1,(e.x-a.x)/a.width)))/100})]};function mxFloorplanDoorDoubleAction(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2236mxUtils.extend(mxFloorplanDoorDoubleAction,mxShape);mxFloorplanDoorDoubleAction.prototype.cst={DOOR_DOUBLE_ACTION:"mxgraph.floorplan.doorDoubleAction"};mxFloorplanDoorDoubleAction.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2237mxFloorplanDoorDoubleAction.prototype.background=function(a,d,e,b,c){a.rect(0,.5*c-2.5,b,5);a.fillAndStroke();a.begin();a.moveTo(b,.5*c+2.5);a.arcTo(b,b,0,0,1,0,.5*c+2.5+b);a.lineTo(0,.5*c+2.5);a.stroke();a.setDashed(!0);a.begin();a.moveTo(b,.5*c-2.5);a.arcTo(b,b,0,0,0,0,.5*c-2.5-b);a.lineTo(0,.5*c-2.5);a.stroke()};mxCellRenderer.registerShape(mxFloorplanDoorDoubleAction.prototype.cst.DOOR_DOUBLE_ACTION,mxFloorplanDoorDoubleAction);
2238function mxShapeFlowchartDocument2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.size=.5}mxUtils.extend(mxShapeFlowchartDocument2,mxActor);mxShapeFlowchartDocument2.prototype.cst={DOCUMENT2:"mxgraph.flowchart.document2"};mxShapeFlowchartDocument2.prototype.customProperties=[{name:"size",dispName:"Wave Size",type:"float",min:0,max:1,defVal:.25}];
2239mxShapeFlowchartDocument2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=c*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"size",this.size))));a.begin();a.moveTo(b-5,0);a.arcTo(5,5,0,0,1,b,5);a.lineTo(b,c-d/2);a.quadTo(3*b/4,c-1.4*d,b/2,c-d/2);a.quadTo(b/4,c-d*(1-1.4),0,c-d/2);a.lineTo(0,d/2);a.lineTo(0,5);a.arcTo(5,5,0,0,1,5,0);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeFlowchartDocument2.prototype.cst.DOCUMENT2,mxShapeFlowchartDocument2);
2240mxShapeFlowchartDocument2.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.75,0),!1),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,.25),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,.75),!1)];
2241Graph.handleFactory[mxShapeFlowchartDocument2.prototype.cst.DOCUMENT2]=function(a){return[Graph.createHandle(a,["size"],function(a){var d=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",this.size))));return new mxPoint(a.x+3*a.width/4,a.y+(1-d)*a.height)},function(a,e){this.state.style.size=Math.max(0,Math.min(1,(a.y+a.height-e.y)/a.height))})]};
2242function mxShapeGCP2DoubleRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGCP2DoubleRect,mxShape);mxShapeGCP2DoubleRect.prototype.cst={SHAPE_DOUBLE_RECT:"mxgraph.gcp2.doubleRect"};mxShapeGCP2DoubleRect.prototype.paintVertexShape=function(a,d,e,b,c){b-=8;c-=8;a.translate(d,e);a.begin();a.roundrect(8,8,b,c,1,1);a.fillAndStroke();a.roundrect(0,0,b,c,1,1);a.fillAndStroke()};
2243mxCellRenderer.registerShape(mxShapeGCP2DoubleRect.prototype.cst.SHAPE_DOUBLE_RECT,mxShapeGCP2DoubleRect);mxShapeGCP2DoubleRect.prototype.constraints=mxRectangleShape.prototype.constraints;function mxShapeGCP2HexIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGCP2HexIcon,mxShape);mxShapeGCP2HexIcon.prototype.cst={HEX_ICON:"mxgraph.gcp2.hexIcon"};
2244mxShapeGCP2HexIcon.prototype.customProperties=[{name:"instNum",dispName:"Number of instances",type:"int",min:0,defVal:0},{name:"prType",dispName:"Instance Type",defVal:"standard",type:"enum",enumList:[{val:"standard",dispName:"Standard"},{val:"dynamic",dispName:"Dynamic"},{val:"multiple",dispName:"Multiple"},{val:"shared",dispName:"Shared"},{val:"replica",dispName:"Replica"},{val:"dynamic2",dispName:"Dynamic 2"},{val:"dynamic3",dispName:"Dynamic 3"},{val:"highmem",dispName:"High-Mem"},{val:"highcomp",
2245dispName:"High-Comp"},{val:"backend",dispName:"Backend"},{val:"input",dispName:"Input"}]},{name:"prIcon",dispName:"Instance Icon",defVal:"compute_engine",type:"enum",enumList:[{val:"compute_engine",dispName:"Compute Engine"},{val:"gpu",dispName:"GPU"},{val:"app_engine",dispName:"App Engine"},{val:"cloud_functions",dispName:"Cloud Functions"},{val:"container_engine",dispName:"Kubernetes Engine"},{val:"container_optimized_os",dispName:"Container-Optimized OS"},{val:"api_analytics",dispName:"API Analytics"},
2246{val:"apigee_sense",dispName:"Apigee Sense"},{val:"api_monetization",dispName:"API Monetization"},{val:"cloud_endpoints",dispName:"Cloud Endpoints"},{val:"apigee_api_platform",dispName:"Apigee API Platform"},{val:"developer_portal",dispName:"Developer Portal"},{val:"cloud_iam",dispName:"Cloud IAM"},{val:"beyondcorp",dispName:"BeyondCorp"},{val:"cloud_iam",dispName:"Cloud Resource Manager"},{val:"data_loss_prevention_api",dispName:"Data Loss Prevention API"},{val:"cloud_security_scanner",dispName:"Cloud Security Scanner"},
2247{val:"key_management_service",dispName:"Key Management Service"},{val:"identity_aware_proxy",dispName:"Identity-Aware Proxy"},{val:"security_key_enforcement",dispName:"Security Key Enforcement"},{val:"bigquery",dispName:"BigQuery"},{val:"cloud_datalab",dispName:"Cloud Datalab"},{val:"cloud_dataflow",dispName:"Cloud Dataflow"},{val:"cloud_pubsub",dispName:"Cloud Pub/Sub"},{val:"cloud_dataproc",dispName:"Cloud Dataproc"},{val:"genomics",dispName:"Genomics"},{val:"cloud_dataprep",dispName:"Cloud Dataprep"},
2248{val:"data_studio",dispName:"Data Studio"},{val:"transfer_appliance",dispName:"Transfer Appliance"},{val:"cloud_machine_learning",dispName:"Cloud Machine Learning"},{val:"cloud_natural_language_api",dispName:"Cloud Natural Language API"},{val:"cloud_vision_api",dispName:"Vision API"},{val:"cloud_translation_api",dispName:"Translation API"},{val:"cloud_speech_api",dispName:"Speech API"},{val:"cloud_jobs_api",dispName:"Jobs API"},{val:"cloud_video_intelligence_api",dispName:"Cloud Video Intelligence API"},
2249{val:"advanced_solutions_lab",dispName:"Advanced Solutions Lab"},{val:"cloud_iot_core",dispName:"Cloud IoT Core"},{val:"cloud_storage",dispName:"Cloud Storage"},{val:"cloud_sql",dispName:"Cloud SQL"},{val:"cloud_bigtable",dispName:"Cloud Bigtable"},{val:"cloud_spanner",dispName:"Cloud Spanner"},{val:"cloud_datastore",dispName:"Cloud Datastore"},{val:"persistent_disk",dispName:"Persistent Disk"},{val:"cloud_memorystore",dispName:"Cloud Memorystore"},{val:"cloud_filestore",dispName:"Cloud Filestore"},
2250{val:"stackdriver",dispName:"Stackdriver"},{val:"cloud_deployment_manager",dispName:"Monitoring"},{val:"cloud_deployment_manager",dispName:"Deployment Manager"},{val:"logging",dispName:"Logging"},{val:"placeholder",dispName:"Cloud Console"},{val:"error_reporting",dispName:"Error Reporting"},{val:"placeholder",dispName:"Cloud Shell"},{val:"trace",dispName:"Trace"},{val:"placeholder",dispName:"Cloud Mobile App"},{val:"profiler",dispName:"Profiler"},{val:"placeholder",dispName:"Billing API"},{val:"cloud_apis",
2251dispName:"Cloud APIs"},{val:"virtual_private_cloud",dispName:"Virtual Private Cloud"},{val:"dedicated_interconnect",dispName:"Dedicated Interconnect"},{val:"cloud_load_balancing",dispName:"Cloud Load Balancing"},{val:"cloud_dns",dispName:"Cloud DNS"},{val:"cloud_cdn",dispName:"Cloud CDN"},{val:"cloud_network",dispName:"Cloud Network"},{val:"cloud_external_ip_addresses",dispName:"Cloud External IP Addresses"},{val:"cloud_routes",dispName:"Cloud Routes"},{val:"cloud_firewall_rules",dispName:"Cloud Firewall Rules"},
2252{val:"cloud_vpn",dispName:"Cloud VPN"},{val:"cloud_router",dispName:"Cloud Router"},{val:"cloud_armor",dispName:"Cloud Armor"},{val:"standard_network_tier",dispName:"Standard Network Tier"},{val:"premium_network_tier",dispName:"Premium Network Tier"},{val:"partner_interconnect",dispName:"Partner Interconnect"},{val:"placeholder",dispName:"Cloud SDK"},{val:"container_builder",dispName:"Cloud Build"},{val:"cloud_tools_for_powershell",dispName:"Cloud Tools for Visual Studio"},{val:"placeholder",dispName:"Cloud Source Repositories"},
2253{val:"placeholder",dispName:"Maven App Engine Plugin"},{val:"placeholder",dispName:"Cloud Tools for Eclipse"},{val:"placeholder",dispName:"Cloud Tools for IntelliJ"},{val:"placeholder",dispName:"Cloud Test Lab"},{val:"cloud_tools_for_powershell",dispName:"Cloud Tools for PowerShell"},{val:"cloud_tools_for_powershell",dispName:"IDE Plugins"},{val:"container_registry",dispName:"Container Registry"},{val:"cloud_iot_edge",dispName:"Cloud IoT Edge"},{val:"cloud_firestore",dispName:"Cloud Firestore"},{val:"cloud_run",
2254dispName:"Cloud Run"},{val:"gke_on_prem",dispName:"GKE-on-Prem"},{val:"cloud_data_catalog",dispName:"Cloud Data Catalog"},{val:"cloud_data_fusion",dispName:"Cloud Data Fusion"},{val:"ai_hub",dispName:"AI Hub"},{val:"automl_video_intelligence",dispName:"AutoML Video Intelligence"},{val:"automl_natural_language",dispName:"AutoML Natural Language"},{val:"automl_tables",dispName:"AutoML Tables"},{val:"automl_translation",dispName:"AutoML Translation"},{val:"automl_vision",dispName:"AutoML Vision"},{val:"recommendations_ai",
2255dispName:"Recommendations AI"},{val:"cloud_inference_api",dispName:"Cloud Inference API"},{val:"cloud_service_mesh",dispName:"Cloud Service Mesh"},{val:"cloud_nat",dispName:"Cloud NAT"},{val:"traffic_director",dispName:"Traffic Director"},{val:"cloud_test_lab",dispName:"Cloud Test Lab"},{val:"cloud_code",dispName:"Cloud Code"},{val:"cloud_tasks",dispName:"Cloud Tasks"},{val:"placeholder",dispName:"Gradle App Engine Plugin"}]}];
2256mxShapeGCP2HexIcon.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=mxUtils.getValue(this.state.style,"prIcon","compute_engine"),g=mxUtils.getValue(this.state.style,"prType","");d=parseInt(mxUtils.getValue(this.state.style,"instNum",0));e=mxUtils.getValue(this.state.style,"fillColor","#ffffff");var h=mxUtils.getValue(this.state.style,"opacity","100");mxUtils.getValue(this.state.style,"strokeColor","none");var k=mxUtils.getValue(this.state.style,"strokeWidth",1),l=Math.min(b,c);
2257switch(g){case "dynamic":g=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_2");a.setAlpha(.5*h/100);a.setStrokeColor("none");g.drawShape(a,this,.21*b,.12*c,.58*b,.76*c);break;case "multiple":g=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_2");a.setAlpha(.5*h/100);a.setStrokeColor("none");g.drawShape(a,this,.21*b,.12*c,.58*b,.76*c);var m=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_3");a.setAlpha(.7*h/100);a.setStrokeColor("none");m.drawShape(a,this,.17*b,.13*c,.66*
2258b,.74*c);break;case "shared":g=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_1");this.style[mxConstants.STYLE_STROKEWIDTH]=.038*l;a.setAlpha(.4*h/100);a.setStrokeColor(e);a.setFillColor("none");g.drawShape(a,this,.02*b,0*c,.96*b,c);m=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_2");a.setAlpha(.7*h/100);m.drawShape(a,this,.14*b,.01*c,.72*b,.98*c);a.setAlpha(h/100);a.setFillColor("#ffffff");g.drawShape(a,this,.13*b,.12*c,.74*b,.76*c);this.style[mxConstants.STYLE_STROKEWIDTH]=
2259k;break;case "replica":g=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_1");this.style[mxConstants.STYLE_STROKEWIDTH]=.038*l;a.setAlpha(.4*h/100);a.setStrokeColor(e);a.setFillColor("none");g.drawShape(a,this,.02*b,0*c,.96*b,c);a.setAlpha(.7*h/100);g.drawShape(a,this,.075*b,.06*c,.85*b,.88*c);a.setAlpha(h/100);a.setFillColor("#ffffff");g.drawShape(a,this,.13*b,.12*c,.74*b,.76*c);this.style[mxConstants.STYLE_STROKEWIDTH]=k;break;case "dynamic2":g=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_2");
2260a.setAlpha(.5*h/100);a.setStrokeColor("none");g.drawShape(a,this,.14*b,.01*c,.72*b,.98*c);m=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_1");this.style[mxConstants.STYLE_STROKEWIDTH]=.01*l;a.setStrokeColor(e);a.setAlpha(h/100);a.setFillColor("#ffffff");m.drawShape(a,this,.13*b,.12*c,.74*b,.76*c);this.style[mxConstants.STYLE_STROKEWIDTH]=k;break;case "dynamic3":g=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_2");a.setStrokeColor("none");g.drawShape(a,this,.14*b,.01*c,.72*b,.98*
2261c);m=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_1");this.style[mxConstants.STYLE_STROKEWIDTH]=.01*l;a.setStrokeColor(e);a.setAlpha(h/100);a.setFillColor("#ffffff");m.drawShape(a,this,.13*b,.12*c,.74*b,.76*c);this.style[mxConstants.STYLE_STROKEWIDTH]=k;break;case "highmem":g=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_highmem");a.setAlpha(.5*h/100);a.setStrokeColor("none");g.drawShape(a,this,0,.56*c,b,.28*c);break;case "highcomp":g=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_highcomp");
2262a.setAlpha(.5*h/100);a.setStrokeColor("none");g.drawShape(a,this,0,.16*c,b,.28*c);break;case "backend":g=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_1");a.setFillColor("#FCC64D");g.drawShape(a,this,.12*b,.11*c,.76*b,.78*c);break;case "input":g=mxStencilRegistry.getStencil("mxgraph.gcp2.outline_blank_1"),a.setFillColor("#A5DA40"),g.drawShape(a,this,.12*b,.11*c,.76*b,.78*c)}a.setAlpha(h/100);f=mxStencilRegistry.getStencil("mxgraph.gcp2."+f);null!=f&&(a.setFillColor(e),a.setStrokeColor("none"),
2263f.drawShape(a,this,.17*b,.16*c,.66*b,.68*c));0<d&&(a.setFillColor("#ffffff"),a.setStrokeColor("#ffffff"),a.setStrokeWidth(.038*l),a.ellipse(.2*b,0,.18*b,.22*c),a.fillAndStroke(),a.setAlpha(.5*h/100),a.setStrokeColor(e),a.ellipse(.2*b,0,.18*b,.22*c),a.stroke(),a.setAlpha(h/100),a.setFontColor("#4E6B89"),a.setFontStyle(1),a.setFontSize(.1*Math.min(b,c)),a.text(.29*b,.11*c+1,0,0,d.toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0))};
2264mxCellRenderer.registerShape(mxShapeGCP2HexIcon.prototype.cst.HEX_ICON,mxShapeGCP2HexIcon);
2265mxShapeGCP2HexIcon.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.825,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.175,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.16),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.84),!1));a.push(new mxConnectionConstraint(new mxPoint(.66,.17),!1));a.push(new mxConnectionConstraint(new mxPoint(.66,.83),!1));a.push(new mxConnectionConstraint(new mxPoint(.34,.17),!1));a.push(new mxConnectionConstraint(new mxPoint(.34,
2266.83),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,.33),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,.67),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.33),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.67),!1));return a};function mxShapeGmdlPlayer(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGmdlPlayer,mxShape);mxShapeGmdlPlayer.prototype.cst={SHAPE_PLAYER:"mxgraph.gmdl.player"};
2267mxShapeGmdlPlayer.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.rect(0,0,b,c);a.fill();a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeGmdlPlayer.prototype.foreground=function(a,d,e,b,c){4<=c&&(a.setFillColor("#FFED00"),a.begin(),a.rect(0,0,.8*b,4),a.fill());14<=c&&33<=b&&(a.setFillColor("#717171"),a.begin(),a.rect(b-33,.5*c-7,4,14),a.fill(),a.begin(),a.rect(b-25,.5*c-7,4,14),a.fill())};mxCellRenderer.registerShape(mxShapeGmdlPlayer.prototype.cst.SHAPE_PLAYER,mxShapeGmdlPlayer);
2268function mxShapeGmdlSwitch(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGmdlSwitch,mxShape);mxShapeGmdlSwitch.prototype.cst={SHAPE_SWITCH:"mxgraph.gmdl.switch",STATE:"switchState",STATE_ON:"on",STATE_OFF:"off"};mxShapeGmdlSwitch.prototype.customProperties=[{name:"switchState",dispName:"State",type:"enum",defVal:"on",enumList:[{val:"on",dispName:"On"},{val:"off",dispName:"Off"}]}];
2269mxShapeGmdlSwitch.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=mxUtils.getValue(this.style,mxShapeGmdlSwitch.prototype.cst.STATE,mxShapeGmdlSwitch.prototype.cst.STATE_ON);this.background(a,d,e,b,c,f);a.setShadow(!0);this.foreground(a,d,e,b,c,f)};
2270mxShapeGmdlSwitch.prototype.background=function(a,d,e,b,c,f){a.begin();f===mxShapeGmdlSwitch.prototype.cst.STATE_ON?(a.save(),a.setAlpha("0.5"),a.moveTo(.135*b,.8*c),a.arcTo(.135*b,.3*c,0,0,1,.135*b,.2*c),a.lineTo(.675*b,.2*c),a.arcTo(.135*b,.3*c,0,0,1,.675*b,.8*c),a.close(),a.fillAndStroke(),a.restore()):(a.setFillColor("#BCBBBB"),a.moveTo(.225*b,.8*c),a.arcTo(.135*b,.3*c,0,0,1,.225*b,.2*c),a.lineTo(.865*b,.2*c),a.arcTo(.135*b,.3*c,0,0,1,.865*b,.8*c),a.close(),a.fillAndStroke())};
2271mxShapeGmdlSwitch.prototype.foreground=function(a,d,e,b,c,f){a.begin();f===mxShapeGmdlSwitch.prototype.cst.STATE_ON?a.ellipse(.36*b,0,.64*b,c):(a.setFillColor("#F1F1F1"),a.ellipse(0,0,.64*b,c));a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeGmdlSwitch.prototype.cst.SHAPE_SWITCH,mxShapeGmdlSwitch);function mxShapeGmdlMarginRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGmdlMarginRect,mxShape);
2272mxShapeGmdlMarginRect.prototype.cst={SHAPE_MARGIN_RECT:"mxgraph.gmdl.marginRect",MARGIN:"rectMargin",MARGIN_TOP:"rectMarginTop",MARGIN_LEFT:"rectMarginLeft",MARGIN_BOTTOM:"rectMarginBottom",MARGIN_RIGHT:"rectMarginRight"};
2273mxShapeGmdlMarginRect.prototype.customProperties=[{name:"rectMargin",dispName:"Margin",type:"float",min:0,defVal:0},{name:"rectMarginTop",dispName:"Margin Top",type:"float",defVal:0},{name:"rectMarginLeft",dispName:"Margin Left",type:"float",defVal:0},{name:"rectMarginBottom",dispName:"Margin Bottom",type:"float",defVal:0},{name:"rectMarginRight",dispName:"Margin Right",type:"float",defVal:0}];
2274mxShapeGmdlMarginRect.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};
2275mxShapeGmdlMarginRect.prototype.background=function(a,d,e,b,c,f){d=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlMarginRect.prototype.cst.MARGIN,"0"));var g=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlMarginRect.prototype.cst.MARGIN_TOP,"0"));f=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlMarginRect.prototype.cst.MARGIN_LEFT,"0"));e=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlMarginRect.prototype.cst.MARGIN_BOTTOM,"0"));var h=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlMarginRect.prototype.cst.MARGIN_RIGHT,
2276"0"));f=d+f;g=d+g;b=b-h-f-d;c=c-e-g-d;0<b&&0<c&&(a.begin(),a.rect(f,g,b,c),a.fillAndStroke())};mxCellRenderer.registerShape(mxShapeGmdlMarginRect.prototype.cst.SHAPE_MARGIN_RECT,mxShapeGmdlMarginRect);function mxShapeGmdlSliderNormal(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGmdlSliderNormal,mxShape);mxShapeGmdlSliderNormal.prototype.cst={SHAPE_SLIDER_NORMAL:"mxgraph.gmdl.sliderNormal",HANDLE_SIZE:"handleSize"};
2277mxShapeGmdlSliderNormal.prototype.customProperties=[{name:"handleSize",dispName:"Handle Size",type:"float",min:0,defVal:10}];mxShapeGmdlSliderNormal.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0)};
2278mxShapeGmdlSliderNormal.prototype.background=function(a,d,e,b,c){d=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderNormal.prototype.cst.HANDLE_SIZE,"10"));a.ellipse(0,.5*c-.5*d,d,d);a.stroke();a.begin();a.moveTo(d,.5*c);a.lineTo(b,.5*c);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeGmdlSliderNormal.prototype.cst.SHAPE_SLIDER_NORMAL,mxShapeGmdlSliderNormal);
2279function mxShapeGmdlSlider2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGmdlSlider2,mxShape);mxShapeGmdlSlider2.prototype.cst={SHAPE_SLIDER:"mxgraph.gmdl.slider2",BAR_POS:"barPos",HANDLE_SIZE:"handleSize"};mxShapeGmdlSlider2.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"float",min:0,defVal:40},{name:"handleSize",dispName:"Handle Size",type:"float",min:0,defVal:10}];
2280mxShapeGmdlSlider2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0)};
2281mxShapeGmdlSlider2.prototype.background=function(a,d,e,b,c){d=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSlider2.prototype.cst.HANDLE_SIZE,"10"));e=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSlider2.prototype.cst.BAR_POS,"40"))/100;e=Math.max(0,Math.min(1,e));a.save();a.setStrokeColor("#bbbbbb");a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.fillAndStroke();a.restore();a.begin();a.moveTo(0,.5*c);a.lineTo(e*b,.5*c);a.fillAndStroke();a.begin();a.ellipse(e*b-.5*d,.5*c-.5*d,d,d);a.fillAndStroke()};
2282mxCellRenderer.registerShape(mxShapeGmdlSlider2.prototype.cst.SHAPE_SLIDER,mxShapeGmdlSlider2);mxShapeGmdlSlider2.prototype.constraints=null;
2283Graph.handleFactory[mxShapeGmdlSlider2.prototype.cst.SHAPE_SLIDER]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"barPos",.4))));return new mxPoint(a.x+d*a.width/100,a.y+a.height/2)},function(a,e){this.state.style.barPos=Math.round(100*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/100})]};
2284function mxShapeGmdlSliderFocused(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGmdlSliderFocused,mxShape);mxShapeGmdlSliderFocused.prototype.cst={SHAPE_SLIDER_FOCUSED:"mxgraph.gmdl.sliderFocused",BAR_POS:"barPos",HANDLE_SIZE:"handleSize"};mxShapeGmdlSliderFocused.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"float",min:0,defVal:40},{name:"handleSize",dispName:"Handle Size",type:"float",min:0,defVal:10}];
2285mxShapeGmdlSliderFocused.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0)};
2286mxShapeGmdlSliderFocused.prototype.background=function(a,d,e,b,c){d=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderFocused.prototype.cst.HANDLE_SIZE,"10"));e=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderFocused.prototype.cst.BAR_POS,"40"))/100;var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#ffffff");e=Math.max(0,Math.min(1,e));a.save();a.setStrokeColor("#bbbbbb");a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.fillAndStroke();a.restore();a.begin();a.moveTo(0,.5*
2287c);a.lineTo(e*b,.5*c);a.fillAndStroke();a.begin();a.ellipse(e*b-.167*d,.5*c-.167*d,.33*d,.33*d);a.fillAndStroke();a.setFillColor(f);a.setAlpha(.15);a.begin();a.ellipse(e*b-.5*d,.5*c-.5*d,d,d);a.fill()};mxCellRenderer.registerShape(mxShapeGmdlSliderFocused.prototype.cst.SHAPE_SLIDER_FOCUSED,mxShapeGmdlSliderFocused);mxShapeGmdlSliderFocused.prototype.constraints=null;
2288Graph.handleFactory[mxShapeGmdlSliderFocused.prototype.cst.SHAPE_SLIDER_FOCUSED]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"barPos",.4))));return new mxPoint(a.x+d*a.width/100,a.y+a.height/2)},function(a,e){this.state.style.barPos=Math.round(100*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/100})]};
2289function mxShapeGmdlSliderDisabled(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGmdlSliderDisabled,mxShape);mxShapeGmdlSliderDisabled.prototype.cst={SHAPE_SLIDER_DISABLED:"mxgraph.gmdl.sliderDisabled",HANDLE_POSITION:"hPos",HANDLE_SIZE:"handleSize"};
2290mxShapeGmdlSliderDisabled.prototype.customProperties=[{name:"hPos",dispName:"Handle Position",type:"float",min:0,defVal:40},{name:"handleSize",dispName:"Handle Size",type:"float",min:0,defVal:10}];mxShapeGmdlSliderDisabled.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0)};
2291mxShapeGmdlSliderDisabled.prototype.background=function(a,d,e,b,c){e=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderDisabled.prototype.cst.HANDLE_SIZE,"10"));d=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderDisabled.prototype.cst.HANDLE_POSITION,"50"))/100;d=Math.max(d,0);d=Math.min(d,1);a.ellipse(b*d-.5*e,.5*(c-e),e,e);a.fillAndStroke();e=b*d-7;d=b*d+7;0<e&&(a.begin(),a.moveTo(0,.5*c),a.lineTo(e,.5*c),a.stroke());d<b&&(a.begin(),a.moveTo(d,.5*c),a.lineTo(b,.5*c),a.stroke())};
2292mxCellRenderer.registerShape(mxShapeGmdlSliderDisabled.prototype.cst.SHAPE_SLIDER_DISABLED,mxShapeGmdlSliderDisabled);function mxShapeGmdlSliderDisabled2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGmdlSliderDisabled2,mxShape);mxShapeGmdlSliderDisabled2.prototype.cst={SHAPE_SLIDER_DISABLED:"mxgraph.gmdl.sliderDisabled2",HANDLE_POSITION:"hPos",HANDLE_SIZE:"handleSize"};
2293mxShapeGmdlSliderDisabled2.prototype.customProperties=[{name:"hPos",dispName:"Handle Position",type:"float",min:0,defVal:"40"},{name:"handleSize",dispName:"Handle Size",type:"float",min:0,defVal:"10"}];mxShapeGmdlSliderDisabled2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0)};
2294mxShapeGmdlSliderDisabled2.prototype.background=function(a,d,e,b,c){e=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderDisabled2.prototype.cst.HANDLE_SIZE,"10"));d=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderDisabled2.prototype.cst.HANDLE_POSITION,"50"))/100;d=Math.min(Math.max(d,0),1);a.ellipse(b*d-.5*e,.5*(c-e),e,e);a.fillAndStroke();e=b*d-7;d=b*d+7;0<e&&(a.begin(),a.moveTo(0,.5*c),a.lineTo(e,.5*c),a.stroke());d<b&&(a.begin(),a.moveTo(d,.5*c),a.lineTo(b,.5*c),a.stroke())};
2295mxCellRenderer.registerShape(mxShapeGmdlSliderDisabled2.prototype.cst.SHAPE_SLIDER_DISABLED,mxShapeGmdlSliderDisabled2);mxShapeGmdlSlider2.prototype.constraints=null;
2296Graph.handleFactory[mxShapeGmdlSliderDisabled2.prototype.cst.SHAPE_SLIDER_DISABLED]=function(a){return[Graph.createHandle(a,["hPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"hPos",.4))));return new mxPoint(a.x+d*a.width/100,a.y+a.height/2)},function(a,e){this.state.style.hPos=Math.round(100*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/100})]};
2297function mxShapeGmdlSliderDiscrete(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGmdlSliderDiscrete,mxShape);mxShapeGmdlSliderDiscrete.prototype.cst={SHAPE_DISCRETE:"mxgraph.gmdl.sliderDiscrete",BAR_POS:"barPos",HANDLE_SIZE:"handleSize"};mxShapeGmdlSliderDiscrete.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"int",min:0,defVal:"40"},{name:"handleSize",dispName:"Handle Size",type:"float",min:0,defVal:"10"}];
2298mxShapeGmdlSliderDiscrete.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0)};
2299mxShapeGmdlSliderDiscrete.prototype.background=function(a,d,e,b,c){parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderDiscrete.prototype.cst.HANDLE_SIZE,"10"));d=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderDiscrete.prototype.cst.BAR_POS,"40"))/100;e=parseFloat(mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"12"));var f=mxUtils.getValue(this.style,mxConstants.STYLE_FONTCOLOR,"#000000");d=Math.max(0,Math.min(1,d));a.save();a.setStrokeColor("#bbbbbb");a.begin();a.moveTo(0,.5*
2300c+22.5);a.lineTo(b,.5*c+22.5);a.fillAndStroke();a.restore();a.begin();a.moveTo(0,.5*c+22.5);a.lineTo(d*b,.5*c+22.5);a.fillAndStroke();a.begin();a.moveTo(d*b,.5*c+15.5);a.lineTo(d*b-10.5,.5*c+2.5);a.arcTo(15,15,0,0,1,d*b,.5*c-22.5);a.arcTo(15,15,0,0,1,d*b+10.5,.5*c+2.5);a.close();a.fillAndStroke();a.setFontSize(e);a.setFontColor(f);a.text(d*b,.5*c-9,0,0,Math.round(100*d).toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
2301mxCellRenderer.registerShape(mxShapeGmdlSliderDiscrete.prototype.cst.SHAPE_DISCRETE,mxShapeGmdlSliderDiscrete);mxShapeGmdlSliderDiscrete.prototype.constraints=null;
2302Graph.handleFactory[mxShapeGmdlSliderDiscrete.prototype.cst.SHAPE_DISCRETE]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"barPos",.4))));return new mxPoint(a.x+d*a.width/100,a.y+a.height/2+22.5)},function(a,e){this.state.style.barPos=Math.round(100*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/100})]};
2303function mxShapeGmdlSliderDiscreteDots(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeGmdlSliderDiscreteDots,mxShape);mxShapeGmdlSliderDiscreteDots.prototype.cst={SHAPE_DISCRETE_DOTS:"mxgraph.gmdl.sliderDiscreteDots",BAR_POS:"barPos",HANDLE_SIZE:"handleSize"};
2304mxShapeGmdlSliderDiscreteDots.prototype.customProperties=[{name:"barPos",dispName:"Handle Position",type:"int",min:0,defVal:"40"},{name:"handleSize",dispName:"Handle Size",type:"float",min:0,defVal:"10"}];mxShapeGmdlSliderDiscreteDots.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!0)};
2305mxShapeGmdlSliderDiscreteDots.prototype.background=function(a,d,e,b,c){parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderDiscreteDots.prototype.cst.HANDLE_SIZE,"10"));d=parseFloat(mxUtils.getValue(this.style,mxShapeGmdlSliderDiscreteDots.prototype.cst.BAR_POS,"40"))/100;e=parseFloat(mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"12"));var f=mxUtils.getValue(this.style,mxConstants.STYLE_FONTCOLOR,"#000000"),g=mxUtils.getValue(this.style,"bright","1");d=Math.max(0,Math.min(1,d));a.save();
2306a.setStrokeColor("#bebebe");a.begin();a.moveTo(0,.5*c+22.5);a.lineTo(b,.5*c+22.5);a.fillAndStroke();a.restore();.1>=d&&a.setFillColor("#bebebe");a.begin();a.moveTo(0,.5*c+22.5);a.lineTo(d*b,.5*c+22.5);a.fillAndStroke();a.begin();a.moveTo(d*b,.5*c+15.5);a.lineTo(d*b-10.5,.5*c+2.5);a.arcTo(15,15,0,0,1,d*b,.5*c-22.5);a.arcTo(15,15,0,0,1,d*b+10.5,.5*c+2.5);a.close();a.fill();"1"==g?a.setFillColor("#000000"):a.setFillColor("#ffffff");a.ellipse(-1.5,.5*c+21,3,3);a.fill();a.ellipse(.2*b-1.5,.5*c+21,3,3);
2307a.fill();a.ellipse(.4*b-1.5,.5*c+21,3,3);a.fill();a.ellipse(.6*b-1.5,.5*c+21,3,3);a.fill();a.ellipse(.8*b-1.5,.5*c+21,3,3);a.fill();a.ellipse(b-1.5,.5*c+21,3,3);a.fill();a.setFontSize(e);a.setFontColor(f);a.text(d*b,.5*c-9,0,0,Math.round(100*d).toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxCellRenderer.registerShape(mxShapeGmdlSliderDiscreteDots.prototype.cst.SHAPE_DISCRETE_DOTS,mxShapeGmdlSliderDiscreteDots);mxShapeGmdlSliderDiscreteDots.prototype.constraints=null;
2308Graph.handleFactory[mxShapeGmdlSliderDiscreteDots.prototype.cst.SHAPE_DISCRETE_DOTS]=function(a){return[Graph.createHandle(a,["barPos"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"barPos",.4))));return new mxPoint(a.x+d*a.width/100,a.y+a.height/2+22.5)},function(a,e){this.state.style.barPos=Math.round(.05*Math.max(0,Math.min(100,100*(e.x-a.x)/a.width)))/.05})]};
2309function mxShapeGmdlProgressBar(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx1=.8}mxUtils.extend(mxShapeGmdlProgressBar,mxShape);mxShapeGmdlProgressBar.prototype.cst={PROGRESS_BAR:"mxgraph.gmdl.progressBar"};mxShapeGmdlProgressBar.prototype.customProperties=[{name:"dx1",dispName:"Handle Position",type:"int",min:0,defVal:.8}];
2310mxShapeGmdlProgressBar.prototype.paintVertexShape=function(a,d,e,b,c){var f=b*Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx1",this.dx1))));a.translate(d,e);a.save();a.setStrokeColor("#aaaaaa");a.begin();a.moveTo(0,.5*c);a.lineTo(b,.5*c);a.stroke();a.restore();a.setShadow(!1);a.begin();a.moveTo(0,.5*c);a.lineTo(f,.5*c);a.stroke()};mxCellRenderer.registerShape(mxShapeGmdlProgressBar.prototype.cst.PROGRESS_BAR,mxShapeGmdlProgressBar);mxShapeGmdlProgressBar.prototype.constraints=null;
2311Graph.handleFactory[mxShapeGmdlProgressBar.prototype.cst.PROGRESS_BAR]=function(a){var d=[Graph.createHandle(a,["dx1"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx1",this.dx1))));return new mxPoint(a.x+b*a.width,a.y+a.height/2)},function(a,b){this.state.style.dx1=Math.round(100*Math.max(0,Math.min(1,(b.x-a.x)/a.width)))/100})];a=Graph.createHandle(a,["dx2"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx1))));
2312return new mxPoint(a.x+b*a.width,a.y+a.height/2)},function(a,b){this.state.style.dx2=Math.round(100*Math.max(0,Math.min(1,(b.x-a.x)/a.width)))/100});d.push(a);return d};function mxShapeIBMBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeIBMBox,mxShape);mxShapeIBMBox.prototype.cst={IBM_BOX:"mxgraph.ibm.box"};
2313mxShapeIBMBox.prototype.customProperties=[{name:"prType",dispName:"Box Type",defVal:"cloud",type:"enum",enumList:[{val:"cloud",dispName:"IBM Cloud"},{val:"vpc",dispName:"VPC"},{val:"region",dispName:"Region"},{val:"zone",dispName:"Zone"},{val:"subnet",dispName:"Subnet ACL"},{val:"public",dispName:"Public Network"},{val:"enterprise",dispName:"Enterprise Network"},{val:"classic",dispName:"Classic Infrastructure"}]}];
2314mxShapeIBMBox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.rect(0,0,b,c);a.fillAndStroke();d=mxUtils.getValue(this.state.style,"strokeColor","none");a.setFillColor(d);a.setStrokeColor("none");switch(mxUtils.getValue(this.state.style,"prType","")){case "cloud":d=mxStencilRegistry.getStencil("mxgraph.ibm.cloudtag");d.drawShape(a,this,0,0,25,25);break;case "vpc":d=mxStencilRegistry.getStencil("mxgraph.ibm.vpctag");d.drawShape(a,this,0,0,25,25);break;case "region":d=mxStencilRegistry.getStencil("mxgraph.ibm.regiontag");
2315d.drawShape(a,this,0,0,25,25);break;case "zone":d=mxStencilRegistry.getStencil("mxgraph.ibm.zonetag");d.drawShape(a,this,0,0,25,25);break;case "subnet":d=mxStencilRegistry.getStencil("mxgraph.ibm.subnettag");d.drawShape(a,this,0,0,25,25);break;case "public":d=mxStencilRegistry.getStencil("mxgraph.ibm.publictag");d.drawShape(a,this,0,0,25,25);break;case "enterprise":d=mxStencilRegistry.getStencil("mxgraph.ibm.enterprisetag");d.drawShape(a,this,0,0,25,25);break;case "classic":d=mxStencilRegistry.getStencil("mxgraph.ibm.classictag"),
2316d.drawShape(a,this,0,0,25,25)}};mxCellRenderer.registerShape(mxShapeIBMBox.prototype.cst.IBM_BOX,mxShapeIBMBox);function mxShapeInfographicNumEntryVert(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=.5}mxUtils.extend(mxShapeInfographicNumEntryVert,mxActor);mxShapeInfographicNumEntryVert.prototype.cst={NUM_ENTRY_VERT:"mxgraph.infographic.numberedEntryVert"};
2317mxShapeInfographicNumEntryVert.prototype.customProperties=[{name:"dy",dispName:"Circle Size",min:0,defVal:25}];
2318mxShapeInfographicNumEntryVert.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));d=Math.min(d,b-10,c-5);a.ellipse(.5*b-.5*d,0,d,d);a.fillAndStroke();a.begin();a.moveTo(0,.5*d);a.lineTo(.5*b-.5*d-5,.5*d);a.arcTo(.5*d+5,.5*d+5,0,0,0,.5*b+.5*d+5,.5*d);a.lineTo(b,.5*d);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};
2319mxCellRenderer.registerShape(mxShapeInfographicNumEntryVert.prototype.cst.NUM_ENTRY_VERT,mxShapeInfographicNumEntryVert);
2320Graph.handleFactory[mxShapeInfographicNumEntryVert.prototype.cst.NUM_ENTRY_VERT]=function(a){return[Graph.createHandle(a,["dy"],function(a){var d=Math.max(0,Math.min(a.width,a.width,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width/2,a.y+d)},function(a,e){this.state.style.dy=Math.round(100*Math.max(0,Math.min(a.height,a.width,e.y-a.y)))/100})]};
2321mxShapeInfographicNumEntryVert.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));d=Math.min(b,d-10,e-5);a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*d));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,.5*d));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,0,.25*d));
2322a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,0,.25*d));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));return a};function mxShapeInfographicBendingArch(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.startAngle=.25;this.endAngle=.75;this.arcWidth=.5}mxUtils.extend(mxShapeInfographicBendingArch,mxActor);mxShapeInfographicBendingArch.prototype.cst={BENDING_ARCH:"mxgraph.infographic.bendingArch"};
2323mxShapeInfographicBendingArch.prototype.customProperties=[{name:"startAngle",dispName:"Start Angle",min:0,max:1,defVal:.75},{name:"endAngle",dispName:"End Angle",min:0,max:1,defVal:.25},{name:"arcWidth",dispName:"Arc Width",min:0,max:1,defVal:.25}];
2324mxShapeInfographicBendingArch.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"startAngle",this.startAngle)))),g=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"endAngle",this.endAngle)))),h=1-Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arcWidth",this.arcWidth))));d=.5*b;e=.5*c;var k=d*h,h=e*h,l=d+Math.sin(f)*d,m=e-Math.cos(f)*e,n=d+Math.sin(f)*k,p=e-Math.cos(f)*h,
2325q=d+Math.sin(g)*d,t=e-Math.cos(g)*e,u=d+Math.sin(g)*k,v=e-Math.cos(g)*h,g=g-f;0>g&&(g+=2*Math.PI);f=0;g>Math.PI&&(f=1);var g=k-5,r=h-5;a.ellipse(.5*b-g,.5*c-r,2*g,2*r);a.fillAndStroke();a.begin();a.moveTo(l,m);a.arcTo(d,e,0,f,1,q,t);a.lineTo(u,v);a.arcTo(k,h,0,f,0,n,p);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeInfographicBendingArch.prototype.cst.BENDING_ARCH,mxShapeInfographicBendingArch);mxShapeInfographicBendingArch.prototype.constraints=null;
2326Graph.handleFactory[mxShapeInfographicBendingArch.prototype.cst.BENDING_ARCH]=function(a){var d=[Graph.createHandle(a,["startAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"startAngle",this.startAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,c){var b=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(c.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,
2327Math.min(1,(c.y-a.y-.5*a.height)/(.5*a.height))))/100)/Math.PI;0>b&&(b=1+b);this.state.style.startAngle=b})],e=Graph.createHandle(a,["endAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"endAngle",this.endAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,c){var b=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(c.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,
2328Math.min(1,(c.y-a.y-.5*a.height)/(.5*a.height))))/100)/Math.PI;0>b&&(b=1+b);this.state.style.endAngle=b});d.push(e);a=Graph.createHandle(a,["arcWidth"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"arcWidth",this.arcWidth))));return new mxPoint(a.x+a.width/2,a.y+b*a.height*.5)},function(a,c){this.state.style.arcWidth=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,(c.y-a.y)/(.5*a.height))))/100});d.push(a);return d};
2329function mxShapeInfographicParallelogram(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=10}mxUtils.extend(mxShapeInfographicParallelogram,mxActor);mxShapeInfographicParallelogram.prototype.cst={PARALLELOGRAM:"mxgraph.infographic.parallelogram"};mxShapeInfographicParallelogram.prototype.customProperties=[{name:"dx",dispName:"Angle",min:0,defVal:15}];
2330mxShapeInfographicParallelogram.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(.5*b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));a.begin();a.moveTo(0,c);a.lineTo(2*d,0);a.lineTo(b,0);a.lineTo(b-2*d,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeInfographicParallelogram.prototype.cst.PARALLELOGRAM,mxShapeInfographicParallelogram);
2331Graph.handleFactory[mxShapeInfographicParallelogram.prototype.cst.PARALLELOGRAM]=function(a){return[Graph.createHandle(a,["dx"],function(a){var d=Math.max(0,Math.min(a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+d,a.y+a.height/2)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width/2,e.x-a.x)))/100})]};
2332mxShapeInfographicParallelogram.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(.5*d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),c=d-2*b;a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2*b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2*b+.5*c,0));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,b,0));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
23330),!1,null,d-2*b,e));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,d-b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*c,e));return a};function mxShapeInfographicRibbonRolled(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=185;this.dy=15}mxUtils.extend(mxShapeInfographicRibbonRolled,mxActor);mxShapeInfographicRibbonRolled.prototype.cst={RIBBON_ROLLED:"mxgraph.infographic.ribbonRolled"};
2334mxShapeInfographicRibbonRolled.prototype.customProperties=[{name:"dx",dispName:"Roll Length",min:0,defVal:185},{name:"dy",dispName:"Ribbon Width",min:0,defVal:15}];
2335mxShapeInfographicRibbonRolled.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(.5*c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));a.begin();a.moveTo(0,e);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(b,e);a.lineTo(b,c-e);a.lineTo(b-d,c);a.lineTo(b-d,c-e);a.lineTo(0,c-e);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillAlpha("0.2");a.setFillColor("#000000");a.begin();a.moveTo(0,
2336e);a.lineTo(d,0);a.lineTo(d,e);a.close();a.moveTo(b,c-e);a.lineTo(b-d,c);a.lineTo(b-d,c-e);a.close();a.fill();a.begin();a.moveTo(0,e);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(b,e);a.lineTo(b,c-e);a.lineTo(b-d,c);a.lineTo(b-d,c-e);a.lineTo(0,c-e);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeInfographicRibbonRolled.prototype.cst.RIBBON_ROLLED,mxShapeInfographicRibbonRolled);
2337Graph.handleFactory[mxShapeInfographicRibbonRolled.prototype.cst.RIBBON_ROLLED]=function(a){return[Graph.createHandle(a,["dx","dy"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+d,a.y+b)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width,e.x-a.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,
2338Math.min(a.height/2,e.y-a.y)))/100})]};
2339mxShapeInfographicRibbonRolled.prototype.getConstraints=function(a,d,e){a=[];parseFloat(mxUtils.getValue(this.style,"dx",this.dx));var b=Math.max(0,Math.min(.5*e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e-=b;a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(1,
23400),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,0,e));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,e));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,0,e));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,0,-b));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};
2341function mxShapeInfographicRibbonDoubleFolded(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=25;this.dy=15}mxUtils.extend(mxShapeInfographicRibbonDoubleFolded,mxActor);mxShapeInfographicRibbonDoubleFolded.prototype.cst={RIBBON_DOUBLE_FOLDED:"mxgraph.infographic.ribbonDoubleFolded"};mxShapeInfographicRibbonDoubleFolded.prototype.customProperties=[{name:"dx",dispName:"Fold Length",min:0,defVal:25},{name:"dy",dispName:"Ribbon Width",min:0,defVal:15}];
2342mxShapeInfographicRibbonDoubleFolded.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(.5*c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));a.begin();a.moveTo(0,e);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(b,e);a.lineTo(b,c-e);a.lineTo(b-d,c);a.lineTo(b-d,c-e);a.lineTo(0,c-e);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillAlpha("0.2");a.setFillColor("#000000");a.begin();a.moveTo(0,
2343e);a.lineTo(d,0);a.lineTo(d,c-2*e);a.lineTo(0,c-e);a.close();a.moveTo(b,c-e);a.lineTo(b-d,c);a.lineTo(b-d,c-e);a.close();a.fill();a.begin();a.moveTo(0,e);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(b,e);a.lineTo(b,c-e);a.lineTo(b-d,c);a.lineTo(b-d,c-e);a.lineTo(0,c-e);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeInfographicRibbonDoubleFolded.prototype.cst.RIBBON_DOUBLE_FOLDED,mxShapeInfographicRibbonDoubleFolded);
2344Graph.handleFactory[mxShapeInfographicRibbonDoubleFolded.prototype.cst.RIBBON_DOUBLE_FOLDED]=function(a){return[Graph.createHandle(a,["dx","dy"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+d,a.y+b)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width,e.x-a.x)))/100;this.state.style.dy=Math.round(100*
2345Math.max(0,Math.min(a.height/2,e.y-a.y)))/100})]};
2346mxShapeInfographicRibbonDoubleFolded.prototype.getConstraints=function(a,d,e){a=[];parseFloat(mxUtils.getValue(this.style,"dx",this.dx));d=Math.max(0,Math.min(.5*e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,d));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,0,d));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,d));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,0,d));a.push(new mxConnectionConstraint(new mxPoint(1,
23470),!1,null,0,d));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,e-d));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,0,e-d));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,e-d));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,0,e-d));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-d));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};
2348function mxShapeInfographicRibbonFrontFolded(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.notch=this.dy=this.dx=.5}mxUtils.extend(mxShapeInfographicRibbonFrontFolded,mxActor);mxShapeInfographicRibbonFrontFolded.prototype.cst={RIBBON_FRONT_FOLDED:"mxgraph.infographic.ribbonFrontFolded"};
2349mxShapeInfographicRibbonFrontFolded.prototype.customProperties=[{name:"dx",dispName:"Fold Length",min:0,defVal:25},{name:"dy",dispName:"Ribbon Width",min:0,defVal:15},{name:"notch",dispName:"Notch",min:0,defVal:15}];
2350mxShapeInfographicRibbonFrontFolded.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(.5*c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));var f=Math.max(0,Math.min(b-d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.begin();a.moveTo(0,e);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(b,e);a.lineTo(b-f,(c-e)/2+e);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke();
2351a.setShadow(!1);a.setFillAlpha("0.2");a.setFillColor("#000000");a.begin();a.moveTo(0,e);a.lineTo(d,0);a.lineTo(d,c-e);a.lineTo(0,c);a.close();a.fill();a.begin();a.moveTo(0,e);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(b,e);a.lineTo(b-f,(c-e)/2+e);a.lineTo(b,c);a.lineTo(0,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeInfographicRibbonFrontFolded.prototype.cst.RIBBON_FRONT_FOLDED,mxShapeInfographicRibbonFrontFolded);
2352Graph.handleFactory[mxShapeInfographicRibbonFrontFolded.prototype.cst.RIBBON_FRONT_FOLDED]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),c=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+b,a.y+c)},function(a,b){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width,b.x-a.x)))/100;this.state.style.dy=Math.round(100*
2353Math.max(0,Math.min(a.height/2,b.y-a.y)))/100})];a=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),c=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+a.width-c,a.y+b+.5*(a.height-b))},function(a,b){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width,a.width+a.x-b.x)))/100});d.push(a);return d};
2354mxShapeInfographicRibbonFrontFolded.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),c=Math.max(0,Math.min(.5*e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),b=Math.max(0,Math.min(d-b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,c));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,0,c));a.push(new mxConnectionConstraint(new mxPoint(.5,
23550),!1,null,0,c));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,0,c));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,.5*(e+c)));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),
2356!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(e+c)));return a};function mxShapeInfographicRibbonBackFolded(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.notch=this.dy=this.dx=.5}mxUtils.extend(mxShapeInfographicRibbonBackFolded,mxActor);mxShapeInfographicRibbonBackFolded.prototype.cst={RIBBON_BACK_FOLDED:"mxgraph.infographic.ribbonBackFolded"};
2357mxShapeInfographicRibbonBackFolded.prototype.customProperties=[{name:"dx",dispName:"Fold Length",min:0,defVal:25},{name:"dy",dispName:"Ribbon Width",min:0,defVal:15},{name:"notch",dispName:"Notch",min:0,defVal:15}];
2358mxShapeInfographicRibbonBackFolded.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(.5*c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));var f=Math.max(0,Math.min(b-d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.begin();a.moveTo(0,e);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(b,e);a.lineTo(b-f,(c-e)/2+e);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke();a.setShadow(!1);
2359a.setFillAlpha("0.2");a.setFillColor("#000000");a.begin();a.moveTo(0,e);a.lineTo(d,0);a.lineTo(d,e);a.close();a.fill();a.begin();a.moveTo(0,e);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(b,e);a.lineTo(b-f,(c-e)/2+e);a.lineTo(b,c);a.lineTo(0,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeInfographicRibbonBackFolded.prototype.cst.RIBBON_BACK_FOLDED,mxShapeInfographicRibbonBackFolded);
2360Graph.handleFactory[mxShapeInfographicRibbonBackFolded.prototype.cst.RIBBON_BACK_FOLDED]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),c=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+b,a.y+c)},function(a,b){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width,b.x-a.x)))/100;this.state.style.dy=Math.round(100*
2361Math.max(0,Math.min(a.height/2,b.y-a.y)))/100})];a=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),c=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+a.width-c,a.y+b+.5*(a.height-b))},function(a,b){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width,a.width+a.x-b.x)))/100});d.push(a);return d};
2362mxShapeInfographicRibbonBackFolded.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),c=Math.max(0,Math.min(.5*e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),b=Math.max(0,Math.min(d-b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,c));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,0,c));a.push(new mxConnectionConstraint(new mxPoint(.5,
23630),!1,null,0,c));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,0,c));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,.5*(e+c)));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),
2364!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(e+c)));return a};function mxShapeInfographicBanner(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.notch=this.dy=this.dx=.5}mxUtils.extend(mxShapeInfographicBanner,mxActor);mxShapeInfographicBanner.prototype.cst={BANNER:"mxgraph.infographic.banner"};
2365mxShapeInfographicBanner.prototype.customProperties=[{name:"dx",dispName:"Fold Length",min:0,defVal:25},{name:"dy",dispName:"Ribbon Width",min:0,defVal:15},{name:"notch",dispName:"Notch",min:0,defVal:15}];
2366mxShapeInfographicBanner.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b/2,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(.5*c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));d=Math.min(b/2-2*e,d);f=Math.min(d,f);a.begin();a.moveTo(0,e);a.lineTo(d,e);a.lineTo(d,0);a.lineTo(b-d,0);a.lineTo(b-d,e);a.lineTo(b,e);a.lineTo(b-f,.5*(c-e)+
2367e);a.lineTo(b,c);a.lineTo(b-d-2*e,c);a.lineTo(b-d-2*e,c-e);a.lineTo(d+2*e,c-e);a.lineTo(d+2*e,c);a.lineTo(0,c);a.lineTo(f,.5*(c-e)+e);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillAlpha("0.2");a.setFillColor("#000000");a.begin();a.moveTo(0,e);a.lineTo(d,e);a.lineTo(d,c-e);a.lineTo(d+2*e,c);a.lineTo(0,c);a.lineTo(f,.5*(c-e)+e);a.close();a.moveTo(b,e);a.lineTo(b-d,e);a.lineTo(b-d,c-e);a.lineTo(b-d-2*e,c);a.lineTo(b,c);a.lineTo(b-f,.5*(c-e)+e);a.close();a.fill();a.setFillAlpha("0.4");a.begin();
2368a.moveTo(d,c-e);a.lineTo(d+2*e,c-e);a.lineTo(d+2*e,c);a.close();a.moveTo(b-d,c-e);a.lineTo(b-d-2*e,c-e);a.lineTo(b-d-2*e,c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeInfographicBanner.prototype.cst.BANNER,mxShapeInfographicBanner);
2369Graph.handleFactory[mxShapeInfographicBanner.prototype.cst.BANNER]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),c=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-b,a.y+c)},function(a,b){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width/2,a.x+a.width-b.x)))/100;this.state.style.dy=Math.round(100*
2370Math.max(0,Math.min(a.height/2,b.y-a.y)))/100})];a=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),c=Math.max(0,Math.min(a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),c=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+a.width-c,a.y+b+.5*(a.height-b))},function(a,b){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.width,
2371a.width+a.x-b.x)))/100});d.push(a);return d};
2372mxShapeInfographicBanner.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d/2,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),c=Math.max(0,Math.min(.5*e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),b=Math.min(d/2-2*c,b),f=Math.min(b,f),g=d-2*b;a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+.25*
2373g,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+.5*g,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+.75*g,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+g,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+g,.5*(e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+g,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+.75*g,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+.5*g,e-c));
2374a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b+.25*g,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,.5*(e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,f,.5*(e+c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-f,.5*(e+c)));return a};
2375function mxShapeInfographicCircularCallout(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=.5}mxUtils.extend(mxShapeInfographicCircularCallout,mxActor);mxShapeInfographicCircularCallout.prototype.cst={CIRCULAR_CALLOUT:"mxgraph.infographic.circularCallout"};mxShapeInfographicCircularCallout.prototype.customProperties=[{name:"dy",dispName:"Ribbon Width",min:0,defVal:15}];
2376mxShapeInfographicCircularCallout.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(.5*c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(.5*b,.5*b-d));var f=Math.max(0,Math.min(.5*c,.5*c-d));a.begin();a.moveTo(b,.5*c);a.arcTo(.5*b,.5*c,0,0,1,.5*b,c);a.arcTo(.5*b,.5*c,0,0,1,0,.5*c);a.arcTo(.5*b,.5*c,0,0,1,.5*b,0);a.lineTo(b,0);a.close();a.moveTo(.5*b,d);a.arcTo(e,f,0,0,0,.5*b-e,.5*c);a.arcTo(e,f,0,0,0,.5*b,.5*c+f);a.arcTo(e,f,0,0,0,
2377.5*b+e,.5*c);a.arcTo(e,f,0,0,0,.5*b,.5*c-f);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeInfographicCircularCallout.prototype.cst.CIRCULAR_CALLOUT,mxShapeInfographicCircularCallout);
2378Graph.handleFactory[mxShapeInfographicCircularCallout.prototype.cst.CIRCULAR_CALLOUT]=function(a){return[Graph.createHandle(a,["dy"],function(a){var d=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+.5*a.width,a.y+d)},function(a,e){this.state.style.dy=Math.round(100*Math.max(0,Math.min(a.height/2,e.y-a.y)))/100})]};
2379mxShapeInfographicCircularCallout.prototype.getConstraints=function(a,d,e){a=[];parseFloat(mxUtils.getValue(this.style,"dy",this.dy));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.145,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
2380.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.145,.145),!1));return a};function mxShapeInfographicShadedTriangle(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeInfographicShadedTriangle,mxActor);mxShapeInfographicShadedTriangle.prototype.cst={SHADED_TRIANGLE:"mxgraph.infographic.shadedTriangle"};
2381mxShapeInfographicShadedTriangle.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,c);a.lineTo(.5*b,0);a.lineTo(b,c);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillColor("#ffffff");a.setFillAlpha("0.2");a.begin();a.moveTo(0,c);a.lineTo(.5*b,0);a.lineTo(.5*b,.67*c);a.close();a.fill();a.setFillColor("#000000");a.begin();a.moveTo(b,c);a.lineTo(.5*b,.67*c);a.lineTo(.5*b,0);a.close();a.fill();a.begin();a.moveTo(0,c);a.lineTo(.5*b,0);a.lineTo(b,c);a.close();a.stroke()};
2382mxCellRenderer.registerShape(mxShapeInfographicShadedTriangle.prototype.cst.SHADED_TRIANGLE,mxShapeInfographicShadedTriangle);
2383mxShapeInfographicShadedTriangle.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,.5),!1));return a};
2384function mxShapeInfographicShadedPyramid(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeInfographicShadedPyramid,mxActor);mxShapeInfographicShadedPyramid.prototype.cst={SHADED_PYRAMID:"mxgraph.infographic.shadedPyramid"};
2385mxShapeInfographicShadedPyramid.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(c-.3*b,0);a.begin();a.moveTo(0,d);a.lineTo(.5*b,0);a.lineTo(b,d);a.lineTo(.5*b,c);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillColor("#ffffff");a.setFillAlpha("0.2");a.begin();a.moveTo(0,d);a.lineTo(.5*b,0);a.lineTo(.5*b,c);a.close();a.fill();a.setFillColor("#000000");a.begin();a.moveTo(b,d);a.lineTo(.5*b,c);a.lineTo(.5*b,0);a.close();a.fill();a.begin();a.moveTo(0,d);a.lineTo(.5*b,0);
2386a.lineTo(b,d);a.lineTo(.5*b,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeInfographicShadedPyramid.prototype.cst.SHADED_PYRAMID,mxShapeInfographicShadedPyramid);
2387mxShapeInfographicShadedPyramid.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(e-.3*d,0);a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d,.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d,.5*(e+b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*
2388d,.5*(e+b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d,.5*b));return a};function mxShapeInfographicPyramidStep(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeInfographicPyramidStep,mxActor);mxShapeInfographicPyramidStep.prototype.cst={PYRAMID_STEP:"mxgraph.infographic.pyramidStep"};
2389mxShapeInfographicPyramidStep.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(.1*b,0);a.begin();a.moveTo(0,d);a.lineTo(.5*b,0);a.lineTo(b,d);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillColor("#ffffff");a.setFillAlpha("0.2");a.begin();a.moveTo(0,d);a.lineTo(.5*b,0);a.lineTo(.5*b,c);a.lineTo(0,c);a.close();a.fill();a.setFillColor("#000000");a.begin();a.moveTo(b,d);a.lineTo(b,c);a.lineTo(.5*b,c);a.lineTo(.5*b,0);a.close();a.fill();a.begin();
2390a.moveTo(0,d);a.lineTo(.5*b,0);a.lineTo(b,d);a.lineTo(b,c);a.lineTo(0,c);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeInfographicPyramidStep.prototype.cst.PYRAMID_STEP,mxShapeInfographicPyramidStep);
2391mxShapeInfographicPyramidStep.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(.1*d,0);a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d,.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b+.25*(e-b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b+.5*(e-b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,
2392d,b+.75*(e-b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b+.75*(e-b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b+.5*(e-b)));
2393a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b+.25*(e-b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d,.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b));return a};function mxShapeInfographicCylinder(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeInfographicCylinder,mxActor);mxShapeInfographicCylinder.prototype.cst={CYLINDER:"mxgraph.infographic.cylinder"};
2394mxShapeInfographicCylinder.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=.5*b;a.begin();a.moveTo(0,10);a.arcTo(d,10,0,0,1,b,10);a.lineTo(b,c-10);a.arcTo(d,10,0,0,1,0,c-10);a.close();a.fillAndStroke();a.setShadow(!1);a.setGradient("#000000","#ffffff",0,0,b,c,mxConstants.DIRECTION_EAST,.4,.4);a.begin();a.moveTo(0,10);a.arcTo(d,10,0,0,0,b,10);a.lineTo(b,c-10);a.arcTo(d,10,0,0,1,0,c-10);a.close();a.fill();a.begin();a.moveTo(0,10);a.arcTo(d,10,0,0,1,b,10);a.lineTo(b,c-10);a.arcTo(d,
239510,0,0,1,0,c-10);a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeInfographicCylinder.prototype.cst.CYLINDER,mxShapeInfographicCylinder);
2396mxShapeInfographicCylinder.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,10));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,10));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,10+.25*(e-20)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,10+.5*(e-20)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,10+.75*(e-20)));a.push(new mxConnectionConstraint(new mxPoint(0,
23970),!1,null,d,e-10));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-10));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,10+.75*(e-20)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,10+.5*(e-20)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,10+.25*(e-20)));return a};
2398function mxShapeInfographicCircularCallout2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=.5}mxUtils.extend(mxShapeInfographicCircularCallout2,mxActor);mxShapeInfographicCircularCallout2.prototype.cst={CIRCULAR_CALLOUT_2:"mxgraph.infographic.circularCallout2"};
2399mxShapeInfographicCircularCallout2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"none");e=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"none");a.setFillColor(e);e=Math.max(0,Math.min(.5*b,.4*c,.5*c-7));a.begin();a.moveTo(.5*b-2,2.15*e);a.arcTo(.23*e,.23*e,0,0,0,.5*b-.2*e,1.97*e);a.arcTo(e,e,0,0,1,.5*b-e,e);a.arcTo(e,e,0,0,1,.5*b,0);a.arcTo(e,e,0,0,1,.5*b+e,e);a.arcTo(e,e,0,0,1,.5*b+.2*e,1.97*e);a.arcTo(.23*e,
2400.23*e,0,0,0,.5*b+2,2.15*e);var f=Math.max(.1*e,6);4<.04*e?(a.lineTo(.5*b+2,c-.22*e),a.arcTo(.05*e,.05*e,0,0,0,.5*b+.04*e,c-.19*e)):a.lineTo(.5*b+2,c-2*f);a.arcTo(f,f,0,0,1,.5*b+f,c-f);a.arcTo(f,f,0,0,1,.5*b,c);a.arcTo(f,f,0,0,1,.5*b-f,c-f);4<.04*e?(a.arcTo(f,f,0,0,1,.5*b-.04*e,c-.19*e),a.arcTo(.5*f,.5*f,0,0,0,.5*b-2,c-.22*e)):a.arcTo(f,f,0,0,1,.5*b-2,c-2*f);a.close();a.moveTo(.5*b,.2*e);a.arcTo(.8*e,.8*e,0,0,0,.5*b-.8*e,.8*e);a.arcTo(.8*e,.8*e,0,0,0,.5*b,1.8*e);a.arcTo(.8*e,.8*e,0,0,0,.5*b+.8*e,.8*
2401e);a.arcTo(.8*e,.8*e,0,0,0,.5*b,.2*e);a.close();a.moveTo(.5*b,c-1.75*f);a.arcTo(.75*f,.75*f,0,0,0,.5*b-.75*f,c-f);a.arcTo(.75*f,.75*f,0,0,0,.5*b,c-.25*f);a.arcTo(.75*f,.75*f,0,0,0,.5*b+.75*f,c-f);a.arcTo(.75*f,.75*f,0,0,0,.5*b,c-1.75*f);a.close();a.fill();a.setFillColor(d);a.setShadow(!1);a.begin();a.moveTo(.5*b,.2*e);a.arcTo(.8*e,.8*e,0,0,0,.5*b-.8*e,.8*e);a.arcTo(.8*e,.8*e,0,0,0,.5*b,1.8*e);a.arcTo(.8*e,.8*e,0,0,0,.5*b+.8*e,.8*e);a.arcTo(.8*e,.8*e,0,0,0,.5*b,.2*e);a.close();a.moveTo(.5*b,c-1.75*
2402f);a.arcTo(.75*f,.75*f,0,0,0,.5*b-.75*f,c-f);a.arcTo(.75*f,.75*f,0,0,0,.5*b,c-.25*f);a.arcTo(.75*f,.75*f,0,0,0,.5*b+.75*f,c-f);a.arcTo(.75*f,.75*f,0,0,0,.5*b,c-1.75*f);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeInfographicCircularCallout2.prototype.cst.CIRCULAR_CALLOUT_2,mxShapeInfographicCircularCallout2);
2403mxShapeInfographicCircularCallout2.prototype.getConstraints=function(a,d,e){a=[];e=Math.max(0,Math.min(.5*d,.4*e,.5*e-7));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-e,e));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+e,e));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));return a};
2404function mxShapeInfographicBannerSingleFold(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.notch=this.dx2=this.dy=this.dx=.5}mxUtils.extend(mxShapeInfographicBannerSingleFold,mxActor);mxShapeInfographicBannerSingleFold.prototype.cst={BANNER_SINGLE_FOLD:"mxgraph.infographic.bannerSingleFold"};
2405mxShapeInfographicBannerSingleFold.prototype.customProperties=[{name:"dx",dispName:"Fold Length",type:"float",defVal:32,min:0},{name:"dy",dispName:"Banner Width",type:"float",defVal:17,min:0},{name:"notch",dispName:"Notch",type:"float",defVal:15,min:0}];
2406mxShapeInfographicBannerSingleFold.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(.5*c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));var f=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));d=Math.min(b-2*e,d);var g=Math.max(0,Math.min(b-d-2*e,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),f=Math.min(d,f);a.begin();a.moveTo(g,
24070);a.lineTo(b-d,0);a.lineTo(b-d,e);a.lineTo(b,e);a.lineTo(b-f,.5*(c-e)+e);a.lineTo(b,c);a.lineTo(b-d-2*e,c);a.lineTo(b-d-2*e,c-e);a.lineTo(g,c-e);a.lineTo(0,.5*(c-e));a.close();a.fillAndStroke();a.setShadow(!1);a.setFillAlpha("0.05");a.setFillColor("#000000");a.begin();a.moveTo(b,e);a.lineTo(b-d,e);a.lineTo(b-d,c-e);a.lineTo(b-d-2*e,c);a.lineTo(b,c);a.lineTo(b-f,.5*(c-e)+e);a.close();a.fill();a.setFillAlpha("0.4");a.begin();a.moveTo(b-d,c-e);a.lineTo(b-d-2*e,c-e);a.lineTo(b-d-2*e,c);a.close();a.fill();
2408a.begin();a.moveTo(g,0);a.lineTo(b-d,0);a.lineTo(b-d,e);a.lineTo(b,e);a.lineTo(b-f,.5*(c-e)+e);a.lineTo(b,c);a.lineTo(b-d-2*e,c);a.lineTo(b-d-2*e,c-e);a.lineTo(g,c-e);a.lineTo(0,.5*(c-e));a.close();a.stroke()};mxCellRenderer.registerShape(mxShapeInfographicBannerSingleFold.prototype.cst.BANNER_SINGLE_FOLD,mxShapeInfographicBannerSingleFold);
2409Graph.handleFactory[mxShapeInfographicBannerSingleFold.prototype.cst.BANNER_SINGLE_FOLD]=function(a){var d=[Graph.createHandle(a,["dx","dy"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+a.width-b,a.y+d)},function(a,c){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width,a.x+a.width-c.x)))/100;this.state.style.dy=
2410Math.round(100*Math.max(0,Math.min(a.height/2,c.y-a.y)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.height/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+a.width-d,a.y+b+.5*(a.height-b))},function(a,c){this.state.style.notch=Math.round(100*
2411Math.max(0,Math.min(a.width,a.width+a.x-c.x)))/100});d.push(e);a=Graph.createHandle(a,["dx2"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy)))),b=Math.max(0,Math.min(a.width-b,parseFloat(mxUtils.getValue(this.state.style,"dx2",this.dx2))));return new mxPoint(a.x+b,a.y+.5*(a.height-d))},function(a,c){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,
2412"dx",this.dx)))),d=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));this.state.style.dx2=Math.round(100*Math.max(0,Math.min(a.width-b-2*d,c.x-a.x)))/100});d.push(a);return d};
2413mxShapeInfographicBannerSingleFold.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),c=Math.max(0,Math.min(.5*e,parseFloat(mxUtils.getValue(this.style,"dy",this.dy)))),f=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),b=Math.min(d-2*c,b),g=Math.max(0,Math.min(d-b-2*c,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),f=Math.min(b,f),h=d-b-g;a.push(new mxConnectionConstraint(new mxPoint(0,
24140),!1,null,0,.5*(e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g+.25*h,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g+.5*h,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g+.75*h,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g+h,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.25*b,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.5*
2415b,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.75*b,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-f,.5*(e+c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b-2*c,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.75*(b+2*c),e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.5*(b+2*c),
2416e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.25*(b+2*c),e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g+.25*h,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g+.5*h,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g+.75*h,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,g+h,e-c));return a};
2417function mxShapeInfographicShadedCube(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.isoAngle=15}mxUtils.extend(mxShapeInfographicShadedCube,mxActor);mxShapeInfographicShadedCube.prototype.cst={SHADED_CUBE:"mxgraph.infographic.shadedCube"};mxShapeInfographicShadedCube.prototype.customProperties=[{name:"isoAngle",dispName:"Perspective",type:"float",defVal:15,min:0}];
2418mxShapeInfographicShadedCube.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(.01,Math.min(94,parseFloat(mxUtils.getValue(this.style,"isoAngle",this.isoAngle))))*Math.PI/200;d=Math.min(b*Math.tan(d),.5*c);a.begin();a.moveTo(.5*b,0);a.lineTo(b,d);a.lineTo(b,c-d);a.lineTo(.5*b,c);a.lineTo(0,c-d);a.lineTo(0,d);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillAlpha("0.2");a.setFillColor("#000000");a.begin();a.moveTo(.5*b,2*d);a.lineTo(b,d);a.lineTo(b,c-d);a.lineTo(.5*b,c);
2419a.close();a.fill();a.setFillColor("#ffffff");a.begin();a.moveTo(.5*b,2*d);a.lineTo(0,d);a.lineTo(0,c-d);a.lineTo(.5*b,c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeInfographicShadedCube.prototype.cst.SHADED_CUBE,mxShapeInfographicShadedCube);
2420Graph.handleFactory[mxShapeInfographicShadedCube.prototype.cst.SHADED_CUBE]=function(a){return[Graph.createHandle(a,["isoAngle"],function(a){var d=Math.max(.01,Math.min(94,parseFloat(mxUtils.getValue(this.state.style,"isoAngle",this.isoAngle))))*Math.PI/200;return new mxPoint(a.x,a.y+Math.min(a.width*Math.tan(d),.5*a.height))},function(a,e){this.state.style.isoAngle=Math.round(100*Math.max(0,Math.min(100,e.y-a.y)))/100})]};
2421mxShapeInfographicShadedCube.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(.01,Math.min(94,parseFloat(mxUtils.getValue(this.style,"isoAngle",this.isoAngle))))*Math.PI/200,b=Math.min(d*Math.tan(b),.5*e);a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d,.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b+.25*(e-2*b)));a.push(new mxConnectionConstraint(new mxPoint(0,
24220),!1,null,d,b+.5*(e-2*b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b+.75*(e-2*b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d,e-.5*b));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d,e-.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,
24230,e-b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b+.75*(e-2*b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b+.5*(e-2*b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b+.25*(e-2*b)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d,.5*b));return a};
2424function mxShapeInfographicPartConcEllipse(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.startAngle=.25;this.endAngle=.75;this.arcWidth=.5}mxUtils.extend(mxShapeInfographicPartConcEllipse,mxActor);mxShapeInfographicPartConcEllipse.prototype.cst={PART_CONC_ELLIPSE:"mxgraph.infographic.partConcEllipse"};
2425mxShapeInfographicPartConcEllipse.prototype.customProperties=[{name:"startAngle",dispName:"Start Angle",min:0,max:1,defVal:.25},{name:"endAngle",dispName:"End Angle",min:0,max:1,defVal:.1},{name:"arcWidth",dispName:"Arc Width",min:0,max:1,defVal:.5}];
2426mxShapeInfographicPartConcEllipse.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"startAngle",this.startAngle)))),g=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"endAngle",this.endAngle)))),h=1-Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arcWidth",this.arcWidth))));d=.5*b;e=.5*c;var k=d*h,l=e*h,m=g-f;0>m?m+=2*Math.PI:m==Math.PI&&(g+=1E-5);var n=d+Math.sin(f)*d,
2427p=e-Math.cos(f)*e,q=d+Math.sin(f)*k,f=e-Math.cos(f)*l,t=d+Math.sin(g)*d,u=e-Math.cos(g)*e,v=d+Math.sin(g)*k,g=e-Math.cos(g)*l,r=0;m<=Math.PI&&(r=1);a.begin();a.moveTo(d,0);a.arcTo(d,e,0,0,1,b,e);a.arcTo(d,e,0,0,1,d,c);a.arcTo(d,e,0,0,1,0,e);a.arcTo(d,e,0,0,1,d,0);a.close();a.moveTo(d,.5*c-l);a.arcTo(k,l,0,0,0,.5*b-k,e);a.arcTo(k,l,0,0,0,d,.5*c+l);a.arcTo(k,l,0,0,0,.5*b+k,e);a.arcTo(k,l,0,0,0,d,.5*c-l);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillAlpha("0.2");a.setFillColor("#ffffff");a.begin();
2428a.moveTo(n,p);a.arcTo(d,e,0,r,0,t,u);a.lineTo(v,g);a.arcTo(k,l,0,r,1,q,f);a.close();a.fill();d=.5*b;e=.5*c;k=d*h;l=e*h;h=k+.25*(d-k);m=l+.25*(e-l);a.setFillColor("#000000");a.begin();a.moveTo(d,.5*c-l);a.arcTo(k,l,0,0,1,.5*b+k,e);a.arcTo(k,l,0,0,1,d,.5*c+l);a.arcTo(k,l,0,0,1,.5*b-k,e);a.arcTo(k,l,0,0,1,d,.5*c-l);a.close();a.moveTo(d,.5*c-m);a.arcTo(h,m,0,0,0,.5*b-h,e);a.arcTo(h,m,0,0,0,d,.5*c+m);a.arcTo(h,m,0,0,0,.5*b+h,e);a.arcTo(h,m,0,0,0,d,.5*c-m);a.close();a.fill()};
2429mxCellRenderer.registerShape(mxShapeInfographicPartConcEllipse.prototype.cst.PART_CONC_ELLIPSE,mxShapeInfographicPartConcEllipse);
2430Graph.handleFactory[mxShapeInfographicPartConcEllipse.prototype.cst.PART_CONC_ELLIPSE]=function(a){var d=[Graph.createHandle(a,["startAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"startAngle",this.startAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,c){var b=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(c.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,
2431Math.min(1,(c.y-a.y-.5*a.height)/(.5*a.height))))/100)/Math.PI;0>b&&(b=1+b);this.state.style.startAngle=b})],e=Graph.createHandle(a,["endAngle"],function(a){var b=2*Math.PI*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"endAngle",this.endAngle))));return new mxPoint(a.x+.5*a.width+Math.sin(b)*a.width*.5,a.y+.5*a.height-Math.cos(b)*a.height*.5)},function(a,c){var b=.5*Math.atan2(Math.round(100*Math.max(-1,Math.min(1,(c.x-a.x-.5*a.width)/(.5*a.width))))/100,-Math.round(100*Math.max(-1,
2432Math.min(1,(c.y-a.y-.5*a.height)/(.5*a.height))))/100)/Math.PI;0>b&&(b=1+b);this.state.style.endAngle=b});d.push(e);a=Graph.createHandle(a,["arcWidth"],function(a){var b=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"arcWidth",this.arcWidth))));return new mxPoint(a.x+a.width/2,a.y+b*a.height*.5)},function(a,c){this.state.style.arcWidth=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,(c.y-a.y)/(.5*a.height))))/100});d.push(a);return d};
2433mxShapeInfographicPartConcEllipse.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.145,.145),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,.145),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.145,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
2434.5),!1));return a};function mxShapeInfographicBannerHalfFold(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.notch=this.dx2=this.dx=.5}mxUtils.extend(mxShapeInfographicBannerHalfFold,mxActor);mxShapeInfographicBannerHalfFold.prototype.cst={BANNER_HALF_FOLD:"mxgraph.infographic.bannerHalfFold"};
2435mxShapeInfographicBannerHalfFold.prototype.customProperties=[{name:"dx",dispName:"Banner Width",min:0,defVal:40},{name:"dx2",dispName:"Spike Size",min:0,defVal:20},{name:"notch",dispName:"Notch Size",min:0,defVal:15}];
2436mxShapeInfographicBannerHalfFold.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(b-d,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2))));var f=Math.max(0,Math.min(c-d,parseFloat(mxUtils.getValue(this.style,"notch",this.notch))));a.begin();a.moveTo(e,0);a.lineTo(b-d,0);a.lineTo(b,d);a.lineTo(b,c);a.lineTo(b-.5*d,c-f);a.lineTo(b-d,c);a.lineTo(b-d,d);a.lineTo(e,d);a.lineTo(0,.5*
2437d);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillAlpha("0.2");a.setFillColor("#000000");a.begin();a.moveTo(b-d,d);a.lineTo(b,d);a.lineTo(b,c);a.lineTo(b-.5*d,c-f);a.lineTo(b-d,c);a.lineTo(b-d,d);a.lineTo(0,d);a.close();a.fill();a.begin();a.moveTo(e,0);a.lineTo(b-d,0);a.lineTo(b,d);a.lineTo(b,c);a.lineTo(b-.5*d,c-f);a.lineTo(b-d,c);a.lineTo(b-d,d);a.lineTo(e,d);a.lineTo(0,.5*d);a.close();a.stroke()};
2438mxCellRenderer.registerShape(mxShapeInfographicBannerHalfFold.prototype.cst.BANNER_HALF_FOLD,mxShapeInfographicBannerHalfFold);
2439Graph.handleFactory[mxShapeInfographicBannerHalfFold.prototype.cst.BANNER_HALF_FOLD]=function(a){var d=[Graph.createHandle(a,["dx"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));return new mxPoint(a.x+a.width-b,a.y+b)},function(a,c){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width,a.x+a.width-c.x)))/100})],e=Graph.createHandle(a,["notch"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,
2440"dx",this.dx)))),d=Math.max(0,Math.min(a.height-b,parseFloat(mxUtils.getValue(this.state.style,"notch",this.notch))));return new mxPoint(a.x+a.width-.5*b,a.y+a.height-d)},function(a,c){this.state.style.notch=Math.round(100*Math.max(0,Math.min(a.height,a.height+a.y-c.y)))/100});d.push(e);a=Graph.createHandle(a,["dx2"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),d=Math.max(0,Math.min(a.width-b,parseFloat(mxUtils.getValue(this.state.style,
2441"dx2",this.dx2))));return new mxPoint(a.x+d,a.y+b)},function(a,c){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx))));this.state.style.dx2=Math.round(100*Math.max(0,Math.min(a.width-b,c.x-a.x)))/100});d.push(a);return d};
2442mxShapeInfographicBannerHalfFold.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),c=Math.max(0,Math.min(d-b,parseFloat(mxUtils.getValue(this.style,"dx2",this.dx2)))),f=Math.max(0,Math.min(e-b,parseFloat(mxUtils.getValue(this.style,"notch",this.notch)))),g=d-b-c,h=e-b;a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,0));a.push(new mxConnectionConstraint(new mxPoint(0,
24430),!1,null,c+.25*g,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c+.5*g,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c+.75*g,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.5*b,.5*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b+.25*h));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,
2444b+.5*h));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,b+.75*h));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.5*b,e-f));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,e));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,b+.75*h));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,b+.5*h));a.push(new mxConnectionConstraint(new mxPoint(0,
24450),!1,null,d-b,b+.25*h));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-b,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c+.25*g,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c+.5*g,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c+.75*g,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,c,b));return a};
2446function mxShapeInfographicCircularDial(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=.5}mxUtils.extend(mxShapeInfographicCircularDial,mxActor);mxShapeInfographicCircularDial.prototype.cst={CIRCULAR_DIAL:"mxgraph.infographic.circularDial"};mxShapeInfographicCircularDial.prototype.customProperties=[{name:"dy",dispName:"Hole Size",min:0,defVal:15}];
2447mxShapeInfographicCircularDial.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(.5*c-10,.5*b,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));e=Math.max(0,Math.min(.5*b,.5*c-10));var f=e-d;a.begin();a.moveTo(.5*b-e,c);a.lineTo(.5*b-e,e);a.arcTo(e,e,0,0,1,.5*b,0);a.arcTo(e,e,0,0,1,.5*b+e,e);a.lineTo(.5*b+e,c);a.close();a.moveTo(.5*b,d);a.arcTo(f,f,0,0,0,.5*b-f,e);a.arcTo(f,f,0,0,0,.5*b,e+f);a.arcTo(f,f,0,0,0,.5*b+f,e);a.arcTo(f,f,0,0,0,.5*b,d);a.close();
2448a.fillAndStroke();a.setShadow(!1);a.setFillAlpha("0.2");a.setFillColor("#000000");a.begin();a.moveTo(.5*b-e,2*e);a.lineTo(.5*b+e,2*e);a.lineTo(.5*b+e,c);a.lineTo(.5*b-e,c);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeInfographicCircularDial.prototype.cst.CIRCULAR_DIAL,mxShapeInfographicCircularDial);
2449Graph.handleFactory[mxShapeInfographicCircularDial.prototype.cst.CIRCULAR_DIAL]=function(a){return[Graph.createHandle(a,["dy"],function(a){var d=Math.max(0,Math.min(a.height/2,a.width/2,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+.5*a.width,a.y+d)},function(a,e){this.state.style.dy=Math.round(100*Math.max(0,Math.min(a.height/2,a.width/2,e.y-a.y)))/100})]};
2450mxShapeInfographicCircularDial.prototype.getConstraints=function(a,d,e){a=[];parseFloat(mxUtils.getValue(this.style,"dy",this.dy));var b=Math.max(0,Math.min(.5*d,.5*e-10));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b,.5*(b+e)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-b,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-.71*b,.29*b));a.push(new mxConnectionConstraint(new mxPoint(0,
24510),!1,null,.5*d,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+.71*b,.29*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b,b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b,.5*(b+e)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d+.5*b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d-.5*b,e));return a};
2452function mxShapeInfographicRibbonSimple(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.notch2=this.notch1=.5}mxUtils.extend(mxShapeInfographicRibbonSimple,mxActor);mxShapeInfographicRibbonSimple.prototype.cst={RIBBON_SIMPLE:"mxgraph.infographic.ribbonSimple"};mxShapeInfographicRibbonSimple.prototype.customProperties=[{name:"notch1",dispName:"Notch Size",min:0,defVal:20},{name:"notch2",dispName:"Spike Size",min:0,defVal:20}];
2453mxShapeInfographicRibbonSimple.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch1",this.notch2))));e=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"notch2",this.notch2))));a.begin();a.moveTo(0,c);a.lineTo(d,.5*c);a.lineTo(0,0);a.lineTo(b-e,0);a.lineTo(b,.5*c);a.lineTo(b-e,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeInfographicRibbonSimple.prototype.cst.RIBBON_SIMPLE,mxShapeInfographicRibbonSimple);
2454Graph.handleFactory[mxShapeInfographicRibbonSimple.prototype.cst.RIBBON_SIMPLE]=function(a){var d=[Graph.createHandle(a,["notch1"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"notch1",this.notch1))));return new mxPoint(a.x+b,a.y+.5*a.height)},function(a,b){this.state.style.notch1=Math.round(100*Math.max(0,Math.min(a.width,b.x-a.x)))/100})];a=Graph.createHandle(a,["notch2"],function(a){var b=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,
2455"notch2",this.notch2))));return new mxPoint(a.x+a.width-b,a.y)},function(a,b){this.state.style.notch2=Math.round(100*Math.max(0,Math.min(a.width,a.width+a.x-b.x)))/100});d.push(a);return d};
2456mxShapeInfographicRibbonSimple.prototype.getConstraints=function(a,d,e){a=[];var b=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch1",this.notch2)))),c=Math.max(0,Math.min(d,parseFloat(mxUtils.getValue(this.style,"notch2",this.notch2))));d-=c;a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d,0));a.push(new mxConnectionConstraint(new mxPoint(0,
24570),!1,null,.75*d,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,0));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d,e));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
24580),!1,null,b,.5*e));return a};function mxShapeInfographicBarCallout(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=this.dx=.5}mxUtils.extend(mxShapeInfographicBarCallout,mxActor);mxShapeInfographicBarCallout.prototype.cst={BAR_CALLOUT:"mxgraph.infographic.barCallout"};mxShapeInfographicBarCallout.prototype.customProperties=[{name:"dx",dispName:"Callout Position",min:0,defVal:100},{name:"dy",dispName:"Callout Size",min:0,defVal:30}];
2459mxShapeInfographicBarCallout.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));var f=Math.max(d-.35*e,0),g=Math.min(d+.35*e,b);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c-e);a.lineTo(g,c-e);a.lineTo(d,c);a.lineTo(f,c-e);a.lineTo(0,c-e);a.close();a.fillAndStroke()};
2460mxCellRenderer.registerShape(mxShapeInfographicBarCallout.prototype.cst.BAR_CALLOUT,mxShapeInfographicBarCallout);mxShapeInfographicBarCallout.prototype.constraints=null;
2461Graph.handleFactory[mxShapeInfographicBarCallout.prototype.cst.BAR_CALLOUT]=function(a){return[Graph.createHandle(a,["dx","dy"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+d,a.y+a.height-b)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width,e.x-a.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,
2462Math.min(a.height,a.y+a.height-e.y)))/100})]};
2463mxShapeInfographicBarCallout.prototype.getConstraints=function(a,d,e){a=[];var 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))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
24640),!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*(e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e-c));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,0,e-c));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,0,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-c));return a};
2465function mxShapeInfographicFlag(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dy=this.dx=.5}mxUtils.extend(mxShapeInfographicFlag,mxActor);mxShapeInfographicFlag.prototype.cst={FLAG:"mxgraph.infographic.flag"};mxShapeInfographicFlag.prototype.customProperties=[{name:"dx",dispName:"Pole Width",min:0,defVal:30},{name:"dy",dispName:"Spike Size",min:0,defVal:20}];
2466mxShapeInfographicFlag.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.max(0,Math.min(b,parseFloat(mxUtils.getValue(this.style,"dx",this.dx))));e=Math.max(0,Math.min(c,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c-e);a.lineTo(d,c-e);a.lineTo(.5*d,c);a.lineTo(0,c-e);a.close();a.fillAndStroke();a.setShadow(!1);a.setFillAlpha("0.2");a.setFillColor("#ffffff");a.begin();a.moveTo(0,0);a.lineTo(d,0);a.lineTo(d,c-e);a.lineTo(.5*
2467d,c);a.lineTo(0,c-e);a.close();a.fill()};mxCellRenderer.registerShape(mxShapeInfographicFlag.prototype.cst.FLAG,mxShapeInfographicFlag);
2468Graph.handleFactory[mxShapeInfographicFlag.prototype.cst.FLAG]=function(a){return[Graph.createHandle(a,["dx","dy"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx",this.dx)))),b=Math.max(0,Math.min(a.height,parseFloat(mxUtils.getValue(this.state.style,"dy",this.dy))));return new mxPoint(a.x+d,a.y+a.height-b)},function(a,e){this.state.style.dx=Math.round(100*Math.max(0,Math.min(a.width,e.x-a.x)))/100;this.state.style.dy=Math.round(100*Math.max(0,Math.min(a.height,
2469a.y+a.height-e.y)))/100})]};
2470mxShapeInfographicFlag.prototype.getConstraints=function(a,d,e){a=[];var 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))));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),
2471!1));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,.5*(e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(e-c)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*d,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*d,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*d,e-c));a.push(new mxConnectionConstraint(new mxPoint(0,
24720),!1,null,.5*b,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*b,0));return a};function mxShapeKubernetesIcon(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeKubernetesIcon,mxShape);mxShapeKubernetesIcon.prototype.cst={ICON:"mxgraph.kubernetes.icon"};
2473mxShapeKubernetesIcon.prototype.customProperties=[{name:"prIcon",dispName:"",defVal:"api",type:"API",enumList:[{val:"c_c_m",dispName:"C-C-M"},{val:"c_m",dispName:"C-M"},{val:"c_role",dispName:"C-Role"},{val:"cm",dispName:"CM"},{val:"crb",dispName:"CRB"},{val:"crd",dispName:"CRD"},{val:"cronjob",dispName:"Cronjob"},{val:"deploy",dispName:"Deploy"},{val:"ds",dispName:"DS"},{val:"ep",dispName:"EP"},{val:"etcd",dispName:"ETCD"},{val:"group",dispName:"Group"},{val:"hpa",dispName:"HPA"},{val:"ing",dispName:"ING"},
2474{val:"job",dispName:"Job"},{val:"k_proxy",dispName:"K-Proxy"},{val:"kubelet",dispName:"Kubelet"},{val:"limits",dispName:"Limits"},{val:"master",dispName:"Master"},{val:"netpol",dispName:"Netpol"},{val:"node",dispName:"Node"},{val:"ns",dispName:"NS"},{val:"pod",dispName:"Pod"},{val:"psp",dispName:"PSP"},{val:"pv",dispName:"PV"},{val:"pvc",dispName:"PVC"},{val:"quota",dispName:"Quota"},{val:"rb",dispName:"RB"},{val:"role",dispName:"Role"},{val:"rs",dispName:"RS"},{val:"sa",dispName:"SA"},{val:"sc",
2475dispName:"SC"},{val:"sched",dispName:"Sched"},{val:"secret",dispName:"Secret"},{val:"sts",dispName:"STS"},{val:"svc",dispName:"SVC"},{val:"user",dispName:"User"},{val:"vol",dispName:"Vol"}]}];
2476mxShapeKubernetesIcon.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.state.style,"prIcon",""),g=mxUtils.getValue(this.state.style,"fillColor","#ffffff"),h=mxUtils.getValue(this.state.style,"strokeColor","#ffffff");a.translate(d,e);d=mxStencilRegistry.getStencil("mxgraph.kubernetes.frame");a.setFillColor(h);d.drawShape(a,this,0,0,b,c);a.setFillColor(g);d.drawShape(a,this,.03*b,.03*c,.94*b,.94*c);f=mxStencilRegistry.getStencil("mxgraph.kubernetes."+f);null!=f&&(a.setFillColor(h),
2477f.drawShape(a,this,.2*b,.2*c,.6*b,.6*c))};mxCellRenderer.registerShape(mxShapeKubernetesIcon.prototype.cst.ICON,mxShapeKubernetesIcon);mxShapeKubernetesIcon.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));return a};function mxLeanBoatShipment(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanBoatShipment,mxShape);
2478mxLeanBoatShipment.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(.15*b,.77*c);a.lineTo(.5*b,0);a.lineTo(.85*b,.77*c);a.close();a.moveTo(.2*b,c);a.lineTo(0,.8*c);a.lineTo(b,.8*c);a.lineTo(.8*b,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.boat_shipment",mxLeanBoatShipment);
2479mxLeanBoatShipment.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1),new mxConnectionConstraint(new mxPoint(0,.8),!1),new mxConnectionConstraint(new mxPoint(1,.8),!1),new mxConnectionConstraint(new mxPoint(.2,1),!1),new mxConnectionConstraint(new mxPoint(.8,1),!1),new mxConnectionConstraint(new mxPoint(.26,.5),!1),new mxConnectionConstraint(new mxPoint(.74,.5),!1)];
2480function mxLeanSafetyStock(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanSafetyStock,mxShape);mxLeanSafetyStock.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxLeanSafetyStock.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
2481mxLeanSafetyStock.prototype.foreground=function(a,d,e){a.begin();a.moveTo(0,.34*e);a.lineTo(d,.34*e);a.moveTo(0,.66*e);a.lineTo(d,.66*e);a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.buffer_or_safety_stock",mxLeanSafetyStock);
2482mxLeanSafetyStock.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(.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,
2483.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)];function mxLeanDataBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanDataBox,mxShape);
2484mxLeanDataBox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxLeanDataBox.prototype.background=function(a,d,e){a.begin();a.moveTo(0,e);a.lineTo(0,0);a.lineTo(d,0);a.lineTo(d,e);a.fillAndStroke()};mxLeanDataBox.prototype.foreground=function(a,d,e){a.begin();a.moveTo(0,.2*e);a.lineTo(d,.2*e);a.moveTo(0,.4*e);a.lineTo(d,.4*e);a.moveTo(0,.6*e);a.lineTo(d,.6*e);a.moveTo(0,.8*e);a.lineTo(d,.8*e);a.stroke()};
2485mxCellRenderer.registerShape("mxgraph.lean_mapping.data_box",mxLeanDataBox);
2486mxLeanDataBox.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(.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,
2487.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)];function mxLeanCustomerSupplier(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanCustomerSupplier,mxShape);
2488mxLeanCustomerSupplier.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1)};mxLeanCustomerSupplier.prototype.background=function(a,d,e){a.begin();a.moveTo(0,e);a.lineTo(0,.3*e);a.lineTo(.33*d,.02*e);a.lineTo(.33*d,.3*e);a.lineTo(.67*d,.02*e);a.lineTo(.67*d,.3*e);a.lineTo(d,.02*e);a.lineTo(d,e);a.close();a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.outside_sources",mxLeanCustomerSupplier);
2489mxLeanCustomerSupplier.prototype.constraints=[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(.33,0),!0),new mxConnectionConstraint(new mxPoint(.67,0),!0),new mxConnectionConstraint(new mxPoint(0,.3),!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,
2490.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)];function mxLeanDedicatedProcess(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanDedicatedProcess,mxShape);
2491mxLeanDedicatedProcess.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8"));this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c,d)};mxLeanDedicatedProcess.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};mxLeanDedicatedProcess.prototype.foreground=function(a,d,e,b){e=Math.min(1.5*b,e);a.begin();a.moveTo(0,e);a.lineTo(d,e);a.stroke()};
2492mxCellRenderer.registerShape("mxgraph.lean_mapping.manufacturing_process",mxLeanDedicatedProcess);
2493mxLeanDedicatedProcess.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(.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,
2494.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)];function mxLeanSharedProcess(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanSharedProcess,mxShape);
2495mxLeanSharedProcess.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8"));this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c,d)};mxLeanSharedProcess.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
2496mxLeanSharedProcess.prototype.foreground=function(a,d,e,b){b=Math.min(1.5*b,e);a.begin();a.moveTo(0,b);a.lineTo(d,b);a.stroke();var c=0;a.begin();var f=parseFloat(mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"2"));for(a.setStrokeWidth(.5*f);c<e+d;)if(c+=10,c>b){var f=Math.max(0,c-e),g=Math.min(c,e),h=Math.min(c-b,d),k;k=Math.max(c-d,b);f<d&&(a.moveTo(f,g),a.lineTo(h,k))}a.stroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.manufacturing_process_shared",mxLeanSharedProcess);
2497mxLeanSharedProcess.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(.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,
2498.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)];function mxLeanWorkcell(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanWorkcell,mxShape);
2499mxLeanWorkcell.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(.65*b,c);a.lineTo(.65*b,.4*c);a.lineTo(.35*b,.4*c);a.lineTo(.35*b,c);a.lineTo(0,c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.work_cell",mxLeanWorkcell);
2500mxLeanWorkcell.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(.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,
2501.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(.75,1),!0)];function mxLeanInventoryBox(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanInventoryBox,mxShape);
2502mxLeanInventoryBox.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,c);a.lineTo(.5*b,0);a.lineTo(b,c);a.close();a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(.4*b,.45*c);a.lineTo(.6*b,.45*c);a.moveTo(.5*b,.45*c);a.lineTo(.5*b,.85*c);a.moveTo(.4*b,.85*c);a.lineTo(.6*b,.85*c);a.stroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.inventory_box",mxLeanInventoryBox);
2503mxLeanInventoryBox.prototype.constraints=[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(.375,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.125,.75),!1),new mxConnectionConstraint(new mxPoint(.625,.25),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(.875,.75),!1),
2504new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];function mxLeanPushArrow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanPushArrow,mxShape);mxLeanPushArrow.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};
2505mxLeanPushArrow.prototype.background=function(a,d,e){a.begin();a.moveTo(0,.17*e);a.lineTo(.75*d,.17*e);a.lineTo(.75*d,0);a.lineTo(d,.5*e);a.lineTo(.75*d,e);a.lineTo(.75*d,.83*e);a.lineTo(0,.83*e);a.close();a.fillAndStroke()};
2506mxLeanPushArrow.prototype.foreground=function(a,d,e,b){b=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(b);a.rect(0,.17*e,.12*d,.66*e);a.fill();a.rect(.24*d,.17*e,.12*d,.66*e);a.fill();a.rect(.48*d,.17*e,.12*d,.66*e);a.fill();a.begin();a.moveTo(.72*d,.17*e);a.lineTo(.75*d,.17*e);a.lineTo(.75*d,0);a.lineTo(d,.5*e);a.lineTo(.75*d,e);a.lineTo(.75*d,.83*e);a.lineTo(.72*d,.83*e);a.close();a.fill()};mxCellRenderer.registerShape("mxgraph.lean_mapping.push_arrow",mxLeanPushArrow);
2507mxLeanPushArrow.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.17),!1),new mxConnectionConstraint(new mxPoint(.5,.17),!1),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.17),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.83),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(.25,.83),!1),new mxConnectionConstraint(new mxPoint(.5,.83),!1),new mxConnectionConstraint(new mxPoint(.75,
25081),!0)];function mxLeanSupermarket(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanSupermarket,mxShape);mxLeanSupermarket.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.moveTo(0,.33*c);a.lineTo(b,.33*c);a.moveTo(0,.67*c);a.lineTo(b,.67*c);a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.supermarket",mxLeanSupermarket);
2509mxLeanSupermarket.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(.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,
2510.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)];function mxLeanMaterialPull(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanMaterialPull,mxShape);
2511mxLeanMaterialPull.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(.732*b,.0736*c);a.arcTo(.4827*b,.4959*c,0,1,0,.9553*b,.6191*c);a.stroke();a.begin();a.moveTo(.9071*b,.6191*c);a.lineTo(.9794*b,.4951*c);a.lineTo(b,.6438*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.physical_pull",mxLeanMaterialPull);
2512mxLeanMaterialPull.prototype.constraints=[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(.98,.5),!0),new mxConnectionConstraint(new mxPoint(.144,.144),!1),new mxConnectionConstraint(new mxPoint(.144,.845),!1),new mxConnectionConstraint(new mxPoint(.845,.845),!1)];
2513function mxLeanFifoLane(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanFifoLane,mxShape);mxLeanFifoLane.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=parseFloat(mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"8"));this.background(a,b,c,d);a.setShadow(!1)};
2514mxLeanFifoLane.prototype.background=function(a,d,e,b){b=Math.min(1.5*b,e);a.begin();a.moveTo(0,b);a.lineTo(d,b);a.moveTo(0,e);a.lineTo(d,e);a.stroke();a.rect(.02*d,b+4,.26*d,e-b-8);a.fillAndStroke();a.ellipse(.35*d,b+4,.26*d,e-b-8);a.fillAndStroke();a.begin();a.moveTo(.69*d,b+4);a.lineTo(.98*d,b+4);a.lineTo(.835*d,e-4);a.close();a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.fifo_lane",mxLeanFifoLane);
2515mxLeanFifoLane.prototype.constraints=[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(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,
25161),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];function mxLeanTruckShipment(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanTruckShipment,mxShape);mxLeanTruckShipment.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1)};
2517mxLeanTruckShipment.prototype.background=function(a,d,e){a.rect(0,0,.6*d,.8*e);a.fillAndStroke();a.rect(.6*d,.35*e,.4*d,.45*e);a.fillAndStroke();var b=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(b);a.ellipse(.15*d,.8*e,.2*d,.2*e);a.fillAndStroke();a.ellipse(.65*d,.8*e,.2*d,.2*e);a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.truck_shipment",mxLeanTruckShipment);
2518mxLeanTruckShipment.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,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(.6,.35),!1),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,
25191),!0),new mxConnectionConstraint(new mxPoint(.5,.8),!1),new mxConnectionConstraint(new mxPoint(.75,1),!0)];function mxLeanProductionControl(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanProductionControl,mxShape);mxLeanProductionControl.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.schedule",mxLeanProductionControl);
2520mxLeanProductionControl.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(.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,
2521.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)];function mxLeanFifoSequence(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanFifoSequence,mxShape);
2522mxLeanFifoSequence.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.moveTo(0,c);a.lineTo(b,c);a.moveTo(.05*b,.5*c);a.lineTo(.15*b,.5*c);a.moveTo(.75*b,.5*c);a.lineTo(.88*b,.5*c);a.stroke();d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(d);a.begin();a.moveTo(.88*b,.39*c);a.lineTo(.98*b,.5*c);a.lineTo(.88*b,.61*c);a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.fifo_sequence_flow",mxLeanFifoSequence);
2523mxLeanFifoSequence.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(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(.25,
25241),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];function mxLeanProductionKanban(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanProductionKanban,mxShape);
2525mxLeanProductionKanban.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setDashed(!0);a.begin();a.moveTo(4,c-10);a.lineTo(4,25);a.lineTo(b,25);a.stroke();a.setDashed(!1);a.begin();a.moveTo(b-75,0);a.lineTo(b-30,0);a.lineTo(b-15,15);a.lineTo(b-15,50);a.lineTo(b-75,50);a.close();a.fillAndStroke();d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(d);a.begin();a.moveTo(0,c-10);a.lineTo(4,c);a.lineTo(8,c-10);a.close();a.fillAndStroke()};
2526mxCellRenderer.registerShape("mxgraph.lean_mapping.production_kanban",mxLeanProductionKanban);mxLeanProductionKanban.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,4,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,25));return a};function mxLeanWithdrawalKanban(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanWithdrawalKanban,mxShape);
2527mxLeanWithdrawalKanban.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setDashed(!0);a.begin();a.moveTo(4,c-10);a.lineTo(4,25);a.lineTo(b,25);a.stroke();a.setDashed(!1);a.begin();a.moveTo(b-75,0);a.lineTo(b-30,0);a.lineTo(b-15,15);a.lineTo(b-15,50);a.lineTo(b-75,50);a.close();a.fillAndStroke();a.begin();a.moveTo(b-75,45);a.lineTo(b-70,50);a.moveTo(b-75,35);a.lineTo(b-60,50);a.moveTo(b-75,25);a.lineTo(b-50,50);a.moveTo(b-75,15);a.lineTo(b-40,50);a.moveTo(b-75,5);a.lineTo(b-30,50);
2528a.moveTo(b-70,0);a.lineTo(b-20,50);a.moveTo(b-60,0);a.lineTo(b-15,45);a.moveTo(b-50,0);a.lineTo(b-15,35);a.moveTo(b-40,0);a.lineTo(b-15,25);a.stroke();d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(d);a.begin();a.moveTo(0,c-10);a.lineTo(4,c);a.lineTo(8,c-10);a.close();a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.withdrawal_kanban",mxLeanWithdrawalKanban);
2529mxLeanWithdrawalKanban.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,4,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,25));return a};function mxLeanSignalKanban(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanSignalKanban,mxShape);
2530mxLeanSignalKanban.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.setDashed(!0);a.begin();a.moveTo(4,c-10);a.lineTo(4,15);a.lineTo(b,15);a.stroke();a.setDashed(!1);a.begin();a.moveTo(b-65,0);a.lineTo(b-25,0);a.lineTo(b-45,45);a.close();a.fillAndStroke();d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(d);a.begin();a.moveTo(0,c-10);a.lineTo(4,c);a.lineTo(8,c-10);a.close();a.fillAndStroke()};
2531mxCellRenderer.registerShape("mxgraph.lean_mapping.signal_kanban",mxLeanSignalKanban);mxLeanSignalKanban.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,4,e));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d,15));return a};function mxLeanSequencedPullBall(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanSequencedPullBall,mxShape);
2532mxLeanSequencedPullBall.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.ellipse(0,0,b,c);a.fillAndStroke();d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(d);a.setShadow(!1);a.ellipse(.15*b,.15*c,.7*b,.7*c);a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.sequenced_pull_ball",mxLeanSequencedPullBall);
2533mxLeanSequencedPullBall.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.144,.144),!1),new mxConnectionConstraint(new mxPoint(.856,.144),!1),new mxConnectionConstraint(new mxPoint(.856,.856),!1),new mxConnectionConstraint(new mxPoint(.144,.856),!1),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0)];
2534function mxLeanRailShipment(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanRailShipment,mxShape);
2535mxLeanRailShipment.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(.1*b,0,.35*b,.8*c);a.fillAndStroke();a.rect(.55*b,0,.35*b,.8*c);a.fillAndStroke();a.begin();a.moveTo(0,c);a.lineTo(b,c);a.moveTo(.45*b,.7*c);a.lineTo(.55*b,.7*c);a.stroke();a.ellipse(.15*b,.8*c,.06*b,.2*c);a.fillAndStroke();a.ellipse(.34*b,.8*c,.06*b,.2*c);a.fillAndStroke();a.ellipse(.6*b,.8*c,.06*b,.2*c);a.fillAndStroke();a.ellipse(.79*b,.8*c,.06*b,.2*c);a.fillAndStroke()};
2536mxCellRenderer.registerShape("mxgraph.lean_mapping.rail_shipment",mxLeanRailShipment);
2537mxLeanRailShipment.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),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(.1,.25),!1),new mxConnectionConstraint(new mxPoint(.1,.5),!1),new mxConnectionConstraint(new mxPoint(.1,.75),!1),new mxConnectionConstraint(new mxPoint(.9,.25),!1),new mxConnectionConstraint(new mxPoint(.9,
2538.5),!1),new mxConnectionConstraint(new mxPoint(.9,.75),!1),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];function mxLeanWarehouse(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanWarehouse,mxShape);
2539mxLeanWarehouse.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(0,.4*c);a.lineTo(b,.4*c);a.moveTo(.15*b,c);a.lineTo(.15*b,.55*c);a.lineTo(.3*b,.55*c);a.lineTo(.3*b,c);a.stroke();a.ellipse(.27*b,.75*c,.02*b,.02*b);a.stroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.warehouse",mxLeanWarehouse);
2540mxLeanWarehouse.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(.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,
2541.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)];function mxLeanTimeline(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanTimeline,mxShape);
2542mxLeanTimeline.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=mxUtils.getValue(this.style,"mainText","20,Time 1,50,Time 2,30,Time 3,40,Time 4,30,Time 5,50,Time 6,20,Time 7").toString().split(",");d=mxUtils.getValue(this.style,mxConstants.STYLE_FONTSIZE,"12");e=[];for(var g=0,h=0;h<f.length;h+=2){var k=parseFloat(f[h]);e.push(k);g+=k}b/=g;g=[];for(h=1;h<f.length;h+=2)g.push(f[h]);a.begin();f=0;a.moveTo(0,c);for(h=0;h<g.length;h++)k=e[h]*b,f+=k,0===h%2?(a.lineTo(f,c),a.lineTo(f,
25431.5*d),a.text(f-.5*k,c-.75*d,0,0,g[h],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)):(a.lineTo(f,1.5*d),a.lineTo(f,c),a.text(f-.5*k,.75*d,0,0,g[h],mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0));a.stroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.timeline",mxLeanTimeline);function mxLeanCrossDock(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanCrossDock,mxShape);
2544mxLeanCrossDock.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(0,.25*c);a.lineTo(b,.25*c);a.moveTo(.1*b,.4*c);a.lineTo(.35*b,.4*c);a.arcTo(.15*b,.15*c,0,0,1,.5*b,.5*c);a.arcTo(.15*b,.15*c,0,0,0,.65*b,.6*c);a.lineTo(.9*b,.6*c);a.stroke();a.moveTo(.1*b,.4*c);a.lineTo(.35*b,.4*c);a.arcTo(.15*b,.25*c,0,0,1,.5*b,.55*c);a.arcTo(.15*b,.25*c,0,0,0,.65*b,.7*c);a.lineTo(.9*b,.7*c);a.stroke();a.moveTo(.1*b,.4*c);a.lineTo(.35*
2545b,.4*c);a.arcTo(.15*b,.3*c,0,0,1,.5*b,.6*c);a.arcTo(.15*b,.3*c,0,0,0,.65*b,.8*c);a.lineTo(.9*b,.8*c);a.stroke();a.moveTo(.1*b,.8*c);a.lineTo(.35*b,.8*c);a.arcTo(.15*b,.3*c,0,0,0,.5*b,.6*c);a.arcTo(.15*b,.3*c,0,0,1,.65*b,.4*c);a.lineTo(.9*b,.4*c);a.stroke();a.moveTo(.1*b,.8*c);a.lineTo(.35*b,.8*c);a.arcTo(.15*b,.1*c,0,0,0,.5*b,.75*c);a.arcTo(.15*b,.1*c,0,0,1,.65*b,.7*c);a.lineTo(.9*b,.7*c);a.stroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.crossDock",mxLeanCrossDock);
2546mxLeanCrossDock.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(.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,
2547.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)];function mxLeanOrders(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanOrders,mxShape);
2548mxLeanOrders.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,.56*c,b,.44*c);a.fillAndStroke();d=parseFloat(mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"2"));a.setStrokeWidth(.5*d);a.begin();a.moveTo(.04*b,.5418*c);a.lineTo(.94*b,.5418*c);a.moveTo(.0522*b,.5088*c);a.lineTo(.9522*b,.5088*c);a.moveTo(.05*b,.4738*c);a.lineTo(.95*b,.4738*c);a.moveTo(.0456*b,.4427*c);a.lineTo(.9456*b,.4427*c);a.moveTo(.0422*b,.4135*c);a.lineTo(.9422*b,.4135*c);a.moveTo(.0533*b,.3804*
2549c);a.lineTo(.9533*b,.3804*c);a.moveTo(.0556*b,.3454*c);a.lineTo(.9556*b,.3454*c);a.moveTo(.05*b,.3143*c);a.lineTo(.95*b,.3143*c);a.moveTo(.0489*b,.2832*c);a.lineTo(.0489*b,.2832*c);a.moveTo(.0544*b,.254*c);a.lineTo(.9544*b,.254*c);a.moveTo(.0489*b,.221*c);a.lineTo(.9489*b,.221*c);a.moveTo(.0556*b,.1918*c);a.lineTo(.9556*b,.1918*c);a.moveTo(.0522*b,.1587*c);a.lineTo(.9522*b,.1587*c);a.moveTo(.0544*b,.1276*c);a.lineTo(.9544*b,.1276*c);a.moveTo(.0544*b,.0965*c);a.lineTo(.9544*b,.0965*c);a.moveTo(.0556*
2550b,.0654*c);a.lineTo(.9556*b,.0654*c);a.moveTo(.0533*b,.0304*c);a.lineTo(.9533*b,.0304*c);a.moveTo(.0556*b,0);a.lineTo(.9556*b,0);a.stroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.orders",mxLeanOrders);
2551mxLeanOrders.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.05,0),!0),new mxConnectionConstraint(new mxPoint(.95,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),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(.05,.25),!1),new mxConnectionConstraint(new mxPoint(.05,.5),!1),new mxConnectionConstraint(new mxPoint(0,
2552.75),!0),new mxConnectionConstraint(new mxPoint(.95,.25),!1),new mxConnectionConstraint(new mxPoint(.95,.5),!1),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)];function mxLeanBatchedKanban(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanBatchedKanban,mxShape);
2553mxLeanBatchedKanban.prototype.paintVertexShape=function(a,d,e,b,c){b=Math.max(110,b);a.translate(d,e);a.begin();a.moveTo(4,.5*c);a.lineTo(b,.5*c);a.stroke();a.begin();a.moveTo(.5*b-20,.5*c-35);a.lineTo(.5*b+25,.5*c-35);a.lineTo(.5*b+40,.5*c-20);a.lineTo(.5*b+40,.5*c+15);a.lineTo(.5*b-20,.5*c+15);a.close();a.fillAndStroke();a.begin();a.moveTo(.5*b-30,.5*c-25);a.lineTo(.5*b+15,.5*c-25);a.lineTo(.5*b+30,.5*c-10);a.lineTo(.5*b+30,.5*c+25);a.lineTo(.5*b-30,.5*c+25);a.close();a.fillAndStroke();a.begin();
2554a.moveTo(.5*b-40,.5*c-15);a.lineTo(.5*b+5,.5*c-15);a.lineTo(.5*b+20,.5*c);a.lineTo(.5*b+20,.5*c+35);a.lineTo(.5*b-40,.5*c+35);a.close();a.fillAndStroke();d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(d);a.begin();a.moveTo(b-10,.5*c-4);a.lineTo(b,.5*c);a.lineTo(b-10,.5*c+4);a.close();a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.batched_kanban",mxLeanBatchedKanban);
2555mxLeanBatchedKanban.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0)];function mxLeanControlCenter(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxLeanControlCenter,mxShape);mxLeanControlCenter.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(.15*b,0,.7*b,.8*c);a.fillAndStroke();a.rect(0,.8*c,b,.2*c);a.fillAndStroke()};
2556mxCellRenderer.registerShape("mxgraph.lean_mapping.control_center",mxLeanControlCenter);
2557mxLeanControlCenter.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.15,0),!0),new mxConnectionConstraint(new mxPoint(.85,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(.15,.25),!1),new mxConnectionConstraint(new mxPoint(.15,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(.85,.25),!1),new mxConnectionConstraint(new mxPoint(.85,
2558.5),!1),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)];function mxLeanElectronicInfoShape(){mxArrow.call(this)}mxUtils.extend(mxLeanElectronicInfoShape,mxArrow);
2559mxLeanElectronicInfoShape.prototype.paintEdgeShape=function(a,d){var e=d[0],b=d[d.length-1],c=b.x-e.x,f=b.y-e.y;e.x+=.05*c;e.y+=.05*f;b.x-=.05*c;b.y-=.05*f;var c=b.x-e.x,f=b.y-e.y,g=Math.sqrt(c*c+f*f),h=c/g,k=f/g,l=e.x+.5*c,m=e.y+.5*f,c=l-h*g*.1-k/3*g*.1,f=m-k*g*.1+h/3*g*.1,l=l+h*g*.1+k/3*g*.1,g=m+k*g*.1-h/3*g*.1;a.begin();a.moveTo(e.x,e.y);a.lineTo(l,g);a.lineTo(c,f);a.lineTo(b.x,b.y);a.stroke();c=b.x-c;f=b.y-f;g=Math.sqrt(c*c+f*f);h=c/g;k=f/g;a.setFillColor(mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,
2560"#000000"));a.begin();a.moveTo(b.x-10*h-5*k,b.y-10*k+5*h);a.lineTo(b.x,b.y);a.lineTo(b.x-10*h+5*k,b.y-10*k-5*h);a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.lean_mapping.electronic_info_flow_edge",mxLeanElectronicInfoShape);function mxLeanManualInfoShape(){mxArrow.call(this)}mxUtils.extend(mxLeanManualInfoShape,mxArrow);
2561mxLeanManualInfoShape.prototype.paintEdgeShape=function(a,d){var e=d[0],b=d[d.length-1],c=b.x-e.x,f=b.y-e.y;e.x+=.05*c;e.y+=.05*f;b.x-=.05*c;b.y-=.05*f;var c=b.x-e.x,f=b.y-e.y,g=Math.sqrt(c*c+f*f),c=c/g,f=f/g;a.begin();a.moveTo(e.x,e.y);a.lineTo(b.x,b.y);a.stroke();a.setFillColor(mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"));a.begin();a.moveTo(b.x-10*c-5*f,b.y-10*f+5*c);a.lineTo(b.x,b.y);a.lineTo(b.x-10*c+5*f,b.y-10*f-5*c);a.fillAndStroke()};
2562mxCellRenderer.registerShape("mxgraph.lean_mapping.manual_info_flow_edge",mxLeanManualInfoShape);function mxShapeLeanTimeline(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeLeanTimeline,mxShape);mxShapeLeanTimeline.prototype.cst={SHAPE_TIMELINE:"mxgraph.lean_mapping.timeline2"};
2563mxShapeLeanTimeline.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);var f=mxUtils.getValue(this.style,"dy1","0");d=mxUtils.getValue(this.style,"dx2","0");e=mxUtils.getValue(this.style,"dy2","0");var g=mxUtils.getValue(this.style,"dx3","0"),h=mxUtils.getValue(this.style,"dy3","0"),k=mxUtils.getValue(this.style,"dx4","0"),l=mxUtils.getValue(this.style,"dy4","0"),m=mxUtils.getValue(this.style,"dx5","0"),n=mxUtils.getValue(this.style,"dy5","0"),p=mxUtils.getValue(this.style,"dy6","0");
2564a.begin();.5>=f?(a.moveTo(0,0),f=!0):(a.moveTo(0,c),f=!1);.5>=e&&f?(a.lineTo(d,0),f=!0):.5<e&&!f?(a.lineTo(d,c),f=!1):.5>=e&&!f?(a.lineTo(d,c),a.lineTo(d,0),f=!0):(a.lineTo(d,0),a.lineTo(d,c),f=!1);.5>=h&&f?(a.lineTo(g,0),f=!0):.5<h&&!f?(a.lineTo(g,c),f=!1):.5>=h&&!f?(a.lineTo(g,c),a.lineTo(g,0),f=!0):(a.lineTo(g,0),a.lineTo(g,c),f=!1);.5>=l&&f?(a.lineTo(k,0),f=!0):.5<l&&!f?(a.lineTo(k,c),f=!1):.5>=l&&!f?(a.lineTo(k,c),a.lineTo(k,0),f=!0):(a.lineTo(k,0),a.lineTo(k,c),f=!1);.5>=n&&f?(a.lineTo(m,0),
2565f=!0):.5<n&&!f?(a.lineTo(m,c),f=!1):.5>=n&&!f?(a.lineTo(m,c),a.lineTo(m,0),f=!0):(a.lineTo(m,0),a.lineTo(m,c),f=!1);.5>=p&&f?a.lineTo(b,0):.5<p&&!f?a.lineTo(b,c):.5>=p&&!f?(a.lineTo(b,c),a.lineTo(b,0)):(a.lineTo(b,0),a.lineTo(b,c));a.stroke()};mxCellRenderer.registerShape(mxShapeLeanTimeline.prototype.cst.SHAPE_TIMELINE,mxShapeLeanTimeline);
2566Graph.handleFactory[mxShapeLeanTimeline.prototype.cst.SHAPE_TIMELINE]=function(a){var d=[Graph.createHandle(a,["dy1"],function(a){var b=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"dy1",0))));return new mxPoint(a.x,a.y+b*a.height)},function(a,c){this.state.style.dy1=Math.round(1E3*Math.max(0,Math.min(1,(c.y-a.y)/a.height)))/1E3})],e=Graph.createHandle(a,["dx2","dy2"],function(a){var b=Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"dx3",0)),parseFloat(mxUtils.getValue(this.state.style,
2567"dx2",0)))),d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"dy2",0))));return new mxPoint(a.x+b,a.y+d*a.height)},function(a,c){this.state.style.dx2=Math.round(1E3*Math.max(0,Math.min(parseFloat(mxUtils.getValue(this.state.style,"dx3",0)),c.x-a.x)))/1E3;this.state.style.dy2=Math.round(1E3*Math.max(0,Math.min(1,(c.y-a.y)/a.height)))/1E3});d.push(e);e=Graph.createHandle(a,["dx3","dy3"],function(a){var b=Math.max(parseFloat(mxUtils.getValue(this.state.style,"dx2",0)),Math.min(parseFloat(mxUtils.getValue(this.state.style,
2568"dx4",0)),parseFloat(mxUtils.getValue(this.state.style,"dx3",0)))),d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"dy3",0))));return new mxPoint(a.x+b,a.y+d*a.height)},function(a,c){this.state.style.dx3=Math.round(1E3*Math.max(parseFloat(mxUtils.getValue(this.state.style,"dx2",0)),Math.min(parseFloat(mxUtils.getValue(this.state.style,"dx4",0)),c.x-a.x)))/1E3;this.state.style.dy3=Math.round(1E3*Math.max(0,Math.min(1,(c.y-a.y)/a.height)))/1E3});d.push(e);e=Graph.createHandle(a,
2569["dx4","dy4"],function(a){var b=Math.max(parseFloat(mxUtils.getValue(this.state.style,"dx3",0)),Math.min(parseFloat(mxUtils.getValue(this.state.style,"dx5",0)),parseFloat(mxUtils.getValue(this.state.style,"dx4",0)))),d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"dy4",0))));return new mxPoint(a.x+b,a.y+d*a.height)},function(a,c){this.state.style.dx4=Math.round(1E3*Math.max(parseFloat(mxUtils.getValue(this.state.style,"dx3",0)),Math.min(parseFloat(mxUtils.getValue(this.state.style,
2570"dx5",0)),c.x-a.x)))/1E3;this.state.style.dy4=Math.round(1E3*Math.max(0,Math.min(1,(c.y-a.y)/a.height)))/1E3});d.push(e);e=Graph.createHandle(a,["dx5","dy5"],function(a){var b=Math.max(parseFloat(mxUtils.getValue(this.state.style,"dx4",0)),Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"dx5",0)))),d=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"dy5",0))));return new mxPoint(a.x+b,a.y+d*a.height)},function(a,c){this.state.style.dx5=Math.round(1E3*Math.max(parseFloat(mxUtils.getValue(this.state.style,
2571"dx4",0)),Math.min(a.width,c.x-a.x)))/1E3;this.state.style.dy5=Math.round(1E3*Math.max(0,Math.min(1,(c.y-a.y)/a.height)))/1E3});d.push(e);a=Graph.createHandle(a,["dy6"],function(a){var b=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"dy6",0))));return new mxPoint(a.x+a.width,a.y+b*a.height)},function(a,c){this.state.style.dy6=Math.round(1E3*Math.max(0,Math.min(1,(c.y-a.y)/a.height)))/1E3});d.push(a);return d};
2572function mxShapeNetworksBus(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeNetworksBus,mxShape);mxShapeNetworksBus.prototype.cst={SHAPE_BUS:"mxgraph.networks.bus"};mxShapeNetworksBus.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2573mxShapeNetworksBus.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(8,.5*c+10);a.arcTo(12,12,0,0,1,8,.5*c-10);a.lineTo(b-8,.5*c-10);a.arcTo(12,12,0,0,1,b-8,.5*c+10);a.close();a.fillAndStroke()};mxShapeNetworksBus.prototype.foreground=function(a,d,e,b,c){a.setFillColor("#ffffff");a.begin();a.moveTo(b-8,.5*c-10);a.arcTo(12,12,0,0,1,b-8,.5*c+10);a.arcTo(12,12,0,0,1,b-8,.5*c-10);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeNetworksBus.prototype.cst.SHAPE_BUS,mxShapeNetworksBus);
2574function mxShapeNetworksCommLinkEdge(){mxArrow.call(this)}mxUtils.extend(mxShapeNetworksCommLinkEdge,mxArrow);
2575mxShapeNetworksCommLinkEdge.prototype.paintEdgeShape=function(a,d){var e=d[0],b=d[d.length-1],c=b.x-e.x,f=b.y-e.y;e.x+=.05*c;e.y+=.05*f;b.x-=.05*c;b.y-=.05*f;var c=b.x-e.x,f=b.y-e.y,g=Math.sqrt(c*c+f*f),h=c/g,k=f/g,l=e.x+.5*c,m=e.y+.5*f,f=l+h*g/3*.1-k/3*g*.1,c=m+k*g/3*.1+h/3*g*.1,n=l+h*g*.1+k*g*.1,p=m+k*g*.1-h*g*.1,q=l-h*g/3*.1+k/3*g*.1,t=m-k*g/3*.1-h/3*g*.1,l=l-h*g*.1-k*g*.1,g=m-k*g*.1+h*g*.1;a.begin();a.moveTo(e.x,e.y);a.lineTo(n,p);a.lineTo(f,c);a.lineTo(b.x,b.y);a.lineTo(l,g);a.lineTo(q,t);a.close();
2576a.fillAndStroke()};mxCellRenderer.registerShape("mxgraph.networks.comm_link_edge",mxShapeNetworksCommLinkEdge);function mxShapeSysMLComposite(){mxCylinder.call(this)}mxUtils.extend(mxShapeSysMLComposite,mxShape);mxShapeSysMLComposite.prototype.isHtmlAllowed=function(){return!1};
2577mxShapeSysMLComposite.prototype.paintForeground=function(a,d,e,b,c){if(null!=this.style){var f=mxCellRenderer.defaultShapes[this.style.symbol0];a.save();var g=new f;g.style=this.style;f.prototype.paintVertexShape.call(g,a,d,e,b,c);a.restore();a.setDashed(!1);var h=1;do{f=mxCellRenderer.defaultShapes[this.style["symbol"+h]];if(null!=f){var g=this.style["symbol"+h+"Align"],k=this.style["symbol"+h+"VerticalAlign"],l=this.style["symbol"+h+"Width"],m=this.style["symbol"+h+"Height"],n=this.style["symbol"+
2578h+"Spacing"]||0,p=this.style["symbol"+h+"VSpacing"]||0,q=this.style["symbol"+h+"ArcSpacing"],t=this.style["symbol"+h+"Direction"];null!=q&&(n+=this.getArcSize(b+this.strokewidth,c+this.strokewidth)*q,p+=this.getArcSize(b+this.strokewidth,c+this.strokewidth)*q);var q=d,u=e,q=g==mxConstants.ALIGN_CENTER?q+(b-l)/2:g==mxConstants.ALIGN_RIGHT?q+(b-l-n):q+n,u=k==mxConstants.ALIGN_MIDDLE?u+(c-m)/2:k==mxConstants.ALIGN_BOTTOM?u+(c-m-p):u+p;a.save();g=new f;g.style=mxUtils.clone(this.style);g.direction=t;
2579g.updateTransform(a,q,u,l,m);f.prototype.paintVertexShape.call(g,a,q,u,l,m);a.restore()}h++}while(null!=f)}};mxCellRenderer.registerShape("mxgraph.sysml.composite",mxShapeSysMLComposite);function mxShapeSysMLPackage(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLPackage,mxShape);mxShapeSysMLPackage.prototype.cst={PACKAGE:"mxgraph.sysml.package",LABEL_X:"labelX"};
2580mxShapeSysMLPackage.prototype.customProperties=[{name:"labelX",dispName:"Header Width",type:"float",min:0,defVal:90}];
2581mxShapeSysMLPackage.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
2582.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};
2583mxShapeSysMLPackage.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeSysMLPackage.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};mxShapeSysMLPackage.prototype.foreground=function(a,d,e,b,c){d=parseInt(mxUtils.getValue(this.style,mxShapeSysMLPackage.prototype.cst.LABEL_X,"90"));d=Math.min(d,b);20<d&&(a.begin(),a.moveTo(0,20),a.lineTo(d-10,20),a.lineTo(d,10),a.lineTo(d,0),a.stroke())};
2584mxCellRenderer.registerShape(mxShapeSysMLPackage.prototype.cst.PACKAGE,mxShapeSysMLPackage);Graph.handleFactory[mxShapeSysMLPackage.prototype.cst.PACKAGE]=function(a){return[Graph.createHandle(a,["labelX"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"labelX",90))));return new mxPoint(a.x+d,a.y+10)},function(a,e){this.state.style.labelX=Math.round(100*Math.max(0,Math.min(a.width,e.x-a.x)))/100})]};
2585function mxShapeSysMLPackage2(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLPackage2,mxShape);mxShapeSysMLPackage2.prototype.cst={PACKAGE2:"mxgraph.sysml.package2",LABEL_X:"labelX"};mxShapeSysMLPackage2.prototype.customProperties=[{name:"labelX",dispName:"Header Width",type:"float",min:0,defVal:90}];
2586mxShapeSysMLPackage2.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeSysMLPackage2.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.stroke()};
2587mxShapeSysMLPackage2.prototype.foreground=function(a,d,e,b,c){d=parseInt(mxUtils.getValue(this.style,mxShapeSysMLPackage2.prototype.cst.LABEL_X,"90"));d=Math.min(d,b);20<d&&(a.begin(),a.moveTo(0,20),a.lineTo(d-10,20),a.lineTo(d,10),a.lineTo(d,0),a.lineTo(0,0),a.close(),a.fillAndStroke())};mxCellRenderer.registerShape(mxShapeSysMLPackage2.prototype.cst.PACKAGE2,mxShapeSysMLPackage2);
2588Graph.handleFactory[mxShapeSysMLPackage2.prototype.cst.PACKAGE2]=function(a){return[Graph.createHandle(a,["labelX"],function(a){var d=Math.max(0,Math.min(a.width,parseFloat(mxUtils.getValue(this.state.style,"labelX",90))));return new mxPoint(a.x+d,a.y+10)},function(a,e){this.state.style.labelX=Math.round(100*Math.max(0,Math.min(a.width,e.x-a.x)))/100})]};function mxShapeSysMLNone(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2589mxUtils.extend(mxShapeSysMLNone,mxShape);mxShapeSysMLNone.prototype.cst={NONE:"mxgraph.sysml.none"};mxShapeSysMLNone.prototype.paintVertexShape=function(a,d,e,b,c){};mxCellRenderer.registerShape(mxShapeSysMLNone.prototype.cst.NONE,mxShapeSysMLNone);function mxShapeSysMLRect(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLRect,mxShape);mxShapeSysMLRect.prototype.cst={RECT:"mxgraph.sysml.rect"};
2590mxShapeSysMLRect.prototype.paintVertexShape=function(a,d,e,b,c){a.rect(d,e,b,c);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLRect.prototype.cst.RECT,mxShapeSysMLRect);function mxShapeSysMLPortOne(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLPortOne,mxShape);mxShapeSysMLPortOne.prototype.cst={PORT1:"mxgraph.sysml.port1"};
2591mxShapeSysMLPortOne.prototype.paintVertexShape=function(a,d,e,b,c){a.rect(d+.05*b,e,b-.1*b,c);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLPortOne.prototype.cst.PORT1,mxShapeSysMLPortOne);
2592mxShapeSysMLPortOne.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.05,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.95,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.95,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(.95,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.95,
25931),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.05,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.05,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.05,.25),!1));return a};function mxShapeSysMLPortTwo(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2594mxUtils.extend(mxShapeSysMLPortTwo,mxShape);mxShapeSysMLPortTwo.prototype.cst={PORT2:"mxgraph.sysml.port2"};mxShapeSysMLPortTwo.prototype.paintVertexShape=function(a,d,e,b,c){a.rect(d+.05*b,e,.8*b,c);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLPortTwo.prototype.cst.PORT2,mxShapeSysMLPortTwo);
2595mxShapeSysMLPortTwo.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.05,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.95,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.95,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(.95,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.95,
25961),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.05,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.05,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(.05,.25),!1));return a};function mxShapeSysMLPortThree(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2597mxUtils.extend(mxShapeSysMLPortThree,mxShape);mxShapeSysMLPortThree.prototype.cst={PORT3:"mxgraph.sysml.port3"};
2598mxShapeSysMLPortThree.prototype.paintVertexShape=function(a,d,e,b,c){a.rect(d+.07*b,e,.86*b,c);a.fillAndStroke();a.rect(d,e+.125*c,.14*b,.25*c);a.fillAndStroke();a.rect(d,e+.625*c,.14*b,.25*c);a.fillAndStroke();a.rect(d+.86*b,e+.375*c,.14*b,.25*c);a.fillAndStroke();this.drawIn(a,d+.01*b,e+.2*c,.11*b,.1*c);this.drawOut(a,d+.02*b,e+.7*c,.11*b,.1*c);this.drawInOut(a,d+.88*b,e+.45*c,.1*b,.1*c)};
2599mxShapeSysMLPortThree.prototype.drawIn=function(a,d,e,b,c){a.begin();a.moveTo(d,e+.5*c);a.lineTo(d+b,e+.5*c);a.moveTo(d+.75*b,e);a.lineTo(d+b,e+.5*c);a.lineTo(d+.75*b,e+c);a.stroke()};mxShapeSysMLPortThree.prototype.drawOut=function(a,d,e,b,c){a.begin();a.moveTo(d,e+.5*c);a.lineTo(d+b,e+.5*c);a.moveTo(d+.25*b,e);a.lineTo(d,e+.5*c);a.lineTo(d+.25*b,e+c);a.stroke()};
2600mxShapeSysMLPortThree.prototype.drawInOut=function(a,d,e,b,c){a.begin();a.moveTo(d+.75*b,e);a.lineTo(d+b,e+.5*c);a.lineTo(d+.75*b,e+c);a.moveTo(d+.25*b,e);a.lineTo(d,e+.5*c);a.lineTo(d+.25*b,e+c);a.stroke()};mxCellRenderer.registerShape(mxShapeSysMLPortThree.prototype.cst.PORT3,mxShapeSysMLPortThree);function mxShapeSysMLPortFour(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLPortFour,mxShape);
2601mxShapeSysMLPortFour.prototype.cst={PORT4:"mxgraph.sysml.port4"};mxShapeSysMLPortFour.prototype.paintVertexShape=function(a,d,e,b,c){a.rect(d+.05*b,e,b-.05*b,c);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLPortFour.prototype.cst.PORT4,mxShapeSysMLPortFour);
2602mxShapeSysMLPortFour.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0)];function mxShapeSysMLItemFlow(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLItemFlow,mxShape);
2603mxShapeSysMLItemFlow.prototype.cst={ITEM_FLOW:"mxgraph.sysml.itemFlow",FLOW_DIR:"flowDir",FLOW_TYPE:"flowType"};mxShapeSysMLItemFlow.prototype.customProperties=[{name:"flowDir",dispName:"Flow Direction",type:"enum",enumList:[{val:"n",dispName:"North"},{val:"s",dispName:"South"},{val:"e",dispName:"East"},{val:"w",dispName:"West"}]},{name:"flowType",dispName:"Flow Type",type:"enum",enumList:[{val:"in",dispName:"In"},{val:"out",dispName:"Out"}]}];
2604mxShapeSysMLItemFlow.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapeSysMLItemFlow.prototype.cst.FLOW_DIR,"none").toLowerCase(),g=mxUtils.getValue(this.style,mxShapeSysMLItemFlow.prototype.cst.FLOW_TYPE,"none");"n"===f?(a.rect(d,e+10,b,c-10),a.fillAndStroke(),a.setShadow(!1),a.rect(d+.5*b-10,e,20,20),a.fillAndStroke(),"in"===g?this.drawDown(a,d+.5*b-5,e+2,10,16):"out"===g&&this.drawUp(a,d+.5*b-5,e+2,10,16)):"s"===f?(a.rect(d,e,b,c-10),a.fillAndStroke(),a.setShadow(!1),
2605a.rect(d+.5*b-10,e+c-20,20,20),a.fillAndStroke(),"in"===g?this.drawUp(a,d+.5*b-5,e+c-18,10,16):"out"===g&&this.drawDown(a,d+.5*b-5,e+c-18,10,16)):"w"===f?(a.rect(d+10,e,b-10,c),a.fillAndStroke(),a.setShadow(!1),a.rect(d,e+.5*c-10,20,20),a.fillAndStroke(),"in"===g?this.drawRight(a,d+2,e+.5*c-5,16,10):"out"===g&&this.drawLeft(a,d+2,e+.5*c-5,16,10)):"e"===f&&(a.rect(d,e,b-10,c),a.fillAndStroke(),a.setShadow(!1),a.rect(d+b-20,e+.5*c-10,20,20),a.fillAndStroke(),"in"===g?this.drawLeft(a,d+b-18,e+.5*c-5,
260616,10):"out"===g&&this.drawRight(a,d+b-18,e+.5*c-5,16,10))};mxShapeSysMLItemFlow.prototype.drawRight=function(a,d,e,b,c){a.begin();a.moveTo(d,e+.5*c);a.lineTo(d+b,e+.5*c);a.moveTo(d+.75*b,e);a.lineTo(d+b,e+.5*c);a.lineTo(d+.75*b,e+c);a.stroke()};mxShapeSysMLItemFlow.prototype.drawDown=function(a,d,e,b,c){a.begin();a.moveTo(d+.5*b,e);a.lineTo(d+.5*b,e+c);a.moveTo(d,e+.75*c);a.lineTo(d+.5*b,e+c);a.lineTo(d+b,e+.75*c);a.stroke()};
2607mxShapeSysMLItemFlow.prototype.drawLeft=function(a,d,e,b,c){a.begin();a.moveTo(d,e+.5*c);a.lineTo(d+b,e+.5*c);a.moveTo(d+.25*b,e);a.lineTo(d,e+.5*c);a.lineTo(d+.25*b,e+c);a.stroke()};mxShapeSysMLItemFlow.prototype.drawUp=function(a,d,e,b,c){a.begin();a.moveTo(d+.5*b,e+c);a.lineTo(d+.5*b,e);a.moveTo(d,e+.25*c);a.lineTo(d+.5*b,e);a.lineTo(d+b,e+.25*c);a.stroke()};mxCellRenderer.registerShape(mxShapeSysMLItemFlow.prototype.cst.ITEM_FLOW,mxShapeSysMLItemFlow);
2608mxShapeSysMLItemFlow.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0)];function mxShapeSysMLItemFlowLeft(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLItemFlowLeft,mxShape);mxShapeSysMLItemFlowLeft.prototype.cst={ITEM_FLOW_LEFT:"mxgraph.sysml.itemFlowLeft"};
2609mxShapeSysMLItemFlowLeft.prototype.paintVertexShape=function(a,d,e,b,c){a.rect(d+10,e,b-10,c);a.fillAndStroke();a.rect(d,e+.25*c-10,20,20);a.fillAndStroke();a.rect(d,e+.5*c-10,20,20);a.fillAndStroke();a.rect(d,e+.75*c-10,20,20);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLItemFlowLeft.prototype.cst.ITEM_FLOW_LEFT,mxShapeSysMLItemFlowLeft);
2610mxShapeSysMLItemFlowLeft.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0)];function mxShapeSysMLItemFlowRight(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2611mxUtils.extend(mxShapeSysMLItemFlowRight,mxShape);mxShapeSysMLItemFlowRight.prototype.cst={ITEM_FLOW_RIGHT:"mxgraph.sysml.itemFlowRight"};mxShapeSysMLItemFlowRight.prototype.paintVertexShape=function(a,d,e,b,c){a.rect(d,e,b-10,c);a.fillAndStroke();a.rect(d+b-20,e+.25*c-10,20,20);a.fillAndStroke();a.rect(d+b-20,e+.5*c-10,20,20);a.fillAndStroke();a.rect(d+b-20,e+.75*c-10,20,20);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLItemFlowRight.prototype.cst.ITEM_FLOW_RIGHT,mxShapeSysMLItemFlowRight);
2612mxShapeSysMLItemFlowRight.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];function mxShapeSysMLNestedPort(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2613mxUtils.extend(mxShapeSysMLNestedPort,mxShape);mxShapeSysMLNestedPort.prototype.cst={NESTED_PORT:"mxgraph.sysml.nestedPort"};mxShapeSysMLNestedPort.prototype.paintVertexShape=function(a,d,e,b,c){a.rect(d+.08*b,e,.92*b,c);a.fillAndStroke();a.rect(d+.03*b,e+.1*c,.1*b,.8*c);a.fillAndStroke();a.rect(d,e+.15*c,.06*b,.16*c);a.fillAndStroke();a.rect(d,e+.42*c,.06*b,.16*c);a.fillAndStroke();a.rect(d,e+.69*c,.06*b,.16*c);a.fillAndStroke()};
2614mxCellRenderer.registerShape(mxShapeSysMLNestedPort.prototype.cst.NESTED_PORT,mxShapeSysMLNestedPort);mxMarker.addMarker("sysMLPackCont",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1),p=g/2;return function(){a.begin();a.moveTo(b.x-m/2-n/2,b.y-n/2+m/2);a.lineTo(b.x-m/2+n/2,b.y-n/2-m/2);a.stroke();a.ellipse(b.x-.5*m-p,b.y-.5*n-p,2*p,2*p);a.stroke()}});
2615mxMarker.addMarker("sysMLReqInt",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1),p=g/2;return function(){var c=mxUtils.getValue(d.style,mxConstants.STYLE_FILLCOLOR,"none");a.setFillColor(c);a.ellipse(b.x-.5*m-p,b.y-.5*n-p,2*p,2*p);a.fillAndStroke()}});
2616mxMarker.addMarker("sysMLProvInt",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1),p=g/2;return function(){var c=mxUtils.getValue(d.style,mxConstants.STYLE_FILLCOLOR,"none");a.setFillColor(c);a.begin();a.moveTo(b.x-n/2,b.y+m/2);a.arcTo(p,p,0,0,1,b.x+n/2,b.y-m/2);a.fillAndStroke()}});function mxShapeSysMLParametricDiagram(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLParametricDiagram,mxShape);
2617mxShapeSysMLParametricDiagram.prototype.cst={PARAM_DGM:"mxgraph.sysml.paramDgm"};mxShapeSysMLParametricDiagram.prototype.paintVertexShape=function(a,d,e,b,c){a.roundrect(d,e,b,c,10,10);a.fillAndStroke();a.setShadow(!1);60<c&&(a.rect(d,e+.25*c-10,20,20),a.stroke(),a.rect(d,e+.75*c-10,20,20),a.stroke())};mxCellRenderer.registerShape(mxShapeSysMLParametricDiagram.prototype.cst.PARAM_DGM,mxShapeSysMLParametricDiagram);
2618function mxShapeSysMLConstraintProperty(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLConstraintProperty,mxShape);mxShapeSysMLConstraintProperty.prototype.cst={CONS_PROP:"mxgraph.sysml.consProp"};mxShapeSysMLConstraintProperty.prototype.paintVertexShape=function(a,d,e,b,c){a.rect(d,e,b,c);a.fillAndStroke();a.setShadow(!1);60<c&&(a.rect(d,e+50,20,20),a.stroke(),a.rect(d,e+80,20,20),a.stroke())};
2619mxCellRenderer.registerShape(mxShapeSysMLConstraintProperty.prototype.cst.CONS_PROP,mxShapeSysMLConstraintProperty);function mxShapeSysMLCallBehaviorAction(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLCallBehaviorAction,mxShape);mxShapeSysMLCallBehaviorAction.prototype.cst={CALL_BEH_ACT:"mxgraph.sysml.callBehAct"};
2620mxShapeSysMLCallBehaviorAction.prototype.paintVertexShape=function(a,d,e,b,c){a.roundrect(d,e,b,c,10,10);a.fillAndStroke();30<c&&40<b&&(a.setShadow(!1),this.drawSymb(a,d+b-30,e+c-30,20,20))};mxShapeSysMLCallBehaviorAction.prototype.drawSymb=function(a,d,e,b,c){a.begin();a.moveTo(d+.5*b,e);a.lineTo(d+.5*b,e+c);a.moveTo(d,e+c);a.lineTo(d,e+.5*c);a.lineTo(d+b,e+.5*c);a.lineTo(d+b,e+c);a.stroke()};mxCellRenderer.registerShape(mxShapeSysMLCallBehaviorAction.prototype.cst.CALL_BEH_ACT,mxShapeSysMLCallBehaviorAction);
2621mxShapeSysMLCallBehaviorAction.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,-2.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));
2622a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-2.9,-2.9));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,2.9,-2.9));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
2623.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));return a};function mxShapeSysMLAcceptEventAction(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLAcceptEventAction,mxShape);mxShapeSysMLAcceptEventAction.prototype.cst={ACC_EVENT:"mxgraph.sysml.accEvent"};
2624mxShapeSysMLAcceptEventAction.prototype.paintVertexShape=function(a,d,e,b,c){a.begin();a.moveTo(d,e);a.lineTo(d+b,e);a.lineTo(d+b,e+c);a.lineTo(d,e+c);a.lineTo(d+.3*c,e+.5*c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLAcceptEventAction.prototype.cst.ACC_EVENT,mxShapeSysMLAcceptEventAction);
2625mxShapeSysMLAcceptEventAction.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,
2626.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,.3*e,0));return a};
2627function mxShapeSysMLTimeEvent(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLTimeEvent,mxShape);mxShapeSysMLTimeEvent.prototype.cst={TIME_EVENT:"mxgraph.sysml.timeEvent"};mxShapeSysMLTimeEvent.prototype.paintVertexShape=function(a,d,e,b,c){a.begin();a.moveTo(d,e);a.lineTo(d+b,e);a.lineTo(d,e+c);a.lineTo(d+b,e+c);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLTimeEvent.prototype.cst.TIME_EVENT,mxShapeSysMLTimeEvent);
2628mxShapeSysMLTimeEvent.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,.5),!1));return a};
2629function mxShapeSysMLSendSignalAction(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLSendSignalAction,mxShape);mxShapeSysMLSendSignalAction.prototype.cst={SEND_SIG_ACT:"mxgraph.sysml.sendSigAct"};mxShapeSysMLSendSignalAction.prototype.paintVertexShape=function(a,d,e,b,c){a.begin();a.moveTo(d,e);a.lineTo(d+b-.3*c,e);a.lineTo(d+b,e+.5*c);a.lineTo(d+b-.3*c,e+c);a.lineTo(d,e+c);a.close();a.fillAndStroke()};
2630mxCellRenderer.registerShape(mxShapeSysMLSendSignalAction.prototype.cst.SEND_SIG_ACT,mxShapeSysMLSendSignalAction);
2631mxShapeSysMLSendSignalAction.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,.3*-e,0));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,.3*-e,0));a.push(new mxConnectionConstraint(new mxPoint(.25,
26321),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));return a};function mxShapeSysMLActivityFinal(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2633mxUtils.extend(mxShapeSysMLActivityFinal,mxShape);mxShapeSysMLActivityFinal.prototype.cst={ACT_FINAL:"mxgraph.sysml.actFinal"};mxShapeSysMLActivityFinal.prototype.paintVertexShape=function(a,d,e,b,c){a.ellipse(d,e,b,c);a.fillAndStroke();var f=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(f);a.ellipse(d+5,e+5,b-10,c-10);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLActivityFinal.prototype.cst.ACT_FINAL,mxShapeSysMLActivityFinal);
2634mxShapeSysMLActivityFinal.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.145,.145),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,.145),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.145,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
2635.5),!1));return a};function mxShapeSysMLActivityParameterNode(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLActivityParameterNode,mxShape);mxShapeSysMLActivityParameterNode.prototype.cst={ACT_PARAM_NODE:"mxgraph.sysml.actParamNode"};
2636mxShapeSysMLActivityParameterNode.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();d=Math.max(.35*b,70);e=Math.min(.65*b,b-10);a.begin();a.moveTo(d,c);a.lineTo(10,c);a.lineTo(10,0);a.lineTo(d,0);a.moveTo(e,c);a.lineTo(b-10,c);a.lineTo(b-10,0);a.lineTo(e,0);a.stroke();d=Math.min(50,b);20<d&&(a.begin(),a.moveTo(10,20),a.lineTo(d-10,20),a.lineTo(d,10),a.lineTo(d,0),a.lineTo(10,0),a.close(),a.fillAndStroke());a.rect(0,.35*c-10,20,20);a.fillAndStroke();a.rect(0,.65*c-10,20,20);
2637a.fillAndStroke();a.rect(b-20,.5*c-10,20,20);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLActivityParameterNode.prototype.cst.ACT_PARAM_NODE,mxShapeSysMLActivityParameterNode);mxShapeSysMLActivityParameterNode.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.35),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.65),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));return a};
2638function mxShapeSysMLControlOperator(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLControlOperator,mxShape);mxShapeSysMLControlOperator.prototype.cst={CONT_OPER:"mxgraph.sysml.contOper"};mxShapeSysMLControlOperator.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2639mxShapeSysMLControlOperator.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};mxShapeSysMLControlOperator.prototype.foreground=function(a,d,e,b,c){d=Math.min(130,b);20<d&&(a.begin(),a.moveTo(0,20),a.lineTo(d-10,20),a.lineTo(d,10),a.lineTo(d,0),a.stroke())};mxCellRenderer.registerShape(mxShapeSysMLControlOperator.prototype.cst.CONT_OPER,mxShapeSysMLControlOperator);
2640function mxShapeSysMLFlowFinal(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLFlowFinal,mxShape);mxShapeSysMLFlowFinal.prototype.cst={FLOW_FINAL:"mxgraph.sysml.flowFinal"};mxShapeSysMLFlowFinal.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.ellipse(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(.145*b,.145*c);a.lineTo(.855*b,.855*c);a.moveTo(.855*b,.145*c);a.lineTo(.145*b,.855*c);a.stroke()};
2641mxCellRenderer.registerShape(mxShapeSysMLFlowFinal.prototype.cst.FLOW_FINAL,mxShapeSysMLFlowFinal);
2642mxShapeSysMLFlowFinal.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(.145,.145),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,.145),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.145,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
2643.5),!1));return a};function mxShapeSysMLIsControl(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLIsControl,mxShape);mxShapeSysMLIsControl.prototype.cst={IS_CONTROL:"mxgraph.sysml.isControl"};mxShapeSysMLIsControl.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,.5*c-10,10,20);a.fillAndStroke();a.roundrect(10,0,b-20,c,10,10);a.fillAndStroke();a.rect(b-10,.5*c-10,10,20);a.fillAndStroke()};
2644mxCellRenderer.registerShape(mxShapeSysMLIsControl.prototype.cst.IS_CONTROL,mxShapeSysMLIsControl);mxShapeSysMLIsControl.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));return a};function mxShapeSysMLIsStream(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLIsStream,mxShape);mxShapeSysMLIsStream.prototype.cst={IS_STREAM:"mxgraph.sysml.isStream"};
2645mxShapeSysMLIsStream.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");e=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");a.setFillColor(d);a.rect(0,.5*c-10,10,20);a.fillAndStroke();a.setFillColor(e);a.roundrect(10,0,b-20,c,10,10);a.fillAndStroke();a.setFillColor(d);a.rect(b-10,.5*c-10,10,20);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLIsStream.prototype.cst.IS_STREAM,mxShapeSysMLIsStream);
2646mxShapeSysMLIsStream.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));return a};function mxShapeSysMLIsActStream(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLIsActStream,mxShape);mxShapeSysMLIsActStream.prototype.cst={IS_ACT_STREAM:"mxgraph.sysml.isActStream"};
2647mxShapeSysMLIsActStream.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.rect(0,0,b-10,c);a.fillAndStroke();d=Math.min(40,b);20<d&&(a.begin(),a.moveTo(0,20),a.lineTo(d-10,20),a.lineTo(d,10),a.lineTo(d,0),a.lineTo(0,0),a.close(),a.fillAndStroke());a.rect(b-20,.5*c-10,20,20);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLIsActStream.prototype.cst.IS_ACT_STREAM,mxShapeSysMLIsActStream);
2648mxShapeSysMLIsActStream.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));return a};function mxShapeSysMLParameterSet(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLParameterSet,mxShape);
2649mxShapeSysMLParameterSet.prototype.cst={PARAM_SET:"mxgraph.sysml.paramSet"};mxShapeSysMLParameterSet.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,.5*c-28,10,56);a.fillAndStroke();a.roundrect(10,0,b-20,c,10,10);a.fillAndStroke();a.rect(b-10,.5*c-28,10,56);a.fillAndStroke();a.setShadow(!1);a.rect(4,.5*c-24,6,20);a.fillAndStroke();a.rect(4,.5*c+4,6,20);a.fillAndStroke();a.rect(b-10,.5*c-24,6,20);a.fillAndStroke();a.rect(b-10,.5*c+4,6,20);a.fillAndStroke()};
2650mxCellRenderer.registerShape(mxShapeSysMLParameterSet.prototype.cst.PARAM_SET,mxShapeSysMLParameterSet);
2651mxShapeSysMLParameterSet.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,0,-14));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,0,14));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,0,-14));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,0,14));a.push(new mxConnectionConstraint(new mxPoint(.25,
26520),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));return a};function mxShapeSysMLParameterActivitySet(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLParameterActivitySet,mxShape);
2653mxShapeSysMLParameterActivitySet.prototype.cst={PARAM_ACT_SET:"mxgraph.sysml.paramActSet"};
2654mxShapeSysMLParameterActivitySet.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.rect(10,0,b-20,c);a.fillAndStroke();d=Math.min(50,b);20<d&&(a.begin(),a.moveTo(10,20),a.lineTo(d-10,20),a.lineTo(d,10),a.lineTo(d,0),a.lineTo(10,0),a.close(),a.fillAndStroke());a.setShadow(!1);70<c&&(a.rect(0,.5*c-28,15,56),a.fillAndStroke(),a.rect(4,.5*c-24,15,20),a.fillAndStroke(),a.rect(4,.5*c+4,15,20),a.fillAndStroke(),a.rect(b-15,.5*c-28,15,56),a.fillAndStroke(),a.rect(b-19,.5*c-24,15,
265520),a.fillAndStroke(),a.rect(b-19,.5*c+4,15,20),a.fillAndStroke())};mxCellRenderer.registerShape(mxShapeSysMLParameterActivitySet.prototype.cst.PARAM_ACT_SET,mxShapeSysMLParameterActivitySet);
2656mxShapeSysMLParameterActivitySet.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,0,-14));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,0,14));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,0,-14));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null,0,14));a.push(new mxConnectionConstraint(new mxPoint(.25,
26570),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));return a};function mxShapeSysMLProbability(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLProbability,mxShape);
2658mxShapeSysMLProbability.prototype.cst={PROBABILITY:"mxgraph.sysml.probability"};mxShapeSysMLProbability.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.roundrect(0,0,b-10,c,10,10);a.fillAndStroke();a.rect(b-10,.25*c-28,10,56);a.fillAndStroke();a.rect(b-10,.75*c-28,10,56);a.fillAndStroke();a.setShadow(!1);a.rect(b-10,.25*c-24,6,20);a.fillAndStroke();a.rect(b-10,.25*c+4,6,20);a.fillAndStroke();a.rect(b-10,.75*c-24,6,20);a.fillAndStroke();a.rect(b-10,.75*c+4,6,20);a.fillAndStroke()};
2659mxCellRenderer.registerShape(mxShapeSysMLProbability.prototype.cst.PROBABILITY,mxShapeSysMLProbability);
2660mxShapeSysMLProbability.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1,null,0,-14));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1,null,0,14));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1,null,0,
2661-14));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1,null,0,14));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.75,
26621),!1,null,-5,0));return a};function mxShapeSysMLActivityProbability(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLActivityProbability,mxShape);mxShapeSysMLActivityProbability.prototype.cst={ACT_PROB:"mxgraph.sysml.actProb"};
2663mxShapeSysMLActivityProbability.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.rect(0,0,b-10,c);a.fillAndStroke();d=Math.min(40,b);20<d&&(a.begin(),a.moveTo(0,20),a.lineTo(d-10,20),a.lineTo(d,10),a.lineTo(d,0),a.lineTo(0,0),a.close(),a.fillAndStroke());a.setShadow(!1);70<c&&(a.rect(b-15,.25*c-28,15,56),a.fillAndStroke(),a.rect(b-19,.25*c-24,15,20),a.fillAndStroke(),a.rect(b-19,.25*c+4,15,20),a.fillAndStroke(),a.rect(b-15,.75*c-28,15,56),a.fillAndStroke(),a.rect(b-19,.75*
2664c-24,15,20),a.fillAndStroke(),a.rect(b-19,.75*c+4,15,20),a.fillAndStroke())};mxCellRenderer.registerShape(mxShapeSysMLActivityProbability.prototype.cst.ACT_PROB,mxShapeSysMLActivityProbability);
2665mxShapeSysMLActivityProbability.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1,null,0,-14));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1,null,0,14));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1,
2666null,0,-14));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1,null,0,14));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.75,
26671),!1,null,-5,0));return a};function mxShapeSysMLObjectFlowRight(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLObjectFlowRight,mxShape);mxShapeSysMLObjectFlowRight.prototype.cst={OBJ_FLOW_R:"mxgraph.sysml.objFlowR"};mxShapeSysMLObjectFlowRight.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.roundrect(0,0,b-10,c,10,10);a.fillAndStroke();a.rect(b-10,.5*c-10,10,20);a.fillAndStroke()};
2668mxCellRenderer.registerShape(mxShapeSysMLObjectFlowRight.prototype.cst.OBJ_FLOW_R,mxShapeSysMLObjectFlowRight);mxShapeSysMLObjectFlowRight.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,-5,0));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1,null,-5,0));return a};
2669function mxShapeSysMLObjectFlowLeft(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLObjectFlowLeft,mxShape);mxShapeSysMLObjectFlowLeft.prototype.cst={OBJ_FLOW_L:"mxgraph.sysml.objFlowL"};mxShapeSysMLObjectFlowLeft.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.rect(0,.5*c-10,10,20);a.fillAndStroke();a.roundrect(10,0,b-10,c,10,10);a.fillAndStroke()};
2670mxCellRenderer.registerShape(mxShapeSysMLObjectFlowLeft.prototype.cst.OBJ_FLOW_L,mxShapeSysMLObjectFlowLeft);mxShapeSysMLObjectFlowLeft.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,5,0));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1,null,5,0));return a};
2671function mxShapeSysMLActivityPartition(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLActivityPartition,mxShape);mxShapeSysMLActivityPartition.prototype.cst={ACT_PART:"mxgraph.sysml.actPart"};mxShapeSysMLActivityPartition.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(0,c);a.moveTo(b,0);a.lineTo(b,c);a.stroke()};
2672mxCellRenderer.registerShape(mxShapeSysMLActivityPartition.prototype.cst.ACT_PART,mxShapeSysMLActivityPartition);function mxShapeSysMLContinuation(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLContinuation,mxShape);mxShapeSysMLContinuation.prototype.cst={CONT:"mxgraph.sysml.cont"};
2673mxShapeSysMLContinuation.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);b>c?(d=.5*c,a.begin(),a.moveTo(b-d,0),a.arcTo(d,d,0,0,1,b-d,c),a.lineTo(d,c),a.arcTo(d,d,0,0,1,d,0)):(d=.5*b,a.begin(),a.moveTo(0,c-d),a.arcTo(d,d,0,0,0,b,c-d),a.lineTo(b,d),a.arcTo(d,d,0,0,0,0,d));a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLContinuation.prototype.cst.CONT,mxShapeSysMLContinuation);
2674mxShapeSysMLContinuation.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));if(d>e){var b=.5*e;d>2*e&&(a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1)),a.push(new mxConnectionConstraint(new mxPoint(.75,
26751),!1)))}else b=.5*d,e>2*d&&(a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1)),a.push(new mxConnectionConstraint(new mxPoint(0,.75),!1)),a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1)),a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1)));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.29*b,.29*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-.29*b,.29*b));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.29*b,e-.29*b));a.push(new mxConnectionConstraint(new mxPoint(0,
26760),!1,null,d-.29*b,e-.29*b));return a};function mxShapeSysMLCoregion(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLCoregion,mxShape);mxShapeSysMLCoregion.prototype.cst={COREGION:"mxgraph.sysml.coregion"};
2677mxShapeSysMLCoregion.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=Math.min(10,c);a.begin();a.moveTo(0,d);a.lineTo(0,0);a.lineTo(b,0);a.lineTo(b,d);a.moveTo(0,c-d);a.lineTo(0,c);a.lineTo(b,c);a.lineTo(b,c-d);a.stroke()};mxCellRenderer.registerShape(mxShapeSysMLCoregion.prototype.cst.COREGION,mxShapeSysMLCoregion);
2678mxMarker.addMarker("sysMLx",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1);return function(){a.begin();a.moveTo(b.x-m/2-n/2,b.y-n/2+m/2);a.lineTo(b.x+m/2+n/2,b.y+n/2-m/2);a.moveTo(b.x+m/2-n/2,b.y+n/2+m/2);a.lineTo(b.x-m/2+n/2,b.y-n/2-m/2);a.stroke()}});function mxShapeSysMLDimension(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLDimension,mxShape);mxShapeSysMLDimension.prototype.cst={DIMENSION:"mxgraph.sysml.dimension"};
2679mxShapeSysMLDimension.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};mxShapeSysMLDimension.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,20);a.lineTo(b,20);a.moveTo(10,15);a.lineTo(0,20);a.lineTo(10,25);a.moveTo(b-10,15);a.lineTo(b,20);a.lineTo(b-10,25);a.moveTo(0,15);a.lineTo(0,c);a.moveTo(b,15);a.lineTo(b,c);a.stroke()};mxCellRenderer.registerShape(mxShapeSysMLDimension.prototype.cst.DIMENSION,mxShapeSysMLDimension);
2680mxMarker.addMarker("sysMLLost",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1),p=g/2;return function(){a.begin();a.moveTo(b.x-1.5*m-n/2,b.y-1.5*n+m/2);a.lineTo(b.x-m/2,b.y-n/2);a.lineTo(b.x-1.5*m+n/2,b.y-1.5*n-m/2);a.stroke();a.ellipse(b.x-.5*m-p,b.y-.5*n-p,2*p,2*p);var c=mxUtils.getValue(d.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(c);a.fillAndStroke()}});
2681mxMarker.addMarker("sysMLFound",function(a,d,e,b,c,f,g,h,k,l){var m=c*(g+k+1),n=f*(g+k+1),p=g/2;return function(){a.ellipse(b.x-.5*m-p,b.y-.5*n-p,2*p,2*p);var c=mxUtils.getValue(d.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(c);a.fillAndStroke()}});function mxShapeSysMLCompositeState(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLCompositeState,mxShape);mxShapeSysMLCompositeState.prototype.cst={COMP_STATE:"mxgraph.sysml.compState"};
2682mxShapeSysMLCompositeState.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c)};mxShapeSysMLCompositeState.prototype.background=function(a,d,e,b,c){a.roundrect(0,20,b,c-20,10,10);a.fillAndStroke();a.rect(15,0,110,20);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLCompositeState.prototype.cst.COMP_STATE,mxShapeSysMLCompositeState);
2683mxShapeSysMLCompositeState.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,22.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-2.9,22.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,e-2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-2.9,e-2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.25*(e-20)+20));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(e-
268420)+20));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.75*(e-20)+20));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,.25*(e-20)+20));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,.5*(e-20)+20));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,.75*(e-20)+20));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
26850),!1,null,15,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,70,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,125,0));125<.75*d&&(a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,0,20)),125<.5*d&&(a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,20)),125<.25*d&&a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,0,20))));return a};
2686function mxShapeSysMLRegion(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLRegion,mxShape);mxShapeSysMLRegion.prototype.cst={REGION:"mxgraph.sysml.region"};mxShapeSysMLRegion.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c,20,50);a.setShadow(!1);this.foreground(a,d,e,b,c,20,50)};
2687mxShapeSysMLRegion.prototype.background=function(a,d,e,b,c,f,g){d=parseInt(mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1"));a.roundrect(0,f,b,c-f,10,10);a.fillAndStroke();a.setStrokeWidth(2*d);a.rect(15,0,g,f);a.fillAndStroke();a.setStrokeWidth(d)};mxShapeSysMLRegion.prototype.foreground=function(a,d,e,b,c,f,g){a.setDashed(!0);a.begin();a.moveTo(.5*b,f);a.lineTo(.5*b,c);a.stroke()};mxCellRenderer.registerShape(mxShapeSysMLRegion.prototype.cst.REGION,mxShapeSysMLRegion);
2688mxShapeSysMLRegion.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,22.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-2.9,22.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,e-2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-2.9,e-2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.25*(e-20)+20));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(e-20)+20));
2689a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.75*(e-20)+20));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,.25*(e-20)+20));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,.5*(e-20)+20));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,.75*(e-20)+20));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
26900),!1,null,15,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,40,0));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,65,0));65<.75*d&&(a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1,null,0,20)),65<.5*d&&(a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1,null,0,20)),65<.25*d&&a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1,null,0,20))));return a};
2691function mxShapeSysMLSimpleState(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLSimpleState,mxShape);mxShapeSysMLSimpleState.prototype.cst={SIMPLE_STATE:"mxgraph.sysml.simpleState"};mxShapeSysMLSimpleState.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1)};
2692mxShapeSysMLSimpleState.prototype.background=function(a,d,e,b,c){parseInt(mxUtils.getValue(this.style,mxConstants.STYLE_STROKEWIDTH,"1"));a.roundrect(0,0,b,c,10,10);a.fillAndStroke()};mxShapeSysMLSimpleState.prototype.foreground=function(a,d,e,b,c){a.begin();a.moveTo(0,20);a.lineTo(b,20);a.stroke()};mxCellRenderer.registerShape(mxShapeSysMLSimpleState.prototype.cst.SIMPLE_STATE,mxShapeSysMLSimpleState);
2693mxShapeSysMLSimpleState.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-2.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,e-2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-2.9,e-2.9));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,
26941),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
2695.75),!1));return a};function mxShapeSysMLStateMachine(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLStateMachine,mxShape);mxShapeSysMLStateMachine.prototype.cst={STATE_MACHINE:"mxgraph.sysml.stateMachine"};mxShapeSysMLStateMachine.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2696mxShapeSysMLStateMachine.prototype.background=function(a,d,e,b,c){a.roundrect(0,0,b-10,c,10,10);a.fillAndStroke()};mxShapeSysMLStateMachine.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(d);a.ellipse(b-20,.5*c-10,20,20);a.stroke();a.ellipse(b-17,.5*c-7,14,14);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLStateMachine.prototype.cst.STATE_MACHINE,mxShapeSysMLStateMachine);
2697mxShapeSysMLStateMachine.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-12.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,e-2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-12.9,e-2.9));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,
26981),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1,null,-10,0));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1,null,-10,0));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
2699.75),!1));return a};function mxShapeSysMLX(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLX,mxShape);mxShapeSysMLX.prototype.cst={X:"mxgraph.sysml.x"};mxShapeSysMLX.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b,c);a.moveTo(0,c);a.lineTo(b,0);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLX.prototype.cst.X,mxShapeSysMLX);
2700mxShapeSysMLX.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1));a.push(new mxConnectionConstraint(new mxPoint(0,1),!1));a.push(new mxConnectionConstraint(new mxPoint(1,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,1),!1));return a};function mxShapeSysMLSubmachineState(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLSubmachineState,mxShape);
2701mxShapeSysMLSubmachineState.prototype.cst={SUBMACHINE_STATE:"mxgraph.sysml.submState"};mxShapeSysMLSubmachineState.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapeSysMLSubmachineState.prototype.background=function(a,d,e,b,c){a.roundrect(0,0,b-10,c,10,10);a.fillAndStroke()};
2702mxShapeSysMLSubmachineState.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(d);a.ellipse(b-20,.5*c-10,20,20);a.stroke();a.ellipse(b-17,.5*c-7,14,14);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeSysMLSubmachineState.prototype.cst.SUBMACHINE_STATE,mxShapeSysMLSubmachineState);
2703mxShapeSysMLSubmachineState.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-12.9,2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,e-2.9));a.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,d-12.9,e-2.9));a.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,
27041),!1));a.push(new mxConnectionConstraint(new mxPoint(.25,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.75,0),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.25),!1,null,-10,0));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.75),!1,null,-10,0));a.push(new mxConnectionConstraint(new mxPoint(0,.25),!1));a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(0,
2705.75),!1));return a};function mxShapeSysMLUseCaseExtensionPoints(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapeSysMLUseCaseExtensionPoints,mxShape);mxShapeSysMLUseCaseExtensionPoints.prototype.cst={USE_CASE_EXT_PT:"mxgraph.sysml.useCaseExtPt"};mxShapeSysMLUseCaseExtensionPoints.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2706mxShapeSysMLUseCaseExtensionPoints.prototype.background=function(a,d,e,b,c){a.ellipse(0,0,b,c);a.fillAndStroke()};mxShapeSysMLUseCaseExtensionPoints.prototype.foreground=function(a,d,e,b,c){a.begin();a.moveTo(.02*b,.35*c);a.lineTo(.98*b,.35*c);a.stroke()};mxCellRenderer.registerShape(mxShapeSysMLUseCaseExtensionPoints.prototype.cst.USE_CASE_EXT_PT,mxShapeSysMLUseCaseExtensionPoints);
2707mxShapeSysMLUseCaseExtensionPoints.prototype.getConstraints=function(a,d,e){a=[];a.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));a.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));a.push(new mxConnectionConstraint(new mxPoint(.145,.145),!1));a.push(new mxConnectionConstraint(new mxPoint(.145,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,.855),!1));a.push(new mxConnectionConstraint(new mxPoint(.855,
2708.145),!1));return a};function mxShapeUMLInputPin(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeUMLInputPin,mxActor);mxShapeUMLInputPin.prototype.cst={INPUT_PIN:"mxgraph.uml25.inputPin"};
2709mxShapeUMLInputPin.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(b,c);a.lineTo(0,c);a.close();a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(.75*b,.5*c);a.lineTo(.25*b,.5*c);a.moveTo(.4*b,.4*c);a.lineTo(.25*b,.5*c);a.lineTo(.4*b,.6*c);a.stroke()};mxCellRenderer.registerShape(mxShapeUMLInputPin.prototype.cst.INPUT_PIN,mxShapeUMLInputPin);mxShapeUMLInputPin.prototype.constraints=null;
2710function mxShapeUMLBehaviorAction(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeUMLBehaviorAction,mxActor);mxShapeUMLBehaviorAction.prototype.cst={BEHAVIOR_ACTION:"mxgraph.uml25.behaviorAction"};
2711mxShapeUMLBehaviorAction.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,"rounded",!1);e=mxUtils.getValue(this.style,"absoluteArcSize",!1);var f=parseFloat(mxUtils.getValue(this.style,"arcSize",this.arcSize));e||(f*=Math.min(b,c));f=Math.min(f,.5*b,.5*c);d||(f=0);a.begin();d?(a.moveTo(0,f),a.arcTo(f,f,0,0,1,f,0),a.lineTo(b-f,0),a.arcTo(f,f,0,0,1,b,f),a.lineTo(b,c-f),a.arcTo(f,f,0,0,1,b-f,c),a.lineTo(f,c),a.arcTo(f,f,0,0,1,0,c-f)):(a.moveTo(0,0),a.lineTo(b,
27120),a.lineTo(b,c),a.lineTo(0,c));a.close();a.fillAndStroke();a.setShadow(!1);60<=b&&40<=c&&(a.begin(),a.moveTo(b-60,.5*c+20),a.lineTo(b-60,.5*c),a.lineTo(b-20,.5*c),a.lineTo(b-20,.5*c+20),a.moveTo(b-40,.5*c-20),a.lineTo(b-40,.5*c+20),a.stroke())};mxCellRenderer.registerShape(mxShapeUMLBehaviorAction.prototype.cst.BEHAVIOR_ACTION,mxShapeUMLBehaviorAction);mxShapeUMLBehaviorAction.prototype.constraints=null;
2713function mxShapeUMLAction(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeUMLAction,mxActor);mxShapeUMLAction.prototype.cst={ACTION:"mxgraph.uml25.action"};
2714mxShapeUMLAction.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,"absoluteArcSize",!1);e=parseFloat(mxUtils.getValue(this.style,"arcSize",this.arcSize));d||(e*=Math.min(b,c));e=Math.min(e,.5*b,.5*c);a.begin();a.moveTo(0,e);a.arcTo(e,e,0,0,1,e,0);a.lineTo(b-e-10,0);a.arcTo(e,e,0,0,1,b-10,e);a.lineTo(b-10,c-e);a.arcTo(e,e,0,0,1,b-e-10,c);a.lineTo(e,c);a.arcTo(e,e,0,0,1,0,c-e);a.close();a.fillAndStroke();a.rect(b-10,.5*c-10,10,20);a.fillAndStroke()};
2715mxCellRenderer.registerShape(mxShapeUMLAction.prototype.cst.ACTION,mxShapeUMLAction);mxShapeUMLAction.prototype.constraints=null;function mxShapeUMLActionParams(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1;this.dx=.5}mxUtils.extend(mxShapeUMLActionParams,mxActor);mxShapeUMLActionParams.prototype.cst={ACTION_PARAMS:"mxgraph.uml25.actionParams"};
2716mxShapeUMLActionParams.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);d=mxUtils.getValue(this.style,"absoluteArcSize",!1);e=parseFloat(mxUtils.getValue(this.style,"arcSize",this.arcSize));d||(e*=Math.min(b,c));e=Math.min(e,.5*b,.5*c);a.begin();a.moveTo(20,e);a.arcTo(e,e,0,0,1,20+e,0);a.lineTo(b-e,0);a.arcTo(e,e,0,0,1,b,e);a.lineTo(b,c-e);a.arcTo(e,e,0,0,1,b-e,c);a.lineTo(20+e,c);a.arcTo(e,e,0,0,1,20,c-e);a.close();a.fillAndStroke();a.rect(5,.5*c-17,20,34);a.fillAndStroke();a.rect(0,
2717.5*c-13,10,10);a.fillAndStroke();a.rect(0,.5*c+3,10,10);a.fillAndStroke()};mxCellRenderer.registerShape(mxShapeUMLActionParams.prototype.cst.ACTION_PARAMS,mxShapeUMLActionParams);mxShapeUMLActionParams.prototype.constraints=null;function mxShapePidDiscInst(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidDiscInst,mxShape);
2718mxShapePidDiscInst.prototype.cst={SHAPE_DISC_INST:"mxgraph.pid2inst.discInst",MOUNTING:"mounting",FIELD:"field",ROOM:"room",INACCESSIBLE:"inaccessible",LOCAL:"local"};mxShapePidDiscInst.prototype.customProperties=[{name:"mounting",dispName:"Mounting",type:"enum",defVal:"field",enumList:[{val:"field",dispName:"Field"},{val:"room",dispName:"Room"},{val:"inaccessible",dispName:"Inaccessible"},{val:"local",dispName:"Local"}]}];
2719mxShapePidDiscInst.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapePidDiscInst.prototype.background=function(a,d,e,b,c){a.ellipse(0,0,b,c);a.fillAndStroke()};
2720mxShapePidDiscInst.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapePidDiscInst.prototype.cst.MOUNTING,"field");d===mxShapePidDiscInst.prototype.cst.ROOM?(a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxShapePidDiscInst.prototype.cst.INACCESSIBLE?(a.setDashed(!0),a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxShapePidDiscInst.prototype.cst.LOCAL&&(a.begin(),a.moveTo(.005*b,.48*c),a.lineTo(.995*b,.48*c),a.moveTo(.005*b,.52*c),a.lineTo(.995*
2721b,.52*c),a.stroke())};mxCellRenderer.registerShape(mxShapePidDiscInst.prototype.cst.SHAPE_DISC_INST,mxShapePidDiscInst);
2722mxShapePidDiscInst.prototype.constraints=[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),!0),new mxConnectionConstraint(new mxPoint(.145,.145),!1),new mxConnectionConstraint(new mxPoint(.145,.855),!1),new mxConnectionConstraint(new mxPoint(.855,.145),!1),new mxConnectionConstraint(new mxPoint(.855,.855),!1)];
2723function mxShapePidSharedCont(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidSharedCont,mxShape);mxShapePidSharedCont.prototype.cst={SHAPE_SHARED_CONT:"mxgraph.pid2inst.sharedCont",MOUNTING:"mounting",FIELD:"field",ROOM:"room",INACCESSIBLE:"inaccessible",LOCAL:"local"};
2724mxShapePidSharedCont.prototype.customProperties=[{name:"mounting",dispName:"Mounting",type:"enum",defVal:"field",enumList:[{val:"field",dispName:"Field"},{val:"room",dispName:"Room"},{val:"inaccessible",dispName:"Inaccessible"},{val:"local",dispName:"Local"}]}];mxShapePidSharedCont.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapePidSharedCont.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};
2725mxShapePidSharedCont.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapePidSharedCont.prototype.cst.MOUNTING,"field");a.ellipse(0,0,b,c);a.fillAndStroke();d===mxShapePidSharedCont.prototype.cst.ROOM?(a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxShapePidSharedCont.prototype.cst.INACCESSIBLE?(a.setDashed(!0),a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxShapePidDiscInst.prototype.cst.LOCAL&&(a.begin(),a.moveTo(.005*b,.48*c),a.lineTo(.995*b,
2726.48*c),a.moveTo(.005*b,.52*c),a.lineTo(.995*b,.52*c),a.stroke())};mxCellRenderer.registerShape(mxShapePidSharedCont.prototype.cst.SHAPE_SHARED_CONT,mxShapePidSharedCont);
2727mxShapePidSharedCont.prototype.constraints=[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),!0),new mxConnectionConstraint(new mxPoint(0,0),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];
2728function mxShapePidCompFunc(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidCompFunc,mxShape);mxShapePidCompFunc.prototype.cst={SHAPE_COMP_FUNC:"mxgraph.pid2inst.compFunc",MOUNTING:"mounting",FIELD:"field",ROOM:"room",INACCESSIBLE:"inaccessible",LOCAL:"local"};
2729mxShapePidCompFunc.prototype.customProperties=[{name:"mounting",dispName:"Mounting",type:"enum",defVal:"field",enumList:[{val:"field",dispName:"Field"},{val:"room",dispName:"Room"},{val:"inaccessible",dispName:"Inaccessible"},{val:"local",dispName:"Local"}]}];mxShapePidCompFunc.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2730mxShapePidCompFunc.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,.5*c);a.lineTo(.25*b,0);a.lineTo(.75*b,0);a.lineTo(b,.5*c);a.lineTo(.75*b,c);a.lineTo(.25*b,c);a.close();a.fillAndStroke()};
2731mxShapePidCompFunc.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapePidCompFunc.prototype.cst.MOUNTING,"field");d===mxShapePidCompFunc.prototype.cst.ROOM?(a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxShapePidCompFunc.prototype.cst.INACCESSIBLE?(a.setDashed(!0),a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxShapePidDiscInst.prototype.cst.LOCAL&&(a.begin(),a.moveTo(.01*b,.48*c),a.lineTo(.99*b,.48*c),a.moveTo(.01*b,.52*c),a.lineTo(.99*b,.52*
2732c),a.stroke())};mxCellRenderer.registerShape(mxShapePidCompFunc.prototype.cst.SHAPE_COMP_FUNC,mxShapePidCompFunc);
2733mxShapePidCompFunc.prototype.constraints=[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),!0),new mxConnectionConstraint(new mxPoint(.25,0),!1),new mxConnectionConstraint(new mxPoint(.75,0),!1),new mxConnectionConstraint(new mxPoint(.25,1),!1),new mxConnectionConstraint(new mxPoint(.75,1),!1)];
2734function mxShapePidProgLogCont(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidProgLogCont,mxShape);mxShapePidProgLogCont.prototype.cst={SHAPE_PROG_LOG_CONT:"mxgraph.pid2inst.progLogCont",MOUNTING:"mounting",FIELD:"field",ROOM:"room",INACCESSIBLE:"inaccessible",LOCAL:"local"};
2735mxShapePidProgLogCont.prototype.customProperties=[{name:"mounting",dispName:"Mounting",type:"enum",defVal:"field",enumList:[{val:"field",dispName:"Field"},{val:"room",dispName:"Room"},{val:"inaccessible",dispName:"Inaccessible"},{val:"local",dispName:"Local"}]}];mxShapePidProgLogCont.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapePidProgLogCont.prototype.background=function(a,d,e,b,c){a.rect(0,0,b,c);a.fillAndStroke()};
2736mxShapePidProgLogCont.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapePidProgLogCont.prototype.cst.MOUNTING,"field");a.begin();a.moveTo(0,.5*c);a.lineTo(.5*b,0);a.lineTo(b,.5*c);a.lineTo(.5*b,c);a.close();a.stroke();d===mxShapePidProgLogCont.prototype.cst.ROOM?(a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxShapePidProgLogCont.prototype.cst.INACCESSIBLE?(a.setDashed(!0),a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxShapePidDiscInst.prototype.cst.LOCAL&&
2737(a.begin(),a.moveTo(.02*b,.48*c),a.lineTo(.98*b,.48*c),a.moveTo(.02*b,.52*c),a.lineTo(.98*b,.52*c),a.stroke())};mxCellRenderer.registerShape(mxShapePidProgLogCont.prototype.cst.SHAPE_PROG_LOG_CONT,mxShapePidProgLogCont);
2738mxShapePidProgLogCont.prototype.constraints=[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),!0),new mxConnectionConstraint(new mxPoint(0,0),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];
2739function mxShapePidIndicator(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidIndicator,mxShape);mxShapePidIndicator.prototype.cst={SHAPE_INDICATOR:"mxgraph.pid2inst.indicator",MOUNTING:"mounting",FIELD:"field",ROOM:"room",INACCESSIBLE:"inaccessible",LOCAL:"local",IND_TYPE:"indType",INSTRUMENT:"inst",CONTROL:"ctrl",FUNCTION:"func",PLC:"plc"};
2740mxShapePidIndicator.prototype.customProperties=[{name:"mounting",dispName:"Mounting",type:"enum",defVal:"field",enumList:[{val:"field",dispName:"Field"},{val:"room",dispName:"Room"},{val:"inaccessible",dispName:"Inaccessible"},{val:"local",dispName:"Local"}]},{name:"indType",dispName:"Type",type:"enum",defVal:"inst",enumList:[{val:"inst",dispName:"Instrument"},{val:"ctrl",dispName:"Control"},{val:"func",dispName:"Function"},{val:"plc",dispName:"PLC"}]}];
2741mxShapePidIndicator.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2742mxShapePidIndicator.prototype.background=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapePidIndicator.prototype.cst.IND_TYPE,"inst");a.begin();a.moveTo(.5*b,b);a.lineTo(.5*b,c);a.stroke();d===mxShapePidIndicator.prototype.cst.INSTRUMENT?(a.ellipse(0,0,b,b),a.fillAndStroke()):d===mxShapePidIndicator.prototype.cst.CONTROL?(a.rect(0,0,b,b),a.fillAndStroke()):d===mxShapePidIndicator.prototype.cst.FUNCTION?(a.begin(),a.moveTo(0,.5*b),a.lineTo(.25*b,0),a.lineTo(.75*b,0),a.lineTo(b,.5*b),a.lineTo(.75*
2743b,b),a.lineTo(.25*b,b),a.close(),a.fillAndStroke()):d===mxShapePidIndicator.prototype.cst.PLC&&(a.rect(0,0,b,b),a.fillAndStroke())};
2744mxShapePidIndicator.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapePidIndicator.prototype.cst.MOUNTING,"field");e=mxUtils.getValue(this.style,mxShapePidIndicator.prototype.cst.IND_TYPE,"inst");e===mxShapePidIndicator.prototype.cst.CONTROL?(a.ellipse(0,0,b,b),a.stroke()):e===mxShapePidIndicator.prototype.cst.PLC&&(a.begin(),a.moveTo(0,.5*b),a.lineTo(.5*b,0),a.lineTo(b,.5*b),a.lineTo(.5*b,b),a.close(),a.stroke());d===mxShapePidIndicator.prototype.cst.ROOM?(a.begin(),a.moveTo(0,
2745.5*b),a.lineTo(b,.5*b),a.stroke()):d===mxShapePidIndicator.prototype.cst.INACCESSIBLE?(a.setDashed(!0),a.begin(),a.moveTo(0,.5*b),a.lineTo(b,.5*b),a.stroke()):d===mxShapePidIndicator.prototype.cst.LOCAL&&(a.begin(),a.moveTo(.005*b,.48*b),a.lineTo(.995*b,.48*b),a.moveTo(.005*b,.52*b),a.lineTo(.995*b,.52*b),a.stroke())};mxCellRenderer.registerShape(mxShapePidIndicator.prototype.cst.SHAPE_INDICATOR,mxShapePidIndicator);
2746mxShapePidIndicator.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,1),!0)];function mxShapePidLogic(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidLogic,mxShape);mxShapePidLogic.prototype.cst={SHAPE_LOGIC:"mxgraph.pid2inst.logic",MOUNTING:"mounting",FIELD:"field",ROOM:"room",INACCESSIBLE:"inaccessible",LOCAL:"local"};
2747mxShapePidLogic.prototype.customProperties=[{name:"mounting",dispName:"Mounting",type:"enum",defVal:"field",enumList:[{val:"field",dispName:"Field"},{val:"room",dispName:"Room"},{val:"inaccessible",dispName:"Inaccessible"},{val:"local",dispName:"Local"}]}];mxShapePidLogic.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};
2748mxShapePidLogic.prototype.background=function(a,d,e,b,c){a.begin();a.moveTo(0,.5*c);a.lineTo(.5*b,0);a.lineTo(b,.5*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke()};
2749mxShapePidLogic.prototype.foreground=function(a,d,e,b,c){d=mxUtils.getValue(this.style,mxShapePidLogic.prototype.cst.MOUNTING,"field");d===mxShapePidLogic.prototype.cst.ROOM?(a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxShapePidLogic.prototype.cst.INACCESSIBLE?(a.setDashed(!0),a.begin(),a.moveTo(0,.5*c),a.lineTo(b,.5*c),a.stroke()):d===mxShapePidLogic.prototype.cst.LOCAL&&(a.begin(),a.moveTo(.02*b,.48*c),a.lineTo(.98*b,.48*c),a.moveTo(.02*b,.52*c),a.lineTo(.98*b,.52*c),a.stroke())};
2750mxCellRenderer.registerShape(mxShapePidLogic.prototype.cst.SHAPE_LOGIC,mxShapePidLogic);
2751mxShapePidLogic.prototype.constraints=[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),!0),new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.75),!1),new mxConnectionConstraint(new mxPoint(.75,.25),!1),new mxConnectionConstraint(new mxPoint(.75,.75),!1)];
2752function mxShapePidFan(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidFan,mxShape);mxShapePidFan.prototype.cst={SHAPE_FAN:"mxgraph.pid2misc.fan",FAN_TYPE:"fanType",COMMON:"common",AXIAL:"axial",RADIAL:"radial"};mxShapePidFan.prototype.customProperties=[{name:"fanType",dispName:"Type",type:"enum",defVal:"field",enumList:[{val:"common",dispName:"Common"},{val:"axial",dispName:"Axial"},{val:"radial",dispName:"Radial"}]}];
2753mxShapePidFan.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapePidFan.prototype.background=function(a,d,e,b,c){a.ellipse(0,0,b,c);a.fillAndStroke()};
2754mxShapePidFan.prototype.foreground=function(a,d,e,b,c){a.begin();a.moveTo(.3*b,.045*c);a.lineTo(.97*b,.33*c);a.moveTo(.3*b,.955*c);a.lineTo(.97*b,.67*c);a.moveTo(.4228*b,.3655*c);a.arcTo(.15*b,.03*c,50,0,1,.5*b,.5*c);a.arcTo(.15*b,.03*c,50,0,1,.3772*b,.4045*c);a.arcTo(.15*b,.03*c,50,0,1,.3025*b,.271*c);a.arcTo(.15*b,.03*c,50,0,1,.4228*b,.3655*c);a.close();a.moveTo(.377*b,.5973*c);a.arcTo(.15*b,.03*c,-50,0,1,.4966*b,.5019*c);a.arcTo(.15*b,.03*c,-50,0,1,.423*b,.636*c);a.arcTo(.15*b,.03*c,-50,0,1,.3034*
2755b,.7314*c);a.arcTo(.15*b,.03*c,-50,0,1,.377*b,.5973*c);a.close();a.stroke();a.ellipse(.5*b,.47*c,.3*b,.06*c);a.stroke();d=mxUtils.getValue(this.style,mxShapePidFan.prototype.cst.FAN_TYPE,"common");d===mxShapePidFan.prototype.cst.AXIAL?(a.begin(),a.moveTo(.1*b,.5*c),a.lineTo(.3*b,.5*c),a.stroke()):d===mxShapePidFan.prototype.cst.RADIAL&&(a.begin(),a.moveTo(.2*b,.4*c),a.lineTo(.2*b,.6*c),a.stroke())};mxCellRenderer.registerShape(mxShapePidFan.prototype.cst.SHAPE_FAN,mxShapePidFan);
2756function mxShapePidColumn(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidColumn,mxShape);mxShapePidColumn.prototype.cst={SHAPE_COLUMN:"mxgraph.pid2misc.column",COLUMN_TYPE:"columnType",COMMON:"common",FIXED:"fixed",FLUIDIZED:"fluid",BAFFLE:"baffle",VALVE:"valve",BUBBLE:"bubble",NOZZLE:"nozzle",TRAY:"tray"};
2757mxShapePidColumn.prototype.customProperties=[{name:"columnType",dispName:"Type",type:"enum",defVal:"field",enumList:[{val:"common",dispName:"Common"},{val:"fixed",dispName:"Fixed"},{val:"fluid",dispName:"Fluid"},{val:"baffle",dispName:"Baffle"},{val:"valve",dispName:"Valve"},{val:"bubble",dispName:"Bubble"},{val:"nozzle",dispName:"Nozzle"},{val:"tray",dispName:"Tray"}]}];
2758mxShapePidColumn.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1);this.foreground(a,d,e,b,c)};mxShapePidColumn.prototype.background=function(a,d,e,b,c){c=Math.max(c,30);a.begin();a.moveTo(0,15);a.arcTo(.5*b,15,0,0,1,b,15);a.lineTo(b,c-15);a.arcTo(.5*b,15,0,0,1,0,c-15);a.close();a.fillAndStroke()};
2759mxShapePidColumn.prototype.foreground=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapePidColumn.prototype.cst.COLUMN_TYPE,"common");if(f===mxShapePidColumn.prototype.cst.FIXED){var g=1.2*b;d=c-50;e=d%g*.5+25;a.begin();for(c=0;c<=d-g;c+=g)a.moveTo(0,c+e+.1*g),a.lineTo(b,c+e+.1*g),a.moveTo(0,c+e+.9*g),a.lineTo(b,c+e+.9*g),a.moveTo(0,c+e+.1*g),a.lineTo(b,c+e+.9*g),a.moveTo(0,c+e+.9*g),a.lineTo(b,c+e+.1*g);a.stroke()}else if(f===mxShapePidColumn.prototype.cst.TRAY){g=.2*b;d=c-50;e=d%g*.5+
276025;a.setDashed(!0);a.begin();for(c=0;c<=d;c+=g)a.moveTo(0,c+e),a.lineTo(b,c+e);a.stroke()}else if(f===mxShapePidColumn.prototype.cst.FLUIDIZED){g=.1*b;f=.1*b;d=c-50;e=25;var h=.02*Math.min(b,c);mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");var k=mxUtils.getValue(this.style,mxConstants.STYLE_DASHED,"0"),l=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.setFillColor(l);a.setDashed(!0);a.begin();a.moveTo(0,25);a.lineTo(b,25);a.moveTo(0,c-25);a.lineTo(b,c-25);
2761a.stroke();"0"===k?a.setDashed(!1):a.setDashed(!0);k=0;for(c=e+.5*g;c<d+e-h;c+=g){var m=f,l=k%2;0===l&&(m=.5*f);for(l=m;l<b;l+=f)a.ellipse(l,c,h,h),a.fillAndStroke();k++}}else if(f===mxShapePidColumn.prototype.cst.BAFFLE){g=.2*b;d=c-50-g;e=25+.5*g;a.setDashed(!0);a.begin();a.moveTo(0,25);a.lineTo(b,25);a.moveTo(0,c-25);a.lineTo(b,c-25);a.stroke();k=0;a.begin();for(c=e+.5*g;c<d+e;c+=g)l=k%2,0===l?(a.moveTo(0,c),a.lineTo(.9*b,c),a.lineTo(.9*b,c-.3*g)):(a.moveTo(.1*b,c-.5*g),a.lineTo(.1*b,c),a.lineTo(b,
2762c)),k++;a.stroke()}else if(f===mxShapePidColumn.prototype.cst.VALVE||f===mxShapePidColumn.prototype.cst.BUBBLE){g=.2*b;d=c-50-g;e=25+.5*g;k=mxUtils.getValue(this.style,mxConstants.STYLE_DASHED,"0");a.setFillColor(l);a.setDashed(!0);a.begin();a.moveTo(0,25);a.lineTo(b,25);a.moveTo(0,c-25);a.lineTo(b,c-25);a.stroke();"0"===k?a.setDashed(!1):a.setDashed(!0);a.begin();for(c=e+.5*g;c<d+e;c+=g)a.moveTo(0,c),a.lineTo(.4*b,c),f===mxShapePidColumn.prototype.cst.VALVE?(a.moveTo(.4*b,c-.2*g),a.lineTo(.6*b,c-
2763.2*g)):f===mxShapePidColumn.prototype.cst.BUBBLE&&(a.moveTo(.25*b,c-.2*g),a.arcTo(3*g,3*g,0,0,1,.75*b,c-.2*g)),a.moveTo(.6*b,c),a.lineTo(b,c);a.stroke()}else if(f===mxShapePidColumn.prototype.cst.NOZZLE){g=1.2*b;d=c-50;e=d%g*.5+25;k=mxUtils.getValue(this.style,mxConstants.STYLE_DASHED,0);for(c=0;c<=d-g;c+=g)a.setDashed(!0),a.begin(),a.moveTo(0,c+e+.2*g),a.lineTo(b,c+e+.2*g),a.moveTo(0,c+e+.8*g),a.lineTo(b,c+e+.8*g),a.stroke(),0===k?a.setDashed(!1):a.setDashed(!0),a.begin(),a.moveTo(0,c+e+.2*g),a.lineTo(b,
2764c+e+.8*g),a.moveTo(0,c+e+.8*g),a.lineTo(b,c+e+.2*g),0!==c&&(a.moveTo(0,c+e),a.lineTo(.5*b,c+e),a.moveTo(.5*b-.08*g,c+e+.08*g),a.lineTo(.5*b,c+e),a.lineTo(.5*b+.08*g,c+e+.08*g),a.moveTo(.5*b,c+e),a.lineTo(.5*b,c+e+.08*g)),a.stroke();a.stroke()}};mxCellRenderer.registerShape(mxShapePidColumn.prototype.cst.SHAPE_COLUMN,mxShapePidColumn);function mxShapePidConveyor(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidConveyor,mxShape);
2765mxShapePidConveyor.prototype.cst={SHAPE_CONVEYOR:"mxgraph.pid2misc.conveyor"};mxShapePidConveyor.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,d,e,b,c);a.setShadow(!1)};
2766mxShapePidConveyor.prototype.background=function(a,d,e,b,c){d=Math.min(c,.5*b);a.begin();a.moveTo(.5*d,0);a.lineTo(b-.5*d,0);a.stroke();a.ellipse(0,0,d,d);a.fillAndStroke();a.ellipse(b-d,0,d,d);a.fillAndStroke();a.begin();a.moveTo(.5*d,d);a.lineTo(b-.5*d,d);a.stroke();b-=1.8*d;e=.9*d;c=.7*d;for(var f=0;f<b;f+=c)a.rect(e+f,0,.2*d,.1*d),a.fillAndStroke(),a.rect(e+f,.9*d,.2*d,.1*d),a.fillAndStroke()};mxCellRenderer.registerShape(mxShapePidConveyor.prototype.cst.SHAPE_CONVEYOR,mxShapePidConveyor);
2767function mxShapePidValve(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidValve,mxShape);
2768mxShapePidValve.prototype.cst={SHAPE_VALVE:"mxgraph.pid2valves.valve",DEFAULT_STATE:"defState",CLOSED:"closed",OPEN:"open",ACTUATOR:"actuator",MANUAL:"man",DIAPHRAGM:"diaph",BALANCED_DIAPHRAGM:"balDiaph",MOTOR:"motor",NONE:"none",SPRING:"spring",PILOT:"pilot",POWERED:"powered",SOLENOID:"solenoid",SOLENOID_MANUAL_RESET:"solenoidManRes",SINGLE_ACTING:"singActing",DOUBLE_ACTING:"dblActing",PILOT_CYLINDER:"pilotCyl",DIGITAL:"digital",WEIGHT:"weight",KEY:"key",ELECTRO_HYDRAULIC:"elHyd",VALVE_TYPE:"valveType",
2769BUTTERFLY:"butterfly",CHECK:"check",GATE:"gate",GLOBE:"globe",NEEDLE:"needle",PLUG:"plug",SELF_DRAINING:"selfDrain",ANGLE:"angle",ANGLE_GLOBE:"angleGlobe",THREE_WAY:"threeWay",ANGLE_BLOWDOWN:"angBlow",BALL:"ball"};
2770mxShapePidValve.prototype.customProperties=[{name:"defState",dispName:"Default State",type:"enum",defVal:"open",enumList:[{val:"closed",dispName:"Closed"},{val:"open",dispName:"Open"}]},{name:"actuator",dispName:"Actuator",type:"enum",defVal:"man",enumList:[{val:"man",dispName:"Manual"},{val:"diaph",dispName:"Diphragm"},{val:"balDiaph",dispName:"Balanced Diaphragm"},{val:"motor",dispName:"Motor"},{val:"none",dispName:"None"},{val:"spring",dispName:"Spring"},{val:"pilot",dispName:"Pilot"},{val:"powered",
2771dispName:"Powered"},{val:"solenoid",dispName:"Solenoid"},{val:"solenoidManRes",dispName:"Solenoid w/ Manual Reset"},{val:"singActing",dispName:"Single Acting"},{val:"dblActing",dispName:"Double Acting"},{val:"pilotCyl",dispName:"Pilot Cylinder"},{val:"digital",dispName:"Digital"},{val:"weight",dispName:"Weight"},{val:"key",dispName:"Key"},{val:"elHyd",dispName:"Electro-Hidraulic"}]},{name:"valveType",dispName:"Type",type:"enum",defVal:"gate",enumList:[{val:"butterfly",dispName:"Butterfly"},{val:"check",
2772dispName:"check"},{val:"gate",dispName:"Gate"},{val:"globe",dispName:"Globe"},{val:"needle",dispName:"Needle"},{val:"plug",dispName:"Plug"},{val:"selfDrain",dispName:"Self Draining"},{val:"angle",dispName:"Angle"},{val:"angleGlobe",dispName:"Angle Globe"},{val:"threeWay",dispName:"Three Way"},{val:"ball",dispName:"Ball"}]}];
2773mxShapePidValve.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapePidValve.prototype.cst.VALVE_TYPE,"gate"),g=mxUtils.getValue(this.style,mxShapePidValve.prototype.cst.ACTUATOR,mxShapePidValve.prototype.cst.NONE),h=0;"none"!==g&&(h=this.isAngleVariant(f)?.3333*c:.4*c);a.translate(d,e);a.setLineJoin("round");this.background(a,d,e,b,c,f,g,h);a.setShadow(!1);this.foreground(a,d,e,b,c,f,g,h)};
2774mxShapePidValve.prototype.background=function(a,d,e,b,c,f,g,h){g!==mxShapePidValve.prototype.cst.NONE&&(this.isAngleVariant(f)?this.drawActuatorBg(a,d,e,b,c/1.2,g,h):this.drawActuatorBg(a,d,e,b,c,g,h));this.isGateVariant(f)?this.drawGateVariantBg(a,0,0,b,c,f,g,h):this.isAngleVariant(f)?this.drawAngleVariantBg(a,0,0,b,c,f,g,h):f===mxShapePidValve.prototype.cst.BUTTERFLY?this.drawButterflyValve(a,0,0,b,c,g,h):f===mxShapePidValve.prototype.cst.CHECK&&this.drawCheckValve(a,0,0,b,c,g,h)};
2775mxShapePidValve.prototype.foreground=function(a,d,e,b,c,f,g,h){f=mxUtils.getValue(this.style,mxShapePidValve.prototype.cst.VALVE_TYPE,"gate");g!==mxShapePidValve.prototype.cst.NONE&&(this.isAngleVariant(f)?this.drawActuatorFg(a,d,e,b,c/1.2,g,h):this.drawActuatorFg(a,d,e,b,c,g,h));this.isGateVariant(f)&&this.drawGateVariantFg(a,0,0,b,c,f,g,h);this.isAngleVariant(f)&&this.drawAngleVariantFg(a,0,0,b,c,f,g,h)};
2776mxShapePidValve.prototype.drawActuatorBg=function(a,d,e,b,c,f){this.isSquareVariant(f)?(a.translate(.325*b,0),this.drawSquareAct(a,.35*b,.7*c,f),a.translate(.325*-b,0)):f===mxShapePidValve.prototype.cst.MANUAL?(a.translate(.25*b,.15*c),this.drawManAct(a,.5*b,.55*c),a.translate(.25*-b,.15*-c)):f===mxShapePidValve.prototype.cst.DIAPHRAGM?(a.translate(.25*b,.1*c),this.drawDiaphAct(a,.5*b,.6*c),a.translate(.25*-b,.1*-c)):f===mxShapePidValve.prototype.cst.BALANCED_DIAPHRAGM?(a.translate(.25*b,.1*c),this.drawBalDiaphActBg(a,
2777.5*b,.6*c),a.translate(.25*-b,.1*-c)):f===mxShapePidValve.prototype.cst.MOTOR||f===mxShapePidValve.prototype.cst.ELECTRO_HYDRAULIC?(a.translate(.325*b,0),this.drawCircleAct(a,.35*b,.7*c,f),a.translate(.325*-b,0)):f===mxShapePidValve.prototype.cst.SPRING?(a.translate(.36*b,0),this.drawSpringAct(a,.28*b,.7*c),a.translate(.36*-b,0)):f===mxShapePidValve.prototype.cst.SOLENOID_MANUAL_RESET?(a.translate(.325*b,0),this.drawSolenoidManResetAct(a,.575*b,.7*c),a.translate(.325*-b,0)):f===mxShapePidValve.prototype.cst.SINGLE_ACTING?
2778(a.translate(.35*b,0),this.drawSingActingActBg(a,.65*b,.7*c),a.translate(.35*-b,0)):f===mxShapePidValve.prototype.cst.DOUBLE_ACTING?(a.translate(.35*b,0),this.drawDblActingActBg(a,.65*b,.7*c),a.translate(.35*-b,0)):f===mxShapePidValve.prototype.cst.PILOT_CYLINDER?(a.translate(.35*b,0),this.drawPilotCylinderActBg(a,.65*b,.7*c),a.translate(.35*-b,0)):f===mxShapePidValve.prototype.cst.ANGLE_BLOWDOWN&&(a.translate(.5*b,.2*c),this.drawAngleBlowdownAct(a,.4*b,.5*c),a.translate(.5*-b,.2*-c))};
2779mxShapePidValve.prototype.drawActuatorFg=function(a,d,e,b,c,f){if(f===mxShapePidValve.prototype.cst.BALANCED_DIAPHRAGM)a.translate(.25*b,.1*c),this.drawBalDiaphActFg(a,.5*b,.6*c),a.translate(.25*-b,.1*-c);else if(f===mxShapePidValve.prototype.cst.SINGLE_ACTING||f===mxShapePidValve.prototype.cst.DOUBLE_ACTING||f===mxShapePidValve.prototype.cst.PILOT_CYLINDER)a.translate(.35*b,0),this.drawActingActFg(a,.65*b,.7*c),a.translate(.35*-b,0)};
2780mxShapePidValve.prototype.drawManAct=function(a,d,e){a.begin();a.moveTo(0,0);a.lineTo(d,0);a.moveTo(.5*d,0);a.lineTo(.5*d,e);a.stroke()};mxShapePidValve.prototype.drawDiaphAct=function(a,d,e){a.begin();a.moveTo(.5*d,.2*e);a.lineTo(.5*d,e);a.stroke();a.begin();a.moveTo(0,.2*e);a.arcTo(.6*d,.4*e,0,0,1,d,.2*e);a.close();a.fillAndStroke()};mxShapePidValve.prototype.drawBalDiaphActBg=function(a,d,e){a.ellipse(0,0,d,.3*e);a.fillAndStroke();a.begin();a.moveTo(.5*d,.3*e);a.lineTo(.5*d,e);a.stroke()};
2781mxShapePidValve.prototype.drawBalDiaphActFg=function(a,d,e){a.begin();a.moveTo(0,.15*e);a.lineTo(d,.15*e);a.stroke()};
2782mxShapePidValve.prototype.drawCircleAct=function(a,d,e,b){a.ellipse(0,0,d,.5*e);a.fillAndStroke();a.begin();a.moveTo(.5*d,.5*e);a.lineTo(.5*d,e);a.stroke();var c="";b===mxShapePidValve.prototype.cst.MOTOR?c="M":b===mxShapePidValve.prototype.cst.ELECTRO_HYDRAULIC&&(c="E/H");a.setFontStyle(1);a.setFontFamily("Helvetica");a.setFontSize(.4*Math.min(d,e));a.text(.5*d,.25*e,0,0,c,mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
2783mxShapePidValve.prototype.drawSpringAct=function(a,d,e){a.begin();a.moveTo(.5*d,0);a.lineTo(.5*d,e);a.moveTo(.32*d,.16*e);a.lineTo(.68*d,.08*e);a.moveTo(.21*d,.32*e);a.lineTo(.79*d,.2*e);a.moveTo(.1*d,.52*e);a.lineTo(.9*d,.36*e);a.moveTo(0,.72*e);a.lineTo(d,.5*e);a.stroke()};
2784mxShapePidValve.prototype.drawSolenoidManResetAct=function(a,d,e){a.rect(0,0,.61*d,.46*e);a.fillAndStroke();a.begin();a.moveTo(.56*d,.6*e);a.lineTo(.78*d,.5*e);a.lineTo(d,.6*e);a.lineTo(.78*d,.7*e);a.close();a.fillAndStroke();a.begin();a.moveTo(.305*d,.46*e);a.lineTo(.305*d,e);a.moveTo(.305*d,.6*e);a.lineTo(.56*d,.6*e);a.stroke();a.setFontStyle(1);a.setFontFamily("Helvetica");a.setFontSize(.4*Math.min(d,e));a.text(.305*d,.23*e,0,0,"S",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);
2785a.setFontStyle(0);a.setFontSize(.15*Math.min(d,e));a.text(.78*d,.6*e,0,0,"R",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};mxShapePidValve.prototype.drawSingActingActBg=function(a,d,e){a.rect(0,0,.46*d,.46*e);a.fillAndStroke();a.begin();a.moveTo(.23*d,.46*e);a.lineTo(.23*d,e);a.moveTo(.46*d,.23*e);a.lineTo(d,.23*e);a.moveTo(.77*d,.15*e);a.lineTo(.69*d,.31*e);a.moveTo(.82*d,.15*e);a.lineTo(.74*d,.31*e);a.stroke()};
2786mxShapePidValve.prototype.drawActingActFg=function(a,d,e){a.begin();a.moveTo(.23*d,.23*e);a.lineTo(.23*d,.46*e);a.moveTo(0,.23*e);a.lineTo(.46*d,.23*e);a.stroke()};
2787mxShapePidValve.prototype.drawDblActingActBg=function(a,d,e){a.rect(0,0,.46*d,.46*e);a.fillAndStroke();a.begin();a.moveTo(.23*d,.46*e);a.lineTo(.23*d,e);a.moveTo(.46*d,.115*e);a.lineTo(d,.115*e);a.moveTo(.77*d,.035*e);a.lineTo(.69*d,.195*e);a.moveTo(.82*d,.035*e);a.lineTo(.74*d,.195*e);a.moveTo(.46*d,.345*e);a.lineTo(d,.345*e);a.moveTo(.77*d,.265*e);a.lineTo(.69*d,.425*e);a.moveTo(.82*d,.265*e);a.lineTo(.74*d,.425*e);a.stroke()};
2788mxShapePidValve.prototype.drawPilotCylinderActBg=function(a,d,e){a.rect(0,0,.46*d,.46*e);a.fillAndStroke();a.begin();a.moveTo(.23*d,.46*e);a.lineTo(.23*d,e);a.moveTo(.46*d,.23*e);a.lineTo(.77*d,.23*e);a.stroke();a.rect(.77*d,.115*e,.23*d,.23*e);a.fillAndStroke();a.setFontStyle(0);a.setFontFamily("Helvetica");a.setFontSize(.15*Math.min(d,e));a.text(.885*d,.23*e,0,0,"P",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
2789mxShapePidValve.prototype.drawAngleBlowdownAct=function(a,d,e){a.begin();a.moveTo(.34*d,0);a.lineTo(d,.405*e);a.moveTo(0,e);a.lineTo(.665*d,.205*e);a.stroke()};
2790mxShapePidValve.prototype.drawSquareAct=function(a,d,e,b){a.rect(0,0,d,.5*e);a.fillAndStroke();a.begin();a.moveTo(.5*d,.5*e);a.lineTo(.5*d,e);a.stroke();var c="";b===mxShapePidValve.prototype.cst.PILOT?c="P":b===mxShapePidValve.prototype.cst.SOLENOID?c="S":b===mxShapePidValve.prototype.cst.DIGITAL?c="D":b===mxShapePidValve.prototype.cst.WEIGHT?c="W":b===mxShapePidValve.prototype.cst.KEY&&(c="K");a.setFontStyle(1);a.setFontFamily("Helvetica");a.setFontSize(.4*Math.min(d,e));a.text(.5*d,.25*e,0,0,c,
2791mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
2792mxShapePidValve.prototype.drawGateVariantFg=function(a,d,e,b,c,f,g,h){mxUtils.getValue(this.style,mxShapePidValve.prototype.cst.DEFAULT_STATE,"open");g=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");var k=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");f===mxShapePidValve.prototype.cst.BALL?(a.ellipse(d+.3*b,e+h+.18*(c-h),.4*b,.64*(c-h)),a.fillAndStroke()):f===mxShapePidValve.prototype.cst.GLOBE?(a.ellipse(d+.3*b,e+h+.18*(c-h),.4*b,.64*(c-h)),a.setFillColor(k),
2793a.fillAndStroke(),a.setFillColor(g)):f===mxShapePidValve.prototype.cst.PLUG?this.drawPlug(a,d+.4*b,e+h+.25*(c-h),.2*b,.5*(c-h)):f===mxShapePidValve.prototype.cst.NEEDLE?this.drawNeedle(a,d+.45*b,e+h+.1*(c-h),.1*b,.9*(c-h)):f===mxShapePidValve.prototype.cst.SELF_DRAINING&&this.drawDrain(a,d+.48*b,e+h+.5*(c-h),.04*b,.49*(c-h))};
2794mxShapePidValve.prototype.drawAngleVariantFg=function(a,d,e,b,c,f,g,h){mxUtils.getValue(this.style,mxShapePidValve.prototype.cst.DEFAULT_STATE,"open");d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");e=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");f===mxShapePidValve.prototype.cst.ANGLE_GLOBE&&("none"===g?a.ellipse(.34*b,.175*c,.32*b,.4*c):a.ellipse(.34*b,.45*c,.32*b,.2667*c),a.setFillColor(e),a.fillAndStroke(),a.setFillColor(d))};
2795mxShapePidValve.prototype.drawGateVariantBg=function(a,d,e,b,c,f,g,h){f===mxShapePidValve.prototype.cst.GATE?this.drawGateValve(a,d,e+h,b,c-h):f===mxShapePidValve.prototype.cst.BALL||f===mxShapePidValve.prototype.cst.GLOBE?(a.ellipse(d+.3*b,e+h+.18*(c-h),.4*b,.64*(c-h)),a.fillAndStroke(),this.drawGateValve(a,d,e+h,b,c-h)):f===mxShapePidValve.prototype.cst.PLUG?(this.drawPlug(a,d+.4*b,e+h+.25*(c-h),.2*b,.5*(c-h)),this.drawGateValve(a,d,e+h,b,c-h)):f===mxShapePidValve.prototype.cst.NEEDLE?(this.drawNeedle(a,
2796d+.45*b,e+h+.1*(c-h),.1*b,.9*(c-h)),this.drawGateValve(a,d,e+h,b,c-h)):f===mxShapePidValve.prototype.cst.SELF_DRAINING&&(this.drawDrain(a,d+.48*b,e+h+.5*(c-h),.04*b,.49*(c-h)),this.drawGateValve(a,d,e+h,b,c-h))};
2797mxShapePidValve.prototype.drawAngleVariantBg=function(a,d,e,b,c,f,g,h){f===mxShapePidValve.prototype.cst.ANGLE?this.drawAngleValve(a,.2*b,e+h,.8*b,c-h):f===mxShapePidValve.prototype.cst.ANGLE_GLOBE?this.drawAngleGlobeValveBg(a,.2*b,e+h,.8*b,c-h):f===mxShapePidValve.prototype.cst.THREE_WAY?this.drawThreeWayValve(a,0,e+h,b,c-h):f===mxShapePidValve.prototype.cst.ANGLE_BLOWDOWN&&this.drawAngleBlowdownValve(a,d,e+h,b,c-h)};
2798mxShapePidValve.prototype.drawPlug=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,.5*c);a.lineTo(.5*b,0);a.lineTo(b,.5*c);a.lineTo(.5*b,c);a.close();a.fillAndStroke();a.translate(-d,-e)};
2799mxShapePidValve.prototype.drawNeedle=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(b,0);a.lineTo(.5*b,c);a.close();a.setFillColor(g);a.fillAndStroke();a.setFillColor(f);a.translate(-d,-e)};
2800mxShapePidValve.prototype.drawDrain=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.translate(d,e);a.begin();a.moveTo(.5*b,0);a.lineTo(.5*b,.96*c);a.stroke();a.begin();a.moveTo(0,.9*c);a.lineTo(b,.9*c);a.lineTo(.5*b,c);a.close();a.setFillColor(g);a.fillAndStroke();a.setFillColor(f);a.translate(-d,-e)};
2801mxShapePidValve.prototype.drawGateValve=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapePidValve.prototype.cst.DEFAULT_STATE,"open"),g=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(.5*b,.5*c);a.lineTo(0,c);a.close();a.moveTo(b,0);a.lineTo(.5*b,.5*c);a.lineTo(b,c);a.close();f===mxShapePidValve.prototype.cst.CLOSED?(a.setFillColor(h),a.fillAndStroke(),
2802a.setFillColor(g)):a.fillAndStroke();a.translate(-d,-e)};mxShapePidValve.prototype.drawAngleValve=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(.375*b,.375*c);a.lineTo(b,0);a.lineTo(b,.75*c);a.close();a.moveTo(.375*b,.375*c);a.lineTo(.75*b,c);a.lineTo(0,c);a.close();a.fillAndStroke();a.translate(-d,-e)};
2803mxShapePidValve.prototype.drawAngleGlobeValveBg=function(a,d,e,b,c){a.translate(d,e);a.ellipse(.175*b,.175*c,.4*b,.4*c);a.fillAndStroke();a.begin();a.moveTo(.375*b,.375*c);a.lineTo(b,0);a.lineTo(b,.75*c);a.close();a.moveTo(.375*b,.375*c);a.lineTo(.75*b,c);a.lineTo(0,c);a.close();a.fillAndStroke();a.translate(-d,-e)};mxShapePidValve.prototype.drawAngleGlobeValveFg=function(a,d,e,b,c){a.translate(d,e);a.ellipse(.275*b,.275*c,.2*b,.2*c);a.fillAndStroke();a.translate(-d,-e)};
2804mxShapePidValve.prototype.drawThreeWayValve=function(a,d,e,b,c){a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(.5*b,.375*c);a.lineTo(0,.75*c);a.close();a.moveTo(b,0);a.lineTo(.5*b,.375*c);a.lineTo(b,.75*c);a.close();a.moveTo(.5*b,.375*c);a.lineTo(.8*b,c);a.lineTo(.2*b,c);a.close();a.fillAndStroke();a.translate(-d,-e)};mxShapePidValve.prototype.drawAngleBlowdownValve=function(a,d,e,b,c){};
2805mxShapePidValve.prototype.drawButterflyValve=function(a,d,e,b,c,f,g){mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");c-=g;a.translate(d,e+g);a.begin();a.moveTo(0,0);a.lineTo(0,c);a.moveTo(b,0);a.lineTo(b,c);a.moveTo(.05*b,.05*c);a.lineTo(.95*b,.95*c);a.fillAndStroke();a.ellipse(.4*b,.33*c,.2*b,.33*c);a.fillAndStroke();a.translate(-d,-e)};
2806mxShapePidValve.prototype.drawCheckValve=function(a,d,e,b,c,f,g){f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff");var h=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");c-=g;a.translate(d,e+g);a.begin();a.moveTo(0,0);a.lineTo(0,c);a.moveTo(b,0);a.lineTo(b,c);a.moveTo(.05*b,.05*c);a.lineTo(.95*b,.95*c);a.fillAndStroke();a.begin();a.moveTo(.8925*b,.815*c);a.lineTo(.957*b,.955*c);a.lineTo(.85*b,.928*c);a.close();a.setFillColor(h);a.fillAndStroke();a.setFillColor(f);
2807a.translate(-d,-e)};mxShapePidValve.prototype.isGateVariant=function(a){return a===mxShapePidValve.prototype.cst.GATE||a===mxShapePidValve.prototype.cst.BALL||a===mxShapePidValve.prototype.cst.PLUG||a===mxShapePidValve.prototype.cst.NEEDLE||a===mxShapePidValve.prototype.cst.SELF_DRAINING||a===mxShapePidValve.prototype.cst.GLOBE?!0:!1};
2808mxShapePidValve.prototype.isAngleVariant=function(a){return a===mxShapePidValve.prototype.cst.ANGLE||a===mxShapePidValve.prototype.cst.ANGLE_GLOBE||a===mxShapePidValve.prototype.cst.THREE_WAY||a===mxShapePidValve.prototype.cst.ANGLE_BLOWDOWN?!0:!1};
2809mxShapePidValve.prototype.isSquareVariant=function(a){return a===mxShapePidValve.prototype.cst.PILOT||a===mxShapePidValve.prototype.cst.SOLENOID||a===mxShapePidValve.prototype.cst.POWERED||a===mxShapePidValve.prototype.cst.DIGITAL||a===mxShapePidValve.prototype.cst.WEIGHT||a===mxShapePidValve.prototype.cst.KEY?!0:!1};mxCellRenderer.registerShape(mxShapePidValve.prototype.cst.SHAPE_VALVE,mxShapePidValve);
2810function mxShapePidIntBlockBleedValve(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidIntBlockBleedValve,mxShapePidValve);
2811mxShapePidIntBlockBleedValve.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxShapePidIntBlockBleedValve.prototype.cst.ACTUATOR,mxShapePidIntBlockBleedValve.prototype.cst.NONE),g=0;"none"!==f&&(g=.2353*c);a.translate(d,e);a.setLineJoin("round");this.background(a,d,e,b,c,f,g);a.setShadow(!1);this.foreground(a,d,e,b,c,f,g)};
2812mxShapePidIntBlockBleedValve.prototype.background=function(a,d,e,b,c,f,g){f!==mxShapePidIntBlockBleedValve.prototype.cst.NONE&&this.drawActuatorBg(a,d,e,b,c,f);this.drawValveBg(a,0,g,b,c-g)};mxShapePidIntBlockBleedValve.prototype.foreground=function(a,d,e,b,c,f,g){f!==mxShapePidIntBlockBleedValve.prototype.cst.NONE&&this.drawActuatorFg(a,d,e,b,c,f)};
2813mxShapePidIntBlockBleedValve.prototype.drawValveBg=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),g=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.translate(d,e);a.begin();a.moveTo(0,0);a.lineTo(.5*b,.23*c);a.lineTo(0,.46*c);a.close();a.moveTo(.5*b,.23*c);a.lineTo(b,0);a.lineTo(b,.46*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.5*b,.23*c);a.lineTo(.5*b,.5*c);a.stroke();a.setFillColor(g);a.begin();a.moveTo(.3*b,.5*c);a.lineTo(.7*
2814b,.5*c);a.lineTo(.5*b,.75*c);a.close();a.fillAndStroke();a.begin();a.moveTo(.3*b,c);a.lineTo(.5*b,.75*c);a.lineTo(.7*b,c);a.fillAndStroke();a.setFillColor(f);a.translate(-d,-e)};
2815mxShapePidIntBlockBleedValve.prototype.drawActuatorBg=function(a,d,e,b,c,f){this.isSquareVariant(f)?(a.translate(.325*b,0),this.drawSquareAct(a,.35*b,.4112*c,f),a.translate(.325*-b,0)):f===mxShapePidIntBlockBleedValve.prototype.cst.MANUAL?(a.translate(.25*b,.0882*c),this.drawManAct(a,.5*b,.323*c),a.translate(.25*-b,.0882*-c)):f===mxShapePidIntBlockBleedValve.prototype.cst.DIAPHRAGM?(a.translate(.25*b,.0588*c),this.drawDiaphAct(a,.5*b,.3524*c),a.translate(.25*-b,.0588*-c)):f===mxShapePidIntBlockBleedValve.prototype.cst.BALANCED_DIAPHRAGM?
2816(a.translate(.25*b,.0588*c),this.drawBalDiaphActBg(a,.5*b,.3524*c),a.translate(.25*-b,.0588*-c)):f===mxShapePidIntBlockBleedValve.prototype.cst.MOTOR||f===mxShapePidIntBlockBleedValve.prototype.cst.ELECTRO_HYDRAULIC?(a.translate(.325*b,0),this.drawCircleAct(a,.35*b,.4112*c,f),a.translate(.325*-b,0)):f===mxShapePidIntBlockBleedValve.prototype.cst.SPRING?(a.translate(.36*b,0),this.drawSpringAct(a,.28*b,.4112*c),a.translate(.36*-b,0)):f===mxShapePidIntBlockBleedValve.prototype.cst.SOLENOID_MANUAL_RESET?
2817(a.translate(.325*b,0),this.drawSolenoidManResetAct(a,.575*b,.4112*c),a.translate(.325*-b,0)):f===mxShapePidIntBlockBleedValve.prototype.cst.SINGLE_ACTING?(a.translate(.35*b,0),this.drawSingActingActBg(a,.65*b,.4112*c),a.translate(.35*-b,0)):f===mxShapePidIntBlockBleedValve.prototype.cst.DOUBLE_ACTING?(a.translate(.35*b,0),this.drawDblActingActBg(a,.65*b,.4112*c),a.translate(.35*-b,0)):f===mxShapePidIntBlockBleedValve.prototype.cst.PILOT_CYLINDER&&(a.translate(.35*b,0),this.drawPilotCylinderActBg(a,
2818.65*b,.4112*c),a.translate(.35*-b,0))};
2819mxShapePidIntBlockBleedValve.prototype.drawActuatorFg=function(a,d,e,b,c,f){if(f===mxShapePidIntBlockBleedValve.prototype.cst.BALANCED_DIAPHRAGM)a.translate(.25*b,.0588*c),this.drawBalDiaphActFg(a,.5*b,.3524*c),a.translate(.25*-b,.0588*-c);else if(f===mxShapePidIntBlockBleedValve.prototype.cst.SINGLE_ACTING||f===mxShapePidIntBlockBleedValve.prototype.cst.DOUBLE_ACTING||f===mxShapePidIntBlockBleedValve.prototype.cst.PILOT_CYLINDER)a.translate(.35*b,0),this.drawActingActFg(a,.65*b,.4112*c),a.translate(.35*
2820-b,0)};mxCellRenderer.registerShape("mxgraph.pid2valves.blockBleedValve",mxShapePidIntBlockBleedValve);function mxShapePidAutoRecircValve(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxShapePidAutoRecircValve,mxShape);
2821mxShapePidAutoRecircValve.prototype.paintVertexShape=function(a,d,e,b,c){a.setLineJoin("round");a.translate(d,e);a.rect(0,0,b,c);a.fillAndStroke();a.setShadow(!1);a.begin();a.moveTo(.08*b,.08*c);a.lineTo(.08*b,.92*c);a.moveTo(.92*b,.08*c);a.lineTo(.92*b,.92*c);a.moveTo(.12*b,.122*c);a.lineTo(.8738*b,.8837*c);a.moveTo(.5*b,0);a.lineTo(.55*b,.05*c);a.lineTo(.45*b,.15*c);a.lineTo(.55*b,.25*c);a.lineTo(.45*b,.35*c);a.lineTo(.55*b,.45*c);a.lineTo(.49*b,.5*c);a.stroke();d=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,
2822"#ffffff");e=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");a.begin();a.moveTo(.8257*b,.7695*c);a.lineTo(.8797*b,.888*c);a.lineTo(.79*b,.8651*c);a.close();a.setFillColor(e);a.fillAndStroke();a.setFillColor(d)};mxCellRenderer.registerShape("mxgraph.pid2valves.autoRecircValve",mxShapePidAutoRecircValve);function mxRackContainer(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackContainer,mxShape);
2823mxRackContainer.prototype.unitSize=20;mxRackContainer.prototype.cst={SHAPE_RACK_CONTAINER:"mxgraph.rackGeneral.container",TEXT_COLOR:"textColor",NUMBER_DISPLAY:"numDisp",OFF:"off",DIR_ASC:"ascend",DIR_DESC:"descend"};
2824mxRackContainer.prototype.customProperties=[{name:"fillColor2",dispName:"Cabinet Color",type:"color"},{name:"textColor",dispName:"Numbers Color",type:"color"},{name:"numDisp",dispName:"Display Numbers",type:"enum",enumList:[{val:"off",dispName:"Off"},{val:"ascend",dispName:"Ascending"},{val:"descend",dispName:"Descending"}],onChange:function(a,d){a.setCellStyles("marginLeft","off"==d?9:33,a.getSelectionCells())}},{name:"rackUnitSize",dispName:"Unit size",type:"int"}];
2825mxRackContainer.prototype.paintVertexShape=function(a,d,e,b,c){var f=mxUtils.getValue(this.style,mxRackContainer.prototype.cst.NUMBER_DISPLAY,mxRackContainer.prototype.cst.DIR_ASC),g=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#ffffff"),h=mxUtils.getValue(this.style,"fillColor2","#f4f4f4");f!==mxRackContainer.prototype.cst.OFF?(a.translate(d+24,e),b=Math.max(b-24,0)):a.translate(d,e);a.setFillColor(g);this.background(a,b,c,12);a.setShadow(!1);a.setFillColor(h);this.foreground(a,b,c,12);
2826f!==mxRackContainer.prototype.cst.OFF&&42<b&&this.sideText(a,b,c,12)};mxRackContainer.prototype.background=function(a,d,e,b){a.rect(0,0,d,e);a.fillAndStroke()};
2827mxRackContainer.prototype.foreground=function(a,d,e,b){d>18+2*b&&42<e&&(a.rect(0,0,d,21),a.fillAndStroke(),a.rect(0,e-21,d,21),a.fillAndStroke(),a.rect(0,21,9,e-42),a.fillAndStroke(),a.rect(d-9,21,9,e-42),a.fillAndStroke(),a.ellipse(2.5,7.5,6,6),a.stroke(),a.ellipse(d-8.5,7.5,6,6),a.stroke(),a.ellipse(2.5,e-13.5,6,6),a.stroke(),a.ellipse(d-8.5,e-13.5,6,6),a.stroke())};
2828mxRackContainer.prototype.sideText=function(a,d,e,b){var c=mxUtils.getValue(this.style,mxRackContainer.prototype.cst.TEXT_COLOR,"#666666");d=mxUtils.getValue(this.style,mxRackContainer.prototype.cst.NUMBER_DISPLAY,mxRackContainer.prototype.cst.DIR_ASC);var f=parseFloat(mxUtils.getValue(this.style,"rackUnitSize",mxRackContainer.prototype.unitSize));this.unitSize=f;a.setFontSize(b);a.setFontColor(c);e=Math.floor((Math.abs(e)-42)/f);for(c=0;c<e;c++)a.text(-b,21+.5*f+c*f,0,0,d===mxRackContainer.prototype.cst.DIR_DESC?
2829(c+1).toString():(e-c).toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.begin();for(c=0;c<e+1;c++)a.moveTo(-2*b,21+c*f),a.lineTo(0,21+c*f);a.stroke()};function mxRackPlate(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=1}mxUtils.extend(mxRackPlate,mxShape);mxRackPlate.prototype.cst={SHAPE_RACK_PLATE:"mxgraph.rackGeneral.plate"};
2830mxRackPlate.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxRackPlate.prototype.background=function(a,d,e){a.begin();a.rect(0,0,d,e);a.fillAndStroke()};mxRackPlate.prototype.foreground=function(a,d,e){18<d&&(a.save(),a.setFillColor("#000000"),a.setAlpha(.23),a.rect(0,0,9,e),a.fill(),a.rect(d-9,0,9,e),a.fill(),a.restore(),a.rect(0,0,d,e),a.stroke(),a.rect(9,0,d-18,e),a.stroke())};
2831function mxRackHorCableDuct(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackHorCableDuct,mxShape);mxRackHorCableDuct.prototype.cst={SHAPE_RACK_HOR_CABLE_DUCT:"mxgraph.rackGeneral.horCableDuct"};mxRackHorCableDuct.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxRackHorCableDuct.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
2832mxRackHorCableDuct.prototype.foreground=function(a,d,e){e=Math.floor((d-20)/33);d=10+Math.floor((d-20-33*e)/2);if(0<e)for(var b=0;b<=e;b++)a.rect(d,0,3,7),a.stroke(),a.rect(d,7,3,7.8),a.stroke(),d+=33};function mxRackHorRoutingBank(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackHorRoutingBank,mxShape);mxRackHorRoutingBank.prototype.cst={SHAPE_RACK_HOR_ROUTING_BANK:"mxgraph.rackGeneral.horRoutingBank"};
2833mxRackHorRoutingBank.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxRackHorRoutingBank.prototype.background=function(a,d,e){a.rect(0,0,d,e);a.fillAndStroke()};
2834mxRackHorRoutingBank.prototype.foreground=function(a,d,e){var b=Math.floor((d-20-16)/22);e=Math.floor(e/mxRackContainer.unitSize);if(0<b&&0<e)for(var c=0;c<e;c++)for(var f=18+Math.floor((d-20-16-22*b)/2)-8,g=0;g<=b;g++)a.rect(f,4+c*mxRackContainer.unitSize,16,6.8),a.stroke(),f+=22};function mxRackNeatPatch(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackNeatPatch,mxShape);mxRackNeatPatch.prototype.cst={SHAPE_RACK_NEAT_PATCH:"mxgraph.rackGeneral.neatPatch"};
2835mxRackNeatPatch.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.mainText(a,b,c)};mxRackNeatPatch.prototype.background=function(a,d,e){a.setFillColor("#666666");a.rect(0,0,d,e);a.fillAndStroke()};mxRackNeatPatch.prototype.mainText=function(a,d,e){a.setFontSize("12");a.setFontColor("#ffffff");a.setFontStyle(mxConstants.FONT_BOLD);a.text(d/2,e-6,0,0,"NEAT-PATCH",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};
2836function mxRackShelf(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackShelf,mxShape);mxRackShelf.prototype.cst={SHAPE_RACK_SHELF:"mxgraph.rackGeneral.shelf"};mxRackShelf.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c)};mxRackShelf.prototype.background=function(a,d,e){a.setStrokeWidth(2);a.begin();a.moveTo(1,0);a.lineTo(1,e-1);a.lineTo(d-1,e-1);a.lineTo(d-1,1);a.fillAndStroke()};
2837function mxRackRackNumbering(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackRackNumbering,mxShape);mxRackRackNumbering.prototype.cst={SHAPE_RACK_RACK_NUMBERING:"mxgraph.rackGeneral.rackNumbering",UNIT_NUM:"unitNum",UNIT_HEIGHT:"unitHeight",TEXT_COLOR:"textColor",NUM_DIR:"numDir",DIR_ASC:"ascend",DIR_DESC:"descend",TEXT_SIZE:"textSize"};
2838mxRackRackNumbering.prototype.paintVertexShape=function(a,d,e,b,c){var f=parseFloat(mxUtils.getValue(this.style,mxRackRackNumbering.prototype.cst.UNIT_NUM,"42")),g=parseFloat(mxUtils.getValue(this.style,mxRackRackNumbering.prototype.cst.UNIT_HEIGHT,"14.8")),h=parseFloat(mxUtils.getValue(this.style,mxRackRackNumbering.prototype.cst.TEXT_SIZE,"12"));a.translate(d,e);c=f*g;this.background(a,b,c,h);a.setShadow(!1);this.sideText(a,b,c,f,g,h)};
2839mxRackRackNumbering.prototype.background=function(a,d,e,b){a.rect(3*b,0,160.9,e);a.fillAndStroke()};
2840mxRackRackNumbering.prototype.sideText=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,mxRackRackNumbering.prototype.cst.TEXT_COLOR,"#666666");var g=mxUtils.getValue(this.style,mxRackRackNumbering.prototype.cst.NUM_DIR,mxRackRackNumbering.prototype.cst.DIR_DESC);a.setFontSize(f);a.setFontColor(d);if(g===mxRackRackNumbering.prototype.cst.DIR_ASC)for(d=0;d<b;d++)a.text(f,.5*c+d*c,0,0,(d+1).toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);else for(d=0;d<b;d++)a.text(f,e-
2841.5*c-d*c,0,0,(d+1).toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setStrokeColor("#dddddd");a.begin();for(d=0;d<b+1;d++)a.moveTo(0,d*c),a.lineTo(3*f,d*c);a.stroke()};function mxRackRackCabinet(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackRackCabinet,mxShape);
2842mxRackRackCabinet.prototype.cst={SHAPE_RACK_RACK_CABINET:"mxgraph.rackGeneral.rackCabinet",UNIT_NUM:"unitNum",UNIT_HEIGHT:"unitHeight",TEXT_COLOR:"textColor",NUM_DIR:"numDir",NUMBER_DISPLAY:"numDisp",ON:"on",OFF:"off",DIR_ASC:"ascend",DIR_DESC:"descend",TEXT_SIZE:"textSize"};
2843mxRackRackCabinet.prototype.paintVertexShape=function(a,d,e,b,c){var f=parseFloat(mxUtils.getValue(this.style,mxRackRackCabinet.prototype.cst.UNIT_NUM,"12")),g=parseFloat(mxUtils.getValue(this.style,mxRackRackCabinet.prototype.cst.UNIT_HEIGHT,"14.8")),h=parseFloat(mxUtils.getValue(this.style,mxRackRackCabinet.prototype.cst.TEXT_SIZE,"12")),k=mxUtils.getValue(this.style,mxRackRackCabinet.prototype.cst.NUMBER_DISPLAY,mxRackRackCabinet.prototype.cst.ON);k===mxRackRackCabinet.prototype.cst.ON?a.translate(d+
28442*h,e):a.translate(d,e);c=f*g+42;this.background(a,b,c,h);a.setShadow(!1);this.foreground(a,b,c,h);k===mxRackRackCabinet.prototype.cst.ON&&this.sideText(a,b,c,f,g,h)};mxRackRackCabinet.prototype.background=function(a,d,e,b){a.setFillColor("#ffffff");a.rect(0,0,180,e);a.fillAndStroke()};
2845mxRackRackCabinet.prototype.foreground=function(a,d,e,b){a.setFillColor("#f4f4f4");a.rect(0,0,180,21);a.fillAndStroke();a.rect(0,e-21,180,21);a.fillAndStroke();a.rect(0,21,9,e-42);a.fillAndStroke();a.rect(171,21,9,e-42);a.fillAndStroke();a.ellipse(2.5,7.5,6,6);a.stroke();a.ellipse(171.5,7.5,6,6);a.stroke();a.ellipse(2.5,e-13.5,6,6);a.stroke();a.ellipse(171.5,e-13.5,6,6);a.stroke()};
2846mxRackRackCabinet.prototype.sideText=function(a,d,e,b,c,f){d=mxUtils.getValue(this.style,mxRackRackCabinet.prototype.cst.TEXT_COLOR,"#666666");var g=mxUtils.getValue(this.style,mxRackRackCabinet.prototype.cst.NUM_DIR,mxRackRackCabinet.prototype.cst.DIR_DESC);a.setFontSize(f);a.setFontColor(d);if(g===mxRackRackCabinet.prototype.cst.DIR_ASC)for(d=0;d<b;d++)a.text(-f,21+.5*c+d*c,0,0,(d+1).toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);else for(d=0;d<b;d++)a.text(-f,e-21-.5*
2847c-d*c,0,0,(d+1).toString(),mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0);a.setStrokeColor("#dddddd");a.begin();for(d=0;d<b+1;d++)a.moveTo(-2*f,21+d*c),a.lineTo(0,21+d*c);a.stroke()};function mxRackHorCableDuct1U(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackHorCableDuct1U,mxShape);mxRackHorCableDuct1U.prototype.cst={SHAPE_RACK_HOR_CABLE_DUCT_1U:"mxgraph.rackGeneral.horCableDuct1U"};
2848mxRackHorCableDuct1U.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxRackHorCableDuct1U.prototype.background=function(a,d,e){a.rect(0,0,160.9,14.8);a.fillAndStroke()};
2849mxRackHorCableDuct1U.prototype.foreground=function(a,d,e){a.rect(12,0,3,7);a.stroke();a.rect(12,7,3,7.8);a.stroke();a.rect(45.5,0,3,7);a.stroke();a.rect(45.5,7,3,7.8);a.stroke();a.rect(79,0,3,7);a.stroke();a.rect(79,7,3,7.8);a.stroke();a.rect(112.5,0,3,7);a.stroke();a.rect(112.5,7,3,7.8);a.stroke();a.rect(146,0,3,7);a.stroke();a.rect(146,7,3,7.8);a.stroke()};function mxRackHorCableDuct2U(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2850mxUtils.extend(mxRackHorCableDuct2U,mxShape);mxRackHorCableDuct2U.prototype.cst={SHAPE_RACK_HOR_CABLE_DUCT_2U:"mxgraph.rackGeneral.horCableDuct2U"};mxRackHorCableDuct2U.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxRackHorCableDuct2U.prototype.background=function(a,d,e){a.rect(0,0,160.9,29.6);a.fillAndStroke()};
2851mxRackHorCableDuct2U.prototype.foreground=function(a,d,e){a.rect(12,0,3,7);a.stroke();a.rect(12,7,3,22.6);a.stroke();a.rect(45.5,0,3,7);a.stroke();a.rect(45.5,7,3,22.6);a.stroke();a.rect(79,0,3,7);a.stroke();a.rect(79,7,3,22.6);a.stroke();a.rect(112.5,0,3,7);a.stroke();a.rect(112.5,7,3,22.6);a.stroke();a.rect(146,0,3,7);a.stroke();a.rect(146,7,3,22.6);a.stroke()};function mxRackHorRoutingBank1U(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2852mxUtils.extend(mxRackHorRoutingBank1U,mxShape);mxRackHorRoutingBank1U.prototype.cst={SHAPE_RACK_HOR_ROUTING_BANK_1U:"mxgraph.rackGeneral.horRoutingBank1U"};mxRackHorRoutingBank1U.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxRackHorRoutingBank1U.prototype.background=function(a,d,e){a.rect(0,0,160.9,14.8);a.fillAndStroke()};
2853mxRackHorRoutingBank1U.prototype.foreground=function(a,d,e){a.rect(10,4,17,6.8);a.stroke();a.rect(31,4,17,6.8);a.stroke();a.rect(52,4,17,6.8);a.stroke();a.rect(73,4,17,6.8);a.stroke();a.rect(94,4,17,6.8);a.stroke();a.rect(115,4,17,6.8);a.stroke();a.rect(136,4,17,6.8);a.stroke()};function mxRackHorRoutingBank2U(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackHorRoutingBank2U,mxShape);mxRackHorRoutingBank2U.prototype.cst={SHAPE_RACK_HOR_ROUTING_BANK_2U:"mxgraph.rackGeneral.horRoutingBank2U"};
2854mxRackHorRoutingBank2U.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};mxRackHorRoutingBank2U.prototype.background=function(a,d,e){a.rect(0,0,160.9,29.6);a.fillAndStroke()};
2855mxRackHorRoutingBank2U.prototype.foreground=function(a,d,e){a.rect(10,4,17,6.8);a.stroke();a.rect(31,4,17,6.8);a.stroke();a.rect(52,4,17,6.8);a.stroke();a.rect(73,4,17,6.8);a.stroke();a.rect(94,4,17,6.8);a.stroke();a.rect(115,4,17,6.8);a.stroke();a.rect(136,4,17,6.8);a.stroke();a.rect(10,18.8,17,6.8);a.stroke();a.rect(31,18.8,17,6.8);a.stroke();a.rect(52,18.8,17,6.8);a.stroke();a.rect(73,18.8,17,6.8);a.stroke();a.rect(94,18.8,17,6.8);a.stroke();a.rect(115,18.8,17,6.8);a.stroke();a.rect(136,18.8,17,
28566.8);a.stroke()};function mxRackNeatPatch2U(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackNeatPatch2U,mxShape);mxRackNeatPatch2U.prototype.cst={SHAPE_RACK_NEAT_PATCH_2U:"mxgraph.rackGeneral.neatPatch2U"};mxRackNeatPatch2U.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.mainText(a,b,c)};
2857mxRackNeatPatch2U.prototype.background=function(a,d,e){a.setFillColor("#666666");a.rect(0,0,160.9,29.6);a.fillAndStroke()};mxRackNeatPatch2U.prototype.mainText=function(a,d,e){a.setFontSize("12");a.setFontColor("#ffffff");a.setFontStyle(mxConstants.FONT_BOLD);a.text(80.45,24,0,0,"NEAT-PATCH",mxConstants.ALIGN_CENTER,mxConstants.ALIGN_MIDDLE,0,null,0,0,0)};function mxRackShelf1U(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}
2858mxUtils.extend(mxRackShelf1U,mxShape);mxRackShelf1U.prototype.cst={SHAPE_RACK_SHELF_1U:"mxgraph.rackGeneral.shelf1U"};mxRackShelf1U.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c)};mxRackShelf1U.prototype.background=function(a,d,e){a.setStrokeWidth(2);a.begin();a.moveTo(0,0);a.lineTo(0,14.8);a.lineTo(160.9,14.8);a.lineTo(160.9,0);a.fillAndStroke()};
2859function mxRackShelf2U(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackShelf2U,mxShape);mxRackShelf2U.prototype.cst={SHAPE_RACK_SHELF_2U:"mxgraph.rackGeneral.shelf2U"};mxRackShelf2U.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c)};mxRackShelf2U.prototype.background=function(a,d,e){a.setStrokeWidth(2);a.begin();a.moveTo(0,0);a.lineTo(0,29.6);a.lineTo(160.9,29.6);a.lineTo(160.9,0);a.fillAndStroke()};
2860function mxRackShelf4U(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackShelf4U,mxShape);mxRackShelf4U.prototype.cst={SHAPE_RACK_SHELF_4U:"mxgraph.rackGeneral.shelf4U"};mxRackShelf4U.prototype.paintVertexShape=function(a,d,e,b,c){a.translate(d,e);this.background(a,b,c)};mxRackShelf4U.prototype.background=function(a,d,e){a.setStrokeWidth(2);a.begin();a.moveTo(0,0);a.lineTo(0,59.2);a.lineTo(160.9,59.2);a.lineTo(160.9,0);a.fillAndStroke()};
2861function mxRackChannelBase(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackChannelBase,mxShape);mxRackChannelBase.prototype.cst={SHAPE_RACK_CHANNEL_BASE:"mxgraph.rackGeneral.channelBase"};mxRackChannelBase.prototype.paintVertexShape=function(a,d,e,b,c){b=Math.max(b,20);c=Math.max(c,20);a.translate(d,e);this.background(a,b,c);a.setShadow(!1);this.foreground(a,b,c)};
2862mxRackChannelBase.prototype.background=function(a,d,e){a.rect(10,e-15,5,15);a.fillAndStroke();a.rect(d-15,e-15,5,15);a.fillAndStroke();a.rect(0,0,d,e-5);a.fillAndStroke()};mxRackChannelBase.prototype.foreground=function(a,d,e){a.setFillColor("#000000");a.rect(10,e-15,5,15);a.fillAndStroke();a.rect(d-15,e-15,5,15);a.fillAndStroke()};function mxRackCabinetLeg(a,d,e,b){mxShape.call(this);this.bounds=a;this.fill=d;this.stroke=e;this.strokewidth=null!=b?b:1}mxUtils.extend(mxRackCabinetLeg,mxShape);
2863mxRackCabinetLeg.prototype.cst={SHAPE_RACK_CABINET_LEG:"mxgraph.rackGeneral.cabinetLeg"};mxRackCabinetLeg.prototype.paintVertexShape=function(a,d,e,b,c){b=Math.max(b,20);c=Math.max(c,20);a.translate(d,e);this.background(a,b,c)};
2864mxRackCabinetLeg.prototype.background=function(a,d,e){a.begin();a.moveTo(0,e-10);a.lineTo(5,e-10);a.lineTo(5,e-12);a.lineTo(9,e-12);a.lineTo(9,e-10);a.lineTo(d-10,e-10);a.lineTo(d-10,9);a.lineTo(d-12,9);a.lineTo(d-12,5);a.lineTo(d-10,5);a.lineTo(d-10,0);a.lineTo(d,0);a.lineTo(d,e);a.lineTo(0,e);a.close();a.fillAndStroke()};mxCellRenderer.registerShape(mxRackContainer.prototype.cst.SHAPE_RACK_CONTAINER,mxRackContainer);
2865mxCellRenderer.registerShape(mxRackHorCableDuct.prototype.cst.SHAPE_RACK_HOR_CABLE_DUCT,mxRackHorCableDuct);mxCellRenderer.registerShape(mxRackHorRoutingBank.prototype.cst.SHAPE_RACK_HOR_ROUTING_BANK,mxRackHorRoutingBank);mxCellRenderer.registerShape(mxRackNeatPatch.prototype.cst.SHAPE_RACK_NEAT_PATCH,mxRackNeatPatch);mxCellRenderer.registerShape(mxRackShelf.prototype.cst.SHAPE_RACK_SHELF,mxRackShelf);mxCellRenderer.registerShape(mxRackPlate.prototype.cst.SHAPE_RACK_PLATE,mxRackPlate);
2866mxCellRenderer.registerShape(mxRackRackNumbering.prototype.cst.SHAPE_RACK_RACK_NUMBERING,mxRackRackNumbering);mxCellRenderer.registerShape(mxRackRackCabinet.prototype.cst.SHAPE_RACK_RACK_CABINET,mxRackRackCabinet);mxCellRenderer.registerShape(mxRackHorCableDuct1U.prototype.cst.SHAPE_RACK_HOR_CABLE_DUCT_1U,mxRackHorCableDuct1U);mxCellRenderer.registerShape(mxRackHorCableDuct2U.prototype.cst.SHAPE_RACK_HOR_CABLE_DUCT_2U,mxRackHorCableDuct2U);
2867mxCellRenderer.registerShape(mxRackHorRoutingBank1U.prototype.cst.SHAPE_RACK_HOR_ROUTING_BANK_1U,mxRackHorRoutingBank1U);mxCellRenderer.registerShape(mxRackHorRoutingBank2U.prototype.cst.SHAPE_RACK_HOR_ROUTING_BANK_2U,mxRackHorRoutingBank2U);mxCellRenderer.registerShape(mxRackNeatPatch2U.prototype.cst.SHAPE_RACK_NEAT_PATCH_2U,mxRackNeatPatch2U);mxCellRenderer.registerShape(mxRackShelf1U.prototype.cst.SHAPE_RACK_SHELF_1U,mxRackShelf1U);
2868mxCellRenderer.registerShape(mxRackShelf2U.prototype.cst.SHAPE_RACK_SHELF_2U,mxRackShelf2U);mxCellRenderer.registerShape(mxRackShelf4U.prototype.cst.SHAPE_RACK_SHELF_4U,mxRackShelf4U);mxCellRenderer.registerShape(mxRackChannelBase.prototype.cst.SHAPE_RACK_CHANNEL_BASE,mxRackChannelBase);mxCellRenderer.registerShape(mxRackCabinetLeg.prototype.cst.SHAPE_RACK_CABINET_LEG,mxRackCabinetLeg);