(self.webpackChunk=self.webpackChunk||[]).push([[6804],{87169:function(fn,Bn,Ft){"use strict";Ft.d(Bn,{Z:function(){return Fe}});var pt=Ft(72308),Ht=Ft(59301),ve={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}},{tag:"path",attrs:{d:"M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z"}}]},name:"exclamation-circle",theme:"outlined"},Me=ve,Pe=Ft(7657),Ae=function(de,he){return Ht.createElement(Pe.Z,(0,pt.Z)({},de,{ref:he,icon:Me}))},ee=Ht.forwardRef(Ae),Fe=ee},12893:function(fn,Bn,Ft){"use strict";Ft.d(Bn,{Z:function(){return Fe}});var pt=Ft(72308),Ht=Ft(59301),ve={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z"}},{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}}]},name:"minus-circle",theme:"outlined"},Me=ve,Pe=Ft(7657),Ae=function(de,he){return Ht.createElement(Pe.Z,(0,pt.Z)({},de,{ref:he,icon:Me}))},ee=Ht.forwardRef(Ae),Fe=ee},32134:function(fn,Bn,Ft){"use strict";Ft.d(Bn,{Z:function(){return Fe}});var pt=Ft(72308),Ht=Ft(59301),ve={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z"}},{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}}]},name:"plus-circle",theme:"outlined"},Me=ve,Pe=Ft(7657),Ae=function(de,he){return Ht.createElement(Pe.Z,(0,pt.Z)({},de,{ref:he,icon:Me}))},ee=Ht.forwardRef(Ae),Fe=ee},37036:function(){"use strict"},88010:function(fn,Bn){"use strict";Bn.Z={lists:"lists___xhHyq",item:"item___pWJAA",children:"children___sDG61",diamond:"diamond___FwgzD",button:"button___WPN6r",mathWrap:"mathWrap___FmnMJ",mathFillWrap:"mathFillWrap___PmY3H"}},43809:function(fn,Bn){"use strict";Bn.Z={wrap:"wrap___ilWvf",deleteIcon:"deleteIcon___JBDG8",keywordTag:"keywordTag___iieCb",questionTitleEditorWrap:"questionTitleEditorWrap___MHB5s",choiceListWrap:"choiceListWrap___jB8b1",choiceWrap:"choiceWrap___QFkTc",choiceIndex:"choiceIndex___Mr2YO",judgementIndex:"judgementIndex___fUVWK",setAnswerBtn:"setAnswerBtn___Whox5",activeAnswer:"activeAnswer___fGU6Y",activeJudgementAnswer:"activeJudgementAnswer___wJv8P",actionWrapper:"actionWrapper___ERQ7k",addIcon:"addIcon___L9TE0",inputBorder:"inputBorder___Q5tRE",placeholder:"placeholder___p9sFY",blankInputNumberWrapper:"blankInputNumberWrapper___uEHb0",addBtn:"addBtn___WR5ZI",blankIndex:"blankIndex___x9Pny",baseInputWrapper:"baseInputWrapper___eVsG7",collapseWrapper:"collapseWrapper___ZTysU",panelHeader:"panelHeader___QSN9g",open:"open___B6FU9",close:"close___QX19r",hide:"hide___mn25n"}},7761:function(fn,Bn){"use strict";Bn.Z={flex_box_center:"flex_box_center___ycN2f",flex_space_between:"flex_space_between___LcS9e",flex_box_vertical_center:"flex_box_vertical_center___uwjPm",flex_box_center_end:"flex_box_center_end___Pc903",flex_box_column:"flex_box_column___AXEdv",bg:"bg___fm2Cw",title:"title___J3MCU",editIcon:"editIcon___i4Zll",titleLeft:"titleLeft___da61c",titleRight:"titleRight___EsdL6",formWrap:"formWrap___YTxC3",baseLineHeight:"baseLineHeight___TprCB",radioBtnWrapper:"radioBtnWrapper___Mt_XG",radiogroup:"radiogroup___EvkWh",easy:"easy___mSxtg",medium:"medium___NIaWN",hard:"hard___mddnD",baseFormItem:"baseFormItem___csbyb",cascaderPopup:"cascaderPopup___BttnF",selectdiv:"selectdiv___TAr4i",divitem:"divitem___iaXB2",bottmodiv:"bottmodiv___bmp6p",cancelBtn:"cancelBtn___Q4ZcL",confirmBtn:"confirmBtn___nRiCD",concat:"concat___jlPR1"}},84287:function(fn,Bn,Ft){"use strict";var pt=Ft(59301),Ht=Object.defineProperty,ve=Object.getOwnPropertySymbols,Me=Object.prototype.hasOwnProperty,Pe=Object.prototype.propertyIsEnumerable,Ae=(ye,de,he)=>de in ye?Ht(ye,de,{enumerable:!0,configurable:!0,writable:!0,value:he}):ye[de]=he,ee=(ye,de)=>{for(var he in de||(de={}))Me.call(de,he)&&Ae(ye,he,de[he]);if(ve)for(var he of ve(de))Pe.call(de,he)&&Ae(ye,he,de[he]);return ye};const Fe=ye=>React.createElement("svg",ee({className:"jiangxu_svg__icon",viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",width:32,height:32},ye),React.createElement("path",{d:"M365.714 73.143H1024v73.143H365.714zm0 292.571H1024v73.143H365.714zm0 292.572H1024v73.143H365.714zm0 292.571H1024V1024H365.714v-73.143z",fill:"#98BDF7"}),React.createElement("path",{d:"m248.686 803.182-65.829 75.922V658.286h-73.143v220.818l-65.828-75.995L0 851.383 146.286 1024 292.57 851.53z",fill:"#145DFF"}),React.createElement("path",{d:"M146.286 0 0 158.72l43.886 55.223 65.828-75.922v227.693h73.143V138.021l65.829 75.922 43.885-55.223z",fill:"#98BDF7"}));Bn.Z="data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMzIiIGhlaWdodD0iMzIiPjxwYXRoIGQ9Ik0zNjUuNzE0IDczLjE0M0gxMDI0djczLjE0M0gzNjUuNzE0em0wIDI5Mi41NzFIMTAyNHY3My4xNDNIMzY1LjcxNHptMCAyOTIuNTcySDEwMjR2NzMuMTQzSDM2NS43MTR6bTAgMjkyLjU3MUgxMDI0VjEwMjRIMzY1LjcxNHYtNzMuMTQzeiIgZmlsbD0iIzk4QkRGNyIvPjxwYXRoIGQ9Im0yNDguNjg2IDgwMy4xODItNjUuODI5IDc1LjkyMlY2NTguMjg2aC03My4xNDN2MjIwLjgxOGwtNjUuODI4LTc1Ljk5NUwwIDg1MS4zODMgMTQ2LjI4NiAxMDI0IDI5Mi41NyA4NTEuNTN6IiBmaWxsPSIjMTQ1REZGIi8+PHBhdGggZD0iTTE0Ni4yODYgMCAwIDE1OC43Mmw0My44ODYgNTUuMjIzIDY1LjgyOC03NS45MjJ2MjI3LjY5M2g3My4xNDNWMTM4LjAyMWw2NS44MjkgNzUuOTIyIDQzLjg4NS01NS4yMjN6IiBmaWxsPSIjOThCREY3Ii8+PC9zdmc+"},86087:function(fn,Bn,Ft){"use strict";var pt=Ft(59301),Ht=Object.defineProperty,ve=Object.getOwnPropertySymbols,Me=Object.prototype.hasOwnProperty,Pe=Object.prototype.propertyIsEnumerable,Ae=(ye,de,he)=>de in ye?Ht(ye,de,{enumerable:!0,configurable:!0,writable:!0,value:he}):ye[de]=he,ee=(ye,de)=>{for(var he in de||(de={}))Me.call(de,he)&&Ae(ye,he,de[he]);if(ve)for(var he of ve(de))Pe.call(de,he)&&Ae(ye,he,de[he]);return ye};const Fe=ye=>React.createElement("svg",ee({className:"shengxu_svg__icon",viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",width:32,height:32},ye),React.createElement("path",{d:"M365.714 73.143H1024v73.143H365.714zm0 292.571H1024v73.143H365.714zm0 292.572H1024v73.143H365.714zm0 292.571H1024V1024H365.714v-73.143zM248.686 803.182l-65.829 75.922V658.286h-73.143v220.818l-65.828-75.995L0 851.383 146.286 1024 292.57 851.53z",fill:"#98BDF7"}),React.createElement("path",{d:"M146.286 0 0 158.72l43.886 55.223 65.828-75.922v227.693h73.143V138.021l65.829 75.922 43.885-55.223z",fill:"#145DFF"}));Bn.Z="data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMzIiIGhlaWdodD0iMzIiPjxwYXRoIGQ9Ik0zNjUuNzE0IDczLjE0M0gxMDI0djczLjE0M0gzNjUuNzE0em0wIDI5Mi41NzFIMTAyNHY3My4xNDNIMzY1LjcxNHptMCAyOTIuNTcySDEwMjR2NzMuMTQzSDM2NS43MTR6bTAgMjkyLjU3MUgxMDI0VjEwMjRIMzY1LjcxNHYtNzMuMTQzek0yNDguNjg2IDgwMy4xODJsLTY1LjgyOSA3NS45MjJWNjU4LjI4NmgtNzMuMTQzdjIyMC44MThsLTY1LjgyOC03NS45OTVMMCA4NTEuMzgzIDE0Ni4yODYgMTAyNCAyOTIuNTcgODUxLjUzeiIgZmlsbD0iIzk4QkRGNyIvPjxwYXRoIGQ9Ik0xNDYuMjg2IDAgMCAxNTguNzJsNDMuODg2IDU1LjIyMyA2NS44MjgtNzUuOTIydjIyNy42OTNoNzMuMTQzVjEzOC4wMjFsNjUuODI5IDc1LjkyMiA0My44ODUtNTUuMjIzeiIgZmlsbD0iIzE0NURGRiIvPjwvc3ZnPg=="},74413:function(){"use strict";function fn(kt,nt,et,ht){et===void 0&&(et=0),ht===void 0&&(ht=1/0),this._name=kt,this._defaultValue=nt,this._minimum=et,this._maximum=ht}Object.defineProperty(fn.prototype,"name",{get:function(){return this._name},set:function(kt){if(typeof kt!="string"||kt==="")throw new Error("Shape name must be a valid string.");this._name=kt}}),Object.defineProperty(fn.prototype,"defaultValue",{get:function(){return this._defaultValue},set:function(kt){if(typeof kt!="number"||isNaN(kt))throw new Error("The default value must be a real number, not: "+kt);this._defaultValue=kt}}),Object.defineProperty(fn.prototype,"minimum",{get:function(){return this._minimum},set:function(kt){if(typeof kt!="number"||isNaN(kt))throw new Error("Minimum must be a real number, not: "+kt);this._minimum=kt}}),Object.defineProperty(fn.prototype,"maximum",{get:function(){return this._maximum},set:function(kt){if(typeof kt!="number"||isNaN(kt))throw new Error("Maximum must be a real number, not: "+kt);this._maximum=kt}}),go.Shape._FigureParameters={},go.Shape.getFigureParameter=function(kt,nt){var et=go.Shape._FigureParameters[kt];return et?et[nt]:null},go.Shape.setFigureParameter=function(kt,nt,et){if(!(et instanceof fn))throw new Error("Third argument to Shape.setFigureParameter is not FigureParameter: "+et);if(et.defaultValueet.maximum)throw new Error("defaultValue must be between minimum and maximum, not: "+et.defaultValue);var ht=go.Shape._FigureParameters[kt];ht||(ht=[],go.Shape._FigureParameters[kt]=ht),ht[nt]=et};var Bn=[];function Ft(kt,nt){var et=Bn.pop();return et===void 0?new go.Point(kt,nt):(et.x=kt,et.y=nt,et)}function pt(){var kt=Bn.pop();return kt===void 0?new go.Point:kt}function Ht(kt){Bn.push(kt)}function ve(kt,nt,et,ht,lt,gt,yt,Lt,Dt){Dt||(Dt=new go.Point);var zt=kt-et,Xt=lt-yt,re=NaN,le=NaN;if(zt===0)if(Xt===0)kt===et&&(re=kt,le=nt);else{var ae=(gt-Lt)/Xt,je=gt-ae*lt;re=kt,le=ae*re+je}else if(Xt===0){var ne=(nt-ht)/zt,Le=nt-ne*kt;re=lt,le=ne*re+Le}else{var ne=(nt-ht)/zt,ae=(gt-Lt)/Xt,Le=nt-ne*kt,je=gt-ae*lt;re=(je-Le)/(ne-ae),le=ne*re+Le}return Dt.x=re,Dt.y=le,Dt}function Me(kt,nt,et,ht,lt,gt,yt,Lt,Dt,zt,Xt,re,le,ae){var je=1-Dt,ne=Dt,Le=kt*je+et*ne,ue=nt*je+ht*ne,Ee=et*je+lt*ne,ge=ht*je+gt*ne,Ue=lt*je+yt*ne,nn=gt*je+Lt*ne,_e=Le*je+Ee*ne,qt=ue*je+ge*ne,Jt=Ee*je+Ue*ne,De=ge*je+nn*ne,sn=_e*je+Jt*ne,cn=qt*je+De*ne;zt.x=Le,zt.y=ue,Xt.x=_e,Xt.y=qt,re.x=sn,re.y=cn,le.x=Jt,le.y=De,ae.x=Ue,ae.y=nn}var Pe=new go.Spot(.156,.156),Ae=new go.Spot(.844,.844),ee=4*((Math.sqrt(2)-1)/3);go.Shape.setFigureParameter("RoundedRectangle",0,new fn("CornerRounding",5)),go.Shape.defineFigureGenerator("RoundedRectangle",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;(isNaN(ht)||ht<0)&&(ht=5),ht=Math.min(ht,nt/3),ht=Math.min(ht,et/3);var lt=ht*ee,gt=new go.Geometry().add(new go.PathFigure(ht,0,!0).add(new go.PathSegment(go.PathSegment.Line,nt-ht,0)).add(new go.PathSegment(go.PathSegment.Bezier,nt,ht,nt-lt,0,nt,lt)).add(new go.PathSegment(go.PathSegment.Line,nt,et-ht)).add(new go.PathSegment(go.PathSegment.Bezier,nt-ht,et,nt,et-lt,nt-lt,et)).add(new go.PathSegment(go.PathSegment.Line,ht,et)).add(new go.PathSegment(go.PathSegment.Bezier,0,et-ht,lt,et,0,et-lt)).add(new go.PathSegment(go.PathSegment.Line,0,ht)).add(new go.PathSegment(go.PathSegment.Bezier,ht,0,0,lt,lt,0).close()));return lt>1&&(gt.spot1=new go.Spot(0,0,lt,lt),gt.spot2=new go.Spot(1,1,-lt,-lt)),gt}),go.Shape.defineFigureGenerator("Border","RoundedRectangle"),go.Shape.defineFigureGenerator("TriangleRight",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)).add(new go.PathSegment(go.PathSegment.Line,0,et).close())).setSpots(0,.25,.5,.75)}),go.Shape.defineFigureGenerator("TriangleDown",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,.5*nt,et).close())).setSpots(.25,0,.75,.5)}),go.Shape.defineFigureGenerator("TriangleLeft",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(nt,et).add(new go.PathSegment(go.PathSegment.Line,0,.5*et)).add(new go.PathSegment(go.PathSegment.Line,nt,0).close())).setSpots(.5,.25,1,.75)}),go.Shape.defineFigureGenerator("TriangleUp",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(nt,et).add(new go.PathSegment(go.PathSegment.Line,0,et)).add(new go.PathSegment(go.PathSegment.Line,.5*nt,0).close())).setSpots(.25,.5,.75,1)}),go.Shape.defineFigureGenerator("Triangle","TriangleUp"),go.Shape.defineFigureGenerator("Diamond",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(.5*nt,0).add(new go.PathSegment(go.PathSegment.Line,0,.5*et)).add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)).add(new go.PathSegment(go.PathSegment.Line,nt,.5*et).close())).setSpots(.25,.25,.75,.75)}),go.Shape.defineFigureGenerator("LineH",function(kt,nt,et){var ht=new go.Geometry(go.Geometry.Line);return ht.startX=0,ht.startY=et/2,ht.endX=nt,ht.endY=et/2,ht}),go.Shape.defineFigureGenerator("LineV",function(kt,nt,et){var ht=new go.Geometry(go.Geometry.Line);return ht.startX=nt/2,ht.startY=0,ht.endX=nt/2,ht.endY=et,ht}),go.Shape.defineFigureGenerator("BarH","Rectangle"),go.Shape.defineFigureGenerator("BarV","Rectangle"),go.Shape.defineFigureGenerator("MinusLine","LineH"),go.Shape.defineFigureGenerator("PlusLine",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,et/2,!1).add(new go.PathSegment(go.PathSegment.Line,nt,et/2)).add(new go.PathSegment(go.PathSegment.Move,nt/2,0)).add(new go.PathSegment(go.PathSegment.Line,nt/2,et)))}),go.Shape.defineFigureGenerator("XLine",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,et,!1).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Move,0,0)).add(new go.PathSegment(go.PathSegment.Line,nt,et)))}),go.Shape.defineFigureGenerator("LineRight",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(.25*nt,0,!1).add(new go.PathSegment(go.PathSegment.Line,.75*nt,.5*et)).add(new go.PathSegment(go.PathSegment.Line,.25*nt,et)))}),go.Shape.defineFigureGenerator("LineDown",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,.25*et,!1).add(new go.PathSegment(go.PathSegment.Line,.5*nt,.75*et)).add(new go.PathSegment(go.PathSegment.Line,nt,.25*et)))}),go.Shape.defineFigureGenerator("LineLeft",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(.75*nt,0,!1).add(new go.PathSegment(go.PathSegment.Line,.25*nt,.5*et)).add(new go.PathSegment(go.PathSegment.Line,.75*nt,et)))}),go.Shape.defineFigureGenerator("LineUp",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,.75*et,!1).add(new go.PathSegment(go.PathSegment.Line,.5*nt,.25*et)).add(new go.PathSegment(go.PathSegment.Line,nt,.75*et)))}),go.Shape.defineFigureGenerator("AsteriskLine",function(kt,nt,et){var ht=.2/Math.SQRT2;return new go.Geometry().add(new go.PathFigure(ht*nt,(1-ht)*et,!1).add(new go.PathSegment(go.PathSegment.Line,(1-ht)*nt,ht*et)).add(new go.PathSegment(go.PathSegment.Move,ht*nt,ht*et)).add(new go.PathSegment(go.PathSegment.Line,(1-ht)*nt,(1-ht)*et)).add(new go.PathSegment(go.PathSegment.Move,0,et/2)).add(new go.PathSegment(go.PathSegment.Line,nt,et/2)).add(new go.PathSegment(go.PathSegment.Move,nt/2,0)).add(new go.PathSegment(go.PathSegment.Line,nt/2,et)))}),go.Shape.defineFigureGenerator("CircleLine",function(kt,nt,et){var ht=nt/2,lt=new go.Geometry().add(new go.PathFigure(nt,nt/2,!1).add(new go.PathSegment(go.PathSegment.Arc,0,360,ht,ht,ht,ht).close()));return lt.spot1=Pe,lt.spot2=Ae,lt.defaultStretch=go.GraphObject.Uniform,lt}),go.Shape.defineFigureGenerator("Line1",function(kt,nt,et){var ht=new go.Geometry(go.Geometry.Line);return ht.startX=0,ht.startY=0,ht.endX=nt,ht.endY=et,ht}),go.Shape.defineFigureGenerator("Line2",function(kt,nt,et){var ht=new go.Geometry(go.Geometry.Line);return ht.startX=nt,ht.startY=0,ht.endX=0,ht.endY=et,ht}),go.Shape.defineFigureGenerator("Curve1",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,nt,et,ee*nt,0,nt,(1-ee)*et)))}),go.Shape.defineFigureGenerator("Curve2",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,nt,et,0,ee*et,(1-ee)*nt,et)))}),go.Shape.defineFigureGenerator("Curve3",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(nt,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,0,et,nt,ee*et,ee*nt,et)))}),go.Shape.defineFigureGenerator("Curve4",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(nt,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,0,et,(1-ee)*nt,0,0,(1-ee)*et)))}),go.Shape.defineFigureGenerator("TriangleDownLeft",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Line,0,et).close())).setSpots(0,.5,.5,1)}),go.Shape.defineFigureGenerator("TriangleDownRight",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(nt,0,!0).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Line,0,et).close())).setSpots(.5,.5,1,1)}),go.Shape.defineFigureGenerator("TriangleUpLeft",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,0,et).close())).setSpots(0,0,.5,.5)}),go.Shape.defineFigureGenerator("TriangleUpRight",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,et).close())).setSpots(.5,0,1,.5)}),go.Shape.defineFigureGenerator("RightTriangle","TriangleDownLeft"),go.Shape.setFigureParameter("Parallelogram1",0,new fn("Indent",.1,-.99,.99)),go.Shape.defineFigureGenerator("Parallelogram1",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)?ht=.1:ht<-1?ht=-1:ht>1&&(ht=1);var lt=Math.abs(ht)*nt;if(ht===0){var gt=new go.Geometry(go.Geometry.Rectangle);return gt.startX=0,gt.startY=0,gt.endX=nt,gt.endY=et,gt}else{var gt=new go.Geometry;return ht>0?gt.add(new go.PathFigure(lt,0).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt-lt,et)).add(new go.PathSegment(go.PathSegment.Line,0,et).close())):gt.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,nt-lt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Line,lt,et).close())),ltnt&&(ht=nt);var lt=Math.abs(ht);if(ht===0){var gt=new go.Geometry(go.Geometry.Rectangle);return gt.startX=0,gt.startY=0,gt.endX=nt,gt.endY=et,gt}else{var gt=new go.Geometry;return ht>0?gt.add(new go.PathFigure(lt,0).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt-lt,et)).add(new go.PathSegment(go.PathSegment.Line,0,et).close())):gt.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,nt-lt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Line,lt,et).close())),lt.5&&(ht=.5);var lt=Math.abs(ht)*nt;if(ht===0){var gt=new go.Geometry(go.Geometry.Rectangle);return gt.startX=0,gt.startY=0,gt.endX=nt,gt.endY=et,gt}else{var gt=new go.Geometry;return ht>0?gt.add(new go.PathFigure(lt,0).add(new go.PathSegment(go.PathSegment.Line,nt-lt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Line,0,et).close())):gt.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt-lt,et)).add(new go.PathSegment(go.PathSegment.Line,lt,et).close())),ltnt&&(ht=nt/2);var lt=Math.abs(ht);if(ht===0){var gt=new go.Geometry(go.Geometry.Rectangle);return gt.startX=0,gt.startY=0,gt.endX=nt,gt.endY=et,gt}else{var gt=new go.Geometry;return ht>0?gt.add(new go.PathFigure(lt,0).add(new go.PathSegment(go.PathSegment.Line,nt-lt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Line,0,et).close())):gt.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt-lt,et)).add(new go.PathSegment(go.PathSegment.Line,lt,et).close())),ltnt&&(ht=nt/2);var lt=Math.abs(ht);if(ht===0){var gt=new go.Geometry(go.Geometry.Rectangle);return gt.startX=0,gt.startY=0,gt.endX=nt,gt.endY=et,gt}else{var gt=new go.Geometry;return ht>0?gt.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt-lt,et)).add(new go.PathSegment(go.PathSegment.Line,lt,et).close())):gt.add(new go.PathFigure(lt,0).add(new go.PathSegment(go.PathSegment.Line,nt-lt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Line,0,et).close())),lt0&&(yt.add(new go.PathSegment(go.PathSegment.Move,nt/2+Lt,nt/2)),yt.add(new go.PathSegment(go.PathSegment.Arc,0,-360,lt,lt,Lt,Lt).close())),gt.spot1=Pe,gt.spot2=Ae,gt.defaultStretch=go.GraphObject.Uniform,gt}),go.Shape.defineFigureGenerator("Cloud",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(.08034461*nt,.1944299*et,!0).add(new go.PathSegment(go.PathSegment.Bezier,.2008615*nt,.05349299*et,-.09239631*nt,.07836421*et,.1406031*nt,-.0542823*et)).add(new go.PathSegment(go.PathSegment.Bezier,.4338609*nt,.074219*et,.2450511*nt,-.00697547*et,.3776197*nt,-.01112067*et)).add(new go.PathSegment(go.PathSegment.Bezier,.6558228*nt,.07004196*et,.4539471*nt,0,.6066018*nt,-.02526587*et)).add(new go.PathSegment(go.PathSegment.Bezier,.8921095*nt,.08370865*et,.6914277*nt,-.01904177*et,.8921095*nt,-.01220843*et)).add(new go.PathSegment(go.PathSegment.Bezier,.9147671*nt,.3194596*et,1.036446*nt,.04105738*et,1.020377*nt,.3022052*et)).add(new go.PathSegment(go.PathSegment.Bezier,.9082935*nt,.562044*et,1.04448*nt,.360238*et,.992256*nt,.5219009*et)).add(new go.PathSegment(go.PathSegment.Bezier,.9212406*nt,.8217117*et,1.032337*nt,.5771781*et,1.018411*nt,.8120651*et)).add(new go.PathSegment(go.PathSegment.Bezier,.7592566*nt,.9156953*et,1.028411*nt,.9571472*et,.8556702*nt,1.052487*et)).add(new go.PathSegment(go.PathSegment.Bezier,.5101666*nt,.9310455*et,.7431877*nt,1.009325*et,.5624123*nt,1.021761*et)).add(new go.PathSegment(go.PathSegment.Bezier,.2609328*nt,.9344623*et,.4820677*nt,1.031761*et,.3030112*nt,1.002796*et)).add(new go.PathSegment(go.PathSegment.Bezier,.08034461*nt,.870098*et,.2329994*nt,1.01518*et,.03213784*nt,1.01518*et)).add(new go.PathSegment(go.PathSegment.Bezier,.06829292*nt,.6545475*et,-.02812061*nt,.9032597*et,-.01205169*nt,.6835638*et)).add(new go.PathSegment(go.PathSegment.Bezier,.06427569*nt,.4265613*et,-.01812061*nt,.6089503*et,-.00606892*nt,.4555777*et)).add(new go.PathSegment(go.PathSegment.Bezier,.08034461*nt,.1944299*et,-.01606892*nt,.3892545*et,-.01205169*nt,.1944299*et))).setSpots(.1,.1,.9,.9)}),go.Shape.defineFigureGenerator("StopSign",function(kt,nt,et){var ht=1/(Math.SQRT2+2);return new go.Geometry().add(new go.PathFigure(ht*nt,0,!0).add(new go.PathSegment(go.PathSegment.Line,(1-ht)*nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,ht*et)).add(new go.PathSegment(go.PathSegment.Line,nt,(1-ht)*et)).add(new go.PathSegment(go.PathSegment.Line,(1-ht)*nt,et)).add(new go.PathSegment(go.PathSegment.Line,ht*nt,et)).add(new go.PathSegment(go.PathSegment.Line,0,(1-ht)*et)).add(new go.PathSegment(go.PathSegment.Line,0,ht*et).close())).setSpots(ht/2,ht/2,1-ht/2,1-ht/2)}),go.Shape.setFigureParameter("Pie",0,new fn("Start",0,-360,360)),go.Shape.setFigureParameter("Pie",1,new fn("Sweep",315,-360,360)),go.Shape.defineFigureGenerator("Pie",function(kt,nt,et){var ht=kt?kt.parameter1:NaN,lt=kt?kt.parameter2:NaN;isNaN(ht)&&(ht=0),isNaN(lt)&&(lt=315);var gt=ht%360;gt<0&&(gt+=360);var yt=lt%360,Lt=Math.min(nt,et)/2;return new go.Geometry().add(new go.PathFigure(Lt,Lt).add(new go.PathSegment(go.PathSegment.Arc,gt,yt,Lt,Lt,Lt,Lt).close()))}),go.Shape.defineFigureGenerator("PiePiece",function(kt,nt,et){var ht=ee/Math.SQRT2*.5,lt=Math.SQRT2/2,gt=1-Math.SQRT2/2;return new go.Geometry().add(new go.PathFigure(nt,et,!0).add(new go.PathSegment(go.PathSegment.Bezier,lt*nt,gt*et,nt,(1-ht)*et,(lt+ht)*nt,(gt+ht)*et)).add(new go.PathSegment(go.PathSegment.Line,0,et).close()))}),go.Shape.setFigureParameter("ThickCross",0,new fn("Thickness",30)),go.Shape.defineFigureGenerator("ThickCross",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;(isNaN(ht)||ht<0)&&(ht=30);var lt=Math.min(ht,nt)/2,gt=nt/2,yt=et/2;return new go.Geometry().add(new go.PathFigure(gt-lt,0,!0).add(new go.PathSegment(go.PathSegment.Line,gt+lt,0)).add(new go.PathSegment(go.PathSegment.Line,gt+lt,yt-lt)).add(new go.PathSegment(go.PathSegment.Line,nt,yt-lt)).add(new go.PathSegment(go.PathSegment.Line,nt,yt+lt)).add(new go.PathSegment(go.PathSegment.Line,gt+lt,yt+lt)).add(new go.PathSegment(go.PathSegment.Line,gt+lt,et)).add(new go.PathSegment(go.PathSegment.Line,gt-lt,et)).add(new go.PathSegment(go.PathSegment.Line,gt-lt,yt+lt)).add(new go.PathSegment(go.PathSegment.Line,0,yt+lt)).add(new go.PathSegment(go.PathSegment.Line,0,yt-lt)).add(new go.PathSegment(go.PathSegment.Line,gt-lt,yt-lt).close()))}),go.Shape.setFigureParameter("ThinCross",0,new fn("Thickness",10)),go.Shape.defineFigureGenerator("ThinCross",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;(isNaN(ht)||ht<0)&&(ht=10);var lt=Math.min(ht,nt)/2,gt=nt/2,yt=et/2;return new go.Geometry().add(new go.PathFigure(gt-lt,0,!0).add(new go.PathSegment(go.PathSegment.Line,gt+lt,0)).add(new go.PathSegment(go.PathSegment.Line,gt+lt,yt-lt)).add(new go.PathSegment(go.PathSegment.Line,nt,yt-lt)).add(new go.PathSegment(go.PathSegment.Line,nt,yt+lt)).add(new go.PathSegment(go.PathSegment.Line,gt+lt,yt+lt)).add(new go.PathSegment(go.PathSegment.Line,gt+lt,et)).add(new go.PathSegment(go.PathSegment.Line,gt-lt,et)).add(new go.PathSegment(go.PathSegment.Line,gt-lt,yt+lt)).add(new go.PathSegment(go.PathSegment.Line,0,yt+lt)).add(new go.PathSegment(go.PathSegment.Line,0,yt-lt)).add(new go.PathSegment(go.PathSegment.Line,gt-lt,yt-lt).close()))}),go.Shape.setFigureParameter("ThickX",0,new fn("Thickness",30)),go.Shape.defineFigureGenerator("ThickX",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;if((isNaN(ht)||ht<0)&&(ht=30),nt===0||et===0){var lt=new go.Geometry(go.Geometry.Rectangle);return lt.startX=0,lt.startY=0,lt.endX=nt,lt.endY=et,lt}else{var gt=nt/2,yt=et/2,Lt=Math.atan2(et,nt),Dt=ht-Math.min(Math.cos(Lt)*ht/2,gt),zt=ht-Math.min(Math.sin(Lt)*ht/2,yt),lt=new go.Geometry,Xt=new go.PathFigure(Dt,0,!0);return lt.add(Xt),Xt.add(new go.PathSegment(go.PathSegment.Line,gt,.2*et)),Xt.add(new go.PathSegment(go.PathSegment.Line,nt-Dt,0)),Xt.add(new go.PathSegment(go.PathSegment.Line,nt,zt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,yt)),Xt.add(new go.PathSegment(go.PathSegment.Line,nt,et-zt)),Xt.add(new go.PathSegment(go.PathSegment.Line,nt-Dt,et)),Xt.add(new go.PathSegment(go.PathSegment.Line,gt,.8*et)),Xt.add(new go.PathSegment(go.PathSegment.Line,Dt,et)),Xt.add(new go.PathSegment(go.PathSegment.Line,0,et-zt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,yt)),Xt.add(new go.PathSegment(go.PathSegment.Line,0,zt).close()),lt}}),go.Shape.setFigureParameter("ThinX",0,new fn("Thickness",10)),go.Shape.defineFigureGenerator("ThinX",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;(isNaN(ht)||ht<0)&&(ht=10);var lt=new go.Geometry,gt=new go.PathFigure(.1*nt,0,!0);return lt.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.1*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.9*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.6*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,.9*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,.1*et).close()),lt}),go.Shape.setFigureParameter("SquareIBeam",0,new fn("BeamWidth",.2,.1,.9)),go.Shape.defineFigureGenerator("SquareIBeam",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=.2);var lt=new go.Geometry,gt=new go.PathFigure(0,0,!0);return lt.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,ht*et)),gt.add(new go.PathSegment(go.PathSegment.Line,(.5+ht/2)*nt,ht*et)),gt.add(new go.PathSegment(go.PathSegment.Line,(.5+ht/2)*nt,(1-ht)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,(1-ht)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,(1-ht)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,(.5-ht/2)*nt,(1-ht)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,(.5-ht/2)*nt,ht*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,ht*et).close()),lt}),go.Shape.setFigureParameter("RoundedIBeam",0,new fn("Curviness",.5,.05,.65)),go.Shape.defineFigureGenerator("RoundedIBeam",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=.5);var lt=new go.Geometry,gt=new go.PathFigure(0,0,!0);return lt.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Bezier,nt,et,Math.abs(1-ht)*nt,.25*et,Math.abs(1-ht)*nt,.75*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,0,0,ht*nt,.75*et,ht*nt,.25*et).close()),lt}),go.Shape.defineFigureGenerator("HalfEllipse",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Bezier,nt,.5*et,ee*nt,0,nt,(.5-ee/2)*et)).add(new go.PathSegment(go.PathSegment.Bezier,0,et,nt,(.5+ee/2)*et,ee*nt,et).close())).setSpots(0,.156,.844,.844)}),go.Shape.defineFigureGenerator("Crescent",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Bezier,0,et,nt,0,nt,et)).add(new go.PathSegment(go.PathSegment.Bezier,0,0,.5*nt,.75*et,.5*nt,.25*et).close())).setSpots(.311,.266,.744,.744)}),go.Shape.defineFigureGenerator("Heart",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(.5*nt,et,!0).add(new go.PathSegment(go.PathSegment.Bezier,0,.3*et,.1*nt,.8*et,0,.5*et)).add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.3*et,0,0,.45*nt,0)).add(new go.PathSegment(go.PathSegment.Bezier,nt,.3*et,.55*nt,0,nt,0)).add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,et,nt,.5*et,.9*nt,.8*et).close())).setSpots(.14,.29,.86,.78)}),go.Shape.defineFigureGenerator("Spade",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(.5*nt,0,!0).add(new go.PathSegment(go.PathSegment.Line,.51*nt,.01*et)).add(new go.PathSegment(go.PathSegment.Bezier,nt,.5*et,.6*nt,.2*et,nt,.25*et)).add(new go.PathSegment(go.PathSegment.Bezier,.55*nt,.7*et,nt,.8*et,.6*nt,.8*et)).add(new go.PathSegment(go.PathSegment.Bezier,.75*nt,et,.5*nt,.75*et,.55*nt,.95*et)).add(new go.PathSegment(go.PathSegment.Line,.25*nt,et)).add(new go.PathSegment(go.PathSegment.Bezier,.45*nt,.7*et,.45*nt,.95*et,.5*nt,.75*et)).add(new go.PathSegment(go.PathSegment.Bezier,0,.5*et,.4*nt,.8*et,0,.8*et)).add(new go.PathSegment(go.PathSegment.Bezier,.49*nt,.01*et,0,.25*et,.4*nt,.2*et).close())).setSpots(.14,.26,.86,.78)}),go.Shape.defineFigureGenerator("Club",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.4*nt,.6*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Bezier,.15*nt,et,.5*nt,.75*et,.45*nt,.95*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.85*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.6*nt,.6*et,.55*nt,.95*et,.5*nt,.75*et));var gt=.2,yt=.3,Lt=0,Dt=gt*ee;return lt.add(new go.PathSegment(go.PathSegment.Bezier,(.5+yt)*nt,(.5+gt+Lt)*et,(.5-gt+yt)*nt,(.5+Dt+Lt)*et,(.5-Dt+yt)*nt,(.5+gt+Lt)*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+gt+yt)*nt,(.5+Lt)*et,(.5+Dt+yt)*nt,(.5+gt+Lt)*et,(.5+gt+yt)*nt,(.5+Dt+Lt)*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,(.5+yt)*nt,(.5-gt+Lt)*et,(1-.5+gt+yt)*nt,(.5-Dt+Lt)*et,(.5+Dt+yt)*nt,(.5-gt+Lt)*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.65*nt,.36771243*et,(.5-Dt+yt)*nt,(.5-gt+Lt)*et,(.5-gt+yt+.05)*nt,(.5-Dt+Lt-.02)*et)),gt=.2,yt=0,Lt=-.3,Dt=gt*ee,lt.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+gt+yt)*nt,(.5+Lt)*et,(.5+Dt+yt)*nt,(.5+gt+Lt)*et,(.5+gt+yt)*nt,(.5+Dt+Lt)*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,(.5+yt)*nt,(.5-gt+Lt)*et,(1-.5+gt+yt)*nt,(.5-Dt+Lt)*et,(.5+Dt+yt)*nt,(.5-gt+Lt)*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,(.5-gt+yt)*nt,(.5+Lt)*et,(.5-Dt+yt)*nt,(.5-gt+Lt)*et,(.5-gt+yt)*nt,(.5-Dt+Lt)*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,(.5-Dt+yt)*nt,(.5+gt+Lt)*et,(.5-gt+yt)*nt,(.5+Dt+Lt)*et,(.5-Dt+yt)*nt,(.5+gt+Lt)*et)),gt=.2,yt=-.3,Lt=0,Dt=gt*ee,lt.add(new go.PathSegment(go.PathSegment.Bezier,(.5+yt)*nt,(.5-gt+Lt)*et,(1-.5+gt+yt-.05)*nt,(.5-Dt+Lt-.02)*et,(.5+Dt+yt)*nt,(.5-gt+Lt)*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,(.5-gt+yt)*nt,(.5+Lt)*et,(.5-Dt+yt)*nt,(.5-gt+Lt)*et,(.5-gt+yt)*nt,(.5-Dt+Lt)*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,(.5+yt)*nt,(.5+gt+Lt)*et,(.5-gt+yt)*nt,(.5+Dt+Lt)*et,(.5-Dt+yt)*nt,(.5+gt+Lt)*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.4*nt,.6*et,(.5+Dt+yt)*nt,(.5+gt+Lt)*et,(.5+gt+yt)*nt,(.5+Dt+Lt)*et).close()),ht.setSpots(.06,.33,.93,.68),ht}),go.Shape.defineFigureGenerator("YinYang",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*.5,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Arc,270,180,nt*.5,nt*.5,nt*.5,nt*.5)),lt.add(new go.PathSegment(go.PathSegment.Arc,90,-180,nt*.5,nt*.75,nt*.25,nt*.25)),lt.add(new go.PathSegment(go.PathSegment.Arc,90,180,nt*.5,nt*.25,nt*.25,nt*.25));var gt=.1,yt=.5,Lt=.25;return lt.add(new go.PathSegment(go.PathSegment.Move,(yt+gt)*nt,Lt*et)),lt.add(new go.PathSegment(go.PathSegment.Arc,0,-360,nt*yt,et*Lt,gt*nt,gt*nt).close()),lt=new go.PathFigure(nt*.5,0,!1),ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Arc,270,-180,nt*.5,nt*.5,nt*.5,nt*.5)),Lt=.75,lt=new go.PathFigure((yt+gt)*nt,Lt*et,!0),ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Arc,0,360,nt*yt,et*Lt,gt*nt,gt*nt).close()),ht.defaultStretch=go.GraphObject.Uniform,ht}),go.Shape.defineFigureGenerator("Peace",function(kt,nt,et){var ht=.8535533905932737,lt=.5*nt,gt=.5*et;return new go.Geometry().add(new go.PathFigure(lt,0,!1).add(new go.PathSegment(go.PathSegment.Arc,270,360,lt,gt,lt,gt)).add(new go.PathSegment(go.PathSegment.Line,lt,et)).add(new go.PathSegment(go.PathSegment.Move,lt,gt)).add(new go.PathSegment(go.PathSegment.Line,(1-ht)*nt,ht*et)).add(new go.PathSegment(go.PathSegment.Move,lt,gt)).add(new go.PathSegment(go.PathSegment.Line,ht*nt,ht*et)))}),go.Shape.defineFigureGenerator("NotAllowed",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.5,gt=.5,yt=.5,Lt=.5,Dt=new go.PathFigure(yt*nt,(Lt-gt)*et);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt-gt)*nt,Lt*et,(yt-lt)*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+gt)*et,(yt-gt)*nt,(Lt+lt)*et,(yt-lt)*nt,(Lt+gt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,Lt*et,(yt+lt)*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-gt)*et,(yt+gt)*nt,(Lt-lt)*et,(yt+lt)*nt,(Lt-gt)*et)),gt=.4,lt=ee*.4;var zt=pt(),Xt=pt(),re=pt(),le=pt();Me(yt,Lt-gt,yt+lt,Lt-gt,yt+gt,Lt-lt,yt+gt,Lt,.42,zt,Xt,re,le,le);var ae=pt(),je=pt(),ne=pt();Me(yt,Lt-gt,yt+lt,Lt-gt,yt+gt,Lt-lt,yt+gt,Lt,.58,le,le,ne,ae,je);var Le=pt(),ue=pt(),Ee=pt();Me(yt,Lt+gt,yt-lt,Lt+gt,yt-gt,Lt+lt,yt-gt,Lt,.42,Le,ue,Ee,le,le);var ge=pt(),Ue=pt(),nn=pt();return Me(yt,Lt+gt,yt-lt,Lt+gt,yt-gt,Lt+lt,yt-gt,Lt,.58,le,le,nn,ge,Ue),Dt.add(new go.PathSegment(go.PathSegment.Move,nn.x*nt,nn.y*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt-gt)*nt,Lt*et,ge.x*nt,ge.y*et,Ue.x*nt,Ue.y*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et,(yt-lt)*nt,(Lt-gt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,re.x*nt,re.y*et,zt.x*nt,zt.y*et,Xt.x*nt,Xt.y*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,nn.x*nt,nn.y*et).close()),Dt.add(new go.PathSegment(go.PathSegment.Move,Ee.x*nt,Ee.y*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,ne.x*nt,ne.y*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,Lt*et,ae.x*nt,ae.y*et,je.x*nt,je.y*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,Ee.x*nt,Ee.y*et,Le.x*nt,Le.y*et,ue.x*nt,ue.y*et).close()),Ht(zt),Ht(Xt),Ht(re),Ht(le),Ht(ae),Ht(je),Ht(ne),Ht(Le),Ht(ue),Ht(Ee),Ht(ge),Ht(Ue),Ht(nn),ht.defaultStretch=go.GraphObject.Uniform,ht}),go.Shape.defineFigureGenerator("Fragile",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,.25*nt,0)).add(new go.PathSegment(go.PathSegment.Line,.2*nt,.15*et)).add(new go.PathSegment(go.PathSegment.Line,.3*nt,.25*et)).add(new go.PathSegment(go.PathSegment.Line,.29*nt,.33*et)).add(new go.PathSegment(go.PathSegment.Line,.35*nt,.25*et)).add(new go.PathSegment(go.PathSegment.Line,.3*nt,.15*et)).add(new go.PathSegment(go.PathSegment.Line,.4*nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Bezier,.55*nt,.5*et,nt,.25*et,.75*nt,.5*et)).add(new go.PathSegment(go.PathSegment.Line,.55*nt,.9*et)).add(new go.PathSegment(go.PathSegment.Line,.7*nt,.9*et)).add(new go.PathSegment(go.PathSegment.Line,.7*nt,et)).add(new go.PathSegment(go.PathSegment.Line,.3*nt,et)).add(new go.PathSegment(go.PathSegment.Line,.3*nt,.9*et)).add(new go.PathSegment(go.PathSegment.Line,.45*nt,.9*et)).add(new go.PathSegment(go.PathSegment.Line,.45*nt,.5*et)).add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*nt,.5*et,0,.25*et).close()))}),go.Shape.setFigureParameter("HourGlass",0,new fn("Thickness",30)),go.Shape.defineFigureGenerator("HourGlass",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;(isNaN(ht)||ht<0)&&(ht=30),ht>nt&&(ht=nt);var lt=(nt-ht)/2,gt=lt+ht;return new go.Geometry().add(new go.PathFigure(gt,.5*et).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Line,0,et)).add(new go.PathSegment(go.PathSegment.Line,lt,.5*et)).add(new go.PathSegment(go.PathSegment.Line,0,0)).add(new go.PathSegment(go.PathSegment.Line,nt,0).close()))}),go.Shape.defineFigureGenerator("Lightning",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,.55*et).add(new go.PathSegment(go.PathSegment.Line,.6*nt,0)).add(new go.PathSegment(go.PathSegment.Line,.3*nt,.45*et)).add(new go.PathSegment(go.PathSegment.Line,nt,.45*et)).add(new go.PathSegment(go.PathSegment.Line,.4*nt,et)).add(new go.PathSegment(go.PathSegment.Line,.7*nt,.55*et).close()))}),go.Shape.defineFigureGenerator("GenderMale",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.4,gt=.4,yt=.5,Lt=.5,Dt=pt(),zt=pt(),Xt=pt(),re=pt(),le=new go.PathFigure((yt-gt)*nt,Lt*et,!1);ht.add(le),le.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et,(yt-lt)*nt,(Lt-gt)*et)),Me(yt,Lt-gt,yt+lt,Lt-gt,yt+gt,Lt-lt,yt+gt,Lt,.44,Xt,re,zt,Dt,Dt),le.add(new go.PathSegment(go.PathSegment.Bezier,zt.x*nt,zt.y*et,Xt.x*nt,Xt.y*et,re.x*nt,re.y*et));var ae=Ft(zt.x,zt.y);Me(yt,Lt-gt,yt+lt,Lt-gt,yt+gt,Lt-lt,yt+gt,Lt,.56,Dt,Dt,zt,Xt,re);var je=Ft(zt.x,zt.y);le.add(new go.PathSegment(go.PathSegment.Line,(ae.x*.1+.95*.9)*nt,ae.y*.1*et)),le.add(new go.PathSegment(go.PathSegment.Line,.85*nt,ae.y*.1*et)),le.add(new go.PathSegment(go.PathSegment.Line,.85*nt,0)),le.add(new go.PathSegment(go.PathSegment.Line,nt,0)),le.add(new go.PathSegment(go.PathSegment.Line,nt,.15*et)),le.add(new go.PathSegment(go.PathSegment.Line,(je.x*.1+.9)*nt,.15*et)),le.add(new go.PathSegment(go.PathSegment.Line,(je.x*.1+.9)*nt,(je.y*.1+.05*.9)*et)),le.add(new go.PathSegment(go.PathSegment.Line,je.x*nt,je.y*et)),le.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,Lt*et,Xt.x*nt,Xt.y*et,re.x*nt,re.y*et)),le.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et)),le.add(new go.PathSegment(go.PathSegment.Bezier,(yt-gt)*nt,Lt*et,(yt-lt)*nt,(Lt+gt)*et,(yt-gt)*nt,(Lt+lt)*et)),gt=.35,lt=ee*.35;var ne=new go.PathFigure(yt*nt,(Lt-gt)*et,!1);ht.add(ne),ne.add(new go.PathSegment(go.PathSegment.Bezier,(yt-gt)*nt,Lt*et,(yt-lt)*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et)),ne.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+gt)*et,(yt-gt)*nt,(Lt+lt)*et,(yt-lt)*nt,(Lt+gt)*et)),ne.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,Lt*et,(yt+lt)*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),ne.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-gt)*et,(yt+gt)*nt,(Lt-lt)*et,(yt+lt)*nt,(Lt-gt)*et));var Le=new go.PathFigure((yt-gt)*nt,Lt*et,!1);return ht.add(Le),Ht(Dt),Ht(zt),Ht(Xt),Ht(re),Ht(ae),Ht(je),ht.spot1=new go.Spot(.202,.257),ht.spot2=new go.Spot(.792,.739),ht.defaultStretch=go.GraphObject.Uniform,ht}),go.Shape.defineFigureGenerator("GenderFemale",function(kt,nt,et){var ht=new go.Geometry,lt=.375,gt=0,yt=-.125,Lt=lt*ee,Dt=new go.PathFigure((.525+gt)*nt,(.5+lt+yt)*et,!1);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+lt+gt)*nt,(.5+yt)*et,(.5+Lt+gt)*nt,(.5+lt+yt)*et,(.5+lt+gt)*nt,(.5+Lt+yt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(.5+gt)*nt,(.5-lt+yt)*et,(1-.5+lt+gt)*nt,(.5-Lt+yt)*et,(.5+Lt+gt)*nt,(.5-lt+yt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(.5-lt+gt)*nt,(.5+yt)*et,(.5-Lt+gt)*nt,(.5-lt+yt)*et,(.5-lt+gt)*nt,(.5-Lt+yt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(.475+gt)*nt,(.5+lt+yt)*et,(.5-lt+gt)*nt,(.5+Lt+yt)*et,(.5-Lt+gt)*nt,(.5+lt+yt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.475*nt,.85*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.425*nt,.85*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.425*nt,.9*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.475*nt,.9*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.475*nt,et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.525*nt,et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.525*nt,.9*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.575*nt,.9*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.575*nt,.85*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.525*nt,.85*et).close()),lt=.325,gt=0,yt=-.125,Lt=lt*ee;var Dt=new go.PathFigure((1-.5+lt+gt)*nt,(.5+yt)*et,!1);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(.5+gt)*nt,(.5+lt+yt)*et,(.5+lt+gt)*nt,(.5+Lt+yt)*et,(.5+Lt+gt)*nt,(.5+lt+yt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(.5-lt+gt)*nt,(.5+yt)*et,(.5-Lt+gt)*nt,(.5+lt+yt)*et,(.5-lt+gt)*nt,(.5+Lt+yt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(.5+gt)*nt,(.5-lt+yt)*et,(.5-lt+gt)*nt,(.5-Lt+yt)*et,(.5-Lt+gt)*nt,(.5-lt+yt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+lt+gt)*nt,(.5+yt)*et,(.5+Lt+gt)*nt,(.5-lt+yt)*et,(1-.5+lt+gt)*nt,(.5-Lt+yt)*et));var Dt=new go.PathFigure((.525+gt)*nt,(.5+lt+yt)*et,!1);return ht.add(Dt),ht.spot1=new go.Spot(.232,.136),ht.spot2=new go.Spot(.682,.611),ht.defaultStretch=go.GraphObject.Uniform,ht}),go.Shape.defineFigureGenerator("LogicImplies",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;return isNaN(ht)&&(ht=.2),new go.Geometry().add(new go.PathFigure((1-ht)*nt,0,!1).add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)).add(new go.PathSegment(go.PathSegment.Line,(1-ht)*nt,et)).add(new go.PathSegment(go.PathSegment.Move,0,.5*et)).add(new go.PathSegment(go.PathSegment.Line,nt,.5*et))).setSpots(0,0,.8,.5)}),go.Shape.defineFigureGenerator("LogicIff",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;return isNaN(ht)&&(ht=.2),new go.Geometry().add(new go.PathFigure((1-ht)*nt,0,!1).add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)).add(new go.PathSegment(go.PathSegment.Line,(1-ht)*nt,et)).add(new go.PathSegment(go.PathSegment.Move,0,.5*et)).add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)).add(new go.PathSegment(go.PathSegment.Move,ht*nt,0)).add(new go.PathSegment(go.PathSegment.Line,0,.5*et)).add(new go.PathSegment(go.PathSegment.Line,ht*nt,et))).setSpots(.2,0,.8,.5)}),go.Shape.defineFigureGenerator("LogicNot",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,et)))}),go.Shape.defineFigureGenerator("LogicAnd",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,et,!1).add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,et))).setSpots(.25,.5,.75,1)}),go.Shape.defineFigureGenerator("LogicOr",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)).add(new go.PathSegment(go.PathSegment.Line,nt,0))).setSpots(.219,0,.78,.409)}),go.Shape.defineFigureGenerator("LogicXor",function(kt,nt,et){var ht=new go.Geometry().add(new go.PathFigure(.5*nt,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)).add(new go.PathSegment(go.PathSegment.Move,0,.5*et)).add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)).add(new go.PathSegment(go.PathSegment.Arc,0,360,.5*nt,.5*et,.5*nt,.5*et)));return ht.defaultStretch=go.GraphObject.Uniform,ht}),go.Shape.defineFigureGenerator("LogicTruth",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Move,.5*nt,0)).add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)))}),go.Shape.defineFigureGenerator("LogicFalsity",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,et,!1).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Move,.5*nt,et)).add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)))}),go.Shape.defineFigureGenerator("LogicThereExists",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)).add(new go.PathSegment(go.PathSegment.Line,0,.5*et)).add(new go.PathSegment(go.PathSegment.Move,nt,.5*et)).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Line,0,et)))}),go.Shape.defineFigureGenerator("LogicForAll",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Move,.25*nt,.5*et)).add(new go.PathSegment(go.PathSegment.Line,.75*nt,.5*et))).setSpots(.25,0,.75,.5)}),go.Shape.defineFigureGenerator("LogicIsDefinedAs",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Move,0,.5*et)).add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)).add(new go.PathSegment(go.PathSegment.Move,0,et)).add(new go.PathSegment(go.PathSegment.Line,nt,et))).setSpots(.01,.01,.99,.49)}),go.Shape.defineFigureGenerator("LogicIntersect",function(kt,nt,et){var ht=.5;return new go.Geometry().add(new go.PathFigure(0,et,!1).add(new go.PathSegment(go.PathSegment.Line,0,ht*et)).add(new go.PathSegment(go.PathSegment.Arc,180,180,ht*nt,ht*et,ht*nt,ht*et)).add(new go.PathSegment(go.PathSegment.Line,nt,et))).setSpots(0,.5,1,1)}),go.Shape.defineFigureGenerator("LogicUnion",function(kt,nt,et){var ht=.5;return new go.Geometry().add(new go.PathFigure(nt,0,!1).add(new go.PathSegment(go.PathSegment.Line,nt,ht*et)).add(new go.PathSegment(go.PathSegment.Arc,0,180,ht*nt,ht*et,ht*nt,ht*et)).add(new go.PathSegment(go.PathSegment.Line,0,0))).setSpots(0,0,1,.5)}),go.Shape.setFigureParameter("Arrow",0,new fn("ArrowheadWidth",.3,.01,.99)),go.Shape.setFigureParameter("Arrow",1,new fn("TailHeight",.3,.01,.99)),go.Shape.defineFigureGenerator("Arrow",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=.3);var lt=kt?kt.parameter2:NaN;isNaN(lt)&&(lt=.3);var gt=(1-ht)*nt,yt=(.5-lt/2)*et,Lt=(.5+lt/2)*et,Dt=new go.Geometry,zt=new go.PathFigure(0,yt,!0);Dt.add(zt),zt.add(new go.PathSegment(go.PathSegment.Line,gt,yt)),zt.add(new go.PathSegment(go.PathSegment.Line,gt,0)),zt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),zt.add(new go.PathSegment(go.PathSegment.Line,gt,et)),zt.add(new go.PathSegment(go.PathSegment.Line,gt,Lt)),zt.add(new go.PathSegment(go.PathSegment.Line,0,Lt).close()),Dt.spot1=new go.Spot(0,yt/et);var Xt=ve(0,Lt/et,1,Lt/et,gt/nt,1,1,.5,pt());return Dt.spot2=new go.Spot(Xt.x,Xt.y),Ht(Xt),Dt}),go.Shape.setFigureParameter("Arrow2",0,new fn("ArrowheadWidth",30)),go.Shape.setFigureParameter("Arrow2",0,new fn("TailHeight",30)),go.Shape.defineFigureGenerator("Arrow2",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=30),ht>nt&&(ht=nt);var lt=kt?kt.parameter2:NaN;isNaN(lt)&&(lt=30),lt=Math.min(lt,et/2);var gt=nt-ht,yt=(et-lt)/2,Lt=yt+lt,Dt=new go.Geometry,zt=new go.PathFigure(0,yt,!0);Dt.add(zt),zt.add(new go.PathSegment(go.PathSegment.Line,gt,yt)),zt.add(new go.PathSegment(go.PathSegment.Line,gt,0)),zt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),zt.add(new go.PathSegment(go.PathSegment.Line,gt,et)),zt.add(new go.PathSegment(go.PathSegment.Line,gt,Lt)),zt.add(new go.PathSegment(go.PathSegment.Line,0,Lt).close()),Dt.spot1=new go.Spot(0,yt/et);var Xt=ve(0,Lt/et,1,Lt/et,gt/nt,1,1,.5,pt());return Dt.spot2=new go.Spot(Xt.x,Xt.y),Ht(Xt),Dt}),go.Shape.defineFigureGenerator("Chevron",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.5*et).close()),ht}),go.Shape.defineFigureGenerator("DoubleArrow",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,.214*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,1*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,1*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,.786*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,1*et).close()),ht}),go.Shape.setFigureParameter("DoubleEndArrow",0,new fn("ConnecterHeight",.3,.01,.99)),go.Shape.defineFigureGenerator("DoubleEndArrow",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=.3);var lt=(.5-ht/2)*et,gt=(.5+ht/2)*et,yt=new go.Geometry,Lt=new go.PathFigure(nt,.5*et,!0);yt.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,et)),Lt.add(new go.PathSegment(go.PathSegment.Line,0,.5*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,0)),Lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,lt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,lt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,0).close());var Dt=ve(0,.5,.3,0,0,lt/et,.1,lt/et,pt());return yt.spot1=new go.Spot(Dt.x,Dt.y),Dt=ve(.7,1,1,.5,0,gt/et,1,gt/et,Dt),yt.spot2=new go.Spot(Dt.x,Dt.y),Ht(Dt),yt}),go.Shape.setFigureParameter("DoubleEndArrow2",0,new fn("ConnecterHeight",40)),go.Shape.setFigureParameter("DoubleEndArrow2",1,new fn("ArrowHeight",100)),go.Shape.defineFigureGenerator("DoubleEndArrow2",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=40);var lt=kt?kt.parameter2:NaN;isNaN(lt)&&(lt=100);var gt=(et-ht)/2,yt=gt+ht,Lt=(et-lt)/2,Dt=Lt+lt;(ht>et||lt>et)&&(lt>ht?(ht=ht*et/lt,gt=(et-ht)/2,yt=gt+ht,Lt=0,Dt=et):(gt=0,yt=et,Lt=0,Dt=et));var zt=new go.Geometry,Xt=new go.PathFigure(nt,.5*et,!0);zt.add(Xt),Xt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,Dt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,yt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,yt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,Dt)),Xt.add(new go.PathSegment(go.PathSegment.Line,0,.5*et)),Xt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,Lt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,gt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,gt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,Lt).close());var re=ve(0,.5,.3,Lt/et,0,gt/et,1,gt/et,pt());return zt.spot1=new go.Spot(re.x,re.y),re=ve(.7,Dt/et,1,.5,0,yt/et,1,yt/et,re),zt.spot2=new go.Spot(re.x,re.y),Ht(re),zt}),go.Shape.setFigureParameter("IBeamArrow",0,new fn("ConnectorHeight",.7,.51,.97)),go.Shape.defineFigureGenerator("IBeamArrow",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=.3);var lt=(.5-ht/2)*et,gt=(.5+ht/2)*et,yt=new go.Geometry,Lt=new go.PathFigure(nt,.5*et,!0);yt.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,et)),Lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),Lt.add(new go.PathSegment(go.PathSegment.Line,0,0)),Lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,0)),Lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,lt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,lt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,0).close()),yt.spot1=new go.Spot(0,lt/et);var Dt=ve(.7,1,1,.5,0,gt/et,1,gt/et,pt());return yt.spot2=new go.Spot(Dt.x,Dt.y),Ht(Dt),yt}),go.Shape.setFigureParameter("IBeamArrow2",0,new fn("ConnectorHeight",40)),go.Shape.setFigureParameter("IBeamArrow2",1,new fn("BeamArrowHeight",100)),go.Shape.defineFigureGenerator("IBeamArrow2",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=40);var lt=kt?kt.parameter2:NaN;isNaN(lt)&&(lt=100);var gt=(et-ht)/2,yt=gt+ht,Lt=(et-lt)/2,Dt=Lt+lt;(ht>et||lt>et)&&(lt>ht?(ht=ht*et/lt,gt=(et-ht)/2,yt=gt+ht,Lt=0,Dt=et):(gt=0,yt=et,Lt=0,Dt=et));var zt=new go.Geometry,Xt=new go.PathFigure(nt,.5*et,!0);zt.add(Xt),Xt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,Dt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,yt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,yt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,Dt)),Xt.add(new go.PathSegment(go.PathSegment.Line,0,Dt)),Xt.add(new go.PathSegment(go.PathSegment.Line,0,Lt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,Lt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,gt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,gt)),Xt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,Lt).close()),zt.spot1=new go.Spot(0,gt/et);var re=ve(.7,Dt/et,1,.5,0,yt/et,1,yt/et,pt());return zt.spot2=new go.Spot(re.x,re.y),Ht(re),zt}),go.Shape.setFigureParameter("Pointer",0,new fn("BackPoint",.1,0,.2)),go.Shape.defineFigureGenerator("Pointer",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=.1);var lt=new go.Geometry,gt=new go.PathFigure(nt,.5*et,!0);lt.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,0,et)),gt.add(new go.PathSegment(go.PathSegment.Line,ht*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,0).close()),lt.spot1=new go.Spot(ht,.35);var yt=ve(.2,.65,1,.65,0,1,1,.5,pt());return lt.spot2=new go.Spot(yt.x,yt.y),Ht(yt),lt}),go.Shape.setFigureParameter("RoundedPointer",0,new fn("RoundedEdge",.3,0,.5)),go.Shape.defineFigureGenerator("RoundedPointer",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=.3);var lt=new go.Geometry,gt=new go.PathFigure(nt,.5*et,!0);lt.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,0,et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,0,0,ht*nt,.75*et,ht*nt,.25*et).close()),lt.spot1=new go.Spot(ht,.35);var yt=ve(0,.65,1,.65,0,1,1,.5,pt());return lt.spot2=new go.Spot(yt.x,yt.y),Ht(yt),lt}),go.Shape.setFigureParameter("SplitEndArrow",0,new fn("TailHeight",.4,.01,.99)),go.Shape.defineFigureGenerator("SplitEndArrow",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=.4);var lt=(.5-ht/2)*et,gt=(.5+ht/2)*et,yt=new go.Geometry,Lt=new go.PathFigure(nt,.5*et,!0);yt.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,0,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.5*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,0,lt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,lt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,0).close()),yt.spot1=new go.Spot(.2,.3);var Dt=ve(.7,1,1,.5,0,gt/et,1,gt/et,pt());return yt.spot2=new go.Spot(Dt.x,Dt.y),Ht(Dt),yt}),go.Shape.setFigureParameter("SplitEndArrow2",0,new fn("TailThickness",50)),go.Shape.defineFigureGenerator("SplitEndArrow2",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=50);var lt=(et-ht)/2,gt=lt+ht;ht>et&&(lt=0,gt=et);var yt=new go.Geometry,Lt=new go.PathFigure(nt,.5*et,!0);yt.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,0,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.5*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,0,lt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,lt)),Lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,0).close()),yt.spot1=new go.Spot(.2,lt/et);var Dt=ve(.7,1,1,.5,0,gt/et,1,gt/et,pt());return yt.spot2=new go.Spot(Dt.x,Dt.y),Ht(Dt),yt}),go.Shape.setFigureParameter("SquareArrow",0,new fn("ArrowPoint",.7,.2,.9)),go.Shape.defineFigureGenerator("SquareArrow",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=.7);var lt=new go.Geometry,gt=new go.PathFigure(nt,.5*et,!0);return lt.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,ht*nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,0)),gt.add(new go.PathSegment(go.PathSegment.Line,ht*nt,0).close()),lt.spot1=go.Spot.TopLeft,lt.spot2=new go.Spot(ht,1),lt}),go.Shape.defineFigureGenerator("Cone1",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.5,gt=ee*.1,yt=new go.PathFigure(0,.9*et,!0);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,.9*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,et,nt,(.9+gt)*et,(.5+lt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*et,(.5-lt)*nt,et,0,(.9+gt)*et).close()),ht.spot1=new go.Spot(.25,.5),ht.spot2=new go.Spot(.75,.97),ht}),go.Shape.defineFigureGenerator("Cone2",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.9*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.9*et,(1-.85/.9)*nt,et,.85/.9*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.9*et).close());var gt=new go.PathFigure(0,.9*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.9*et,(1-.85/.9)*nt,.8*et,.85/.9*nt,.8*et)),ht.spot1=new go.Spot(.25,.5),ht.spot2=new go.Spot(.75,.82),ht}),go.Shape.defineFigureGenerator("Cube1",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.5*nt,et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.85*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.15*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.15*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.85*et).close());var gt=new go.PathFigure(.5*nt,et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.3*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,.15*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,.3*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.15*et)),ht.spot1=new go.Spot(0,.3),ht.spot2=new go.Spot(.5,.85),ht}),go.Shape.defineFigureGenerator("Cube2",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.3*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,0).close());var gt=new go.PathFigure(0,.3*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,.3*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Move,.7*nt,.3*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,et)),ht.spot1=new go.Spot(0,.3),ht.spot2=new go.Spot(.7,1),ht}),go.Shape.defineFigureGenerator("Cylinder1",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=5),ht=Math.min(ht,et/3);var lt=new go.Geometry,gt=ee*.5,yt=new go.PathFigure(0,ht,!0);lt.add(yt),yt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,0,0,ee*ht,(.5-gt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Bezier,1*nt,ht,(.5+gt)*nt,0,1*nt,ee*ht)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,et-ht)),yt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,1*et,1*nt,et-ee*ht,(.5+gt)*nt,1*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,et-ht,(.5-gt)*nt,1*et,0,et-ee*ht)),yt.add(new go.PathSegment(go.PathSegment.Line,0,ht));var Lt=new go.PathFigure(nt,ht,!1);return lt.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,2*ht,1*nt,2*ht-ee*ht,(.5+gt)*nt,2*ht)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,0,ht,(.5-gt)*nt,2*ht,0,2*ht-ee*ht)),lt.spot1=new go.Spot(0,0,0,2*ht),lt.spot2=new go.Spot(1,1),lt}),go.Shape.defineFigureGenerator("Cylinder2",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=5),ht=Math.min(ht,et/3);var lt=new go.Geometry,gt=ee*.5,yt=new go.PathFigure(0,et-ht,!0);lt.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,0,ht)),yt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,0,0,ee*ht,(.5-gt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,ht,(.5+gt)*nt,0,nt,ee*ht)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,et-ht)),yt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,et,nt,et-ee*ht,(.5+gt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,et-ht,(.5-gt)*nt,et,0,et-ee*ht));var Lt=new go.PathFigure(0,et-ht,!1);return lt.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,et-2*ht,0,et-ht-ee*ht,(.5-gt)*nt,et-2*ht)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,nt,et-ht,(.5+gt)*nt,et-2*ht,nt,et-ht-ee*ht)),lt.spot1=new go.Spot(0,0),lt.spot2=new go.Spot(1,1,0,-2*ht),lt}),go.Shape.defineFigureGenerator("Cylinder3",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=5),ht=Math.min(ht,nt/3);var lt=new go.Geometry,gt=ee*.5,yt=new go.PathFigure(ht,0,!0);lt.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt-ht,0)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.5*et,nt-ee*ht,0,nt,(.5-gt)*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt-ht,et,nt,(.5+gt)*et,nt-ee*ht,et)),yt.add(new go.PathSegment(go.PathSegment.Line,ht,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*et,ee*ht,et,0,(.5+gt)*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,ht,0,0,(.5-gt)*et,ee*ht,0));var Lt=new go.PathFigure(ht,0,!1);return lt.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Bezier,2*ht,.5*et,ht+ee*ht,0,2*ht,(.5-gt)*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,ht,et,2*ht,(.5+gt)*et,ht+ee*ht,et)),lt.spot1=new go.Spot(0,0,2*ht,0),lt.spot2=new go.Spot(1,1),lt}),go.Shape.defineFigureGenerator("Cylinder4",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=5),ht=Math.min(ht,nt/3);var lt=new go.Geometry,gt=ee*.5,yt=new go.PathFigure(nt-ht,0,!0);lt.add(yt),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.5*et,nt-ee*ht,0,nt,(.5-gt)*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt-ht,et,nt,(.5+gt)*et,nt-ee*ht,et)),yt.add(new go.PathSegment(go.PathSegment.Line,ht,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*et,ee*ht,et,0,(.5+gt)*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,ht,0,0,(.5-gt)*et,ee*ht,0)),yt.add(new go.PathSegment(go.PathSegment.Line,nt-ht,0));var Lt=new go.PathFigure(nt-ht,0,!1);return lt.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Bezier,nt-2*ht,.5*et,nt-ht-ee*ht,0,nt-2*ht,(.5-gt)*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,nt-ht,et,nt-2*ht,(.5+gt)*et,nt-ht-ee*ht,et)),lt.spot1=new go.Spot(0,0),lt.spot2=new go.Spot(1,1,-2*ht,0),lt}),go.Shape.defineFigureGenerator("Prism1",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.25*nt,.25*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et).close());var gt=new go.PathFigure(.25*nt,.25*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),ht.spot1=new go.Spot(.408,.172),ht.spot2=new go.Spot(.833,.662),ht}),go.Shape.defineFigureGenerator("Prism2",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.25*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.25*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et).close());var gt=new go.PathFigure(0,et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.25*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.25*et)),gt.add(new go.PathSegment(go.PathSegment.Move,0,.25*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.25*nt,.5*et)),ht.spot1=new go.Spot(.25,.5),ht.spot2=new go.Spot(.75,.75),ht}),go.Shape.defineFigureGenerator("Pyramid1",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.5*nt,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.75*et).close());var gt=new go.PathFigure(.5*nt,0,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),ht.spot1=new go.Spot(.25,.367),ht.spot2=new go.Spot(.75,.875),ht}),go.Shape.defineFigureGenerator("Pyramid2",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.5*nt,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.85*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.85*et).close());var gt=new go.PathFigure(.5*nt,0,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.7*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,.85*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,.7*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.85*et)),ht.spot1=new go.Spot(.25,.367),ht.spot2=new go.Spot(.75,.875),ht}),go.Shape.defineFigureGenerator("Actor",function(kt,nt,et){var ht=new go.Geometry,lt=.2,gt=.1,yt=ee*lt,Lt=ee*gt,Dt=.5,zt=.1,Xt=new go.PathFigure(Dt*nt,(zt+gt)*et,!0);ht.add(Xt),Xt.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-lt)*nt,zt*et,(Dt-yt)*nt,(zt+gt)*et,(Dt-lt)*nt,(zt+Lt)*et)),Xt.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt-gt)*et,(Dt-lt)*nt,(zt-Lt)*et,(Dt-yt)*nt,(zt-gt)*et)),Xt.add(new go.PathSegment(go.PathSegment.Bezier,(Dt+lt)*nt,zt*et,(Dt+yt)*nt,(zt-gt)*et,(Dt+lt)*nt,(zt-Lt)*et)),Xt.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt+gt)*et,(Dt+lt)*nt,(zt+Lt)*et,(Dt+yt)*nt,(zt+gt)*et));var re=.05,le=ee*re;Dt=.05,zt=.25;var ae=new go.PathFigure(.5*nt,.2*et,!0);return ht.add(ae),ae.add(new go.PathSegment(go.PathSegment.Line,.95*nt,.2*et)),Dt=.95,zt=.25,ae.add(new go.PathSegment(go.PathSegment.Bezier,(Dt+re)*nt,zt*et,(Dt+le)*nt,(zt-re)*et,(Dt+re)*nt,(zt-le)*et)),ae.add(new go.PathSegment(go.PathSegment.Line,nt,.6*et)),ae.add(new go.PathSegment(go.PathSegment.Line,.85*nt,.6*et)),ae.add(new go.PathSegment(go.PathSegment.Line,.85*nt,.35*et)),re=.025,le=ee*re,Dt=.825,zt=.35,ae.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt-re)*et,(Dt+re)*nt,(zt-le)*et,(Dt+le)*nt,(zt-re)*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-re)*nt,zt*et,(Dt-le)*nt,(zt-re)*et,(Dt-re)*nt,(zt-le)*et)),ae.add(new go.PathSegment(go.PathSegment.Line,.8*nt,et)),ae.add(new go.PathSegment(go.PathSegment.Line,.55*nt,et)),ae.add(new go.PathSegment(go.PathSegment.Line,.55*nt,.7*et)),re=.05,le=ee*re,Dt=.5,zt=.7,ae.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt-re)*et,(Dt+re)*nt,(zt-le)*et,(Dt+le)*nt,(zt-re)*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-re)*nt,zt*et,(Dt-le)*nt,(zt-re)*et,(Dt-re)*nt,(zt-le)*et)),ae.add(new go.PathSegment(go.PathSegment.Line,.45*nt,et)),ae.add(new go.PathSegment(go.PathSegment.Line,.2*nt,et)),ae.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.35*et)),re=.025,le=ee*re,Dt=.175,zt=.35,ae.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt-re)*et,(Dt+re)*nt,(zt-le)*et,(Dt+le)*nt,(zt-re)*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-re)*nt,zt*et,(Dt-le)*nt,(zt-re)*et,(Dt-re)*nt,(zt-le)*et)),ae.add(new go.PathSegment(go.PathSegment.Line,.15*nt,.6*et)),ae.add(new go.PathSegment(go.PathSegment.Line,0,.6*et)),ae.add(new go.PathSegment(go.PathSegment.Line,0,.25*et)),re=.05,le=ee*re,Dt=.05,zt=.25,ae.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt-re)*et,(Dt-re)*nt,(zt-le)*et,(Dt-le)*nt,(zt-re)*et)),ae.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.2*et)),ht.spot1=new go.Spot(.2,.2),ht.spot2=new go.Spot(.8,.65),ht}),go.Shape.setFigureParameter("Card",0,new fn("CornerCutoutSize",.2,.1,.9)),go.Shape.defineFigureGenerator("Card",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;isNaN(ht)&&(ht=.2);var lt=new go.Geometry,gt=new go.PathFigure(nt,0,!0);return lt.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,ht*et)),gt.add(new go.PathSegment(go.PathSegment.Line,ht*nt,0).close()),lt.spot1=new go.Spot(0,ht),lt.spot2=go.Spot.BottomRight,lt}),go.Shape.defineFigureGenerator("Collate",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.5*nt,.5*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.5*et));var gt=new go.PathFigure(.5*nt,.5*et,!0);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et)),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.5*et)),ht.spot1=new go.Spot(.25,0),ht.spot2=new go.Spot(.75,.25),ht}),go.Shape.defineFigureGenerator("CreateRequest",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;isNaN(lt)&&(lt=.1);var gt=new go.PathFigure(0,0,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et).close());var yt=new go.PathFigure(0,lt*et,!1);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt,lt*et)),yt.add(new go.PathSegment(go.PathSegment.Move,0,(1-lt)*et)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,(1-lt)*et)),ht}),go.Shape.defineFigureGenerator("Database",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.5,gt=ee*.1,yt=new go.PathFigure(nt,.1*et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt,.9*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,et,nt,(.9+gt)*et,(.5+lt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*et,(.5-lt)*nt,et,0,(.9+gt)*et)),yt.add(new go.PathSegment(go.PathSegment.Line,0,.1*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,0,0,(.1-gt)*et,(.5-lt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.1*et,(.5+lt)*nt,0,nt,(.1-gt)*et));var Lt=new go.PathFigure(nt,.1*et,!1);return ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.2*et,nt,(.1+gt)*et,(.5+lt)*nt,.2*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.1*et,(.5-lt)*nt,.2*et,0,(.1+gt)*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,nt,.2*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.3*et,nt,(.2+gt)*et,(.5+lt)*nt,.3*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.2*et,(.5-lt)*nt,.3*et,0,(.2+gt)*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,nt,.3*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.4*et,nt,(.3+gt)*et,(.5+lt)*nt,.4*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.3*et,(.5-lt)*nt,.4*et,0,(.3+gt)*et)),ht.spot1=new go.Spot(0,.4),ht.spot2=new go.Spot(1,.9),ht}),go.Shape.defineFigureGenerator("DataStorage",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.75*nt,et,nt,0,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*nt,.9*et,.25*nt,.1*et).close()),ht.spot1=new go.Spot(.226,0),ht.spot2=new go.Spot(.81,1),ht}),go.Shape.defineFigureGenerator("DiskStorage",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.5,gt=ee*.1,yt=new go.PathFigure(nt,.1*et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt,.9*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,et,nt,(.9+gt)*et,(.5+lt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*et,(.5-lt)*nt,et,0,(.9+gt)*et)),yt.add(new go.PathSegment(go.PathSegment.Line,0,.1*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,0,0,(.1-gt)*et,(.5-lt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.1*et,(.5+lt)*nt,0,nt,(.1-gt)*et));var Lt=new go.PathFigure(nt,.1*et,!1);return ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.2*et,nt,(.1+gt)*et,(.5+lt)*nt,.2*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.1*et,(.5-lt)*nt,.2*et,0,(.1+gt)*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,nt,.2*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.3*et,nt,(.2+gt)*et,(.5+lt)*nt,.3*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.2*et,(.5-lt)*nt,.3*et,0,(.2+gt)*et)),ht.spot1=new go.Spot(0,.3),ht.spot2=new go.Spot(1,.9),ht}),go.Shape.defineFigureGenerator("Display",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.25*nt,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.75*nt,et,nt,0,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.25*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.5*et).close()),ht.spot1=new go.Spot(.25,0),ht.spot2=new go.Spot(.75,1),ht}),go.Shape.defineFigureGenerator("DividedEvent",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;isNaN(lt)?lt=.2:lt<.15&&(lt=.15);var gt=ee*.2,yt=new go.PathFigure(0,.2*et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Bezier,.2*nt,0,0,(.2-gt)*et,(.2-gt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.2*et,(.8+gt)*nt,0,nt,(.2-gt)*et)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,.8*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,.8*nt,et,nt,(.8+gt)*et,(.8+gt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,.8*et,(.2-gt)*nt,et,0,(.8+gt)*et)),yt.add(new go.PathSegment(go.PathSegment.Line,0,.2*et));var Lt=new go.PathFigure(0,lt*et,!1);return ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,nt,lt*et)),ht}),go.Shape.defineFigureGenerator("DividedProcess",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;(isNaN(lt)||lt<.1)&&(lt=.1);var gt=new go.PathFigure(0,0,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et).close());var yt=new go.PathFigure(0,lt*et,!1);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt,lt*et)),ht}),go.Shape.defineFigureGenerator("Document",function(kt,nt,et){var ht=new go.Geometry;et=et/.8;var lt=new go.PathFigure(0,.7*et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*et,.5*nt,.4*et,.5*nt,et).close()),ht.spot1=go.Spot.TopLeft,ht.spot2=new go.Spot(1,.6),ht}),go.Shape.defineFigureGenerator("ExternalOrganization",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;(isNaN(lt)||lt<.2)&&(lt=.2);var gt=new go.PathFigure(0,0,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et).close());var yt=new go.PathFigure(lt*nt,0,!1);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,0,lt*et)),yt.add(new go.PathSegment(go.PathSegment.Move,nt,lt*et)),yt.add(new go.PathSegment(go.PathSegment.Line,(1-lt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Move,0,(1-lt)*et)),yt.add(new go.PathSegment(go.PathSegment.Line,lt*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Move,(1-lt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,(1-lt)*et)),ht}),go.Shape.defineFigureGenerator("ExternalProcess",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.5*nt,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.5*et).close());var gt=new go.PathFigure(.1*nt,.4*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.6*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.9*nt,.6*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.6*nt,.1*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.1*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.4*nt,.9*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.9*et)),ht.spot1=new go.Spot(.25,.25),ht.spot2=new go.Spot(.75,.75),ht}),go.Shape.defineFigureGenerator("File",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.25*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et).close());var gt=new go.PathFigure(.75*nt,0,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,.25*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.25*et)),ht.spot1=new go.Spot(0,.25),ht.spot2=go.Spot.BottomRight,ht}),go.Shape.defineFigureGenerator("Interrupt",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt,.5*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et));var gt=new go.PathFigure(nt,.5*et,!1);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et));var yt=new go.PathFigure(nt,.5*et,!1);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),ht.spot1=new go.Spot(0,.25),ht.spot2=new go.Spot(.5,.75),ht}),go.Shape.defineFigureGenerator("InternalStorage",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN,gt=kt?kt.parameter2:NaN;isNaN(lt)&&(lt=.1),isNaN(gt)&&(gt=.1);var yt=new go.PathFigure(0,0,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,0,et).close());var Lt=new go.PathFigure(lt*nt,0,!1);return ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,lt*nt,et)),Lt.add(new go.PathSegment(go.PathSegment.Move,0,gt*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt,gt*et)),ht}),go.Shape.defineFigureGenerator("Junction",function(kt,nt,et){var ht=new go.Geometry,lt=1/Math.SQRT2,gt=(1-1/Math.SQRT2)/2,yt=ee*.5,Lt=.5,Dt=new go.PathFigure(nt,Lt*et,!0);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,Lt*nt,et,nt,(Lt+yt)*et,(Lt+yt)*nt,et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,0,Lt*et,(Lt-yt)*nt,et,0,(Lt+yt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,Lt*nt,0,0,(Lt-yt)*et,(Lt-yt)*nt,0)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,nt,Lt*et,(Lt+yt)*nt,0,nt,(Lt-yt)*et));var zt=new go.PathFigure((gt+lt)*nt,(gt+lt)*et,!1);return ht.add(zt),zt.add(new go.PathSegment(go.PathSegment.Line,gt*nt,gt*et)),zt.add(new go.PathSegment(go.PathSegment.Move,gt*nt,(gt+lt)*et)),zt.add(new go.PathSegment(go.PathSegment.Line,(gt+lt)*nt,gt*et)),ht}),go.Shape.defineFigureGenerator("LinedDocument",function(kt,nt,et){var ht=new go.Geometry;et=et/.8;var lt=new go.PathFigure(0,.7*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*et,.5*nt,.4*et,.5*nt,et).close());var gt=new go.PathFigure(.1*nt,0,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.75*et)),ht.spot1=new go.Spot(.1,0),ht.spot2=new go.Spot(1,.6),ht}),go.Shape.defineFigureGenerator("LoopLimit",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,.25*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.25*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.25*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et).close()),ht.spot1=new go.Spot(0,.25),ht.spot2=go.Spot.BottomRight,ht}),go.Shape.defineFigureGenerator("MagneticTape",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.5,gt=.5,yt=new go.PathFigure(.5*nt,et,!0);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,gt*et,(gt-lt)*nt,et,0,(gt+lt)*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,gt*nt,0,0,(gt-lt)*et,(gt-lt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,gt*et,(gt+lt)*nt,0,nt,(gt-lt)*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,(gt+.1)*nt,.9*et,nt,(gt+lt)*et,(gt+lt)*nt,.9*et)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,.9*et)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),ht.spot1=new go.Spot(.15,.15),ht.spot2=new go.Spot(.85,.8),ht}),go.Shape.defineFigureGenerator("ManualInput",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.25*et).close()),ht.spot1=new go.Spot(0,.25),ht.spot2=go.Spot.BottomRight,ht}),go.Shape.defineFigureGenerator("MessageFromUser",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;isNaN(lt)&&(lt=.7);var gt=new go.PathFigure(0,0,!0);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,lt*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et).close()),ht.spot1=go.Spot.TopLeft,ht}),go.Shape.defineFigureGenerator("MicroformProcessing",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;isNaN(lt)&&(lt=.25);var gt=new go.PathFigure(0,0,!0);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,lt*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,(1-lt)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et).close()),ht}),go.Shape.defineFigureGenerator("MicroformRecording",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,.25*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.15*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.85*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et).close()),ht.spot1=new go.Spot(0,.25),ht.spot2=new go.Spot(1,.75),ht}),go.Shape.defineFigureGenerator("MultiDocument",function(kt,nt,et){var ht=new go.Geometry;et=et/.8;var lt=new go.PathFigure(nt,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.9*nt,.44*et,.96*nt,.47*et,.93*nt,.45*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.8*nt,.54*et,.86*nt,.57*et,.83*nt,.55*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*et,.4*nt,.4*et,.4*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.1*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.1*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,0).close());var gt=new go.PathFigure(.1*nt,.2*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.2*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.54*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.1*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.1*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.44*et)),ht.spot1=new go.Spot(0,.25),ht.spot2=new go.Spot(.8,.77),ht}),go.Shape.defineFigureGenerator("MultiProcess",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.1*nt,.1*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.1*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.9*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.9*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.2*et).close());var gt=new go.PathFigure(.2*nt,.1*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.1*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.8*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.1*nt,.2*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.2*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.9*et)),ht.spot1=new go.Spot(0,.2),ht.spot2=new go.Spot(.8,1),ht}),go.Shape.defineFigureGenerator("OfflineStorage",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;isNaN(lt)&&(lt=.1);var gt=1-lt,yt=new go.PathFigure(0,0,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),yt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et).close());var Lt=new go.PathFigure(.5*lt*nt,lt*et,!1);return ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,(1-.5*lt)*nt,lt*et)),ht}),go.Shape.defineFigureGenerator("OffPageConnector",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et).close()),ht.spot1=go.Spot.TopLeft,ht.spot2=new go.Spot(.75,1),ht}),go.Shape.defineFigureGenerator("Or",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.5,gt=.5,yt=new go.PathFigure(nt,gt*et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Bezier,gt*nt,et,nt,(gt+lt)*et,(gt+lt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,gt*et,(gt-lt)*nt,et,0,(gt+lt)*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,gt*nt,0,0,(gt-lt)*et,(gt-lt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,gt*et,(gt+lt)*nt,0,nt,(gt-lt)*et));var Lt=new go.PathFigure(nt,.5*et,!1);return ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,0,.5*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),ht}),go.Shape.defineFigureGenerator("PaperTape",function(kt,nt,et){var ht=new go.Geometry;et=et/.8;var lt=new go.PathFigure(0,.7*et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,.3*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.3*et,.5*nt,.6*et,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*et,.5*nt,.4*et,.5*nt,et).close()),ht.spot1=new go.Spot(0,.49),ht.spot2=new go.Spot(1,.75),ht}),go.Shape.defineFigureGenerator("PrimitiveFromCall",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN,gt=kt?kt.parameter2:NaN;isNaN(lt)&&(lt=.1),isNaN(gt)&&(gt=.3);var yt=new go.PathFigure(0,0,!0);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),yt.add(new go.PathSegment(go.PathSegment.Line,(1-gt)*nt,.5*et)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,0,et).close()),ht}),go.Shape.defineFigureGenerator("PrimitiveToCall",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN,gt=kt?kt.parameter2:NaN;isNaN(lt)&&(lt=.1),isNaN(gt)&&(gt=.3);var yt=new go.PathFigure(0,0,!0);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,(1-gt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),yt.add(new go.PathSegment(go.PathSegment.Line,(1-gt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,0,et).close()),ht}),go.Shape.defineFigureGenerator("Procedure",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;isNaN(lt)&&(lt=.1);var gt=new go.PathFigure(0,0,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et).close());var yt=new go.PathFigure((1-lt)*nt,0,!1);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,(1-lt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Move,lt*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Line,lt*nt,et)),ht}),go.Shape.defineFigureGenerator("Process",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;isNaN(lt)&&(lt=.1);var gt=new go.PathFigure(0,0,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et).close());var yt=new go.PathFigure(lt*nt,0,!1);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,lt*nt,et)),ht.spot2=go.Spot.BottomRight,ht}),go.Shape.defineFigureGenerator("Sort",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.5*nt,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.5*et).close());var gt=new go.PathFigure(0,.5*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),ht.spot1=new go.Spot(.25,.25),ht.spot2=new go.Spot(.75,.5),ht}),go.Shape.defineFigureGenerator("Start",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;isNaN(lt)&&(lt=.25);var gt=new go.PathFigure(lt*nt,0,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Arc,270,180,.75*nt,.5*et,.25*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Arc,90,180,.25*nt,.5*et,.25*nt,.5*et));var yt=new go.PathFigure(lt*nt,0,!1);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,lt*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Move,(1-lt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Line,(1-lt)*nt,et)),ht.spot1=new go.Spot(lt,0),ht.spot2=new go.Spot(1-lt,1),ht}),go.Shape.defineFigureGenerator("Terminator",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.25*nt,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Arc,270,180,.75*nt,.5*et,.25*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Arc,90,180,.25*nt,.5*et,.25*nt,.5*et)),ht.spot1=new go.Spot(.23,0),ht.spot2=new go.Spot(.77,1),ht}),go.Shape.defineFigureGenerator("TransmittalTape",function(kt,nt,et){var ht=new go.Geometry,lt=kt?kt.parameter1:NaN;isNaN(lt)&&(lt=.1);var gt=new go.PathFigure(0,0,!0);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,(1-lt)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,(1-lt)*et).close()),ht.spot1=go.Spot.TopLeft,ht}),go.Shape.defineFigureGenerator("AndGate",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.5,gt=new go.PathFigure(0,0,!0);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),gt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.5*et,(.5+lt)*nt,0,nt,(.5-lt)*et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,et,nt,(.5+lt)*et,(.5+lt)*nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et).close()),ht.spot1=go.Spot.TopLeft,ht.spot2=new go.Spot(.55,1),ht}),go.Shape.defineFigureGenerator("Buffer",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et).close()),ht.spot1=new go.Spot(0,.25),ht.spot2=new go.Spot(.5,.75),ht}),go.Shape.defineFigureGenerator("Clock",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.5,gt=.5,yt=new go.PathFigure(nt,gt*et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Bezier,gt*nt,et,nt,(gt+lt)*et,(gt+lt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,gt*et,(gt-lt)*nt,et,0,(gt+lt)*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,gt*nt,0,0,(gt-lt)*et,(gt-lt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,gt*et,(gt+lt)*nt,0,nt,(gt-lt)*et));var Lt=new go.PathFigure(nt,gt*et,!1);ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,nt,gt*et));var Dt=new go.PathFigure(.8*nt,.75*et,!1);return ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.25*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.25*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.75*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.75*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.25*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.25*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.75*et)),ht}),go.Shape.defineFigureGenerator("Ground",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.5*nt,0,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.3*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.4*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,et)),ht}),go.Shape.defineFigureGenerator("Inverter",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.1,gt=.1,yt=.9,Lt=.5,Dt=new go.PathFigure(.8*nt,.5*et,!0);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Line,0,et)),Dt.add(new go.PathSegment(go.PathSegment.Line,0,0)),Dt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.5*et));var zt=new go.PathFigure((yt+gt)*nt,Lt*et,!0);return ht.add(zt),zt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,(yt-gt)*nt,Lt*et,(yt-lt)*nt,(Lt+gt)*et,(yt-gt)*nt,(Lt+lt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et,(yt-lt)*nt,(Lt-gt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,Lt*et,(yt+lt)*nt,(Lt-gt)*et,(yt+gt)*nt,(Lt-lt)*et)),ht.spot1=new go.Spot(0,.25),ht.spot2=new go.Spot(.4,.75),ht}),go.Shape.defineFigureGenerator("NandGate",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.5,gt=ee*.4,yt=ee*.1,Lt=.1,Dt=.9,zt=.5,Xt=new go.PathFigure(.8*nt,.5*et,!0);ht.add(Xt),Xt.add(new go.PathSegment(go.PathSegment.Bezier,.4*nt,et,.8*nt,(.5+gt)*et,(.4+lt)*nt,et)),Xt.add(new go.PathSegment(go.PathSegment.Line,0,et)),Xt.add(new go.PathSegment(go.PathSegment.Line,0,0)),Xt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,0)),Xt.add(new go.PathSegment(go.PathSegment.Bezier,.8*nt,.5*et,(.4+lt)*nt,0,.8*nt,(.5-gt)*et));var re=new go.PathFigure((Dt+Lt)*nt,zt*et,!0);return ht.add(re),re.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt+Lt)*et,(Dt+Lt)*nt,(zt+yt)*et,(Dt+yt)*nt,(zt+Lt)*et)),re.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-Lt)*nt,zt*et,(Dt-yt)*nt,(zt+Lt)*et,(Dt-Lt)*nt,(zt+yt)*et)),re.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt-Lt)*et,(Dt-Lt)*nt,(zt-yt)*et,(Dt-yt)*nt,(zt-Lt)*et)),re.add(new go.PathSegment(go.PathSegment.Bezier,(Dt+Lt)*nt,zt*et,(Dt+yt)*nt,(zt-Lt)*et,(Dt+Lt)*nt,(zt-yt)*et)),ht.spot1=new go.Spot(0,.05),ht.spot2=new go.Spot(.55,.95),ht}),go.Shape.defineFigureGenerator("NorGate",function(kt,nt,et){var ht=new go.Geometry,lt=.5,gt=ee*lt,yt=0,Lt=.5,Dt=new go.PathFigure(.8*nt,.5*et,!0);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,0,et,.7*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*nt,.75*et,.25*nt,.25*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,.8*nt,.5*et,(yt+gt)*nt,(Lt-lt)*et,.7*nt,(Lt-gt)*et)),lt=.1,gt=ee*.1,yt=.9,Lt=.5;var zt=new go.PathFigure((yt-lt)*nt,Lt*et,!0);return ht.add(zt),zt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-lt)*et,(yt-lt)*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+lt)*nt,Lt*et,(yt+gt)*nt,(Lt-lt)*et,(yt+lt)*nt,(Lt-gt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,(yt-lt)*nt,Lt*et,(yt-gt)*nt,(Lt+lt)*et,(yt-lt)*nt,(Lt+gt)*et)),ht.spot1=new go.Spot(.2,.25),ht.spot2=new go.Spot(.6,.75),ht}),go.Shape.defineFigureGenerator("OrGate",function(kt,nt,et){var ht=new go.Geometry,lt=.5,gt=ee*lt,yt=0,Lt=.5,Dt=new go.PathFigure(0,0,!0);return ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.5*et,(yt+gt+gt)*nt,(Lt-lt)*et,.8*nt,(Lt-gt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,0,et,.8*nt,(Lt+gt)*et,(yt+gt+gt)*nt,(Lt+lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*nt,.75*et,.25*nt,.25*et).close()),ht.spot1=new go.Spot(.2,.25),ht.spot2=new go.Spot(.75,.75),ht}),go.Shape.defineFigureGenerator("XnorGate",function(kt,nt,et){var ht=new go.Geometry,lt=.5,gt=ee*lt,yt=.2,Lt=.5,Dt=new go.PathFigure(.1*nt,0,!1);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,.1*nt,et,.35*nt,.25*et,.35*nt,.75*et));var zt=new go.PathFigure(.8*nt,.5*et,!0);ht.add(zt),zt.add(new go.PathSegment(go.PathSegment.Bezier,.2*nt,et,.7*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,.2*nt,0,.45*nt,.75*et,.45*nt,.25*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,.8*nt,.5*et,(yt+gt)*nt,(Lt-lt)*et,.7*nt,(Lt-gt)*et)),lt=.1,gt=ee*.1,yt=.9,Lt=.5;var Xt=new go.PathFigure((yt-lt)*nt,Lt*et,!0);return ht.add(Xt),Xt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-lt)*et,(yt-lt)*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et)),Xt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+lt)*nt,Lt*et,(yt+gt)*nt,(Lt-lt)*et,(yt+lt)*nt,(Lt-gt)*et)),Xt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),Xt.add(new go.PathSegment(go.PathSegment.Bezier,(yt-lt)*nt,Lt*et,(yt-gt)*nt,(Lt+lt)*et,(yt-lt)*nt,(Lt+gt)*et)),ht.spot1=new go.Spot(.4,.25),ht.spot2=new go.Spot(.65,.75),ht}),go.Shape.defineFigureGenerator("XorGate",function(kt,nt,et){var ht=new go.Geometry,lt=.5,gt=ee*lt,yt=.2,Lt=.5,Dt=new go.PathFigure(.1*nt,0,!1);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,.1*nt,et,.35*nt,.25*et,.35*nt,.75*et));var zt=new go.PathFigure(.2*nt,0,!0);return ht.add(zt),zt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.5*et,(yt+gt)*nt,(Lt-lt)*et,.9*nt,(Lt-gt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,.2*nt,et,.9*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,.2*nt,0,.45*nt,.75*et,.45*nt,.25*et).close()),ht.spot1=new go.Spot(.4,.25),ht.spot2=new go.Spot(.8,.75),ht}),go.Shape.defineFigureGenerator("Capacitor",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Move,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),ht}),go.Shape.defineFigureGenerator("Resistor",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.5*et,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,.5*et)),ht}),go.Shape.defineFigureGenerator("Inductor",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.1,gt=.1,yt=.1,Lt=.5,Dt=new go.PathFigure((yt-lt*.5)*nt,et,!1);return ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,0,(yt-lt)*nt,et,(yt-gt)*nt,0)),yt=.3,Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,et,(yt+gt)*nt,0,(yt+lt)*nt,et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,0,(yt-lt)*nt,et,(yt-gt)*nt,0)),yt=.5,Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,et,(yt+gt)*nt,0,(yt+lt)*nt,et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,0,(yt-lt)*nt,et,(yt-gt)*nt,0)),yt=.7,Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,et,(yt+gt)*nt,0,(yt+lt)*nt,et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,0,(yt-lt)*nt,et,(yt-gt)*nt,0)),yt=.9,Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+lt*.5)*nt,et,(yt+gt)*nt,0,(yt+lt)*nt,et)),ht}),go.Shape.defineFigureGenerator("ACvoltageSource",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.5,gt=.5,yt=.5,Lt=.5,Dt=new go.PathFigure((yt-gt)*nt,Lt*et,!1);return ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et,(yt-lt)*nt,(Lt-gt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,Lt*et,(yt+lt)*nt,(Lt-gt)*et,(yt+gt)*nt,(Lt-lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt-gt)*nt,Lt*et,(yt-lt)*nt,(Lt+gt)*et,(yt-gt)*nt,(Lt+lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Move,(yt-gt+.1)*nt,Lt*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt-.1)*nt,Lt*et,yt*nt,(Lt-gt)*et,yt*nt,(Lt+gt)*et)),ht}),go.Shape.defineFigureGenerator("DCvoltageSource",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.75*et,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,.25*et)),lt.add(new go.PathSegment(go.PathSegment.Move,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),ht}),go.Shape.defineFigureGenerator("Diode",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt,0,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),ht.spot1=new go.Spot(0,.25),ht.spot2=new go.Spot(.5,.75),ht}),go.Shape.defineFigureGenerator("Wifi",function(kt,nt,et){var ht=new go.Geometry,lt=nt,gt=et;nt=nt*.38,et=et*.6;var yt=ee*.8,Lt=.8,Dt=0,zt=.5,Xt=(lt-nt)/2,re=(gt-et)/2,le=new go.PathFigure(Dt*nt+Xt,(zt+Lt)*et+re,!0);ht.add(le),le.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-Lt)*nt+Xt,zt*et+re,(Dt-yt)*nt+Xt,(zt+Lt)*et+re,(Dt-Lt)*nt+Xt,(zt+yt)*et+re)),le.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt+Xt,(zt-Lt)*et+re,(Dt-Lt)*nt+Xt,(zt-yt)*et+re,(Dt-yt)*nt+Xt,(zt-Lt)*et+re)),le.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-Lt+yt*.5)*nt+Xt,zt*et+re,Dt*nt+Xt,(zt-Lt)*et+re,(Dt-Lt+yt*.5)*nt+Xt,(zt-yt)*et+re)),le.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt+Xt,(zt+Lt)*et+re,(Dt-Lt+yt*.5)*nt+Xt,(zt+yt)*et+re,Dt*nt+Xt,(zt+Lt)*et+re).close()),yt=ee*.4,Lt=.4,Dt=.2,zt=.5;var ae=new go.PathFigure(Dt*nt+Xt,(zt+Lt)*et+re,!0);ht.add(ae),ae.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-Lt)*nt+Xt,zt*et+re,(Dt-yt)*nt+Xt,(zt+Lt)*et+re,(Dt-Lt)*nt+Xt,(zt+yt)*et+re)),ae.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt+Xt,(zt-Lt)*et+re,(Dt-Lt)*nt+Xt,(zt-yt)*et+re,(Dt-yt)*nt+Xt,(zt-Lt)*et+re)),ae.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-Lt+yt*.5)*nt+Xt,zt*et+re,Dt*nt+Xt,(zt-Lt)*et+re,(Dt-Lt+yt*.5)*nt+Xt,(zt-yt)*et+re)),ae.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt+Xt,(zt+Lt)*et+re,(Dt-Lt+yt*.5)*nt+Xt,(zt+yt)*et+re,Dt*nt+Xt,(zt+Lt)*et+re).close()),yt=ee*.2,Lt=.2,Dt=.5,zt=.5;var je=new go.PathFigure((Dt-Lt)*nt+Xt,zt*et+re,!0);ht.add(je),je.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt+Xt,(zt-Lt)*et+re,(Dt-Lt)*nt+Xt,(zt-yt)*et+re,(Dt-yt)*nt+Xt,(zt-Lt)*et+re)),je.add(new go.PathSegment(go.PathSegment.Bezier,(Dt+Lt)*nt+Xt,zt*et+re,(Dt+yt)*nt+Xt,(zt-Lt)*et+re,(Dt+Lt)*nt+Xt,(zt-yt)*et+re)),je.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt+Xt,(zt+Lt)*et+re,(Dt+Lt)*nt+Xt,(zt+yt)*et+re,(Dt+yt)*nt+Xt,(zt+Lt)*et+re)),je.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-Lt)*nt+Xt,zt*et+re,(Dt-yt)*nt+Xt,(zt+Lt)*et+re,(Dt-Lt)*nt+Xt,(zt+yt)*et+re)),yt=ee*.4,Lt=.4,Dt=.8,zt=.5;var ne=new go.PathFigure(Dt*nt+Xt,(zt-Lt)*et+re,!0);ht.add(ne),ne.add(new go.PathSegment(go.PathSegment.Bezier,(Dt+Lt)*nt+Xt,zt*et+re,(Dt+yt)*nt+Xt,(zt-Lt)*et+re,(Dt+Lt)*nt+Xt,(zt-yt)*et+re)),ne.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt+Xt,(zt+Lt)*et+re,(Dt+Lt)*nt+Xt,(zt+yt)*et+re,(Dt+yt)*nt+Xt,(zt+Lt)*et+re)),ne.add(new go.PathSegment(go.PathSegment.Bezier,(Dt+Lt-yt*.5)*nt+Xt,zt*et+re,Dt*nt+Xt,(zt+Lt)*et+re,(Dt+Lt-yt*.5)*nt+Xt,(zt+yt)*et+re)),ne.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt+Xt,(zt-Lt)*et+re,(Dt+Lt-yt*.5)*nt+Xt,(zt-yt)*et+re,Dt*nt+Xt,(zt-Lt)*et+re).close()),yt=ee*.8,Lt=.8,Dt=1,zt=.5;var Le=new go.PathFigure(Dt*nt+Xt,(zt-Lt)*et+re,!0);return ht.add(Le),Le.add(new go.PathSegment(go.PathSegment.Bezier,(Dt+Lt)*nt+Xt,zt*et+re,(Dt+yt)*nt+Xt,(zt-Lt)*et+re,(Dt+Lt)*nt+Xt,(zt-yt)*et+re)),Le.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt+Xt,(zt+Lt)*et+re,(Dt+Lt)*nt+Xt,(zt+yt)*et+re,(Dt+yt)*nt+Xt,(zt+Lt)*et+re)),Le.add(new go.PathSegment(go.PathSegment.Bezier,(Dt+Lt-yt*.5)*nt+Xt,zt*et+re,Dt*nt+Xt,(zt+Lt)*et+re,(Dt+Lt-yt*.5)*nt+Xt,(zt+yt)*et+re)),Le.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt+Xt,(zt-Lt)*et+re,(Dt+Lt-yt*.5)*nt+Xt,(zt-yt)*et+re,Dt*nt+Xt,(zt-Lt)*et+re).close()),ht}),go.Shape.defineFigureGenerator("Email",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var gt=new go.PathFigure(0,0,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.6*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),gt.add(new go.PathSegment(go.PathSegment.Move,0,et)),gt.add(new go.PathSegment(go.PathSegment.Line,.45*nt,.54*et)),gt.add(new go.PathSegment(go.PathSegment.Move,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,.55*nt,.54*et)),ht}),go.Shape.defineFigureGenerator("Ethernet",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.35*nt,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.35*nt,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.35*nt,0).close());var gt=new go.PathFigure(.1*nt,et,!0,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.6*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.6*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,et).close());var yt=new go.PathFigure(.6*nt,et,!0,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.6*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.6*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,et).close());var Lt=new go.PathFigure(0,.5*et,!1);return ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,.5*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.4*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,.75*nt,.5*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,.6*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,.25*nt,.5*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.25*nt,.6*et)),ht}),go.Shape.defineFigureGenerator("Power",function(kt,nt,et){var ht=new go.Geometry,lt=ee*.4,gt=.4,yt=.5,Lt=.5,Dt=pt(),zt=pt(),Xt=pt(),re=pt();Me(yt,Lt-gt,yt+lt,Lt-gt,yt+gt,Lt-lt,yt+gt,Lt,.5,Dt,Dt,zt,Xt,re);var le=Ft(zt.x,zt.y),ae=new go.PathFigure(zt.x*nt,zt.y*et,!0);ht.add(ae),ae.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,Lt*et,Xt.x*nt,Xt.y*et,re.x*nt,re.y*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,(yt-gt)*nt,Lt*et,(yt-lt)*nt,(Lt+gt)*et,(yt-gt)*nt,(Lt+lt)*et)),Me(yt-gt,Lt,yt-gt,Lt-lt,yt-lt,Lt-gt,yt,Lt-gt,.5,Xt,re,zt,Dt,Dt),ae.add(new go.PathSegment(go.PathSegment.Bezier,zt.x*nt,zt.y*et,Xt.x*nt,Xt.y*et,re.x*nt,re.y*et)),lt=ee*.3,gt=.3,Me(yt-gt,Lt,yt-gt,Lt-lt,yt-lt,Lt-gt,yt,Lt-gt,.5,Xt,re,zt,Dt,Dt),ae.add(new go.PathSegment(go.PathSegment.Line,zt.x*nt,zt.y*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,(yt-gt)*nt,Lt*et,re.x*nt,re.y*et,Xt.x*nt,Xt.y*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+gt)*et,(yt-gt)*nt,(Lt+lt)*et,(yt-lt)*nt,(Lt+gt)*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,(yt+gt)*nt,Lt*et,(yt+lt)*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),Me(yt,Lt-gt,yt+lt,Lt-gt,yt+gt,Lt-lt,yt+gt,Lt,.5,Dt,Dt,zt,Xt,re),ae.add(new go.PathSegment(go.PathSegment.Bezier,zt.x*nt,zt.y*et,re.x*nt,re.y*et,Xt.x*nt,Xt.y*et).close());var ae=new go.PathFigure(.45*nt,0,!0);return ht.add(ae),ae.add(new go.PathSegment(go.PathSegment.Line,.45*nt,.5*et)),ae.add(new go.PathSegment(go.PathSegment.Line,.55*nt,.5*et)),ae.add(new go.PathSegment(go.PathSegment.Line,.55*nt,0).close()),Ht(Dt),Ht(zt),Ht(Xt),Ht(re),Ht(le),ht.spot1=new go.Spot(.25,.45),ht.spot2=new go.Spot(.75,.8),ht}),go.Shape.defineFigureGenerator("Fallout",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,et/2,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Arc,180,360,nt/2,et/2,nt/2,et/2));function gt(yt,Lt,Dt){yt.add(new go.PathSegment(go.PathSegment.Move,(.3+Lt)*nt,(.8+Dt)*et)),yt.add(new go.PathSegment(go.PathSegment.Line,(.5+Lt)*nt,(.5+Dt)*et)),yt.add(new go.PathSegment(go.PathSegment.Line,(.1+Lt)*nt,(.5+Dt)*et)),yt.add(new go.PathSegment(go.PathSegment.Line,(.3+Lt)*nt,(.8+Dt)*et).close())}return gt(lt,0,0),gt(lt,.4,0),gt(lt,.2,-.3),ht}),go.Shape.defineFigureGenerator("IrritationHazard",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.2*nt,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.3*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.2*et).close()),ht.spot1=new go.Spot(.3,.3),ht.spot2=new go.Spot(.7,.7),ht}),go.Shape.defineFigureGenerator("ElectricalHazard",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.37*nt,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.11*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.77*nt,.04*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.33*nt,.49*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.37*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.63*nt,.86*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.77*nt,.91*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.34*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.34*nt,.78*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.44*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,.56*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.68*et).close()),ht}),go.Shape.defineFigureGenerator("FireHazard",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.1*nt,et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Bezier,.29*nt,0,-.25*nt,.63*et,.45*nt,.44*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.51*nt,.42*et,.48*nt,.17*et,.54*nt,.35*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.59*nt,.18*et,.59*nt,.29*et,.58*nt,.28*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.75*nt,.6*et,.8*nt,.34*et,.88*nt,.43*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.88*nt,.31*et,.87*nt,.48*et,.88*nt,.43*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.9*nt,et,1.17*nt,.76*et,.82*nt,.8*et).close()),ht.spot1=new go.Spot(.07,.445),ht.spot2=new go.Spot(.884,.958),ht}),go.Shape.defineFigureGenerator("BpmnActivityLoop",function(kt,nt,et){var ht=new go.Geometry,lt=.5,gt=0,yt=0,Lt=lt*ee,Dt=.4*Math.SQRT2/2+.5,zt=.5-.5*Math.SQRT2/2,Xt=1,re=.5,le=.5,ae=0,je=new go.PathFigure(Dt*nt,(1-zt)*et,!1);return ht.add(je),je.add(new go.PathSegment(go.PathSegment.Bezier,Xt*nt,re*et,Xt*nt,.7*et,Xt*nt,re*et)),je.add(new go.PathSegment(go.PathSegment.Bezier,(le+gt)*nt,(ae+gt)*et,(.5+lt+gt)*nt,(.5-Lt+gt)*et,(.5+Lt+gt)*nt,(.5-lt+gt)*et)),je.add(new go.PathSegment(go.PathSegment.Bezier,(.5-lt+gt)*nt,(.5+yt)*et,(.5-Lt+gt)*nt,(.5-lt+yt)*et,(.5-lt+gt)*nt,(.5-Lt+yt)*et)),je.add(new go.PathSegment(go.PathSegment.Bezier,(.35+gt)*nt,.9*et,(.5-lt+gt)*nt,(.5+Lt+yt)*et,(.5-Lt+gt)*nt,.9*et)),je.add(new go.PathSegment(go.PathSegment.Move,(.25+gt)*nt,.8*et)),je.add(new go.PathSegment(go.PathSegment.Line,(.35+gt)*nt,.9*et)),je.add(new go.PathSegment(go.PathSegment.Line,(.2+gt)*nt,.95*et)),ht}),go.Shape.defineFigureGenerator("BpmnActivityParallel",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Move,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),ht}),go.Shape.defineFigureGenerator("BpmnActivitySequential",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Move,0,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Move,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),ht}),go.Shape.defineFigureGenerator("BpmnActivityAdHoc",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!1);ht.add(lt);var gt=new go.PathFigure(nt,et,!1);ht.add(gt);var yt=new go.PathFigure(0,.5*et,!1);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.5*et,.2*nt,.35*et,.3*nt,.35*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.5*et,.7*nt,.65*et,.8*nt,.65*et)),ht}),go.Shape.defineFigureGenerator("BpmnActivityCompensation",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.5*et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et).close()),ht}),go.Shape.defineFigureGenerator("BpmnTaskMessage",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.2*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.8*et).close());var lt=new go.PathFigure(0,.2*et,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.2*et)),ht}),go.Shape.defineFigureGenerator("BpmnTaskScript",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.7*nt,et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.3*nt,0,.6*nt,.5*et,0,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.7*nt,et,.4*nt,.5*et,nt,.5*et).close());var gt=new go.PathFigure(.45*nt,.73*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,.73*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.38*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.63*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.31*nt,.27*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.56*nt,.27*et)),ht}),go.Shape.defineFigureGenerator("BpmnTaskUser",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!1);ht.add(lt);var gt=new go.PathFigure(.335*nt,(1-.555)*et,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.335*nt,(1-.405)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*nt,(1-.405)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*nt,(1-.555)*et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.68*et,(1-.12)*nt,.46*et,(1-.02)*nt,.54*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,.68*et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,.335*nt,(1-.555)*et,.02*nt,.54*et,.12*nt,.46*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.365*nt,(1-.595)*et));var yt=.5-.285,Lt=.5,Dt=yt,zt=Math.PI/4,Xt=4*(1-Math.cos(zt))/(3*Math.sin(zt)),re=Xt*.5,le=yt,ae=yt,je=Xt*le,ne=Xt*ae;gt.add(new go.PathSegment(go.PathSegment.Bezier,(Lt-le)*nt,Dt*et,(Lt-(je+le)/2)*nt,(Dt+(ae+ne)/2)*et,(Lt-le)*nt,(Dt+ne)*et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,Lt*nt,(Dt-ae)*et,(Lt-le)*nt,(Dt-ne)*et,(Lt-je)*nt,(Dt-ae)*et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,(Lt+le)*nt,Dt*et,(Lt+je)*nt,(Dt-ae)*et,(Lt+le)*nt,(Dt-ne)*et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,(1-.365)*nt,(1-.595)*et,(Lt+le)*nt,(Dt+ne)*et,(Lt+(je+le)/2)*nt,(Dt+(ae+ne)/2)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,(1-.365)*nt,(1-.595)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*nt,(1-.555)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*nt,(1-.405)*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.335*nt,(1-.405)*et));var Le=new go.PathFigure(.2*nt,et,!1);ht.add(Le),Le.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.8*et));var ue=new go.PathFigure(.8*nt,et,!1);return ht.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.8*et)),ht}),go.Shape.defineFigureGenerator("BpmnEventConditional",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.1*nt,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,et).close());var gt=new go.PathFigure(.2*nt,.2*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.2*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.6*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.6*et)),gt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.8*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.8*et)),ht}),go.Shape.defineFigureGenerator("BpmnEventError",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.33*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.66*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.66*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.33*nt,.5*et).close()),ht}),go.Shape.defineFigureGenerator("BpmnEventEscalation",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!1);ht.add(lt);var gt=new go.PathFigure(nt,et,!1);ht.add(gt);var yt=new go.PathFigure(.1*nt,et,!0);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.5*et).close()),ht}),go.Shape.defineFigureGenerator("Caution",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.05*nt,et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Bezier,.1*nt,.8*et,0,et,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.45*nt,.1*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.55*nt,.1*et,.5*nt,0,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.95*nt,.9*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.9*nt,et,nt,et,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.05*nt,et));var gt=.05;return lt.add(new go.PathSegment(go.PathSegment.Move,(.5-gt)*nt,.875*et)),lt.add(new go.PathSegment(go.PathSegment.Arc,180,-360,.5*nt,.875*et,gt*nt,gt*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.325*et,.575*nt,.725*et,.625*nt,.375*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.75*et,.375*nt,.375*et,.425*nt,.725*et)),ht}),go.Shape.defineFigureGenerator("Recycle",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.45*nt,.95*et,!1);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.95*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.185*nt,.85*et,.17*nt,.95*et,.15*nt,.9*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.235*nt,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.3*nt,.625*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.35*nt,.65*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.275*nt,.45*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.05*nt,.45*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.05*nt,.575*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.1875*nt,.95*et,0,.675*et,0,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.45*nt,.95*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.45*nt,.775*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.22*nt,.775*et));var gt=new go.PathFigure(.475*nt,.2*et,!1);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.225*nt,.3*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.275*nt,.175*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.325*nt,.05*et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,.4*nt,.05*et,.35*nt,0,.375*nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,.575*nt,.375*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.525*nt,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,.475*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.85*nt,.315*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.32*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,.05*et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,.575*nt,0,.65*nt,.05*et,.625*nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,.38*nt,.0105*et));var yt=new go.PathFigure(.675*nt,.575*et,!1);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,.875*nt,.525*et)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,.775*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,.85*nt,.95*et,nt,.8*et,nt,.85*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,.95*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,.55*nt,.85*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,.725*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,.775*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,.775*et)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,.775*et)),yt.add(new go.PathSegment(go.PathSegment.Move,.675*nt,.575*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.775*nt,.775*et)),ht}),go.Shape.defineFigureGenerator("BpmnEventTimer",function(kt,nt,et){var ht=new go.Geometry,lt=.5,gt=ee*.5,yt=new go.PathFigure(nt,lt*et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Bezier,lt*nt,et,nt,(lt+gt)*et,(lt+gt)*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,lt*et,(lt-gt)*nt,et,0,(lt+gt)*et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,lt*nt,0,0,(lt-gt)*et,(lt-gt)*nt,0)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt,lt*et,(lt+gt)*nt,0,nt,(lt-gt)*et));var Lt=new go.PathFigure(lt*nt,0,!1);return ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,lt*nt,.15*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,lt*nt,et)),Lt.add(new go.PathSegment(go.PathSegment.Line,lt*nt,.85*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,0,lt*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.15*nt,lt*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,nt,lt*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.85*nt,lt*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,lt*nt,lt*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.58*nt,.1*et)),Lt.add(new go.PathSegment(go.PathSegment.Move,lt*nt,lt*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.78*nt,.54*et)),ht}),go.Shape.defineFigureGenerator("Package",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.15*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.15*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et).close());var gt=new go.PathFigure(0,.15*et,!0);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,0,0)),gt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,.15*et).close()),ht.spot1=new go.Spot(0,.1),ht.spot2=new go.Spot(1,1),ht}),go.Shape.defineFigureGenerator("Class",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var gt=new go.PathFigure(0,.2*et,!1);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.2*et).close());var yt=new go.PathFigure(0,.5*et,!1);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et).close()),ht}),go.Shape.defineFigureGenerator("Component",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt,et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.15*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.15*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et).close());var gt=new go.PathFigure(0,.2*et,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.45*nt,.2*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.45*nt,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,.2*et).close());var yt=new go.PathFigure(0,.6*et,!0);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,.45*nt,.6*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.45*nt,.8*et)),yt.add(new go.PathSegment(go.PathSegment.Line,0,.8*et)),yt.add(new go.PathSegment(go.PathSegment.Line,0,.6*et).close()),ht}),go.Shape.defineFigureGenerator("Boat Shipment",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.15*nt,.6*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.15*nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.15*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.85*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.85*nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.15*nt,.6*et));var gt=new go.PathFigure(.15*nt,.6*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.85*nt,.6*et)),ht}),go.Shape.defineFigureGenerator("Customer/Supplier",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt,et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.66*nt,.33*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.66*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.33*nt,.33*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.33*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.33*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et).close()),ht}),go.Shape.defineFigureGenerator("Workcell",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.65*nt,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.35*nt,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.35*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et).close()),ht}),go.Shape.defineFigureGenerator("Supermarket",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.33*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.33*et)),lt.add(new go.PathSegment(go.PathSegment.Move,nt,.33*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.66*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.66*et)),lt.add(new go.PathSegment(go.PathSegment.Move,nt,.66*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),ht}),go.Shape.defineFigureGenerator("TruckShipment",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var gt=new go.PathFigure(nt,.8*et,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.8*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.8*et).close());var yt=.1,Lt=ee*.1,Dt=.2,zt=.9,Xt=new go.PathFigure((Dt-yt)*nt,zt*et,!0);ht.add(Xt),Xt.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt-yt)*et,(Dt-yt)*nt,(zt-Lt)*et,(Dt-Lt)*nt,(zt-yt)*et)),Xt.add(new go.PathSegment(go.PathSegment.Bezier,(Dt+yt)*nt,zt*et,(Dt+Lt)*nt,(zt-yt)*et,(Dt+yt)*nt,(zt-Lt)*et)),Xt.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt+yt)*et,(Dt+yt)*nt,(zt+Lt)*et,(Dt+Lt)*nt,(zt+yt)*et)),Xt.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-yt)*nt,zt*et,(Dt-Lt)*nt,(zt+yt)*et,(Dt-yt)*nt,(zt+Lt)*et).close()),yt=.1,Lt=ee*.1,Dt=.8,zt=.9;var re=new go.PathFigure((Dt-yt)*nt,zt*et,!0);return ht.add(re),re.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt-yt)*et,(Dt-yt)*nt,(zt-Lt)*et,(Dt-Lt)*nt,(zt-yt)*et)),re.add(new go.PathSegment(go.PathSegment.Bezier,(Dt+yt)*nt,zt*et,(Dt+Lt)*nt,(zt-yt)*et,(Dt+yt)*nt,(zt-Lt)*et)),re.add(new go.PathSegment(go.PathSegment.Bezier,Dt*nt,(zt+yt)*et,(Dt+yt)*nt,(zt+Lt)*et,(Dt+Lt)*nt,(zt+yt)*et)),re.add(new go.PathSegment(go.PathSegment.Bezier,(Dt-yt)*nt,zt*et,(Dt-Lt)*nt,(zt+yt)*et,(Dt-yt)*nt,(zt+Lt)*et).close()),ht}),go.Shape.defineFigureGenerator("KanbanPost",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.2*nt,0,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,et)),ht}),go.Shape.defineFigureGenerator("Forklift",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,0,0));var gt=new go.PathFigure(0,.5*et,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,0,.8*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.8*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Line,0,.5*et));var yt=new go.PathFigure(.5*nt,.8*et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.1*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.55*nt,.1*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.55*nt,.8*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.8*et));var Lt=new go.PathFigure(.5*nt,.7*et,!1);ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,nt,.7*et));var Dt=.1,zt=ee*.1,Xt=.1,re=.9,le=new go.PathFigure((Xt-Dt)*nt,re*et,!0);ht.add(le),le.add(new go.PathSegment(go.PathSegment.Bezier,Xt*nt,(re-Dt)*et,(Xt-Dt)*nt,(re-zt)*et,(Xt-zt)*nt,(re-Dt)*et)),le.add(new go.PathSegment(go.PathSegment.Bezier,(Xt+Dt)*nt,re*et,(Xt+zt)*nt,(re-Dt)*et,(Xt+Dt)*nt,(re-zt)*et)),le.add(new go.PathSegment(go.PathSegment.Bezier,Xt*nt,(re+Dt)*et,(Xt+Dt)*nt,(re+zt)*et,(Xt+zt)*nt,(re+Dt)*et)),le.add(new go.PathSegment(go.PathSegment.Bezier,(Xt-Dt)*nt,re*et,(Xt-zt)*nt,(re+Dt)*et,(Xt-Dt)*nt,(re+zt)*et)),Dt=.1,zt=ee*.1,Xt=.4,re=.9;var ae=new go.PathFigure((Xt-Dt)*nt,re*et,!0);return ht.add(ae),ae.add(new go.PathSegment(go.PathSegment.Bezier,Xt*nt,(re-Dt)*et,(Xt-Dt)*nt,(re-zt)*et,(Xt-zt)*nt,(re-Dt)*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,(Xt+Dt)*nt,re*et,(Xt+zt)*nt,(re-Dt)*et,(Xt+Dt)*nt,(re-zt)*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,Xt*nt,(re+Dt)*et,(Xt+Dt)*nt,(re+zt)*et,(Xt+zt)*nt,(re+Dt)*et)),ae.add(new go.PathSegment(go.PathSegment.Bezier,(Xt-Dt)*nt,re*et,(Xt-zt)*nt,(re+Dt)*et,(Xt-Dt)*nt,(re+zt)*et)),ht}),go.Shape.defineFigureGenerator("RailShipment",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.1*nt,.4*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.45*nt,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.45*nt,.9*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.9*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.4*et).close());var gt=new go.PathFigure(.45*nt,.7*et,!1);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.55*nt,.7*et));var yt=new go.PathFigure(.55*nt,.4*et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.4*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.9*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.55*nt,.9*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.55*nt,.4*et).close());var Xt=.05,re=ee*.05,le=.175,ae=.95,Lt=new go.PathFigure((le-Xt)*nt,ae*et,!0);ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Bezier,le*nt,(ae-Xt)*et,(le-Xt)*nt,(ae-re)*et,(le-re)*nt,(ae-Xt)*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,(le+Xt)*nt,ae*et,(le+re)*nt,(ae-Xt)*et,(le+Xt)*nt,(ae-re)*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,le*nt,(ae+Xt)*et,(le+Xt)*nt,(ae+re)*et,(le+re)*nt,(ae+Xt)*et)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,(le-Xt)*nt,ae*et,(le-re)*nt,(ae+Xt)*et,(le-Xt)*nt,(ae+re)*et));var Xt=.05,re=ee*.05,le=.375,ae=.95,Dt=new go.PathFigure((le-Xt)*nt,ae*et,!0);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,le*nt,(ae-Xt)*et,(le-Xt)*nt,(ae-re)*et,(le-re)*nt,(ae-Xt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(le+Xt)*nt,ae*et,(le+re)*nt,(ae-Xt)*et,(le+Xt)*nt,(ae-re)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,le*nt,(ae+Xt)*et,(le+Xt)*nt,(ae+re)*et,(le+re)*nt,(ae+Xt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(le-Xt)*nt,ae*et,(le-re)*nt,(ae+Xt)*et,(le-Xt)*nt,(ae+re)*et));var Xt=.05,re=ee*.05,le=.625,ae=.95,zt=new go.PathFigure((le-Xt)*nt,ae*et,!0);ht.add(zt),zt.add(new go.PathSegment(go.PathSegment.Bezier,le*nt,(ae-Xt)*et,(le-Xt)*nt,(ae-re)*et,(le-re)*nt,(ae-Xt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,(le+Xt)*nt,ae*et,(le+re)*nt,(ae-Xt)*et,(le+Xt)*nt,(ae-re)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,le*nt,(ae+Xt)*et,(le+Xt)*nt,(ae+re)*et,(le+re)*nt,(ae+Xt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,(le-Xt)*nt,ae*et,(le-re)*nt,(ae+Xt)*et,(le-Xt)*nt,(ae+re)*et));var Xt=.05,re=ee*.05,le=.825,ae=.95,je=new go.PathFigure((le-Xt)*nt,ae*et,!0);ht.add(je),je.add(new go.PathSegment(go.PathSegment.Bezier,le*nt,(ae-Xt)*et,(le-Xt)*nt,(ae-re)*et,(le-re)*nt,(ae-Xt)*et)),je.add(new go.PathSegment(go.PathSegment.Bezier,(le+Xt)*nt,ae*et,(le+re)*nt,(ae-Xt)*et,(le+Xt)*nt,(ae-re)*et)),je.add(new go.PathSegment(go.PathSegment.Bezier,le*nt,(ae+Xt)*et,(le+Xt)*nt,(ae+re)*et,(le+re)*nt,(ae+Xt)*et)),je.add(new go.PathSegment(go.PathSegment.Bezier,(le-Xt)*nt,ae*et,(le-re)*nt,(ae+Xt)*et,(le-Xt)*nt,(ae+re)*et).close());var ne=new go.PathFigure(0,et,!1);return ht.add(ne),ne.add(new go.PathSegment(go.PathSegment.Line,nt,et).close()),ht}),go.Shape.defineFigureGenerator("Warehouse",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var gt=new go.PathFigure(0,.2*et,!1);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.2*et).close());var yt=new go.PathFigure(.15*nt,et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,.15*nt,.5*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.5*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,.15*nt,et).close());var Lt=.05,Dt=ee*.05,zt=.35,Xt=.775,re=new go.PathFigure((zt-Lt)*nt,Xt*et,!0);return ht.add(re),re.add(new go.PathSegment(go.PathSegment.Bezier,zt*nt,(Xt-Lt)*et,(zt-Lt)*nt,(Xt-Dt)*et,(zt-Dt)*nt,(Xt-Lt)*et)),re.add(new go.PathSegment(go.PathSegment.Bezier,(zt+Lt)*nt,Xt*et,(zt+Dt)*nt,(Xt-Lt)*et,(zt+Lt)*nt,(Xt-Dt)*et)),re.add(new go.PathSegment(go.PathSegment.Bezier,zt*nt,(Xt+Lt)*et,(zt+Lt)*nt,(Xt+Dt)*et,(zt+Dt)*nt,(Xt+Lt)*et)),re.add(new go.PathSegment(go.PathSegment.Bezier,(zt-Lt)*nt,Xt*et,(zt-Dt)*nt,(Xt+Lt)*et,(zt-Lt)*nt,(Xt+Dt)*et).close()),ht}),go.Shape.defineFigureGenerator("ControlCenter",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Move,.1*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.8*et).close()),ht}),go.Shape.defineFigureGenerator("Bluetooth",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.75*et,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.25*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.25*et)),ht}),go.Shape.defineFigureGenerator("Bookmark",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,0,0)),lt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.4*et)),ht}),go.Shape.defineFigureGenerator("Bookmark",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,0,0)),lt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.4*et)),ht}),go.Shape.defineFigureGenerator("Globe",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.5*nt,0,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Move,0,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.5*et,.75*nt,0,nt,.25*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,et,nt,.75*et,.75*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*et,.25*nt,et,0,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,0,0,.25*et,.25*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,et,.15*nt,.25*et,.15*nt,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,0,.85*nt,.75*et,.85*nt,.25*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.1675*nt,.15*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.8325*nt,.15*et,.35*nt,.3*et,.65*nt,.3*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.1675*nt,.85*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.8325*nt,.85*et,.35*nt,.7*et,.65*nt,.7*et)),ht}),go.Shape.defineFigureGenerator("Wave",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.25*et,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Bezier,.3*nt,.25*et,.1*nt,0,.2*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.7*nt,.25*et,.425*nt,.5*et,.575*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.25*et,.8*nt,0,.9*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Move,0,.25*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.75*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.3*nt,.75*et,.1*nt,.5*et,.2*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.7*nt,.75*et,.425*nt,et,.575*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.75*et,.8*nt,.5*et,.9*nt,.5*et)),ht}),go.Shape.defineFigureGenerator("Operator",function(kt,nt,et){var ht=new go.Geometry,lt=.3,gt=ee*.3,yt=.5,Lt=.7,Dt=new go.PathFigure((yt-lt)*nt,Lt*et,!0);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-lt)*et,(yt-lt)*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+lt)*nt,Lt*et,(yt+gt)*nt,(Lt-lt)*et,(yt+lt)*nt,(Lt-gt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt-lt)*nt,Lt*et,(yt-gt)*nt,(Lt+lt)*et,(yt-lt)*nt,(Lt+gt)*et));var zt=new go.PathFigure(0,.7*et,!1);return ht.add(zt),zt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.7*et,0,0,nt,0)),ht}),go.Shape.defineFigureGenerator("TripleFanBlades",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.5*nt,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.65*et,.65*nt,.3*et,.65*nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,0,.35*nt,.5*et,.35*nt,.3*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,.65*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,0,et,.3*nt,.6*et,.1*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.65*et,.2*nt,et,.35*nt,.95*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,.65*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,nt,et,.7*nt,.6*et,.9*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.65*et,.8*nt,et,.65*nt,.95*et)),ht}),go.Shape.defineFigureGenerator("CentrifugalPump",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt,0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*et,0,.075*et,0,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.4*nt,et,0,et,.4*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.8*nt,.4*et,.8*nt,et,.85*nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,0)),ht}),go.Shape.defineFigureGenerator("Battery",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,.1*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.1*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Move,.4*nt,.1*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.1*et));var gt=new go.PathFigure(0,.6*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Move,0,.4*et)),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.4*et)),ht}),go.Shape.defineFigureGenerator("Delete",function(kt,nt,et){var ht=new go.Geometry,lt=.5,gt=ee*.5,yt=.5,Lt=.5,Dt=new go.PathFigure((yt-lt)*nt,Lt*et,!0);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-lt)*et,(yt-lt)*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+lt)*nt,Lt*et,(yt+gt)*nt,(Lt-lt)*et,(yt+lt)*nt,(Lt-gt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt-lt)*nt,Lt*et,(yt-gt)*nt,(Lt+lt)*et,(yt-lt)*nt,(Lt+gt)*et));var zt=new go.PathFigure(.15*nt,.5*et,!1);return ht.add(zt),zt.add(new go.PathSegment(go.PathSegment.Line,.85*nt,.5*et)),ht}),go.Shape.defineFigureGenerator("Flag",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.1*et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Move,0,.1*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.1*et,.15*nt,0,.35*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Bezier,nt,.1*et,.65*nt,.2*et,.85*nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.5*et,.85*nt,.6*et,.65*nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*et,.35*nt,.4*et,.15*nt,.4*et).close()),ht}),go.Shape.defineFigureGenerator("Help",function(kt,nt,et){var ht=new go.Geometry,lt=.5,gt=ee*.5,yt=.5,Lt=.5,Dt=new go.PathFigure((yt-lt)*nt,Lt*et,!1);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-lt)*et,(yt-lt)*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+lt)*nt,Lt*et,(yt+gt)*nt,(Lt-lt)*et,(yt+lt)*nt,(Lt-gt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),Dt.add(new go.PathSegment(go.PathSegment.Bezier,(yt-lt)*nt,Lt*et,(yt-gt)*nt,(Lt+lt)*et,(yt-lt)*nt,(Lt+gt)*et).close()),lt=.05,gt=ee*.05,yt=.5,Lt=.8;var zt=new go.PathFigure((yt-lt)*nt,Lt*et,!1);return ht.add(zt),zt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt-lt)*et,(yt-lt)*nt,(Lt-gt)*et,(yt-gt)*nt,(Lt-lt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,(yt+lt)*nt,Lt*et,(yt+gt)*nt,(Lt-lt)*et,(yt+lt)*nt,(Lt-gt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,yt*nt,(Lt+lt)*et,(yt+lt)*nt,(Lt+gt)*et,(yt+gt)*nt,(Lt+lt)*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,(yt-lt)*nt,Lt*et,(yt-gt)*nt,(Lt+lt)*et,(yt-lt)*nt,(Lt+gt)*et).close()),zt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,.7*et)),zt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.5*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,.2*et,.75*nt,.475*et,.75*nt,.225*et)),zt.add(new go.PathSegment(go.PathSegment.Bezier,.3*nt,.35*et,.4*nt,.2*et,.3*nt,.25*et)),ht}),go.Shape.defineFigureGenerator("Location",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(.5*nt,et,!0).add(new go.PathSegment(go.PathSegment.Line,.75*nt,.5*et)).add(new go.PathSegment(go.PathSegment.Bezier,.5*nt,0,.975*nt,.025*et,.5*nt,0)).add(new go.PathSegment(go.PathSegment.Bezier,.25*nt,.5*et,.5*nt,0,.025*nt,.025*et).close()).add(new go.PathSegment(go.PathSegment.Move,.5*nt,.2*et)).add(new go.PathSegment(go.PathSegment.Arc,270,360,.5*nt,.3*et,.1*nt,.1*et).close()))}),go.Shape.defineFigureGenerator("Lock",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.5*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.5*et));var gt=new go.PathFigure(.2*nt,.5*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.3*et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,.8*nt,.3*et,.25*nt,0,.75*nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.3*et)),ht}),go.Shape.defineFigureGenerator("Unlocked",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.5*et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.5*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.5*et));var gt=new go.PathFigure(.2*nt,.5*et,!1);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Move,.2*nt,.5*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.3*et)),gt.add(new go.PathSegment(go.PathSegment.Bezier,.8*nt,.3*et,.25*nt,0,.75*nt,0)),gt.add(new go.PathSegment(go.PathSegment.Line,.8*nt,.35*et)),ht}),go.Shape.defineFigureGenerator("Gear",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(.9375*nt,.56246875*et,!0).add(new go.PathSegment(go.PathSegment.Line,.9375*nt,.4375*et)).add(new go.PathSegment(go.PathSegment.Line,.80621875*nt,.4375*et)).add(new go.PathSegment(go.PathSegment.Bezier,.763*nt,.3316875*et,.79840625*nt,.39915625*et,.7834375*nt,.3635*et)).add(new go.PathSegment(go.PathSegment.Line,.8566875*nt,.23796875*et)).add(new go.PathSegment(go.PathSegment.Line,.76825*nt,.14959375*et)).add(new go.PathSegment(go.PathSegment.Line,.67596875*nt,.24184375*et)).add(new go.PathSegment(go.PathSegment.Bezier,.5625*nt,.19378125*et,.64228125*nt,.2188125*et,.603875*nt,.2021875*et)).add(new go.PathSegment(go.PathSegment.Line,.5625*nt,.0625*et)).add(new go.PathSegment(go.PathSegment.Line,.4375*nt,.0625*et)).add(new go.PathSegment(go.PathSegment.Line,.4375*nt,.19378125*et)).add(new go.PathSegment(go.PathSegment.Bezier,.32775*nt,.239375*et,.39759375*nt,.20190625*et,.36053125*nt,.2176875*et)).add(new go.PathSegment(go.PathSegment.Line,.2379375*nt,.14959375*et)).add(new go.PathSegment(go.PathSegment.Line,.14953125*nt,.2379375*et)).add(new go.PathSegment(go.PathSegment.Line,.23934375*nt,.3278125*et)).add(new go.PathSegment(go.PathSegment.Bezier,.19378125*nt,.4375*et,.21765625*nt,.36059375*et,.201875*nt,.397625*et)).add(new go.PathSegment(go.PathSegment.Line,.0625*nt,.4375*et)).add(new go.PathSegment(go.PathSegment.Line,.0625*nt,.5625*et)).add(new go.PathSegment(go.PathSegment.Line,.1938125*nt,.5625*et)).add(new go.PathSegment(go.PathSegment.Bezier,.241875*nt,.67596875*et,.20221875*nt,.603875*et,.21884375*nt,.64228125*et)).add(new go.PathSegment(go.PathSegment.Line,.1495625*nt,.76825*et)).add(new go.PathSegment(go.PathSegment.Line,.238*nt,.8566875*et)).add(new go.PathSegment(go.PathSegment.Line,.3316875*nt,.76296875*et)).add(new go.PathSegment(go.PathSegment.Bezier,.43753125*nt,.80621875*et,.36353125*nt,.78340625*et,.3991875*nt,.79840625*et)).add(new go.PathSegment(go.PathSegment.Line,.43753125*nt,.9375*et)).add(new go.PathSegment(go.PathSegment.Line,.5625*nt,.9375*et)).add(new go.PathSegment(go.PathSegment.Line,.5625*nt,.80621875*et)).add(new go.PathSegment(go.PathSegment.Bezier,.67225*nt,.760625*et,.602375*nt,.79809375*et,.63946875*nt,.78234375*et)).add(new go.PathSegment(go.PathSegment.Line,.76828125*nt,.8566875*et)).add(new go.PathSegment(go.PathSegment.Line,.85671875*nt,.76825*et)).add(new go.PathSegment(go.PathSegment.Line,.76065625*nt,.67221875*et)).add(new go.PathSegment(go.PathSegment.Bezier,.80621875*nt,.56246875*et,.78234375*nt,.63940625*et,.798125*nt,.602375*et)).add(new go.PathSegment(go.PathSegment.Line,.9375*nt,.56246875*et).close()).add(new go.PathSegment(go.PathSegment.Move,.5*nt,.6*et)).add(new go.PathSegment(go.PathSegment.Arc,90,360,.5*nt,.5*et,.1*nt,.1*et).close()))}),go.Shape.defineFigureGenerator("Hand",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.5*et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Bezier,.1*nt,.3*et,0,.375*et,.05*nt,.325*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.45*nt,.075*et,.3*nt,.225*et,.4*nt,.175*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.525*nt,.075*et,.46*nt,.05*et,.525*nt,.05*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.3*nt,.4*et,.525*nt,.275*et,.475*nt,.325*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.9*nt,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.9*nt,.55*et,nt,.4*et,nt,.55*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.425*nt,.55*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.55*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.6*nt,.7*et,.675*nt,.55*et,.675*nt,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.575*nt,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.575*nt,.85*et,.65*nt,.7*et,.65*nt,.85*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.85*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.525*nt,.85*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.535*nt,et,.61*nt,.85*et,.61*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*et,.435*nt,et,0,et).close()),ht}),go.Shape.defineFigureGenerator("Map",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,.2*et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.25*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,.25*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et).close()),lt.add(new go.PathSegment(go.PathSegment.Move,.25*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.25*nt,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Move,.5*nt,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et)),lt.add(new go.PathSegment(go.PathSegment.Move,.75*nt,0)),lt.add(new go.PathSegment(go.PathSegment.Line,.75*nt,.8*et)),ht}),go.Shape.defineFigureGenerator("Eject",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,et,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et*.7)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et*.7).close());var gt=new go.PathFigure(0,et*.6,!0);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt,.6*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,0).close()),ht}),go.Shape.defineFigureGenerator("Pencil",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,.2*nt,.1*et)).add(new go.PathSegment(go.PathSegment.Line,nt,.9*et)).add(new go.PathSegment(go.PathSegment.Line,.9*nt,et)).add(new go.PathSegment(go.PathSegment.Line,.1*nt,.2*et).close()))}),go.Shape.defineFigureGenerator("Building",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*1,et*1,!1);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et*.85)),lt.add(new go.PathSegment(go.PathSegment.Line,.046*nt,et*.85)),lt.add(new go.PathSegment(go.PathSegment.Line,.046*nt,et*.45)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et*.45)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et*.3)),lt.add(new go.PathSegment(go.PathSegment.Line,.046*nt,et*.3)),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*nt,et*.3)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et*.3)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et*.45)),lt.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*nt,et*.45)),lt.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*nt,et*.85)),lt.add(new go.PathSegment(go.PathSegment.Line,nt,et*.85).close());var gt=new go.PathFigure(.126*nt,.85*et,!1);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.126*nt,.45*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.322*nt,.45*et)),gt.add(new go.PathSegment(go.PathSegment.Line,.322*nt,.85*et).close());var yt=new go.PathFigure(.402*nt,.85*et,!1);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,.402*nt,.45*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.598*nt,.45*et)),yt.add(new go.PathSegment(go.PathSegment.Line,.598*nt,.85*et).close());var Lt=new go.PathFigure(.678*nt,.85*et,!1);ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,.678*nt,.45*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.874*nt,.45*et)),Lt.add(new go.PathSegment(go.PathSegment.Line,.874*nt,.85*et).close());var Dt=new go.PathFigure(.5*nt,.1*et,!1);return ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Line,(.046+.15)*nt,.3*et)),Dt.add(new go.PathSegment(go.PathSegment.Line,(1-(.046+.15))*nt,.3*et).close()),ht}),go.Shape.defineFigureGenerator("Staircase",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,et*1,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.2,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.2,et*.8)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.4,et*.8)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.4,et*.6)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.6,et*.6)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.6,et*.4)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.8,et*.4)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.8,et*.2)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*.2)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*.15)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.75,et*.15)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.75,et*.35)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.55,et*.35)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.55,et*.55)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.35,et*.55)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.35,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.15,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.15,et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et*.95).close()),ht}),go.Shape.defineFigureGenerator("5Bars",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,et*1,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.184,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.184,et*(1-.184)).close());var gt=new go.PathFigure(nt*.204,et,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.204,et*(1-.184))),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.388,et*(1-.184*2))),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.388,et*1).close());var yt=new go.PathFigure(nt*.408,et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.408,et*(1-.184*2))),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.592,et*(1-.184*3))),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.592,et*1).close());var Lt=new go.PathFigure(nt*.612,et,!0);ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.612,et*(1-.184*3))),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.796,et*(1-.184*4))),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.796,et*1).close());var Dt=new go.PathFigure(nt*.816,et,!0);return ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*.816,et*(1-.184*4))),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*(1-.184*5))),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*1).close()),ht}),go.Shape.defineFigureGenerator("PC",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,0,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.3,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.3,0).close());var gt=new go.PathFigure(nt*.055,.07*et,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.245,et*.07)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.245,et*.1)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.055,et*.1).close());var yt=new go.PathFigure(nt*.055,.13*et,!0);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.245,et*.13)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.245,et*.16)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.055,et*.16).close());var Lt=new go.PathFigure(nt*.055,.18*et,!0);ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.245,et*.18)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.245,et*.21)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.055,et*.21).close());var Dt=new go.PathFigure(nt*1,0,!0);return ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*.4,0)),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*.4,et*.65)),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*.65).close()),ht}),go.Shape.defineFigureGenerator("Plane",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(.55*nt,et,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,.5*nt,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.7*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.1*nt,.475*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.35*nt,.525*et,0,.4*et,.225*nt,.45*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.4*nt,.475*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.15*nt,.35*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.2*nt,.325*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.325*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.85*nt,.1*et)),lt.add(new go.PathSegment(go.PathSegment.Bezier,.9*nt,.2*et,.975*nt,0,nt,.08*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.7*nt,.45*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.6*nt,.95*et)),lt.add(new go.PathSegment(go.PathSegment.Line,.55*nt,et).close()),ht}),go.Shape.defineFigureGenerator("Key",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*1,et*.5,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.9,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,.4*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,.35*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.45,.35*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.3,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.15,.2*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.35*et)),lt.add(new go.PathSegment(go.PathSegment.Line,0,.65*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.15,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.3,.8*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.45,.65*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,.65*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.6,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.65,.55*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.7,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.75,.55*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.8,.6*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.85,.575*et)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.9,.6*et).close()),lt.add(new go.PathSegment(go.PathSegment.Move,.17*nt,.425*et)),lt.add(new go.PathSegment(go.PathSegment.Arc,270,360,.17*nt,.5*et,.075*nt,.075*et).close()),ht}),go.Shape.defineFigureGenerator("FilmTape",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(0,0,!1);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Arc,270,180,nt*0,nt*.3,nt*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,0,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.08,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.08,et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*1),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*1),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*2),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*2),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*3),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*3),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*4),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*4),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*5),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*5),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*6),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*6),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*7),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*7),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*8),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*8),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*9),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*9),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*10),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*10),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*11),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*11),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*12),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*12),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*13),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*13),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*14),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*14),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*15),et*.95)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.08+.056*15),et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*1));var gt=new go.PathFigure(0,0,!1);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*0)),gt.add(new go.PathSegment(go.PathSegment.Arc,270,-180,nt*1,nt*.3,nt*.055)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*1));var yt=new go.PathFigure(nt*.11,et*.1,!1);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt*(.11+.24133333*1+.028*0),et*.1)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*(.11+.24133333*1+.028*0),et*.8)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.11,et*.8).close());var Lt=new go.PathFigure(nt*(.11+.24133333*1+.028*1),et*.1,!1);ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.11+.24133333*2+.028*1),et*.1)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.11+.24133333*2+.028*1),et*.8)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*(.11+.24133333*1+.028*1),et*.8).close());var Dt=new go.PathFigure(nt*(.11+.24133333*2+.028*2),et*.1,!1);return ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*(.11+.24133333*3+.028*2),et*.1)),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*(.11+.24133333*3+.028*2),et*.8)),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*(.11+.24133333*2+.028*2),et*.8).close()),ht}),go.Shape.defineFigureGenerator("FloppyDisk",function(kt,nt,et){var ht=new go.Geometry,lt=8,gt=lt*ee,yt=new go.PathFigure(lt,0,!1);ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.86,0)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*.14)),yt.add(new go.PathSegment(go.PathSegment.Line,nt,et-lt)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt-lt,et,nt,et-gt,nt-gt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,lt,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,et-lt,gt,et,0,et-gt)),yt.add(new go.PathSegment(go.PathSegment.Line,0,lt)),yt.add(new go.PathSegment(go.PathSegment.Bezier,lt,0,0,gt,gt,0).close());var Lt=new go.PathFigure(nt*.83,0,!1);ht.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.83,et*.3)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.17,et*.3)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.17,et*0).close());var Dt=new go.PathFigure(nt*.83,et*1,!1);ht.add(Dt),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*.83,et*.5)),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*.17,et*.5)),Dt.add(new go.PathSegment(go.PathSegment.Line,nt*.17,et*1).close());var zt=new go.PathFigure(nt*.78,et*.05,!1);return ht.add(zt),zt.add(new go.PathSegment(go.PathSegment.Line,nt*.66,et*.05)),zt.add(new go.PathSegment(go.PathSegment.Line,nt*.66,et*.25)),zt.add(new go.PathSegment(go.PathSegment.Line,nt*.78,et*.25).close()),ht}),go.Shape.defineFigureGenerator("SpeechBubble",function(kt,nt,et){var ht=kt?kt.parameter1:NaN;(isNaN(ht)||ht<0)&&(ht=15),ht=Math.min(ht,nt/3),ht=Math.min(ht,et/3);var lt=ht*ee,gt=et*.8,yt=new go.Geometry,Lt=new go.PathFigure(ht,0,!0);return yt.add(Lt),Lt.add(new go.PathSegment(go.PathSegment.Line,nt-ht,0)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,nt,ht,nt-lt,0,nt,lt)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt,gt-ht)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,nt-ht,gt,nt,gt-lt,nt-lt,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.7,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.7,et)),Lt.add(new go.PathSegment(go.PathSegment.Line,nt*.55,gt)),Lt.add(new go.PathSegment(go.PathSegment.Line,ht,gt)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,0,gt-ht,lt,gt,0,gt-lt)),Lt.add(new go.PathSegment(go.PathSegment.Line,0,ht)),Lt.add(new go.PathSegment(go.PathSegment.Bezier,ht,0,0,lt,lt,0).close()),lt>1?(yt.spot1=new go.Spot(0,0,lt,lt),yt.spot2=new go.Spot(1,.8,-lt,-lt)):(yt.spot1=go.Spot.TopLeft,yt.spot2=new go.Spot(1,.8)),yt}),go.Shape.defineFigureGenerator("Repeat",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*0,et*.45,!0);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.25,et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,et*.45)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.3,et*.45)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.3,et*.9)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.6,et*.9)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.65,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.2,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.2,et*.45).close());var gt=new go.PathFigure(nt*1,et*.55,!0);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.75,et*1)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,et*.55)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.7,et*.55)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.7,et*.1)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.4,et*.1)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.35,et*0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.8,et*0)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.8,et*.55).close()),ht}),go.Shape.defineFigureGenerator("Windows",function(kt,nt,et){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,nt,0)).add(new go.PathSegment(go.PathSegment.Line,nt,et)).add(new go.PathSegment(go.PathSegment.Line,0,et).close()).add(new go.PathSegment(go.PathSegment.Move,.4*nt,.4*et)).add(new go.PathSegment(go.PathSegment.Line,.4*nt,.8*et)).add(new go.PathSegment(go.PathSegment.Line,.9*nt,.8*et)).add(new go.PathSegment(go.PathSegment.Line,.9*nt,.4*et).close()).add(new go.PathSegment(go.PathSegment.Move,.2*nt,.1*et)).add(new go.PathSegment(go.PathSegment.Line,.2*nt,.6*et)).add(new go.PathSegment(go.PathSegment.Line,.7*nt,.6*et)).add(new go.PathSegment(go.PathSegment.Line,.7*nt,.1*et).close()).add(new go.PathSegment(go.PathSegment.Move,.1*nt,.6*et)).add(new go.PathSegment(go.PathSegment.Line,.1*nt,.9*et)).add(new go.PathSegment(go.PathSegment.Line,.5*nt,.9*et)).add(new go.PathSegment(go.PathSegment.Line,.5*nt,.6*et).close()))}),go.Shape.defineFigureGenerator("Terminal",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*0,et*.1,!1);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*.1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*.9)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*0,et*.9).close());var gt=new go.PathFigure(nt*.1,et*.2,!0);ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.1,et*.25)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.22,et*.285)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.1,et*.32)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.1,et*.37)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.275,et*.32)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.275,et*.25).close());var yt=new go.PathFigure(nt*.28,et*.37,!0);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.45,et*.37)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.45,et*.41)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.28,et*.41).close()),ht}),go.Shape.defineFigureGenerator("Beaker",function(kt,nt,et){var ht=new go.Geometry,lt=15,gt=lt*ee,yt=new go.PathFigure(nt*.62,et*.475,!0);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt,et-lt)),yt.add(new go.PathSegment(go.PathSegment.Bezier,nt-lt,et,nt,et-gt,nt-gt,et)),yt.add(new go.PathSegment(go.PathSegment.Line,lt,et)),yt.add(new go.PathSegment(go.PathSegment.Bezier,0,et-lt,gt,et,0,et-gt)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.38,et*.475)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.38,et*.03)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.36,et*0)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.64,et*0)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.62,et*.03).close()),gt>1?(ht.spot1=new go.Spot(0,0,gt,gt),ht.spot2=new go.Spot(1,1,-gt,-gt)):(ht.spot1=go.Spot.TopLeft,ht.spot2=go.Spot.BottomRight),ht}),go.Shape.defineFigureGenerator("Download",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*0,et*1,!0);ht.add(lt);var gt=.1/.3;lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.8,et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.66,et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.66,et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.755,et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.93,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.64,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.61,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.39,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.36,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.07,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.755),et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.66),et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.66),et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.8),et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*0,et*(1-gt)).close());var yt=new go.PathFigure(nt*.4,et*0,!0);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.4,et*.44)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.26,et*.44)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,et*.66)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.26),et*.44)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.6,et*.44)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.6,et*0).close()),ht}),go.Shape.defineFigureGenerator("Bin",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*0,et*1,!0);ht.add(lt);var gt=.1/.3;return lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.8,et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.66,et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.66,et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.755,et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.93,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.64,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.61,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.39,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.36,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.07,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.755),et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.66),et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.66),et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.8),et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*0,et*(1-gt)).close()),ht}),go.Shape.defineFigureGenerator("Upload",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*0,et*1,!0);ht.add(lt);var gt=.1/.3;lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.8,et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.66,et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.66,et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.755,et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.93,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.64,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.61,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.39,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.36,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.07,et*(1-gt))),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.755),et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.66),et*.055)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.66),et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*(1-.8),et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*0,et*(1-gt)).close());var yt=new go.PathFigure(nt*.5,et*0,!0);return ht.add(yt),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.26,et*.25)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.4,et*.25)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.4,et*.63)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.6,et*.63)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.6,et*.25)),yt.add(new go.PathSegment(go.PathSegment.Line,nt*.74,et*.25).close()),ht}),go.Shape.defineFigureGenerator("EmptyDrink",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*.15,et*0,!1);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.85,et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.7,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.3,et*1).close()),ht}),go.Shape.defineFigureGenerator("Drink",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*.15,et*0,!1);ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.85,et*0)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.7,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.3,et*1).close());var gt=new go.PathFigure(nt*.235,et*.28,!0);return ht.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.765,et*.28)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.655,et*.97)),gt.add(new go.PathSegment(go.PathSegment.Line,nt*.345,et*.97).close()),ht}),go.Shape.defineFigureGenerator("4Arrows",function(kt,nt,et){var ht=new go.Geometry,lt=new go.PathFigure(nt*.5,et*0,!0);return ht.add(lt),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.65,et*.25)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.55,et*.25)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.55,et*.45)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.75,et*.45)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.75,et*.35)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*1,et*.5)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.75,et*.65)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.75,et*.55)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.55,et*.55)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.55,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.65,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.5,et*1)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.35,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.45,et*.75)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.45,et*.55)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.25,et*.55)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.25,et*.65)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*0,et*.5)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.25,et*.35)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.25,et*.45)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.45,et*.45)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.45,et*.25)),lt.add(new go.PathSegment(go.PathSegment.Line,nt*.35,et*.25).close()),ht}),go.Shape.defineFigureGenerator("Connector","Ellipse"),go.Shape.defineFigureGenerator("Alternative","TriangleUp"),go.Shape.defineFigureGenerator("Merge","TriangleUp"),go.Shape.defineFigureGenerator("Decision","Diamond"),go.Shape.defineFigureGenerator("DataTransmissions","Hexagon"),go.Shape.defineFigureGenerator("Gate","Crescent"),go.Shape.defineFigureGenerator("Delay","HalfEllipse"),go.Shape.defineFigureGenerator("Input","Parallelogram1"),go.Shape.defineFigureGenerator("ManualLoop","ManualOperation"),go.Shape.defineFigureGenerator("ISOProcess","Chevron"),go.Shape.defineFigureGenerator("MessageToUser","SquareArrow"),go.Shape.defineFigureGenerator("MagneticData","Cylinder1"),go.Shape.defineFigureGenerator("DirectData","Cylinder4"),go.Shape.defineFigureGenerator("StoredData","DataStorage"),go.Shape.defineFigureGenerator("SequentialData","MagneticTape"),go.Shape.defineFigureGenerator("Subroutine","Procedure")},80727:function(module,exports,__webpack_require__){var __WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(){if(typeof window.GGBApplet=="function"){console.warn("deployggb.js was loaded twice");return}var isRenderGGBElementEnabled=!1,scriptLoadStarted=!1,html5AppletsToProcess=null,ggbHTML5LoadedCodebaseIsWebSimple=!1,ggbHTML5LoadedCodebaseVersion=null,ggbHTML5LoadedScript=null,GGBApplet=function(){"use strict";for(var fn={},Bn="5.0",Ft={},pt=null,Ht=!1,ve=!1,Me=null,Pe=!1,Ae=null,ee=null,Fe=0;Fe4?parseFloat(Te):5};fn.setHTML5Codebase=function(Te,en){ee=Te,De(Te,en)},fn.setJavaCodebase=fn.setJavaCodebaseVersion=fn.isCompiledInstalled=fn.setPreCompiledScriptPath=fn.setPreCompiledResourcePath=function(){},fn.setHTML5CodebaseVersion=function(Te,en){var Cn=parseFloat(Te);if(Cn!==NaN&&Cn<5){console.log("The GeoGebra HTML5 codebase version "+Cn+" is deprecated. Using version latest instead.");return}Ae=Te,Jt(Te,en)},fn.getHTML5CodebaseVersion=function(){return kt},fn.getParameters=function(){return Ft},fn.setFontsCSSURL=function(Te){yt=Te},fn.setGiacJSURL=function(Te){},fn.setJNLPFile=function(Te){de=Te},fn.setJNLPBaseDir=function(Te){},fn.inject=function(){function Te(){return window.frameElement&&window.frameElement.getAttribute("data-singleton")}for(var en="auto",Cn=Ft.id,Gn,vn=!1,zn=0;zn=5)return!0;var Te=fn.getAppletObject();return Te&&typeof Te.recalculateEnvironments=="function"?(Te.recalculateEnvironments(),!0):!1},fn.startAnimation=function(){var Te=fn.getAppletObject();return Te&&typeof Te.startAnimation=="function"?(Te.startAnimation(),!0):!1},fn.stopAnimation=function(){var Te=fn.getAppletObject();return Te&&typeof Te.stopAnimation=="function"?(Te.stopAnimation(),!0):!1},fn.getAppletObject=function(){var Te=Ft.id!==void 0?Ft.id:"ggbApplet";return window[Te]},fn.resize=function(){};var je=function(Te,en,Cn){var Gn=document.createElement("param");Gn.setAttribute("name",en),Gn.setAttribute("value",Cn),Te.appendChild(Gn)},ne=function(Te){return Te&&Te!=="false"},Le=function(Te,en,Cn){Dt(kt)<=4.2&&(Cn=!0);var Gn=!isRenderGGBElementEnabled&&!scriptLoadStarted;(!isRenderGGBElementEnabled&&!scriptLoadStarted||ggbHTML5LoadedCodebaseVersion!==kt||ggbHTML5LoadedCodebaseIsWebSimple&&!et)&&(Gn=!0,isRenderGGBElementEnabled=!1,scriptLoadStarted=!1);var vn=document.createElement("div");vn.classList.add("appletParameters","notranslate");var zn=en.width,me=en.height;if(en.disableAutoScale=en.disableAutoScale===void 0?GGBAppletUtils.isFlexibleWorksheetEditor():en.disableAutoScale,en.width!==void 0)if(Dt(kt)<=4.4)ne(en.showToolBar)&&(en.height-=7),ne(en.showAlgebraInput)&&(en.height-=37),en.width<605&&ne(en.showToolBar)&&(en.width=605,zn=605);else{var An=100;(ne(en.showToolBar)||ne(en.showMenuBar))&&(en.hasOwnProperty("customToolBar")&&(en.customToolbar=en.customToolBar),An=ne(en.showMenuBar)?245:155),zn=5?(en.appletOnLoad=function(Pt){var It=Te.querySelector(".ggb_preview");It&&It.parentNode.removeChild(It),window.GGBT_spinner&&window.GGBT_spinner.removeSpinner(ln),window.GGBT_wsf_view&&$(window).trigger("resize"),un(Pt)},oi||ln.appendChild(xn)):vn.appendChild(xn),ln.appendChild(vn),oi||Te.appendChild(ln),setTimeout(function(){fn.resize()},1)}else{var Ie=document.createElement("div");Ie.className="applet_scaler",Ie.style.position="relative",Ie.style.display="block",Ie.appendChild(vn),Te.appendChild(Ie),en.appletOnLoad=function(Pt){fn.resize(),un(Pt)}}function Ze(Pt,It){It&&typeof It.appletOnLoad=="function"&&typeof renderGGBElement=="function"?renderGGBElement(Pt,It.appletOnLoad):renderGGBElement(Pt),sn("GeoGebra HTML5 applet injected and rendered with previously loaded codebase.",It)}function Hn(Pt,It){typeof renderGGBElement=="undefined"?(html5AppletsToProcess===null&&(html5AppletsToProcess=[]),html5AppletsToProcess.push({article:Pt,params:It}),window.renderGGBElementReady=function(){isRenderGGBElementEnabled=!0,html5AppletsToProcess!==null&&html5AppletsToProcess.length&&(html5AppletsToProcess.forEach(function(Yt){Ze(Yt.article,Yt.params)}),html5AppletsToProcess=null)},Dt(kt)<5&&(Pt.className+=" geogebraweb")):Ze(Pt,It)}if(Gn){scriptLoadStarted=!0;for(var qe=0;qe0?(ui.remove(),ln.attr("id","fullscreencontent").show(),jQuery(un).append(ln),window.dispatchEvent(new Event("resize"))):Le(ui,en,!1),window.GGBT_wsf_view.launchFullScreen(un)}else He=Gn,Le(Te,en,!1);if(!window.GGBT_wsf_view)for(me=0;meTe/4*3&&(ui=Te/4*3),un=ui/5.8,An.setAttribute("src",lt),An.setAttribute("width",ui),An.setAttribute("height",un);var ln=(Te-ui)/2,oi=(en-un)/2;An.style.left=ln+"px",An.style.top=oi+"px",vn.appendChild(An)}}return vn.appendChild(me),vn},_e=function(Te){return Te=Te.toLowerCase(),Te==="html5"||Te==="screenshot"?Te:"html5"},qt=["web","webSimple","web3d","tablet","tablet3d","phone"],Jt=function(Te,en){if(kt=Te,en){De(kt,!0);return}var Cn=!Ht;if(Cn){var Gn=Dt(kt);!isNaN(Gn)&&Gn<4.4&&(Cn=!1)}var vn,zn;window.location.protocol.substr(0,4)==="http"?vn=window.location.protocol:vn="http:";var me=kt.indexOf("//");me>0?zn=kt:me===0?zn=vn+kt:zn="https://www.geogebra.org/apps/5.2.814.0/";for(var An in qt)if(kt.slice(qt[An].length*-1)===qt[An]||kt.slice((qt[An].length+1)*-1)===qt[An]+"/"){De(zn,!1);return}!GGBAppletUtils.isFlexibleWorksheetEditor()&&Cn&&!pt.is3D&&!pt.AV&&!pt.SV&&!pt.CV&&!pt.EV2&&!pt.CP&&!pt.PC&&!pt.DA&&!pt.FI&&!pt.PV&&!ne(Ft.showToolBar)&&!ne(Ft.showMenuBar)&&!ne(Ft.showAlgebraInput)&&!ne(Ft.enableRightClick)&&(!Ft.appName||Ft.appName=="classic")?zn+="webSimple/":zn+="web3d/",De(zn,!1)},De=function(Te,en){if(Te.requirejs){he=Te;return}Te.slice(-1)!=="/"&&(Te+="/"),he=Te,en===null&&(en=Te.indexOf("http")===-1),Ne=en,nt="web.nocache.js",et=!1;var Cn=he.split("/");Cn.length>1&&(!en&&Cn[Cn.length-2]==="webSimple"?(nt="webSimple.nocache.js",et=!0):qt.indexOf(Cn[Cn.length-2])>=0&&(nt=Cn[Cn.length-2]+".nocache.js")),Cn=Te.split("/"),kt=Cn[Cn.length-3],kt.substr(0,4)==="test"?kt=kt.substr(4,1)+"."+kt.substr(5,1):(kt.substr(0,3)==="war"||kt.substr(0,4)==="beta")&&(kt="5.0");var Gn=parseFloat(kt);Gn!==NaN&&Gn<5&&Te.indexOf("geogebra.org")>=0&&(console.log("The GeoGebra HTML5 codebase version "+Gn+" is deprecated. Using version latest instead."),Jt("5.0",en))},sn=function(Te,en){window.console&&window.console.log&&(!en||typeof en.showLogging=="undefined"||en.showLogging&&en.showLogging!=="false")&&console.log(Te)};Ft.material_id!==void 0?re(cn):cn();function cn(){var Te=Bn;Ae!==null?Te=Ae:parseFloat(Te)<5&&(Te="5.0"),Jt(Te,!1),ee!==null&&De(ee,Ne),Pe=!0}return fn},GGBAppletUtils=function(){"use strict";function fn(){return window.GGBT_wsf_edit!==void 0}function Bn(Pe,Ae){Ae!=1?(Pe.style.transformOrigin="0% 0% 0px",Pe.style.webkitTransformOrigin="0% 0% 0px",Pe.style.transform="scale("+Ae+","+Ae+")",Pe.style.webkitTransform="scale("+Ae+","+Ae+")",Pe.style.maxWidth="initial",Pe.querySelector(".ggb_preview")!==null&&(Pe.querySelector(".ggb_preview").style.maxWidth="initial"),Pe.querySelectorAll(".ggb_preview img")[0]!==void 0&&(Pe.querySelectorAll(".ggb_preview img")[0].style.maxWidth="initial"),Pe.querySelectorAll(".ggb_preview img")[1]!==void 0&&(Pe.querySelectorAll(".ggb_preview img")[1].style.maxWidth="initial")):(Pe.style.transform="none",Pe.style.webkitTransform="none")}function Ft(Pe,Ae,ee,Fe,ye,de){var he=null;if(de!=null&&de!="")for(var Ne=Pe.parentNode;Ne!=null;)if((" "+Ne.className+" ").indexOf(" "+de+" ")>-1){he=Ne;break}else Ne=Ne.parentNode;var He=0,kt=0,nt=0,et=0,ht=0,lt=0,gt=0;if(he)He=he.offsetWidth,kt=Math.max(Fe?he.offsetWidth:0,he.offsetHeight);else{if(window.innerWidth&&document.documentElement.clientWidth?(He=Math.min(window.innerWidth,document.documentElement.clientWidth),kt=Math.min(window.innerHeight,document.documentElement.clientHeight),nt=He):(He=window.innerWidth,kt=window.innerHeight,nt=window.innerWidth),Pe){var yt=Pe.getBoundingClientRect();yt.left>0&&yt.left<=He&&(ye===void 0||!ye)&&(document.dir==="rtl"?(ht=He-yt.width-yt.left,lt=nt<=480?10:30):(lt=yt.left,ht=nt<=480?10:30),et=lt+ht)}if(Pe&&typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()){var Lt=Pe.getBoundingClientRect();window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionRight"?(et=40,gt=0):window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionTop"&&(et=0,gt=40)}}return Pe&&((ee===void 0||!ee)&&Ae>0&&Ae+et1&&(de=!0)),Ae&&typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()&&(de=!0),!(Pe.hasOwnProperty("disableAutoScale")&&Pe.disableAutoScale))ye=pt(Pe,Ae,de,ee,Pe.scaleContainerClass);else return Fe;return de&&(!Pe.hasOwnProperty("scale")||Fe===1)?ye:Math.min(Fe,ye)}function ve(Pe){var Ae=Math.min(window.innerWidth,document.documentElement.clientWidth),ee=Math.min(window.innerHeight,document.documentElement.clientHeight),Fe=Pe.getBoundingClientRect(),ye=(Ae-Fe.width)/2,de=(ee-Fe.height)/2;de<0&&(de=0),Pe.style.position="relative",window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionRight"?(ye<40?Pe.style.left="40px":Pe.style.left=ye+"px",Pe.style.top=de+"px"):window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionTop"&&(de<40?Pe.style.top="40px":Pe.style.top=de+"px",Pe.style.left=ye+"px")}function Me(Pe,Ae){var ee=Pe.querySelector(".appletParameters");if(ee){if(typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()){if(Ae.id!==ee.getAttribute("data-param-id"))return;window.GGBT_wsf_view.setCloseBtnPosition(Pe)}if(ee.parentElement&&/fullscreen/.test(ee.parentElement.className))return;var Fe=Ht(Ae,Pe);fn()&&ee.setAttribute("data-param-scale",Fe);for(var ye=null,de=0;de=O)continue;if(j==jb){if(k=i.getAttribute(kb),k){var l,m=k.indexOf(lb);m>=O?(j=k.substring(O,m),l=k.substring(m+P)):(j=k,l=W),c[j]=l}}else if(j==mb){if(k=i.getAttribute(kb),k)try{d=eval(k)}catch(fn){alert(nb+k+ob)}}else if(j==pb&&(k=i.getAttribute(kb),k))try{e=eval(k)}catch(fn){alert(nb+k+qb)}}}__gwt_getMetaProperty=function(fn){var Bn=c[fn];return Bn==null?null:Bn},r=d,webModule.__errFn=e}function B(){function fn(Pe){var Ae=Pe.lastIndexOf(rb);Ae==-1&&(Ae=Pe.length);var ee=Pe.indexOf(sb);ee==-1&&(ee=Pe.length);var Fe=Pe.lastIndexOf(tb,Math.min(ee,Ae));return Fe>=O?Pe.substring(O,Fe+P):W}function Bn(Pe){if(!Pe.match(/^\w+:\/\//)){var Ae=o.createElement(ub);Ae.src=Pe+vb,Pe=fn(Ae.src)}return Pe}function Ft(){var Pe=__gwt_getMetaProperty(wb);return Pe!=null?Pe:W}function pt(){for(var Pe=o.getElementsByTagName(_),Ae=O;AeO?Pe[Pe.length-P].href:W}function ve(){var Pe=o.location;return Pe.href==Pe.protocol+zb+Pe.host+Pe.pathname+Pe.search+Pe.hash}var Me=Ft();return Me==W&&(Me=pt()),Me==W&&(Me=Ht()),Me==W&&ve()&&(Me=fn(o.location.href)),Me=Bn(Me),Me}function C(fn){return fn.match(/^\//)||fn.match(/^[a-zA-Z]+:\/\//)?fn:webModule.__moduleBase+fn}function D(){var fn=[],Bn=O,Ft=[],pt=[];function Ht(Pe){var Ae=pt[Pe](),ee=Ft[Pe];if(Ae in ee)return Ae;var Fe=[];for(var ye in ee)Fe[ee[ye]]=ye;throw r&&r(Pe,Fe,Ae),null}if(__gwt_isKnownPropertyValue=function(Pe,Ae){return Ae in Ft[Pe]},webModule.__getPropMap=function(){var Pe={};for(var Ae in Ft)Ft.hasOwnProperty(Ae)&&(Pe[Ae]=Ht(Ae));return Pe},webModule.__computePropValue=Ht,n.__gwt_activeModules[L].bindings=webModule.__getPropMap,p())return C(Bb);var ve;try{ve=Cb;var Me=ve.indexOf(Db);Me!=-1&&(Bn=parseInt(ve.substring(Me+P),$),ve=ve.substring(O,Me))}catch(Pe){}return webModule.__softPermutationId=Bn,C(ve+Eb)}function F(){n.__gwt_stylesLoaded||(n.__gwt_stylesLoaded={})}A(),webModule.__moduleBase="/js/mathematicalGraphics/"+name+"/",s[L].moduleBase=webModule.__moduleBase;var G=D();return F(),w(G),!0}return webModule},typeof window.web3d!="function"&&(window.web3d=GGBAppletUtils.makeModule("web3d","A18F540516513B1292CA7CEF2F6AFC7E")),typeof window.webSimple!="function"&&(window.webSimple=GGBAppletUtils.makeModule("webSimple","96B09BF1B436BF53F0DF54116700F16A")),window.GGBApplet=GGBApplet})()},77903:function(fn,Bn,Ft){"use strict";Ft.d(Bn,{Ax:function(){return Me},Ds:function(){return Pe},KI:function(){return ee},SI:function(){return ve},f1:function(){return Ht}});var pt=Ft(3294);function Ht(Fe){let ye=!0;if(Fe.length>0){for(let de=0;deye in Fe?ve(Fe,ye,{enumerable:!0,configurable:!0,writable:!0,value:de}):Fe[ye]=de,Pe=(Fe,ye,de)=>Me(Fe,typeof ye!="symbol"?ye+"":ye,de),Ae=(Fe,ye,de)=>new Promise((he,Ne)=>{var He=et=>{try{nt(de.next(et))}catch(ht){Ne(ht)}},kt=et=>{try{nt(de.throw(et))}catch(ht){Ne(ht)}},nt=et=>et.done?he(et.value):Promise.resolve(et.value).then(He,kt);nt((de=de.apply(Fe,ye)).next())});class ee extends pt.EventEmitter{constructor(ye,de){super(),Pe(this,"url"),Pe(this,"body"),Pe(this,"fullContent",""),Pe(this,"controller",null),this.url=ye,this.body=de}startStream(){return Ae(this,null,function*(){this.controller=new AbortController;const{signal:ye}=this.controller;try{const de=yield fetch(this.url,{method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},credentials:"include",body:JSON.stringify(this.body),signal:ye});if(!de.ok)throw new Error(`\u8BF7\u6C42\u5931\u8D25: ${de.status}`);const he=de.headers.get("content-type");if(!he)throw new Error("\u54CD\u5E94\u5934\u7F3A\u5C11 content-type");if(he.includes("application/json")){const kt=yield de.json();this.emit("error",kt);return}if(!he.includes("text/event-stream"))throw new Error("\u54CD\u5E94\u6570\u636E\u683C\u5F0F\u9519\u8BEF");const Ne=de.body.getReader(),He=new TextDecoder("utf-8");for(;;){const{done:kt,value:nt}=yield Ne.read();if(kt)break;const ht=He.decode(nt,{stream:!0}).split(` `);for(const lt of ht)if(lt.startsWith("data:")){const gt=lt.slice(5).trim();if(gt==="[DONE]")break;try{const yt=JSON.parse(gt);yt.data&&this.handleData(yt.data)}catch(yt){console.error("\u89E3\u6790 JSON \u5931\u8D25:",yt)}}}this.emit("done",this.fullContent)}catch(de){de.name==="AbortError"?this.emit("cancelled",this.fullContent):this.emit("error",de.message)}})}handleData(ye){ye.content&&(this.fullContent+=ye.content,this.emit("data",{chunk:ye,full:this.fullContent}))}cancelRequest(){var ye;(ye=this.controller)==null||ye.abort()}}Bn.Z=ee},6584:function(fn,Bn,Ft){"use strict";Ft.d(Bn,{Z:function(){return _e}});var pt=Ft(59301),Ht=Ft(72719),ve=Ft(77596),Me=Ft(93772),Pe=Ft(14179),Ae=Ft(56102),ee={answer:"answer___UngkO",imgWrap:"imgWrap___ORTRf",codeCopy:"codeCopy___re8vm",runCode:"runCode___MYs9m"},Fe=Ft(8591),ye=Ft(11611),de=Ft(81327),he=Ft(3113),Ne=Ft(35328),He=Ft(30084),kt=Ft(10787),nt=Ft(50304),et=Ft(43428),ht=Ft(95237),lt=Ft(43604),gt={smartWrp:"smartWrp___NjRcB"},yt=Ft(23954),Lt=Ft(59301);const Dt=` \u5FEB\u901F\u6392\u5E8F\u6F14\u793A

\u5FEB\u901F\u6392\u5E8F\u7B97\u6CD5\u6F14\u793A