camunda-bpmn-js 3.1.2 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).BpmnModeler=t()}(this,(function(){"use strict";function e(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}var t=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e){var t=e.exports=function(e,n){if(n||(n=16),void 0===e&&(e=128),e<=0)return"0";for(var i=Math.log(Math.pow(2,e))/Math.log(n),r=2;i===1/0;r*=2)i=Math.log(Math.pow(2,e/r))/Math.log(n)*r;var o=i-Math.floor(i),s="";for(r=0;r<Math.floor(i);r++){s=Math.floor(Math.random()*n).toString(n)+s}if(o){var a=Math.pow(n,o);s=Math.floor(Math.random()*a).toString(n)+s}var l=parseInt(s,n);return l!==1/0&&l>=Math.pow(2,e)?t(e,n):s};t.rack=function(e,n,i){var r=function(r){var s=0;do{if(s++>10){if(!i)throw new Error("too many ID collisions, use more bits");e+=i}var a=t(e,n)}while(Object.hasOwnProperty.call(o,a));return o[a]=r,a},o=r.hats={};return r.get=function(e){return r.hats[e]},r.set=function(e,t){return r.hats[e]=t,r},r.bits=e||128,r.base=n||16,r}}));function n(e){if(!(this instanceof n))return new n(e);e=e||[128,36,1],this._seed=e.length?t.rack(e[0],e[1],e[2]):e}function i(e){return Array.prototype.concat.apply([],e)}n.prototype.next=function(e){return this._seed(e||!0)},n.prototype.nextPrefixed=function(e,t){var n;do{n=e+this.next(!0)}while(this.assigned(n));return this.claim(n,t),n},n.prototype.claim=function(e,t){this._seed.set(e,t||!0)},n.prototype.assigned=function(e){return this._seed.get(e)||!1},n.prototype.unclaim=function(e){delete this._seed.hats[e]},n.prototype.clear=function(){var e,t=this._seed.hats;for(e in t)this.unclaim(e)};const r=Object.prototype.toString,o=Object.prototype.hasOwnProperty;function s(e){return void 0===e}function a(e){return void 0!==e}function l(e){return null==e}function c(e){return"[object Array]"===r.call(e)}function h(e){return"[object Object]"===r.call(e)}function u(e){return"[object Number]"===r.call(e)}function p(e){const t=r.call(e);return"[object Function]"===t||"[object AsyncFunction]"===t||"[object GeneratorFunction]"===t||"[object AsyncGeneratorFunction]"===t||"[object Proxy]"===t}function d(e){return"[object String]"===r.call(e)}function f(e){if(!c(e))throw new Error("must supply array")}function m(e,t){return o.call(e,t)}function g(e,t){const n=D(t);let i;return b(e,(function(e,t){if(n(e,t))return i=e,!1})),i}function v(e,t){const n=D(t);let i=c(e)?-1:void 0;return b(e,(function(e,t){if(n(e,t))return i=t,!1})),i}function y(e,t){const n=D(t);let i=[];return b(e,(function(e,t){n(e,t)&&i.push(e)})),i}function b(e,t){let n,i;if(s(e))return;const r=c(e)?L:B;for(let o in e)if(m(e,o)&&(n=e[o],i=t(n,r(o)),!1===i))return n}function x(e,t){if(s(e))return[];f(e);const n=D(t);return e.filter((function(e,t){return!n(e,t)}))}function w(e,t,n){return b(e,(function(e,i){n=t(n,e,i)})),n}function _(e,t){return!!w(e,(function(e,n,i){return e&&t(n,i)}),!0)}function O(e,t){return!!g(e,t)}function E(e,t){let n=[];return b(e,(function(e,i){n.push(t(e,i))})),n}function k(e){return e&&Object.keys(e)||[]}function S(e){return k(e).length}function C(e){return E(e,(e=>e))}function P(e,t,n={}){return t=M(t),b(e,(function(e){let i=t(e)||"_",r=n[i];r||(r=n[i]=[]),r.push(e)})),n}function $(e,...t){e=M(e);let n={};return b(t,(t=>P(t,e,n))),E(n,(function(e,t){return e[0]}))}const A=$;function R(e,t){t=M(t);let n=[];return b(e,(function(e,i){let r=t(e,i),o={d:r,v:e};for(var s=0;s<n.length;s++){let{d:e}=n[s];if(r<e)return void n.splice(s,0,o)}n.push(o)})),E(n,(e=>e.v))}function T(e){return function(t){return _(e,(function(e,n){return t[n]===e}))}}function M(e){return p(e)?e:t=>t[e]}function D(e){return p(e)?e:t=>t===e}function B(e){return e}function L(e){return Number(e)}function N(e,t){let n,i,r,o;function s(n){let s=Date.now(),c=n?0:o+t-s;if(c>0)return a(c);e.apply(r,i),l()}function a(e){n=setTimeout(s,e)}function l(){n&&clearTimeout(n),n=o=i=r=void 0}function c(...e){o=Date.now(),i=e,r=this,n||a(t)}return c.flush=function(){n&&s(!0),l()},c.cancel=l,c}function j(e,t){let n=!1;return function(...i){n||(e(...i),n=!0,setTimeout((()=>{n=!1}),t))}}function z(e,t){return e.bind(t)}function I(e,...t){return Object.assign(e,...t)}function X(e,t,n){let i=e;return b(t,(function(e,r){if("number"!=typeof e&&"string"!=typeof e)throw new Error("illegal key type: "+typeof e+". Key should be of type number or string.");if("constructor"===e)throw new Error("illegal key: constructor");if("__proto__"===e)throw new Error("illegal key: __proto__");let o=t[r+1],c=i[e];a(o)&&l(c)&&(c=i[e]=isNaN(+o)?{}:[]),s(o)?s(n)?delete i[e]:i[e]=n:i=c})),e}function Q(e,t,n){let i=e;return b(t,(function(e){if(l(i))return i=void 0,!1;i=i[e]})),s(i)?n:i}function F(e,t){let n={},i=Object(e);return b(t,(function(t){t in i&&(n[t]=e[t])})),n}function V(e,t){let n={};return b(Object(e),(function(e,i){-1===t.indexOf(i)&&(n[i]=e)})),n}var q=Object.freeze({__proto__:null,assign:I,bind:z,debounce:N,ensureArray:f,every:_,filter:y,find:g,findIndex:v,flatten:i,forEach:b,get:Q,groupBy:P,has:m,isArray:c,isDefined:a,isFunction:p,isNil:l,isNumber:u,isObject:h,isString:d,isUndefined:s,keys:k,map:E,matchPattern:T,merge:function e(t,...n){return n.length?(b(n,(function(n){n&&h(n)&&b(n,(function(n,i){if("__proto__"===i)return;let r=t[i];h(n)?(h(r)||(r={}),t[i]=e(r,n)):t[i]=n}))})),t):t},omit:V,pick:F,reduce:w,set:X,size:S,some:O,sortBy:R,throttle:j,unionBy:A,uniqueBy:$,values:C,without:x});function H(e,t){return t.forEach((function(t){t&&"string"!=typeof t&&!Array.isArray(t)&&Object.keys(t).forEach((function(n){if("default"!==n&&!(n in e)){var i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,i.get?i:{enumerable:!0,get:function(){return t[n]}})}}))})),Object.freeze(e)}const W=Object.prototype.toString,Y=Object.prototype.hasOwnProperty;function G(e,t){return Y.call(e,t)}function U(e,t){let n,i;if(void 0===e)return;const r=function(e){return"[object Array]"===W.call(e)}(e)?K:Z;for(let o in e)if(G(e,o)&&(n=e[o],i=t(n,r(o)),!1===i))return n}function Z(e){return e}function K(e){return Number(e)}function J(e,...t){const n=e.style;return U(t,(function(e){e&&U(e,(function(e,t){n[t]=e}))})),e}function ee(e,t,n){return 2==arguments.length?e.getAttribute(t):null===n?e.removeAttribute(t):(e.setAttribute(t,n),e)}const te=Object.prototype.toString;function ne(e){return new ie(e)}function ie(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function re(e){for(var t;e.childNodes.length;)t=e.childNodes[0],e.removeChild(t);return e}function oe(e,t){return e&&"function"==typeof e.matches&&e.matches(t)}function se(e,t,n){for(var i=n?e:e.parentNode;i&&i.nodeType!==document.DOCUMENT_NODE&&i.nodeType!==document.DOCUMENT_FRAGMENT_NODE;){if(oe(i,t))return i;i=i.parentNode}return oe(i,t)?i:null}ie.prototype.add=function(e){return this.list.add(e),this},ie.prototype.remove=function(e){return"[object RegExp]"==te.call(e)?this.removeMatching(e):(this.list.remove(e),this)},ie.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},ie.prototype.toggle=function(e,t){return void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},ie.prototype.array=function(){return Array.from(this.list)},ie.prototype.has=ie.prototype.contains=function(e){return this.list.contains(e)};var ae,le,ce,he={};function ue(){ae=window.addEventListener?"addEventListener":"attachEvent",le=window.removeEventListener?"removeEventListener":"detachEvent",ce="addEventListener"!==ae?"on":""}var pe=he.bind=function(e,t,n,i){return ae||ue(),e[ae](ce+t,n,i||!1),n},de=he.unbind=function(e,t,n,i){return le||ue(),e[le](ce+t,n,i||!1),n},fe=H({__proto__:null,bind:pe,unbind:de,default:he},[he]),me=["focus","blur"];var ge,ve={bind:function(e,t,n,i,r){return-1!==me.indexOf(n)&&(r=!0),fe.bind(e,n,(function(n){var r=n.target||n.srcElement;n.delegateTarget=se(r,t,!0),n.delegateTarget&&i.call(e,n)}),r)},unbind:function(e,t,n,i){return-1!==me.indexOf(t)&&(i=!0),fe.unbind(e,t,n,i)}},ye=function(e,t){if("string"!=typeof e)throw new TypeError("String expected");t||(t=document);var n=/<([\w:]+)/.exec(e);if(!n)return t.createTextNode(e);e=e.replace(/^\s+|\s+$/g,"");var i=n[1];if("body"==i){return(l=t.createElement("html")).innerHTML=e,l.removeChild(l.lastChild)}var r=Object.prototype.hasOwnProperty.call(xe,i)?xe[i]:xe._default,o=r[0],s=r[1],a=r[2],l=t.createElement("div");l.innerHTML=s+e+a;for(;o--;)l=l.lastChild;if(l.firstChild==l.lastChild)return l.removeChild(l.firstChild);var c=t.createDocumentFragment();for(;l.firstChild;)c.appendChild(l.removeChild(l.firstChild));return c},be=!1;"undefined"!=typeof document&&((ge=document.createElement("div")).innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',be=!ge.getElementsByTagName("link").length,ge=void 0);var xe={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:be?[1,"X<div>","</div>"]:[0,"",""]};xe.td=xe.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],xe.option=xe.optgroup=[1,'<select multiple="multiple">',"</select>"],xe.thead=xe.tbody=xe.colgroup=xe.caption=xe.tfoot=[1,"<table>","</table>"],xe.polyline=xe.ellipse=xe.polygon=xe.circle=xe.text=xe.line=xe.path=xe.rect=xe.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];var we=ye;function _e(e,t){return(t=t||document).querySelector(e)}function Oe(e,t){return(t=t||document).querySelectorAll(e)}function Ee(e){e.parentNode&&e.parentNode.removeChild(e)}function ke(e,t){return t.appendChild(function(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch(e){}return e}(e,t))}function Se(e,t){return ke(t,e),e}var Ce=2,Pe={"alignment-baseline":1,"baseline-shift":1,clip:1,"clip-path":1,"clip-rule":1,color:1,"color-interpolation":1,"color-interpolation-filters":1,"color-profile":1,"color-rendering":1,cursor:1,direction:1,display:1,"dominant-baseline":1,"enable-background":1,fill:1,"fill-opacity":1,"fill-rule":1,filter:1,"flood-color":1,"flood-opacity":1,font:1,"font-family":1,"font-size":Ce,"font-size-adjust":1,"font-stretch":1,"font-style":1,"font-variant":1,"font-weight":1,"glyph-orientation-horizontal":1,"glyph-orientation-vertical":1,"image-rendering":1,kerning:1,"letter-spacing":1,"lighting-color":1,marker:1,"marker-end":1,"marker-mid":1,"marker-start":1,mask:1,opacity:1,overflow:1,"pointer-events":1,"shape-rendering":1,"stop-color":1,"stop-opacity":1,stroke:1,"stroke-dasharray":1,"stroke-dashoffset":1,"stroke-linecap":1,"stroke-linejoin":1,"stroke-miterlimit":1,"stroke-opacity":1,"stroke-width":Ce,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function $e(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=Pe[i];r?(r===Ce&&"number"==typeof n&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function Ae(e,t,n){if("string"==typeof t){if(void 0===n)return function(e,t){return Pe[t]?e.style[t]:e.getAttributeNS(null,t)}(e,t);$e(e,t,n)}else!function(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)$e(e,i,t[i])}(e,t);return e}const Re=Object.prototype.toString;function Te(e){return new Me(e)}function Me(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function De(e){var t=e.parentNode;return t&&t.removeChild(e),e}function Be(e){for(var t;t=e.firstChild;)De(t);return e}function Le(e){return e.cloneNode(!0)}Me.prototype.add=function(e){return this.list.add(e),this},Me.prototype.remove=function(e){return"[object RegExp]"==Re.call(e)?this.removeMatching(e):(this.list.remove(e),this)},Me.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},Me.prototype.toggle=function(e,t){return void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},Me.prototype.array=function(){return Array.from(this.list)},Me.prototype.has=Me.prototype.contains=function(e){return this.list.contains(e)};var Ne={svg:"http://www.w3.org/2000/svg"},je='<svg xmlns="'+Ne.svg+'"';function ze(e){var t=!1;"<svg"===e.substring(0,4)?-1===e.indexOf(Ne.svg)&&(e=je+e.substring(4)):(e=je+">"+e+"</svg>",t=!0);var n=function(e){var t;return t=new DOMParser,t.async=!1,t.parseFromString(e,"text/xml")}(e);if(!t)return n;for(var i=document.createDocumentFragment(),r=n.firstChild;r.firstChild;)i.appendChild(r.firstChild);return i}function Ie(e,t){var n;return"<"===e.charAt(0)?(n=ze(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(Ne.svg,e),t&&Ae(n,t),n}var Xe=null;function Qe(){return null===Xe&&(Xe=Ie("svg")),Xe}function Fe(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function Ve(e){return e?Qe().createSVGTransformFromMatrix(e):Qe().createSVGTransform()}var qe=/([&<>]{1})/g,He=/([\n\r"]{1})/g,We={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"'"};function Ye(e,t){return e.replace(t,(function(e,t){return We[t]||t}))}function Ge(e,t){var n,i,r,o,s;switch(e.nodeType){case 3:t.push(Ye(e.textContent,qe));break;case 1:if(t.push("<",e.tagName),e.hasAttributes())for(n=0,i=(r=e.attributes).length;n<i;++n)o=r.item(n),t.push(" ",o.name,'="',Ye(o.value,He),'"');if(e.hasChildNodes()){for(t.push(">"),n=0,i=(s=e.childNodes).length;n<i;++n)Ge(s.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("\x3c!--",Ye(e.nodeValue,qe),"--\x3e");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function Ue(e,t){var n=ze(t);if(Be(e),t){(function(e){return"#document-fragment"===e.nodeName})(n)||(n=n.documentElement);for(var i,r=(i=n.childNodes,Array.prototype.slice.call(i)),o=0;o<r.length;o++)ke(r[o],e)}}function Ze(e,t){if(void 0!==t){try{Ue(e,t)}catch(e){throw new Error("error parsing SVG: "+e.message)}return e}return function(e){for(var t=e.firstChild,n=[];t;)Ge(t,n),t=t.nextSibling;return n.join("")}(e)}function Ke(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function Je(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),function(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(Ke(e,i))}(n,t)),n.consolidate()}const et=/^class[ {]/;function tt(e){return Array.isArray(e)}function nt(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function it(...e){1===e.length&&tt(e[0])&&(e=e[0]);const t=(e=[...e]).pop();return t.$inject=e,t}const rt=/constructor\s*[^(]*\(\s*([^)]*)\)/m,ot=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,st=/\/\*([^*]*)\*\//m;function at(e){if("function"!=typeof e)throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(function(e){return et.test(e.toString())}(e)?rt:ot);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map((e=>{const t=e.match(st);return(t&&t[1]||e).trim()}))||[]}function lt(e,t){t=t||{get:function(e,t){if(n.push(e),!1===t)return null;throw s(`No provider for "${e}"!`)}};const n=[],i=this._providers=Object.create(t._providers||null),r=this._instances=Object.create(null),o=r.injector=this,s=function(e){const t=n.join(" -> ");return n.length=0,new Error(t?`${e} (Resolving: ${t})`:e)};function a(e,o){if(!i[e]&&-1!==e.indexOf(".")){const t=e.split(".");let n=a(t.shift());for(;t.length;)n=n[t.shift()];return n}if(nt(r,e))return r[e];if(nt(i,e)){if(-1!==n.indexOf(e))throw n.push(e),s("Cannot resolve circular dependency!");return n.push(e),r[e]=i[e][0](i[e][1]),n.pop(),r[e]}return t.get(e,o)}function l(e,t){if(void 0===t&&(t={}),"function"!=typeof e){if(!tt(e))throw s(`Cannot invoke "${e}". Expected a function!`);e=it(e.slice())}return{fn:e,dependencies:(e.$inject||at(e)).map((e=>nt(t,e)?t[e]:a(e)))}}function c(e){const{fn:t,dependencies:n}=l(e);return new(Function.prototype.bind.apply(t,[null].concat(n)))}function h(e,t,n){const{fn:i,dependencies:r}=l(e,n);return i.apply(t,r)}function u(e){return it((t=>e.get(t)))}function p(e,t){if(t&&t.length){const n=Object.create(null),r=Object.create(null),o=[],s=[],a=[];let l,c,h,p;for(let e in i)l=i[e],-1!==t.indexOf(e)&&("private"===l[2]?(c=o.indexOf(l[3]),-1===c?(h=l[3].createChild([],t),p=u(h),o.push(l[3]),s.push(h),a.push(p),n[e]=[p,e,"private",h]):n[e]=[a[c],e,"private",s[c]]):n[e]=[l[2],l[1]],r[e]=!0),"factory"!==l[2]&&"type"!==l[2]||!l[1].$scope||t.forEach((t=>{-1!==l[1].$scope.indexOf(t)&&(n[e]=[l[2],l[1]],r[t]=!0)}));t.forEach((e=>{if(!r[e])throw new Error('No provider for "'+e+'". Cannot use provider from the parent!')})),e.unshift(n)}return new lt(e,o)}const d={factory:h,type:c,value:function(e){return e}};function f(e,t){const n=e.__init__||[];return function(){n.forEach((e=>{"string"==typeof e?t.get(e):t.invoke(e)}))}}function m(e){const t=e.__exports__;if(t){const n=e.__modules__,r=Object.keys(e).reduce(((t,n)=>("__exports__"!==n&&"__modules__"!==n&&"__init__"!==n&&"__depends__"!==n&&(t[n]=e[n]),t)),Object.create(null)),o=p((n||[]).concat(r)),s=it((function(e){return o.get(e)}));t.forEach((function(e){i[e]=[s,e,"private",o]}));const a=(e.__init__||[]).slice();return a.unshift((function(){o.init()})),f(e=Object.assign({},e,{__init__:a}),o)}return Object.keys(e).forEach((function(t){if("__init__"===t||"__depends__"===t)return;if("private"===e[t][2])return void(i[t]=e[t]);const n=e[t][0],r=e[t][1];i[t]=[d[n],ct(n,r),n]})),f(e,o)}function g(e,t){return-1!==e.indexOf(t)||-1!==(e=(t.__depends__||[]).reduce(g,e)).indexOf(t)?e:e.concat(t)}this.get=a,this.invoke=h,this.instantiate=c,this.createChild=p,this.init=function(e){const t=e.reduce(g,[]).map(m);let n=!1;return function(){n||(n=!0,t.forEach((e=>e())))}}(e)}function ct(e,t){return"value"!==e&&tt(t)&&(t=it(t.slice())),t}var ht=1e3;function ut(e,t){var n=this;t=t||ht,e.on(["render.shape","render.connection"],t,(function(e,t){var i=e.type,r=t.element,o=t.gfx,s=t.attrs;if(n.canRender(r))return"render.shape"===i?n.drawShape(o,r,s):n.drawConnection(o,r,s)})),e.on(["render.getShapePath","render.getConnectionPath"],t,(function(e,t){if(n.canRender(t))return"render.getShapePath"===e.type?n.getShapePath(t):n.getConnectionPath(t)}))}function pt(e){return e.flat().join(",").replace(/,?([A-z]),?/g,"$1")}function dt(e){return["L",e.x,e.y]}function ft(e,t){const n=e.length,i=[(r=e[0],["M",r.x,r.y])];var r,o,s,a;for(let r=1;r<n;r++){const n=e[r-1],l=e[r],c=e[r+1];if(!c||!t){i.push(dt(l));continue}const h=Math.min(t,gt(l.x-n.x,l.y-n.y),gt(c.x-l.x,c.y-l.y));if(!h){i.push(dt(l));continue}const u=mt(l,n,h),p=mt(l,n,.5*h),d=mt(l,c,h),f=mt(l,c,.5*h);i.push(dt(u)),i.push((s=f,a=d,["C",(o=p).x,o.y,s.x,s.y,a.x,a.y]))}return i}function mt(e,t,n){const i=t.x-e.x,r=t.y-e.y,o=n/gt(i,r);return{x:e.x+i*o,y:e.y+r*o}}function gt(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function vt(e,t,n){u(t)&&(n=t,t=null),t||(t={});const i=Ie("path",t);return u(n)&&(i.dataset.cornerRadius=String(n)),yt(i,e)}function yt(e,t){return Ae(e,{d:pt(ft(t,parseInt(e.dataset.cornerRadius,10)||0))}),e}function bt(e){return y(e,(function(t){return!g(e,(function(e){return e!==t&&xt(t,e)}))}))}function xt(e,t){if(t){if(e===t)return t;if(e.parent)return xt(e.parent,t)}}function wt(e,t,n){var i=!n||-1===e.indexOf(t);return i&&e.push(t),i}function _t(e,t,n){n=n||0,c(e)||(e=[e]),b(e,(function(e,i){var r=t(e,i,n);c(r)&&r.length&&_t(r,t,n+1)}))}function Ot(e,t){return function(e,t,n){var i=[],r=[];return _t(e,(function(e,o,s){wt(i,e,t);var a=e.children;if((-1===n||s<n)&&a&&wt(r,a,t))return a})),i}(e,!t,-1)}function Et(e,t){var n,i,r,o;return t=!!t,c(e)||(e=[e]),b(e,(function(e){var s=e;e.waypoints&&!t&&(s=Et(e.waypoints,!0));var a=s.x,l=s.y,c=s.height||0,h=s.width||0;(a<n||void 0===n)&&(n=a),(l<i||void 0===i)&&(i=l),(a+h>r||void 0===r)&&(r=a+h),(l+c>o||void 0===o)&&(o=l+c)})),{x:n,y:i,height:o-i,width:r-n}}function kt(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function St(e){return!(!e||!e.isFrame)}function Ct(e,t){return I({},e||{},t||{})}ut.prototype.canRender=function(e){},ut.prototype.drawShape=function(e,t){},ut.prototype.drawConnection=function(e,t){},ut.prototype.getShapePath=function(e){},ut.prototype.getConnectionPath=function(e){};var Pt=1;function $t(e,t){ut.call(this,e,Pt),this.CONNECTION_STYLE=t.style(["no-fill"],{strokeWidth:5,stroke:"fuchsia"}),this.SHAPE_STYLE=t.style({fill:"white",stroke:"fuchsia",strokeWidth:2}),this.FRAME_STYLE=t.style(["no-fill"],{stroke:"fuchsia",strokeDasharray:4,strokeWidth:2})}e($t,ut),$t.prototype.canRender=function(){return!0},$t.prototype.drawShape=function(e,t,n){var i=Ie("rect");return Ae(i,{x:0,y:0,width:t.width||0,height:t.height||0}),St(t)?Ae(i,I({},this.FRAME_STYLE,n||{})):Ae(i,I({},this.SHAPE_STYLE,n||{})),Se(e,i),i},$t.prototype.drawConnection=function(e,t,n){var i=vt(t.waypoints,I({},this.CONNECTION_STYLE,n||{}));return Se(e,i),i},$t.prototype.getShapePath=function(e){var t=e.x,n=e.y,i=e.width;return pt([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])},$t.prototype.getConnectionPath=function(e){var t,n,i=e.waypoints,r=[];for(t=0;n=i[t];t++)n=n.original||n,r.push([0===t?"M":"L",n.x,n.y]);return pt(r)},$t.$inject=["eventBus","styles"];var At={__init__:["defaultRenderer"],defaultRenderer:["type",$t],styles:["type",function(){var e={"no-fill":{fill:"none"},"no-border":{strokeOpacity:0},"no-events":{pointerEvents:"none"}},t=this;this.cls=function(e,t,n){return I(this.style(t,n),{class:e})},this.style=function(t,n){c(t)||n||(n=t,t=[]);var i=w(t,(function(t,n){return I(t,e[n]||{})}),{});return n?I(i,n):i},this.computeStyle=function(e,n,i){return c(n)||(i=n,n=[]),t.style(n||[],I({},i,e||{}))}}]};function Rt(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return-1!==n&&e.splice(n,1),n}function Tt(e,t,n){if(e&&t){"number"!=typeof n&&(n=-1);var i=e.indexOf(t);if(-1!==i){if(i===n)return;if(-1===n)return;e.splice(i,1)}-1!==n?e.splice(n,0,t):e.push(t)}}function Mt(e,t){return e&&t?e.indexOf(t):-1}function Dt(e,t){return e&&t?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):-1}function Bt(e,t,n,i){if(void 0===i&&(i=5),!e||!t||!n)return!1;var r=(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x),o=Dt(e,t);return Math.abs(r/o)<=i}var Lt=2;function Nt(e,t){var n=Array.from(arguments).flat();const i={x:"v",y:"h"};for(const[e,t]of Object.entries(i))if(jt(e,n))return t;return!1}function jt(e,t){const n=t[0];return _(t,(function(t){return Math.abs(n[e]-t[e])<=Lt}))}function zt(e,t,n){return n=n||0,e.x>t.x-n&&e.y>t.y-n&&e.x<t.x+t.width+n&&e.y<t.y+t.height+n}function It(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}function Xt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Qt(e){if(e.__esModule)return e;var t=e.default;if("function"==typeof t){var n=function e(){if(this instanceof e){var n=[null];return n.push.apply(n,arguments),new(Function.bind.apply(t,n))}return t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach((function(t){var i=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,i.get?i:{enumerable:!0,get:function(){return e[t]}})})),n}var Ft=/,?([a-z]),?/gi,Vt=parseFloat,qt=Math,Ht=qt.PI,Wt=qt.min,Yt=qt.max,Gt=qt.pow,Ut=qt.abs,Zt=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/gi,Kt=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/gi,Jt=Array.isArray||function(e){return e instanceof Array};function en(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function tn(e){if("function"==typeof e||Object(e)!==e)return e;var t=new e.constructor;for(var n in e)en(e,n)&&(t[n]=tn(e[n]));return t}function nn(e){var t=nn.ps=nn.ps||{};return t[e]?t[e].sleep=100:t[e]={sleep:100},setTimeout((function(){for(var n in t)en(t,n)&&n!=e&&(t[n].sleep--,!t[n].sleep&&delete t[n])})),t[e]}function rn(e,t,n,i){return 1===arguments.length&&(t=e.y,n=e.width,i=e.height,e=e.x),{x:e,y:t,width:n,height:i,x2:e+n,y2:t+i}}function on(){return this.join(",").replace(Ft,"$1")}function sn(e){var t=tn(e);return t.toString=on,t}function an(e,t,n,i,r,o,s,a,l){var c=1-l,h=Gt(c,3),u=Gt(c,2),p=l*l*l,d=h*t+3*u*l*i+3*c*l*l*o+p*a;return{x:dn(h*e+3*u*l*n+3*c*l*l*r+p*s),y:dn(d)}}function ln(e){var t=xn.apply(null,e);return rn(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function cn(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function hn(e,t,n,i,r){return e*(e*(-3*t+9*n-9*i+3*r)+6*t-12*n+6*i)-3*t+3*n}function un(e,t,n,i,r,o,s,a,l){null==l&&(l=1);for(var c=(l=l>1?1:l<0?0:l)/2,h=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],u=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],p=0,d=0;d<12;d++){var f=c*h[d]+c,m=hn(f,e,n,r,s),g=hn(f,t,i,o,a),v=m*m+g*g;p+=u[d]*qt.sqrt(v)}return c*p}function pn(e,t,n,i,r,o,s,a){if(!(Yt(e,n)<Wt(r,s)||Wt(e,n)>Yt(r,s)||Yt(t,i)<Wt(o,a)||Wt(t,i)>Yt(o,a))){var l=(e*i-t*n)*(o-a)-(t-i)*(r*a-o*s),c=(e-n)*(o-a)-(t-i)*(r-s);if(c){var h=dn(((e*i-t*n)*(r-s)-(e-n)*(r*a-o*s))/c),u=dn(l/c),p=+h.toFixed(2),d=+u.toFixed(2);if(!(p<+Wt(e,n).toFixed(2)||p>+Yt(e,n).toFixed(2)||p<+Wt(r,s).toFixed(2)||p>+Yt(r,s).toFixed(2)||d<+Wt(t,i).toFixed(2)||d>+Yt(t,i).toFixed(2)||d<+Wt(o,a).toFixed(2)||d>+Yt(o,a).toFixed(2)))return{x:h,y:u}}}}function dn(e){return Math.round(1e11*e)/1e11}function fn(e,t,n){if(!function(e,t){return e=rn(e),cn(t=rn(t),e.x,e.y)||cn(t,e.x2,e.y)||cn(t,e.x,e.y2)||cn(t,e.x2,e.y2)||cn(e,t.x,t.y)||cn(e,t.x2,t.y)||cn(e,t.x,t.y2)||cn(e,t.x2,t.y2)||(e.x<t.x2&&e.x>t.x||t.x<e.x2&&t.x>e.x)&&(e.y<t.y2&&e.y>t.y||t.y<e.y2&&t.y>e.y)}(ln(e),ln(t)))return n?0:[];for(var i=un.apply(0,e),r=un.apply(0,t),o=gn(e)?1:~~(i/5)||1,s=gn(t)?1:~~(r/5)||1,a=[],l=[],c={},h=n?0:[],u=0;u<o+1;u++){var p=an.apply(0,e.concat(u/o));a.push({x:p.x,y:p.y,t:u/o})}for(u=0;u<s+1;u++)p=an.apply(0,t.concat(u/s)),l.push({x:p.x,y:p.y,t:u/s});for(u=0;u<o;u++)for(var d=0;d<s;d++){var f,m=a[u],g=a[u+1],v=l[d],y=l[d+1],b=Ut(g.x-m.x)<.01?"y":"x",x=Ut(y.x-v.x)<.01?"y":"x",w=pn(m.x,m.y,g.x,g.y,v.x,v.y,y.x,y.y);if(w){if(c[f=w.x.toFixed(9)+"#"+w.y.toFixed(9)])continue;c[f]=!0;var _=m.t+Ut((w[b]-m[b])/(g[b]-m[b]))*(g.t-m.t),O=v.t+Ut((w[x]-v[x])/(y[x]-v[x]))*(y.t-v.t);_>=0&&_<=1&&O>=0&&O<=1&&(n?h++:h.push({x:w.x,y:w.y,t1:_,t2:O}))}}return h}function mn(e){var t=nn(e);if(t.abs)return sn(t.abs);if(Jt(e)&&Jt(e&&e[0])||(e=function(e){if(!e)return null;var t=nn(e);if(t.arr)return tn(t.arr);var n={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},i=[];return Jt(e)&&Jt(e[0])&&(i=tn(e)),i.length||String(e).replace(Zt,(function(e,t,r){var o=[],s=t.toLowerCase();for(r.replace(Kt,(function(e,t){t&&o.push(+t)})),"m"==s&&o.length>2&&(i.push([t].concat(o.splice(0,2))),s="l",t="m"==t?"l":"L");o.length>=n[s]&&(i.push([t].concat(o.splice(0,n[s]))),n[s]););})),i.toString=nn.toString,t.arr=tn(i),i}(e)),!e||!e.length)return[["M",0,0]];var n,i=[],r=0,o=0,s=0,a=0,l=0;"M"==e[0][0]&&(s=r=+e[0][1],a=o=+e[0][2],l++,i[0]=["M",r,o]);for(var c,h,u=l,p=e.length;u<p;u++){if(i.push(c=[]),(n=(h=e[u])[0])!=n.toUpperCase())switch(c[0]=n.toUpperCase(),c[0]){case"A":c[1]=h[1],c[2]=h[2],c[3]=h[3],c[4]=h[4],c[5]=h[5],c[6]=+h[6]+r,c[7]=+h[7]+o;break;case"V":c[1]=+h[1]+o;break;case"H":c[1]=+h[1]+r;break;case"M":s=+h[1]+r,a=+h[2]+o;default:for(var d=1,f=h.length;d<f;d++)c[d]=+h[d]+(d%2?r:o)}else for(var m=0,g=h.length;m<g;m++)c[m]=h[m];switch(n=n.toUpperCase(),c[0]){case"Z":r=+s,o=+a;break;case"H":r=c[1];break;case"V":o=c[1];break;case"M":s=c[c.length-2],a=c[c.length-1];default:r=c[c.length-2],o=c[c.length-1]}}return i.toString=on,t.abs=sn(i),i}function gn(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function vn(e,t,n,i){return[e,t,n,i,n,i]}function yn(e,t,n,i,r,o){var s=1/3,a=2/3;return[s*e+a*n,s*t+a*i,s*r+a*n,s*o+a*i,r,o]}function bn(e,t,n,i,r,o,s,a,l,c){var h,u=120*Ht/180,p=Ht/180*(+r||0),d=[],f=function(e){return function t(){var n=Array.prototype.slice.call(arguments,0),i=n.join("␀"),r=t.cache=t.cache||{},o=t.count=t.count||[];return en(r,i)?(function(e,t){for(var n=0,i=e.length;n<i;n++)if(e[n]===t)return e.push(e.splice(n,1)[0])}(o,i),r[i]):(o.length>=1e3&&delete r[o.shift()],o.push(i),r[i]=e.apply(0,n),r[i])}}((function(e,t,n){return{x:e*qt.cos(n)-t*qt.sin(n),y:e*qt.sin(n)+t*qt.cos(n)}}));if(c)O=c[0],E=c[1],w=c[2],_=c[3];else{e=(h=f(e,t,-p)).x,t=h.y;var m=(e-(a=(h=f(a,l,-p)).x))/2,g=(t-(l=h.y))/2,v=m*m/(n*n)+g*g/(i*i);v>1&&(n*=v=qt.sqrt(v),i*=v);var y=n*n,b=i*i,x=(o==s?-1:1)*qt.sqrt(Ut((y*b-y*g*g-b*m*m)/(y*g*g+b*m*m))),w=x*n*g/i+(e+a)/2,_=x*-i*m/n+(t+l)/2,O=qt.asin(((t-_)/i).toFixed(9)),E=qt.asin(((l-_)/i).toFixed(9));(O=e<w?Ht-O:O)<0&&(O=2*Ht+O),(E=a<w?Ht-E:E)<0&&(E=2*Ht+E),s&&O>E&&(O-=2*Ht),!s&&E>O&&(E-=2*Ht)}var k=E-O;if(Ut(k)>u){var S=E,C=a,P=l;E=O+u*(s&&E>O?1:-1),d=bn(a=w+n*qt.cos(E),l=_+i*qt.sin(E),n,i,r,0,s,C,P,[E,S,w,_])}k=E-O;var $=qt.cos(O),A=qt.sin(O),R=qt.cos(E),T=qt.sin(E),M=qt.tan(k/4),D=4/3*n*M,B=4/3*i*M,L=[e,t],N=[e+D*A,t-B*$],j=[a+D*T,l-B*R],z=[a,l];if(N[0]=2*L[0]-N[0],N[1]=2*L[1]-N[1],c)return[N,j,z].concat(d);for(var I=[],X=0,Q=(d=[N,j,z].concat(d).join().split(",")).length;X<Q;X++)I[X]=X%2?f(d[X-1],d[X],p).y:f(d[X],d[X+1],p).x;return I}function xn(e,t,n,i,r,o,s,a){for(var l,c,h,u,p,d,f,m,g=[],v=[[],[]],y=0;y<2;++y)if(0==y?(c=6*e-12*n+6*r,l=-3*e+9*n-9*r+3*s,h=3*n-3*e):(c=6*t-12*i+6*o,l=-3*t+9*i-9*o+3*a,h=3*i-3*t),Ut(l)<1e-12){if(Ut(c)<1e-12)continue;0<(u=-h/c)&&u<1&&g.push(u)}else f=c*c-4*h*l,m=qt.sqrt(f),f<0||(0<(p=(-c+m)/(2*l))&&p<1&&g.push(p),0<(d=(-c-m)/(2*l))&&d<1&&g.push(d));for(var b,x=g.length,w=x;x--;)b=1-(u=g[x]),v[0][x]=b*b*b*e+3*b*b*u*n+3*b*u*u*r+u*u*u*s,v[1][x]=b*b*b*t+3*b*b*u*i+3*b*u*u*o+u*u*u*a;return v[0][w]=e,v[1][w]=t,v[0][w+1]=s,v[1][w+1]=a,v[0].length=v[1].length=w+2,{x0:Wt.apply(0,v[0]),y0:Wt.apply(0,v[1]),x1:Yt.apply(0,v[0]),y1:Yt.apply(0,v[1])}}function wn(e){var t=nn(e);if(t.curve)return sn(t.curve);for(var n=mn(e),i={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},r=function(e,t,n){var i,r;if(!e)return["C",t.x,t.y,t.x,t.y,t.x,t.y];switch(!(e[0]in{T:1,Q:1})&&(t.qx=t.qy=null),e[0]){case"M":t.X=e[1],t.Y=e[2];break;case"A":e=["C"].concat(bn.apply(0,[t.x,t.y].concat(e.slice(1))));break;case"S":"C"==n||"S"==n?(i=2*t.x-t.bx,r=2*t.y-t.by):(i=t.x,r=t.y),e=["C",i,r].concat(e.slice(1));break;case"T":"Q"==n||"T"==n?(t.qx=2*t.x-t.qx,t.qy=2*t.y-t.qy):(t.qx=t.x,t.qy=t.y),e=["C"].concat(yn(t.x,t.y,t.qx,t.qy,e[1],e[2]));break;case"Q":t.qx=e[1],t.qy=e[2],e=["C"].concat(yn(t.x,t.y,e[1],e[2],e[3],e[4]));break;case"L":e=["C"].concat(vn(t.x,t.y,e[1],e[2]));break;case"H":e=["C"].concat(vn(t.x,t.y,e[1],t.y));break;case"V":e=["C"].concat(vn(t.x,t.y,t.x,e[1]));break;case"Z":e=["C"].concat(vn(t.x,t.y,t.X,t.Y))}return e},o=function(e,t){if(e[t].length>7){e[t].shift();for(var i=e[t];i.length;)s[t]="A",e.splice(t++,0,["C"].concat(i.splice(0,6)));e.splice(t,1),h=n.length}},s=[],a="",l="",c=0,h=n.length;c<h;c++){n[c]&&(a=n[c][0]),"C"!=a&&(s[c]=a,c&&(l=s[c-1])),n[c]=r(n[c],i,l),"A"!=s[c]&&"C"==a&&(s[c]="C"),o(n,c);var u=n[c],p=u.length;i.x=u[p-2],i.y=u[p-1],i.bx=Vt(u[p-4])||i.x,i.by=Vt(u[p-3])||i.y}return t.curve=sn(n),n}var _n=function(e,t,n){e=wn(e),t=wn(t);for(var i,r,o,s,a,l,c,h,u,p,d=n?0:[],f=0,m=e.length;f<m;f++){var g=e[f];if("M"==g[0])i=a=g[1],r=l=g[2];else{"C"==g[0]?(u=[i,r].concat(g.slice(1)),i=u[6],r=u[7]):(u=[i,r,i,r,a,l,a,l],i=a,r=l);for(var v=0,y=t.length;v<y;v++){var b=t[v];if("M"==b[0])o=c=b[1],s=h=b[2];else{"C"==b[0]?(p=[o,s].concat(b.slice(1)),o=p[6],s=p[7]):(p=[o,s,o,s,c,h,c,h],o=c,s=h);var x=fn(u,p,n);if(n)d+=x;else{for(var w=0,_=x.length;w<_;w++)x[w].segment1=f,x[w].segment2=v,x[w].bez1=u,x[w].bez2=p;d=d.concat(x)}}}}}return d},On=Xt(_n);function En(e){return h(e)&&m(e,"waypoints")}function kn(e){return h(e)&&m(e,"labelTarget")}function Sn(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function Cn(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function Pn(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function $n(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function An(e){for(var t=e.waypoints,n=t.reduce((function(e,n,i){var r=t[i-1];if(r){var o=e[e.length-1],s=o&&o.endLength||0,a=function(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}(r,n);e.push({start:r,end:n,startLength:s,endLength:s+a,length:a})}return e}),[]),i=n.reduce((function(e,t){return e+t.length}),0),r=i/2,o=0,s=n[o];s.endLength<r;)s=n[++o];var a=(r-s.startLength)/s.length;return{x:s.start.x+(s.end.x-s.start.x)*a,y:s.start.y+(s.end.y-s.start.y)*a}}function Rn(e){return En(e)?An(e):Cn({x:(t=e).x+(t.width||0)/2,y:t.y+(t.height||0)/2});var t}function Tn(e,t,n){h(n=n||0)||(n={x:n,y:n});var i=Pn(e),r=Pn(t),o=i.bottom+n.y<=r.top,s=i.left-n.x>=r.right,a=i.top-n.y>=r.bottom,l=o?"top":a?"bottom":null,c=i.right+n.x<=r.left?"left":s?"right":null;return c&&l?l+"-"+c:c||l||"intersect"}function Mn(e,t,n){var i=function(e,t){return On(e,t)}(e,t);return 1===i.length||2===i.length&&Dt(i[0],i[1])<1?Cn(i[0]):i.length>1?(i=R(i,(function(e){var t=Math.floor(100*e.t2)||1;return t=((t=100-t)<10?"0":"")+t,e.segment2+"#"+t})),Cn(i[n?0:i.length-1])):null}function Dn(e,t){return Math.round(e*t)/t}function Bn(e){return u(e)?e+"px":e}function Ln(e,t,n){const i=Ie("g");Te(i).add(t);const r=void 0!==n?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const Nn={shape:["x","y","width","height"],connection:["waypoints"]};function jn(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._rootsIdx=0,this._layers={},this._planes=[],this._rootElement=null,this._init(e||{})}function zn(e,t){const n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}jn.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],jn.prototype._init=function(e){const t=this._eventBus,n=this._container=function(e){const t=(e=I({},{width:"100%",height:"100%"},e)).container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container djs-parent"),J(n,{position:"relative",overflow:"hidden",width:Bn(e.width),height:Bn(e.height)}),t.appendChild(n),n}(e),i=this._svg=Ie("svg");Ae(i,{width:"100%",height:"100%"}),Se(n,i);const r=this._viewport=Ln(i,"viewport");!1!==e.deferUpdate&&(this._viewboxChanged=N(z(this._viewboxChanged,this),300)),t.on("diagram.init",(()=>{t.fire("canvas.init",{svg:i,viewport:r})})),t.on(["shape.added","connection.added","shape.removed","connection.removed","elements.changed","root.set"],(()=>{delete this._cachedViewbox})),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},jn.prototype._destroy=function(){this._eventBus.fire("canvas.destroy",{svg:this._svg,viewport:this._viewport});const e=this._container.parentNode;e&&e.removeChild(this._container),delete this._svg,delete this._container,delete this._layers,delete this._planes,delete this._rootElement,delete this._viewport},jn.prototype._clear=function(){this._elementRegistry.getAll().forEach((e=>{const t=kt(e);"root"===t?this.removeRootElement(e):this._removeElement(e,t)})),this._planes=[],this._rootElement=null,delete this._cachedViewbox},jn.prototype.getDefaultLayer=function(){return this.getLayer("base",0)},jn.prototype.getLayer=function(e,t){if(!e)throw new Error("must specify a name");let n=this._layers[e];if(n||(n=this._layers[e]=this._createLayer(e,t)),void 0!==t&&n.index!==t)throw new Error("layer <"+e+"> already created at index <"+t+">");return n.group},jn.prototype._getChildIndex=function(e){return w(this._layers,(function(t,n){return n.visible&&e>=n.index&&t++,t}),0)},jn.prototype._createLayer=function(e,t){void 0===t&&(t=1);const n=this._getChildIndex(t);return{group:Ln(this._viewport,"layer-"+e,n),index:t,visible:!0}},jn.prototype.showLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=this._viewport,i=t.group,r=t.index;if(t.visible)return i;const o=this._getChildIndex(r);return n.insertBefore(i,n.childNodes[o]||null),t.visible=!0,i},jn.prototype.hideLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=t.group;return t.visible?(De(n),t.visible=!1,n):n},jn.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],De(t.group))},jn.prototype.getActiveLayer=function(){const e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},jn.prototype.findRoot=function(e){if("string"==typeof e&&(e=this._elementRegistry.get(e)),!e)return;const t=this._findPlaneForRoot(function(e){for(;e.parent;)e=e.parent;return e}(e))||{};return t.rootElement},jn.prototype.getRootElements=function(){return this._planes.map((function(e){return e.rootElement}))},jn.prototype._findPlaneForRoot=function(e){return g(this._planes,(function(t){return t.rootElement===e}))},jn.prototype.getContainer=function(){return this._container},jn.prototype._updateMarker=function(e,t,n){let i;e.id||(e=this._elementRegistry.get(e)),i=this._elementRegistry._elements[e.id],i&&(b([i.gfx,i.secondaryGfx],(function(e){e&&(n?Te(e).add(t):Te(e).remove(t))})),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},jn.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},jn.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},jn.prototype.hasMarker=function(e,t){e.id||(e=this._elementRegistry.get(e));return Te(this.getGraphics(e)).has(t)},jn.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},jn.prototype.getRootElement=function(){const e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},jn.prototype.addRootElement=function(e){const t=this._rootsIdx++;e||(e={id:"__implicitroot_"+t,children:[],isImplicit:!0});const n=e.layer="root-"+t;this._ensureValid("root",e);const i=this.getLayer(n,0);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},jn.prototype.removeRootElement=function(e){"string"==typeof e&&(e=this._elementRegistry.get(e));if(this._findPlaneForRoot(e))return this._removeRoot(e),this._removeLayer(e.layer),this._planes=this._planes.filter((function(t){return t.rootElement!==e})),this._rootElement===e&&(this._rootElement=null),e},jn.prototype.setRootElement=function(e){if(e===this._rootElement)return;let t;if(!e)throw new Error("rootElement required");return t=this._findPlaneForRoot(e),t||(e=this.addRootElement(e)),this._setRoot(e),e},jn.prototype._removeRoot=function(e){const t=this._elementRegistry,n=this._eventBus;n.fire("root.remove",{element:e}),n.fire("root.removed",{element:e}),t.remove(e)},jn.prototype._addRoot=function(e,t){const n=this._elementRegistry,i=this._eventBus;i.fire("root.add",{element:e}),n.add(e,t),i.fire("root.added",{element:e,gfx:t})},jn.prototype._setRoot=function(e,t){const n=this._rootElement;n&&(this._elementRegistry.updateGraphics(n,null,!0),this.hideLayer(n.layer)),e&&(t||(t=this._findPlaneForRoot(e).layer),this._elementRegistry.updateGraphics(e,this._svg,!0),this.showLayer(e.layer)),this._rootElement=e,this._eventBus.fire("root.set",{element:e})},jn.prototype._ensureValid=function(e,t){if(!t.id)throw new Error("element must have an id");if(this._elementRegistry.get(t.id))throw new Error("element <"+t.id+"> already exists");const n=Nn[e],i=_(n,(function(e){return void 0!==t[e]}));if(!i)throw new Error("must supply { "+n.join(", ")+" } with "+e)},jn.prototype._setParent=function(e,t,n){Tt(t.children,e,n),e.parent=t},jn.prototype._addElement=function(e,t,n,i){n=n||this.getRootElement();const r=this._eventBus,o=this._graphicsFactory;this._ensureValid(e,t),r.fire(e+".add",{element:t,parent:n}),this._setParent(t,n,i);const s=o.create(e,t,i);return this._elementRegistry.add(t,s),o.update(e,t,s),r.fire(e+".added",{element:t,gfx:s}),t},jn.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},jn.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},jn.prototype._removeElement=function(e,t){const n=this._elementRegistry,i=this._graphicsFactory,r=this._eventBus;if(e=n.get(e.id||e))return r.fire(t+".remove",{element:e}),i.remove(e),Rt(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},jn.prototype.removeShape=function(e){return this._removeElement(e,"shape")},jn.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},jn.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},jn.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},jn.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},jn.prototype.viewbox=function(e){if(void 0===e&&this._cachedViewbox)return this._cachedViewbox;const t=this._viewport,n=this.getSize();let i,r,o,s,a,l,c;return e?(this._changeViewbox((function(){a=Math.min(n.width/e.width,n.height/e.height);const i=this._svg.createSVGMatrix().scale(a).translate(-e.x,-e.y);Je(t,i)})),e):(o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},s=Je(t),r=s?s.matrix:function(e,t,n,i,r,o){var s=Qe().createSVGMatrix();switch(arguments.length){case 0:return s;case 1:return Fe(s,e);case 6:return Fe(s,{a:e,b:t,c:n,d:i,e:r,f:o})}}(),a=Dn(r.a,1e3),l=Dn(-r.e||0,1e3),c=Dn(-r.f||0,1e3),e=this._cachedViewbox={x:l?l/a:0,y:c?c/a:0,width:n.width/a,height:n.height/a,scale:a,inner:{width:i.width||0,height:i.height||0,x:i.x||0,y:i.y||0},outer:n})},jn.prototype.scroll=function(e){const t=this._viewport;let n=t.getCTM();return e&&this._changeViewbox((function(){e=I({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),zn(t,n)})),{x:n.e,y:n.f}},jn.prototype.scrollToElement=function(e,t){let n=100;"string"==typeof e&&(e=this._elementRegistry.get(e));const i=this.findRoot(e);i!==this.getRootElement()&&this.setRootElement(i),t||(t={}),"number"==typeof t&&(n=t),t={top:t.top||n,right:t.right||n,bottom:t.bottom||n,left:t.left||n};const r=Et(e),o=Pn(r),s=this.viewbox(),a=this.zoom();let l,c;s.y+=t.top/a,s.x+=t.left/a,s.width-=(t.right+t.left)/a,s.height-=(t.bottom+t.top)/a;const h=Pn(s);if(r.width<s.width&&r.height<s.height){const e=Math.max(0,o.right-h.right),t=Math.min(0,o.left-h.left),n=Math.max(0,o.bottom-h.bottom),i=Math.min(0,o.top-h.top);l=e||t,c=n||i}else l=r.x-s.x,c=r.y-s.y;this.scroll({dx:-l*a,dy:-c*a})},jn.prototype.zoom=function(e,t){if(!e)return this.viewbox(e).scale;if("fit-viewport"===e)return this._fitViewport(t);let n,i;return this._changeViewbox((function(){"object"!=typeof t&&(n=this.viewbox().outer,t={x:n.width/2,y:n.height/2}),i=this._setZoom(e,t)})),Dn(i.a,1e3)},jn.prototype._fitViewport=function(e){const t=this.viewbox(),n=t.outer,i=t.inner;let r,o;return i.x>=0&&i.y>=0&&i.x+i.width<=n.width&&i.y+i.height<=n.height&&!e?o={x:0,y:0,width:Math.max(i.width+i.x,n.width),height:Math.max(i.height+i.y,n.height)}:(r=Math.min(1,n.width/i.width,n.height/i.height),o={x:i.x+(e?i.width/2-n.width/r/2:0),y:i.y+(e?i.height/2-n.height/r/2:0),width:n.width/r,height:n.height/r}),this.viewbox(o),this.viewbox(!1).scale},jn.prototype._setZoom=function(e,t){const n=this._svg,i=this._viewport,r=n.createSVGMatrix(),o=n.createSVGPoint();let s,a,l,c,h;l=i.getCTM();const u=l.a;return t?(s=I(o,t),a=s.matrixTransform(l.inverse()),c=r.translate(a.x,a.y).scale(1/u*e).translate(-a.x,-a.y),h=l.multiply(c)):h=r.scale(e),zn(this._viewport,h),h},jn.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},jn.prototype.getAbsoluteBBox=function(e){const t=this.viewbox();let n;if(e.waypoints){n=this.getGraphics(e).getBBox()}else n=e;return{x:n.x*t.scale-t.x*t.scale,y:n.y*t.scale-t.y*t.scale,width:n.width*t.scale,height:n.height*t.scale}},jn.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var In="data-element-id";function Xn(e){this._elements={},this._eventBus=e}Xn.$inject=["eventBus"],Xn.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),Ae(t,In,i),n&&Ae(n,In,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},Xn.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(Ae(i.gfx,In,""),i.secondaryGfx&&Ae(i.secondaryGfx,In,""),delete t[n])},Xn.prototype.updateId=function(e,t){this._validateId(t),"string"==typeof e&&(e=this.get(e)),this._eventBus.fire("element.updateId",{element:e,newId:t});var n=this.getGraphics(e),i=this.getGraphics(e,!0);this.remove(e),e.id=t,this.add(e,n,i)},Xn.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,t&&Ae(t,In,i),t},Xn.prototype.get=function(e){var t;t="string"==typeof e?e:e&&Ae(e,In);var n=this._elements[t];return n&&n.element},Xn.prototype.filter=function(e){var t=[];return this.forEach((function(n,i){e(n,i)&&t.push(n)})),t},Xn.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=t[n[i]],o=r.element;if(e(o,r.gfx))return o}},Xn.prototype.getAll=function(){return this.filter((function(e){return e}))},Xn.prototype.forEach=function(e){var t=this._elements;Object.keys(t).forEach((function(n){var i=t[n],r=i.element,o=i.gfx;return e(r,o)}))},Xn.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},Xn.prototype._validateId=function(e){if(!e)throw new Error("element must have an id");if(this._elements[e])throw new Error("element with id "+e+" already added")};var Qn={exports:{}},Fn={};Fn.extend=function(e,t,n,i){var r=n.inverse;return Object.defineProperty(e,"remove",{value:function(e){var n=this.indexOf(e);return-1!==n&&(this.splice(n,1),t.unset(e,r,i)),e}}),Object.defineProperty(e,"contains",{value:function(e){return-1!==this.indexOf(e)}}),Object.defineProperty(e,"add",{value:function(e,n){var o=this.indexOf(e);if(void 0===n){if(-1!==o)return;n=this.length}-1!==o&&this.splice(o,1),this.splice(n,0,e),-1===o&&t.set(e,r,i)}}),Object.defineProperty(e,"__refs_collection",{value:!0}),e},Fn.isExtended=function(e){return!0===e.__refs_collection};var Vn=Fn;function qn(e,t,n){var i=Vn.extend(n[t.name]||[],e,t,n);Object.defineProperty(n,t.name,{enumerable:t.enumerable,value:i}),i.length&&i.forEach((function(i){e.set(i,t.inverse,n)}))}function Hn(e,t){if(!(this instanceof Hn))return new Hn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Hn.prototype.bind=function(e,t){if("string"==typeof t){if(!this.props[t])throw new Error("no property <"+t+"> in ref");t=this.props[t]}t.collection?qn(this,t,e):function(e,t,n){var i=t.inverse,r=n[t.name];Object.defineProperty(n,t.name,{configurable:t.configurable,enumerable:t.enumerable,get:function(){return r},set:function(t){if(t!==r){var o=r;r=null,o&&e.unset(o,i,n),r=t,e.set(r,i,n)}}})}(this,t,e)},Hn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return Vn.isExtended(n)||qn(this,t,e),n},Hn.prototype.ensureBound=function(e,t){(function(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)})(e,t)||this.bind(e,t)},Hn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Hn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Wn=Hn;Qn.exports=Wn,Qn.exports.Collection=Fn;var Yn=Xt(Qn.exports),Gn=new Yn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),Un=new Yn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),Zn=new Yn({name:"attachers",collection:!0},{name:"host"}),Kn=new Yn({name:"outgoing",collection:!0},{name:"source"}),Jn=new Yn({name:"incoming",collection:!0},{name:"target"});function ei(){Object.defineProperty(this,"businessObject",{writable:!0}),Object.defineProperty(this,"label",{get:function(){return this.labels[0]},set:function(e){var t=this.label,n=this.labels;!e&&t?n.remove(t):n.add(e,0)}}),Gn.bind(this,"parent"),Un.bind(this,"labels"),Kn.bind(this,"outgoing"),Jn.bind(this,"incoming")}function ti(){ei.call(this),Gn.bind(this,"children"),Zn.bind(this,"host"),Zn.bind(this,"attachers")}function ni(){ei.call(this),Gn.bind(this,"children")}function ii(){ti.call(this),Un.bind(this,"labelTarget")}function ri(){ei.call(this),Kn.bind(this,"source"),Jn.bind(this,"target")}e(ti,ei),e(ni,ti),e(ii,ti),e(ri,ei);var oi={connection:ri,shape:ti,label:ii,root:ni};function si(){this._uid=12}si.prototype.createRoot=function(e){return this.create("root",e)},si.prototype.createLabel=function(e){return this.create("label",e)},si.prototype.createShape=function(e){return this.create("shape",e)},si.prototype.createConnection=function(e){return this.create("connection",e)},si.prototype.create=function(e,t){return(t=I({},t||{})).id||(t.id=e+"_"+this._uid++),function(e,t){var n=oi[e];if(!n)throw new Error("unknown type: <"+e+">");return I(new n,t)}(e,t)};var ai="__fn",li=Array.prototype.slice;function ci(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function hi(){}function ui(e){return e.childNodes[0]}function pi(e,t,n,i,r){var o=Ve();o.setTranslate(t,n);var s=Ve();s.setRotate(i||0,0,0);var a=Ve();a.setScale(r||1,r||1),Je(e,[o,s,a])}function di(e,t,n){var i=Ve();i.setTranslate(t,n),Je(e,i)}function fi(e,t){var n=Ve();n.setRotate(t,0,0),Je(e,n)}function mi(e,t){this._eventBus=e,this._elementRegistry=t}function gi(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}ci.prototype.on=function(e,t,n,i){if(e=c(e)?e:[e],p(t)&&(i=n,n=t,t=1e3),!u(t))throw new Error("priority must be a number");var r=n;i&&((r=z(n,i))[ai]=n[ai]||n);var o=this;e.forEach((function(e){o._addListener(e,{priority:t,callback:r,next:null})}))},ci.prototype.once=function(e,t,n,i){var r=this;if(p(t)&&(i=n,n=t,t=1e3),!u(t))throw new Error("priority must be a number");function o(){o.__isTomb=!0;var t=n.apply(i,arguments);return r.off(e,o),t}o[ai]=n,this.on(e,t,o)},ci.prototype.off=function(e,t){e=c(e)?e:[e];var n=this;e.forEach((function(e){n._removeListener(e,t)}))},ci.prototype.createEvent=function(e){var t=new hi;return t.init(e),t},ci.prototype.fire=function(e,t){var n,i,r,o;if(o=li.call(arguments),"object"==typeof e&&(e=(t=e).type),!e)throw new Error("no event type specified");if(i=this._listeners[e]){n=t instanceof hi?t:this.createEvent(t),o[0]=n;var s=n.type;e!==s&&(n.type=e);try{r=this._invokeListeners(n,o,i)}finally{e!==s&&(n.type=s)}return void 0===r&&n.defaultPrevented&&(r=!1),r}},ci.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},ci.prototype._destroy=function(){this._listeners={}},ci.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},ci.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=function(e,t){return e.apply(null,t)}(n.callback,t),void 0!==i&&(e.returnValue=i,e.stopPropagation()),!1===i&&e.preventDefault()}catch(e){if(!this.handleError(e))throw console.error("unhandled error in event listener",e),e}return i},ci.prototype._addListener=function(e,t){var n,i=this._getListeners(e);if(i){for(;i;){if(i.priority<t.priority)return t.next=i,void(n?n.next=t:this._setListeners(e,t));n=i,i=i.next}n.next=t}else this._setListeners(e,t)},ci.prototype._getListeners=function(e){return this._listeners[e]},ci.prototype._setListeners=function(e,t){this._listeners[e]=t},ci.prototype._removeListener=function(e,t){var n,i,r,o=this._getListeners(e);if(t)for(;o;)n=o.next,(r=o.callback)!==t&&r[ai]!==t||(i?i.next=n:this._setListeners(e,n)),i=o,o=n;else this._setListeners(e,null)},hi.prototype.stopPropagation=function(){this.cancelBubble=!0},hi.prototype.preventDefault=function(){this.defaultPrevented=!0},hi.prototype.init=function(e){I(this,e||{})},mi.$inject=["eventBus","elementRegistry"],mi.prototype._getChildrenContainer=function(e){var t,n=this._elementRegistry.getGraphics(e);return e.parent?(t=function(e){return e.parentNode.childNodes[1]}(n),t||(Te(t=Ie("g")).add("djs-children"),Se(n.parentNode,t))):t=n,t},mi.prototype._clear=function(e){var t=ui(e);return re(t),t},mi.prototype._createContainer=function(e,t,n,i){var r=Ie("g");Te(r).add("djs-group"),void 0!==n?gi(r,t,t.childNodes[n]):Se(t,r);var o=Ie("g");Te(o).add("djs-element"),Te(o).add("djs-"+e),i&&Te(o).add("djs-frame"),Se(r,o);var s=Ie("g");return Te(s).add("djs-visual"),Se(o,s),o},mi.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,St(t))},mi.prototype.updateContainments=function(e){var t,n=this,i=this._elementRegistry;t=w(e,(function(e,t){return t.parent&&(e[t.parent.id]=t.parent),e}),{}),b(t,(function(e){var t=e.children;if(t){var r=n._getChildrenContainer(e);b(t.slice().reverse(),(function(e){gi(i.getGraphics(e).parentNode,r)}))}}))},mi.prototype.drawShape=function(e,t){return this._eventBus.fire("render.shape",{gfx:e,element:t})},mi.prototype.getShapePath=function(e){return this._eventBus.fire("render.getShapePath",e)},mi.prototype.drawConnection=function(e,t){return this._eventBus.fire("render.connection",{gfx:e,element:t})},mi.prototype.getConnectionPath=function(e){return this._eventBus.fire("render.getConnectionPath",e)},mi.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if("shape"===e)this.drawShape(i,t),di(n,t.x,t.y);else{if("connection"!==e)throw new Error("unknown type: "+e);this.drawConnection(i,t)}t.hidden?Ae(n,"display","none"):Ae(n,"display","block")}},mi.prototype.remove=function(e){De(this._elementRegistry.getGraphics(e).parentNode)};var vi={__depends__:[At],__init__:["canvas"],canvas:["type",jn],elementRegistry:["type",Xn],elementFactory:["type",si],eventBus:["type",ci],graphicsFactory:["type",mi]};function yi(e){return function(e){var t=new lt(e);return t.init(),t}([{config:["value",e=e||{}]},vi].concat(e.modules||[]))}function bi(e,t){this._injector=t=t||yi(e),this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("diagram.init")}function xi(){}function wi(e,t){this.model=e,this.properties=t}bi.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},bi.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")},xi.prototype.get=function(e){return this.$model.properties.get(this,e)},xi.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},wi.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(xi.prototype);b(e.properties,(function(e){e.isMany||void 0===e.default||(i[e.name]=e.default)})),n.defineModel(i,t),n.defineDescriptor(i,e);var r=e.ns.name;function o(e){n.define(this,"$type",{value:r,enumerable:!0}),n.define(this,"$attrs",{value:{}}),n.define(this,"$parent",{writable:!0}),b(e,z((function(e,t){this.set(t,e)}),this))}return o.prototype=i,o.hasType=i.$instanceOf=this.model.hasType,n.defineModel(o,t),n.defineDescriptor(o,e),o};var _i={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},Oi={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}};function Ei(e,t){var n=Oi[e];return n?n(t):t}function ki(e){return!!_i[e]}function Si(e){return!!Oi[e]}function Ci(e,t){var n,i,r=e.split(/:/);if(1===r.length)n=e,i=t;else{if(2!==r.length)throw new Error("expected <prefix:localName> or <localName>, got "+e);n=r[1],i=r[0]}return{name:e=(i?i+":":"")+n,prefix:i,localName:n}}function Pi(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function $i(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,b(e,z(this.registerPackage,this))}function Ai(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function Ri(e){this.model=e}function Ti(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function Mi(e){this.properties=new Ri(this),this.factory=new wi(this,this.properties),this.registry=new $i(e,this.properties),this.typeCache={}}Pi.prototype.build=function(){return F(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},Pi.prototype.addProperty=function(e,t,n){"boolean"==typeof t&&(n=t,t=void 0),this.addNamedProperty(e,!1!==n);var i=this.properties;void 0!==t?i.splice(t,0,e):i.push(e)},Pi.prototype.replaceProperty=function(e,t,n){var i=e.ns,r=this.properties,o=this.propertiesByName,s=e.name!==t.name;if(e.isId){if(!t.isId)throw new Error("property <"+t.ns.name+"> must be id property to refine <"+e.ns.name+">");this.setIdProperty(t,!1)}if(e.isBody){if(!t.isBody)throw new Error("property <"+t.ns.name+"> must be body property to refine <"+e.ns.name+">");this.setBodyProperty(t,!1)}var a=r.indexOf(e);if(-1===a)throw new Error("property <"+i.name+"> not found in property list");r.splice(a,1),this.addProperty(t,n?void 0:a,s),o[i.name]=o[i.localName]=t},Pi.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=Ci(r[0],i),s=Ci(r[1],o.prefix).name,a=this.propertiesByName[s];if(!a)throw new Error("refined property <"+s+"> not found");this.replaceProperty(a,e,n),delete e.redefines},Pi.prototype.addNamedProperty=function(e,t){var n=e.ns,i=this.propertiesByName;t&&(this.assertNotDefined(e,n.name),this.assertNotDefined(e,n.localName)),i[n.name]=i[n.localName]=e},Pi.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},Pi.prototype.setBodyProperty=function(e,t){if(t&&this.bodyProperty)throw new Error("body property defined multiple times (<"+this.bodyProperty.ns.name+">, <"+e.ns.name+">)");this.bodyProperty=e},Pi.prototype.setIdProperty=function(e,t){if(t&&this.idProperty)throw new Error("id property defined multiple times (<"+this.idProperty.ns.name+">, <"+e.ns.name+">)");this.idProperty=e},Pi.prototype.assertNotDefined=function(e,t){var n=e.name,i=this.propertiesByName[n];if(i)throw new Error("property <"+n+"> already defined; override of <"+i.definedBy.ns.name+"#"+i.ns.name+"> by <"+e.definedBy.ns.name+"#"+e.ns.name+"> not allowed without redefines")},Pi.prototype.hasProperty=function(e){return this.propertiesByName[e]},Pi.prototype.addTrait=function(e,t){var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(b(e.properties,z((function(n){n=I({},n,{name:n.ns.localName,inherited:t}),Object.defineProperty(n,"definedBy",{value:e});var i=n.replaces,r=n.redefines;i||r?this.redefineProperty(n,i||r,i):(n.isBody&&this.setBodyProperty(n),n.isId&&this.setIdProperty(n),this.addProperty(n))}),this)),i.push(e),n[r]=e)},$i.prototype.getPackage=function(e){return this.packageMap[e]},$i.prototype.getPackages=function(){return this.packages},$i.prototype.registerPackage=function(e){e=I({},e);var t=this.packageMap;Ai(t,e,"prefix"),Ai(t,e,"uri"),b(e.types,z((function(t){this.registerType(t,e)}),this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},$i.prototype.registerType=function(e,t){var n=Ci((e=I({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:I(e.meta||{})})).name,t.prefix),i=n.name,r={};b(e.properties,z((function(e){var t=Ci(e.name,n.prefix),i=t.name;ki(e.type)||(e.type=Ci(e.type,t.prefix).name),I(e,{ns:t,name:i}),r[i]=e}),this)),I(e,{ns:n,name:i,propertiesByName:r}),b(e.extends,z((function(e){var t=this.typeMap[e];t.traits=t.traits||[],t.traits.push(i)}),this)),this.definePackage(e,t),this.typeMap[i]=e},$i.prototype.mapTypes=function(e,t,n){var i=ki(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(e){return s(e,!0)}function s(n,i){var o=Ci(n,ki(n)?"":e.prefix);r.mapTypes(o,t,i)}if(!i)throw new Error("unknown type <"+e.name+">");b(i.superClass,n?o:s),t(i,!n),b(i.traits,o)},$i.prototype.getEffectiveDescriptor=function(e){var t=Ci(e),n=new Pi(t);this.mapTypes(t,(function(e,t){n.addTrait(e,t)}));var i=n.build();return this.definePackage(i,i.allTypes[i.allTypes.length-1].$pkg),i},$i.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},Ri.prototype.set=function(e,t,n){if(!d(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.model.getPropertyDescriptor(e,t),r=i&&i.name;void 0===n?i?delete e[r]:delete e.$attrs[t]:i?r in e?e[r]=n:Ti(e,i,n):e.$attrs[t]=n},Ri.prototype.get=function(e,t){var n=this.model.getPropertyDescriptor(e,t);if(!n)return e.$attrs[t];var i=n.name;return!e[i]&&n.isMany&&Ti(e,n,[]),e[i]},Ri.prototype.define=function(e,t,n){if(!n.writable){var i=n.value;delete(n=I({},n,{get:function(){return i}})).value}Object.defineProperty(e,t,n)},Ri.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},Ri.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},Mi.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},Mi.prototype.getType=function(e){var t=this.typeCache,n=d(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},Mi.prototype.createAny=function(e,t,n){var i=Ci(e),r={$type:e,$instanceOf:function(e){return e===this.$type}},o={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(r,o),this.properties.defineModel(r,this),this.properties.define(r,"$parent",{enumerable:!1,writable:!0}),this.properties.define(r,"$instanceOf",{enumerable:!1,writable:!0}),b(n,(function(e,t){h(e)&&void 0!==e.value?r[e.name]=e.value:r[t]=e})),r},Mi.prototype.getPackage=function(e){return this.registry.getPackage(e)},Mi.prototype.getPackages=function(){return this.registry.getPackages()},Mi.prototype.getElementDescriptor=function(e){return e.$descriptor},Mi.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},Mi.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},Mi.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var Di=String.fromCharCode,Bi=Object.prototype.hasOwnProperty,Li=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,Ni={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function ji(e,t,n,i){return i?Bi.call(Ni,i)?Ni[i]:"&"+i+";":Di(t||parseInt(n,16))}function zi(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(Li,ji):e}Object.keys(Ni).forEach((function(e){Ni[e.toUpperCase()]=Ni[e]}));var Ii="http://www.w3.org/2001/XMLSchema-instance",Xi="xsi",Qi="xsi:type",Fi="non-whitespace outside of root node";function Vi(e){return new Error(e)}function qi(e){return"missing namespace for prefix <"+e+">"}function Hi(e){return{get:e,enumerable:!0}}function Wi(e){var t,n={};for(t in e)n[t]=e[t];return n}function Yi(e){return e+"$uri"}function Gi(){return{line:0,column:0}}function Ui(e){throw e}function Zi(e){if(!this)return new Zi(e);var t,n,i,r,o,s,a,l,c,h=e&&e.proxy,u=Ui,p=Gi,d=!1,f=!1,m=null,g=!1;function v(e){e instanceof Error||(e=Vi(e)),m=e,u(e,p)}function y(e){o&&(e instanceof Error||(e=Vi(e)),o(e,p))}this.on=function(e,c){if("function"!=typeof c)throw Vi("required args <name, cb>");switch(e){case"openTag":n=c;break;case"text":t=c;break;case"closeTag":i=c;break;case"error":u=c;break;case"warn":o=c;break;case"cdata":r=c;break;case"attention":l=c;break;case"question":a=c;break;case"comment":s=c;break;default:throw Vi("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw Vi("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return n[Ii]=Xi,f=!0,c=n,this},this.parse=function(e){if("string"!=typeof e)throw Vi("required args <xml=string>");return m=null,function(e){var o,u,m,b,x,w,_,O,E,k,S,C=f?[]:null,P=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[Yi(n)]=t;return i}(c):null,$=[],A=0,R=!1,T=!1,M=0,D=0,B="",L=0;function N(){if(null!==S)return S;var e,t,n,i,r,o,s,a,l,h,u,p=f&&P.xmlns,m=f&&d?[]:null,g=L,v=B,b=v.length,x={},w={};e:for(;g<b;g++)if(l=!1,!(32===(h=v.charCodeAt(g))||h<14&&h>8)){for((h<65||h>122||h>90&&h<97)&&95!==h&&58!==h&&(y("illegal first char attribute name"),l=!0),u=g+1;u<b;u++)if(!((h=v.charCodeAt(u))>96&&h<123||h>64&&h<91||h>47&&h<59||46===h||45===h||95===h)){if(32===h||h<14&&h>8){y("missing attribute value"),g=u;continue e}if(61===h)break;y("illegal attribute name char"),l=!0}if("xmlns:xmlns"===(a=v.substring(g,u))&&(y("illegal declaration of xmlns"),l=!0),34===(h=v.charCodeAt(u+1)))-1===(u=v.indexOf('"',g=u+2))&&-1!==(u=v.indexOf("'",g))&&(y("attribute value quote missmatch"),l=!0);else if(39===h)-1===(u=v.indexOf("'",g=u+2))&&-1!==(u=v.indexOf('"',g))&&(y("attribute value quote missmatch"),l=!0);else for(y("missing attribute value quotes"),l=!0,u+=1;u<b&&!(32===(h=v.charCodeAt(u+1))||h<14&&h>8);u++);for(-1===u&&(y("missing closing quotes"),u=b,l=!0),l||(o=v.substring(g,u)),g=u;u+1<b&&!(32===(h=v.charCodeAt(u+1))||h<14&&h>8);u++)g===u&&(y("illegal character after attribute end"),l=!0);if(g=u+1,!l)if(a in w)y("attribute <"+a+"> already defined");else if(w[a]=!0,f)if(d){if(null!==(r="xmlns"===a?"xmlns":120===a.charCodeAt(0)&&"xmlns:"===a.substr(0,6)?a.substr(6):null)){if(e=zi(o),t=Yi(r),!(s=c[e])){if("xmlns"===r||t in P&&P[t]!==e)do{s="ns"+A++}while(void 0!==P[s]);else s=r;c[e]=s}P[r]!==s&&(i||(P=Wi(P),i=!0),P[r]=s,"xmlns"===r&&(P[Yi(s)]=e,p=s),P[t]=e),x[a]=o;continue}m.push(a,o)}else-1!==(h=a.indexOf(":"))?(n=P[a.substring(0,h)])?((a=p===n?a.substr(h+1):n+a.substr(h))===Qi&&(-1!==(h=o.indexOf(":"))?(n=o.substring(0,h),o=(n=P[n]||n)+o.substring(h)):o=p+":"+o),x[a]=o):y(qi(a.substring(0,h))):x[a]=o;else x[a]=o}if(d)for(g=0,b=m.length;g<b;g++){if(a=m[g++],o=m[g],-1!==(h=a.indexOf(":"))){if(!(n=P[a.substring(0,h)])){y(qi(a.substring(0,h)));continue}(a=p===n?a.substr(h+1):n+a.substr(h))===Qi&&(-1!==(h=o.indexOf(":"))?(n=o.substring(0,h),o=(n=P[n]||n)+o.substring(h)):o=p+":"+o)}x[a]=o}return S=x}function j(){for(var t,n,i=/(\r\n|\r|\n)/g,r=0,o=0,s=0,a=D;M>=s&&(t=i.exec(e))&&!((a=t[0].length+t.index)>M);)r+=1,s=a;return-1==M?(o=a,n=e.substring(D)):0===D?n=e.substring(D,M):(o=M-s,n=-1==D?e.substring(M):e.substring(M,D+1)),{data:n,line:r,column:o}}p=j,h&&(k=Object.create({},{name:Hi((function(){return O})),originalName:Hi((function(){return E})),attrs:Hi(N),ns:Hi((function(){return P}))}));for(;-1!==D;){if(-1===(M=60===e.charCodeAt(D)?D:e.indexOf("<",D)))return $.length?v("unexpected end of file"):0===D?v("missing start tag"):void(D<e.length&&e.substring(D).trim()&&y(Fi));if(D!==M)if($.length){if(t&&(t(e.substring(D,M),zi,p),g))return}else if(e.substring(D,M).trim()&&(y(Fi),g))return;if(33===(x=e.charCodeAt(M+1))){if(91===(b=e.charCodeAt(M+2))&&"CDATA["===e.substr(M+3,6)){if(-1===(D=e.indexOf("]]>",M)))return v("unclosed cdata");if(r&&(r(e.substring(M+9,D),p),g))return;D+=3;continue}if(45===b&&45===e.charCodeAt(M+3)){if(-1===(D=e.indexOf("--\x3e",M)))return v("unclosed comment");if(s&&(s(e.substring(M+4,D),zi,p),g))return;D+=3;continue}}if(63!==x){for(u=M+1;;u++){if(w=e.charCodeAt(u),isNaN(w))return D=-1,v("unclosed tag");if(34===w)u=-1!==(b=e.indexOf('"',u+1))?b:u;else if(39===w)u=-1!==(b=e.indexOf("'",u+1))?b:u;else if(62===w){D=u;break}}if(33!==x){if(S={},47===x){if(R=!1,T=!0,!$.length)return v("missing open tag");if(u=O=$.pop(),b=M+2+u.length,e.substring(M+2,b)!==u)return v("closing tag mismatch");for(;b<D;b++)if(!(32===(x=e.charCodeAt(b))||x>8&&x<14))return v("close tag")}else{if(47===e.charCodeAt(D-1)?(u=O=e.substring(M+1,D-1),R=!0,T=!0):(u=O=e.substring(M+1,D),R=!0,T=!1),!(x>96&&x<123||x>64&&x<91||95===x||58===x))return v("illegal first char nodeName");for(b=1,m=u.length;b<m;b++)if(!((x=u.charCodeAt(b))>96&&x<123||x>64&&x<91||x>47&&x<59||45===x||95===x||46==x)){if(32===x||x<14&&x>8){O=u.substring(0,b),S=null;break}return v("invalid nodeName")}T||$.push(O)}if(f){if(o=P,R&&(T||C.push(o),null===S&&(d=-1!==u.indexOf("xmlns",b))&&(L=b,B=u,N(),d=!1)),E=O,-1!==(x=O.indexOf(":"))){if(!(_=P[O.substring(0,x)]))return v("missing namespace on <"+E+">");O=O.substr(x+1)}else _=P.xmlns;_&&(O=_+":"+O)}if(R&&(L=b,B=u,n&&(h?n(k,zi,T,p):n(O,N,zi,T,p),g)))return;if(T){if(i&&(i(h?k:O,zi,R,p),g))return;f&&(P=R?o:C.pop())}D+=1}else{if(l&&(l(e.substring(M,D+1),zi,p),g))return;D+=1}}else{if(-1===(D=e.indexOf("?>",M)))return v("unclosed question");if(a&&(a(e.substring(M,D+2),p),g))return;D+=2}}}(e),p=Gi,g=!1,m},this.stop=function(){g=!0}}function Ki(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var Ji={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},er="xsi:type";function tr(e){return e.xml&&e.xml.serialize}function nr(e){return tr(e)===er}function ir(e,t){return Ki(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function rr(e){return new Error(e)}function or(e){return e.$descriptor}function sr(e){I(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(e){this.references.push(e)},this.addElement=function(e){if(!e)throw rr("expected element");var t,n=this.elementsById,i=or(e).idProperty;if(i&&(t=e.get(i.name))){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(t))throw new Error("illegal ID <"+t+">");if(n[t])throw rr("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function ar(){}function lr(){}function cr(){}function hr(e,t){this.property=e,this.context=t}function ur(e,t){this.element=t,this.propertyDesc=e}function pr(){}function dr(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function fr(e,t,n){dr.call(this,e,t,n)}function mr(e,t,n){this.model=e,this.context=n}function gr(e){e instanceof Mi&&(e={model:e}),I(this,{lax:!1},e)}ar.prototype.handleEnd=function(){},ar.prototype.handleText=function(){},ar.prototype.handleNode=function(){},lr.prototype=Object.create(ar.prototype),lr.prototype.handleNode=function(){return this},cr.prototype=Object.create(ar.prototype),cr.prototype.handleText=function(e){this.body=(this.body||"")+e},hr.prototype=Object.create(cr.prototype),hr.prototype.handleNode=function(e){if(this.element)throw rr("expected no sub nodes");return this.element=this.createReference(e),this},hr.prototype.handleEnd=function(){this.element.id=this.body},hr.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},ur.prototype=Object.create(cr.prototype),ur.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=Ei(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},pr.prototype=Object.create(cr.prototype),pr.prototype.handleNode=function(e){var t=this,n=this.element;return n?t=this.handleChild(e):(n=this.element=this.createElement(e),this.context.addElement(n)),t},dr.prototype=Object.create(pr.prototype),dr.prototype.addReference=function(e){this.context.addReference(e)},dr.prototype.handleText=function(e){if(!or(this.element).bodyProperty)throw rr("unexpected body text <"+e+">");cr.prototype.handleText.call(this,e)},dr.prototype.handleEnd=function(){var e=this.body,t=this.element,n=or(t).bodyProperty;n&&void 0!==e&&(e=Ei(n.type,e),t.set(n.name,e))},dr.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,r=or(i),o=this.context,s=new i({}),a=this.model;return b(n,(function(e,n){var i=r.propertiesByName[n];i&&i.isReference?i.isMany?b(e.split(" "),(function(e){o.addReference({element:s,property:i.ns.name,id:e})})):o.addReference({element:s,property:i.ns.name,id:e}):(i?e=Ei(i.type,e):"xmlns"!==n&&(t=Ci(n,r.ns.prefix),a.getPackage(t.prefix)&&o.addWarning({message:"unknown attribute <"+n+">",element:s,property:n,value:e})),s.set(n,e))})),s},dr.prototype.getPropertyForNode=function(e){var t,n,i=Ci(e.name),r=this.type,o=this.model,s=or(r),a=i.name,l=s.propertiesByName[a];if(l&&!l.isAttr)return nr(l)&&(t=e.attributes[er])?(t=function(e,t){var n=Ci(e);return function(e,t){var n=e.name,i=e.localName,r=t.xml&&t.xml.typePrefix;return r&&0===i.indexOf(r)?e.prefix+":"+i.slice(r.length):n}(n,t.getPackage(n.prefix))}(t,o),I({},l,{effectiveType:or(n=o.getType(t)).name})):l;var c=o.getPackage(i.prefix);if(c){if(t=ir(i,c),n=o.getType(t),l=g(s.properties,(function(e){return!e.isVirtual&&!e.isReference&&!e.isAttribute&&n.hasType(e.type)})),l)return I({},l,{effectiveType:or(n).name})}else if(l=g(s.properties,(function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type})),l)return l;throw rr("unrecognized element <"+i.name+">")},dr.prototype.toString=function(){return"ElementDescriptor["+or(this.type).name+"]"},dr.prototype.valueHandler=function(e,t){return new ur(e,t)},dr.prototype.referenceHandler=function(e){return new hr(e,this.context)},dr.prototype.handler=function(e){return"Element"===e?new mr(this.model,e,this.context):new dr(this.model,e,this.context)},dr.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,Si(n=t.effectiveType||t.type))return this.valueHandler(t,i);var o=(r=t.isReference?this.referenceHandler(t).handleNode(e):this.handler(n).handleNode(e)).element;return void 0!==o&&(t.isMany?i.get(t.name).push(o):i.set(t.name,o),t.isReference?(I(o,{element:i}),this.context.addReference(o)):o.$parent=i),r},fr.prototype=Object.create(dr.prototype),fr.prototype.createElement=function(e){var t=e.name,n=Ci(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),s=o&&ir(n,o)||t;if(!r.hasType(s))throw rr("unexpected element <"+e.originalName+">");return dr.prototype.createElement.call(this,e)},mr.prototype=Object.create(pr.prototype),mr.prototype.createElement=function(e){var t=e.name,n=Ci(t).prefix,i=e.ns[n+"$uri"],r=e.attributes;return this.model.createAny(t,i,r)},mr.prototype.handleChild=function(e){var t=new mr(this.model,"Element",this.context).handleNode(e),n=this.element,i=t.element;return void 0!==i&&((n.$children=n.$children||[]).push(i),i.$parent=n),t},mr.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},gr.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof dr?(i=t,t={}):"string"==typeof t?(i=this.handler(t),t={}):"string"==typeof i&&(i=this.handler(i));var r=this.model,o=this.lax,s=new sr(I({},t,{rootHandler:i})),a=new Zi({proxy:!0}),l=function(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}();function c(e,t,n){var i=t(),r=i.line,o=i.column,a=i.data;"<"===a.charAt(0)&&-1!==a.indexOf(" ")&&(a=a.slice(0,a.indexOf(" "))+">");var l="unparsable content "+(a?a+" ":"")+"detected\n\tline: "+r+"\n\tcolumn: "+o+"\n\tnested error: "+e.message;if(n)return s.addWarning({message:l,error:e}),!0;throw rr(l)}function h(e,t){return c(e,t,!0)}i.context=s,l.push(i);var u=/^<\?xml /i,p=/ encoding="([^"]+)"/i,d=/^utf-8$/i;function f(e,t){try{l.peek().handleText(e)}catch(e){h(e,t)}}var m=r.getPackages().reduce((function(e,t){return e[t.uri]=t.prefix,e}),{"http://www.w3.org/XML/1998/namespace":"xml"});return a.ns(m).on("openTag",(function(e,t,n,i){var r=e.attrs||{},s=Object.keys(r).reduce((function(e,n){var i=t(r[n]);return e[n]=i,e}),{});!function(e,t){var n=l.peek();try{l.push(n.handleNode(e))}catch(e){c(e,t,o)&&l.push(new lr)}}({name:e.name,originalName:e.originalName,attributes:s,ns:e.ns},i)})).on("question",(function(e){if(u.test(e)){var t=p.exec(e),n=t&&t[1];n&&!d.test(n)&&s.addWarning({message:"unsupported document encoding <"+n+">, falling back to UTF-8"})}})).on("closeTag",(function(){l.pop().handleEnd()})).on("cdata",f).on("text",(function(e,t,n){!function(e,t){e.trim()&&f(e,t)}(t(e),n)})).on("error",c).on("warn",h),new Promise((function(t,n){var r;try{a.parse(e),function(){var e,t,n=s.elementsById,i=s.references;for(e=0;t=i[e];e++){var r=t.element,o=n[t.id],a=or(r).propertiesByName[t.property];if(o||s.addWarning({message:"unresolved reference <"+t.id+">",element:t.element,property:t.property,value:t.id}),a.isMany){var l=r.get(a.name),c=l.indexOf(t);-1===c&&(c=l.length),o?l[c]=o:l.splice(c,1)}else r.set(a.name,o)}}()}catch(e){r=e}var o=i.element;r||o||(r=rr("failed to parse document as <"+i.type.$descriptor.name+">"));var l=s.warnings,c=s.references,h=s.elementsById;return r?(r.warnings=l,n(r)):t({rootElement:o,elementsById:h,references:c,warnings:l})}))},gr.prototype.handler=function(e){return new fr(this.model,e)};var vr='<?xml version="1.0" encoding="UTF-8"?>\n',yr=/<|>|'|"|&|\n\r|\n/g,br=/<|>|&/g;function xr(e){var t={},n={},i={},r=[],o=[];this.byUri=function(t){return n[t]||e&&e.byUri(t)},this.add=function(e,t){n[e.uri]=e,t?r.push(e):o.push(e),this.mapPrefix(e.prefix,e.uri)},this.uriByPrefix=function(e){return t[e||"xmlns"]},this.mapPrefix=function(e,n){t[e||"xmlns"]=n},this.getNSKey=function(e){return void 0!==e.prefix?e.uri+"|"+e.prefix:e.uri},this.logUsed=function(t){var n=t.uri,r=this.getNSKey(t);i[r]=this.byUri(n),e&&e.logUsed(t)},this.getUsed=function(e){var t=this;return[].concat(r,o).filter((function(e){var n=t.getNSKey(e);return i[n]}))}}function wr(e,t){return Ki(t)?function(e){return e.charAt(0).toLowerCase()+e.slice(1)}(e):e}function _r(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function Or(e){return d(e)?e:(e.prefix?e.prefix+":":"")+e.localName}var Er={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},kr={"<":"lt",">":"gt","&":"amp"};function Sr(e,t,n){return(e=d(e)?e:""+e).replace(t,(function(e){return"&"+n[e]+";"}))}function Cr(e){this.tagName=e}function Pr(){}function $r(e){this.tagName=e}function Ar(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function Rr(e,t){Ar.call(this,e,t)}function Tr(){this.value="",this.write=function(e){this.value+=e}}function Mr(e,t){var n=[""];this.append=function(t){return e.write(t),this},this.appendNewLine=function(){return t&&e.write("\n"),this},this.appendIndent=function(){return t&&e.write(n.join(" ")),this},this.indent=function(){return n.push(""),this},this.unindent=function(){return n.pop(),this}}function Dr(e){return e=I({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new Tr,r=new Mr(i,e.format);if(e.preamble&&r.append(vr),(new Ar).build(t).serializeTo(r),!n)return i.value}}}function Br(e,t){Mi.call(this,e,t)}Cr.prototype.build=function(e){return this.element=e,this},Cr.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},Pr.prototype.serializeValue=Pr.prototype.serializeTo=function(e){e.append(this.escape?Sr(this.value,br,kr):this.value)},Pr.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(br)&&(this.escape=!0),this},_r($r,Pr),$r.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},Ar.prototype.build=function(e){this.element=e;var t,n,i=e.$descriptor,r=this.propertyDescriptor,o=i.isGeneric;return t=o?this.parseGeneric(e):this.parseNsAttributes(e),this.ns=r?this.nsPropertyTagName(r):this.nsTagName(i),this.tagName=this.addTagName(this.ns),o||(n=function(e){return y(e.$descriptor.properties,(function(t){var n=t.name;if(t.isVirtual)return!1;if(!m(e,n))return!1;var i=e[n];return i!==t.default&&null!==i&&(!t.isMany||i.length)}))}(e),this.parseAttributes(y(n,(function(e){return e.isAttr}))),this.parseContainments(function(e){return y(e,(function(e){return!e.isAttr}))}(n))),this.parseGenericAttributes(e,t),this},Ar.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?I({localName:t.ns.localName},e):I({localName:wr(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},Ar.prototype.nsPropertyTagName=function(e){return function(e,t){return I({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},Ar.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},Ar.prototype.nsAttributeName=function(e){var t;if(t=d(e)?Ci(e):e.ns,e.inherited)return{localName:t.localName};var n=this.logNamespaceUsed(t);return this.getNamespaces().logUsed(n),this.isLocalNs(n)?{localName:t.localName}:I({localName:t.localName},n)},Ar.prototype.parseGeneric=function(e){var t=this,n=this.body,i=[];return b(e,(function(r,o){"$body"===o?n.push((new Pr).build({type:"String"},r)):"$children"===o?b(r,(function(e){n.push(new Ar(t).build(e))})):0!==o.indexOf("$")&&t.parseNsAttribute(e,o,r)&&i.push({name:o,value:r})})),i},Ar.prototype.parseNsAttribute=function(e,t,n){var i,r=e.$model,o=Ci(t);if("xmlns"===o.prefix&&(i={prefix:o.localName,uri:n}),o.prefix||"xmlns"!==o.localName||(i={uri:n}),!i)return{name:t,value:n};if(r&&r.getPackage(n))this.logNamespace(i,!0,!0);else{var s=this.logNamespaceUsed(i,!0);this.getNamespaces().logUsed(s)}},Ar.prototype.parseNsAttributes=function(e,t){var n=this,i=e.$attrs,r=[];return b(i,(function(t,i){var o=n.parseNsAttribute(e,i,t);o&&r.push(o)})),r},Ar.prototype.parseGenericAttributes=function(e,t){var n=this;b(t,(function(t){if(t.name!==er)try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){console.warn("missing namespace information for ",t.name,"=",t.value,"on",e,n)}}))},Ar.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;b(e,(function(e){var r=i.get(e.name),o=e.isReference;if(e.isMany||(r=[r]),e.isBody)n.push((new Pr).build(e,r[0]));else if(Si(e.type))b(r,(function(i){n.push(new $r(t.addTagName(t.nsPropertyTagName(e))).build(e,i))}));else if(o)b(r,(function(i){n.push(new Cr(t.addTagName(t.nsPropertyTagName(e))).build(i))}));else{var s=nr(e),a=function(e){return"property"===tr(e)}(e);b(r,(function(i){var r;r=s?new Rr(t,e):a?new Ar(t,e):new Ar(t),n.push(r.build(i))}))}}))},Ar.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new xr(t):n=t),n},Ar.prototype.logNamespace=function(e,t,n){var i=this.getNamespaces(n),r=e.uri,o=e.prefix;return i.byUri(r)&&!n||i.add(e,t),i.mapPrefix(o,r),e},Ar.prototype.logNamespaceUsed=function(e,t){var n,i,r,o=this.element.$model,s=this.getNamespaces(t),a=e.prefix,l=e.uri;if(!a&&!l)return{localName:e.localName};if(r=Ji[a]||o&&(o.getPackage(a)||{}).uri,!(l=l||r||s.uriByPrefix(a)))throw new Error("no namespace uri given for prefix <"+a+">");if(!(e=s.byUri(l))){for(n=a,i=1;s.uriByPrefix(n);)n=a+"_"+i++;e=this.logNamespace({prefix:n,uri:l},r===l)}return a&&s.mapPrefix(a,l),e},Ar.prototype.parseAttributes=function(e){var t=this,n=this.element;b(e,(function(e){var i=n.get(e.name);if(e.isReference)if(e.isMany){var r=[];b(i,(function(e){r.push(e.id)})),i=r.join(" ")}else i=i.id;t.addAttribute(t.nsAttributeName(e),i)}))},Ar.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),Or(e)},Ar.prototype.addAttribute=function(e,t){var n=this.attrs;d(t)&&(t=Sr(t,yr,Er));var i=v(n,(function(t){return t.name.localName===e.localName&&t.name.uri===e.uri&&t.name.prefix===e.prefix})),r={name:e,value:t};-1!==i?n.splice(i,1,r):n.push(r)},Ar.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return e.getUsed().filter((function(e){return"xml"!==e.prefix})).map((function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}}))}(n).concat(t)),b(t,(function(t){e.append(" ").append(Or(t.name)).append('="').append(t.value).append('"')}))},Ar.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==Pr;e.appendIndent().append("<"+this.tagName),this.serializeAttributes(e),e.append(t?">":" />"),t&&(n&&e.appendNewLine().indent(),b(this.body,(function(t){t.serializeTo(e)})),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()},_r(Rr,Ar),Rr.prototype.parseNsAttributes=function(e){var t=Ar.prototype.parseNsAttributes.call(this,e),n=e.$descriptor;if(n.name===this.propertyDescriptor.type)return t;var i=this.typeNs=this.nsTagName(n);this.getNamespaces().logUsed(this.typeNs);var r=e.$model.getPackage(i.uri),o=r.xml&&r.xml.typePrefix||"";return this.addAttribute(this.nsAttributeName(er),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},Rr.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},Br.prototype=Object.create(Mi.prototype),Br.prototype.fromXML=function(e,t,n){d(t)||(n=t,t="bpmn:Definitions");var i=new gr(I({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},Br.prototype.toXML=function(e,t){var n=new Dr(t);return new Promise((function(t,i){try{return t({xml:n.toXML(e)})}catch(e){return i(e)}}))};var Lr={bpmn:{name:"BPMN20",uri:"http://www.omg.org/spec/BPMN/20100524/MODEL",prefix:"bpmn",associations:[],types:[{name:"Interface",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"operations",type:"Operation",isMany:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"Operation",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"inMessageRef",type:"Message",isReference:!0},{name:"outMessageRef",type:"Message",isReference:!0},{name:"errorRef",type:"Error",isMany:!0,isReference:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"EndPoint",superClass:["RootElement"]},{name:"Auditing",superClass:["BaseElement"]},{name:"GlobalTask",superClass:["CallableElement"],properties:[{name:"resources",type:"ResourceRole",isMany:!0}]},{name:"Monitoring",superClass:["BaseElement"]},{name:"Performer",superClass:["ResourceRole"]},{name:"Process",superClass:["FlowElementsContainer","CallableElement"],properties:[{name:"processType",type:"ProcessType",isAttr:!0},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"properties",type:"Property",isMany:!0},{name:"laneSets",isMany:!0,replaces:"FlowElementsContainer#laneSets",type:"LaneSet"},{name:"flowElements",isMany:!0,replaces:"FlowElementsContainer#flowElements",type:"FlowElement"},{name:"artifacts",type:"Artifact",isMany:!0},{name:"resources",type:"ResourceRole",isMany:!0},{name:"correlationSubscriptions",type:"CorrelationSubscription",isMany:!0},{name:"supports",type:"Process",isMany:!0,isReference:!0},{name:"definitionalCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"isExecutable",isAttr:!0,type:"Boolean"}]},{name:"LaneSet",superClass:["BaseElement"],properties:[{name:"lanes",type:"Lane",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Lane",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"partitionElementRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"partitionElement",type:"BaseElement"},{name:"flowNodeRef",type:"FlowNode",isMany:!0,isReference:!0},{name:"childLaneSet",type:"LaneSet",xml:{serialize:"xsi:type"}}]},{name:"GlobalManualTask",superClass:["GlobalTask"]},{name:"ManualTask",superClass:["Task"]},{name:"UserTask",superClass:["Task"],properties:[{name:"renderings",type:"Rendering",isMany:!0},{name:"implementation",isAttr:!0,type:"String"}]},{name:"Rendering",superClass:["BaseElement"]},{name:"HumanPerformer",superClass:["Performer"]},{name:"PotentialOwner",superClass:["HumanPerformer"]},{name:"GlobalUserTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"renderings",type:"Rendering",isMany:!0}]},{name:"Gateway",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"gatewayDirection",type:"GatewayDirection",default:"Unspecified",isAttr:!0}]},{name:"EventBasedGateway",superClass:["Gateway"],properties:[{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"eventGatewayType",type:"EventBasedGatewayType",isAttr:!0,default:"Exclusive"}]},{name:"ComplexGateway",superClass:["Gateway"],properties:[{name:"activationCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ExclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"InclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ParallelGateway",superClass:["Gateway"]},{name:"RootElement",isAbstract:!0,superClass:["BaseElement"]},{name:"Relationship",superClass:["BaseElement"],properties:[{name:"type",isAttr:!0,type:"String"},{name:"direction",type:"RelationshipDirection",isAttr:!0},{name:"source",isMany:!0,isReference:!0,type:"Element"},{name:"target",isMany:!0,isReference:!0,type:"Element"}]},{name:"BaseElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,type:"String",isId:!0},{name:"documentation",type:"Documentation",isMany:!0},{name:"extensionDefinitions",type:"ExtensionDefinition",isMany:!0,isReference:!0},{name:"extensionElements",type:"ExtensionElements"}]},{name:"Extension",properties:[{name:"mustUnderstand",default:!1,isAttr:!0,type:"Boolean"},{name:"definition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"extensionAttributeDefinitions",type:"ExtensionAttributeDefinition",isMany:!0}]},{name:"ExtensionAttributeDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"type",isAttr:!0,type:"String"},{name:"isReference",default:!1,isAttr:!0,type:"Boolean"},{name:"extensionDefinition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionElements",properties:[{name:"valueRef",isAttr:!0,isReference:!0,type:"Element"},{name:"values",type:"Element",isMany:!0},{name:"extensionAttributeDefinition",type:"ExtensionAttributeDefinition",isAttr:!0,isReference:!0}]},{name:"Documentation",superClass:["BaseElement"],properties:[{name:"text",type:"String",isBody:!0},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Event",isAbstract:!0,superClass:["FlowNode","InteractionNode"],properties:[{name:"properties",type:"Property",isMany:!0}]},{name:"IntermediateCatchEvent",superClass:["CatchEvent"]},{name:"IntermediateThrowEvent",superClass:["ThrowEvent"]},{name:"EndEvent",superClass:["ThrowEvent"]},{name:"StartEvent",superClass:["CatchEvent"],properties:[{name:"isInterrupting",default:!0,isAttr:!0,type:"Boolean"}]},{name:"ThrowEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"inputSet",type:"InputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"CatchEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"parallelMultiple",isAttr:!0,type:"Boolean",default:!1},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"outputSet",type:"OutputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"BoundaryEvent",superClass:["CatchEvent"],properties:[{name:"cancelActivity",default:!0,isAttr:!0,type:"Boolean"},{name:"attachedToRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"EventDefinition",isAbstract:!0,superClass:["RootElement"]},{name:"CancelEventDefinition",superClass:["EventDefinition"]},{name:"ErrorEventDefinition",superClass:["EventDefinition"],properties:[{name:"errorRef",type:"Error",isAttr:!0,isReference:!0}]},{name:"TerminateEventDefinition",superClass:["EventDefinition"]},{name:"EscalationEventDefinition",superClass:["EventDefinition"],properties:[{name:"escalationRef",type:"Escalation",isAttr:!0,isReference:!0}]},{name:"Escalation",properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"escalationCode",isAttr:!0,type:"String"}],superClass:["RootElement"]},{name:"CompensateEventDefinition",superClass:["EventDefinition"],properties:[{name:"waitForCompletion",isAttr:!0,type:"Boolean",default:!0},{name:"activityRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"TimerEventDefinition",superClass:["EventDefinition"],properties:[{name:"timeDate",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeCycle",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeDuration",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"LinkEventDefinition",superClass:["EventDefinition"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"target",type:"LinkEventDefinition",isReference:!0},{name:"source",type:"LinkEventDefinition",isMany:!0,isReference:!0}]},{name:"MessageEventDefinition",superClass:["EventDefinition"],properties:[{name:"messageRef",type:"Message",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"ConditionalEventDefinition",superClass:["EventDefinition"],properties:[{name:"condition",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"SignalEventDefinition",superClass:["EventDefinition"],properties:[{name:"signalRef",type:"Signal",isAttr:!0,isReference:!0}]},{name:"Signal",superClass:["RootElement"],properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"ImplicitThrowEvent",superClass:["ThrowEvent"]},{name:"DataState",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"ItemAwareElement",superClass:["BaseElement"],properties:[{name:"itemSubjectRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"dataState",type:"DataState"}]},{name:"DataAssociation",superClass:["BaseElement"],properties:[{name:"sourceRef",type:"ItemAwareElement",isMany:!0,isReference:!0},{name:"targetRef",type:"ItemAwareElement",isReference:!0},{name:"transformation",type:"FormalExpression",xml:{serialize:"property"}},{name:"assignment",type:"Assignment",isMany:!0}]},{name:"DataInput",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"inputSetRef",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"inputSetWithOptional",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"inputSetWithWhileExecuting",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"DataOutput",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"outputSetRef",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"outputSetWithOptional",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"outputSetWithWhileExecuting",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"InputSet",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"dataInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"optionalInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"whileExecutingInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"outputSetRefs",type:"OutputSet",isMany:!0,isReference:!0}]},{name:"OutputSet",superClass:["BaseElement"],properties:[{name:"dataOutputRefs",type:"DataOutput",isMany:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"inputSetRefs",type:"InputSet",isMany:!0,isReference:!0},{name:"optionalOutputRefs",type:"DataOutput",isMany:!0,isReference:!0},{name:"whileExecutingOutputRefs",type:"DataOutput",isMany:!0,isReference:!0}]},{name:"Property",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"DataInputAssociation",superClass:["DataAssociation"]},{name:"DataOutputAssociation",superClass:["DataAssociation"]},{name:"InputOutputSpecification",superClass:["BaseElement"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"inputSets",type:"InputSet",isMany:!0},{name:"outputSets",type:"OutputSet",isMany:!0}]},{name:"DataObject",superClass:["FlowElement","ItemAwareElement"],properties:[{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"}]},{name:"InputOutputBinding",properties:[{name:"inputDataRef",type:"InputSet",isAttr:!0,isReference:!0},{name:"outputDataRef",type:"OutputSet",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"Assignment",superClass:["BaseElement"],properties:[{name:"from",type:"Expression",xml:{serialize:"xsi:type"}},{name:"to",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"DataStore",superClass:["RootElement","ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"capacity",isAttr:!0,type:"Integer"},{name:"isUnlimited",default:!0,isAttr:!0,type:"Boolean"}]},{name:"DataStoreReference",superClass:["ItemAwareElement","FlowElement"],properties:[{name:"dataStoreRef",type:"DataStore",isAttr:!0,isReference:!0}]},{name:"DataObjectReference",superClass:["ItemAwareElement","FlowElement"],properties:[{name:"dataObjectRef",type:"DataObject",isAttr:!0,isReference:!0}]},{name:"ConversationLink",superClass:["BaseElement"],properties:[{name:"sourceRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"ConversationAssociation",superClass:["BaseElement"],properties:[{name:"innerConversationNodeRef",type:"ConversationNode",isAttr:!0,isReference:!0},{name:"outerConversationNodeRef",type:"ConversationNode",isAttr:!0,isReference:!0}]},{name:"CallConversation",superClass:["ConversationNode"],properties:[{name:"calledCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0}]},{name:"Conversation",superClass:["ConversationNode"]},{name:"SubConversation",superClass:["ConversationNode"],properties:[{name:"conversationNodes",type:"ConversationNode",isMany:!0}]},{name:"ConversationNode",isAbstract:!0,superClass:["InteractionNode","BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0},{name:"messageFlowRefs",type:"MessageFlow",isMany:!0,isReference:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0}]},{name:"GlobalConversation",superClass:["Collaboration"]},{name:"PartnerEntity",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0}]},{name:"PartnerRole",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0}]},{name:"CorrelationProperty",superClass:["RootElement"],properties:[{name:"correlationPropertyRetrievalExpression",type:"CorrelationPropertyRetrievalExpression",isMany:!0},{name:"name",isAttr:!0,type:"String"},{name:"type",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"Error",superClass:["RootElement"],properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"errorCode",isAttr:!0,type:"String"}]},{name:"CorrelationKey",superClass:["BaseElement"],properties:[{name:"correlationPropertyRef",type:"CorrelationProperty",isMany:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Expression",superClass:["BaseElement"],isAbstract:!1,properties:[{name:"body",isBody:!0,type:"String"}]},{name:"FormalExpression",superClass:["Expression"],properties:[{name:"language",isAttr:!0,type:"String"},{name:"evaluatesToTypeRef",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"Message",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"itemRef",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"ItemDefinition",superClass:["RootElement"],properties:[{name:"itemKind",type:"ItemKind",isAttr:!0},{name:"structureRef",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"import",type:"Import",isAttr:!0,isReference:!0}]},{name:"FlowElement",isAbstract:!0,superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"categoryValueRef",type:"CategoryValue",isMany:!0,isReference:!0}]},{name:"SequenceFlow",superClass:["FlowElement"],properties:[{name:"isImmediate",isAttr:!0,type:"Boolean"},{name:"conditionExpression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"sourceRef",type:"FlowNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"FlowNode",isAttr:!0,isReference:!0}]},{name:"FlowElementsContainer",isAbstract:!0,superClass:["BaseElement"],properties:[{name:"laneSets",type:"LaneSet",isMany:!0},{name:"flowElements",type:"FlowElement",isMany:!0}]},{name:"CallableElement",isAbstract:!0,superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"ioSpecification",type:"InputOutputSpecification",xml:{serialize:"property"}},{name:"supportedInterfaceRef",type:"Interface",isMany:!0,isReference:!0},{name:"ioBinding",type:"InputOutputBinding",isMany:!0,xml:{serialize:"property"}}]},{name:"FlowNode",isAbstract:!0,superClass:["FlowElement"],properties:[{name:"incoming",type:"SequenceFlow",isMany:!0,isReference:!0},{name:"outgoing",type:"SequenceFlow",isMany:!0,isReference:!0},{name:"lanes",type:"Lane",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"CorrelationPropertyRetrievalExpression",superClass:["BaseElement"],properties:[{name:"messagePath",type:"FormalExpression"},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"CorrelationPropertyBinding",superClass:["BaseElement"],properties:[{name:"dataPath",type:"FormalExpression"},{name:"correlationPropertyRef",type:"CorrelationProperty",isAttr:!0,isReference:!0}]},{name:"Resource",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"resourceParameters",type:"ResourceParameter",isMany:!0}]},{name:"ResourceParameter",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isRequired",isAttr:!0,type:"Boolean"},{name:"type",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"CorrelationSubscription",superClass:["BaseElement"],properties:[{name:"correlationKeyRef",type:"CorrelationKey",isAttr:!0,isReference:!0},{name:"correlationPropertyBinding",type:"CorrelationPropertyBinding",isMany:!0}]},{name:"MessageFlow",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"sourceRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"MessageFlowAssociation",superClass:["BaseElement"],properties:[{name:"innerMessageFlowRef",type:"MessageFlow",isAttr:!0,isReference:!0},{name:"outerMessageFlowRef",type:"MessageFlow",isAttr:!0,isReference:!0}]},{name:"InteractionNode",isAbstract:!0,properties:[{name:"incomingConversationLinks",type:"ConversationLink",isMany:!0,isVirtual:!0,isReference:!0},{name:"outgoingConversationLinks",type:"ConversationLink",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"Participant",superClass:["InteractionNode","BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"interfaceRef",type:"Interface",isMany:!0,isReference:!0},{name:"participantMultiplicity",type:"ParticipantMultiplicity"},{name:"endPointRefs",type:"EndPoint",isMany:!0,isReference:!0},{name:"processRef",type:"Process",isAttr:!0,isReference:!0}]},{name:"ParticipantAssociation",superClass:["BaseElement"],properties:[{name:"innerParticipantRef",type:"Participant",isAttr:!0,isReference:!0},{name:"outerParticipantRef",type:"Participant",isAttr:!0,isReference:!0}]},{name:"ParticipantMultiplicity",properties:[{name:"minimum",default:0,isAttr:!0,type:"Integer"},{name:"maximum",default:1,isAttr:!0,type:"Integer"}],superClass:["BaseElement"]},{name:"Collaboration",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"participants",type:"Participant",isMany:!0},{name:"messageFlows",type:"MessageFlow",isMany:!0},{name:"artifacts",type:"Artifact",isMany:!0},{name:"conversations",type:"ConversationNode",isMany:!0},{name:"conversationAssociations",type:"ConversationAssociation"},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0},{name:"messageFlowAssociations",type:"MessageFlowAssociation",isMany:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0},{name:"choreographyRef",type:"Choreography",isMany:!0,isReference:!0},{name:"conversationLinks",type:"ConversationLink",isMany:!0}]},{name:"ChoreographyActivity",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"participantRef",type:"Participant",isMany:!0,isReference:!0},{name:"initiatingParticipantRef",type:"Participant",isAttr:!0,isReference:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0},{name:"loopType",type:"ChoreographyLoopType",default:"None",isAttr:!0}]},{name:"CallChoreography",superClass:["ChoreographyActivity"],properties:[{name:"calledChoreographyRef",type:"Choreography",isAttr:!0,isReference:!0},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0}]},{name:"SubChoreography",superClass:["ChoreographyActivity","FlowElementsContainer"],properties:[{name:"artifacts",type:"Artifact",isMany:!0}]},{name:"ChoreographyTask",superClass:["ChoreographyActivity"],properties:[{name:"messageFlowRef",type:"MessageFlow",isMany:!0,isReference:!0}]},{name:"Choreography",superClass:["Collaboration","FlowElementsContainer"]},{name:"GlobalChoreographyTask",superClass:["Choreography"],properties:[{name:"initiatingParticipantRef",type:"Participant",isAttr:!0,isReference:!0}]},{name:"TextAnnotation",superClass:["Artifact"],properties:[{name:"text",type:"String"},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Group",superClass:["Artifact"],properties:[{name:"categoryValueRef",type:"CategoryValue",isAttr:!0,isReference:!0}]},{name:"Association",superClass:["Artifact"],properties:[{name:"associationDirection",type:"AssociationDirection",isAttr:!0},{name:"sourceRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"targetRef",type:"BaseElement",isAttr:!0,isReference:!0}]},{name:"Category",superClass:["RootElement"],properties:[{name:"categoryValue",type:"CategoryValue",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Artifact",isAbstract:!0,superClass:["BaseElement"]},{name:"CategoryValue",superClass:["BaseElement"],properties:[{name:"categorizedFlowElements",type:"FlowElement",isMany:!0,isVirtual:!0,isReference:!0},{name:"value",isAttr:!0,type:"String"}]},{name:"Activity",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"isForCompensation",default:!1,isAttr:!0,type:"Boolean"},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0},{name:"ioSpecification",type:"InputOutputSpecification",xml:{serialize:"property"}},{name:"boundaryEventRefs",type:"BoundaryEvent",isMany:!0,isReference:!0},{name:"properties",type:"Property",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"startQuantity",default:1,isAttr:!0,type:"Integer"},{name:"resources",type:"ResourceRole",isMany:!0},{name:"completionQuantity",default:1,isAttr:!0,type:"Integer"},{name:"loopCharacteristics",type:"LoopCharacteristics"}]},{name:"ServiceTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"SubProcess",superClass:["Activity","FlowElementsContainer","InteractionNode"],properties:[{name:"triggeredByEvent",default:!1,isAttr:!0,type:"Boolean"},{name:"artifacts",type:"Artifact",isMany:!0}]},{name:"LoopCharacteristics",isAbstract:!0,superClass:["BaseElement"]},{name:"MultiInstanceLoopCharacteristics",superClass:["LoopCharacteristics"],properties:[{name:"isSequential",default:!1,isAttr:!0,type:"Boolean"},{name:"behavior",type:"MultiInstanceBehavior",default:"All",isAttr:!0},{name:"loopCardinality",type:"Expression",xml:{serialize:"xsi:type"}},{name:"loopDataInputRef",type:"ItemAwareElement",isReference:!0},{name:"loopDataOutputRef",type:"ItemAwareElement",isReference:!0},{name:"inputDataItem",type:"DataInput",xml:{serialize:"property"}},{name:"outputDataItem",type:"DataOutput",xml:{serialize:"property"}},{name:"complexBehaviorDefinition",type:"ComplexBehaviorDefinition",isMany:!0},{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"oneBehaviorEventRef",type:"EventDefinition",isAttr:!0,isReference:!0},{name:"noneBehaviorEventRef",type:"EventDefinition",isAttr:!0,isReference:!0}]},{name:"StandardLoopCharacteristics",superClass:["LoopCharacteristics"],properties:[{name:"testBefore",default:!1,isAttr:!0,type:"Boolean"},{name:"loopCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"loopMaximum",type:"Integer",isAttr:!0}]},{name:"CallActivity",superClass:["Activity","InteractionNode"],properties:[{name:"calledElement",type:"String",isAttr:!0}]},{name:"Task",superClass:["Activity","InteractionNode"]},{name:"SendTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ReceiveTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ScriptTask",superClass:["Task"],properties:[{name:"scriptFormat",isAttr:!0,type:"String"},{name:"script",type:"String"}]},{name:"BusinessRuleTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"AdHocSubProcess",superClass:["SubProcess"],properties:[{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"ordering",type:"AdHocOrdering",isAttr:!0},{name:"cancelRemainingInstances",default:!0,isAttr:!0,type:"Boolean"}]},{name:"Transaction",superClass:["SubProcess"],properties:[{name:"protocol",isAttr:!0,type:"String"},{name:"method",isAttr:!0,type:"String"}]},{name:"GlobalScriptTask",superClass:["GlobalTask"],properties:[{name:"scriptLanguage",isAttr:!0,type:"String"},{name:"script",isAttr:!0,type:"String"}]},{name:"GlobalBusinessRuleTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"ComplexBehaviorDefinition",superClass:["BaseElement"],properties:[{name:"condition",type:"FormalExpression"},{name:"event",type:"ImplicitThrowEvent"}]},{name:"ResourceRole",superClass:["BaseElement"],properties:[{name:"resourceRef",type:"Resource",isReference:!0},{name:"resourceParameterBindings",type:"ResourceParameterBinding",isMany:!0},{name:"resourceAssignmentExpression",type:"ResourceAssignmentExpression"},{name:"name",isAttr:!0,type:"String"}]},{name:"ResourceParameterBinding",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"parameterRef",type:"ResourceParameter",isAttr:!0,isReference:!0}],superClass:["BaseElement"]},{name:"ResourceAssignmentExpression",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}}],superClass:["BaseElement"]},{name:"Import",properties:[{name:"importType",isAttr:!0,type:"String"},{name:"location",isAttr:!0,type:"String"},{name:"namespace",isAttr:!0,type:"String"}]},{name:"Definitions",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"targetNamespace",isAttr:!0,type:"String"},{name:"expressionLanguage",default:"http://www.w3.org/1999/XPath",isAttr:!0,type:"String"},{name:"typeLanguage",default:"http://www.w3.org/2001/XMLSchema",isAttr:!0,type:"String"},{name:"imports",type:"Import",isMany:!0},{name:"extensions",type:"Extension",isMany:!0},{name:"rootElements",type:"RootElement",isMany:!0},{name:"diagrams",isMany:!0,type:"bpmndi:BPMNDiagram"},{name:"exporter",isAttr:!0,type:"String"},{name:"relationships",type:"Relationship",isMany:!0},{name:"exporterVersion",isAttr:!0,type:"String"}]}],enumerations:[{name:"ProcessType",literalValues:[{name:"None"},{name:"Public"},{name:"Private"}]},{name:"GatewayDirection",literalValues:[{name:"Unspecified"},{name:"Converging"},{name:"Diverging"},{name:"Mixed"}]},{name:"EventBasedGatewayType",literalValues:[{name:"Parallel"},{name:"Exclusive"}]},{name:"RelationshipDirection",literalValues:[{name:"None"},{name:"Forward"},{name:"Backward"},{name:"Both"}]},{name:"ItemKind",literalValues:[{name:"Physical"},{name:"Information"}]},{name:"ChoreographyLoopType",literalValues:[{name:"None"},{name:"Standard"},{name:"MultiInstanceSequential"},{name:"MultiInstanceParallel"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"MultiInstanceBehavior",literalValues:[{name:"None"},{name:"One"},{name:"All"},{name:"Complex"}]},{name:"AdHocOrdering",literalValues:[{name:"Parallel"},{name:"Sequential"}]}],xml:{tagAlias:"lowerCase",typePrefix:"t"}},bpmndi:{name:"BPMNDI",uri:"http://www.omg.org/spec/BPMN/20100524/DI",prefix:"bpmndi",types:[{name:"BPMNDiagram",properties:[{name:"plane",type:"BPMNPlane",redefines:"di:Diagram#rootElement"},{name:"labelStyle",type:"BPMNLabelStyle",isMany:!0}],superClass:["di:Diagram"]},{name:"BPMNPlane",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"}],superClass:["di:Plane"]},{name:"BPMNShape",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"isHorizontal",isAttr:!0,type:"Boolean"},{name:"isExpanded",isAttr:!0,type:"Boolean"},{name:"isMarkerVisible",isAttr:!0,type:"Boolean"},{name:"label",type:"BPMNLabel"},{name:"isMessageVisible",isAttr:!0,type:"Boolean"},{name:"participantBandKind",type:"ParticipantBandKind",isAttr:!0},{name:"choreographyActivityShape",type:"BPMNShape",isAttr:!0,isReference:!0}],superClass:["di:LabeledShape"]},{name:"BPMNEdge",properties:[{name:"label",type:"BPMNLabel"},{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"sourceElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#source"},{name:"targetElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#target"},{name:"messageVisibleKind",type:"MessageVisibleKind",isAttr:!0,default:"initiating"}],superClass:["di:LabeledEdge"]},{name:"BPMNLabel",properties:[{name:"labelStyle",type:"BPMNLabelStyle",isAttr:!0,isReference:!0,redefines:"di:DiagramElement#style"}],superClass:["di:Label"]},{name:"BPMNLabelStyle",properties:[{name:"font",type:"dc:Font"}],superClass:["di:Style"]}],enumerations:[{name:"ParticipantBandKind",literalValues:[{name:"top_initiating"},{name:"middle_initiating"},{name:"bottom_initiating"},{name:"top_non_initiating"},{name:"middle_non_initiating"},{name:"bottom_non_initiating"}]},{name:"MessageVisibleKind",literalValues:[{name:"initiating"},{name:"non_initiating"}]}],associations:[]},dc:{name:"DC",uri:"http://www.omg.org/spec/DD/20100524/DC",prefix:"dc",types:[{name:"Boolean"},{name:"Integer"},{name:"Real"},{name:"String"},{name:"Font",properties:[{name:"name",type:"String",isAttr:!0},{name:"size",type:"Real",isAttr:!0},{name:"isBold",type:"Boolean",isAttr:!0},{name:"isItalic",type:"Boolean",isAttr:!0},{name:"isUnderline",type:"Boolean",isAttr:!0},{name:"isStrikeThrough",type:"Boolean",isAttr:!0}]},{name:"Point",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0}]},{name:"Bounds",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0},{name:"width",type:"Real",isAttr:!0},{name:"height",type:"Real",isAttr:!0}]}],associations:[]},di:{name:"DI",uri:"http://www.omg.org/spec/DD/20100524/DI",prefix:"di",types:[{name:"DiagramElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"extension",type:"Extension"},{name:"owningDiagram",type:"Diagram",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"owningElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"modelElement",isReadOnly:!0,isVirtual:!0,isReference:!0,type:"Element"},{name:"style",type:"Style",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"ownedElement",type:"DiagramElement",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Node",isAbstract:!0,superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,superClass:["DiagramElement"],properties:[{name:"source",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"target",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"waypoint",isUnique:!1,isMany:!0,type:"dc:Point",xml:{serialize:"xsi:type"}}]},{name:"Diagram",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"rootElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0},{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"},{name:"ownedStyle",type:"Style",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Shape",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Plane",isAbstract:!0,superClass:["Node"],properties:[{name:"planeElement",type:"DiagramElement",subsettedProperty:"DiagramElement-ownedElement",isMany:!0}]},{name:"LabeledEdge",isAbstract:!0,superClass:["Edge"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"LabeledShape",isAbstract:!0,superClass:["Shape"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"Label",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],associations:[],xml:{tagAlias:"lowerCase"}},bioc:{name:"bpmn.io colors for BPMN",uri:"http://bpmn.io/schema/bpmn/biocolor/1.0",prefix:"bioc",types:[{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]},color:{name:"BPMN in Color",uri:"http://www.omg.org/spec/BPMN/non-normative/color/1.0",prefix:"color",types:[{name:"ColoredLabel",extends:["bpmndi:BPMNLabel"],properties:[{name:"color",isAttr:!0,type:"String"}]},{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"background-color",isAttr:!0,type:"String"},{name:"border-color",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"border-color",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]}};function Nr(e,t){return new Br(I({},Lr,e),t)}function jr(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function zr(e){return function(){if(!window.Promise)throw new Error("Promises is not supported in this environment. Please polyfill Promise.");var t=arguments.length;if(!(t>=1&&p(arguments[t-1])))return e.apply(this,arguments);var n=arguments[t-1];console.warn(new Error("Passing callbacks to "+e.name+" is deprecated and will be removed in a future major release. Please switch to promises: https://bpmn.io/l/moving-to-promises.html"));var i=Array.prototype.slice.call(arguments,0,-1);e.apply(this,i).then((function(e){var t=Object.keys(e)[0];return n(null,e[t])}),(function(e){return n(e,e.warnings)}))}}var Ir="Tried to access di from the businessObject. The di is available through the diagram element only. For more information, see https://github.com/bpmn-io/bpmn-js/issues/1472";function Xr(e){m(e,"di")||Object.defineProperty(e,"di",{enumerable:!1,get:function(){throw new Error(Ir)}})}function Qr(e,t){return e.$instanceOf(t)}function Fr(e,t){var n={},i=[],r={};function o(e,t){return function(n){e(n,t)}}function s(e){n[e.id]=e}function a(n,i){try{var o=r[n.id]&&function(n,i){if(n.gfx)throw new Error(t("already rendered {element}",{element:jr(n)}));return e.element(n,r[n.id],i)}(n,i);return s(n),o}catch(e){l(e.message,{element:n,error:e}),console.error(t("failed to import {element}",{element:jr(n)})),console.error(e)}}function l(t,n){e.error(t,n)}var c=this.registerDi=function(e){var n=e.bpmnElement;n?r[n.id]?l(t("multiple DI elements defined for {element}",{element:jr(n)}),{element:n}):(r[n.id]=e,Xr(n)):l(t("no bpmnElement referenced in {element}",{element:jr(e)}),{element:e})};function h(e){var t;t=e.plane,c(t),b(t.planeElement,u)}function u(e){c(e)}this.handleDefinitions=function(s,a){var u=s.diagrams;if(a&&-1===u.indexOf(a))throw new Error(t("diagram not part of bpmn:Definitions"));if(!a&&u&&u.length&&(a=u[0]),!a)throw new Error(t("no diagram to display"));r={},h(a);var m=a.plane;if(!m)throw new Error(t("no plane for {element}",{element:jr(a)}));var v=m.bpmnElement;if(!v){if(v=function(e){return g(e.rootElements,(function(e){return Qr(e,"bpmn:Process")||Qr(e,"bpmn:Collaboration")}))}(s),!v)throw new Error(t("no process or collaboration to display"));l(t("correcting missing bpmnElement on {plane} to {rootElement}",{plane:jr(m),rootElement:jr(v)})),m.bpmnElement=v,c(m)}var x,w,O=function(t,n){return e.root(t,r[t.id],n)}(v,m);if(Qr(v,"bpmn:Process")||Qr(v,"bpmn:SubProcess"))d(v,O);else{if(!Qr(v,"bpmn:Collaboration"))throw new Error(t("unsupported bpmnElement for {plane}: {rootElement}",{plane:jr(m),rootElement:jr(v)}));w=O,b((x=v).participants,o(A,w)),_(x.artifacts,w),i.push((function(){!function(e,t){b(e,o(f,t))}(x.messageFlows,w)})),function(e,t){var i=y(e,(function(e){return!n[e.id]&&Qr(e,"bpmn:Process")&&e.laneSets}));i.forEach(o(d,t))}(s.rootElements,O)}p(i)};var p=this.handleDeferred=function(){for(;i.length;)i.shift()()};function d(e,t){$(e,t),O(e.ioSpecification,t),_(e.artifacts,t),s(e)}function f(e,t){a(e,t)}function m(e,t){a(e,t)}function v(e,t){a(e,t)}function x(e,t){a(e,t)}function w(e,t){a(e,t)}function _(e,t){b(e,(function(e){Qr(e,"bpmn:Association")?i.push((function(){w(e,t)})):w(e,t)}))}function O(e,t){e&&(b(e.dataInputs,o(v,t)),b(e.dataOutputs,o(x,t)))}var E=this.handleSubProcess=function(e,t){$(e,t),_(e.artifacts,t)};function k(e,t){var n=a(e,t);Qr(e,"bpmn:SubProcess")&&E(e,n||t),Qr(e,"bpmn:Activity")&&O(e.ioSpecification,t),i.push((function(){b(e.dataInputAssociations,o(m,t)),b(e.dataOutputAssociations,o(m,t))}))}function S(e,t){a(e,t)}function C(e,t){i.push((function(){var n=a(e,t);e.childLaneSet&&P(e.childLaneSet,n||t),function(e){b(e.flowNodeRef,(function(t){var n=t.get("lanes");n&&n.push(e)}))}(e)}))}function P(e,t){b(e.lanes,o(C,t))}function $(e,n){!function(e,n){b(e,(function(e){Qr(e,"bpmn:SequenceFlow")?i.push((function(){!function(e,t){a(e,t)}(e,n)})):Qr(e,"bpmn:BoundaryEvent")?i.unshift((function(){k(e,n)})):Qr(e,"bpmn:FlowNode")?k(e,n):Qr(e,"bpmn:DataObject")||(Qr(e,"bpmn:DataStoreReference")||Qr(e,"bpmn:DataObjectReference")?S(e,n):l(t("unrecognized flowElement {element} in context {context}",{element:jr(e),context:n?jr(n.businessObject):"null"}),{element:e,context:n}))}))}(e.flowElements,n),e.laneSets&&function(e,t){b(e,o(P,t))}(e.laneSets,n)}function A(e,t){var n=a(e,t),i=e.processRef;i&&d(i,n||t)}}function Vr(e,t){var n=Hr(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function qr(e,t){return O(t,(function(t){return Vr(e,t)}))}function Hr(e){return e&&e.businessObject||e}function Wr(e){return e&&e.di}function Yr(e,t,n){var i,r,o,s,a=[];function l(e,t){var n=new Fr({root:function(e,t){return i.add(e,t)},element:function(e,t,n){return i.add(e,t,n)},error:function(e,t){a.push({message:e,context:t})}},o);t=t||e.diagrams&&e.diagrams[0];var r=function(e,t){if(!t)return;var n,i=t.plane.bpmnElement,r=i;Vr(i,"bpmn:Process")||Vr(i,"bpmn:Collaboration")||(r=function(e){var t=e;for(;t;){if(Vr(t,"bpmn:Process"))return t;t=t.$parent}}(i));n=Vr(r,"bpmn:Collaboration")?r:g(e.rootElements,(function(e){if(Vr(e,"bpmn:Collaboration"))return g(e.participants,(function(e){return e.processRef===r}))}));var o=[r];n&&(o=E(n.participants,(function(e){return e.processRef}))).push(n);var s=Gr(o),a=[t],l=[i];return b(e.diagrams,(function(e){var t=e.plane.bpmnElement;-1!==s.indexOf(t)&&-1===l.indexOf(t)&&(a.push(e),l.push(t))})),a}(e,t);if(!r)throw new Error(o("no diagram to display"));b(r,(function(t){n.handleDefinitions(e,t)}));var l=t.plane.bpmnElement.id;s.setRootElement(s.findRoot(l+"_plane")||s.findRoot(l))}return new Promise((function(c,h){try{return i=e.get("bpmnImporter"),r=e.get("eventBus"),o=e.get("translate"),s=e.get("canvas"),r.fire("import.render.start",{definitions:t}),l(t,n),r.fire("import.render.complete",{error:undefined,warnings:a}),c({warnings:a})}catch(e){return e.warnings=a,h(e)}}))}function Gr(e){var t=[];return b(e,(function(e){e&&(t.push(e),t=t.concat(Gr(e.flowElements)))})),t}var Ur,Zr='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21"><path fill="currentColor" d="M1.88.92v.14c0 .41-.13.68-.4.8.33.14.46.44.46.86v.33c0 .61-.33.95-.95.95H0V0h.95c.65 0 .93.3.93.92zM.63.57v1.06h.24c.24 0 .38-.1.38-.43V.98c0-.28-.1-.4-.32-.4zm0 1.63v1.22h.36c.2 0 .32-.1.32-.39v-.35c0-.37-.12-.48-.4-.48H.63zM4.18.99v.52c0 .64-.31.98-.94.98h-.3V4h-.62V0h.92c.63 0 .94.35.94.99zM2.94.57v1.35h.3c.2 0 .3-.09.3-.37v-.6c0-.29-.1-.38-.3-.38h-.3zm2.89 2.27L6.25 0h.88v4h-.6V1.12L6.1 3.99h-.6l-.46-2.82v2.82h-.55V0h.87zM8.14 1.1V4h-.56V0h.79L9 2.4V0h.56v4h-.64zm2.49 2.29v.6h-.6v-.6zM12.12 1c0-.63.33-1 .95-1 .61 0 .95.37.95 1v2.04c0 .64-.34 1-.95 1-.62 0-.95-.37-.95-1zm.62 2.08c0 .28.13.39.33.39s.32-.1.32-.4V.98c0-.29-.12-.4-.32-.4s-.33.11-.33.4z"/><path fill="currentColor" d="M0 4.53h14.02v1.04H0zM11.08 0h.63v.62h-.63zm.63 4V1h-.63v2.98z"/></svg>',Kr={verticalAlign:"middle"},Jr={color:"#404040"},eo={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},to={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},no={position:"absolute",left:"50%",top:"40%",transform:"translate(-50%)",width:"260px",padding:"10px",background:"white",boxShadow:"0 1px 4px rgba(0,0,0,0.3)",fontFamily:"Helvetica, Arial, sans-serif",fontSize:"14px",display:"flex",lineHeight:"1.3"},io='<div class="bjs-powered-by-lightbox"><div class="backdrop"></div><div class="notice"><a href="https://bpmn.io" target="_blank" rel="noopener" class="link">'+Zr+'</a><span>Web-based tooling for BPMN, DMN and forms powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>';function ro(){Ur||(J(Ur=we(io),eo),J(_e("svg",Ur),Kr),J(_e(".backdrop",Ur),to),J(_e(".notice",Ur),no),J(_e(".link",Ur),Jr,{margin:"15px 20px 15px 10px",alignSelf:"center"}),ve.bind(Ur,".backdrop","click",(function(e){document.body.removeChild(Ur)}))),document.body.appendChild(Ur)}function oo(e){e=I({},ao,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),function(e){const t=we('<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+Zr+"</a>");J(_e("svg",t),Kr),J(t,Jr,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),e.appendChild(t),fe.bind(t,"click",(function(e){ro(),e.preventDefault()}))}(this._container),this._init(this._container,this._moddle,e)}function so(e,t){return e.warnings=t,e}e(oo,bi),oo.prototype.importXML=async function(e,t){const n=this;let i=[];try{let r;e=this._emit("import.parse.start",{xml:e})||e;try{r=await this._moddle.fromXML(e,"bpmn:Definitions")}catch(e){throw this._emit("import.parse.complete",{error:e}),e}let o=r.rootElement;const s=r.references,a=r.warnings,l=r.elementsById;i=i.concat(a),o=this._emit("import.parse.complete",function(e){const t=n.get("eventBus").createEvent(e);return Object.defineProperty(t,"context",{enumerable:!0,get:function(){return console.warn(new Error("import.parse.complete <context> is deprecated and will be removed in future library versions")),{warnings:e.warnings,references:e.references,elementsById:e.elementsById}}}),t}({error:null,definitions:o,elementsById:l,references:s,warnings:i}))||o;const c=await this.importDefinitions(o,t);return i=i.concat(c.warnings),this._emit("import.done",{error:null,warnings:i}),{warnings:i}}catch(e){let t=e;throw i=i.concat(t.warnings||[]),so(t,i),t=function(e){const t=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(e.message);t&&(e.message="unparsable content <"+t[1]+"> detected; this may indicate an invalid BPMN 2.0 diagram file"+t[2]);return e}(t),this._emit("import.done",{error:t,warnings:t.warnings}),t}},oo.prototype.importXML=zr(oo.prototype.importXML),oo.prototype.importDefinitions=async function(e,t){this._setDefinitions(e);return{warnings:(await this.open(t)).warnings}},oo.prototype.importDefinitions=zr(oo.prototype.importDefinitions),oo.prototype.open=async function(e){const t=this._definitions;let n=e;if(!t){const e=new Error("no XML imported");throw so(e,[]),e}if("string"==typeof e&&(n=function(e,t){if(!t)return null;return g(e.diagrams,(function(e){return e.id===t}))||null}(t,e),!n)){const t=new Error("BPMNDiagram <"+e+"> not found");throw so(t,[]),t}try{this.clear()}catch(e){throw so(e,[]),e}const{warnings:i}=await Yr(this,t,n);return{warnings:i}},oo.prototype.open=zr(oo.prototype.open),oo.prototype.saveXML=async function(e){e=e||{};let t,n,i=this._definitions;try{if(!i)throw new Error("no definitions loaded");i=this._emit("saveXML.start",{definitions:i})||i;n=(await this._moddle.toXML(i,e)).xml,n=this._emit("saveXML.serialized",{xml:n})||n}catch(e){t=e}const r=t?{error:t}:{xml:n};if(this._emit("saveXML.done",r),t)throw t;return r},oo.prototype.saveXML=zr(oo.prototype.saveXML),oo.prototype.saveSVG=async function(){let e,t;this._emit("saveSVG.start");try{const t=this.get("canvas"),n=t.getActiveLayer(),i=_e("defs",t._svg),r=Ze(n),o=i?"<defs>"+Ze(i)+"</defs>":"",s=n.getBBox();e='<?xml version="1.0" encoding="utf-8"?>\n\x3c!-- created with bpmn-js / http://bpmn.io --\x3e\n<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\n<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="'+s.width+'" height="'+s.height+'" viewBox="'+s.x+" "+s.y+" "+s.width+" "+s.height+'" version="1.1">'+o+r+"</svg>"}catch(e){t=e}if(this._emit("saveSVG.done",{error:t,svg:e}),t)throw t;return{svg:e}},oo.prototype.saveSVG=zr(oo.prototype.saveSVG),oo.prototype._setDefinitions=function(e){this._definitions=e},oo.prototype.getModules=function(){return this._modules},oo.prototype.clear=function(){this.getDefinitions()&&bi.prototype.clear.call(this)},oo.prototype.destroy=function(){bi.prototype.destroy.call(this),Ee(this._container)},oo.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},oo.prototype.off=function(e,t){this.get("eventBus").off(e,t)},oo.prototype.attachTo=function(e){if(!e)throw new Error("parentNode required");this.detach(),e.get&&e.constructor.prototype.jquery&&(e=e.get(0)),"string"==typeof e&&(e=_e(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},oo.prototype.getDefinitions=function(){return this._definitions},oo.prototype.detach=function(){const e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},oo.prototype._init=function(e,t,n){const i=n.modules||this.getModules(n),r=n.additionalModules||[],o=[].concat([{bpmnjs:["value",this],moddle:["value",t]}],i,r),s=I(V(n,["additionalModules"]),{canvas:I({},n.canvas,{container:e}),modules:o});bi.call(this,s),n&&n.container&&this.attachTo(n.container)},oo.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},oo.prototype._createContainer=function(e){const t=we('<div class="bjs-container"></div>');return J(t,{width:lo(e.width),height:lo(e.height),position:e.position}),t},oo.prototype._createModdle=function(e){return new Nr(I({},this._moddleExtensions,e.moddleExtensions))},oo.prototype._modules=[];const ao={width:"100%",height:"100%",position:"relative"};function lo(e){return e+(u(e)?"px":"")}function co(e){oo.call(this,e),this.on("import.parse.complete",(function(e){e.error||this._collectIds(e.definitions,e.elementsById)}),this),this.on("diagram.destroy",(function(){this.get("moddle").ids.clear()}),this)}function ho(e,t){return!Vr(e,"bpmn:CallActivity")&&(Vr(e,"bpmn:SubProcess")?!(!(t=t||Wr(e))||!Vr(t,"bpmndi:BPMNPlane"))||t&&!!t.isExpanded:!Vr(e,"bpmn:Participant")||!!Hr(e).processRef)}function uo(e){return e&&!1!==Hr(e).isInterrupting}function po(e){return e&&!!Hr(e).triggeredByEvent}function fo(e,t){return O(Hr(e).eventDefinitions,(function(e){return Vr(e,t)}))}e(co,oo),co.prototype._createModdle=function(e){var t=oo.prototype._createModdle.call(this,e);return t.ids=new n([32,36,1]),t},co.prototype._collectIds=function(e,t){var n,i=e.$model.ids;for(n in i.clear(),t)i.claim(n,t[n])};var mo={width:90,height:20},go=15;function vo(e){return Vr(e,"bpmn:Event")||Vr(e,"bpmn:Gateway")||Vr(e,"bpmn:DataStoreReference")||Vr(e,"bpmn:DataObjectReference")||Vr(e,"bpmn:DataInput")||Vr(e,"bpmn:DataOutput")||Vr(e,"bpmn:SequenceFlow")||Vr(e,"bpmn:MessageFlow")||Vr(e,"bpmn:Group")}function yo(e){return kn(e.label)}function bo(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)],r=function(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)];return{x:n.x+(i.x-n.x)/2,y:n.y+(i.y-n.y)/2}}(e),o=Math.atan((i.y-n.y)/(i.x-n.x)),s=r.x,a=r.y;return Math.abs(o)<Math.PI/2?a-=go:s+=go,{x:s,y:a}}function xo(e){return e.waypoints?bo(e.waypoints):Vr(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+mo.height/2}:{x:e.x+e.width/2,y:e.y+e.height+mo.height/2}}function wo(e){return Vr(e,"bpmn:FlowElement")||Vr(e,"bpmn:Participant")||Vr(e,"bpmn:Lane")||Vr(e,"bpmn:SequenceFlow")||Vr(e,"bpmn:MessageFlow")||Vr(e,"bpmn:DataInput")||Vr(e,"bpmn:DataOutput")?"name":Vr(e,"bpmn:TextAnnotation")?"text":Vr(e,"bpmn:Group")?"categoryValueRef":void 0}function _o(e){var t=e.businessObject,n=wo(t);if(n)return"categoryValueRef"===n?function(e){var t=e.categoryValueRef;return t&&t.value||""}(t):t[n]||""}var Oo="hsl(225, 10%, 15%)";function Eo(e,t){return O(e.eventDefinitions,(function(e){return e.$type===t}))}function ko(e,t){var n=Wr(e);return n.get("color:background-color")||n.get("bioc:fill")||t||"white"}function So(e,t){var n=Wr(e);return n.get("color:border-color")||n.get("bioc:stroke")||t||Oo}function Co(e,t,n){var i=Wr(e).get("label");return i&&i.get("color:color")||t||So(e,n)}var Po=new n,$o=10,Ao=3,Ro=.95,To=.35,Mo=10;function Do(e,t,n,i,r,o,s){ut.call(this,t,s);var a=e&&e.defaultFillColor,l=e&&e.defaultStrokeColor,c=e&&e.defaultLabelColor,u=Po.next(),p={};function d(e){return n.computeStyle(e,{strokeLinecap:"round",strokeLinejoin:"round",stroke:Oo,strokeWidth:2,fill:"white"})}function f(e){return n.computeStyle(e,["no-fill"],{strokeLinecap:"round",strokeLinejoin:"round",stroke:Oo,strokeWidth:2})}function m(e,t){var{ref:n={x:0,y:0},scale:i=1,element:o}=t,s=Ie("marker",{id:e,viewBox:"0 0 20 20",refX:n.x,refY:n.y,markerWidth:20*i,markerHeight:20*i,orient:"auto"});Se(s,o);var a=_e("defs",r._svg);a||(a=Ie("defs"),Se(r._svg,a)),Se(a,s),p[e]=s}function g(e){return e.replace(/[^0-9a-zA-Z]+/g,"_")}function v(e,t,n){var i=e+"-"+g(t)+"-"+g(n)+"-"+u;return p[i]||function(e,t,n,i){if("sequenceflow-end"===t){m(e,{element:Ie("path",{d:"M 1 5 L 11 10 L 1 15 Z",...d({fill:i,stroke:i,strokeWidth:1})}),ref:{x:11,y:10},scale:.5})}if("messageflow-start"===t){m(e,{element:Ie("circle",{cx:6,cy:6,r:3.5,...d({fill:n,stroke:i,strokeWidth:1,strokeDasharray:[1e4,1]})}),ref:{x:6,y:6}})}if("messageflow-end"===t){m(e,{element:Ie("path",{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z",...d({fill:n,stroke:i,strokeWidth:1,strokeDasharray:[1e4,1]})}),ref:{x:8.5,y:5}})}if("association-start"===t){m(e,{element:Ie("path",{d:"M 11 5 L 1 10 L 11 15",...f({fill:"none",stroke:i,strokeWidth:1.5,strokeDasharray:[1e4,1]})}),ref:{x:1,y:10},scale:.5})}if("association-end"===t){m(e,{element:Ie("path",{d:"M 1 5 L 11 10 L 1 15",...f({fill:"none",stroke:i,strokeWidth:1.5,strokeDasharray:[1e4,1]})}),ref:{x:11,y:10},scale:.5})}if("conditional-flow-marker"===t){m(e,{element:Ie("path",{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z",...d({fill:n,stroke:i})}),ref:{x:-1,y:10},scale:.5})}if("conditional-default-flow-marker"===t){m(e,{element:Ie("path",{d:"M 6 4 L 10 16",...d({stroke:i})}),ref:{x:0,y:10},scale:.5})}}(i,e,t,n),"url(#"+i+")"}function y(e,t,n,i,r){h(i)&&(r=i,i=0),i=i||0,"none"===(r=d(r)).fill&&delete r.fillOpacity;var o=Ie("circle",{cx:t/2,cy:n/2,r:Math.round((t+n)/4-i),...r});return Se(e,o),o}function x(e,t,n,i,r,o){h(r)&&(o=r,r=0),r=r||0,o=d(o);var s=Ie("rect",{x:r,y:r,width:t-2*r,height:n-2*r,rx:i,ry:i,...o});return Se(e,s),s}function w(e,t,n,i){var r=vt(t,n=f(n),i);return Se(e,r),r}function _(e,t,n){return w(e,t,n,5)}function O(e,t,n){n=f(n);var i=Ie("path",{...n,d:t});return Se(e,i),i}function E(e,t,n,i){return O(t,n,I({"data-marker":e},i))}function k(e){return R[e]}function S(e){return function(t,n,i){return k(e)(t,n,i)}}function C(e,t){var n=Hr(e),i=function(e){return"bpmn:IntermediateThrowEvent"===e.$type||"bpmn:EndEvent"===e.$type}(n);return n.eventDefinitions&&n.eventDefinitions.length>1?n.parallelMultiple?k("bpmn:ParallelMultipleEventDefinition")(t,e,i):k("bpmn:MultipleEventDefinition")(t,e,i):Eo(n,"bpmn:MessageEventDefinition")?k("bpmn:MessageEventDefinition")(t,e,i):Eo(n,"bpmn:TimerEventDefinition")?k("bpmn:TimerEventDefinition")(t,e,i):Eo(n,"bpmn:ConditionalEventDefinition")?k("bpmn:ConditionalEventDefinition")(t,e):Eo(n,"bpmn:SignalEventDefinition")?k("bpmn:SignalEventDefinition")(t,e,i):Eo(n,"bpmn:EscalationEventDefinition")?k("bpmn:EscalationEventDefinition")(t,e,i):Eo(n,"bpmn:LinkEventDefinition")?k("bpmn:LinkEventDefinition")(t,e,i):Eo(n,"bpmn:ErrorEventDefinition")?k("bpmn:ErrorEventDefinition")(t,e,i):Eo(n,"bpmn:CancelEventDefinition")?k("bpmn:CancelEventDefinition")(t,e,i):Eo(n,"bpmn:CompensateEventDefinition")?k("bpmn:CompensateEventDefinition")(t,e,i):Eo(n,"bpmn:TerminateEventDefinition")?k("bpmn:TerminateEventDefinition")(t,e,i):null}function P(e,t,n){n=I({size:{width:100}},n);var i=o.createText(t||"",n);return Te(i).add("djs-label"),Se(e,i),i}function $(e,t,n){return P(e,Hr(t).name,{box:t,align:n,padding:7,style:{fill:Co(t,c,l)}})}function A(e,t,n){pi(P(e,t,{box:{height:30,width:n.height},align:"center-middle",style:{fill:Co(n,c,l)}}),0,-(-1*n.height),270)}var R=this.handlers={"bpmn:Event":function(e,t,n){return"fillOpacity"in n||(n.fillOpacity=Ro),y(e,t.width,t.height,n)},"bpmn:StartEvent":function(e,t,n){var i={fill:ko(t,a),stroke:So(t,l)};Hr(t).isInterrupting||(i={strokeDasharray:"6",fill:ko(t,a),stroke:So(t,l)});var r=k("bpmn:Event")(e,t,i);return n&&!1===n.renderIcon||C(t,e),r},"bpmn:MessageEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.235,my:.315}}),{strokeWidth:1,fill:n?So(t,l):ko(t,a),stroke:n?ko(t,a):So(t,l)})},"bpmn:TimerEventDefinition":function(e,t){var n=y(e,t.width,t.height,.2*t.height,{strokeWidth:2,fill:ko(t,a),stroke:So(t,l)});O(e,i.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.5}}),{strokeWidth:2,stroke:So(t,l)});for(var r=0;r<12;r++){var o=i.getScaledPath("EVENT_TIMER_LINE",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.5}}),s=t.width/2;O(e,o,{strokeWidth:1,transform:"rotate("+30*r+","+t.height/2+","+s+")",stroke:So(t,l)})}return n},"bpmn:EscalationEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)})},"bpmn:ConditionalEventDefinition":function(e,t){return O(e,i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.222}}),{strokeWidth:1,stroke:So(t,l)})},"bpmn:LinkEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.57,my:.263}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)})},"bpmn:ErrorEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_ERROR",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:t.width,containerHeight:t.height,position:{mx:.2,my:.722}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)})},"bpmn:CancelEventDefinition":function(e,t,n){var r=O(e,i.getScaledPath("EVENT_CANCEL_45",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.638,my:-.055}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)});return fi(r,45),r},"bpmn:CompensateEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.22,my:.5}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)})},"bpmn:SignalEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)})},"bpmn:MultipleEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_MULTIPLE",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:t.width,containerHeight:t.height,position:{mx:.222,my:.36}}),{strokeWidth:1,fill:n?So(t,l):"none"})},"bpmn:ParallelMultipleEventDefinition":function(e,t){return O(e,i.getScaledPath("EVENT_PARALLEL_MULTIPLE",{xScaleFactor:1.2,yScaleFactor:1.2,containerWidth:t.width,containerHeight:t.height,position:{mx:.458,my:.194}}),{strokeWidth:1,fill:So(t,l),stroke:So(t,l)})},"bpmn:EndEvent":function(e,t,n){var i=k("bpmn:Event")(e,t,{strokeWidth:4,fill:ko(t,a),stroke:So(t,l)});return n&&!1===n.renderIcon||C(t,e),i},"bpmn:TerminateEventDefinition":function(e,t){return y(e,t.width,t.height,8,{strokeWidth:4,fill:So(t,l),stroke:So(t,l)})},"bpmn:IntermediateEvent":function(e,t,n){var i=k("bpmn:Event")(e,t,{strokeWidth:1.5,fill:ko(t,a),stroke:So(t,l)});return y(e,t.width,t.height,Ao,{strokeWidth:1.5,fill:ko(t,"none"),stroke:So(t,l)}),n&&!1===n.renderIcon||C(t,e),i},"bpmn:IntermediateCatchEvent":S("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":S("bpmn:IntermediateEvent"),"bpmn:Activity":function(e,t,n){return"fillOpacity"in(n=n||{})||(n.fillOpacity=Ro),x(e,t.width,t.height,$o,n)},"bpmn:Task":function(e,t){var n={fill:ko(t,a),stroke:So(t,l)},i=k("bpmn:Activity")(e,t,n);return $(e,t,"center-middle"),T(e,t),i},"bpmn:ServiceTask":function(e,t){var n=k("bpmn:Task")(e,t);return O(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}}),{strokeWidth:1,fill:ko(t,a),stroke:So(t,l)}),O(e,i.getScaledPath("TASK_TYPE_SERVICE_FILL",{abspos:{x:17.2,y:18}}),{strokeWidth:0,fill:ko(t,a)}),O(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}}),{strokeWidth:1,fill:ko(t,a),stroke:So(t,l)}),n},"bpmn:UserTask":function(e,t){var n=k("bpmn:Task")(e,t);return O(e,i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:ko(t,a),stroke:So(t,l)}),O(e,i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:ko(t,a),stroke:So(t,l)}),O(e,i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:So(t,l),stroke:So(t,l)}),n},"bpmn:ManualTask":function(e,t){var n=k("bpmn:Task")(e,t);return O(e,i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}}),{strokeWidth:.5,fill:ko(t,a),stroke:So(t,l)}),n},"bpmn:SendTask":function(e,t){var n=k("bpmn:Task")(e,t);return O(e,i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}}),{strokeWidth:1,fill:So(t,l),stroke:ko(t,a)}),n},"bpmn:ReceiveTask":function(e,t){var n,r=Hr(t),o=k("bpmn:Task")(e,t);return r.instantiate?(y(e,28,28,4.4,{strokeWidth:1}),n=i.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):n=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),O(e,n,{strokeWidth:1,fill:ko(t,a),stroke:So(t,l)}),o},"bpmn:ScriptTask":function(e,t){var n=k("bpmn:Task")(e,t);return O(e,i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}}),{strokeWidth:1,stroke:So(t,l)}),n},"bpmn:BusinessRuleTask":function(e,t){var n=k("bpmn:Task")(e,t);return Ae(O(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}})),{strokeWidth:1,fill:ko(t,"#aaaaaa"),stroke:So(t,l)}),Ae(O(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}})),{strokeWidth:1,stroke:So(t,l)}),n},"bpmn:SubProcess":function(e,t,n){n={fill:ko(t,a),stroke:So(t,l),...n};var i=k("bpmn:Activity")(e,t,n),r=ho(t);return po(t)&&Ae(i,{strokeDasharray:"0, 5.5",strokeWidth:2.5}),$(e,t,r?"center-top":"center-middle"),r?T(e,t):T(e,t,["SubProcessMarker"]),i},"bpmn:AdHocSubProcess":function(e,t){return k("bpmn:SubProcess")(e,t)},"bpmn:Transaction":function(e,t){var i=k("bpmn:SubProcess")(e,t,{strokeWidth:1.5}),r=n.style(["no-fill","no-events"],{stroke:So(t,l),strokeWidth:1.5});return x(e,t.width,t.height,$o-3,Ao,r),i},"bpmn:CallActivity":function(e,t){return k("bpmn:SubProcess")(e,t,{strokeWidth:5})},"bpmn:Participant":function(e,t){var n={fillOpacity:Ro,fill:ko(t,a),stroke:So(t,l),strokeWidth:1.5},i=k("bpmn:Lane")(e,t,n);ho(t)?(w(e,[{x:30,y:0},{x:30,y:t.height}],{stroke:So(t,l),strokeWidth:1.5}),A(e,Hr(t).name,t)):P(e,Hr(t).name,{box:t,align:"center-middle",style:{fill:Co(t,c,l)}});return!!Hr(t).participantMultiplicity&&k("ParticipantMultiplicityMarker")(e,t),i},"bpmn:Lane":function(e,t,n){var i=x(e,t.width,t.height,0,{fill:ko(t,a),fillOpacity:To,stroke:So(t,l),strokeWidth:1.5,...n}),r=Hr(t);"bpmn:Lane"===r.$type&&A(e,r.name,t);return i},"bpmn:InclusiveGateway":function(e,t){var n=k("bpmn:Gateway")(e,t);return y(e,t.width,t.height,.24*t.height,{strokeWidth:2.5,fill:ko(t,a),stroke:So(t,l)}),n},"bpmn:ExclusiveGateway":function(e,t){var n=k("bpmn:Gateway")(e,t),r=i.getScaledPath("GATEWAY_EXCLUSIVE",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:t.width,containerHeight:t.height,position:{mx:.32,my:.3}});return Wr(t).isMarkerVisible&&O(e,r,{strokeWidth:1,fill:So(t,l),stroke:So(t,l)}),n},"bpmn:ComplexGateway":function(e,t){var n=k("bpmn:Gateway")(e,t);return O(e,i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.26}}),{strokeWidth:1,fill:So(t,l),stroke:So(t,l)}),n},"bpmn:ParallelGateway":function(e,t){var n=k("bpmn:Gateway")(e,t);return O(e,i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.2}}),{strokeWidth:1,fill:So(t,l),stroke:So(t,l)}),n},"bpmn:EventBasedGateway":function(e,t){var n=Hr(t),r=k("bpmn:Gateway")(e,t);y(e,t.width,t.height,.2*t.height,{strokeWidth:1,fill:"none",stroke:So(t,l)});var o=n.eventGatewayType,s=!!n.instantiate;if("Parallel"===o){var a=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}});O(e,a,{strokeWidth:1,fill:"none"})}else"Exclusive"===o&&(s||y(e,t.width,t.height,.26*t.height,{strokeWidth:1,fill:"none",stroke:So(t,l)}),function(){var n=i.getScaledPath("GATEWAY_EVENT_BASED",{xScaleFactor:.18,yScaleFactor:.18,containerWidth:t.width,containerHeight:t.height,position:{mx:.36,my:.44}});O(e,n,{strokeWidth:2,fill:ko(t,"none"),stroke:So(t,l)})}());return r},"bpmn:Gateway":function(e,t){return function(e,t,n,i){var r=t/2,o=n/2,s=[{x:r,y:0},{x:t,y:o},{x:r,y:n},{x:0,y:o}].map((function(e){return e.x+","+e.y})).join(" ");i=d(i);var a=Ie("polygon",{...i,points:s});return Se(e,a),a}(e,t.width,t.height,{fill:ko(t,a),fillOpacity:Ro,stroke:So(t,l)})},"bpmn:SequenceFlow":function(e,t){var n,i=ko(t,a),r=So(t,l),o=_(e,t.waypoints,{markerEnd:v("sequenceflow-end",i,r),stroke:So(t,l)}),s=Hr(t);return t.source&&(n=t.source.businessObject,s.conditionExpression&&n.$instanceOf("bpmn:Activity")&&Ae(o,{markerStart:v("conditional-flow-marker",i,r)}),n.default&&(n.$instanceOf("bpmn:Gateway")||n.$instanceOf("bpmn:Activity"))&&n.default===s&&Ae(o,{markerStart:v("conditional-default-flow-marker",i,r)})),o},"bpmn:Association":function(e,t,n){var i=Hr(t),r=ko(t,a),o=So(t,l);return n={strokeDasharray:"0, 5",stroke:So(t,l),...n},"One"!==i.associationDirection&&"Both"!==i.associationDirection||(n.markerEnd=v("association-end",r,o)),"Both"===i.associationDirection&&(n.markerStart=v("association-start",r,o)),_(e,t.waypoints,n)},"bpmn:DataInputAssociation":function(e,t){var n=ko(t,a),i=So(t,l);return k("bpmn:Association")(e,t,{markerEnd:v("association-end",n,i)})},"bpmn:DataOutputAssociation":function(e,t){var n=ko(t,a),i=So(t,l);return k("bpmn:Association")(e,t,{markerEnd:v("association-end",n,i)})},"bpmn:MessageFlow":function(e,t){var n=Hr(t),r=Wr(t),o=ko(t,a),s=So(t,l),h=_(e,t.waypoints,{markerEnd:v("messageflow-end",o,s),markerStart:v("messageflow-start",o,s),strokeDasharray:"10, 11",strokeWidth:1.5,stroke:So(t,l)});if(n.messageRef){var u=h.getPointAtLength(h.getTotalLength()/2),p=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:u.x,y:u.y}}),d={strokeWidth:1};"initiating"===r.messageVisibleKind?(d.fill="white",d.stroke=Oo):(d.fill="#888",d.stroke="white");var f=O(e,p,d),m=P(e,n.messageRef.name,{align:"center-top",fitBox:!0,style:{fill:So(t,c)}}),g=f.getBBox(),y=m.getBBox();pi(m,u.x-y.width/2,u.y+g.height/2+Mo,0)}return h},"bpmn:DataObject":function(e,t){var n=O(e,i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}}),{fill:ko(t,a),fillOpacity:Ro,stroke:So(t,l)});return function(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}(Hr(t))&&function(e,t){var n=(t.height-18)/t.height,r=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.33,my:n}});O(e,r,{strokeWidth:2})}(e,t),n},"bpmn:DataObjectReference":S("bpmn:DataObject"),"bpmn:DataInput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=k("bpmn:DataObject")(e,t);return O(e,n,{strokeWidth:1}),r},"bpmn:DataOutput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=k("bpmn:DataObject")(e,t);return O(e,n,{strokeWidth:1,fill:Oo}),r},"bpmn:DataStoreReference":function(e,t){return O(e,i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.133}}),{strokeWidth:2,fill:ko(t,a),fillOpacity:Ro,stroke:So(t,l)})},"bpmn:BoundaryEvent":function(e,t,n){var i=Hr(t).cancelActivity,r={strokeWidth:1.5,fill:ko(t,a),stroke:So(t,l)};i||(r.strokeDasharray="6");var o={...r,fillOpacity:1},s={...r,fill:"none"},c=k("bpmn:Event")(e,t,o);return y(e,t.width,t.height,Ao,s),n&&!1===n.renderIcon||C(t,e),c},"bpmn:Group":function(e,t){return x(e,t.width,t.height,$o,{stroke:So(t,l),strokeWidth:1.5,strokeDasharray:"10,6,0,6",fill:"none",pointerEvents:"none"})},label:function(e,t){return function(e,t){var n={width:90,height:30,x:t.width/2+t.x,y:t.height/2+t.y};return P(e,_o(t),{box:n,fitBox:!0,style:I({},o.getExternalStyle(),{fill:Co(t,c,l)})})}(e,t)},"bpmn:TextAnnotation":function(e,t){var n=x(e,t.width,t.height,0,0,{fill:"none",stroke:"none"});return O(e,i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:0}}),{stroke:So(t,l)}),P(e,Hr(t).text||"",{box:t,align:"left-top",padding:7,style:{fill:Co(t,c,l)}}),n},ParticipantMultiplicityMarker:function(e,t){E("participant-multiplicity",e,i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:t.width/2/t.width,my:(t.height-15)/t.height}}),{strokeWidth:2,fill:ko(t,a),stroke:So(t,l)})},SubProcessMarker:function(e,t){di(x(e,14,14,0,{strokeWidth:1,fill:ko(t,a),stroke:So(t,l)}),t.width/2-7.5,t.height-20),E("sub-process",e,i.getScaledPath("MARKER_SUB_PROCESS",{xScaleFactor:1.5,yScaleFactor:1.5,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2-7.5)/t.width,my:(t.height-20)/t.height}}),{fill:ko(t,a),stroke:So(t,l)})},ParallelMarker:function(e,t,n){E("parallel",e,i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.parallel)/t.width,my:(t.height-20)/t.height}}),{fill:ko(t,a),stroke:So(t,l)})},SequentialMarker:function(e,t,n){E("sequential",e,i.getScaledPath("MARKER_SEQUENTIAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.seq)/t.width,my:(t.height-19)/t.height}}),{fill:ko(t,a),stroke:So(t,l)})},CompensationMarker:function(e,t,n){E("compensation",e,i.getScaledPath("MARKER_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.compensation)/t.width,my:(t.height-13)/t.height}}),{strokeWidth:1,fill:ko(t,a),stroke:So(t,l)})},LoopMarker:function(e,t,n){E("loop",e,i.getScaledPath("MARKER_LOOP",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.loop)/t.width,my:(t.height-7)/t.height}}),{strokeWidth:1.5,fill:ko(t,a),stroke:So(t,l),strokeMiterlimit:.5})},AdhocMarker:function(e,t,n){E("adhoc",e,i.getScaledPath("MARKER_ADHOC",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.adhoc)/t.width,my:(t.height-15)/t.height}}),{strokeWidth:1,fill:So(t,l),stroke:So(t,l)})}};function T(e,t,n){var i,r=Hr(t),o=n&&-1!==n.indexOf("SubProcessMarker");i=o?{seq:-21,parallel:-22,compensation:-42,loop:-18,adhoc:10}:{seq:-3,parallel:-6,compensation:-27,loop:0,adhoc:10},b(n,(function(n){k(n)(e,t,i)})),r.isForCompensation&&k("CompensationMarker")(e,t,i),"bpmn:AdHocSubProcess"===r.$type&&k("AdhocMarker")(e,t,i);var s=r.loopCharacteristics,a=s&&s.isSequential;s&&(void 0===a&&k("LoopMarker")(e,t,i),!1===a&&k("ParallelMarker")(e,t,i),!0===a&&k("SequentialMarker")(e,t,i))}this._drawPath=O,this._renderer=k}e(Do,ut),Do.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],Do.prototype.canRender=function(e){return Vr(e,"bpmn:BaseElement")},Do.prototype.drawShape=function(e,t){var n=t.type;return this._renderer(n)(e,t)},Do.prototype.drawConnection=function(e,t){var n=t.type;return this._renderer(n)(e,t)},Do.prototype.getShapePath=function(e){return Vr(e,"bpmn:Event")?(n=(t=e).x+t.width/2,i=t.y+t.height/2,r=t.width/2,pt([["M",n,i],["m",0,-r],["a",r,r,0,1,1,0,2*r],["a",r,r,0,1,1,0,-2*r],["z"]])):Vr(e,"bpmn:Activity")?function(e,t){var n=e.x,i=e.y,r=e.width,o=e.height;return pt([["M",n+t,i],["l",r-2*t,0],["a",t,t,0,0,1,t,t],["l",0,o-2*t],["a",t,t,0,0,1,-t,t],["l",2*t-r,0],["a",t,t,0,0,1,-t,-t],["l",0,2*t-o],["a",t,t,0,0,1,t,-t],["z"]])}(e,$o):Vr(e,"bpmn:Gateway")?function(e){var t=e.width/2,n=e.height/2;return pt([["M",e.x+t,e.y],["l",t,n],["l",-t,n],["l",-t,-n],["z"]])}(e):function(e){var t=e.x,n=e.y,i=e.width;return pt([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])}(e);var t,n,i,r};var Bo=0,Lo={width:150,height:50};function No(e,t){var n;t.textContent=e;try{var i,r=""===e;return t.textContent=r?"dummy":e,i={width:(n=t.getBBox()).width+2*n.x,height:n.height},r&&(i.width=0),i}catch(e){return{width:0,height:0}}}function jo(e,t,n){for(var i,r=e.shift(),o=r;;){if((i=No(o,n)).width=o?i.width:0," "===o||""===o||i.width<Math.round(t)||o.length<2)return zo(e,o,r,i);o=Xo(o,i.width,t)}}function zo(e,t,n,i){if(t.length<n.length){var r=n.slice(t.length).trim();e.unshift(r)}return{width:i.width,height:i.height,text:t}}var Io="­";function Xo(e,t,n){var i=Math.max(e.length*(n/t),1),r=function(e,t){var n,i=e.split(/(\s|-|\u00AD)/g),r=[],o=0;if(i.length>1)for(;n=i.shift();){if(!(n.length+o<t)){"-"!==n&&n!==Io||r.pop();break}r.push(n),o+=n.length}var s=r[r.length-1];return s&&s===Io&&(r[r.length-1]="-"),r.join("")}(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Qo(e){this._config=I({},{size:Lo,padding:Bo,style:{},align:"center-top"},e||{})}Qo.prototype.createText=function(e,t){return this.layoutText(e,t).element},Qo.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Qo.prototype.layoutText=function(e,t){var n=I({},this._config.size,t.box),i=I({},this._config.style,t.style),r=function(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}(t.align||this._config.align),o=function(e){return h(e)?I({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}(void 0!==t.padding?t.padding:this._config.padding),s=t.fitBox||!1,a=function(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}(i),l=e.split(/\u00AD?\r?\n/),c=[],u=n.width-o.left-o.right,p=Ie("text");for(Ae(p,{x:0,y:0}),Ae(p,i),Se(function(){var e=document.getElementById("helper-svg");return e||(Ae(e=Ie("svg"),{id:"helper-svg"}),J(e,{visibility:"hidden",position:"fixed",width:0,height:0}),document.body.appendChild(e)),e}(),p);l.length;)c.push(jo(l,u,p));"middle"===r.vertical&&(o.top=o.bottom=0);var d=w(c,(function(e,t,n){return e+(a||t.height)}),0)+o.top+o.bottom,f=w(c,(function(e,t,n){return t.width>e?t.width:e}),0),m=o.top;"middle"===r.vertical&&(m+=(n.height-d)/2),m-=(a||c[0].height)/4;var g=Ie("text");return Ae(g,i),b(c,(function(e){var t;switch(m+=a||e.height,r.horizontal){case"left":t=o.left;break;case"right":t=(s?f:u)-o.right-e.width;break;default:t=Math.max(((s?f:u)-e.width)/2+o.left,0)}var n=Ie("tspan");Ae(n,{x:t,y:m}),n.textContent=e.text,Se(g,n)})),De(p),{dimensions:{width:f,height:d},element:g}};var Fo=12,Vo=1.2,qo=30;function Ho(e){var t=I({fontFamily:"Arial, sans-serif",fontSize:Fo,fontWeight:"normal",lineHeight:Vo},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=I({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Qo({style:t});this.getExternalLabelBounds=function(e,t){var n=r.getDimensions(t,{box:{width:90,height:30},style:i});return{x:Math.round(e.x+e.width/2-n.width/2),y:Math.round(e.y),width:Math.ceil(n.width),height:Math.ceil(n.height)}},this.getTextAnnotationBounds=function(e,n){var i=r.getDimensions(n,{box:e,style:t,align:"left-top",padding:5});return{x:e.x,y:e.y,width:e.width,height:Math.max(qo,Math.round(i.height))}},this.createText=function(e,t){return r.createText(e,t||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}Ho.$inject=["config.textRenderer"];var Wo=/\{([^{}]+)\}/g,Yo=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;var Go={__init__:["bpmnRenderer"],bpmnRenderer:["type",Do],textRenderer:["type",Ho],pathMap:["type",function(){this.pathMap={EVENT_MESSAGE:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:36,width:36,heightElements:[6,14],widthElements:[10.5,21]},EVENT_SIGNAL:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x1},0 Z",height:36,width:36,heightElements:[18],widthElements:[10,20]},EVENT_ESCALATION:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x0},-{e.y1} l -{e.x0},{e.y1} Z",height:36,width:36,heightElements:[20,7],widthElements:[8]},EVENT_CONDITIONAL:{d:"M {e.x0},{e.y0} l {e.x1},0 l 0,{e.y2} l -{e.x1},0 Z M {e.x2},{e.y3} l {e.x0},0 M {e.x2},{e.y4} l {e.x0},0 M {e.x2},{e.y5} l {e.x0},0 M {e.x2},{e.y6} l {e.x0},0 M {e.x2},{e.y7} l {e.x0},0 M {e.x2},{e.y8} l {e.x0},0 ",height:36,width:36,heightElements:[8.5,14.5,18,11.5,14.5,17.5,20.5,23.5,26.5],widthElements:[10.5,14.5,12.5]},EVENT_LINK:{d:"m {mx},{my} 0,{e.y0} -{e.x1},0 0,{e.y1} {e.x1},0 0,{e.y0} {e.x0},-{e.y2} -{e.x0},-{e.y2} z",height:36,width:36,heightElements:[4.4375,6.75,7.8125],widthElements:[9.84375,13.5]},EVENT_ERROR:{d:"m {mx},{my} {e.x0},-{e.y0} {e.x1},-{e.y1} {e.x2},{e.y2} {e.x3},-{e.y3} -{e.x4},{e.y4} -{e.x5},-{e.y5} z",height:36,width:36,heightElements:[.023,8.737,8.151,16.564,10.591,8.714],widthElements:[.085,6.672,6.97,4.273,5.337,6.636]},EVENT_CANCEL_45:{d:"m {mx},{my} -{e.x1},0 0,{e.x0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:36,width:36,heightElements:[4.75,8.5],widthElements:[4.75,8.5]},EVENT_COMPENSATION:{d:"m {mx},{my} {e.x0},-{e.y0} 0,{e.y1} z m {e.x1},-{e.y2} {e.x2},-{e.y3} 0,{e.y1} -{e.x2},-{e.y3} z",height:36,width:36,heightElements:[6.5,13,.4,6.1],widthElements:[9,9.3,8.7]},EVENT_TIMER_WH:{d:"M {mx},{my} l {e.x0},-{e.y0} m -{e.x0},{e.y0} l {e.x1},{e.y1} ",height:36,width:36,heightElements:[10,2],widthElements:[3,7]},EVENT_TIMER_LINE:{d:"M {mx},{my} m {e.x0},{e.y0} l -{e.x1},{e.y1} ",height:36,width:36,heightElements:[10,3],widthElements:[0,0]},EVENT_MULTIPLE:{d:"m {mx},{my} {e.x1},-{e.y0} {e.x1},{e.y0} -{e.x0},{e.y1} -{e.x2},0 z",height:36,width:36,heightElements:[6.28099,12.56199],widthElements:[3.1405,9.42149,12.56198]},EVENT_PARALLEL_MULTIPLE:{d:"m {mx},{my} {e.x0},0 0,{e.y1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} -{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z",height:36,width:36,heightElements:[2.56228,7.68683],widthElements:[2.56228,7.68683]},GATEWAY_EXCLUSIVE:{d:"m {mx},{my} {e.x0},{e.y0} {e.x1},{e.y0} {e.x2},0 {e.x4},{e.y2} {e.x4},{e.y1} {e.x2},0 {e.x1},{e.y3} {e.x0},{e.y3} {e.x3},0 {e.x5},{e.y1} {e.x5},{e.y2} {e.x3},0 z",height:17.5,width:17.5,heightElements:[8.5,6.5312,-6.5312,-8.5],widthElements:[6.5,-6.5,3,-3,5,-5]},GATEWAY_PARALLEL:{d:"m {mx},{my} 0,{e.y1} -{e.x1},0 0,{e.y0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:30,width:30,heightElements:[5,12.5],widthElements:[5,12.5]},GATEWAY_EVENT_BASED:{d:"m {mx},{my} {e.x0},{e.y0} {e.x0},{e.y1} {e.x1},{e.y2} {e.x2},0 z",height:11,width:11,heightElements:[-6,6,12,-12],widthElements:[9,-3,-12]},GATEWAY_COMPLEX:{d:"m {mx},{my} 0,{e.y0} -{e.x0},-{e.y1} -{e.x1},{e.y2} {e.x0},{e.y1} -{e.x2},0 0,{e.y3} {e.x2},0 -{e.x0},{e.y1} l {e.x1},{e.y2} {e.x0},-{e.y1} 0,{e.y0} {e.x3},0 0,-{e.y0} {e.x0},{e.y1} {e.x1},-{e.y2} -{e.x0},-{e.y1} {e.x2},0 0,-{e.y3} -{e.x2},0 {e.x0},-{e.y1} -{e.x1},-{e.y2} -{e.x0},{e.y1} 0,-{e.y0} -{e.x3},0 z",height:17.125,width:17.125,heightElements:[4.875,3.4375,2.125,3],widthElements:[3.4375,2.125,4.875,3]},DATA_OBJECT_PATH:{d:"m 0,0 {e.x1},0 {e.x0},{e.y0} 0,{e.y1} -{e.x2},0 0,-{e.y2} {e.x1},0 0,{e.y0} {e.x0},0",height:61,width:51,heightElements:[10,50,60],widthElements:[10,40,50,60]},DATA_OBJECT_COLLECTION_PATH:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},DATA_ARROW:{d:"m 5,9 9,0 0,-3 5,5 -5,5 0,-3 -9,0 z",height:61,width:51,heightElements:[],widthElements:[]},DATA_STORE:{d:"m {mx},{my} l 0,{e.y2} c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 l 0,-{e.y2} c -{e.x0},-{e.y1} -{e.x1},-{e.y1} -{e.x2},0c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0",height:61,width:61,heightElements:[7,10,45],widthElements:[2,58,60]},TEXT_ANNOTATION:{d:"m {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0",height:30,width:10,heightElements:[30],widthElements:[10]},MARKER_SUB_PROCESS:{d:"m{mx},{my} m 7,2 l 0,10 m -5,-5 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_PARALLEL:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},MARKER_SEQUENTIAL:{d:"m{mx},{my} m 0,3 l 10,0 m -10,3 l 10,0 m -10,3 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_COMPENSATION:{d:"m {mx},{my} 7,-5 0,10 z m 7.1,-0.3 6.9,-4.7 0,10 -6.9,-4.7 z",height:10,width:21,heightElements:[],widthElements:[]},MARKER_LOOP:{d:"m {mx},{my} c 3.526979,0 6.386161,-2.829858 6.386161,-6.320661 0,-3.490806 -2.859182,-6.320661 -6.386161,-6.320661 -3.526978,0 -6.38616,2.829855 -6.38616,6.320661 0,1.745402 0.714797,3.325567 1.870463,4.469381 0.577834,0.571908 1.265885,1.034728 2.029916,1.35457 l -0.718163,-3.909793 m 0.718163,3.909793 -3.885211,0.802902",height:13.9,width:13.7,heightElements:[],widthElements:[]},MARKER_ADHOC:{d:"m {mx},{my} m 0.84461,2.64411 c 1.05533,-1.23780996 2.64337,-2.07882 4.29653,-1.97997996 2.05163,0.0805 3.85579,1.15803 5.76082,1.79107 1.06385,0.34139996 2.24454,0.1438 3.18759,-0.43767 0.61743,-0.33642 1.2775,-0.64078 1.7542,-1.17511 0,0.56023 0,1.12046 0,1.6807 -0.98706,0.96237996 -2.29792,1.62393996 -3.6918,1.66181996 -1.24459,0.0927 -2.46671,-0.2491 -3.59505,-0.74812 -1.35789,-0.55965 -2.75133,-1.33436996 -4.27027,-1.18121996 -1.37741,0.14601 -2.41842,1.13685996 -3.44288,1.96782996 z",height:4,width:15,heightElements:[],widthElements:[]},TASK_TYPE_SEND:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:14,width:21,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_SCRIPT:{d:"m {mx},{my} c 9.966553,-6.27276 -8.000926,-7.91932 2.968968,-14.938 l -8.802728,0 c -10.969894,7.01868 6.997585,8.66524 -2.968967,14.938 z m -7,-12 l 5,0 m -4.5,3 l 4.5,0 m -3,3 l 5,0m -4,3 l 5,0",height:15,width:12.6,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_USER_1:{d:"m {mx},{my} c 0.909,-0.845 1.594,-2.049 1.594,-3.385 0,-2.554 -1.805,-4.62199999 -4.357,-4.62199999 -2.55199998,0 -4.28799998,2.06799999 -4.28799998,4.62199999 0,1.348 0.974,2.562 1.89599998,3.405 -0.52899998,0.187 -5.669,2.097 -5.794,4.7560005 v 6.718 h 17 v -6.718 c 0,-2.2980005 -5.5279996,-4.5950005 -6.0509996,-4.7760005 zm -8,6 l 0,5.5 m 11,0 l 0,-5"},TASK_TYPE_USER_2:{d:"m {mx},{my} m 2.162,1.009 c 0,2.4470005 -2.158,4.4310005 -4.821,4.4310005 -2.66499998,0 -4.822,-1.981 -4.822,-4.4310005 "},TASK_TYPE_USER_3:{d:"m {mx},{my} m -6.9,-3.80 c 0,0 2.25099998,-2.358 4.27399998,-1.177 2.024,1.181 4.221,1.537 4.124,0.965 -0.098,-0.57 -0.117,-3.79099999 -4.191,-4.13599999 -3.57499998,0.001 -4.20799998,3.36699999 -4.20699998,4.34799999 z"},TASK_TYPE_MANUAL:{d:"m {mx},{my} c 0.234,-0.01 5.604,0.008 8.029,0.004 0.808,0 1.271,-0.172 1.417,-0.752 0.227,-0.898 -0.334,-1.314 -1.338,-1.316 -2.467,-0.01 -7.886,-0.004 -8.108,-0.004 -0.014,-0.079 0.016,-0.533 0,-0.61 0.195,-0.042 8.507,0.006 9.616,0.002 0.877,-0.007 1.35,-0.438 1.353,-1.208 0.003,-0.768 -0.479,-1.09 -1.35,-1.091 -2.968,-0.002 -9.619,-0.013 -9.619,-0.013 v -0.591 c 0,0 5.052,-0.016 7.225,-0.016 0.888,-0.002 1.354,-0.416 1.351,-1.193 -0.006,-0.761 -0.492,-1.196 -1.361,-1.196 -3.473,-0.005 -10.86,-0.003 -11.0829995,-0.003 -0.022,-0.047 -0.045,-0.094 -0.069,-0.139 0.3939995,-0.319 2.0409995,-1.626 2.4149995,-2.017 0.469,-0.4870005 0.519,-1.1650005 0.162,-1.6040005 -0.414,-0.511 -0.973,-0.5 -1.48,-0.236 -1.4609995,0.764 -6.5999995,3.6430005 -7.7329995,4.2710005 -0.9,0.499 -1.516,1.253 -1.882,2.19 -0.37000002,0.95 -0.17,2.01 -0.166,2.979 0.004,0.718 -0.27300002,1.345 -0.055,2.063 0.629,2.087 2.425,3.312 4.859,3.318 4.6179995,0.014 9.2379995,-0.139 13.8569995,-0.158 0.755,-0.004 1.171,-0.301 1.182,-1.033 0.012,-0.754 -0.423,-0.969 -1.183,-0.973 -1.778,-0.01 -5.824,-0.004 -6.04,-0.004 10e-4,-0.084 0.003,-0.586 10e-4,-0.67 z"},TASK_TYPE_INSTANTIATING_SEND:{d:"m {mx},{my} l 0,8.4 l 12.6,0 l 0,-8.4 z l 6.3,3.6 l 6.3,-3.6"},TASK_TYPE_SERVICE:{d:"m {mx},{my} v -1.71335 c 0.352326,-0.0705 0.703932,-0.17838 1.047628,-0.32133 0.344416,-0.14465 0.665822,-0.32133 0.966377,-0.52145 l 1.19431,1.18005 1.567487,-1.57688 -1.195028,-1.18014 c 0.403376,-0.61394 0.683079,-1.29908 0.825447,-2.01824 l 1.622133,-0.01 v -2.2196 l -1.636514,0.01 c -0.07333,-0.35153 -0.178319,-0.70024 -0.323564,-1.04372 -0.145244,-0.34406 -0.321407,-0.6644 -0.522735,-0.96217 l 1.131035,-1.13631 -1.583305,-1.56293 -1.129598,1.13589 c -0.614052,-0.40108 -1.302883,-0.68093 -2.022633,-0.82247 l 0.0093,-1.61852 h -2.241173 l 0.0042,1.63124 c -0.353763,0.0736 -0.705369,0.17977 -1.049785,0.32371 -0.344415,0.14437 -0.665102,0.32092 -0.9635006,0.52046 l -1.1698628,-1.15823 -1.5667691,1.5792 1.1684265,1.15669 c -0.4026573,0.61283 -0.68308,1.29797 -0.8247287,2.01713 l -1.6588041,0.003 v 2.22174 l 1.6724648,-0.006 c 0.073327,0.35077 0.1797598,0.70243 0.3242851,1.04472 0.1452428,0.34448 0.3214064,0.6644 0.5227339,0.96066 l -1.1993431,1.19723 1.5840256,1.56011 1.1964668,-1.19348 c 0.6140517,0.40346 1.3028827,0.68232 2.0233517,0.82331 l 7.19e-4,1.69892 h 2.226848 z m 0.221462,-3.9957 c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_SERVICE_FILL:{d:"m {mx},{my} c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_BUSINESS_RULE_HEADER:{d:"m {mx},{my} 0,4 20,0 0,-4 z"},TASK_TYPE_BUSINESS_RULE_MAIN:{d:"m {mx},{my} 0,12 20,0 0,-12 zm 0,8 l 20,0 m -13,-4 l 0,8"},MESSAGE_FLOW_MARKER:{d:"m {mx},{my} m -10.5 ,-7 l 0,14 l 21,0 l 0,-14 z l 10.5,6 l 10.5,-6"}},this.getRawPath=function(e){return this.pathMap[e].d},this.getScaledPath=function(e,t){var n,i,r=this.pathMap[e];t.abspos?(n=t.abspos.x,i=t.abspos.y):(n=t.containerWidth*t.position.mx,i=t.containerHeight*t.position.my);var o={};if(t.position){for(var s=t.containerHeight/r.height*t.yScaleFactor,a=t.containerWidth/r.width*t.xScaleFactor,l=0;l<r.heightElements.length;l++)o["y"+l]=r.heightElements[l]*s;for(var c=0;c<r.widthElements.length;c++)o["x"+c]=r.widthElements[c]*a}var h,u,p=(h=r.d,u={mx:n,my:i,e:o},String(h).replace(Wo,(function(e,t){return function(e,t,n){var i=n;return t.replace(Yo,(function(e,t,n,r,o){t=t||r,i&&(t in i&&(i=i[t]),"function"==typeof i&&o&&(i=i()))})),i=(null==i||i==n?e:i)+""}(e,t,u)})));return p}}]};var Uo={translate:["value",function(e,t){return t=t||{},e.replace(/{([^}]+)}/g,(function(e,n){return t[n]||"{"+n+"}"}))}]};function Zo(e,t,n){return I({id:e.id,type:e.$type,businessObject:e,di:t},n)}function Ko(e,t,n){var i=e.waypoint;return!i||i.length<2?[Rn(t),Rn(n)]:i.map((function(e){return{x:e.x,y:e.y}}))}function Jo(e,t,n,i){return new Error(e("element {element} referenced by {referenced}#{property} not yet drawn",{element:jr(n),referenced:jr(t),property:i}))}function es(e,t,n,i,r,o){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._translate=r,this._textRenderer=o}es.$inject=["eventBus","canvas","elementFactory","elementRegistry","translate","textRenderer"],es.prototype.add=function(e,t,n){var i,r,o,s=this._translate;if(Vr(t,"bpmndi:BPMNPlane")){var a=Vr(e,"bpmn:SubProcess")?{id:e.id+"_plane"}:{};i=this._elementFactory.createRoot(Zo(e,t,a)),this._canvas.addRootElement(i)}else if(Vr(t,"bpmndi:BPMNShape")){var l=!ho(e,t),c=function(e){return Vr(e,"bpmn:Group")}(e);r=n&&(n.hidden||n.collapsed);var h=t.bounds;i=this._elementFactory.createShape(Zo(e,t,{collapsed:l,hidden:r,x:Math.round(h.x),y:Math.round(h.y),width:Math.round(h.width),height:Math.round(h.height),isFrame:c})),Vr(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,i),Vr(e,"bpmn:Lane")&&(o=0),Vr(e,"bpmn:DataStoreReference")&&(function(e,t){var n=t.x,i=t.y;return n>=e.x&&n<=e.x+e.width&&i>=e.y&&i<=e.y+e.height}(n,Rn(h))||(n=this._canvas.findRoot(n))),this._canvas.addShape(i,n,o)}else{if(!Vr(t,"bpmndi:BPMNEdge"))throw new Error(s("unknown di {di} for element {semantic}",{di:jr(t),semantic:jr(e)}));var u=this._getSource(e),p=this._getTarget(e);r=n&&(n.hidden||n.collapsed),i=this._elementFactory.createConnection(Zo(e,t,{hidden:r,source:u,target:p,waypoints:Ko(t,u,p)})),Vr(e,"bpmn:DataAssociation")&&(n=this._canvas.findRoot(n)),this._canvas.addConnection(i,n,o)}return vo(e)&&_o(i)&&this.addLabel(e,t,i),this._eventBus.fire("bpmnElement.added",{element:i}),i},es.prototype._attachBoundary=function(e,t){var n=this._translate,i=e.attachedToRef;if(!i)throw new Error(n("missing {semantic}#attachedToRef",{semantic:jr(e)}));var r=this._elementRegistry.get(i.id),o=r&&r.attachers;if(!r)throw Jo(n,e,i,"attachedToRef");t.host=r,o||(r.attachers=o=[]),-1===o.indexOf(t)&&o.push(t)},es.prototype.addLabel=function(e,t,n){var i,r,o;return i=function(e,t){var n,i,r,o=e.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(mo.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=xo(t),i=mo),I({x:n.x-i.width/2,y:n.y-i.height/2},i)}(t,n),(r=_o(n))&&(i=this._textRenderer.getExternalLabelBounds(i,r)),o=this._elementFactory.createLabel(Zo(e,t,{id:e.id+"_label",labelTarget:n,type:"label",hidden:n.hidden||!_o(n),x:Math.round(i.x),y:Math.round(i.y),width:Math.round(i.width),height:Math.round(i.height)})),this._canvas.addShape(o,n.parent)},es.prototype._getConnectedElement=function(e,t){var n,i,r=e.$type,o=this._translate;if(i=e[t+"Ref"],"source"===t&&"bpmn:DataInputAssociation"===r&&(i=i&&i[0]),("source"===t&&"bpmn:DataOutputAssociation"===r||"target"===t&&"bpmn:DataInputAssociation"===r)&&(i=e.$parent),n=i&&this._getElement(i))return n;throw i?Jo(o,e,i,t+"Ref"):new Error(o("{semantic}#{side} Ref not specified",{semantic:jr(e),side:t}))},es.prototype._getSource=function(e){return this._getConnectedElement(e,"source")},es.prototype._getTarget=function(e){return this._getConnectedElement(e,"target")},es.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};var ts={__depends__:[Go,{__depends__:[Uo],bpmnImporter:["type",es]}]};function ns(e){e&&"function"==typeof e.stopPropagation&&e.stopPropagation()}function is(e){return e.originalEvent||e.srcEvent}function rs(e){ns(e),ns(is(e))}function os(e){return e.pointers&&e.pointers.length&&(e=e.pointers[0]),e.touches&&e.touches.length&&(e=e.touches[0]),e?{x:e.clientX,y:e.clientY}:null}function ss(e,t){return(is(e)||e).button===t}function as(e){return ss(e,0)}function ls(e){var t=is(e)||e;return!!as(e)&&(/mac/i.test(navigator.platform)?t.metaKey:t.ctrlKey)}function cs(e){var t=is(e)||e;return as(e)&&t.shiftKey}function hs(e){return!0}function us(e){return as(e)||function(e){return ss(e,1)}(e)}var ps=500;function ds(e,t,n){var i=this;function r(n,i,r){var o,s;(function(e,t){var n=l[e]||as;return!n(t)})(n,i)||(r?s=t.getGraphics(r):(o=i.delegateTarget||i.target)&&(s=o,r=t.get(s)),s&&r&&!1===e.fire(n,{element:r,gfx:s,originalEvent:i})&&(i.stopPropagation(),i.preventDefault()))}var o={};function s(e){return o[e]}var a={click:"element.click",contextmenu:"element.contextmenu",dblclick:"element.dblclick",mousedown:"element.mousedown",mousemove:"element.mousemove",mouseover:"element.hover",mouseout:"element.out",mouseup:"element.mouseup"},l={"element.contextmenu":hs,"element.mousedown":us,"element.mouseup":us,"element.click":us,"element.dblclick":us};var c="svg, .djs-element";function h(e,t,n,i){var s=o[n]=function(e){r(n,e)};i&&(l[n]=i),s.$delegate=ve.bind(e,c,t,s)}function u(e,t,n){var i=s(n);i&&ve.unbind(e,t,i.$delegate)}e.on("canvas.destroy",(function(e){!function(e){b(a,(function(t,n){u(e,n,t)}))}(e.svg)})),e.on("canvas.init",(function(e){!function(e){b(a,(function(t,n){h(e,n,t)}))}(e.svg)})),e.on(["shape.added","connection.added"],(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.createHit",{element:n,gfx:i})})),e.on(["shape.changed","connection.changed"],ps,(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.updateHit",{element:n,gfx:i})})),e.on("interactionEvents.createHit",ps,(function(e){var t=e.element,n=e.gfx;i.createDefaultHit(t,n)})),e.on("interactionEvents.updateHit",(function(e){var t=e.element,n=e.gfx;i.updateDefaultHit(t,n)}));var p=m("djs-hit djs-hit-stroke"),d=m("djs-hit djs-hit-click-stroke"),f={all:m("djs-hit djs-hit-all"),"click-stroke":d,stroke:p,"no-move":m("djs-hit djs-hit-no-move")};function m(e,t){return t=I({stroke:"white",strokeWidth:15},t||{}),n.cls(e,["no-fill","no-border"],t)}function g(e,t){var n=f[t];if(!n)throw new Error("invalid hit type <"+t+">");return Ae(e,n),e}function v(e,t){Se(e,t)}this.removeHits=function(e){b(Oe(".djs-hit",e),De)},this.createDefaultHit=function(e,t){var n,i=e.waypoints,r=e.isFrame;return i?this.createWaypointsHit(t,i):(n=r?"stroke":"all",this.createBoxHit(t,n,{width:e.width,height:e.height}))},this.createWaypointsHit=function(e,t){var n=vt(t);return g(n,"stroke"),v(e,n),n},this.createBoxHit=function(e,t,n){n=I({x:0,y:0},n);var i=Ie("rect");return g(i,t),Ae(i,n),v(e,i),i},this.updateDefaultHit=function(e,t){var n=_e(".djs-hit",t);if(n)return e.waypoints?yt(n,e.waypoints):Ae(n,{width:e.width,height:e.height}),n},this.fire=r,this.triggerMouseEvent=function(e,t,n){var i=a[e];if(!i)throw new Error("unmapped DOM event name <"+e+">");return r(i,t,n)},this.mouseHandler=s,this.registerEvent=h,this.unregisterEvent=u}ds.$inject=["eventBus","elementRegistry","styles"];var fs={__init__:["interactionEvents"],interactionEvents:["type",ds]},ms=500;function gs(e,t){this.offset=6;var n=t.cls("djs-outline",["no-fill"]),i=this;function r(e,t){var i=Ie("rect");return Ae(i,I({x:10,y:10,rx:4,width:100,height:100},n)),Se(e,i),i}e.on(["shape.added","shape.changed"],ms,(function(e){var t=e.element,n=e.gfx,o=_e(".djs-outline",n);o||(o=r(n)),i.updateShapeOutline(o,t)})),e.on(["connection.added","connection.changed"],(function(e){var t=e.element,n=e.gfx,o=_e(".djs-outline",n);o||(o=r(n)),i.updateConnectionOutline(o,t)}))}gs.prototype.updateShapeOutline=function(e,t){Ae(e,{x:-this.offset,y:-this.offset,width:t.width+2*this.offset,height:t.height+2*this.offset})},gs.prototype.updateConnectionOutline=function(e,t){var n=Et(t);Ae(e,{x:n.x-this.offset,y:n.y-this.offset,width:n.width+2*this.offset,height:n.height+2*this.offset})},gs.$inject=["eventBus","styles","elementRegistry"];var vs={__init__:["outline"],outline:["type",gs]};function ys(e,t){this._eventBus=e,this._canvas=t,this._selectedElements=[];var n=this;e.on(["shape.remove","connection.remove"],(function(e){var t=e.element;n.deselect(t)})),e.on(["diagram.clear","root.set"],(function(e){n.select(null)}))}ys.$inject=["eventBus","canvas"],ys.prototype.deselect=function(e){var t=this._selectedElements,n=t.indexOf(e);if(-1!==n){var i=t.slice();t.splice(n,1),this._eventBus.fire("selection.changed",{oldSelection:i,newSelection:t})}},ys.prototype.get=function(){return this._selectedElements},ys.prototype.isSelected=function(e){return-1!==this._selectedElements.indexOf(e)},ys.prototype.select=function(e,t){var n=this._selectedElements,i=n.slice();c(e)||(e=e?[e]:[]);var r=this._canvas,o=r.getRootElement();e=e.filter((function(e){var t=r.findRoot(e);return o===t})),t?b(e,(function(e){-1===n.indexOf(e)&&n.push(e)})):this._selectedElements=n=e.slice(),this._eventBus.fire("selection.changed",{oldSelection:i,newSelection:n})};var bs="hover",xs="selected",ws=6;function _s(e,t,n){this._canvas=e;var i=this;function r(t,n){e.addMarker(t,n)}function o(t,n){e.removeMarker(t,n)}this._multiSelectionBox=null,t.on("element.hover",(function(e){r(e.element,bs)})),t.on("element.out",(function(e){o(e.element,bs)})),t.on("selection.changed",(function(e){var t=e.oldSelection,n=e.newSelection;b(t,(function(e){-1===n.indexOf(e)&&function(e){o(e,xs)}(e)})),b(n,(function(e){-1===t.indexOf(e)&&function(e){r(e,xs)}(e)})),i._updateSelectionOutline(n)})),t.on("element.changed",(function(e){n.isSelected(e.element)&&i._updateSelectionOutline(n.get())}))}function Os(e,t,n,i){e.on("create.end",500,(function(e){var n=e.context,i=n.canExecute,r=n.elements,o=(n.hints||{}).autoSelect;if(i){if(!1===o)return;c(o)?t.select(o):t.select(r.filter(Es))}})),e.on("connect.end",500,(function(e){var n=e.context.connection;n&&t.select(n)})),e.on("shape.move.end",500,(function(e){var n=e.previousSelection||[],r=i.get(e.context.shape.id);g(n,(function(e){return r.id===e.id}))||t.select(r)})),e.on("element.click",(function(e){if(as(e)){var i=e.element;i===n.getRootElement()&&(i=null);var r=t.isSelected(i),o=t.get().length>1,s=ls(e)||cs(e);if(r&&o)return s?t.deselect(i):t.select(i);r?t.deselect(i):t.select(i,s)}}))}function Es(e){return!e.hidden}_s.$inject=["canvas","eventBus","selection"],_s.prototype._updateSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");Be(t);var n=e.length>1;if(Te(this._canvas.getContainer())[n?"add":"remove"]("djs-multi-select"),n){var i=function(e){return{x:e.x-ws,y:e.y-ws,width:e.width+2*ws,height:e.height+2*ws}}(Et(e)),r=Ie("rect");Ae(r,I({rx:3},i)),Te(r).add("djs-selection-outline"),Se(t,r)}},Os.$inject=["eventBus","selection","canvas","elementRegistry"];var ks={__init__:["selectionVisuals","selectionBehavior"],__depends__:[fs,vs],selection:["type",ys],selectionVisuals:["type",_s],selectionBehavior:["type",Os]};function Ss(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(1e9*Math.random())+"-"}Ss.prototype.next=function(){return this._prefix+ ++this._counter};var Cs=new Ss("ov");function Ps(e,t,n,i){var r,o;this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=Cs,this._overlayDefaults=I({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=(r=n.getContainer(),J(o=we('<div class="djs-overlay-container" />'),{position:"absolute",width:0,height:0}),r.insertBefore(o,r.firstChild),o),this._init()}function $s(e,t,n){J(e,{left:t+"px",top:n+"px"})}function As(e,t){e.style.display=!1===t?"none":""}function Rs(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach((function(n){e.style[n+"transform"]=t}))}Ps.$inject=["config.overlays","eventBus","canvas","elementRegistry"],Ps.prototype.get=function(e){if(d(e)&&(e={id:e}),d(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?y(t.overlays,T({type:e.type})):t.overlays.slice():[]}return e.type?y(this._overlays,T({type:e.type})):e.id?this._overlays[e.id]:null},Ps.prototype.add=function(e,t,n){if(h(t)&&(n=t,t=null),e.id||(e=this._elementRegistry.get(e)),!n.position)throw new Error("must specifiy overlay position");if(!n.html)throw new Error("must specifiy overlay html");if(!e)throw new Error("invalid element specified");var i=this._ids.next();return n=I({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},Ps.prototype.remove=function(e){var t=this.get(e)||[];c(t)||(t=[t]);var n=this;b(t,(function(e){var t=n._getOverlayContainer(e.element,!0);if(e&&(Ee(e.html),Ee(e.htmlContainer),delete e.htmlContainer,delete e.element,delete n._overlays[e.id]),t){var i=t.overlays.indexOf(e);-1!==i&&t.overlays.splice(i,1)}}))},Ps.prototype.isShown=function(){return"none"!==this._overlayRoot.style.display},Ps.prototype.show=function(){As(this._overlayRoot)},Ps.prototype.hide=function(){As(this._overlayRoot,!1)},Ps.prototype.clear=function(){this._overlays={},this._overlayContainers=[],re(this._overlayRoot)},Ps.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=Et(t);i=o.x,r=o.y}$s(n,i,r),ee(e.html,"data-container-id",t.id)},Ps.prototype._updateOverlay=function(e){var t,n,i=e.position,r=e.htmlContainer,o=e.element,s=i.left,a=i.top;void 0!==i.right&&(t=o.waypoints?Et(o).width:o.width,s=-1*i.right+t);void 0!==i.bottom&&(n=o.waypoints?Et(o).height:o.height,a=-1*i.bottom+n);$s(r,s||0,a||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Ps.prototype._createOverlayContainer=function(e){var t=we('<div class="djs-overlays" />');J(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},Ps.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";Rs(this._overlayRoot,n)},Ps.prototype._getOverlayContainer=function(e,t){var n=g(this._overlayContainers,(function(t){return t.element===e}));return n||t?n:this._createOverlayContainer(e)},Ps.prototype._addOverlay=function(e){var t,n,i=e.id,r=e.element,o=e.html;o.get&&o.constructor.prototype.jquery&&(o=o.get(0)),d(o)&&(o=we(o)),n=this._getOverlayContainer(r),J(t=we('<div class="djs-overlay" data-overlay-id="'+i+'">'),{position:"absolute"}),t.appendChild(o),e.type&&ne(t).add("djs-overlay-"+e.type),As(t,this._canvas.findRoot(r)===this._canvas.getRootElement()),e.htmlContainer=t,n.overlays.push(e),n.html.appendChild(t),this._overlays[i]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Ps.prototype._updateOverlayVisibilty=function(e,t){var n=e.show,i=this._canvas.findRoot(e.element),r=n&&n.minZoom,o=n&&n.maxZoom,s=e.htmlContainer,l=!0;(i!==this._canvas.getRootElement()||n&&(a(r)&&r>t.scale||a(o)&&o<t.scale))&&(l=!1),As(s,l),this._updateOverlayScale(e,t)},Ps.prototype._updateOverlayScale=function(e,t){var n,i,r,o=e.scale,s=e.htmlContainer,l="";!0!==o&&(!1===o?(n=1,i=1):(n=o.min,i=o.max),a(n)&&t.scale<n&&(r=(1/t.scale||1)*n),a(i)&&t.scale>i&&(r=(1/t.scale||1)*i)),a(r)&&(l="scale("+r+","+r+")"),Rs(s,l)},Ps.prototype._updateOverlaysVisibilty=function(e){var t=this;b(this._overlays,(function(n){t._updateOverlayVisibilty(n,e)}))},Ps.prototype._init=function(){var e=this._eventBus,t=this;e.on("canvas.viewbox.changing",(function(e){t.hide()})),e.on("canvas.viewbox.changed",(function(e){var n;n=e.viewbox,t._updateRoot(n),t._updateOverlaysVisibilty(n),t.show()})),e.on(["shape.remove","connection.remove"],(function(e){var n=e.element;b(t.get({element:n}),(function(e){t.remove(e.id)}));var i=t._getOverlayContainer(n);if(i){Ee(i.html);var r=t._overlayContainers.indexOf(i);-1!==r&&t._overlayContainers.splice(r,1)}})),e.on("element.changed",500,(function(e){var n=e.element,i=t._getOverlayContainer(n,!0);i&&(b(i.overlays,(function(e){t._updateOverlay(e)})),t._updateOverlayContainer(i))})),e.on("element.marker.update",(function(e){var n=t._getOverlayContainer(e.element,!0);n&&ne(n.html)[e.add?"add":"remove"](e.marker)})),e.on("root.set",(function(){t._updateOverlaysVisibilty(t._canvas.viewbox())})),e.on("diagram.clear",this.clear,this)};var Ts={__init__:["overlays"],overlays:["type",Ps]};function Ms(e,t,n,i){e.on("element.changed",(function(i){var r=i.element;(r.parent||r===t.getRootElement())&&(i.gfx=n.getGraphics(r)),i.gfx&&e.fire(kt(r)+".changed",i)})),e.on("elements.changed",(function(t){var n=t.elements;n.forEach((function(t){e.fire("element.changed",{element:t})})),i.updateContainments(n)})),e.on("shape.changed",(function(e){i.update("shape",e.element,e.gfx)})),e.on("connection.changed",(function(e){i.update("connection",e.element,e.gfx)}))}Ms.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];var Ds={__init__:["changeSupport"],changeSupport:["type",Ms]};function Bs(e){this._eventBus=e}function Ls(e){return function(t,n,i,r,o){(p(t)||u(t))&&(o=r,r=i,i=n,n=t,t=null),this.on(t,e,n,i,r,o)}}function Ns(e,t){t.invoke(Bs,this),this.executed((function(t){var n=t.context;n.rootElement?e.setRootElement(n.rootElement):n.rootElement=e.getRootElement()})),this.revert((function(t){var n=t.context;n.rootElement&&e.setRootElement(n.rootElement)}))}Bs.$inject=["eventBus"],Bs.prototype.on=function(e,t,n,i,r,o){if((p(t)||u(t))&&(o=r,r=i,i=n,n=t,t=null),p(n)&&(o=r,r=i,i=n,n=1e3),h(r)&&(o=r,r=!1),!p(i))throw new Error("handlerFn must be a function");c(e)||(e=[e]);var s=this._eventBus;b(e,(function(e){var a=["commandStack",e,t].filter((function(e){return e})).join(".");s.on(a,n,r?function(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}(i,o):i,o)}))},Bs.prototype.canExecute=Ls("canExecute"),Bs.prototype.preExecute=Ls("preExecute"),Bs.prototype.preExecuted=Ls("preExecuted"),Bs.prototype.execute=Ls("execute"),Bs.prototype.executed=Ls("executed"),Bs.prototype.postExecute=Ls("postExecute"),Bs.prototype.postExecuted=Ls("postExecuted"),Bs.prototype.revert=Ls("revert"),Bs.prototype.reverted=Ls("reverted"),e(Ns,Bs),Ns.$inject=["canvas","injector"];var js={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",Ns]};function zs(e){return CSS.escape(e)}var Is={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function Xs(e){return(e=""+e)&&e.replace(/[&<>"']/g,(function(e){return Is[e]}))}var Qs="_plane";function Fs(e){return function(e){return e.replace(new RegExp(Qs+"$"),"")}(e.id)}function Vs(e){var t=e.id;return Vr(e,"bpmn:SubProcess")?Ws(t):t}function qs(e){return Ws(e)}function Hs(e){return Vr(Wr(e),"bpmndi:BPMNPlane")}function Ws(e){return e+Qs}var Ys="bjs-breadcrumbs-shown";function Gs(e,t,n){var i=we('<ul class="bjs-breadcrumbs"></ul>'),r=n.getContainer(),o=ne(r);r.appendChild(i);var s=[];function a(e){e&&(s=function(e){for(var t=Hr(e),n=[],i=t;i;i=i.$parent)(Vr(i,"bpmn:SubProcess")||Vr(i,"bpmn:Process"))&&n.push(i);return n.reverse()}(e));var r=s.map((function(e){var i=Xs(e.name||e.id),r=we('<li><span class="bjs-crumb"><a title="'+i+'">'+i+"</a></span></li>"),o=n.findRoot(Vs(e))||n.findRoot(e.id);if(!o&&Vr(e,"bpmn:Process")){var s=t.find((function(t){var n=Hr(t);return n&&n.get("processRef")&&n.get("processRef")===e}));o=n.findRoot(s.id)}return r.addEventListener("click",(function(){n.setRootElement(o)})),r}));i.innerHTML="";var a=r.length>1;o.toggle(Ys,a),r.forEach((function(e){i.appendChild(e)}))}e.on("element.changed",(function(e){var t=Hr(e.element);g(s,(function(e){return e===t}))&&a()})),e.on("root.set",(function(e){a(e.element)}))}function Us(e,t){var n=null,i=new Zs;e.on("root.set",(function(e){var r=e.element,o=t.viewbox(),s=i.get(r);if(i.set(n,{x:o.x,y:o.y,zoom:o.scale}),n=r,!Vr(r,"bpmn:Collaboration")||s){s=s||{x:0,y:0,zoom:1};var a=(o.x-s.x)*o.scale,l=(o.y-s.y)*o.scale;0===a&&0===l||t.scroll({dx:a,dy:l}),s.zoom!==o.scale&&t.zoom(s.zoom,{x:0,y:0})}})),e.on("diagram.clear",(function(){i.clear(),n=null}))}function Zs(){this._entries=[],this.set=function(e,t){var n=!1;for(var i in this._entries)if(this._entries[i][0]===e){this._entries[i][1]=t,n=!0;break}n||this._entries.push([e,t])},this.get=function(e){for(var t in this._entries)if(this._entries[t][0]===e)return this._entries[t][1];return null},this.clear=function(){this._entries.length=0},this.remove=function(e){var t=-1;for(var n in this._entries)if(this._entries[n][0]===e){t=n;break}-1!==t&&this._entries.splice(t,1)}}Gs.$inject=["eventBus","elementRegistry","canvas"],Us.$inject=["eventBus","canvas"];var Ks=180,Js=160;function ea(e,t){this._eventBus=e,this._moddle=t;var n=this;e.on("import.render.start",1500,(function(e,t){n._handleImport(t.definitions)}))}function ta(e){return Vr(e,"bpmndi:BPMNDiagram")?e:ta(e.$parent)}ea.prototype._handleImport=function(e){if(e.diagrams){var t=this;this._definitions=e,this._processToDiagramMap={},e.diagrams.forEach((function(e){e.plane&&e.plane.bpmnElement&&(t._processToDiagramMap[e.plane.bpmnElement.id]=e)}));var n=[];e.diagrams.forEach((function(e){var i=t._createNewDiagrams(e.plane);Array.prototype.push.apply(n,i)})),n.forEach((function(e){t._movePlaneElementsToOrigin(e.plane)}))}},ea.prototype._createNewDiagrams=function(e){var t=this,n=[],i=[];e.get("planeElement").forEach((function(t){var r=t.bpmnElement;if(r){var o=r.$parent;Vr(r,"bpmn:SubProcess")&&!t.isExpanded&&n.push(r),function(e,t){var n=e.$parent;if(!Vr(n,"bpmn:SubProcess")||n===t.bpmnElement)return!1;if(qr(e,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))return!1;return!0}(r,e)&&i.push({diElement:t,parent:o})}}));var r=[];return n.forEach((function(e){if(!t._processToDiagramMap[e.id]){var n=t._createDiagram(e);t._processToDiagramMap[e.id]=n,r.push(n)}})),i.forEach((function(e){for(var i=e.diElement,r=e.parent;r&&-1===n.indexOf(r);)r=r.$parent;if(r){var o=t._processToDiagramMap[r.id];t._moveToDiPlane(i,o.plane)}})),r},ea.prototype._movePlaneElementsToOrigin=function(e){var t=e.get("planeElement"),n=function(e){var t={top:1/0,right:-1/0,bottom:-1/0,left:1/0};return e.planeElement.forEach((function(e){if(e.bounds){var n=Pn(e.bounds);t.top=Math.min(n.top,t.top),t.left=Math.min(n.left,t.left)}})),$n(t)}(e),i=n.x-Ks,r=n.y-Js;t.forEach((function(e){e.waypoint?e.waypoint.forEach((function(e){e.x=e.x-i,e.y=e.y-r})):e.bounds&&(e.bounds.x=e.bounds.x-i,e.bounds.y=e.bounds.y-r)}))},ea.prototype._moveToDiPlane=function(e,t){var n=ta(e).plane.get("planeElement");n.splice(n.indexOf(e),1),t.get("planeElement").push(e)},ea.prototype._createDiagram=function(e){var t=this._moddle.create("bpmndi:BPMNPlane",{bpmnElement:e}),n=this._moddle.create("bpmndi:BPMNDiagram",{plane:t});return t.$parent=n,t.bpmnElement=e,n.$parent=this._definitions,this._definitions.diagrams.push(n),n},ea.$inject=["eventBus","moddle"];var na=250;function ia(e,t,n,i){Bs.call(this,t),this._canvas=e,this._eventBus=t,this._elementRegistry=n,this._overlays=i;var r=this;this.executed("shape.toggleCollapse",na,(function(e){var t=e.shape;r._canDrillDown(t)?r._addOverlay(t):r._removeOverlay(t)}),!0),this.reverted("shape.toggleCollapse",na,(function(e){var t=e.shape;r._canDrillDown(t)?r._addOverlay(t):r._removeOverlay(t)}),!0),this.executed(["shape.create","shape.move","shape.delete"],na,(function(e){var t=e.oldParent,n=e.newParent||e.parent,i=e.shape;r._canDrillDown(i)&&r._addOverlay(i),r._updateDrilldownOverlay(t),r._updateDrilldownOverlay(n),r._updateDrilldownOverlay(i)}),!0),this.reverted(["shape.create","shape.move","shape.delete"],na,(function(e){var t=e.oldParent,n=e.newParent||e.parent,i=e.shape;r._canDrillDown(i)&&r._addOverlay(i),r._updateDrilldownOverlay(t),r._updateDrilldownOverlay(n),r._updateDrilldownOverlay(i)}),!0),t.on("import.render.complete",(function(){n.filter((function(e){return r._canDrillDown(e)})).map((function(e){r._addOverlay(e)}))}))}e(ia,Bs),ia.prototype._updateDrilldownOverlay=function(e){var t=this._canvas;if(e){var n=t.findRoot(e);n&&this._updateOverlayVisibility(n)}},ia.prototype._canDrillDown=function(e){var t=this._canvas;return Vr(e,"bpmn:SubProcess")&&t.findRoot(Vs(e))},ia.prototype._updateOverlayVisibility=function(e){var t=this._overlays,n=Hr(e),i=t.get({element:n.id,type:"drilldown"})[0];if(i){var r=n&&n.get("flowElements")&&n.get("flowElements").length;ne(i.html).toggle("bjs-drilldown-empty",!r)}},ia.prototype._addOverlay=function(e){var t=this._canvas,n=this._overlays;n.get({element:e,type:"drilldown"}).length&&this._removeOverlay(e);var i=we('<button class="bjs-drilldown"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M4.81801948,3.50735931 L10.4996894,9.1896894 L10.5,4 L12,4 L12,12 L4,12 L4,10.5 L9.6896894,10.4996894 L3.75735931,4.56801948 C3.46446609,4.27512627 3.46446609,3.80025253 3.75735931,3.50735931 C4.05025253,3.21446609 4.52512627,3.21446609 4.81801948,3.50735931 Z"/></svg></button>');i.addEventListener("click",(function(){t.setRootElement(t.findRoot(Vs(e)))})),n.add(e,"drilldown",{position:{bottom:-7,right:-8},html:i}),this._updateOverlayVisibility(e)},ia.prototype._removeOverlay=function(e){this._overlays.remove({element:e,type:"drilldown"})},ia.$inject=["canvas","eventBus","elementRegistry","overlays"];var ra={__depends__:[Ts,Ds,js],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",Gs],drilldownCentering:["type",Us],drilldownOverlayBehavior:["type",ia],subprocessCompatibility:["type",ea]};function oa(e){oo.call(this,e)}e(oa,oo),oa.prototype._modules=[ts,Uo,ks,Ts,ra],oa.prototype._moddleExtensions={};var sa=["c","C"],aa=["v","V"],la=["y","Y"],ca=["z","Z"];function ha(e){return!e.altKey&&(e.ctrlKey||e.metaKey)}function ua(e,t){return-1!==(e=c(e)?e:[e]).indexOf(t.key)||-1!==e.indexOf(t.code)}function pa(e){return e.shiftKey}function da(e){return ha(e)&&!pa(e)&&ua(ca,e)}function fa(e){return ha(e)&&(ua(la,e)||ua(ca,e)&&pa(e))}var ma="keyboard.keydown",ga="input-handle-modified-keys";function va(e,t){var n=this;this._config=e||{},this._eventBus=t,this._keydownHandler=this._keydownHandler.bind(this),this._keyupHandler=this._keyupHandler.bind(this),t.on("diagram.destroy",(function(){n._fire("destroy"),n.unbind()})),t.on("diagram.init",(function(){n._fire("init")})),t.on("attach",(function(){e&&e.bindTo&&n.bind(e.bindTo)})),t.on("detach",(function(){n.unbind()}))}va.$inject=["config.keyboard","eventBus"],va.prototype._keydownHandler=function(e){this._keyHandler(e,ma)},va.prototype._keyupHandler=function(e){this._keyHandler(e,"keyboard.keyup")},va.prototype._keyHandler=function(e,t){if(!this._isEventIgnored(e)){var n={keyEvent:e};this._eventBus.fire(t||ma,n)&&e.preventDefault()}},va.prototype._isEventIgnored=function(e){return!!e.defaultPrevented||(t=e.target)&&(oe(t,"input, textarea")||"true"===t.contentEditable)&&this._isModifiedKeyIgnored(e);var t},va.prototype._isModifiedKeyIgnored=function(e){return!ha(e)||-1===this._getAllowedModifiers(e.target).indexOf(e.key)},va.prototype._getAllowedModifiers=function(e){var t=se(e,"["+ga+"]",!0);return!t||this._node&&!this._node.contains(t)?[]:t.getAttribute(ga).split(",")},va.prototype.bind=function(e){this.unbind(),this._node=e,fe.bind(e,"keydown",this._keydownHandler),fe.bind(e,"keyup",this._keyupHandler),this._fire("bind")},va.prototype.getBinding=function(){return this._node},va.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),fe.unbind(e,"keydown",this._keydownHandler),fe.unbind(e,"keyup",this._keyupHandler)),this._node=null},va.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},va.prototype.addListener=function(e,t,n){p(e)&&(n=t,t=e,e=1e3),this._eventBus.on(n||ma,e,t)},va.prototype.removeListener=function(e,t){this._eventBus.off(t||ma,e)},va.prototype.hasModifier=function(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey},va.prototype.isCmd=ha,va.prototype.isShift=pa,va.prototype.isKey=ua;var ya=500;function ba(e,t){var n=this;e.on("editorActions.init",ya,(function(e){var i=e.editorActions;n.registerBindings(t,i)}))}ba.$inject=["eventBus","keyboard"],ba.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}n("undo",(function(e){if(da(e.keyEvent))return t.trigger("undo"),!0})),n("redo",(function(e){if(fa(e.keyEvent))return t.trigger("redo"),!0})),n("copy",(function(e){if(function(e){return ha(e)&&ua(sa,e)}(e.keyEvent))return t.trigger("copy"),!0})),n("paste",(function(e){if(function(e){return ha(e)&&ua(aa,e)}(e.keyEvent))return t.trigger("paste"),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(ua(["+","Add","="],n)&&ha(n))return t.trigger("stepZoom",{value:1}),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(ua(["-","Subtract"],n)&&ha(n))return t.trigger("stepZoom",{value:-1}),!0})),n("zoom",(function(e){var n=e.keyEvent;if(ua("0",n)&&ha(n))return t.trigger("zoom",{value:1}),!0})),n("removeSelection",(function(e){if(ua(["Backspace","Delete","Del"],e.keyEvent))return t.trigger("removeSelection"),!0}))};var xa={__init__:["keyboard","keyboardBindings"],keyboard:["type",va],keyboardBindings:["type",ba]},wa={moveSpeed:50,moveSpeedAccelerated:200};function _a(e,t,n){var i=this;this._config=I({},wa,e||{}),t.addListener((function(e){var n=e.keyEvent,r=i._config;if(!t.isCmd(n))return;if(t.isKey(["ArrowLeft","Left","ArrowUp","Up","ArrowDown","Down","ArrowRight","Right"],n)){var o,s=t.isShift(n)?r.moveSpeedAccelerated:r.moveSpeed;switch(n.key){case"ArrowLeft":case"Left":o="left";break;case"ArrowUp":case"Up":o="up";break;case"ArrowRight":case"Right":o="right";break;case"ArrowDown":case"Down":o="down"}return i.moveCanvas({speed:s,direction:o}),!0}})),this.moveCanvas=function(e){var t=0,i=0,r=e.speed/Math.min(Math.sqrt(n.viewbox().scale),1);switch(e.direction){case"left":t=r;break;case"up":i=r;break;case"right":t=-r;break;case"down":i=-r}n.scroll({dx:t,dy:i})}}_a.$inject=["config.keyboardMove","keyboard","canvas"];var Oa={__depends__:[xa],__init__:["keyboardMove"],keyboardMove:["type",_a]},Ea=/^djs-cursor-.*$/;function ka(e){var t=ne(document.body);t.removeMatching(Ea),e&&t.add("djs-cursor-"+e)}function Sa(){ka(null)}var Ca=5e3;function Pa(e,t){function n(){return!1}return t=t||"element.click",e.once(t,Ca,n),function(){e.off(t,n)}}function $a(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function Aa(e,t){return{x:e.x-t.x,y:e.y-t.y}}var Ra=15;function Ta(e,t){var n;function i(i){var r,o=n.start,s=n.button,a=os(i),l=Aa(a,o);(!n.dragging&&(r=l,Math.sqrt(Math.pow(r.x,2)+Math.pow(r.y,2))>Ra)&&(n.dragging=!0,0===s&&Pa(e),ka("grab")),n.dragging)&&(l=Aa(a,n.last||n.start),t.scroll({dx:l.x,dy:l.y}),n.last=a);i.preventDefault()}function r(e){fe.unbind(document,"mousemove",i),fe.unbind(document,"mouseup",r),n=null,Sa()}e.on("element.mousedown",500,(function(e){return function(e){if(se(e.target,".djs-draggable"))return;var t=e.button;if(t>=2||e.ctrlKey||e.shiftKey||e.altKey)return;return n={button:t,start:os(e)},fe.bind(document,"mousemove",i),fe.bind(document,"mouseup",r),!0}(e.originalEvent)})),this.isActive=function(){return!!n}}Ta.$inject=["eventBus","canvas"];var Ma={__init__:["moveCanvas"],moveCanvas:["type",Ta]};function Da(e){return Math.log(e)/Math.log(10)}function Ba(e,t){var n=Da(e.min),i=Da(e.max);return(Math.abs(n)+Math.abs(i))/t}var La=Math.sign||function(e){return e>=0?1:-1},Na={min:.2,max:4},ja=.75;function za(e,t,n){e=e||{},this._enabled=!1,this._canvas=n,this._container=n._container,this._handleWheel=z(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||ja;var i=this;t.on("canvas.init",(function(t){i._init(!1!==e.enabled)}))}za.$inject=["config.zoomScroll","eventBus","canvas"],za.prototype.scroll=function(e){this._canvas.scroll(e)},za.prototype.reset=function(){this._canvas.zoom("fit-viewport")},za.prototype.zoom=function(e,t){var n=Ba(Na,20);this._totalDelta+=e,Math.abs(this._totalDelta)>.1&&(this._zoom(e,t,n),this._totalDelta=0)},za.prototype._handleWheel=function(e){if(!se(e.target,".djs-scrollable",!0)){var t=this._container;e.preventDefault();var n,i=e.ctrlKey,r=e.shiftKey,o=-1*this._scale;if(o*=i?0===e.deltaMode?.02:.32:0===e.deltaMode?1:16,i){var s=t.getBoundingClientRect(),a={x:e.clientX-s.left,y:e.clientY-s.top};n=Math.sqrt(Math.pow(e.deltaY,2)+Math.pow(e.deltaX,2))*La(e.deltaY)*o,this.zoom(n,a)}else n=r?{dx:o*e.deltaY,dy:0}:{dx:o*e.deltaX,dy:o*e.deltaY},this.scroll(n)}},za.prototype.stepZoom=function(e,t){var n=Ba(Na,10);this._zoom(e,t,n)},za.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=Da(i.zoom()),s=Math.round(o/n)*n;s+=n*r;var a,l,c=Math.pow(10,s);i.zoom((a=Na,l=c,Math.max(a.min,Math.min(a.max,l))),t)},za.prototype.toggle=function(e){var t=this._container,n=this._handleWheel,i=this._enabled;return void 0===e&&(e=!i),i!==e&&fe[e?"bind":"unbind"](t,"wheel",n,!1),this._enabled=e,e},za.prototype._init=function(e){this.toggle(e)};var Ia={__init__:["zoomScroll"],zoomScroll:["type",za]};function Xa(e){oa.call(this,e)}e(Xa,oa),Xa.prototype._navigationModules=[Oa,Ma,Ia],Xa.prototype._modules=[].concat(oa.prototype._modules,Xa.prototype._navigationModules);var Qa={exports:{}};
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).BpmnModeler=t()}(this,(function(){"use strict";function e(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}var t=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e){var t=e.exports=function(e,n){if(n||(n=16),void 0===e&&(e=128),e<=0)return"0";for(var i=Math.log(Math.pow(2,e))/Math.log(n),r=2;i===1/0;r*=2)i=Math.log(Math.pow(2,e/r))/Math.log(n)*r;var o=i-Math.floor(i),s="";for(r=0;r<Math.floor(i);r++){s=Math.floor(Math.random()*n).toString(n)+s}if(o){var a=Math.pow(n,o);s=Math.floor(Math.random()*a).toString(n)+s}var l=parseInt(s,n);return l!==1/0&&l>=Math.pow(2,e)?t(e,n):s};t.rack=function(e,n,i){var r=function(r){var s=0;do{if(s++>10){if(!i)throw new Error("too many ID collisions, use more bits");e+=i}var a=t(e,n)}while(Object.hasOwnProperty.call(o,a));return o[a]=r,a},o=r.hats={};return r.get=function(e){return r.hats[e]},r.set=function(e,t){return r.hats[e]=t,r},r.bits=e||128,r.base=n||16,r}}));function n(e){if(!(this instanceof n))return new n(e);e=e||[128,36,1],this._seed=e.length?t.rack(e[0],e[1],e[2]):e}function i(e){return Array.prototype.concat.apply([],e)}n.prototype.next=function(e){return this._seed(e||!0)},n.prototype.nextPrefixed=function(e,t){var n;do{n=e+this.next(!0)}while(this.assigned(n));return this.claim(n,t),n},n.prototype.claim=function(e,t){this._seed.set(e,t||!0)},n.prototype.assigned=function(e){return this._seed.get(e)||!1},n.prototype.unclaim=function(e){delete this._seed.hats[e]},n.prototype.clear=function(){var e,t=this._seed.hats;for(e in t)this.unclaim(e)};const r=Object.prototype.toString,o=Object.prototype.hasOwnProperty;function s(e){return void 0===e}function a(e){return void 0!==e}function l(e){return null==e}function c(e){return"[object Array]"===r.call(e)}function h(e){return"[object Object]"===r.call(e)}function u(e){return"[object Number]"===r.call(e)}function p(e){const t=r.call(e);return"[object Function]"===t||"[object AsyncFunction]"===t||"[object GeneratorFunction]"===t||"[object AsyncGeneratorFunction]"===t||"[object Proxy]"===t}function d(e){return"[object String]"===r.call(e)}function f(e){if(!c(e))throw new Error("must supply array")}function m(e,t){return o.call(e,t)}function g(e,t){const n=D(t);let i;return b(e,(function(e,t){if(n(e,t))return i=e,!1})),i}function v(e,t){const n=D(t);let i=c(e)?-1:void 0;return b(e,(function(e,t){if(n(e,t))return i=t,!1})),i}function y(e,t){const n=D(t);let i=[];return b(e,(function(e,t){n(e,t)&&i.push(e)})),i}function b(e,t){let n,i;if(s(e))return;const r=c(e)?L:B;for(let o in e)if(m(e,o)&&(n=e[o],i=t(n,r(o)),!1===i))return n}function x(e,t){if(s(e))return[];f(e);const n=D(t);return e.filter((function(e,t){return!n(e,t)}))}function w(e,t,n){return b(e,(function(e,i){n=t(n,e,i)})),n}function _(e,t){return!!w(e,(function(e,n,i){return e&&t(n,i)}),!0)}function O(e,t){return!!g(e,t)}function E(e,t){let n=[];return b(e,(function(e,i){n.push(t(e,i))})),n}function k(e){return e&&Object.keys(e)||[]}function S(e){return k(e).length}function C(e){return E(e,(e=>e))}function P(e,t,n={}){return t=M(t),b(e,(function(e){let i=t(e)||"_",r=n[i];r||(r=n[i]=[]),r.push(e)})),n}function $(e,...t){e=M(e);let n={};return b(t,(t=>P(t,e,n))),E(n,(function(e,t){return e[0]}))}const A=$;function R(e,t){t=M(t);let n=[];return b(e,(function(e,i){let r=t(e,i),o={d:r,v:e};for(var s=0;s<n.length;s++){let{d:e}=n[s];if(r<e)return void n.splice(s,0,o)}n.push(o)})),E(n,(e=>e.v))}function T(e){return function(t){return _(e,(function(e,n){return t[n]===e}))}}function M(e){return p(e)?e:t=>t[e]}function D(e){return p(e)?e:t=>t===e}function B(e){return e}function L(e){return Number(e)}function N(e,t){let n,i,r,o;function s(n){let s=Date.now(),c=n?0:o+t-s;if(c>0)return a(c);e.apply(r,i),l()}function a(e){n=setTimeout(s,e)}function l(){n&&clearTimeout(n),n=o=i=r=void 0}function c(...e){o=Date.now(),i=e,r=this,n||a(t)}return c.flush=function(){n&&s(!0),l()},c.cancel=l,c}function j(e,t){let n=!1;return function(...i){n||(e(...i),n=!0,setTimeout((()=>{n=!1}),t))}}function z(e,t){return e.bind(t)}function I(e,...t){return Object.assign(e,...t)}function X(e,t,n){let i=e;return b(t,(function(e,r){if("number"!=typeof e&&"string"!=typeof e)throw new Error("illegal key type: "+typeof e+". Key should be of type number or string.");if("constructor"===e)throw new Error("illegal key: constructor");if("__proto__"===e)throw new Error("illegal key: __proto__");let o=t[r+1],c=i[e];a(o)&&l(c)&&(c=i[e]=isNaN(+o)?{}:[]),s(o)?s(n)?delete i[e]:i[e]=n:i=c})),e}function Q(e,t,n){let i=e;return b(t,(function(e){if(l(i))return i=void 0,!1;i=i[e]})),s(i)?n:i}function F(e,t){let n={},i=Object(e);return b(t,(function(t){t in i&&(n[t]=e[t])})),n}function V(e,t){let n={};return b(Object(e),(function(e,i){-1===t.indexOf(i)&&(n[i]=e)})),n}var q=Object.freeze({__proto__:null,assign:I,bind:z,debounce:N,ensureArray:f,every:_,filter:y,find:g,findIndex:v,flatten:i,forEach:b,get:Q,groupBy:P,has:m,isArray:c,isDefined:a,isFunction:p,isNil:l,isNumber:u,isObject:h,isString:d,isUndefined:s,keys:k,map:E,matchPattern:T,merge:function e(t,...n){return n.length?(b(n,(function(n){n&&h(n)&&b(n,(function(n,i){if("__proto__"===i)return;let r=t[i];h(n)?(h(r)||(r={}),t[i]=e(r,n)):t[i]=n}))})),t):t},omit:V,pick:F,reduce:w,set:X,size:S,some:O,sortBy:R,throttle:j,unionBy:A,uniqueBy:$,values:C,without:x});function H(e,t){return t.forEach((function(t){t&&"string"!=typeof t&&!Array.isArray(t)&&Object.keys(t).forEach((function(n){if("default"!==n&&!(n in e)){var i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,i.get?i:{enumerable:!0,get:function(){return t[n]}})}}))})),Object.freeze(e)}const W=Object.prototype.toString,Y=Object.prototype.hasOwnProperty;function G(e,t){return Y.call(e,t)}function U(e,t){let n,i;if(void 0===e)return;const r=function(e){return"[object Array]"===W.call(e)}(e)?K:Z;for(let o in e)if(G(e,o)&&(n=e[o],i=t(n,r(o)),!1===i))return n}function Z(e){return e}function K(e){return Number(e)}function J(e,...t){const n=e.style;return U(t,(function(e){e&&U(e,(function(e,t){n[t]=e}))})),e}function ee(e,t,n){return 2==arguments.length?e.getAttribute(t):null===n?e.removeAttribute(t):(e.setAttribute(t,n),e)}const te=Object.prototype.toString;function ne(e){return new ie(e)}function ie(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function re(e){for(var t;e.childNodes.length;)t=e.childNodes[0],e.removeChild(t);return e}function oe(e,t){return e&&"function"==typeof e.matches&&e.matches(t)}function se(e,t,n){for(var i=n?e:e.parentNode;i&&i.nodeType!==document.DOCUMENT_NODE&&i.nodeType!==document.DOCUMENT_FRAGMENT_NODE;){if(oe(i,t))return i;i=i.parentNode}return oe(i,t)?i:null}ie.prototype.add=function(e){return this.list.add(e),this},ie.prototype.remove=function(e){return"[object RegExp]"==te.call(e)?this.removeMatching(e):(this.list.remove(e),this)},ie.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},ie.prototype.toggle=function(e,t){return void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},ie.prototype.array=function(){return Array.from(this.list)},ie.prototype.has=ie.prototype.contains=function(e){return this.list.contains(e)};var ae,le,ce,he={};function ue(){ae=window.addEventListener?"addEventListener":"attachEvent",le=window.removeEventListener?"removeEventListener":"detachEvent",ce="addEventListener"!==ae?"on":""}var pe=he.bind=function(e,t,n,i){return ae||ue(),e[ae](ce+t,n,i||!1),n},de=he.unbind=function(e,t,n,i){return le||ue(),e[le](ce+t,n,i||!1),n},fe=H({__proto__:null,bind:pe,unbind:de,default:he},[he]),me=["focus","blur"];var ge,ve={bind:function(e,t,n,i,r){return-1!==me.indexOf(n)&&(r=!0),fe.bind(e,n,(function(n){var r=n.target||n.srcElement;n.delegateTarget=se(r,t,!0),n.delegateTarget&&i.call(e,n)}),r)},unbind:function(e,t,n,i){return-1!==me.indexOf(t)&&(i=!0),fe.unbind(e,t,n,i)}},ye=function(e,t){if("string"!=typeof e)throw new TypeError("String expected");t||(t=document);var n=/<([\w:]+)/.exec(e);if(!n)return t.createTextNode(e);e=e.replace(/^\s+|\s+$/g,"");var i=n[1];if("body"==i){return(l=t.createElement("html")).innerHTML=e,l.removeChild(l.lastChild)}var r=Object.prototype.hasOwnProperty.call(xe,i)?xe[i]:xe._default,o=r[0],s=r[1],a=r[2],l=t.createElement("div");l.innerHTML=s+e+a;for(;o--;)l=l.lastChild;if(l.firstChild==l.lastChild)return l.removeChild(l.firstChild);var c=t.createDocumentFragment();for(;l.firstChild;)c.appendChild(l.removeChild(l.firstChild));return c},be=!1;"undefined"!=typeof document&&((ge=document.createElement("div")).innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',be=!ge.getElementsByTagName("link").length,ge=void 0);var xe={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:be?[1,"X<div>","</div>"]:[0,"",""]};xe.td=xe.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],xe.option=xe.optgroup=[1,'<select multiple="multiple">',"</select>"],xe.thead=xe.tbody=xe.colgroup=xe.caption=xe.tfoot=[1,"<table>","</table>"],xe.polyline=xe.ellipse=xe.polygon=xe.circle=xe.text=xe.line=xe.path=xe.rect=xe.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];var we=ye;function _e(e,t){return(t=t||document).querySelector(e)}function Oe(e,t){return(t=t||document).querySelectorAll(e)}function Ee(e){e.parentNode&&e.parentNode.removeChild(e)}function ke(e,t){return t.appendChild(function(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch(e){}return e}(e,t))}function Se(e,t){return ke(t,e),e}var Ce=2,Pe={"alignment-baseline":1,"baseline-shift":1,clip:1,"clip-path":1,"clip-rule":1,color:1,"color-interpolation":1,"color-interpolation-filters":1,"color-profile":1,"color-rendering":1,cursor:1,direction:1,display:1,"dominant-baseline":1,"enable-background":1,fill:1,"fill-opacity":1,"fill-rule":1,filter:1,"flood-color":1,"flood-opacity":1,font:1,"font-family":1,"font-size":Ce,"font-size-adjust":1,"font-stretch":1,"font-style":1,"font-variant":1,"font-weight":1,"glyph-orientation-horizontal":1,"glyph-orientation-vertical":1,"image-rendering":1,kerning:1,"letter-spacing":1,"lighting-color":1,marker:1,"marker-end":1,"marker-mid":1,"marker-start":1,mask:1,opacity:1,overflow:1,"pointer-events":1,"shape-rendering":1,"stop-color":1,"stop-opacity":1,stroke:1,"stroke-dasharray":1,"stroke-dashoffset":1,"stroke-linecap":1,"stroke-linejoin":1,"stroke-miterlimit":1,"stroke-opacity":1,"stroke-width":Ce,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function $e(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=Pe[i];r?(r===Ce&&"number"==typeof n&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function Ae(e,t,n){if("string"==typeof t){if(void 0===n)return function(e,t){return Pe[t]?e.style[t]:e.getAttributeNS(null,t)}(e,t);$e(e,t,n)}else!function(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)$e(e,i,t[i])}(e,t);return e}const Re=Object.prototype.toString;function Te(e){return new Me(e)}function Me(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function De(e){var t=e.parentNode;return t&&t.removeChild(e),e}function Be(e){for(var t;t=e.firstChild;)De(t);return e}function Le(e){return e.cloneNode(!0)}Me.prototype.add=function(e){return this.list.add(e),this},Me.prototype.remove=function(e){return"[object RegExp]"==Re.call(e)?this.removeMatching(e):(this.list.remove(e),this)},Me.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},Me.prototype.toggle=function(e,t){return void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},Me.prototype.array=function(){return Array.from(this.list)},Me.prototype.has=Me.prototype.contains=function(e){return this.list.contains(e)};var Ne={svg:"http://www.w3.org/2000/svg"},je='<svg xmlns="'+Ne.svg+'"';function ze(e){var t=!1;"<svg"===e.substring(0,4)?-1===e.indexOf(Ne.svg)&&(e=je+e.substring(4)):(e=je+">"+e+"</svg>",t=!0);var n=function(e){var t;return t=new DOMParser,t.async=!1,t.parseFromString(e,"text/xml")}(e);if(!t)return n;for(var i=document.createDocumentFragment(),r=n.firstChild;r.firstChild;)i.appendChild(r.firstChild);return i}function Ie(e,t){var n;return"<"===e.charAt(0)?(n=ze(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(Ne.svg,e),t&&Ae(n,t),n}var Xe=null;function Qe(){return null===Xe&&(Xe=Ie("svg")),Xe}function Fe(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function Ve(e){return e?Qe().createSVGTransformFromMatrix(e):Qe().createSVGTransform()}var qe=/([&<>]{1})/g,He=/([\n\r"]{1})/g,We={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"'"};function Ye(e,t){return e.replace(t,(function(e,t){return We[t]||t}))}function Ge(e,t){var n,i,r,o,s;switch(e.nodeType){case 3:t.push(Ye(e.textContent,qe));break;case 1:if(t.push("<",e.tagName),e.hasAttributes())for(n=0,i=(r=e.attributes).length;n<i;++n)o=r.item(n),t.push(" ",o.name,'="',Ye(o.value,He),'"');if(e.hasChildNodes()){for(t.push(">"),n=0,i=(s=e.childNodes).length;n<i;++n)Ge(s.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("\x3c!--",Ye(e.nodeValue,qe),"--\x3e");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function Ue(e,t){var n=ze(t);if(Be(e),t){(function(e){return"#document-fragment"===e.nodeName})(n)||(n=n.documentElement);for(var i,r=(i=n.childNodes,Array.prototype.slice.call(i)),o=0;o<r.length;o++)ke(r[o],e)}}function Ze(e,t){if(void 0!==t){try{Ue(e,t)}catch(e){throw new Error("error parsing SVG: "+e.message)}return e}return function(e){for(var t=e.firstChild,n=[];t;)Ge(t,n),t=t.nextSibling;return n.join("")}(e)}function Ke(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function Je(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),function(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(Ke(e,i))}(n,t)),n.consolidate()}const et=/^class[ {]/;function tt(e){return Array.isArray(e)}function nt(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function it(...e){1===e.length&&tt(e[0])&&(e=e[0]);const t=(e=[...e]).pop();return t.$inject=e,t}const rt=/constructor\s*[^(]*\(\s*([^)]*)\)/m,ot=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,st=/\/\*([^*]*)\*\//m;function at(e){if("function"!=typeof e)throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(function(e){return et.test(e.toString())}(e)?rt:ot);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map((e=>{const t=e.match(st);return(t&&t[1]||e).trim()}))||[]}function lt(e,t){t=t||{get:function(e,t){if(n.push(e),!1===t)return null;throw s(`No provider for "${e}"!`)}};const n=[],i=this._providers=Object.create(t._providers||null),r=this._instances=Object.create(null),o=r.injector=this,s=function(e){const t=n.join(" -> ");return n.length=0,new Error(t?`${e} (Resolving: ${t})`:e)};function a(e,o){if(!i[e]&&-1!==e.indexOf(".")){const t=e.split(".");let n=a(t.shift());for(;t.length;)n=n[t.shift()];return n}if(nt(r,e))return r[e];if(nt(i,e)){if(-1!==n.indexOf(e))throw n.push(e),s("Cannot resolve circular dependency!");return n.push(e),r[e]=i[e][0](i[e][1]),n.pop(),r[e]}return t.get(e,o)}function l(e,t){if(void 0===t&&(t={}),"function"!=typeof e){if(!tt(e))throw s(`Cannot invoke "${e}". Expected a function!`);e=it(e.slice())}return{fn:e,dependencies:(e.$inject||at(e)).map((e=>nt(t,e)?t[e]:a(e)))}}function c(e){const{fn:t,dependencies:n}=l(e);return new(Function.prototype.bind.apply(t,[null].concat(n)))}function h(e,t,n){const{fn:i,dependencies:r}=l(e,n);return i.apply(t,r)}function u(e){return it((t=>e.get(t)))}function p(e,t){if(t&&t.length){const n=Object.create(null),r=Object.create(null),o=[],s=[],a=[];let l,c,h,p;for(let e in i)l=i[e],-1!==t.indexOf(e)&&("private"===l[2]?(c=o.indexOf(l[3]),-1===c?(h=l[3].createChild([],t),p=u(h),o.push(l[3]),s.push(h),a.push(p),n[e]=[p,e,"private",h]):n[e]=[a[c],e,"private",s[c]]):n[e]=[l[2],l[1]],r[e]=!0),"factory"!==l[2]&&"type"!==l[2]||!l[1].$scope||t.forEach((t=>{-1!==l[1].$scope.indexOf(t)&&(n[e]=[l[2],l[1]],r[t]=!0)}));t.forEach((e=>{if(!r[e])throw new Error('No provider for "'+e+'". Cannot use provider from the parent!')})),e.unshift(n)}return new lt(e,o)}const d={factory:h,type:c,value:function(e){return e}};function f(e,t){const n=e.__init__||[];return function(){n.forEach((e=>{"string"==typeof e?t.get(e):t.invoke(e)}))}}function m(e){const t=e.__exports__;if(t){const n=e.__modules__,r=Object.keys(e).reduce(((t,n)=>("__exports__"!==n&&"__modules__"!==n&&"__init__"!==n&&"__depends__"!==n&&(t[n]=e[n]),t)),Object.create(null)),o=p((n||[]).concat(r)),s=it((function(e){return o.get(e)}));t.forEach((function(e){i[e]=[s,e,"private",o]}));const a=(e.__init__||[]).slice();return a.unshift((function(){o.init()})),f(e=Object.assign({},e,{__init__:a}),o)}return Object.keys(e).forEach((function(t){if("__init__"===t||"__depends__"===t)return;if("private"===e[t][2])return void(i[t]=e[t]);const n=e[t][0],r=e[t][1];i[t]=[d[n],ct(n,r),n]})),f(e,o)}function g(e,t){return-1!==e.indexOf(t)||-1!==(e=(t.__depends__||[]).reduce(g,e)).indexOf(t)?e:e.concat(t)}this.get=a,this.invoke=h,this.instantiate=c,this.createChild=p,this.init=function(e){const t=e.reduce(g,[]).map(m);let n=!1;return function(){n||(n=!0,t.forEach((e=>e())))}}(e)}function ct(e,t){return"value"!==e&&tt(t)&&(t=it(t.slice())),t}var ht=1e3;function ut(e,t){var n=this;t=t||ht,e.on(["render.shape","render.connection"],t,(function(e,t){var i=e.type,r=t.element,o=t.gfx,s=t.attrs;if(n.canRender(r))return"render.shape"===i?n.drawShape(o,r,s):n.drawConnection(o,r,s)})),e.on(["render.getShapePath","render.getConnectionPath"],t,(function(e,t){if(n.canRender(t))return"render.getShapePath"===e.type?n.getShapePath(t):n.getConnectionPath(t)}))}function pt(e){return e.flat().join(",").replace(/,?([A-z]),?/g,"$1")}function dt(e){return["L",e.x,e.y]}function ft(e,t){const n=e.length,i=[(r=e[0],["M",r.x,r.y])];var r,o,s,a;for(let r=1;r<n;r++){const n=e[r-1],l=e[r],c=e[r+1];if(!c||!t){i.push(dt(l));continue}const h=Math.min(t,gt(l.x-n.x,l.y-n.y),gt(c.x-l.x,c.y-l.y));if(!h){i.push(dt(l));continue}const u=mt(l,n,h),p=mt(l,n,.5*h),d=mt(l,c,h),f=mt(l,c,.5*h);i.push(dt(u)),i.push((s=f,a=d,["C",(o=p).x,o.y,s.x,s.y,a.x,a.y]))}return i}function mt(e,t,n){const i=t.x-e.x,r=t.y-e.y,o=n/gt(i,r);return{x:e.x+i*o,y:e.y+r*o}}function gt(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function vt(e,t,n){u(t)&&(n=t,t=null),t||(t={});const i=Ie("path",t);return u(n)&&(i.dataset.cornerRadius=String(n)),yt(i,e)}function yt(e,t){return Ae(e,{d:pt(ft(t,parseInt(e.dataset.cornerRadius,10)||0))}),e}function bt(e){return y(e,(function(t){return!g(e,(function(e){return e!==t&&xt(t,e)}))}))}function xt(e,t){if(t){if(e===t)return t;if(e.parent)return xt(e.parent,t)}}function wt(e,t,n){var i=!n||-1===e.indexOf(t);return i&&e.push(t),i}function _t(e,t,n){n=n||0,c(e)||(e=[e]),b(e,(function(e,i){var r=t(e,i,n);c(r)&&r.length&&_t(r,t,n+1)}))}function Ot(e,t){return function(e,t,n){var i=[],r=[];return _t(e,(function(e,o,s){wt(i,e,t);var a=e.children;if((-1===n||s<n)&&a&&wt(r,a,t))return a})),i}(e,!t,-1)}function Et(e,t){var n,i,r,o;return t=!!t,c(e)||(e=[e]),b(e,(function(e){var s=e;e.waypoints&&!t&&(s=Et(e.waypoints,!0));var a=s.x,l=s.y,c=s.height||0,h=s.width||0;(a<n||void 0===n)&&(n=a),(l<i||void 0===i)&&(i=l),(a+h>r||void 0===r)&&(r=a+h),(l+c>o||void 0===o)&&(o=l+c)})),{x:n,y:i,height:o-i,width:r-n}}function kt(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function St(e){return!(!e||!e.isFrame)}function Ct(e,t){return I({},e||{},t||{})}ut.prototype.canRender=function(e){},ut.prototype.drawShape=function(e,t){},ut.prototype.drawConnection=function(e,t){},ut.prototype.getShapePath=function(e){},ut.prototype.getConnectionPath=function(e){};var Pt=1;function $t(e,t){ut.call(this,e,Pt),this.CONNECTION_STYLE=t.style(["no-fill"],{strokeWidth:5,stroke:"fuchsia"}),this.SHAPE_STYLE=t.style({fill:"white",stroke:"fuchsia",strokeWidth:2}),this.FRAME_STYLE=t.style(["no-fill"],{stroke:"fuchsia",strokeDasharray:4,strokeWidth:2})}e($t,ut),$t.prototype.canRender=function(){return!0},$t.prototype.drawShape=function(e,t,n){var i=Ie("rect");return Ae(i,{x:0,y:0,width:t.width||0,height:t.height||0}),St(t)?Ae(i,I({},this.FRAME_STYLE,n||{})):Ae(i,I({},this.SHAPE_STYLE,n||{})),Se(e,i),i},$t.prototype.drawConnection=function(e,t,n){var i=vt(t.waypoints,I({},this.CONNECTION_STYLE,n||{}));return Se(e,i),i},$t.prototype.getShapePath=function(e){var t=e.x,n=e.y,i=e.width;return pt([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])},$t.prototype.getConnectionPath=function(e){var t,n,i=e.waypoints,r=[];for(t=0;n=i[t];t++)n=n.original||n,r.push([0===t?"M":"L",n.x,n.y]);return pt(r)},$t.$inject=["eventBus","styles"];var At={__init__:["defaultRenderer"],defaultRenderer:["type",$t],styles:["type",function(){var e={"no-fill":{fill:"none"},"no-border":{strokeOpacity:0},"no-events":{pointerEvents:"none"}},t=this;this.cls=function(e,t,n){return I(this.style(t,n),{class:e})},this.style=function(t,n){c(t)||n||(n=t,t=[]);var i=w(t,(function(t,n){return I(t,e[n]||{})}),{});return n?I(i,n):i},this.computeStyle=function(e,n,i){return c(n)||(i=n,n=[]),t.style(n||[],I({},i,e||{}))}}]};function Rt(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return-1!==n&&e.splice(n,1),n}function Tt(e,t,n){if(e&&t){"number"!=typeof n&&(n=-1);var i=e.indexOf(t);if(-1!==i){if(i===n)return;if(-1===n)return;e.splice(i,1)}-1!==n?e.splice(n,0,t):e.push(t)}}function Mt(e,t){return e&&t?e.indexOf(t):-1}function Dt(e,t){return e&&t?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):-1}function Bt(e,t,n,i){if(void 0===i&&(i=5),!e||!t||!n)return!1;var r=(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x),o=Dt(e,t);return Math.abs(r/o)<=i}var Lt=2;function Nt(e,t){var n=Array.from(arguments).flat();const i={x:"v",y:"h"};for(const[e,t]of Object.entries(i))if(jt(e,n))return t;return!1}function jt(e,t){const n=t[0];return _(t,(function(t){return Math.abs(n[e]-t[e])<=Lt}))}function zt(e,t,n){return n=n||0,e.x>t.x-n&&e.y>t.y-n&&e.x<t.x+t.width+n&&e.y<t.y+t.height+n}function It(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}function Xt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Qt(e){if(e.__esModule)return e;var t=e.default;if("function"==typeof t){var n=function e(){if(this instanceof e){var n=[null];return n.push.apply(n,arguments),new(Function.bind.apply(t,n))}return t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach((function(t){var i=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,i.get?i:{enumerable:!0,get:function(){return e[t]}})})),n}var Ft=/,?([a-z]),?/gi,Vt=parseFloat,qt=Math,Ht=qt.PI,Wt=qt.min,Yt=qt.max,Gt=qt.pow,Ut=qt.abs,Zt=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/gi,Kt=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/gi,Jt=Array.isArray||function(e){return e instanceof Array};function en(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function tn(e){if("function"==typeof e||Object(e)!==e)return e;var t=new e.constructor;for(var n in e)en(e,n)&&(t[n]=tn(e[n]));return t}function nn(e){var t=nn.ps=nn.ps||{};return t[e]?t[e].sleep=100:t[e]={sleep:100},setTimeout((function(){for(var n in t)en(t,n)&&n!=e&&(t[n].sleep--,!t[n].sleep&&delete t[n])})),t[e]}function rn(e,t,n,i){return 1===arguments.length&&(t=e.y,n=e.width,i=e.height,e=e.x),{x:e,y:t,width:n,height:i,x2:e+n,y2:t+i}}function on(){return this.join(",").replace(Ft,"$1")}function sn(e){var t=tn(e);return t.toString=on,t}function an(e,t,n,i,r,o,s,a,l){var c=1-l,h=Gt(c,3),u=Gt(c,2),p=l*l*l,d=h*t+3*u*l*i+3*c*l*l*o+p*a;return{x:dn(h*e+3*u*l*n+3*c*l*l*r+p*s),y:dn(d)}}function ln(e){var t=xn.apply(null,e);return rn(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function cn(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function hn(e,t,n,i,r){return e*(e*(-3*t+9*n-9*i+3*r)+6*t-12*n+6*i)-3*t+3*n}function un(e,t,n,i,r,o,s,a,l){null==l&&(l=1);for(var c=(l=l>1?1:l<0?0:l)/2,h=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],u=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],p=0,d=0;d<12;d++){var f=c*h[d]+c,m=hn(f,e,n,r,s),g=hn(f,t,i,o,a),v=m*m+g*g;p+=u[d]*qt.sqrt(v)}return c*p}function pn(e,t,n,i,r,o,s,a){if(!(Yt(e,n)<Wt(r,s)||Wt(e,n)>Yt(r,s)||Yt(t,i)<Wt(o,a)||Wt(t,i)>Yt(o,a))){var l=(e*i-t*n)*(o-a)-(t-i)*(r*a-o*s),c=(e-n)*(o-a)-(t-i)*(r-s);if(c){var h=dn(((e*i-t*n)*(r-s)-(e-n)*(r*a-o*s))/c),u=dn(l/c),p=+h.toFixed(2),d=+u.toFixed(2);if(!(p<+Wt(e,n).toFixed(2)||p>+Yt(e,n).toFixed(2)||p<+Wt(r,s).toFixed(2)||p>+Yt(r,s).toFixed(2)||d<+Wt(t,i).toFixed(2)||d>+Yt(t,i).toFixed(2)||d<+Wt(o,a).toFixed(2)||d>+Yt(o,a).toFixed(2)))return{x:h,y:u}}}}function dn(e){return Math.round(1e11*e)/1e11}function fn(e,t,n){if(!function(e,t){return e=rn(e),cn(t=rn(t),e.x,e.y)||cn(t,e.x2,e.y)||cn(t,e.x,e.y2)||cn(t,e.x2,e.y2)||cn(e,t.x,t.y)||cn(e,t.x2,t.y)||cn(e,t.x,t.y2)||cn(e,t.x2,t.y2)||(e.x<t.x2&&e.x>t.x||t.x<e.x2&&t.x>e.x)&&(e.y<t.y2&&e.y>t.y||t.y<e.y2&&t.y>e.y)}(ln(e),ln(t)))return n?0:[];for(var i=un.apply(0,e),r=un.apply(0,t),o=gn(e)?1:~~(i/5)||1,s=gn(t)?1:~~(r/5)||1,a=[],l=[],c={},h=n?0:[],u=0;u<o+1;u++){var p=an.apply(0,e.concat(u/o));a.push({x:p.x,y:p.y,t:u/o})}for(u=0;u<s+1;u++)p=an.apply(0,t.concat(u/s)),l.push({x:p.x,y:p.y,t:u/s});for(u=0;u<o;u++)for(var d=0;d<s;d++){var f,m=a[u],g=a[u+1],v=l[d],y=l[d+1],b=Ut(g.x-m.x)<.01?"y":"x",x=Ut(y.x-v.x)<.01?"y":"x",w=pn(m.x,m.y,g.x,g.y,v.x,v.y,y.x,y.y);if(w){if(c[f=w.x.toFixed(9)+"#"+w.y.toFixed(9)])continue;c[f]=!0;var _=m.t+Ut((w[b]-m[b])/(g[b]-m[b]))*(g.t-m.t),O=v.t+Ut((w[x]-v[x])/(y[x]-v[x]))*(y.t-v.t);_>=0&&_<=1&&O>=0&&O<=1&&(n?h++:h.push({x:w.x,y:w.y,t1:_,t2:O}))}}return h}function mn(e){var t=nn(e);if(t.abs)return sn(t.abs);if(Jt(e)&&Jt(e&&e[0])||(e=function(e){if(!e)return null;var t=nn(e);if(t.arr)return tn(t.arr);var n={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},i=[];return Jt(e)&&Jt(e[0])&&(i=tn(e)),i.length||String(e).replace(Zt,(function(e,t,r){var o=[],s=t.toLowerCase();for(r.replace(Kt,(function(e,t){t&&o.push(+t)})),"m"==s&&o.length>2&&(i.push([t].concat(o.splice(0,2))),s="l",t="m"==t?"l":"L");o.length>=n[s]&&(i.push([t].concat(o.splice(0,n[s]))),n[s]););})),i.toString=nn.toString,t.arr=tn(i),i}(e)),!e||!e.length)return[["M",0,0]];var n,i=[],r=0,o=0,s=0,a=0,l=0;"M"==e[0][0]&&(s=r=+e[0][1],a=o=+e[0][2],l++,i[0]=["M",r,o]);for(var c,h,u=l,p=e.length;u<p;u++){if(i.push(c=[]),(n=(h=e[u])[0])!=n.toUpperCase())switch(c[0]=n.toUpperCase(),c[0]){case"A":c[1]=h[1],c[2]=h[2],c[3]=h[3],c[4]=h[4],c[5]=h[5],c[6]=+h[6]+r,c[7]=+h[7]+o;break;case"V":c[1]=+h[1]+o;break;case"H":c[1]=+h[1]+r;break;case"M":s=+h[1]+r,a=+h[2]+o;default:for(var d=1,f=h.length;d<f;d++)c[d]=+h[d]+(d%2?r:o)}else for(var m=0,g=h.length;m<g;m++)c[m]=h[m];switch(n=n.toUpperCase(),c[0]){case"Z":r=+s,o=+a;break;case"H":r=c[1];break;case"V":o=c[1];break;case"M":s=c[c.length-2],a=c[c.length-1];default:r=c[c.length-2],o=c[c.length-1]}}return i.toString=on,t.abs=sn(i),i}function gn(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function vn(e,t,n,i){return[e,t,n,i,n,i]}function yn(e,t,n,i,r,o){var s=1/3,a=2/3;return[s*e+a*n,s*t+a*i,s*r+a*n,s*o+a*i,r,o]}function bn(e,t,n,i,r,o,s,a,l,c){var h,u=120*Ht/180,p=Ht/180*(+r||0),d=[],f=function(e){return function t(){var n=Array.prototype.slice.call(arguments,0),i=n.join("␀"),r=t.cache=t.cache||{},o=t.count=t.count||[];return en(r,i)?(function(e,t){for(var n=0,i=e.length;n<i;n++)if(e[n]===t)return e.push(e.splice(n,1)[0])}(o,i),r[i]):(o.length>=1e3&&delete r[o.shift()],o.push(i),r[i]=e.apply(0,n),r[i])}}((function(e,t,n){return{x:e*qt.cos(n)-t*qt.sin(n),y:e*qt.sin(n)+t*qt.cos(n)}}));if(c)O=c[0],E=c[1],w=c[2],_=c[3];else{e=(h=f(e,t,-p)).x,t=h.y;var m=(e-(a=(h=f(a,l,-p)).x))/2,g=(t-(l=h.y))/2,v=m*m/(n*n)+g*g/(i*i);v>1&&(n*=v=qt.sqrt(v),i*=v);var y=n*n,b=i*i,x=(o==s?-1:1)*qt.sqrt(Ut((y*b-y*g*g-b*m*m)/(y*g*g+b*m*m))),w=x*n*g/i+(e+a)/2,_=x*-i*m/n+(t+l)/2,O=qt.asin(((t-_)/i).toFixed(9)),E=qt.asin(((l-_)/i).toFixed(9));(O=e<w?Ht-O:O)<0&&(O=2*Ht+O),(E=a<w?Ht-E:E)<0&&(E=2*Ht+E),s&&O>E&&(O-=2*Ht),!s&&E>O&&(E-=2*Ht)}var k=E-O;if(Ut(k)>u){var S=E,C=a,P=l;E=O+u*(s&&E>O?1:-1),d=bn(a=w+n*qt.cos(E),l=_+i*qt.sin(E),n,i,r,0,s,C,P,[E,S,w,_])}k=E-O;var $=qt.cos(O),A=qt.sin(O),R=qt.cos(E),T=qt.sin(E),M=qt.tan(k/4),D=4/3*n*M,B=4/3*i*M,L=[e,t],N=[e+D*A,t-B*$],j=[a+D*T,l-B*R],z=[a,l];if(N[0]=2*L[0]-N[0],N[1]=2*L[1]-N[1],c)return[N,j,z].concat(d);for(var I=[],X=0,Q=(d=[N,j,z].concat(d).join().split(",")).length;X<Q;X++)I[X]=X%2?f(d[X-1],d[X],p).y:f(d[X],d[X+1],p).x;return I}function xn(e,t,n,i,r,o,s,a){for(var l,c,h,u,p,d,f,m,g=[],v=[[],[]],y=0;y<2;++y)if(0==y?(c=6*e-12*n+6*r,l=-3*e+9*n-9*r+3*s,h=3*n-3*e):(c=6*t-12*i+6*o,l=-3*t+9*i-9*o+3*a,h=3*i-3*t),Ut(l)<1e-12){if(Ut(c)<1e-12)continue;0<(u=-h/c)&&u<1&&g.push(u)}else f=c*c-4*h*l,m=qt.sqrt(f),f<0||(0<(p=(-c+m)/(2*l))&&p<1&&g.push(p),0<(d=(-c-m)/(2*l))&&d<1&&g.push(d));for(var b,x=g.length,w=x;x--;)b=1-(u=g[x]),v[0][x]=b*b*b*e+3*b*b*u*n+3*b*u*u*r+u*u*u*s,v[1][x]=b*b*b*t+3*b*b*u*i+3*b*u*u*o+u*u*u*a;return v[0][w]=e,v[1][w]=t,v[0][w+1]=s,v[1][w+1]=a,v[0].length=v[1].length=w+2,{x0:Wt.apply(0,v[0]),y0:Wt.apply(0,v[1]),x1:Yt.apply(0,v[0]),y1:Yt.apply(0,v[1])}}function wn(e){var t=nn(e);if(t.curve)return sn(t.curve);for(var n=mn(e),i={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},r=function(e,t,n){var i,r;if(!e)return["C",t.x,t.y,t.x,t.y,t.x,t.y];switch(!(e[0]in{T:1,Q:1})&&(t.qx=t.qy=null),e[0]){case"M":t.X=e[1],t.Y=e[2];break;case"A":e=["C"].concat(bn.apply(0,[t.x,t.y].concat(e.slice(1))));break;case"S":"C"==n||"S"==n?(i=2*t.x-t.bx,r=2*t.y-t.by):(i=t.x,r=t.y),e=["C",i,r].concat(e.slice(1));break;case"T":"Q"==n||"T"==n?(t.qx=2*t.x-t.qx,t.qy=2*t.y-t.qy):(t.qx=t.x,t.qy=t.y),e=["C"].concat(yn(t.x,t.y,t.qx,t.qy,e[1],e[2]));break;case"Q":t.qx=e[1],t.qy=e[2],e=["C"].concat(yn(t.x,t.y,e[1],e[2],e[3],e[4]));break;case"L":e=["C"].concat(vn(t.x,t.y,e[1],e[2]));break;case"H":e=["C"].concat(vn(t.x,t.y,e[1],t.y));break;case"V":e=["C"].concat(vn(t.x,t.y,t.x,e[1]));break;case"Z":e=["C"].concat(vn(t.x,t.y,t.X,t.Y))}return e},o=function(e,t){if(e[t].length>7){e[t].shift();for(var i=e[t];i.length;)s[t]="A",e.splice(t++,0,["C"].concat(i.splice(0,6)));e.splice(t,1),h=n.length}},s=[],a="",l="",c=0,h=n.length;c<h;c++){n[c]&&(a=n[c][0]),"C"!=a&&(s[c]=a,c&&(l=s[c-1])),n[c]=r(n[c],i,l),"A"!=s[c]&&"C"==a&&(s[c]="C"),o(n,c);var u=n[c],p=u.length;i.x=u[p-2],i.y=u[p-1],i.bx=Vt(u[p-4])||i.x,i.by=Vt(u[p-3])||i.y}return t.curve=sn(n),n}var _n=function(e,t,n){e=wn(e),t=wn(t);for(var i,r,o,s,a,l,c,h,u,p,d=n?0:[],f=0,m=e.length;f<m;f++){var g=e[f];if("M"==g[0])i=a=g[1],r=l=g[2];else{"C"==g[0]?(u=[i,r].concat(g.slice(1)),i=u[6],r=u[7]):(u=[i,r,i,r,a,l,a,l],i=a,r=l);for(var v=0,y=t.length;v<y;v++){var b=t[v];if("M"==b[0])o=c=b[1],s=h=b[2];else{"C"==b[0]?(p=[o,s].concat(b.slice(1)),o=p[6],s=p[7]):(p=[o,s,o,s,c,h,c,h],o=c,s=h);var x=fn(u,p,n);if(n)d+=x;else{for(var w=0,_=x.length;w<_;w++)x[w].segment1=f,x[w].segment2=v,x[w].bez1=u,x[w].bez2=p;d=d.concat(x)}}}}}return d},On=Xt(_n);function En(e){return h(e)&&m(e,"waypoints")}function kn(e){return h(e)&&m(e,"labelTarget")}function Sn(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function Cn(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function Pn(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function $n(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function An(e){for(var t=e.waypoints,n=t.reduce((function(e,n,i){var r=t[i-1];if(r){var o=e[e.length-1],s=o&&o.endLength||0,a=function(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}(r,n);e.push({start:r,end:n,startLength:s,endLength:s+a,length:a})}return e}),[]),i=n.reduce((function(e,t){return e+t.length}),0),r=i/2,o=0,s=n[o];s.endLength<r;)s=n[++o];var a=(r-s.startLength)/s.length;return{x:s.start.x+(s.end.x-s.start.x)*a,y:s.start.y+(s.end.y-s.start.y)*a}}function Rn(e){return En(e)?An(e):Cn({x:(t=e).x+(t.width||0)/2,y:t.y+(t.height||0)/2});var t}function Tn(e,t,n){h(n=n||0)||(n={x:n,y:n});var i=Pn(e),r=Pn(t),o=i.bottom+n.y<=r.top,s=i.left-n.x>=r.right,a=i.top-n.y>=r.bottom,l=o?"top":a?"bottom":null,c=i.right+n.x<=r.left?"left":s?"right":null;return c&&l?l+"-"+c:c||l||"intersect"}function Mn(e,t,n){var i=function(e,t){return On(e,t)}(e,t);return 1===i.length||2===i.length&&Dt(i[0],i[1])<1?Cn(i[0]):i.length>1?(i=R(i,(function(e){var t=Math.floor(100*e.t2)||1;return t=((t=100-t)<10?"0":"")+t,e.segment2+"#"+t})),Cn(i[n?0:i.length-1])):null}function Dn(e,t){return Math.round(e*t)/t}function Bn(e){return u(e)?e+"px":e}function Ln(e,t,n){const i=Ie("g");Te(i).add(t);const r=void 0!==n?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const Nn={shape:["x","y","width","height"],connection:["waypoints"]};function jn(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._rootsIdx=0,this._layers={},this._planes=[],this._rootElement=null,this._init(e||{})}function zn(e,t){const n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}jn.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],jn.prototype._init=function(e){const t=this._eventBus,n=this._container=function(e){const t=(e=I({},{width:"100%",height:"100%"},e)).container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container djs-parent"),J(n,{position:"relative",overflow:"hidden",width:Bn(e.width),height:Bn(e.height)}),t.appendChild(n),n}(e),i=this._svg=Ie("svg");Ae(i,{width:"100%",height:"100%"}),Se(n,i);const r=this._viewport=Ln(i,"viewport");e.deferUpdate&&(this._viewboxChanged=N(z(this._viewboxChanged,this),300)),t.on("diagram.init",(()=>{t.fire("canvas.init",{svg:i,viewport:r})})),t.on(["shape.added","connection.added","shape.removed","connection.removed","elements.changed","root.set"],(()=>{delete this._cachedViewbox})),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},jn.prototype._destroy=function(){this._eventBus.fire("canvas.destroy",{svg:this._svg,viewport:this._viewport});const e=this._container.parentNode;e&&e.removeChild(this._container),delete this._svg,delete this._container,delete this._layers,delete this._planes,delete this._rootElement,delete this._viewport},jn.prototype._clear=function(){this._elementRegistry.getAll().forEach((e=>{const t=kt(e);"root"===t?this.removeRootElement(e):this._removeElement(e,t)})),this._planes=[],this._rootElement=null,delete this._cachedViewbox},jn.prototype.getDefaultLayer=function(){return this.getLayer("base",0)},jn.prototype.getLayer=function(e,t){if(!e)throw new Error("must specify a name");let n=this._layers[e];if(n||(n=this._layers[e]=this._createLayer(e,t)),void 0!==t&&n.index!==t)throw new Error("layer <"+e+"> already created at index <"+t+">");return n.group},jn.prototype._getChildIndex=function(e){return w(this._layers,(function(t,n){return n.visible&&e>=n.index&&t++,t}),0)},jn.prototype._createLayer=function(e,t){void 0===t&&(t=1);const n=this._getChildIndex(t);return{group:Ln(this._viewport,"layer-"+e,n),index:t,visible:!0}},jn.prototype.showLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=this._viewport,i=t.group,r=t.index;if(t.visible)return i;const o=this._getChildIndex(r);return n.insertBefore(i,n.childNodes[o]||null),t.visible=!0,i},jn.prototype.hideLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=t.group;return t.visible?(De(n),t.visible=!1,n):n},jn.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],De(t.group))},jn.prototype.getActiveLayer=function(){const e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},jn.prototype.findRoot=function(e){if("string"==typeof e&&(e=this._elementRegistry.get(e)),!e)return;const t=this._findPlaneForRoot(function(e){for(;e.parent;)e=e.parent;return e}(e))||{};return t.rootElement},jn.prototype.getRootElements=function(){return this._planes.map((function(e){return e.rootElement}))},jn.prototype._findPlaneForRoot=function(e){return g(this._planes,(function(t){return t.rootElement===e}))},jn.prototype.getContainer=function(){return this._container},jn.prototype._updateMarker=function(e,t,n){let i;e.id||(e=this._elementRegistry.get(e)),i=this._elementRegistry._elements[e.id],i&&(b([i.gfx,i.secondaryGfx],(function(e){e&&(n?Te(e).add(t):Te(e).remove(t))})),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},jn.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},jn.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},jn.prototype.hasMarker=function(e,t){e.id||(e=this._elementRegistry.get(e));return Te(this.getGraphics(e)).has(t)},jn.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},jn.prototype.getRootElement=function(){const e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},jn.prototype.addRootElement=function(e){const t=this._rootsIdx++;e||(e={id:"__implicitroot_"+t,children:[],isImplicit:!0});const n=e.layer="root-"+t;this._ensureValid("root",e);const i=this.getLayer(n,0);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},jn.prototype.removeRootElement=function(e){"string"==typeof e&&(e=this._elementRegistry.get(e));if(this._findPlaneForRoot(e))return this._removeRoot(e),this._removeLayer(e.layer),this._planes=this._planes.filter((function(t){return t.rootElement!==e})),this._rootElement===e&&(this._rootElement=null),e},jn.prototype.setRootElement=function(e){if(e===this._rootElement)return;let t;if(!e)throw new Error("rootElement required");return t=this._findPlaneForRoot(e),t||(e=this.addRootElement(e)),this._setRoot(e),e},jn.prototype._removeRoot=function(e){const t=this._elementRegistry,n=this._eventBus;n.fire("root.remove",{element:e}),n.fire("root.removed",{element:e}),t.remove(e)},jn.prototype._addRoot=function(e,t){const n=this._elementRegistry,i=this._eventBus;i.fire("root.add",{element:e}),n.add(e,t),i.fire("root.added",{element:e,gfx:t})},jn.prototype._setRoot=function(e,t){const n=this._rootElement;n&&(this._elementRegistry.updateGraphics(n,null,!0),this.hideLayer(n.layer)),e&&(t||(t=this._findPlaneForRoot(e).layer),this._elementRegistry.updateGraphics(e,this._svg,!0),this.showLayer(e.layer)),this._rootElement=e,this._eventBus.fire("root.set",{element:e})},jn.prototype._ensureValid=function(e,t){if(!t.id)throw new Error("element must have an id");if(this._elementRegistry.get(t.id))throw new Error("element <"+t.id+"> already exists");const n=Nn[e],i=_(n,(function(e){return void 0!==t[e]}));if(!i)throw new Error("must supply { "+n.join(", ")+" } with "+e)},jn.prototype._setParent=function(e,t,n){Tt(t.children,e,n),e.parent=t},jn.prototype._addElement=function(e,t,n,i){n=n||this.getRootElement();const r=this._eventBus,o=this._graphicsFactory;this._ensureValid(e,t),r.fire(e+".add",{element:t,parent:n}),this._setParent(t,n,i);const s=o.create(e,t,i);return this._elementRegistry.add(t,s),o.update(e,t,s),r.fire(e+".added",{element:t,gfx:s}),t},jn.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},jn.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},jn.prototype._removeElement=function(e,t){const n=this._elementRegistry,i=this._graphicsFactory,r=this._eventBus;if(e=n.get(e.id||e))return r.fire(t+".remove",{element:e}),i.remove(e),Rt(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},jn.prototype.removeShape=function(e){return this._removeElement(e,"shape")},jn.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},jn.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},jn.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},jn.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},jn.prototype.viewbox=function(e){if(void 0===e&&this._cachedViewbox)return this._cachedViewbox;const t=this._viewport,n=this.getSize();let i,r,o,s,a,l,c;return e?(this._changeViewbox((function(){a=Math.min(n.width/e.width,n.height/e.height);const i=this._svg.createSVGMatrix().scale(a).translate(-e.x,-e.y);Je(t,i)})),e):(o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},s=Je(t),r=s?s.matrix:function(e,t,n,i,r,o){var s=Qe().createSVGMatrix();switch(arguments.length){case 0:return s;case 1:return Fe(s,e);case 6:return Fe(s,{a:e,b:t,c:n,d:i,e:r,f:o})}}(),a=Dn(r.a,1e3),l=Dn(-r.e||0,1e3),c=Dn(-r.f||0,1e3),e=this._cachedViewbox={x:l?l/a:0,y:c?c/a:0,width:n.width/a,height:n.height/a,scale:a,inner:{width:i.width||0,height:i.height||0,x:i.x||0,y:i.y||0},outer:n})},jn.prototype.scroll=function(e){const t=this._viewport;let n=t.getCTM();return e&&this._changeViewbox((function(){e=I({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),zn(t,n)})),{x:n.e,y:n.f}},jn.prototype.scrollToElement=function(e,t){let n=100;"string"==typeof e&&(e=this._elementRegistry.get(e));const i=this.findRoot(e);if(i!==this.getRootElement()&&this.setRootElement(i),i===e)return;t||(t={}),"number"==typeof t&&(n=t),t={top:t.top||n,right:t.right||n,bottom:t.bottom||n,left:t.left||n};const r=Et(e),o=Pn(r),s=this.viewbox(),a=this.zoom();let l,c;s.y+=t.top/a,s.x+=t.left/a,s.width-=(t.right+t.left)/a,s.height-=(t.bottom+t.top)/a;const h=Pn(s);if(r.width<s.width&&r.height<s.height){const e=Math.max(0,o.right-h.right),t=Math.min(0,o.left-h.left),n=Math.max(0,o.bottom-h.bottom),i=Math.min(0,o.top-h.top);l=e||t,c=n||i}else l=r.x-s.x,c=r.y-s.y;this.scroll({dx:-l*a,dy:-c*a})},jn.prototype.zoom=function(e,t){if(!e)return this.viewbox(e).scale;if("fit-viewport"===e)return this._fitViewport(t);let n,i;return this._changeViewbox((function(){"object"!=typeof t&&(n=this.viewbox().outer,t={x:n.width/2,y:n.height/2}),i=this._setZoom(e,t)})),Dn(i.a,1e3)},jn.prototype._fitViewport=function(e){const t=this.viewbox(),n=t.outer,i=t.inner;let r,o;return i.x>=0&&i.y>=0&&i.x+i.width<=n.width&&i.y+i.height<=n.height&&!e?o={x:0,y:0,width:Math.max(i.width+i.x,n.width),height:Math.max(i.height+i.y,n.height)}:(r=Math.min(1,n.width/i.width,n.height/i.height),o={x:i.x+(e?i.width/2-n.width/r/2:0),y:i.y+(e?i.height/2-n.height/r/2:0),width:n.width/r,height:n.height/r}),this.viewbox(o),this.viewbox(!1).scale},jn.prototype._setZoom=function(e,t){const n=this._svg,i=this._viewport,r=n.createSVGMatrix(),o=n.createSVGPoint();let s,a,l,c,h;l=i.getCTM();const u=l.a;return t?(s=I(o,t),a=s.matrixTransform(l.inverse()),c=r.translate(a.x,a.y).scale(1/u*e).translate(-a.x,-a.y),h=l.multiply(c)):h=r.scale(e),zn(this._viewport,h),h},jn.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},jn.prototype.getAbsoluteBBox=function(e){const t=this.viewbox();let n;if(e.waypoints){n=this.getGraphics(e).getBBox()}else n=e;return{x:n.x*t.scale-t.x*t.scale,y:n.y*t.scale-t.y*t.scale,width:n.width*t.scale,height:n.height*t.scale}},jn.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var In="data-element-id";function Xn(e){this._elements={},this._eventBus=e}Xn.$inject=["eventBus"],Xn.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),Ae(t,In,i),n&&Ae(n,In,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},Xn.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(Ae(i.gfx,In,""),i.secondaryGfx&&Ae(i.secondaryGfx,In,""),delete t[n])},Xn.prototype.updateId=function(e,t){this._validateId(t),"string"==typeof e&&(e=this.get(e)),this._eventBus.fire("element.updateId",{element:e,newId:t});var n=this.getGraphics(e),i=this.getGraphics(e,!0);this.remove(e),e.id=t,this.add(e,n,i)},Xn.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,t&&Ae(t,In,i),t},Xn.prototype.get=function(e){var t;t="string"==typeof e?e:e&&Ae(e,In);var n=this._elements[t];return n&&n.element},Xn.prototype.filter=function(e){var t=[];return this.forEach((function(n,i){e(n,i)&&t.push(n)})),t},Xn.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=t[n[i]],o=r.element;if(e(o,r.gfx))return o}},Xn.prototype.getAll=function(){return this.filter((function(e){return e}))},Xn.prototype.forEach=function(e){var t=this._elements;Object.keys(t).forEach((function(n){var i=t[n],r=i.element,o=i.gfx;return e(r,o)}))},Xn.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},Xn.prototype._validateId=function(e){if(!e)throw new Error("element must have an id");if(this._elements[e])throw new Error("element with id "+e+" already added")};var Qn={exports:{}},Fn={};Fn.extend=function(e,t,n,i){var r=n.inverse;return Object.defineProperty(e,"remove",{value:function(e){var n=this.indexOf(e);return-1!==n&&(this.splice(n,1),t.unset(e,r,i)),e}}),Object.defineProperty(e,"contains",{value:function(e){return-1!==this.indexOf(e)}}),Object.defineProperty(e,"add",{value:function(e,n){var o=this.indexOf(e);if(void 0===n){if(-1!==o)return;n=this.length}-1!==o&&this.splice(o,1),this.splice(n,0,e),-1===o&&t.set(e,r,i)}}),Object.defineProperty(e,"__refs_collection",{value:!0}),e},Fn.isExtended=function(e){return!0===e.__refs_collection};var Vn=Fn;function qn(e,t,n){var i=Vn.extend(n[t.name]||[],e,t,n);Object.defineProperty(n,t.name,{enumerable:t.enumerable,value:i}),i.length&&i.forEach((function(i){e.set(i,t.inverse,n)}))}function Hn(e,t){if(!(this instanceof Hn))return new Hn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Hn.prototype.bind=function(e,t){if("string"==typeof t){if(!this.props[t])throw new Error("no property <"+t+"> in ref");t=this.props[t]}t.collection?qn(this,t,e):function(e,t,n){var i=t.inverse,r=n[t.name];Object.defineProperty(n,t.name,{configurable:t.configurable,enumerable:t.enumerable,get:function(){return r},set:function(t){if(t!==r){var o=r;r=null,o&&e.unset(o,i,n),r=t,e.set(r,i,n)}}})}(this,t,e)},Hn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return Vn.isExtended(n)||qn(this,t,e),n},Hn.prototype.ensureBound=function(e,t){(function(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)})(e,t)||this.bind(e,t)},Hn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Hn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Wn=Hn;Qn.exports=Wn,Qn.exports.Collection=Fn;var Yn=Xt(Qn.exports),Gn=new Yn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),Un=new Yn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),Zn=new Yn({name:"attachers",collection:!0},{name:"host"}),Kn=new Yn({name:"outgoing",collection:!0},{name:"source"}),Jn=new Yn({name:"incoming",collection:!0},{name:"target"});function ei(){Object.defineProperty(this,"businessObject",{writable:!0}),Object.defineProperty(this,"label",{get:function(){return this.labels[0]},set:function(e){var t=this.label,n=this.labels;!e&&t?n.remove(t):n.add(e,0)}}),Gn.bind(this,"parent"),Un.bind(this,"labels"),Kn.bind(this,"outgoing"),Jn.bind(this,"incoming")}function ti(){ei.call(this),Gn.bind(this,"children"),Zn.bind(this,"host"),Zn.bind(this,"attachers")}function ni(){ei.call(this),Gn.bind(this,"children")}function ii(){ti.call(this),Un.bind(this,"labelTarget")}function ri(){ei.call(this),Kn.bind(this,"source"),Jn.bind(this,"target")}e(ti,ei),e(ni,ti),e(ii,ti),e(ri,ei);var oi={connection:ri,shape:ti,label:ii,root:ni};function si(){this._uid=12}si.prototype.createRoot=function(e){return this.create("root",e)},si.prototype.createLabel=function(e){return this.create("label",e)},si.prototype.createShape=function(e){return this.create("shape",e)},si.prototype.createConnection=function(e){return this.create("connection",e)},si.prototype.create=function(e,t){return(t=I({},t||{})).id||(t.id=e+"_"+this._uid++),function(e,t){var n=oi[e];if(!n)throw new Error("unknown type: <"+e+">");return I(new n,t)}(e,t)};var ai="__fn",li=Array.prototype.slice;function ci(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function hi(){}function ui(e){return e.childNodes[0]}function pi(e,t,n,i,r){var o=Ve();o.setTranslate(t,n);var s=Ve();s.setRotate(i||0,0,0);var a=Ve();a.setScale(r||1,r||1),Je(e,[o,s,a])}function di(e,t,n){var i=Ve();i.setTranslate(t,n),Je(e,i)}function fi(e,t){var n=Ve();n.setRotate(t,0,0),Je(e,n)}function mi(e,t){this._eventBus=e,this._elementRegistry=t}function gi(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}ci.prototype.on=function(e,t,n,i){if(e=c(e)?e:[e],p(t)&&(i=n,n=t,t=1e3),!u(t))throw new Error("priority must be a number");var r=n;i&&((r=z(n,i))[ai]=n[ai]||n);var o=this;e.forEach((function(e){o._addListener(e,{priority:t,callback:r,next:null})}))},ci.prototype.once=function(e,t,n,i){var r=this;if(p(t)&&(i=n,n=t,t=1e3),!u(t))throw new Error("priority must be a number");function o(){o.__isTomb=!0;var t=n.apply(i,arguments);return r.off(e,o),t}o[ai]=n,this.on(e,t,o)},ci.prototype.off=function(e,t){e=c(e)?e:[e];var n=this;e.forEach((function(e){n._removeListener(e,t)}))},ci.prototype.createEvent=function(e){var t=new hi;return t.init(e),t},ci.prototype.fire=function(e,t){var n,i,r,o;if(o=li.call(arguments),"object"==typeof e&&(e=(t=e).type),!e)throw new Error("no event type specified");if(i=this._listeners[e]){n=t instanceof hi?t:this.createEvent(t),o[0]=n;var s=n.type;e!==s&&(n.type=e);try{r=this._invokeListeners(n,o,i)}finally{e!==s&&(n.type=s)}return void 0===r&&n.defaultPrevented&&(r=!1),r}},ci.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},ci.prototype._destroy=function(){this._listeners={}},ci.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},ci.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=function(e,t){return e.apply(null,t)}(n.callback,t),void 0!==i&&(e.returnValue=i,e.stopPropagation()),!1===i&&e.preventDefault()}catch(e){if(!this.handleError(e))throw console.error("unhandled error in event listener",e),e}return i},ci.prototype._addListener=function(e,t){var n,i=this._getListeners(e);if(i){for(;i;){if(i.priority<t.priority)return t.next=i,void(n?n.next=t:this._setListeners(e,t));n=i,i=i.next}n.next=t}else this._setListeners(e,t)},ci.prototype._getListeners=function(e){return this._listeners[e]},ci.prototype._setListeners=function(e,t){this._listeners[e]=t},ci.prototype._removeListener=function(e,t){var n,i,r,o=this._getListeners(e);if(t)for(;o;)n=o.next,(r=o.callback)!==t&&r[ai]!==t||(i?i.next=n:this._setListeners(e,n)),i=o,o=n;else this._setListeners(e,null)},hi.prototype.stopPropagation=function(){this.cancelBubble=!0},hi.prototype.preventDefault=function(){this.defaultPrevented=!0},hi.prototype.init=function(e){I(this,e||{})},mi.$inject=["eventBus","elementRegistry"],mi.prototype._getChildrenContainer=function(e){var t,n=this._elementRegistry.getGraphics(e);return e.parent?(t=function(e){return e.parentNode.childNodes[1]}(n),t||(Te(t=Ie("g")).add("djs-children"),Se(n.parentNode,t))):t=n,t},mi.prototype._clear=function(e){var t=ui(e);return re(t),t},mi.prototype._createContainer=function(e,t,n,i){var r=Ie("g");Te(r).add("djs-group"),void 0!==n?gi(r,t,t.childNodes[n]):Se(t,r);var o=Ie("g");Te(o).add("djs-element"),Te(o).add("djs-"+e),i&&Te(o).add("djs-frame"),Se(r,o);var s=Ie("g");return Te(s).add("djs-visual"),Se(o,s),o},mi.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,St(t))},mi.prototype.updateContainments=function(e){var t,n=this,i=this._elementRegistry;t=w(e,(function(e,t){return t.parent&&(e[t.parent.id]=t.parent),e}),{}),b(t,(function(e){var t=e.children;if(t){var r=n._getChildrenContainer(e);b(t.slice().reverse(),(function(e){gi(i.getGraphics(e).parentNode,r)}))}}))},mi.prototype.drawShape=function(e,t){return this._eventBus.fire("render.shape",{gfx:e,element:t})},mi.prototype.getShapePath=function(e){return this._eventBus.fire("render.getShapePath",e)},mi.prototype.drawConnection=function(e,t){return this._eventBus.fire("render.connection",{gfx:e,element:t})},mi.prototype.getConnectionPath=function(e){return this._eventBus.fire("render.getConnectionPath",e)},mi.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if("shape"===e)this.drawShape(i,t),di(n,t.x,t.y);else{if("connection"!==e)throw new Error("unknown type: "+e);this.drawConnection(i,t)}t.hidden?Ae(n,"display","none"):Ae(n,"display","block")}},mi.prototype.remove=function(e){De(this._elementRegistry.getGraphics(e).parentNode)};var vi={__depends__:[At],__init__:["canvas"],canvas:["type",jn],elementRegistry:["type",Xn],elementFactory:["type",si],eventBus:["type",ci],graphicsFactory:["type",mi]};function yi(e){return function(e){var t=new lt(e);return t.init(),t}([{config:["value",e=e||{}]},vi].concat(e.modules||[]))}function bi(e,t){this._injector=t=t||yi(e),this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("diagram.init")}function xi(){}function wi(e,t){this.model=e,this.properties=t}bi.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},bi.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")},xi.prototype.get=function(e){return this.$model.properties.get(this,e)},xi.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},wi.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(xi.prototype);b(e.properties,(function(e){e.isMany||void 0===e.default||(i[e.name]=e.default)})),n.defineModel(i,t),n.defineDescriptor(i,e);var r=e.ns.name;function o(e){n.define(this,"$type",{value:r,enumerable:!0}),n.define(this,"$attrs",{value:{}}),n.define(this,"$parent",{writable:!0}),b(e,z((function(e,t){this.set(t,e)}),this))}return o.prototype=i,o.hasType=i.$instanceOf=this.model.hasType,n.defineModel(o,t),n.defineDescriptor(o,e),o};var _i={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},Oi={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}};function Ei(e,t){var n=Oi[e];return n?n(t):t}function ki(e){return!!_i[e]}function Si(e){return!!Oi[e]}function Ci(e,t){var n,i,r=e.split(/:/);if(1===r.length)n=e,i=t;else{if(2!==r.length)throw new Error("expected <prefix:localName> or <localName>, got "+e);n=r[1],i=r[0]}return{name:e=(i?i+":":"")+n,prefix:i,localName:n}}function Pi(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function $i(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,b(e,z(this.registerPackage,this))}function Ai(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function Ri(e){this.model=e}function Ti(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function Mi(e){this.properties=new Ri(this),this.factory=new wi(this,this.properties),this.registry=new $i(e,this.properties),this.typeCache={}}Pi.prototype.build=function(){return F(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},Pi.prototype.addProperty=function(e,t,n){"boolean"==typeof t&&(n=t,t=void 0),this.addNamedProperty(e,!1!==n);var i=this.properties;void 0!==t?i.splice(t,0,e):i.push(e)},Pi.prototype.replaceProperty=function(e,t,n){var i=e.ns,r=this.properties,o=this.propertiesByName,s=e.name!==t.name;if(e.isId){if(!t.isId)throw new Error("property <"+t.ns.name+"> must be id property to refine <"+e.ns.name+">");this.setIdProperty(t,!1)}if(e.isBody){if(!t.isBody)throw new Error("property <"+t.ns.name+"> must be body property to refine <"+e.ns.name+">");this.setBodyProperty(t,!1)}var a=r.indexOf(e);if(-1===a)throw new Error("property <"+i.name+"> not found in property list");r.splice(a,1),this.addProperty(t,n?void 0:a,s),o[i.name]=o[i.localName]=t},Pi.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=Ci(r[0],i),s=Ci(r[1],o.prefix).name,a=this.propertiesByName[s];if(!a)throw new Error("refined property <"+s+"> not found");this.replaceProperty(a,e,n),delete e.redefines},Pi.prototype.addNamedProperty=function(e,t){var n=e.ns,i=this.propertiesByName;t&&(this.assertNotDefined(e,n.name),this.assertNotDefined(e,n.localName)),i[n.name]=i[n.localName]=e},Pi.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},Pi.prototype.setBodyProperty=function(e,t){if(t&&this.bodyProperty)throw new Error("body property defined multiple times (<"+this.bodyProperty.ns.name+">, <"+e.ns.name+">)");this.bodyProperty=e},Pi.prototype.setIdProperty=function(e,t){if(t&&this.idProperty)throw new Error("id property defined multiple times (<"+this.idProperty.ns.name+">, <"+e.ns.name+">)");this.idProperty=e},Pi.prototype.assertNotDefined=function(e,t){var n=e.name,i=this.propertiesByName[n];if(i)throw new Error("property <"+n+"> already defined; override of <"+i.definedBy.ns.name+"#"+i.ns.name+"> by <"+e.definedBy.ns.name+"#"+e.ns.name+"> not allowed without redefines")},Pi.prototype.hasProperty=function(e){return this.propertiesByName[e]},Pi.prototype.addTrait=function(e,t){var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(b(e.properties,z((function(n){n=I({},n,{name:n.ns.localName,inherited:t}),Object.defineProperty(n,"definedBy",{value:e});var i=n.replaces,r=n.redefines;i||r?this.redefineProperty(n,i||r,i):(n.isBody&&this.setBodyProperty(n),n.isId&&this.setIdProperty(n),this.addProperty(n))}),this)),i.push(e),n[r]=e)},$i.prototype.getPackage=function(e){return this.packageMap[e]},$i.prototype.getPackages=function(){return this.packages},$i.prototype.registerPackage=function(e){e=I({},e);var t=this.packageMap;Ai(t,e,"prefix"),Ai(t,e,"uri"),b(e.types,z((function(t){this.registerType(t,e)}),this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},$i.prototype.registerType=function(e,t){var n=Ci((e=I({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:I(e.meta||{})})).name,t.prefix),i=n.name,r={};b(e.properties,z((function(e){var t=Ci(e.name,n.prefix),i=t.name;ki(e.type)||(e.type=Ci(e.type,t.prefix).name),I(e,{ns:t,name:i}),r[i]=e}),this)),I(e,{ns:n,name:i,propertiesByName:r}),b(e.extends,z((function(e){var t=this.typeMap[e];t.traits=t.traits||[],t.traits.push(i)}),this)),this.definePackage(e,t),this.typeMap[i]=e},$i.prototype.mapTypes=function(e,t,n){var i=ki(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(e){return s(e,!0)}function s(n,i){var o=Ci(n,ki(n)?"":e.prefix);r.mapTypes(o,t,i)}if(!i)throw new Error("unknown type <"+e.name+">");b(i.superClass,n?o:s),t(i,!n),b(i.traits,o)},$i.prototype.getEffectiveDescriptor=function(e){var t=Ci(e),n=new Pi(t);this.mapTypes(t,(function(e,t){n.addTrait(e,t)}));var i=n.build();return this.definePackage(i,i.allTypes[i.allTypes.length-1].$pkg),i},$i.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},Ri.prototype.set=function(e,t,n){if(!d(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.model.getPropertyDescriptor(e,t),r=i&&i.name;void 0===n?i?delete e[r]:delete e.$attrs[t]:i?r in e?e[r]=n:Ti(e,i,n):e.$attrs[t]=n},Ri.prototype.get=function(e,t){var n=this.model.getPropertyDescriptor(e,t);if(!n)return e.$attrs[t];var i=n.name;return!e[i]&&n.isMany&&Ti(e,n,[]),e[i]},Ri.prototype.define=function(e,t,n){if(!n.writable){var i=n.value;delete(n=I({},n,{get:function(){return i}})).value}Object.defineProperty(e,t,n)},Ri.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},Ri.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},Mi.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},Mi.prototype.getType=function(e){var t=this.typeCache,n=d(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},Mi.prototype.createAny=function(e,t,n){var i=Ci(e),r={$type:e,$instanceOf:function(e){return e===this.$type}},o={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(r,o),this.properties.defineModel(r,this),this.properties.define(r,"$parent",{enumerable:!1,writable:!0}),this.properties.define(r,"$instanceOf",{enumerable:!1,writable:!0}),b(n,(function(e,t){h(e)&&void 0!==e.value?r[e.name]=e.value:r[t]=e})),r},Mi.prototype.getPackage=function(e){return this.registry.getPackage(e)},Mi.prototype.getPackages=function(){return this.registry.getPackages()},Mi.prototype.getElementDescriptor=function(e){return e.$descriptor},Mi.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},Mi.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},Mi.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var Di=String.fromCharCode,Bi=Object.prototype.hasOwnProperty,Li=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,Ni={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function ji(e,t,n,i){return i?Bi.call(Ni,i)?Ni[i]:"&"+i+";":Di(t||parseInt(n,16))}function zi(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(Li,ji):e}Object.keys(Ni).forEach((function(e){Ni[e.toUpperCase()]=Ni[e]}));var Ii="http://www.w3.org/2001/XMLSchema-instance",Xi="xsi",Qi="xsi:type",Fi="non-whitespace outside of root node";function Vi(e){return new Error(e)}function qi(e){return"missing namespace for prefix <"+e+">"}function Hi(e){return{get:e,enumerable:!0}}function Wi(e){var t,n={};for(t in e)n[t]=e[t];return n}function Yi(e){return e+"$uri"}function Gi(){return{line:0,column:0}}function Ui(e){throw e}function Zi(e){if(!this)return new Zi(e);var t,n,i,r,o,s,a,l,c,h=e&&e.proxy,u=Ui,p=Gi,d=!1,f=!1,m=null,g=!1;function v(e){e instanceof Error||(e=Vi(e)),m=e,u(e,p)}function y(e){o&&(e instanceof Error||(e=Vi(e)),o(e,p))}this.on=function(e,c){if("function"!=typeof c)throw Vi("required args <name, cb>");switch(e){case"openTag":n=c;break;case"text":t=c;break;case"closeTag":i=c;break;case"error":u=c;break;case"warn":o=c;break;case"cdata":r=c;break;case"attention":l=c;break;case"question":a=c;break;case"comment":s=c;break;default:throw Vi("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw Vi("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return n[Ii]=Xi,f=!0,c=n,this},this.parse=function(e){if("string"!=typeof e)throw Vi("required args <xml=string>");return m=null,function(e){var o,u,m,b,x,w,_,O,E,k,S,C=f?[]:null,P=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[Yi(n)]=t;return i}(c):null,$=[],A=0,R=!1,T=!1,M=0,D=0,B="",L=0;function N(){if(null!==S)return S;var e,t,n,i,r,o,s,a,l,h,u,p=f&&P.xmlns,m=f&&d?[]:null,g=L,v=B,b=v.length,x={},w={};e:for(;g<b;g++)if(l=!1,!(32===(h=v.charCodeAt(g))||h<14&&h>8)){for((h<65||h>122||h>90&&h<97)&&95!==h&&58!==h&&(y("illegal first char attribute name"),l=!0),u=g+1;u<b;u++)if(!((h=v.charCodeAt(u))>96&&h<123||h>64&&h<91||h>47&&h<59||46===h||45===h||95===h)){if(32===h||h<14&&h>8){y("missing attribute value"),g=u;continue e}if(61===h)break;y("illegal attribute name char"),l=!0}if("xmlns:xmlns"===(a=v.substring(g,u))&&(y("illegal declaration of xmlns"),l=!0),34===(h=v.charCodeAt(u+1)))-1===(u=v.indexOf('"',g=u+2))&&-1!==(u=v.indexOf("'",g))&&(y("attribute value quote missmatch"),l=!0);else if(39===h)-1===(u=v.indexOf("'",g=u+2))&&-1!==(u=v.indexOf('"',g))&&(y("attribute value quote missmatch"),l=!0);else for(y("missing attribute value quotes"),l=!0,u+=1;u<b&&!(32===(h=v.charCodeAt(u+1))||h<14&&h>8);u++);for(-1===u&&(y("missing closing quotes"),u=b,l=!0),l||(o=v.substring(g,u)),g=u;u+1<b&&!(32===(h=v.charCodeAt(u+1))||h<14&&h>8);u++)g===u&&(y("illegal character after attribute end"),l=!0);if(g=u+1,!l)if(a in w)y("attribute <"+a+"> already defined");else if(w[a]=!0,f)if(d){if(null!==(r="xmlns"===a?"xmlns":120===a.charCodeAt(0)&&"xmlns:"===a.substr(0,6)?a.substr(6):null)){if(e=zi(o),t=Yi(r),!(s=c[e])){if("xmlns"===r||t in P&&P[t]!==e)do{s="ns"+A++}while(void 0!==P[s]);else s=r;c[e]=s}P[r]!==s&&(i||(P=Wi(P),i=!0),P[r]=s,"xmlns"===r&&(P[Yi(s)]=e,p=s),P[t]=e),x[a]=o;continue}m.push(a,o)}else-1!==(h=a.indexOf(":"))?(n=P[a.substring(0,h)])?((a=p===n?a.substr(h+1):n+a.substr(h))===Qi&&(-1!==(h=o.indexOf(":"))?(n=o.substring(0,h),o=(n=P[n]||n)+o.substring(h)):o=p+":"+o),x[a]=o):y(qi(a.substring(0,h))):x[a]=o;else x[a]=o}if(d)for(g=0,b=m.length;g<b;g++){if(a=m[g++],o=m[g],-1!==(h=a.indexOf(":"))){if(!(n=P[a.substring(0,h)])){y(qi(a.substring(0,h)));continue}(a=p===n?a.substr(h+1):n+a.substr(h))===Qi&&(-1!==(h=o.indexOf(":"))?(n=o.substring(0,h),o=(n=P[n]||n)+o.substring(h)):o=p+":"+o)}x[a]=o}return S=x}function j(){for(var t,n,i=/(\r\n|\r|\n)/g,r=0,o=0,s=0,a=D;M>=s&&(t=i.exec(e))&&!((a=t[0].length+t.index)>M);)r+=1,s=a;return-1==M?(o=a,n=e.substring(D)):0===D?n=e.substring(D,M):(o=M-s,n=-1==D?e.substring(M):e.substring(M,D+1)),{data:n,line:r,column:o}}p=j,h&&(k=Object.create({},{name:Hi((function(){return O})),originalName:Hi((function(){return E})),attrs:Hi(N),ns:Hi((function(){return P}))}));for(;-1!==D;){if(-1===(M=60===e.charCodeAt(D)?D:e.indexOf("<",D)))return $.length?v("unexpected end of file"):0===D?v("missing start tag"):void(D<e.length&&e.substring(D).trim()&&y(Fi));if(D!==M)if($.length){if(t&&(t(e.substring(D,M),zi,p),g))return}else if(e.substring(D,M).trim()&&(y(Fi),g))return;if(33===(x=e.charCodeAt(M+1))){if(91===(b=e.charCodeAt(M+2))&&"CDATA["===e.substr(M+3,6)){if(-1===(D=e.indexOf("]]>",M)))return v("unclosed cdata");if(r&&(r(e.substring(M+9,D),p),g))return;D+=3;continue}if(45===b&&45===e.charCodeAt(M+3)){if(-1===(D=e.indexOf("--\x3e",M)))return v("unclosed comment");if(s&&(s(e.substring(M+4,D),zi,p),g))return;D+=3;continue}}if(63!==x){for(u=M+1;;u++){if(w=e.charCodeAt(u),isNaN(w))return D=-1,v("unclosed tag");if(34===w)u=-1!==(b=e.indexOf('"',u+1))?b:u;else if(39===w)u=-1!==(b=e.indexOf("'",u+1))?b:u;else if(62===w){D=u;break}}if(33!==x){if(S={},47===x){if(R=!1,T=!0,!$.length)return v("missing open tag");if(u=O=$.pop(),b=M+2+u.length,e.substring(M+2,b)!==u)return v("closing tag mismatch");for(;b<D;b++)if(!(32===(x=e.charCodeAt(b))||x>8&&x<14))return v("close tag")}else{if(47===e.charCodeAt(D-1)?(u=O=e.substring(M+1,D-1),R=!0,T=!0):(u=O=e.substring(M+1,D),R=!0,T=!1),!(x>96&&x<123||x>64&&x<91||95===x||58===x))return v("illegal first char nodeName");for(b=1,m=u.length;b<m;b++)if(!((x=u.charCodeAt(b))>96&&x<123||x>64&&x<91||x>47&&x<59||45===x||95===x||46==x)){if(32===x||x<14&&x>8){O=u.substring(0,b),S=null;break}return v("invalid nodeName")}T||$.push(O)}if(f){if(o=P,R&&(T||C.push(o),null===S&&(d=-1!==u.indexOf("xmlns",b))&&(L=b,B=u,N(),d=!1)),E=O,-1!==(x=O.indexOf(":"))){if(!(_=P[O.substring(0,x)]))return v("missing namespace on <"+E+">");O=O.substr(x+1)}else _=P.xmlns;_&&(O=_+":"+O)}if(R&&(L=b,B=u,n&&(h?n(k,zi,T,p):n(O,N,zi,T,p),g)))return;if(T){if(i&&(i(h?k:O,zi,R,p),g))return;f&&(P=R?o:C.pop())}D+=1}else{if(l&&(l(e.substring(M,D+1),zi,p),g))return;D+=1}}else{if(-1===(D=e.indexOf("?>",M)))return v("unclosed question");if(a&&(a(e.substring(M,D+2),p),g))return;D+=2}}}(e),p=Gi,g=!1,m},this.stop=function(){g=!0}}function Ki(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var Ji={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},er="xsi:type";function tr(e){return e.xml&&e.xml.serialize}function nr(e){return tr(e)===er}function ir(e,t){return Ki(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function rr(e){return new Error(e)}function or(e){return e.$descriptor}function sr(e){I(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(e){this.references.push(e)},this.addElement=function(e){if(!e)throw rr("expected element");var t,n=this.elementsById,i=or(e).idProperty;if(i&&(t=e.get(i.name))){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(t))throw new Error("illegal ID <"+t+">");if(n[t])throw rr("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function ar(){}function lr(){}function cr(){}function hr(e,t){this.property=e,this.context=t}function ur(e,t){this.element=t,this.propertyDesc=e}function pr(){}function dr(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function fr(e,t,n){dr.call(this,e,t,n)}function mr(e,t,n){this.model=e,this.context=n}function gr(e){e instanceof Mi&&(e={model:e}),I(this,{lax:!1},e)}ar.prototype.handleEnd=function(){},ar.prototype.handleText=function(){},ar.prototype.handleNode=function(){},lr.prototype=Object.create(ar.prototype),lr.prototype.handleNode=function(){return this},cr.prototype=Object.create(ar.prototype),cr.prototype.handleText=function(e){this.body=(this.body||"")+e},hr.prototype=Object.create(cr.prototype),hr.prototype.handleNode=function(e){if(this.element)throw rr("expected no sub nodes");return this.element=this.createReference(e),this},hr.prototype.handleEnd=function(){this.element.id=this.body},hr.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},ur.prototype=Object.create(cr.prototype),ur.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=Ei(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},pr.prototype=Object.create(cr.prototype),pr.prototype.handleNode=function(e){var t=this,n=this.element;return n?t=this.handleChild(e):(n=this.element=this.createElement(e),this.context.addElement(n)),t},dr.prototype=Object.create(pr.prototype),dr.prototype.addReference=function(e){this.context.addReference(e)},dr.prototype.handleText=function(e){if(!or(this.element).bodyProperty)throw rr("unexpected body text <"+e+">");cr.prototype.handleText.call(this,e)},dr.prototype.handleEnd=function(){var e=this.body,t=this.element,n=or(t).bodyProperty;n&&void 0!==e&&(e=Ei(n.type,e),t.set(n.name,e))},dr.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,r=or(i),o=this.context,s=new i({}),a=this.model;return b(n,(function(e,n){var i=r.propertiesByName[n];i&&i.isReference?i.isMany?b(e.split(" "),(function(e){o.addReference({element:s,property:i.ns.name,id:e})})):o.addReference({element:s,property:i.ns.name,id:e}):(i?e=Ei(i.type,e):"xmlns"!==n&&(t=Ci(n,r.ns.prefix),a.getPackage(t.prefix)&&o.addWarning({message:"unknown attribute <"+n+">",element:s,property:n,value:e})),s.set(n,e))})),s},dr.prototype.getPropertyForNode=function(e){var t,n,i=Ci(e.name),r=this.type,o=this.model,s=or(r),a=i.name,l=s.propertiesByName[a];if(l&&!l.isAttr)return nr(l)&&(t=e.attributes[er])?(t=function(e,t){var n=Ci(e);return function(e,t){var n=e.name,i=e.localName,r=t.xml&&t.xml.typePrefix;return r&&0===i.indexOf(r)?e.prefix+":"+i.slice(r.length):n}(n,t.getPackage(n.prefix))}(t,o),I({},l,{effectiveType:or(n=o.getType(t)).name})):l;var c=o.getPackage(i.prefix);if(c){if(t=ir(i,c),n=o.getType(t),l=g(s.properties,(function(e){return!e.isVirtual&&!e.isReference&&!e.isAttribute&&n.hasType(e.type)})),l)return I({},l,{effectiveType:or(n).name})}else if(l=g(s.properties,(function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type})),l)return l;throw rr("unrecognized element <"+i.name+">")},dr.prototype.toString=function(){return"ElementDescriptor["+or(this.type).name+"]"},dr.prototype.valueHandler=function(e,t){return new ur(e,t)},dr.prototype.referenceHandler=function(e){return new hr(e,this.context)},dr.prototype.handler=function(e){return"Element"===e?new mr(this.model,e,this.context):new dr(this.model,e,this.context)},dr.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,Si(n=t.effectiveType||t.type))return this.valueHandler(t,i);var o=(r=t.isReference?this.referenceHandler(t).handleNode(e):this.handler(n).handleNode(e)).element;return void 0!==o&&(t.isMany?i.get(t.name).push(o):i.set(t.name,o),t.isReference?(I(o,{element:i}),this.context.addReference(o)):o.$parent=i),r},fr.prototype=Object.create(dr.prototype),fr.prototype.createElement=function(e){var t=e.name,n=Ci(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),s=o&&ir(n,o)||t;if(!r.hasType(s))throw rr("unexpected element <"+e.originalName+">");return dr.prototype.createElement.call(this,e)},mr.prototype=Object.create(pr.prototype),mr.prototype.createElement=function(e){var t=e.name,n=Ci(t).prefix,i=e.ns[n+"$uri"],r=e.attributes;return this.model.createAny(t,i,r)},mr.prototype.handleChild=function(e){var t=new mr(this.model,"Element",this.context).handleNode(e),n=this.element,i=t.element;return void 0!==i&&((n.$children=n.$children||[]).push(i),i.$parent=n),t},mr.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},gr.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof dr?(i=t,t={}):"string"==typeof t?(i=this.handler(t),t={}):"string"==typeof i&&(i=this.handler(i));var r=this.model,o=this.lax,s=new sr(I({},t,{rootHandler:i})),a=new Zi({proxy:!0}),l=function(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}();function c(e,t,n){var i=t(),r=i.line,o=i.column,a=i.data;"<"===a.charAt(0)&&-1!==a.indexOf(" ")&&(a=a.slice(0,a.indexOf(" "))+">");var l="unparsable content "+(a?a+" ":"")+"detected\n\tline: "+r+"\n\tcolumn: "+o+"\n\tnested error: "+e.message;if(n)return s.addWarning({message:l,error:e}),!0;throw rr(l)}function h(e,t){return c(e,t,!0)}i.context=s,l.push(i);var u=/^<\?xml /i,p=/ encoding="([^"]+)"/i,d=/^utf-8$/i;function f(e,t){try{l.peek().handleText(e)}catch(e){h(e,t)}}var m=r.getPackages().reduce((function(e,t){return e[t.uri]=t.prefix,e}),{"http://www.w3.org/XML/1998/namespace":"xml"});return a.ns(m).on("openTag",(function(e,t,n,i){var r=e.attrs||{},s=Object.keys(r).reduce((function(e,n){var i=t(r[n]);return e[n]=i,e}),{});!function(e,t){var n=l.peek();try{l.push(n.handleNode(e))}catch(e){c(e,t,o)&&l.push(new lr)}}({name:e.name,originalName:e.originalName,attributes:s,ns:e.ns},i)})).on("question",(function(e){if(u.test(e)){var t=p.exec(e),n=t&&t[1];n&&!d.test(n)&&s.addWarning({message:"unsupported document encoding <"+n+">, falling back to UTF-8"})}})).on("closeTag",(function(){l.pop().handleEnd()})).on("cdata",f).on("text",(function(e,t,n){!function(e,t){e.trim()&&f(e,t)}(t(e),n)})).on("error",c).on("warn",h),new Promise((function(t,n){var r;try{a.parse(e),function(){var e,t,n=s.elementsById,i=s.references;for(e=0;t=i[e];e++){var r=t.element,o=n[t.id],a=or(r).propertiesByName[t.property];if(o||s.addWarning({message:"unresolved reference <"+t.id+">",element:t.element,property:t.property,value:t.id}),a.isMany){var l=r.get(a.name),c=l.indexOf(t);-1===c&&(c=l.length),o?l[c]=o:l.splice(c,1)}else r.set(a.name,o)}}()}catch(e){r=e}var o=i.element;r||o||(r=rr("failed to parse document as <"+i.type.$descriptor.name+">"));var l=s.warnings,c=s.references,h=s.elementsById;return r?(r.warnings=l,n(r)):t({rootElement:o,elementsById:h,references:c,warnings:l})}))},gr.prototype.handler=function(e){return new fr(this.model,e)};var vr='<?xml version="1.0" encoding="UTF-8"?>\n',yr=/<|>|'|"|&|\n\r|\n/g,br=/<|>|&/g;function xr(e){var t={},n={},i={},r=[],o=[];this.byUri=function(t){return n[t]||e&&e.byUri(t)},this.add=function(e,t){n[e.uri]=e,t?r.push(e):o.push(e),this.mapPrefix(e.prefix,e.uri)},this.uriByPrefix=function(e){return t[e||"xmlns"]},this.mapPrefix=function(e,n){t[e||"xmlns"]=n},this.getNSKey=function(e){return void 0!==e.prefix?e.uri+"|"+e.prefix:e.uri},this.logUsed=function(t){var n=t.uri,r=this.getNSKey(t);i[r]=this.byUri(n),e&&e.logUsed(t)},this.getUsed=function(e){var t=this;return[].concat(r,o).filter((function(e){var n=t.getNSKey(e);return i[n]}))}}function wr(e,t){return Ki(t)?function(e){return e.charAt(0).toLowerCase()+e.slice(1)}(e):e}function _r(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function Or(e){return d(e)?e:(e.prefix?e.prefix+":":"")+e.localName}var Er={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},kr={"<":"lt",">":"gt","&":"amp"};function Sr(e,t,n){return(e=d(e)?e:""+e).replace(t,(function(e){return"&"+n[e]+";"}))}function Cr(e){this.tagName=e}function Pr(){}function $r(e){this.tagName=e}function Ar(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function Rr(e,t){Ar.call(this,e,t)}function Tr(){this.value="",this.write=function(e){this.value+=e}}function Mr(e,t){var n=[""];this.append=function(t){return e.write(t),this},this.appendNewLine=function(){return t&&e.write("\n"),this},this.appendIndent=function(){return t&&e.write(n.join(" ")),this},this.indent=function(){return n.push(""),this},this.unindent=function(){return n.pop(),this}}function Dr(e){return e=I({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new Tr,r=new Mr(i,e.format);if(e.preamble&&r.append(vr),(new Ar).build(t).serializeTo(r),!n)return i.value}}}function Br(e,t){Mi.call(this,e,t)}Cr.prototype.build=function(e){return this.element=e,this},Cr.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},Pr.prototype.serializeValue=Pr.prototype.serializeTo=function(e){e.append(this.escape?Sr(this.value,br,kr):this.value)},Pr.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(br)&&(this.escape=!0),this},_r($r,Pr),$r.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},Ar.prototype.build=function(e){this.element=e;var t,n,i=e.$descriptor,r=this.propertyDescriptor,o=i.isGeneric;return t=o?this.parseGeneric(e):this.parseNsAttributes(e),this.ns=r?this.nsPropertyTagName(r):this.nsTagName(i),this.tagName=this.addTagName(this.ns),o||(n=function(e){return y(e.$descriptor.properties,(function(t){var n=t.name;if(t.isVirtual)return!1;if(!m(e,n))return!1;var i=e[n];return i!==t.default&&null!==i&&(!t.isMany||i.length)}))}(e),this.parseAttributes(y(n,(function(e){return e.isAttr}))),this.parseContainments(function(e){return y(e,(function(e){return!e.isAttr}))}(n))),this.parseGenericAttributes(e,t),this},Ar.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?I({localName:t.ns.localName},e):I({localName:wr(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},Ar.prototype.nsPropertyTagName=function(e){return function(e,t){return I({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},Ar.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},Ar.prototype.nsAttributeName=function(e){var t;if(t=d(e)?Ci(e):e.ns,e.inherited)return{localName:t.localName};var n=this.logNamespaceUsed(t);return this.getNamespaces().logUsed(n),this.isLocalNs(n)?{localName:t.localName}:I({localName:t.localName},n)},Ar.prototype.parseGeneric=function(e){var t=this,n=this.body,i=[];return b(e,(function(r,o){"$body"===o?n.push((new Pr).build({type:"String"},r)):"$children"===o?b(r,(function(e){n.push(new Ar(t).build(e))})):0!==o.indexOf("$")&&t.parseNsAttribute(e,o,r)&&i.push({name:o,value:r})})),i},Ar.prototype.parseNsAttribute=function(e,t,n){var i,r=e.$model,o=Ci(t);if("xmlns"===o.prefix&&(i={prefix:o.localName,uri:n}),o.prefix||"xmlns"!==o.localName||(i={uri:n}),!i)return{name:t,value:n};if(r&&r.getPackage(n))this.logNamespace(i,!0,!0);else{var s=this.logNamespaceUsed(i,!0);this.getNamespaces().logUsed(s)}},Ar.prototype.parseNsAttributes=function(e,t){var n=this,i=e.$attrs,r=[];return b(i,(function(t,i){var o=n.parseNsAttribute(e,i,t);o&&r.push(o)})),r},Ar.prototype.parseGenericAttributes=function(e,t){var n=this;b(t,(function(t){if(t.name!==er)try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){console.warn("missing namespace information for ",t.name,"=",t.value,"on",e,n)}}))},Ar.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;b(e,(function(e){var r=i.get(e.name),o=e.isReference;if(e.isMany||(r=[r]),e.isBody)n.push((new Pr).build(e,r[0]));else if(Si(e.type))b(r,(function(i){n.push(new $r(t.addTagName(t.nsPropertyTagName(e))).build(e,i))}));else if(o)b(r,(function(i){n.push(new Cr(t.addTagName(t.nsPropertyTagName(e))).build(i))}));else{var s=nr(e),a=function(e){return"property"===tr(e)}(e);b(r,(function(i){var r;r=s?new Rr(t,e):a?new Ar(t,e):new Ar(t),n.push(r.build(i))}))}}))},Ar.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new xr(t):n=t),n},Ar.prototype.logNamespace=function(e,t,n){var i=this.getNamespaces(n),r=e.uri,o=e.prefix;return i.byUri(r)&&!n||i.add(e,t),i.mapPrefix(o,r),e},Ar.prototype.logNamespaceUsed=function(e,t){var n,i,r,o=this.element.$model,s=this.getNamespaces(t),a=e.prefix,l=e.uri;if(!a&&!l)return{localName:e.localName};if(r=Ji[a]||o&&(o.getPackage(a)||{}).uri,!(l=l||r||s.uriByPrefix(a)))throw new Error("no namespace uri given for prefix <"+a+">");if(!(e=s.byUri(l))){for(n=a,i=1;s.uriByPrefix(n);)n=a+"_"+i++;e=this.logNamespace({prefix:n,uri:l},r===l)}return a&&s.mapPrefix(a,l),e},Ar.prototype.parseAttributes=function(e){var t=this,n=this.element;b(e,(function(e){var i=n.get(e.name);if(e.isReference)if(e.isMany){var r=[];b(i,(function(e){r.push(e.id)})),i=r.join(" ")}else i=i.id;t.addAttribute(t.nsAttributeName(e),i)}))},Ar.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),Or(e)},Ar.prototype.addAttribute=function(e,t){var n=this.attrs;d(t)&&(t=Sr(t,yr,Er));var i=v(n,(function(t){return t.name.localName===e.localName&&t.name.uri===e.uri&&t.name.prefix===e.prefix})),r={name:e,value:t};-1!==i?n.splice(i,1,r):n.push(r)},Ar.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return e.getUsed().filter((function(e){return"xml"!==e.prefix})).map((function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}}))}(n).concat(t)),b(t,(function(t){e.append(" ").append(Or(t.name)).append('="').append(t.value).append('"')}))},Ar.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==Pr;e.appendIndent().append("<"+this.tagName),this.serializeAttributes(e),e.append(t?">":" />"),t&&(n&&e.appendNewLine().indent(),b(this.body,(function(t){t.serializeTo(e)})),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()},_r(Rr,Ar),Rr.prototype.parseNsAttributes=function(e){var t=Ar.prototype.parseNsAttributes.call(this,e),n=e.$descriptor;if(n.name===this.propertyDescriptor.type)return t;var i=this.typeNs=this.nsTagName(n);this.getNamespaces().logUsed(this.typeNs);var r=e.$model.getPackage(i.uri),o=r.xml&&r.xml.typePrefix||"";return this.addAttribute(this.nsAttributeName(er),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},Rr.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},Br.prototype=Object.create(Mi.prototype),Br.prototype.fromXML=function(e,t,n){d(t)||(n=t,t="bpmn:Definitions");var i=new gr(I({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},Br.prototype.toXML=function(e,t){var n=new Dr(t);return new Promise((function(t,i){try{return t({xml:n.toXML(e)})}catch(e){return i(e)}}))};var Lr={bpmn:{name:"BPMN20",uri:"http://www.omg.org/spec/BPMN/20100524/MODEL",prefix:"bpmn",associations:[],types:[{name:"Interface",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"operations",type:"Operation",isMany:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"Operation",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"inMessageRef",type:"Message",isReference:!0},{name:"outMessageRef",type:"Message",isReference:!0},{name:"errorRef",type:"Error",isMany:!0,isReference:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"EndPoint",superClass:["RootElement"]},{name:"Auditing",superClass:["BaseElement"]},{name:"GlobalTask",superClass:["CallableElement"],properties:[{name:"resources",type:"ResourceRole",isMany:!0}]},{name:"Monitoring",superClass:["BaseElement"]},{name:"Performer",superClass:["ResourceRole"]},{name:"Process",superClass:["FlowElementsContainer","CallableElement"],properties:[{name:"processType",type:"ProcessType",isAttr:!0},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"properties",type:"Property",isMany:!0},{name:"laneSets",isMany:!0,replaces:"FlowElementsContainer#laneSets",type:"LaneSet"},{name:"flowElements",isMany:!0,replaces:"FlowElementsContainer#flowElements",type:"FlowElement"},{name:"artifacts",type:"Artifact",isMany:!0},{name:"resources",type:"ResourceRole",isMany:!0},{name:"correlationSubscriptions",type:"CorrelationSubscription",isMany:!0},{name:"supports",type:"Process",isMany:!0,isReference:!0},{name:"definitionalCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"isExecutable",isAttr:!0,type:"Boolean"}]},{name:"LaneSet",superClass:["BaseElement"],properties:[{name:"lanes",type:"Lane",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Lane",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"partitionElementRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"partitionElement",type:"BaseElement"},{name:"flowNodeRef",type:"FlowNode",isMany:!0,isReference:!0},{name:"childLaneSet",type:"LaneSet",xml:{serialize:"xsi:type"}}]},{name:"GlobalManualTask",superClass:["GlobalTask"]},{name:"ManualTask",superClass:["Task"]},{name:"UserTask",superClass:["Task"],properties:[{name:"renderings",type:"Rendering",isMany:!0},{name:"implementation",isAttr:!0,type:"String"}]},{name:"Rendering",superClass:["BaseElement"]},{name:"HumanPerformer",superClass:["Performer"]},{name:"PotentialOwner",superClass:["HumanPerformer"]},{name:"GlobalUserTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"renderings",type:"Rendering",isMany:!0}]},{name:"Gateway",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"gatewayDirection",type:"GatewayDirection",default:"Unspecified",isAttr:!0}]},{name:"EventBasedGateway",superClass:["Gateway"],properties:[{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"eventGatewayType",type:"EventBasedGatewayType",isAttr:!0,default:"Exclusive"}]},{name:"ComplexGateway",superClass:["Gateway"],properties:[{name:"activationCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ExclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"InclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ParallelGateway",superClass:["Gateway"]},{name:"RootElement",isAbstract:!0,superClass:["BaseElement"]},{name:"Relationship",superClass:["BaseElement"],properties:[{name:"type",isAttr:!0,type:"String"},{name:"direction",type:"RelationshipDirection",isAttr:!0},{name:"source",isMany:!0,isReference:!0,type:"Element"},{name:"target",isMany:!0,isReference:!0,type:"Element"}]},{name:"BaseElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,type:"String",isId:!0},{name:"documentation",type:"Documentation",isMany:!0},{name:"extensionDefinitions",type:"ExtensionDefinition",isMany:!0,isReference:!0},{name:"extensionElements",type:"ExtensionElements"}]},{name:"Extension",properties:[{name:"mustUnderstand",default:!1,isAttr:!0,type:"Boolean"},{name:"definition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"extensionAttributeDefinitions",type:"ExtensionAttributeDefinition",isMany:!0}]},{name:"ExtensionAttributeDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"type",isAttr:!0,type:"String"},{name:"isReference",default:!1,isAttr:!0,type:"Boolean"},{name:"extensionDefinition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionElements",properties:[{name:"valueRef",isAttr:!0,isReference:!0,type:"Element"},{name:"values",type:"Element",isMany:!0},{name:"extensionAttributeDefinition",type:"ExtensionAttributeDefinition",isAttr:!0,isReference:!0}]},{name:"Documentation",superClass:["BaseElement"],properties:[{name:"text",type:"String",isBody:!0},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Event",isAbstract:!0,superClass:["FlowNode","InteractionNode"],properties:[{name:"properties",type:"Property",isMany:!0}]},{name:"IntermediateCatchEvent",superClass:["CatchEvent"]},{name:"IntermediateThrowEvent",superClass:["ThrowEvent"]},{name:"EndEvent",superClass:["ThrowEvent"]},{name:"StartEvent",superClass:["CatchEvent"],properties:[{name:"isInterrupting",default:!0,isAttr:!0,type:"Boolean"}]},{name:"ThrowEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"inputSet",type:"InputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"CatchEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"parallelMultiple",isAttr:!0,type:"Boolean",default:!1},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"outputSet",type:"OutputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"BoundaryEvent",superClass:["CatchEvent"],properties:[{name:"cancelActivity",default:!0,isAttr:!0,type:"Boolean"},{name:"attachedToRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"EventDefinition",isAbstract:!0,superClass:["RootElement"]},{name:"CancelEventDefinition",superClass:["EventDefinition"]},{name:"ErrorEventDefinition",superClass:["EventDefinition"],properties:[{name:"errorRef",type:"Error",isAttr:!0,isReference:!0}]},{name:"TerminateEventDefinition",superClass:["EventDefinition"]},{name:"EscalationEventDefinition",superClass:["EventDefinition"],properties:[{name:"escalationRef",type:"Escalation",isAttr:!0,isReference:!0}]},{name:"Escalation",properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"escalationCode",isAttr:!0,type:"String"}],superClass:["RootElement"]},{name:"CompensateEventDefinition",superClass:["EventDefinition"],properties:[{name:"waitForCompletion",isAttr:!0,type:"Boolean",default:!0},{name:"activityRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"TimerEventDefinition",superClass:["EventDefinition"],properties:[{name:"timeDate",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeCycle",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeDuration",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"LinkEventDefinition",superClass:["EventDefinition"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"target",type:"LinkEventDefinition",isReference:!0},{name:"source",type:"LinkEventDefinition",isMany:!0,isReference:!0}]},{name:"MessageEventDefinition",superClass:["EventDefinition"],properties:[{name:"messageRef",type:"Message",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"ConditionalEventDefinition",superClass:["EventDefinition"],properties:[{name:"condition",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"SignalEventDefinition",superClass:["EventDefinition"],properties:[{name:"signalRef",type:"Signal",isAttr:!0,isReference:!0}]},{name:"Signal",superClass:["RootElement"],properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"ImplicitThrowEvent",superClass:["ThrowEvent"]},{name:"DataState",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"ItemAwareElement",superClass:["BaseElement"],properties:[{name:"itemSubjectRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"dataState",type:"DataState"}]},{name:"DataAssociation",superClass:["BaseElement"],properties:[{name:"sourceRef",type:"ItemAwareElement",isMany:!0,isReference:!0},{name:"targetRef",type:"ItemAwareElement",isReference:!0},{name:"transformation",type:"FormalExpression",xml:{serialize:"property"}},{name:"assignment",type:"Assignment",isMany:!0}]},{name:"DataInput",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"inputSetRef",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"inputSetWithOptional",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"inputSetWithWhileExecuting",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"DataOutput",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"outputSetRef",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"outputSetWithOptional",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"outputSetWithWhileExecuting",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"InputSet",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"dataInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"optionalInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"whileExecutingInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"outputSetRefs",type:"OutputSet",isMany:!0,isReference:!0}]},{name:"OutputSet",superClass:["BaseElement"],properties:[{name:"dataOutputRefs",type:"DataOutput",isMany:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"inputSetRefs",type:"InputSet",isMany:!0,isReference:!0},{name:"optionalOutputRefs",type:"DataOutput",isMany:!0,isReference:!0},{name:"whileExecutingOutputRefs",type:"DataOutput",isMany:!0,isReference:!0}]},{name:"Property",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"DataInputAssociation",superClass:["DataAssociation"]},{name:"DataOutputAssociation",superClass:["DataAssociation"]},{name:"InputOutputSpecification",superClass:["BaseElement"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"inputSets",type:"InputSet",isMany:!0},{name:"outputSets",type:"OutputSet",isMany:!0}]},{name:"DataObject",superClass:["FlowElement","ItemAwareElement"],properties:[{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"}]},{name:"InputOutputBinding",properties:[{name:"inputDataRef",type:"InputSet",isAttr:!0,isReference:!0},{name:"outputDataRef",type:"OutputSet",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"Assignment",superClass:["BaseElement"],properties:[{name:"from",type:"Expression",xml:{serialize:"xsi:type"}},{name:"to",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"DataStore",superClass:["RootElement","ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"capacity",isAttr:!0,type:"Integer"},{name:"isUnlimited",default:!0,isAttr:!0,type:"Boolean"}]},{name:"DataStoreReference",superClass:["ItemAwareElement","FlowElement"],properties:[{name:"dataStoreRef",type:"DataStore",isAttr:!0,isReference:!0}]},{name:"DataObjectReference",superClass:["ItemAwareElement","FlowElement"],properties:[{name:"dataObjectRef",type:"DataObject",isAttr:!0,isReference:!0}]},{name:"ConversationLink",superClass:["BaseElement"],properties:[{name:"sourceRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"ConversationAssociation",superClass:["BaseElement"],properties:[{name:"innerConversationNodeRef",type:"ConversationNode",isAttr:!0,isReference:!0},{name:"outerConversationNodeRef",type:"ConversationNode",isAttr:!0,isReference:!0}]},{name:"CallConversation",superClass:["ConversationNode"],properties:[{name:"calledCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0}]},{name:"Conversation",superClass:["ConversationNode"]},{name:"SubConversation",superClass:["ConversationNode"],properties:[{name:"conversationNodes",type:"ConversationNode",isMany:!0}]},{name:"ConversationNode",isAbstract:!0,superClass:["InteractionNode","BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0},{name:"messageFlowRefs",type:"MessageFlow",isMany:!0,isReference:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0}]},{name:"GlobalConversation",superClass:["Collaboration"]},{name:"PartnerEntity",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0}]},{name:"PartnerRole",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0}]},{name:"CorrelationProperty",superClass:["RootElement"],properties:[{name:"correlationPropertyRetrievalExpression",type:"CorrelationPropertyRetrievalExpression",isMany:!0},{name:"name",isAttr:!0,type:"String"},{name:"type",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"Error",superClass:["RootElement"],properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"errorCode",isAttr:!0,type:"String"}]},{name:"CorrelationKey",superClass:["BaseElement"],properties:[{name:"correlationPropertyRef",type:"CorrelationProperty",isMany:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Expression",superClass:["BaseElement"],isAbstract:!1,properties:[{name:"body",isBody:!0,type:"String"}]},{name:"FormalExpression",superClass:["Expression"],properties:[{name:"language",isAttr:!0,type:"String"},{name:"evaluatesToTypeRef",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"Message",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"itemRef",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"ItemDefinition",superClass:["RootElement"],properties:[{name:"itemKind",type:"ItemKind",isAttr:!0},{name:"structureRef",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"import",type:"Import",isAttr:!0,isReference:!0}]},{name:"FlowElement",isAbstract:!0,superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"categoryValueRef",type:"CategoryValue",isMany:!0,isReference:!0}]},{name:"SequenceFlow",superClass:["FlowElement"],properties:[{name:"isImmediate",isAttr:!0,type:"Boolean"},{name:"conditionExpression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"sourceRef",type:"FlowNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"FlowNode",isAttr:!0,isReference:!0}]},{name:"FlowElementsContainer",isAbstract:!0,superClass:["BaseElement"],properties:[{name:"laneSets",type:"LaneSet",isMany:!0},{name:"flowElements",type:"FlowElement",isMany:!0}]},{name:"CallableElement",isAbstract:!0,superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"ioSpecification",type:"InputOutputSpecification",xml:{serialize:"property"}},{name:"supportedInterfaceRef",type:"Interface",isMany:!0,isReference:!0},{name:"ioBinding",type:"InputOutputBinding",isMany:!0,xml:{serialize:"property"}}]},{name:"FlowNode",isAbstract:!0,superClass:["FlowElement"],properties:[{name:"incoming",type:"SequenceFlow",isMany:!0,isReference:!0},{name:"outgoing",type:"SequenceFlow",isMany:!0,isReference:!0},{name:"lanes",type:"Lane",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"CorrelationPropertyRetrievalExpression",superClass:["BaseElement"],properties:[{name:"messagePath",type:"FormalExpression"},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"CorrelationPropertyBinding",superClass:["BaseElement"],properties:[{name:"dataPath",type:"FormalExpression"},{name:"correlationPropertyRef",type:"CorrelationProperty",isAttr:!0,isReference:!0}]},{name:"Resource",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"resourceParameters",type:"ResourceParameter",isMany:!0}]},{name:"ResourceParameter",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isRequired",isAttr:!0,type:"Boolean"},{name:"type",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"CorrelationSubscription",superClass:["BaseElement"],properties:[{name:"correlationKeyRef",type:"CorrelationKey",isAttr:!0,isReference:!0},{name:"correlationPropertyBinding",type:"CorrelationPropertyBinding",isMany:!0}]},{name:"MessageFlow",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"sourceRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"MessageFlowAssociation",superClass:["BaseElement"],properties:[{name:"innerMessageFlowRef",type:"MessageFlow",isAttr:!0,isReference:!0},{name:"outerMessageFlowRef",type:"MessageFlow",isAttr:!0,isReference:!0}]},{name:"InteractionNode",isAbstract:!0,properties:[{name:"incomingConversationLinks",type:"ConversationLink",isMany:!0,isVirtual:!0,isReference:!0},{name:"outgoingConversationLinks",type:"ConversationLink",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"Participant",superClass:["InteractionNode","BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"interfaceRef",type:"Interface",isMany:!0,isReference:!0},{name:"participantMultiplicity",type:"ParticipantMultiplicity"},{name:"endPointRefs",type:"EndPoint",isMany:!0,isReference:!0},{name:"processRef",type:"Process",isAttr:!0,isReference:!0}]},{name:"ParticipantAssociation",superClass:["BaseElement"],properties:[{name:"innerParticipantRef",type:"Participant",isAttr:!0,isReference:!0},{name:"outerParticipantRef",type:"Participant",isAttr:!0,isReference:!0}]},{name:"ParticipantMultiplicity",properties:[{name:"minimum",default:0,isAttr:!0,type:"Integer"},{name:"maximum",default:1,isAttr:!0,type:"Integer"}],superClass:["BaseElement"]},{name:"Collaboration",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"participants",type:"Participant",isMany:!0},{name:"messageFlows",type:"MessageFlow",isMany:!0},{name:"artifacts",type:"Artifact",isMany:!0},{name:"conversations",type:"ConversationNode",isMany:!0},{name:"conversationAssociations",type:"ConversationAssociation"},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0},{name:"messageFlowAssociations",type:"MessageFlowAssociation",isMany:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0},{name:"choreographyRef",type:"Choreography",isMany:!0,isReference:!0},{name:"conversationLinks",type:"ConversationLink",isMany:!0}]},{name:"ChoreographyActivity",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"participantRef",type:"Participant",isMany:!0,isReference:!0},{name:"initiatingParticipantRef",type:"Participant",isAttr:!0,isReference:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0},{name:"loopType",type:"ChoreographyLoopType",default:"None",isAttr:!0}]},{name:"CallChoreography",superClass:["ChoreographyActivity"],properties:[{name:"calledChoreographyRef",type:"Choreography",isAttr:!0,isReference:!0},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0}]},{name:"SubChoreography",superClass:["ChoreographyActivity","FlowElementsContainer"],properties:[{name:"artifacts",type:"Artifact",isMany:!0}]},{name:"ChoreographyTask",superClass:["ChoreographyActivity"],properties:[{name:"messageFlowRef",type:"MessageFlow",isMany:!0,isReference:!0}]},{name:"Choreography",superClass:["Collaboration","FlowElementsContainer"]},{name:"GlobalChoreographyTask",superClass:["Choreography"],properties:[{name:"initiatingParticipantRef",type:"Participant",isAttr:!0,isReference:!0}]},{name:"TextAnnotation",superClass:["Artifact"],properties:[{name:"text",type:"String"},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Group",superClass:["Artifact"],properties:[{name:"categoryValueRef",type:"CategoryValue",isAttr:!0,isReference:!0}]},{name:"Association",superClass:["Artifact"],properties:[{name:"associationDirection",type:"AssociationDirection",isAttr:!0},{name:"sourceRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"targetRef",type:"BaseElement",isAttr:!0,isReference:!0}]},{name:"Category",superClass:["RootElement"],properties:[{name:"categoryValue",type:"CategoryValue",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Artifact",isAbstract:!0,superClass:["BaseElement"]},{name:"CategoryValue",superClass:["BaseElement"],properties:[{name:"categorizedFlowElements",type:"FlowElement",isMany:!0,isVirtual:!0,isReference:!0},{name:"value",isAttr:!0,type:"String"}]},{name:"Activity",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"isForCompensation",default:!1,isAttr:!0,type:"Boolean"},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0},{name:"ioSpecification",type:"InputOutputSpecification",xml:{serialize:"property"}},{name:"boundaryEventRefs",type:"BoundaryEvent",isMany:!0,isReference:!0},{name:"properties",type:"Property",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"startQuantity",default:1,isAttr:!0,type:"Integer"},{name:"resources",type:"ResourceRole",isMany:!0},{name:"completionQuantity",default:1,isAttr:!0,type:"Integer"},{name:"loopCharacteristics",type:"LoopCharacteristics"}]},{name:"ServiceTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"SubProcess",superClass:["Activity","FlowElementsContainer","InteractionNode"],properties:[{name:"triggeredByEvent",default:!1,isAttr:!0,type:"Boolean"},{name:"artifacts",type:"Artifact",isMany:!0}]},{name:"LoopCharacteristics",isAbstract:!0,superClass:["BaseElement"]},{name:"MultiInstanceLoopCharacteristics",superClass:["LoopCharacteristics"],properties:[{name:"isSequential",default:!1,isAttr:!0,type:"Boolean"},{name:"behavior",type:"MultiInstanceBehavior",default:"All",isAttr:!0},{name:"loopCardinality",type:"Expression",xml:{serialize:"xsi:type"}},{name:"loopDataInputRef",type:"ItemAwareElement",isReference:!0},{name:"loopDataOutputRef",type:"ItemAwareElement",isReference:!0},{name:"inputDataItem",type:"DataInput",xml:{serialize:"property"}},{name:"outputDataItem",type:"DataOutput",xml:{serialize:"property"}},{name:"complexBehaviorDefinition",type:"ComplexBehaviorDefinition",isMany:!0},{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"oneBehaviorEventRef",type:"EventDefinition",isAttr:!0,isReference:!0},{name:"noneBehaviorEventRef",type:"EventDefinition",isAttr:!0,isReference:!0}]},{name:"StandardLoopCharacteristics",superClass:["LoopCharacteristics"],properties:[{name:"testBefore",default:!1,isAttr:!0,type:"Boolean"},{name:"loopCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"loopMaximum",type:"Integer",isAttr:!0}]},{name:"CallActivity",superClass:["Activity","InteractionNode"],properties:[{name:"calledElement",type:"String",isAttr:!0}]},{name:"Task",superClass:["Activity","InteractionNode"]},{name:"SendTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ReceiveTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ScriptTask",superClass:["Task"],properties:[{name:"scriptFormat",isAttr:!0,type:"String"},{name:"script",type:"String"}]},{name:"BusinessRuleTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"AdHocSubProcess",superClass:["SubProcess"],properties:[{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"ordering",type:"AdHocOrdering",isAttr:!0},{name:"cancelRemainingInstances",default:!0,isAttr:!0,type:"Boolean"}]},{name:"Transaction",superClass:["SubProcess"],properties:[{name:"protocol",isAttr:!0,type:"String"},{name:"method",isAttr:!0,type:"String"}]},{name:"GlobalScriptTask",superClass:["GlobalTask"],properties:[{name:"scriptLanguage",isAttr:!0,type:"String"},{name:"script",isAttr:!0,type:"String"}]},{name:"GlobalBusinessRuleTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"ComplexBehaviorDefinition",superClass:["BaseElement"],properties:[{name:"condition",type:"FormalExpression"},{name:"event",type:"ImplicitThrowEvent"}]},{name:"ResourceRole",superClass:["BaseElement"],properties:[{name:"resourceRef",type:"Resource",isReference:!0},{name:"resourceParameterBindings",type:"ResourceParameterBinding",isMany:!0},{name:"resourceAssignmentExpression",type:"ResourceAssignmentExpression"},{name:"name",isAttr:!0,type:"String"}]},{name:"ResourceParameterBinding",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"parameterRef",type:"ResourceParameter",isAttr:!0,isReference:!0}],superClass:["BaseElement"]},{name:"ResourceAssignmentExpression",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}}],superClass:["BaseElement"]},{name:"Import",properties:[{name:"importType",isAttr:!0,type:"String"},{name:"location",isAttr:!0,type:"String"},{name:"namespace",isAttr:!0,type:"String"}]},{name:"Definitions",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"targetNamespace",isAttr:!0,type:"String"},{name:"expressionLanguage",default:"http://www.w3.org/1999/XPath",isAttr:!0,type:"String"},{name:"typeLanguage",default:"http://www.w3.org/2001/XMLSchema",isAttr:!0,type:"String"},{name:"imports",type:"Import",isMany:!0},{name:"extensions",type:"Extension",isMany:!0},{name:"rootElements",type:"RootElement",isMany:!0},{name:"diagrams",isMany:!0,type:"bpmndi:BPMNDiagram"},{name:"exporter",isAttr:!0,type:"String"},{name:"relationships",type:"Relationship",isMany:!0},{name:"exporterVersion",isAttr:!0,type:"String"}]}],enumerations:[{name:"ProcessType",literalValues:[{name:"None"},{name:"Public"},{name:"Private"}]},{name:"GatewayDirection",literalValues:[{name:"Unspecified"},{name:"Converging"},{name:"Diverging"},{name:"Mixed"}]},{name:"EventBasedGatewayType",literalValues:[{name:"Parallel"},{name:"Exclusive"}]},{name:"RelationshipDirection",literalValues:[{name:"None"},{name:"Forward"},{name:"Backward"},{name:"Both"}]},{name:"ItemKind",literalValues:[{name:"Physical"},{name:"Information"}]},{name:"ChoreographyLoopType",literalValues:[{name:"None"},{name:"Standard"},{name:"MultiInstanceSequential"},{name:"MultiInstanceParallel"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"MultiInstanceBehavior",literalValues:[{name:"None"},{name:"One"},{name:"All"},{name:"Complex"}]},{name:"AdHocOrdering",literalValues:[{name:"Parallel"},{name:"Sequential"}]}],xml:{tagAlias:"lowerCase",typePrefix:"t"}},bpmndi:{name:"BPMNDI",uri:"http://www.omg.org/spec/BPMN/20100524/DI",prefix:"bpmndi",types:[{name:"BPMNDiagram",properties:[{name:"plane",type:"BPMNPlane",redefines:"di:Diagram#rootElement"},{name:"labelStyle",type:"BPMNLabelStyle",isMany:!0}],superClass:["di:Diagram"]},{name:"BPMNPlane",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"}],superClass:["di:Plane"]},{name:"BPMNShape",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"isHorizontal",isAttr:!0,type:"Boolean"},{name:"isExpanded",isAttr:!0,type:"Boolean"},{name:"isMarkerVisible",isAttr:!0,type:"Boolean"},{name:"label",type:"BPMNLabel"},{name:"isMessageVisible",isAttr:!0,type:"Boolean"},{name:"participantBandKind",type:"ParticipantBandKind",isAttr:!0},{name:"choreographyActivityShape",type:"BPMNShape",isAttr:!0,isReference:!0}],superClass:["di:LabeledShape"]},{name:"BPMNEdge",properties:[{name:"label",type:"BPMNLabel"},{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"sourceElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#source"},{name:"targetElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#target"},{name:"messageVisibleKind",type:"MessageVisibleKind",isAttr:!0,default:"initiating"}],superClass:["di:LabeledEdge"]},{name:"BPMNLabel",properties:[{name:"labelStyle",type:"BPMNLabelStyle",isAttr:!0,isReference:!0,redefines:"di:DiagramElement#style"}],superClass:["di:Label"]},{name:"BPMNLabelStyle",properties:[{name:"font",type:"dc:Font"}],superClass:["di:Style"]}],enumerations:[{name:"ParticipantBandKind",literalValues:[{name:"top_initiating"},{name:"middle_initiating"},{name:"bottom_initiating"},{name:"top_non_initiating"},{name:"middle_non_initiating"},{name:"bottom_non_initiating"}]},{name:"MessageVisibleKind",literalValues:[{name:"initiating"},{name:"non_initiating"}]}],associations:[]},dc:{name:"DC",uri:"http://www.omg.org/spec/DD/20100524/DC",prefix:"dc",types:[{name:"Boolean"},{name:"Integer"},{name:"Real"},{name:"String"},{name:"Font",properties:[{name:"name",type:"String",isAttr:!0},{name:"size",type:"Real",isAttr:!0},{name:"isBold",type:"Boolean",isAttr:!0},{name:"isItalic",type:"Boolean",isAttr:!0},{name:"isUnderline",type:"Boolean",isAttr:!0},{name:"isStrikeThrough",type:"Boolean",isAttr:!0}]},{name:"Point",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0}]},{name:"Bounds",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0},{name:"width",type:"Real",isAttr:!0},{name:"height",type:"Real",isAttr:!0}]}],associations:[]},di:{name:"DI",uri:"http://www.omg.org/spec/DD/20100524/DI",prefix:"di",types:[{name:"DiagramElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"extension",type:"Extension"},{name:"owningDiagram",type:"Diagram",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"owningElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"modelElement",isReadOnly:!0,isVirtual:!0,isReference:!0,type:"Element"},{name:"style",type:"Style",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"ownedElement",type:"DiagramElement",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Node",isAbstract:!0,superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,superClass:["DiagramElement"],properties:[{name:"source",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"target",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"waypoint",isUnique:!1,isMany:!0,type:"dc:Point",xml:{serialize:"xsi:type"}}]},{name:"Diagram",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"rootElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0},{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"},{name:"ownedStyle",type:"Style",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Shape",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Plane",isAbstract:!0,superClass:["Node"],properties:[{name:"planeElement",type:"DiagramElement",subsettedProperty:"DiagramElement-ownedElement",isMany:!0}]},{name:"LabeledEdge",isAbstract:!0,superClass:["Edge"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"LabeledShape",isAbstract:!0,superClass:["Shape"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"Label",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],associations:[],xml:{tagAlias:"lowerCase"}},bioc:{name:"bpmn.io colors for BPMN",uri:"http://bpmn.io/schema/bpmn/biocolor/1.0",prefix:"bioc",types:[{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]},color:{name:"BPMN in Color",uri:"http://www.omg.org/spec/BPMN/non-normative/color/1.0",prefix:"color",types:[{name:"ColoredLabel",extends:["bpmndi:BPMNLabel"],properties:[{name:"color",isAttr:!0,type:"String"}]},{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"background-color",isAttr:!0,type:"String"},{name:"border-color",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"border-color",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]}};function Nr(e,t){return new Br(I({},Lr,e),t)}function jr(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function zr(e){return function(){if(!window.Promise)throw new Error("Promises is not supported in this environment. Please polyfill Promise.");var t=arguments.length;if(!(t>=1&&p(arguments[t-1])))return e.apply(this,arguments);var n=arguments[t-1];console.warn(new Error("Passing callbacks to "+e.name+" is deprecated and will be removed in a future major release. Please switch to promises: https://bpmn.io/l/moving-to-promises.html"));var i=Array.prototype.slice.call(arguments,0,-1);e.apply(this,i).then((function(e){var t=Object.keys(e)[0];return n(null,e[t])}),(function(e){return n(e,e.warnings)}))}}var Ir="Tried to access di from the businessObject. The di is available through the diagram element only. For more information, see https://github.com/bpmn-io/bpmn-js/issues/1472";function Xr(e){m(e,"di")||Object.defineProperty(e,"di",{enumerable:!1,get:function(){throw new Error(Ir)}})}function Qr(e,t){return e.$instanceOf(t)}function Fr(e,t){var n={},i=[],r={};function o(e,t){return function(n){e(n,t)}}function s(e){n[e.id]=e}function a(n,i){try{var o=r[n.id]&&function(n,i){if(n.gfx)throw new Error(t("already rendered {element}",{element:jr(n)}));return e.element(n,r[n.id],i)}(n,i);return s(n),o}catch(e){l(e.message,{element:n,error:e}),console.error(t("failed to import {element}",{element:jr(n)})),console.error(e)}}function l(t,n){e.error(t,n)}var c=this.registerDi=function(e){var n=e.bpmnElement;n?r[n.id]?l(t("multiple DI elements defined for {element}",{element:jr(n)}),{element:n}):(r[n.id]=e,Xr(n)):l(t("no bpmnElement referenced in {element}",{element:jr(e)}),{element:e})};function h(e){var t;t=e.plane,c(t),b(t.planeElement,u)}function u(e){c(e)}this.handleDefinitions=function(s,a){var u=s.diagrams;if(a&&-1===u.indexOf(a))throw new Error(t("diagram not part of bpmn:Definitions"));if(!a&&u&&u.length&&(a=u[0]),!a)throw new Error(t("no diagram to display"));r={},h(a);var m=a.plane;if(!m)throw new Error(t("no plane for {element}",{element:jr(a)}));var v=m.bpmnElement;if(!v){if(v=function(e){return g(e.rootElements,(function(e){return Qr(e,"bpmn:Process")||Qr(e,"bpmn:Collaboration")}))}(s),!v)throw new Error(t("no process or collaboration to display"));l(t("correcting missing bpmnElement on {plane} to {rootElement}",{plane:jr(m),rootElement:jr(v)})),m.bpmnElement=v,c(m)}var x,w,O=function(t,n){return e.root(t,r[t.id],n)}(v,m);if(Qr(v,"bpmn:Process")||Qr(v,"bpmn:SubProcess"))d(v,O);else{if(!Qr(v,"bpmn:Collaboration"))throw new Error(t("unsupported bpmnElement for {plane}: {rootElement}",{plane:jr(m),rootElement:jr(v)}));w=O,b((x=v).participants,o(A,w)),_(x.artifacts,w),i.push((function(){!function(e,t){b(e,o(f,t))}(x.messageFlows,w)})),function(e,t){var i=y(e,(function(e){return!n[e.id]&&Qr(e,"bpmn:Process")&&e.laneSets}));i.forEach(o(d,t))}(s.rootElements,O)}p(i)};var p=this.handleDeferred=function(){for(;i.length;)i.shift()()};function d(e,t){$(e,t),O(e.ioSpecification,t),_(e.artifacts,t),s(e)}function f(e,t){a(e,t)}function m(e,t){a(e,t)}function v(e,t){a(e,t)}function x(e,t){a(e,t)}function w(e,t){a(e,t)}function _(e,t){b(e,(function(e){Qr(e,"bpmn:Association")?i.push((function(){w(e,t)})):w(e,t)}))}function O(e,t){e&&(b(e.dataInputs,o(v,t)),b(e.dataOutputs,o(x,t)))}var E=this.handleSubProcess=function(e,t){$(e,t),_(e.artifacts,t)};function k(e,t){var n=a(e,t);Qr(e,"bpmn:SubProcess")&&E(e,n||t),Qr(e,"bpmn:Activity")&&O(e.ioSpecification,t),i.push((function(){b(e.dataInputAssociations,o(m,t)),b(e.dataOutputAssociations,o(m,t))}))}function S(e,t){a(e,t)}function C(e,t){i.push((function(){var n=a(e,t);e.childLaneSet&&P(e.childLaneSet,n||t),function(e){b(e.flowNodeRef,(function(t){var n=t.get("lanes");n&&n.push(e)}))}(e)}))}function P(e,t){b(e.lanes,o(C,t))}function $(e,n){!function(e,n){b(e,(function(e){Qr(e,"bpmn:SequenceFlow")?i.push((function(){!function(e,t){a(e,t)}(e,n)})):Qr(e,"bpmn:BoundaryEvent")?i.unshift((function(){k(e,n)})):Qr(e,"bpmn:FlowNode")?k(e,n):Qr(e,"bpmn:DataObject")||(Qr(e,"bpmn:DataStoreReference")||Qr(e,"bpmn:DataObjectReference")?S(e,n):l(t("unrecognized flowElement {element} in context {context}",{element:jr(e),context:n?jr(n.businessObject):"null"}),{element:e,context:n}))}))}(e.flowElements,n),e.laneSets&&function(e,t){b(e,o(P,t))}(e.laneSets,n)}function A(e,t){var n=a(e,t),i=e.processRef;i&&d(i,n||t)}}function Vr(e,t){var n=Hr(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function qr(e,t){return O(t,(function(t){return Vr(e,t)}))}function Hr(e){return e&&e.businessObject||e}function Wr(e){return e&&e.di}function Yr(e,t,n){var i,r,o,s,a=[];function l(e,t){var n=new Fr({root:function(e,t){return i.add(e,t)},element:function(e,t,n){return i.add(e,t,n)},error:function(e,t){a.push({message:e,context:t})}},o);t=t||e.diagrams&&e.diagrams[0];var r=function(e,t){if(!t)return;var n,i=t.plane.bpmnElement,r=i;Vr(i,"bpmn:Process")||Vr(i,"bpmn:Collaboration")||(r=function(e){var t=e;for(;t;){if(Vr(t,"bpmn:Process"))return t;t=t.$parent}}(i));n=Vr(r,"bpmn:Collaboration")?r:g(e.rootElements,(function(e){if(Vr(e,"bpmn:Collaboration"))return g(e.participants,(function(e){return e.processRef===r}))}));var o=[r];n&&(o=E(n.participants,(function(e){return e.processRef}))).push(n);var s=Gr(o),a=[t],l=[i];return b(e.diagrams,(function(e){var t=e.plane.bpmnElement;-1!==s.indexOf(t)&&-1===l.indexOf(t)&&(a.push(e),l.push(t))})),a}(e,t);if(!r)throw new Error(o("no diagram to display"));b(r,(function(t){n.handleDefinitions(e,t)}));var l=t.plane.bpmnElement.id;s.setRootElement(s.findRoot(l+"_plane")||s.findRoot(l))}return new Promise((function(c,h){try{return i=e.get("bpmnImporter"),r=e.get("eventBus"),o=e.get("translate"),s=e.get("canvas"),r.fire("import.render.start",{definitions:t}),l(t,n),r.fire("import.render.complete",{error:undefined,warnings:a}),c({warnings:a})}catch(e){return e.warnings=a,h(e)}}))}function Gr(e){var t=[];return b(e,(function(e){e&&(t.push(e),t=t.concat(Gr(e.flowElements)))})),t}var Ur,Zr='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21"><path fill="currentColor" d="M1.88.92v.14c0 .41-.13.68-.4.8.33.14.46.44.46.86v.33c0 .61-.33.95-.95.95H0V0h.95c.65 0 .93.3.93.92zM.63.57v1.06h.24c.24 0 .38-.1.38-.43V.98c0-.28-.1-.4-.32-.4zm0 1.63v1.22h.36c.2 0 .32-.1.32-.39v-.35c0-.37-.12-.48-.4-.48H.63zM4.18.99v.52c0 .64-.31.98-.94.98h-.3V4h-.62V0h.92c.63 0 .94.35.94.99zM2.94.57v1.35h.3c.2 0 .3-.09.3-.37v-.6c0-.29-.1-.38-.3-.38h-.3zm2.89 2.27L6.25 0h.88v4h-.6V1.12L6.1 3.99h-.6l-.46-2.82v2.82h-.55V0h.87zM8.14 1.1V4h-.56V0h.79L9 2.4V0h.56v4h-.64zm2.49 2.29v.6h-.6v-.6zM12.12 1c0-.63.33-1 .95-1 .61 0 .95.37.95 1v2.04c0 .64-.34 1-.95 1-.62 0-.95-.37-.95-1zm.62 2.08c0 .28.13.39.33.39s.32-.1.32-.4V.98c0-.29-.12-.4-.32-.4s-.33.11-.33.4z"/><path fill="currentColor" d="M0 4.53h14.02v1.04H0zM11.08 0h.63v.62h-.63zm.63 4V1h-.63v2.98z"/></svg>',Kr={verticalAlign:"middle"},Jr={color:"#404040"},eo={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},to={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},no={position:"absolute",left:"50%",top:"40%",transform:"translate(-50%)",width:"260px",padding:"10px",background:"white",boxShadow:"0 1px 4px rgba(0,0,0,0.3)",fontFamily:"Helvetica, Arial, sans-serif",fontSize:"14px",display:"flex",lineHeight:"1.3"},io='<div class="bjs-powered-by-lightbox"><div class="backdrop"></div><div class="notice"><a href="https://bpmn.io" target="_blank" rel="noopener" class="link">'+Zr+'</a><span>Web-based tooling for BPMN, DMN and forms powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>';function ro(){Ur||(J(Ur=we(io),eo),J(_e("svg",Ur),Kr),J(_e(".backdrop",Ur),to),J(_e(".notice",Ur),no),J(_e(".link",Ur),Jr,{margin:"15px 20px 15px 10px",alignSelf:"center"}),ve.bind(Ur,".backdrop","click",(function(e){document.body.removeChild(Ur)}))),document.body.appendChild(Ur)}function oo(e){e=I({},ao,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),function(e){const t=we('<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+Zr+"</a>");J(_e("svg",t),Kr),J(t,Jr,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),e.appendChild(t),fe.bind(t,"click",(function(e){ro(),e.preventDefault()}))}(this._container),this._init(this._container,this._moddle,e)}function so(e,t){return e.warnings=t,e}e(oo,bi),oo.prototype.importXML=async function(e,t){const n=this;let i=[];try{let r;e=this._emit("import.parse.start",{xml:e})||e;try{r=await this._moddle.fromXML(e,"bpmn:Definitions")}catch(e){throw this._emit("import.parse.complete",{error:e}),e}let o=r.rootElement;const s=r.references,a=r.warnings,l=r.elementsById;i=i.concat(a),o=this._emit("import.parse.complete",function(e){const t=n.get("eventBus").createEvent(e);return Object.defineProperty(t,"context",{enumerable:!0,get:function(){return console.warn(new Error("import.parse.complete <context> is deprecated and will be removed in future library versions")),{warnings:e.warnings,references:e.references,elementsById:e.elementsById}}}),t}({error:null,definitions:o,elementsById:l,references:s,warnings:i}))||o;const c=await this.importDefinitions(o,t);return i=i.concat(c.warnings),this._emit("import.done",{error:null,warnings:i}),{warnings:i}}catch(e){let t=e;throw i=i.concat(t.warnings||[]),so(t,i),t=function(e){const t=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(e.message);t&&(e.message="unparsable content <"+t[1]+"> detected; this may indicate an invalid BPMN 2.0 diagram file"+t[2]);return e}(t),this._emit("import.done",{error:t,warnings:t.warnings}),t}},oo.prototype.importXML=zr(oo.prototype.importXML),oo.prototype.importDefinitions=async function(e,t){this._setDefinitions(e);return{warnings:(await this.open(t)).warnings}},oo.prototype.importDefinitions=zr(oo.prototype.importDefinitions),oo.prototype.open=async function(e){const t=this._definitions;let n=e;if(!t){const e=new Error("no XML imported");throw so(e,[]),e}if("string"==typeof e&&(n=function(e,t){if(!t)return null;return g(e.diagrams,(function(e){return e.id===t}))||null}(t,e),!n)){const t=new Error("BPMNDiagram <"+e+"> not found");throw so(t,[]),t}try{this.clear()}catch(e){throw so(e,[]),e}const{warnings:i}=await Yr(this,t,n);return{warnings:i}},oo.prototype.open=zr(oo.prototype.open),oo.prototype.saveXML=async function(e){e=e||{};let t,n,i=this._definitions;try{if(!i)throw new Error("no definitions loaded");i=this._emit("saveXML.start",{definitions:i})||i;n=(await this._moddle.toXML(i,e)).xml,n=this._emit("saveXML.serialized",{xml:n})||n}catch(e){t=e}const r=t?{error:t}:{xml:n};if(this._emit("saveXML.done",r),t)throw t;return r},oo.prototype.saveXML=zr(oo.prototype.saveXML),oo.prototype.saveSVG=async function(){let e,t;this._emit("saveSVG.start");try{const t=this.get("canvas"),n=t.getActiveLayer(),i=_e("defs",t._svg),r=Ze(n),o=i?"<defs>"+Ze(i)+"</defs>":"",s=n.getBBox();e='<?xml version="1.0" encoding="utf-8"?>\n\x3c!-- created with bpmn-js / http://bpmn.io --\x3e\n<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\n<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="'+s.width+'" height="'+s.height+'" viewBox="'+s.x+" "+s.y+" "+s.width+" "+s.height+'" version="1.1">'+o+r+"</svg>"}catch(e){t=e}if(this._emit("saveSVG.done",{error:t,svg:e}),t)throw t;return{svg:e}},oo.prototype.saveSVG=zr(oo.prototype.saveSVG),oo.prototype._setDefinitions=function(e){this._definitions=e},oo.prototype.getModules=function(){return this._modules},oo.prototype.clear=function(){this.getDefinitions()&&bi.prototype.clear.call(this)},oo.prototype.destroy=function(){bi.prototype.destroy.call(this),Ee(this._container)},oo.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},oo.prototype.off=function(e,t){this.get("eventBus").off(e,t)},oo.prototype.attachTo=function(e){if(!e)throw new Error("parentNode required");this.detach(),e.get&&e.constructor.prototype.jquery&&(e=e.get(0)),"string"==typeof e&&(e=_e(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},oo.prototype.getDefinitions=function(){return this._definitions},oo.prototype.detach=function(){const e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},oo.prototype._init=function(e,t,n){const i=n.modules||this.getModules(n),r=n.additionalModules||[],o=[].concat([{bpmnjs:["value",this],moddle:["value",t]}],i,r),s=I(V(n,["additionalModules"]),{canvas:I({},n.canvas,{container:e}),modules:o});bi.call(this,s),n&&n.container&&this.attachTo(n.container)},oo.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},oo.prototype._createContainer=function(e){const t=we('<div class="bjs-container"></div>');return J(t,{width:lo(e.width),height:lo(e.height),position:e.position}),t},oo.prototype._createModdle=function(e){return new Nr(I({},this._moddleExtensions,e.moddleExtensions))},oo.prototype._modules=[];const ao={width:"100%",height:"100%",position:"relative"};function lo(e){return e+(u(e)?"px":"")}function co(e){oo.call(this,e),this.on("import.parse.complete",(function(e){e.error||this._collectIds(e.definitions,e.elementsById)}),this),this.on("diagram.destroy",(function(){this.get("moddle").ids.clear()}),this)}function ho(e,t){return!Vr(e,"bpmn:CallActivity")&&(Vr(e,"bpmn:SubProcess")?!(!(t=t||Wr(e))||!Vr(t,"bpmndi:BPMNPlane"))||t&&!!t.isExpanded:!Vr(e,"bpmn:Participant")||!!Hr(e).processRef)}function uo(e){return e&&!1!==Hr(e).isInterrupting}function po(e){return e&&!!Hr(e).triggeredByEvent}function fo(e,t){return O(Hr(e).eventDefinitions,(function(e){return Vr(e,t)}))}e(co,oo),co.prototype._createModdle=function(e){var t=oo.prototype._createModdle.call(this,e);return t.ids=new n([32,36,1]),t},co.prototype._collectIds=function(e,t){var n,i=e.$model.ids;for(n in i.clear(),t)i.claim(n,t[n])};var mo={width:90,height:20},go=15;function vo(e){return Vr(e,"bpmn:Event")||Vr(e,"bpmn:Gateway")||Vr(e,"bpmn:DataStoreReference")||Vr(e,"bpmn:DataObjectReference")||Vr(e,"bpmn:DataInput")||Vr(e,"bpmn:DataOutput")||Vr(e,"bpmn:SequenceFlow")||Vr(e,"bpmn:MessageFlow")||Vr(e,"bpmn:Group")}function yo(e){return kn(e.label)}function bo(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)],r=function(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)];return{x:n.x+(i.x-n.x)/2,y:n.y+(i.y-n.y)/2}}(e),o=Math.atan((i.y-n.y)/(i.x-n.x)),s=r.x,a=r.y;return Math.abs(o)<Math.PI/2?a-=go:s+=go,{x:s,y:a}}function xo(e){return e.waypoints?bo(e.waypoints):Vr(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+mo.height/2}:{x:e.x+e.width/2,y:e.y+e.height+mo.height/2}}function wo(e){return Vr(e,"bpmn:FlowElement")||Vr(e,"bpmn:Participant")||Vr(e,"bpmn:Lane")||Vr(e,"bpmn:SequenceFlow")||Vr(e,"bpmn:MessageFlow")||Vr(e,"bpmn:DataInput")||Vr(e,"bpmn:DataOutput")?"name":Vr(e,"bpmn:TextAnnotation")?"text":Vr(e,"bpmn:Group")?"categoryValueRef":void 0}function _o(e){var t=e.businessObject,n=wo(t);if(n)return"categoryValueRef"===n?function(e){var t=e.categoryValueRef;return t&&t.value||""}(t):t[n]||""}var Oo="hsl(225, 10%, 15%)";function Eo(e,t){return O(e.eventDefinitions,(function(e){return e.$type===t}))}function ko(e,t){var n=Wr(e);return n.get("color:background-color")||n.get("bioc:fill")||t||"white"}function So(e,t){var n=Wr(e);return n.get("color:border-color")||n.get("bioc:stroke")||t||Oo}function Co(e,t,n){var i=Wr(e).get("label");return i&&i.get("color:color")||t||So(e,n)}var Po=new n,$o=10,Ao=3,Ro=.95,To=.35,Mo=10;function Do(e,t,n,i,r,o,s){ut.call(this,t,s);var a=e&&e.defaultFillColor,l=e&&e.defaultStrokeColor,c=e&&e.defaultLabelColor,u=Po.next(),p={};function d(e){return n.computeStyle(e,{strokeLinecap:"round",strokeLinejoin:"round",stroke:Oo,strokeWidth:2,fill:"white"})}function f(e){return n.computeStyle(e,["no-fill"],{strokeLinecap:"round",strokeLinejoin:"round",stroke:Oo,strokeWidth:2})}function m(e,t){var{ref:n={x:0,y:0},scale:i=1,element:o}=t,s=Ie("marker",{id:e,viewBox:"0 0 20 20",refX:n.x,refY:n.y,markerWidth:20*i,markerHeight:20*i,orient:"auto"});Se(s,o);var a=_e("defs",r._svg);a||(a=Ie("defs"),Se(r._svg,a)),Se(a,s),p[e]=s}function g(e){return e.replace(/[^0-9a-zA-Z]+/g,"_")}function v(e,t,n){var i=e+"-"+g(t)+"-"+g(n)+"-"+u;return p[i]||function(e,t,n,i){if("sequenceflow-end"===t){m(e,{element:Ie("path",{d:"M 1 5 L 11 10 L 1 15 Z",...d({fill:i,stroke:i,strokeWidth:1})}),ref:{x:11,y:10},scale:.5})}if("messageflow-start"===t){m(e,{element:Ie("circle",{cx:6,cy:6,r:3.5,...d({fill:n,stroke:i,strokeWidth:1,strokeDasharray:[1e4,1]})}),ref:{x:6,y:6}})}if("messageflow-end"===t){m(e,{element:Ie("path",{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z",...d({fill:n,stroke:i,strokeWidth:1,strokeDasharray:[1e4,1]})}),ref:{x:8.5,y:5}})}if("association-start"===t){m(e,{element:Ie("path",{d:"M 11 5 L 1 10 L 11 15",...f({fill:"none",stroke:i,strokeWidth:1.5,strokeDasharray:[1e4,1]})}),ref:{x:1,y:10},scale:.5})}if("association-end"===t){m(e,{element:Ie("path",{d:"M 1 5 L 11 10 L 1 15",...f({fill:"none",stroke:i,strokeWidth:1.5,strokeDasharray:[1e4,1]})}),ref:{x:11,y:10},scale:.5})}if("conditional-flow-marker"===t){m(e,{element:Ie("path",{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z",...d({fill:n,stroke:i})}),ref:{x:-1,y:10},scale:.5})}if("conditional-default-flow-marker"===t){m(e,{element:Ie("path",{d:"M 6 4 L 10 16",...d({stroke:i})}),ref:{x:0,y:10},scale:.5})}}(i,e,t,n),"url(#"+i+")"}function y(e,t,n,i,r){h(i)&&(r=i,i=0),i=i||0,"none"===(r=d(r)).fill&&delete r.fillOpacity;var o=Ie("circle",{cx:t/2,cy:n/2,r:Math.round((t+n)/4-i),...r});return Se(e,o),o}function x(e,t,n,i,r,o){h(r)&&(o=r,r=0),r=r||0,o=d(o);var s=Ie("rect",{x:r,y:r,width:t-2*r,height:n-2*r,rx:i,ry:i,...o});return Se(e,s),s}function w(e,t,n,i){var r=vt(t,n=f(n),i);return Se(e,r),r}function _(e,t,n){return w(e,t,n,5)}function O(e,t,n){n=f(n);var i=Ie("path",{...n,d:t});return Se(e,i),i}function E(e,t,n,i){return O(t,n,I({"data-marker":e},i))}function k(e){return R[e]}function S(e){return function(t,n,i){return k(e)(t,n,i)}}function C(e,t){var n=Hr(e),i=function(e){return"bpmn:IntermediateThrowEvent"===e.$type||"bpmn:EndEvent"===e.$type}(n);return n.eventDefinitions&&n.eventDefinitions.length>1?n.parallelMultiple?k("bpmn:ParallelMultipleEventDefinition")(t,e,i):k("bpmn:MultipleEventDefinition")(t,e,i):Eo(n,"bpmn:MessageEventDefinition")?k("bpmn:MessageEventDefinition")(t,e,i):Eo(n,"bpmn:TimerEventDefinition")?k("bpmn:TimerEventDefinition")(t,e,i):Eo(n,"bpmn:ConditionalEventDefinition")?k("bpmn:ConditionalEventDefinition")(t,e):Eo(n,"bpmn:SignalEventDefinition")?k("bpmn:SignalEventDefinition")(t,e,i):Eo(n,"bpmn:EscalationEventDefinition")?k("bpmn:EscalationEventDefinition")(t,e,i):Eo(n,"bpmn:LinkEventDefinition")?k("bpmn:LinkEventDefinition")(t,e,i):Eo(n,"bpmn:ErrorEventDefinition")?k("bpmn:ErrorEventDefinition")(t,e,i):Eo(n,"bpmn:CancelEventDefinition")?k("bpmn:CancelEventDefinition")(t,e,i):Eo(n,"bpmn:CompensateEventDefinition")?k("bpmn:CompensateEventDefinition")(t,e,i):Eo(n,"bpmn:TerminateEventDefinition")?k("bpmn:TerminateEventDefinition")(t,e,i):null}function P(e,t,n){n=I({size:{width:100}},n);var i=o.createText(t||"",n);return Te(i).add("djs-label"),Se(e,i),i}function $(e,t,n){return P(e,Hr(t).name,{box:t,align:n,padding:7,style:{fill:Co(t,c,l)}})}function A(e,t,n){pi(P(e,t,{box:{height:30,width:n.height},align:"center-middle",style:{fill:Co(n,c,l)}}),0,-(-1*n.height),270)}var R=this.handlers={"bpmn:Event":function(e,t,n){return"fillOpacity"in n||(n.fillOpacity=Ro),y(e,t.width,t.height,n)},"bpmn:StartEvent":function(e,t,n){var i={fill:ko(t,a),stroke:So(t,l)};Hr(t).isInterrupting||(i={strokeDasharray:"6",fill:ko(t,a),stroke:So(t,l)});var r=k("bpmn:Event")(e,t,i);return n&&!1===n.renderIcon||C(t,e),r},"bpmn:MessageEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.235,my:.315}}),{strokeWidth:1,fill:n?So(t,l):ko(t,a),stroke:n?ko(t,a):So(t,l)})},"bpmn:TimerEventDefinition":function(e,t){var n=y(e,t.width,t.height,.2*t.height,{strokeWidth:2,fill:ko(t,a),stroke:So(t,l)});O(e,i.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.5}}),{strokeWidth:2,stroke:So(t,l)});for(var r=0;r<12;r++){var o=i.getScaledPath("EVENT_TIMER_LINE",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.5}}),s=t.width/2;O(e,o,{strokeWidth:1,transform:"rotate("+30*r+","+t.height/2+","+s+")",stroke:So(t,l)})}return n},"bpmn:EscalationEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)})},"bpmn:ConditionalEventDefinition":function(e,t){return O(e,i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.222}}),{strokeWidth:1,stroke:So(t,l)})},"bpmn:LinkEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.57,my:.263}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)})},"bpmn:ErrorEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_ERROR",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:t.width,containerHeight:t.height,position:{mx:.2,my:.722}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)})},"bpmn:CancelEventDefinition":function(e,t,n){var r=O(e,i.getScaledPath("EVENT_CANCEL_45",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.638,my:-.055}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)});return fi(r,45),r},"bpmn:CompensateEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.22,my:.5}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)})},"bpmn:SignalEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?So(t,l):"none",stroke:So(t,l)})},"bpmn:MultipleEventDefinition":function(e,t,n){return O(e,i.getScaledPath("EVENT_MULTIPLE",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:t.width,containerHeight:t.height,position:{mx:.222,my:.36}}),{strokeWidth:1,fill:n?So(t,l):"none"})},"bpmn:ParallelMultipleEventDefinition":function(e,t){return O(e,i.getScaledPath("EVENT_PARALLEL_MULTIPLE",{xScaleFactor:1.2,yScaleFactor:1.2,containerWidth:t.width,containerHeight:t.height,position:{mx:.458,my:.194}}),{strokeWidth:1,fill:So(t,l),stroke:So(t,l)})},"bpmn:EndEvent":function(e,t,n){var i=k("bpmn:Event")(e,t,{strokeWidth:4,fill:ko(t,a),stroke:So(t,l)});return n&&!1===n.renderIcon||C(t,e),i},"bpmn:TerminateEventDefinition":function(e,t){return y(e,t.width,t.height,8,{strokeWidth:4,fill:So(t,l),stroke:So(t,l)})},"bpmn:IntermediateEvent":function(e,t,n){var i=k("bpmn:Event")(e,t,{strokeWidth:1.5,fill:ko(t,a),stroke:So(t,l)});return y(e,t.width,t.height,Ao,{strokeWidth:1.5,fill:ko(t,"none"),stroke:So(t,l)}),n&&!1===n.renderIcon||C(t,e),i},"bpmn:IntermediateCatchEvent":S("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":S("bpmn:IntermediateEvent"),"bpmn:Activity":function(e,t,n){return"fillOpacity"in(n=n||{})||(n.fillOpacity=Ro),x(e,t.width,t.height,$o,n)},"bpmn:Task":function(e,t){var n={fill:ko(t,a),stroke:So(t,l)},i=k("bpmn:Activity")(e,t,n);return $(e,t,"center-middle"),T(e,t),i},"bpmn:ServiceTask":function(e,t){var n=k("bpmn:Task")(e,t);return O(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}}),{strokeWidth:1,fill:ko(t,a),stroke:So(t,l)}),O(e,i.getScaledPath("TASK_TYPE_SERVICE_FILL",{abspos:{x:17.2,y:18}}),{strokeWidth:0,fill:ko(t,a)}),O(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}}),{strokeWidth:1,fill:ko(t,a),stroke:So(t,l)}),n},"bpmn:UserTask":function(e,t){var n=k("bpmn:Task")(e,t);return O(e,i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:ko(t,a),stroke:So(t,l)}),O(e,i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:ko(t,a),stroke:So(t,l)}),O(e,i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:So(t,l),stroke:So(t,l)}),n},"bpmn:ManualTask":function(e,t){var n=k("bpmn:Task")(e,t);return O(e,i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}}),{strokeWidth:.5,fill:ko(t,a),stroke:So(t,l)}),n},"bpmn:SendTask":function(e,t){var n=k("bpmn:Task")(e,t);return O(e,i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}}),{strokeWidth:1,fill:So(t,l),stroke:ko(t,a)}),n},"bpmn:ReceiveTask":function(e,t){var n,r=Hr(t),o=k("bpmn:Task")(e,t);return r.instantiate?(y(e,28,28,4.4,{strokeWidth:1}),n=i.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):n=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),O(e,n,{strokeWidth:1,fill:ko(t,a),stroke:So(t,l)}),o},"bpmn:ScriptTask":function(e,t){var n=k("bpmn:Task")(e,t);return O(e,i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}}),{strokeWidth:1,stroke:So(t,l)}),n},"bpmn:BusinessRuleTask":function(e,t){var n=k("bpmn:Task")(e,t);return Ae(O(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}})),{strokeWidth:1,fill:ko(t,"#aaaaaa"),stroke:So(t,l)}),Ae(O(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}})),{strokeWidth:1,stroke:So(t,l)}),n},"bpmn:SubProcess":function(e,t,n){n={fill:ko(t,a),stroke:So(t,l),...n};var i=k("bpmn:Activity")(e,t,n),r=ho(t);return po(t)&&Ae(i,{strokeDasharray:"0, 5.5",strokeWidth:2.5}),$(e,t,r?"center-top":"center-middle"),r?T(e,t):T(e,t,["SubProcessMarker"]),i},"bpmn:AdHocSubProcess":function(e,t){return k("bpmn:SubProcess")(e,t)},"bpmn:Transaction":function(e,t){var i=k("bpmn:SubProcess")(e,t,{strokeWidth:1.5}),r=n.style(["no-fill","no-events"],{stroke:So(t,l),strokeWidth:1.5});return x(e,t.width,t.height,$o-3,Ao,r),i},"bpmn:CallActivity":function(e,t){return k("bpmn:SubProcess")(e,t,{strokeWidth:5})},"bpmn:Participant":function(e,t){var n={fillOpacity:Ro,fill:ko(t,a),stroke:So(t,l),strokeWidth:1.5},i=k("bpmn:Lane")(e,t,n);ho(t)?(w(e,[{x:30,y:0},{x:30,y:t.height}],{stroke:So(t,l),strokeWidth:1.5}),A(e,Hr(t).name,t)):P(e,Hr(t).name,{box:t,align:"center-middle",style:{fill:Co(t,c,l)}});return!!Hr(t).participantMultiplicity&&k("ParticipantMultiplicityMarker")(e,t),i},"bpmn:Lane":function(e,t,n){var i=x(e,t.width,t.height,0,{fill:ko(t,a),fillOpacity:To,stroke:So(t,l),strokeWidth:1.5,...n}),r=Hr(t);"bpmn:Lane"===r.$type&&A(e,r.name,t);return i},"bpmn:InclusiveGateway":function(e,t){var n=k("bpmn:Gateway")(e,t);return y(e,t.width,t.height,.24*t.height,{strokeWidth:2.5,fill:ko(t,a),stroke:So(t,l)}),n},"bpmn:ExclusiveGateway":function(e,t){var n=k("bpmn:Gateway")(e,t),r=i.getScaledPath("GATEWAY_EXCLUSIVE",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:t.width,containerHeight:t.height,position:{mx:.32,my:.3}});return Wr(t).isMarkerVisible&&O(e,r,{strokeWidth:1,fill:So(t,l),stroke:So(t,l)}),n},"bpmn:ComplexGateway":function(e,t){var n=k("bpmn:Gateway")(e,t);return O(e,i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.26}}),{strokeWidth:1,fill:So(t,l),stroke:So(t,l)}),n},"bpmn:ParallelGateway":function(e,t){var n=k("bpmn:Gateway")(e,t);return O(e,i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.2}}),{strokeWidth:1,fill:So(t,l),stroke:So(t,l)}),n},"bpmn:EventBasedGateway":function(e,t){var n=Hr(t),r=k("bpmn:Gateway")(e,t);y(e,t.width,t.height,.2*t.height,{strokeWidth:1,fill:"none",stroke:So(t,l)});var o=n.eventGatewayType,s=!!n.instantiate;if("Parallel"===o){var a=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}});O(e,a,{strokeWidth:1,fill:"none"})}else"Exclusive"===o&&(s||y(e,t.width,t.height,.26*t.height,{strokeWidth:1,fill:"none",stroke:So(t,l)}),function(){var n=i.getScaledPath("GATEWAY_EVENT_BASED",{xScaleFactor:.18,yScaleFactor:.18,containerWidth:t.width,containerHeight:t.height,position:{mx:.36,my:.44}});O(e,n,{strokeWidth:2,fill:ko(t,"none"),stroke:So(t,l)})}());return r},"bpmn:Gateway":function(e,t){return function(e,t,n,i){var r=t/2,o=n/2,s=[{x:r,y:0},{x:t,y:o},{x:r,y:n},{x:0,y:o}].map((function(e){return e.x+","+e.y})).join(" ");i=d(i);var a=Ie("polygon",{...i,points:s});return Se(e,a),a}(e,t.width,t.height,{fill:ko(t,a),fillOpacity:Ro,stroke:So(t,l)})},"bpmn:SequenceFlow":function(e,t){var n,i=ko(t,a),r=So(t,l),o=_(e,t.waypoints,{markerEnd:v("sequenceflow-end",i,r),stroke:So(t,l)}),s=Hr(t);return t.source&&(n=t.source.businessObject,s.conditionExpression&&n.$instanceOf("bpmn:Activity")&&Ae(o,{markerStart:v("conditional-flow-marker",i,r)}),n.default&&(n.$instanceOf("bpmn:Gateway")||n.$instanceOf("bpmn:Activity"))&&n.default===s&&Ae(o,{markerStart:v("conditional-default-flow-marker",i,r)})),o},"bpmn:Association":function(e,t,n){var i=Hr(t),r=ko(t,a),o=So(t,l);return n={strokeDasharray:"0, 5",stroke:So(t,l),...n},"One"!==i.associationDirection&&"Both"!==i.associationDirection||(n.markerEnd=v("association-end",r,o)),"Both"===i.associationDirection&&(n.markerStart=v("association-start",r,o)),_(e,t.waypoints,n)},"bpmn:DataInputAssociation":function(e,t){var n=ko(t,a),i=So(t,l);return k("bpmn:Association")(e,t,{markerEnd:v("association-end",n,i)})},"bpmn:DataOutputAssociation":function(e,t){var n=ko(t,a),i=So(t,l);return k("bpmn:Association")(e,t,{markerEnd:v("association-end",n,i)})},"bpmn:MessageFlow":function(e,t){var n=Hr(t),r=Wr(t),o=ko(t,a),s=So(t,l),h=_(e,t.waypoints,{markerEnd:v("messageflow-end",o,s),markerStart:v("messageflow-start",o,s),strokeDasharray:"10, 11",strokeWidth:1.5,stroke:So(t,l)});if(n.messageRef){var u=h.getPointAtLength(h.getTotalLength()/2),p=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:u.x,y:u.y}}),d={strokeWidth:1};"initiating"===r.messageVisibleKind?(d.fill="white",d.stroke=Oo):(d.fill="#888",d.stroke="white");var f=O(e,p,d),m=P(e,n.messageRef.name,{align:"center-top",fitBox:!0,style:{fill:So(t,c)}}),g=f.getBBox(),y=m.getBBox();pi(m,u.x-y.width/2,u.y+g.height/2+Mo,0)}return h},"bpmn:DataObject":function(e,t){var n=O(e,i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}}),{fill:ko(t,a),fillOpacity:Ro,stroke:So(t,l)});return function(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}(Hr(t))&&function(e,t){var n=(t.height-18)/t.height,r=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.33,my:n}});O(e,r,{strokeWidth:2})}(e,t),n},"bpmn:DataObjectReference":S("bpmn:DataObject"),"bpmn:DataInput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=k("bpmn:DataObject")(e,t);return O(e,n,{strokeWidth:1}),r},"bpmn:DataOutput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=k("bpmn:DataObject")(e,t);return O(e,n,{strokeWidth:1,fill:Oo}),r},"bpmn:DataStoreReference":function(e,t){return O(e,i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.133}}),{strokeWidth:2,fill:ko(t,a),fillOpacity:Ro,stroke:So(t,l)})},"bpmn:BoundaryEvent":function(e,t,n){var i=Hr(t).cancelActivity,r={strokeWidth:1.5,fill:ko(t,a),stroke:So(t,l)};i||(r.strokeDasharray="6");var o={...r,fillOpacity:1},s={...r,fill:"none"},c=k("bpmn:Event")(e,t,o);return y(e,t.width,t.height,Ao,s),n&&!1===n.renderIcon||C(t,e),c},"bpmn:Group":function(e,t){return x(e,t.width,t.height,$o,{stroke:So(t,l),strokeWidth:1.5,strokeDasharray:"10,6,0,6",fill:"none",pointerEvents:"none"})},label:function(e,t){return function(e,t){var n={width:90,height:30,x:t.width/2+t.x,y:t.height/2+t.y};return P(e,_o(t),{box:n,fitBox:!0,style:I({},o.getExternalStyle(),{fill:Co(t,c,l)})})}(e,t)},"bpmn:TextAnnotation":function(e,t){var n=x(e,t.width,t.height,0,0,{fill:"none",stroke:"none"});return O(e,i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:0}}),{stroke:So(t,l)}),P(e,Hr(t).text||"",{box:t,align:"left-top",padding:7,style:{fill:Co(t,c,l)}}),n},ParticipantMultiplicityMarker:function(e,t){E("participant-multiplicity",e,i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:t.width/2/t.width,my:(t.height-15)/t.height}}),{strokeWidth:2,fill:ko(t,a),stroke:So(t,l)})},SubProcessMarker:function(e,t){di(x(e,14,14,0,{strokeWidth:1,fill:ko(t,a),stroke:So(t,l)}),t.width/2-7.5,t.height-20),E("sub-process",e,i.getScaledPath("MARKER_SUB_PROCESS",{xScaleFactor:1.5,yScaleFactor:1.5,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2-7.5)/t.width,my:(t.height-20)/t.height}}),{fill:ko(t,a),stroke:So(t,l)})},ParallelMarker:function(e,t,n){E("parallel",e,i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.parallel)/t.width,my:(t.height-20)/t.height}}),{fill:ko(t,a),stroke:So(t,l)})},SequentialMarker:function(e,t,n){E("sequential",e,i.getScaledPath("MARKER_SEQUENTIAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.seq)/t.width,my:(t.height-19)/t.height}}),{fill:ko(t,a),stroke:So(t,l)})},CompensationMarker:function(e,t,n){E("compensation",e,i.getScaledPath("MARKER_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.compensation)/t.width,my:(t.height-13)/t.height}}),{strokeWidth:1,fill:ko(t,a),stroke:So(t,l)})},LoopMarker:function(e,t,n){E("loop",e,i.getScaledPath("MARKER_LOOP",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.loop)/t.width,my:(t.height-7)/t.height}}),{strokeWidth:1.5,fill:ko(t,a),stroke:So(t,l),strokeMiterlimit:.5})},AdhocMarker:function(e,t,n){E("adhoc",e,i.getScaledPath("MARKER_ADHOC",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.adhoc)/t.width,my:(t.height-15)/t.height}}),{strokeWidth:1,fill:So(t,l),stroke:So(t,l)})}};function T(e,t,n){var i,r=Hr(t),o=n&&-1!==n.indexOf("SubProcessMarker");i=o?{seq:-21,parallel:-22,compensation:-42,loop:-18,adhoc:10}:{seq:-3,parallel:-6,compensation:-27,loop:0,adhoc:10},b(n,(function(n){k(n)(e,t,i)})),r.isForCompensation&&k("CompensationMarker")(e,t,i),"bpmn:AdHocSubProcess"===r.$type&&k("AdhocMarker")(e,t,i);var s=r.loopCharacteristics,a=s&&s.isSequential;s&&(void 0===a&&k("LoopMarker")(e,t,i),!1===a&&k("ParallelMarker")(e,t,i),!0===a&&k("SequentialMarker")(e,t,i))}this._drawPath=O,this._renderer=k}e(Do,ut),Do.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],Do.prototype.canRender=function(e){return Vr(e,"bpmn:BaseElement")},Do.prototype.drawShape=function(e,t){var n=t.type;return this._renderer(n)(e,t)},Do.prototype.drawConnection=function(e,t){var n=t.type;return this._renderer(n)(e,t)},Do.prototype.getShapePath=function(e){return Vr(e,"bpmn:Event")?(n=(t=e).x+t.width/2,i=t.y+t.height/2,r=t.width/2,pt([["M",n,i],["m",0,-r],["a",r,r,0,1,1,0,2*r],["a",r,r,0,1,1,0,-2*r],["z"]])):Vr(e,"bpmn:Activity")?function(e,t){var n=e.x,i=e.y,r=e.width,o=e.height;return pt([["M",n+t,i],["l",r-2*t,0],["a",t,t,0,0,1,t,t],["l",0,o-2*t],["a",t,t,0,0,1,-t,t],["l",2*t-r,0],["a",t,t,0,0,1,-t,-t],["l",0,2*t-o],["a",t,t,0,0,1,t,-t],["z"]])}(e,$o):Vr(e,"bpmn:Gateway")?function(e){var t=e.width/2,n=e.height/2;return pt([["M",e.x+t,e.y],["l",t,n],["l",-t,n],["l",-t,-n],["z"]])}(e):function(e){var t=e.x,n=e.y,i=e.width;return pt([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])}(e);var t,n,i,r};var Bo=0,Lo={width:150,height:50};function No(e,t){var n;t.textContent=e;try{var i,r=""===e;return t.textContent=r?"dummy":e,i={width:(n=t.getBBox()).width+2*n.x,height:n.height},r&&(i.width=0),i}catch(e){return{width:0,height:0}}}function jo(e,t,n){for(var i,r=e.shift(),o=r;;){if((i=No(o,n)).width=o?i.width:0," "===o||""===o||i.width<Math.round(t)||o.length<2)return zo(e,o,r,i);o=Xo(o,i.width,t)}}function zo(e,t,n,i){if(t.length<n.length){var r=n.slice(t.length).trim();e.unshift(r)}return{width:i.width,height:i.height,text:t}}var Io="­";function Xo(e,t,n){var i=Math.max(e.length*(n/t),1),r=function(e,t){var n,i=e.split(/(\s|-|\u00AD)/g),r=[],o=0;if(i.length>1)for(;n=i.shift();){if(!(n.length+o<t)){"-"!==n&&n!==Io||r.pop();break}r.push(n),o+=n.length}var s=r[r.length-1];return s&&s===Io&&(r[r.length-1]="-"),r.join("")}(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Qo(e){this._config=I({},{size:Lo,padding:Bo,style:{},align:"center-top"},e||{})}Qo.prototype.createText=function(e,t){return this.layoutText(e,t).element},Qo.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Qo.prototype.layoutText=function(e,t){var n=I({},this._config.size,t.box),i=I({},this._config.style,t.style),r=function(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}(t.align||this._config.align),o=function(e){return h(e)?I({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}(void 0!==t.padding?t.padding:this._config.padding),s=t.fitBox||!1,a=function(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}(i),l=e.split(/\u00AD?\r?\n/),c=[],u=n.width-o.left-o.right,p=Ie("text");for(Ae(p,{x:0,y:0}),Ae(p,i),Se(function(){var e=document.getElementById("helper-svg");return e||(Ae(e=Ie("svg"),{id:"helper-svg"}),J(e,{visibility:"hidden",position:"fixed",width:0,height:0}),document.body.appendChild(e)),e}(),p);l.length;)c.push(jo(l,u,p));"middle"===r.vertical&&(o.top=o.bottom=0);var d=w(c,(function(e,t,n){return e+(a||t.height)}),0)+o.top+o.bottom,f=w(c,(function(e,t,n){return t.width>e?t.width:e}),0),m=o.top;"middle"===r.vertical&&(m+=(n.height-d)/2),m-=(a||c[0].height)/4;var g=Ie("text");return Ae(g,i),b(c,(function(e){var t;switch(m+=a||e.height,r.horizontal){case"left":t=o.left;break;case"right":t=(s?f:u)-o.right-e.width;break;default:t=Math.max(((s?f:u)-e.width)/2+o.left,0)}var n=Ie("tspan");Ae(n,{x:t,y:m}),n.textContent=e.text,Se(g,n)})),De(p),{dimensions:{width:f,height:d},element:g}};var Fo=12,Vo=1.2,qo=30;function Ho(e){var t=I({fontFamily:"Arial, sans-serif",fontSize:Fo,fontWeight:"normal",lineHeight:Vo},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=I({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Qo({style:t});this.getExternalLabelBounds=function(e,t){var n=r.getDimensions(t,{box:{width:90,height:30},style:i});return{x:Math.round(e.x+e.width/2-n.width/2),y:Math.round(e.y),width:Math.ceil(n.width),height:Math.ceil(n.height)}},this.getTextAnnotationBounds=function(e,n){var i=r.getDimensions(n,{box:e,style:t,align:"left-top",padding:5});return{x:e.x,y:e.y,width:e.width,height:Math.max(qo,Math.round(i.height))}},this.createText=function(e,t){return r.createText(e,t||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}Ho.$inject=["config.textRenderer"];var Wo=/\{([^{}]+)\}/g,Yo=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;var Go={__init__:["bpmnRenderer"],bpmnRenderer:["type",Do],textRenderer:["type",Ho],pathMap:["type",function(){this.pathMap={EVENT_MESSAGE:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:36,width:36,heightElements:[6,14],widthElements:[10.5,21]},EVENT_SIGNAL:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x1},0 Z",height:36,width:36,heightElements:[18],widthElements:[10,20]},EVENT_ESCALATION:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x0},-{e.y1} l -{e.x0},{e.y1} Z",height:36,width:36,heightElements:[20,7],widthElements:[8]},EVENT_CONDITIONAL:{d:"M {e.x0},{e.y0} l {e.x1},0 l 0,{e.y2} l -{e.x1},0 Z M {e.x2},{e.y3} l {e.x0},0 M {e.x2},{e.y4} l {e.x0},0 M {e.x2},{e.y5} l {e.x0},0 M {e.x2},{e.y6} l {e.x0},0 M {e.x2},{e.y7} l {e.x0},0 M {e.x2},{e.y8} l {e.x0},0 ",height:36,width:36,heightElements:[8.5,14.5,18,11.5,14.5,17.5,20.5,23.5,26.5],widthElements:[10.5,14.5,12.5]},EVENT_LINK:{d:"m {mx},{my} 0,{e.y0} -{e.x1},0 0,{e.y1} {e.x1},0 0,{e.y0} {e.x0},-{e.y2} -{e.x0},-{e.y2} z",height:36,width:36,heightElements:[4.4375,6.75,7.8125],widthElements:[9.84375,13.5]},EVENT_ERROR:{d:"m {mx},{my} {e.x0},-{e.y0} {e.x1},-{e.y1} {e.x2},{e.y2} {e.x3},-{e.y3} -{e.x4},{e.y4} -{e.x5},-{e.y5} z",height:36,width:36,heightElements:[.023,8.737,8.151,16.564,10.591,8.714],widthElements:[.085,6.672,6.97,4.273,5.337,6.636]},EVENT_CANCEL_45:{d:"m {mx},{my} -{e.x1},0 0,{e.x0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:36,width:36,heightElements:[4.75,8.5],widthElements:[4.75,8.5]},EVENT_COMPENSATION:{d:"m {mx},{my} {e.x0},-{e.y0} 0,{e.y1} z m {e.x1},-{e.y2} {e.x2},-{e.y3} 0,{e.y1} -{e.x2},-{e.y3} z",height:36,width:36,heightElements:[6.5,13,.4,6.1],widthElements:[9,9.3,8.7]},EVENT_TIMER_WH:{d:"M {mx},{my} l {e.x0},-{e.y0} m -{e.x0},{e.y0} l {e.x1},{e.y1} ",height:36,width:36,heightElements:[10,2],widthElements:[3,7]},EVENT_TIMER_LINE:{d:"M {mx},{my} m {e.x0},{e.y0} l -{e.x1},{e.y1} ",height:36,width:36,heightElements:[10,3],widthElements:[0,0]},EVENT_MULTIPLE:{d:"m {mx},{my} {e.x1},-{e.y0} {e.x1},{e.y0} -{e.x0},{e.y1} -{e.x2},0 z",height:36,width:36,heightElements:[6.28099,12.56199],widthElements:[3.1405,9.42149,12.56198]},EVENT_PARALLEL_MULTIPLE:{d:"m {mx},{my} {e.x0},0 0,{e.y1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} -{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z",height:36,width:36,heightElements:[2.56228,7.68683],widthElements:[2.56228,7.68683]},GATEWAY_EXCLUSIVE:{d:"m {mx},{my} {e.x0},{e.y0} {e.x1},{e.y0} {e.x2},0 {e.x4},{e.y2} {e.x4},{e.y1} {e.x2},0 {e.x1},{e.y3} {e.x0},{e.y3} {e.x3},0 {e.x5},{e.y1} {e.x5},{e.y2} {e.x3},0 z",height:17.5,width:17.5,heightElements:[8.5,6.5312,-6.5312,-8.5],widthElements:[6.5,-6.5,3,-3,5,-5]},GATEWAY_PARALLEL:{d:"m {mx},{my} 0,{e.y1} -{e.x1},0 0,{e.y0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:30,width:30,heightElements:[5,12.5],widthElements:[5,12.5]},GATEWAY_EVENT_BASED:{d:"m {mx},{my} {e.x0},{e.y0} {e.x0},{e.y1} {e.x1},{e.y2} {e.x2},0 z",height:11,width:11,heightElements:[-6,6,12,-12],widthElements:[9,-3,-12]},GATEWAY_COMPLEX:{d:"m {mx},{my} 0,{e.y0} -{e.x0},-{e.y1} -{e.x1},{e.y2} {e.x0},{e.y1} -{e.x2},0 0,{e.y3} {e.x2},0 -{e.x0},{e.y1} l {e.x1},{e.y2} {e.x0},-{e.y1} 0,{e.y0} {e.x3},0 0,-{e.y0} {e.x0},{e.y1} {e.x1},-{e.y2} -{e.x0},-{e.y1} {e.x2},0 0,-{e.y3} -{e.x2},0 {e.x0},-{e.y1} -{e.x1},-{e.y2} -{e.x0},{e.y1} 0,-{e.y0} -{e.x3},0 z",height:17.125,width:17.125,heightElements:[4.875,3.4375,2.125,3],widthElements:[3.4375,2.125,4.875,3]},DATA_OBJECT_PATH:{d:"m 0,0 {e.x1},0 {e.x0},{e.y0} 0,{e.y1} -{e.x2},0 0,-{e.y2} {e.x1},0 0,{e.y0} {e.x0},0",height:61,width:51,heightElements:[10,50,60],widthElements:[10,40,50,60]},DATA_OBJECT_COLLECTION_PATH:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},DATA_ARROW:{d:"m 5,9 9,0 0,-3 5,5 -5,5 0,-3 -9,0 z",height:61,width:51,heightElements:[],widthElements:[]},DATA_STORE:{d:"m {mx},{my} l 0,{e.y2} c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 l 0,-{e.y2} c -{e.x0},-{e.y1} -{e.x1},-{e.y1} -{e.x2},0c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0",height:61,width:61,heightElements:[7,10,45],widthElements:[2,58,60]},TEXT_ANNOTATION:{d:"m {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0",height:30,width:10,heightElements:[30],widthElements:[10]},MARKER_SUB_PROCESS:{d:"m{mx},{my} m 7,2 l 0,10 m -5,-5 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_PARALLEL:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},MARKER_SEQUENTIAL:{d:"m{mx},{my} m 0,3 l 10,0 m -10,3 l 10,0 m -10,3 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_COMPENSATION:{d:"m {mx},{my} 7,-5 0,10 z m 7.1,-0.3 6.9,-4.7 0,10 -6.9,-4.7 z",height:10,width:21,heightElements:[],widthElements:[]},MARKER_LOOP:{d:"m {mx},{my} c 3.526979,0 6.386161,-2.829858 6.386161,-6.320661 0,-3.490806 -2.859182,-6.320661 -6.386161,-6.320661 -3.526978,0 -6.38616,2.829855 -6.38616,6.320661 0,1.745402 0.714797,3.325567 1.870463,4.469381 0.577834,0.571908 1.265885,1.034728 2.029916,1.35457 l -0.718163,-3.909793 m 0.718163,3.909793 -3.885211,0.802902",height:13.9,width:13.7,heightElements:[],widthElements:[]},MARKER_ADHOC:{d:"m {mx},{my} m 0.84461,2.64411 c 1.05533,-1.23780996 2.64337,-2.07882 4.29653,-1.97997996 2.05163,0.0805 3.85579,1.15803 5.76082,1.79107 1.06385,0.34139996 2.24454,0.1438 3.18759,-0.43767 0.61743,-0.33642 1.2775,-0.64078 1.7542,-1.17511 0,0.56023 0,1.12046 0,1.6807 -0.98706,0.96237996 -2.29792,1.62393996 -3.6918,1.66181996 -1.24459,0.0927 -2.46671,-0.2491 -3.59505,-0.74812 -1.35789,-0.55965 -2.75133,-1.33436996 -4.27027,-1.18121996 -1.37741,0.14601 -2.41842,1.13685996 -3.44288,1.96782996 z",height:4,width:15,heightElements:[],widthElements:[]},TASK_TYPE_SEND:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:14,width:21,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_SCRIPT:{d:"m {mx},{my} c 9.966553,-6.27276 -8.000926,-7.91932 2.968968,-14.938 l -8.802728,0 c -10.969894,7.01868 6.997585,8.66524 -2.968967,14.938 z m -7,-12 l 5,0 m -4.5,3 l 4.5,0 m -3,3 l 5,0m -4,3 l 5,0",height:15,width:12.6,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_USER_1:{d:"m {mx},{my} c 0.909,-0.845 1.594,-2.049 1.594,-3.385 0,-2.554 -1.805,-4.62199999 -4.357,-4.62199999 -2.55199998,0 -4.28799998,2.06799999 -4.28799998,4.62199999 0,1.348 0.974,2.562 1.89599998,3.405 -0.52899998,0.187 -5.669,2.097 -5.794,4.7560005 v 6.718 h 17 v -6.718 c 0,-2.2980005 -5.5279996,-4.5950005 -6.0509996,-4.7760005 zm -8,6 l 0,5.5 m 11,0 l 0,-5"},TASK_TYPE_USER_2:{d:"m {mx},{my} m 2.162,1.009 c 0,2.4470005 -2.158,4.4310005 -4.821,4.4310005 -2.66499998,0 -4.822,-1.981 -4.822,-4.4310005 "},TASK_TYPE_USER_3:{d:"m {mx},{my} m -6.9,-3.80 c 0,0 2.25099998,-2.358 4.27399998,-1.177 2.024,1.181 4.221,1.537 4.124,0.965 -0.098,-0.57 -0.117,-3.79099999 -4.191,-4.13599999 -3.57499998,0.001 -4.20799998,3.36699999 -4.20699998,4.34799999 z"},TASK_TYPE_MANUAL:{d:"m {mx},{my} c 0.234,-0.01 5.604,0.008 8.029,0.004 0.808,0 1.271,-0.172 1.417,-0.752 0.227,-0.898 -0.334,-1.314 -1.338,-1.316 -2.467,-0.01 -7.886,-0.004 -8.108,-0.004 -0.014,-0.079 0.016,-0.533 0,-0.61 0.195,-0.042 8.507,0.006 9.616,0.002 0.877,-0.007 1.35,-0.438 1.353,-1.208 0.003,-0.768 -0.479,-1.09 -1.35,-1.091 -2.968,-0.002 -9.619,-0.013 -9.619,-0.013 v -0.591 c 0,0 5.052,-0.016 7.225,-0.016 0.888,-0.002 1.354,-0.416 1.351,-1.193 -0.006,-0.761 -0.492,-1.196 -1.361,-1.196 -3.473,-0.005 -10.86,-0.003 -11.0829995,-0.003 -0.022,-0.047 -0.045,-0.094 -0.069,-0.139 0.3939995,-0.319 2.0409995,-1.626 2.4149995,-2.017 0.469,-0.4870005 0.519,-1.1650005 0.162,-1.6040005 -0.414,-0.511 -0.973,-0.5 -1.48,-0.236 -1.4609995,0.764 -6.5999995,3.6430005 -7.7329995,4.2710005 -0.9,0.499 -1.516,1.253 -1.882,2.19 -0.37000002,0.95 -0.17,2.01 -0.166,2.979 0.004,0.718 -0.27300002,1.345 -0.055,2.063 0.629,2.087 2.425,3.312 4.859,3.318 4.6179995,0.014 9.2379995,-0.139 13.8569995,-0.158 0.755,-0.004 1.171,-0.301 1.182,-1.033 0.012,-0.754 -0.423,-0.969 -1.183,-0.973 -1.778,-0.01 -5.824,-0.004 -6.04,-0.004 10e-4,-0.084 0.003,-0.586 10e-4,-0.67 z"},TASK_TYPE_INSTANTIATING_SEND:{d:"m {mx},{my} l 0,8.4 l 12.6,0 l 0,-8.4 z l 6.3,3.6 l 6.3,-3.6"},TASK_TYPE_SERVICE:{d:"m {mx},{my} v -1.71335 c 0.352326,-0.0705 0.703932,-0.17838 1.047628,-0.32133 0.344416,-0.14465 0.665822,-0.32133 0.966377,-0.52145 l 1.19431,1.18005 1.567487,-1.57688 -1.195028,-1.18014 c 0.403376,-0.61394 0.683079,-1.29908 0.825447,-2.01824 l 1.622133,-0.01 v -2.2196 l -1.636514,0.01 c -0.07333,-0.35153 -0.178319,-0.70024 -0.323564,-1.04372 -0.145244,-0.34406 -0.321407,-0.6644 -0.522735,-0.96217 l 1.131035,-1.13631 -1.583305,-1.56293 -1.129598,1.13589 c -0.614052,-0.40108 -1.302883,-0.68093 -2.022633,-0.82247 l 0.0093,-1.61852 h -2.241173 l 0.0042,1.63124 c -0.353763,0.0736 -0.705369,0.17977 -1.049785,0.32371 -0.344415,0.14437 -0.665102,0.32092 -0.9635006,0.52046 l -1.1698628,-1.15823 -1.5667691,1.5792 1.1684265,1.15669 c -0.4026573,0.61283 -0.68308,1.29797 -0.8247287,2.01713 l -1.6588041,0.003 v 2.22174 l 1.6724648,-0.006 c 0.073327,0.35077 0.1797598,0.70243 0.3242851,1.04472 0.1452428,0.34448 0.3214064,0.6644 0.5227339,0.96066 l -1.1993431,1.19723 1.5840256,1.56011 1.1964668,-1.19348 c 0.6140517,0.40346 1.3028827,0.68232 2.0233517,0.82331 l 7.19e-4,1.69892 h 2.226848 z m 0.221462,-3.9957 c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_SERVICE_FILL:{d:"m {mx},{my} c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_BUSINESS_RULE_HEADER:{d:"m {mx},{my} 0,4 20,0 0,-4 z"},TASK_TYPE_BUSINESS_RULE_MAIN:{d:"m {mx},{my} 0,12 20,0 0,-12 zm 0,8 l 20,0 m -13,-4 l 0,8"},MESSAGE_FLOW_MARKER:{d:"m {mx},{my} m -10.5 ,-7 l 0,14 l 21,0 l 0,-14 z l 10.5,6 l 10.5,-6"}},this.getRawPath=function(e){return this.pathMap[e].d},this.getScaledPath=function(e,t){var n,i,r=this.pathMap[e];t.abspos?(n=t.abspos.x,i=t.abspos.y):(n=t.containerWidth*t.position.mx,i=t.containerHeight*t.position.my);var o={};if(t.position){for(var s=t.containerHeight/r.height*t.yScaleFactor,a=t.containerWidth/r.width*t.xScaleFactor,l=0;l<r.heightElements.length;l++)o["y"+l]=r.heightElements[l]*s;for(var c=0;c<r.widthElements.length;c++)o["x"+c]=r.widthElements[c]*a}var h,u,p=(h=r.d,u={mx:n,my:i,e:o},String(h).replace(Wo,(function(e,t){return function(e,t,n){var i=n;return t.replace(Yo,(function(e,t,n,r,o){t=t||r,i&&(t in i&&(i=i[t]),"function"==typeof i&&o&&(i=i()))})),i=(null==i||i==n?e:i)+""}(e,t,u)})));return p}}]};var Uo={translate:["value",function(e,t){return t=t||{},e.replace(/{([^}]+)}/g,(function(e,n){return t[n]||"{"+n+"}"}))}]};function Zo(e,t,n){return I({id:e.id,type:e.$type,businessObject:e,di:t},n)}function Ko(e,t,n){var i=e.waypoint;return!i||i.length<2?[Rn(t),Rn(n)]:i.map((function(e){return{x:e.x,y:e.y}}))}function Jo(e,t,n,i){return new Error(e("element {element} referenced by {referenced}#{property} not yet drawn",{element:jr(n),referenced:jr(t),property:i}))}function es(e,t,n,i,r,o){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._translate=r,this._textRenderer=o}es.$inject=["eventBus","canvas","elementFactory","elementRegistry","translate","textRenderer"],es.prototype.add=function(e,t,n){var i,r,o,s=this._translate;if(Vr(t,"bpmndi:BPMNPlane")){var a=Vr(e,"bpmn:SubProcess")?{id:e.id+"_plane"}:{};i=this._elementFactory.createRoot(Zo(e,t,a)),this._canvas.addRootElement(i)}else if(Vr(t,"bpmndi:BPMNShape")){var l=!ho(e,t),c=function(e){return Vr(e,"bpmn:Group")}(e);r=n&&(n.hidden||n.collapsed);var h=t.bounds;i=this._elementFactory.createShape(Zo(e,t,{collapsed:l,hidden:r,x:Math.round(h.x),y:Math.round(h.y),width:Math.round(h.width),height:Math.round(h.height),isFrame:c})),Vr(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,i),Vr(e,"bpmn:Lane")&&(o=0),Vr(e,"bpmn:DataStoreReference")&&(function(e,t){var n=t.x,i=t.y;return n>=e.x&&n<=e.x+e.width&&i>=e.y&&i<=e.y+e.height}(n,Rn(h))||(n=this._canvas.findRoot(n))),this._canvas.addShape(i,n,o)}else{if(!Vr(t,"bpmndi:BPMNEdge"))throw new Error(s("unknown di {di} for element {semantic}",{di:jr(t),semantic:jr(e)}));var u=this._getSource(e),p=this._getTarget(e);r=n&&(n.hidden||n.collapsed),i=this._elementFactory.createConnection(Zo(e,t,{hidden:r,source:u,target:p,waypoints:Ko(t,u,p)})),Vr(e,"bpmn:DataAssociation")&&(n=this._canvas.findRoot(n)),this._canvas.addConnection(i,n,o)}return vo(e)&&_o(i)&&this.addLabel(e,t,i),this._eventBus.fire("bpmnElement.added",{element:i}),i},es.prototype._attachBoundary=function(e,t){var n=this._translate,i=e.attachedToRef;if(!i)throw new Error(n("missing {semantic}#attachedToRef",{semantic:jr(e)}));var r=this._elementRegistry.get(i.id),o=r&&r.attachers;if(!r)throw Jo(n,e,i,"attachedToRef");t.host=r,o||(r.attachers=o=[]),-1===o.indexOf(t)&&o.push(t)},es.prototype.addLabel=function(e,t,n){var i,r,o;return i=function(e,t){var n,i,r,o=e.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(mo.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=xo(t),i=mo),I({x:n.x-i.width/2,y:n.y-i.height/2},i)}(t,n),(r=_o(n))&&(i=this._textRenderer.getExternalLabelBounds(i,r)),o=this._elementFactory.createLabel(Zo(e,t,{id:e.id+"_label",labelTarget:n,type:"label",hidden:n.hidden||!_o(n),x:Math.round(i.x),y:Math.round(i.y),width:Math.round(i.width),height:Math.round(i.height)})),this._canvas.addShape(o,n.parent)},es.prototype._getConnectedElement=function(e,t){var n,i,r=e.$type,o=this._translate;if(i=e[t+"Ref"],"source"===t&&"bpmn:DataInputAssociation"===r&&(i=i&&i[0]),("source"===t&&"bpmn:DataOutputAssociation"===r||"target"===t&&"bpmn:DataInputAssociation"===r)&&(i=e.$parent),n=i&&this._getElement(i))return n;throw i?Jo(o,e,i,t+"Ref"):new Error(o("{semantic}#{side} Ref not specified",{semantic:jr(e),side:t}))},es.prototype._getSource=function(e){return this._getConnectedElement(e,"source")},es.prototype._getTarget=function(e){return this._getConnectedElement(e,"target")},es.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};var ts={__depends__:[Go,{__depends__:[Uo],bpmnImporter:["type",es]}]};function ns(e){e&&"function"==typeof e.stopPropagation&&e.stopPropagation()}function is(e){return e.originalEvent||e.srcEvent}function rs(e){ns(e),ns(is(e))}function os(e){return e.pointers&&e.pointers.length&&(e=e.pointers[0]),e.touches&&e.touches.length&&(e=e.touches[0]),e?{x:e.clientX,y:e.clientY}:null}function ss(e,t){return(is(e)||e).button===t}function as(e){return ss(e,0)}function ls(e){var t=is(e)||e;return!!as(e)&&(/mac/i.test(navigator.platform)?t.metaKey:t.ctrlKey)}function cs(e){var t=is(e)||e;return as(e)&&t.shiftKey}function hs(e){return!0}function us(e){return as(e)||function(e){return ss(e,1)}(e)}var ps=500;function ds(e,t,n){var i=this;function r(n,i,r){var o,s;(function(e,t){var n=l[e]||as;return!n(t)})(n,i)||(r?s=t.getGraphics(r):(o=i.delegateTarget||i.target)&&(s=o,r=t.get(s)),s&&r&&!1===e.fire(n,{element:r,gfx:s,originalEvent:i})&&(i.stopPropagation(),i.preventDefault()))}var o={};function s(e){return o[e]}var a={click:"element.click",contextmenu:"element.contextmenu",dblclick:"element.dblclick",mousedown:"element.mousedown",mousemove:"element.mousemove",mouseover:"element.hover",mouseout:"element.out",mouseup:"element.mouseup"},l={"element.contextmenu":hs,"element.mousedown":us,"element.mouseup":us,"element.click":us,"element.dblclick":us};var c="svg, .djs-element";function h(e,t,n,i){var s=o[n]=function(e){r(n,e)};i&&(l[n]=i),s.$delegate=ve.bind(e,c,t,s)}function u(e,t,n){var i=s(n);i&&ve.unbind(e,t,i.$delegate)}e.on("canvas.destroy",(function(e){!function(e){b(a,(function(t,n){u(e,n,t)}))}(e.svg)})),e.on("canvas.init",(function(e){!function(e){b(a,(function(t,n){h(e,n,t)}))}(e.svg)})),e.on(["shape.added","connection.added"],(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.createHit",{element:n,gfx:i})})),e.on(["shape.changed","connection.changed"],ps,(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.updateHit",{element:n,gfx:i})})),e.on("interactionEvents.createHit",ps,(function(e){var t=e.element,n=e.gfx;i.createDefaultHit(t,n)})),e.on("interactionEvents.updateHit",(function(e){var t=e.element,n=e.gfx;i.updateDefaultHit(t,n)}));var p=m("djs-hit djs-hit-stroke"),d=m("djs-hit djs-hit-click-stroke"),f={all:m("djs-hit djs-hit-all"),"click-stroke":d,stroke:p,"no-move":m("djs-hit djs-hit-no-move")};function m(e,t){return t=I({stroke:"white",strokeWidth:15},t||{}),n.cls(e,["no-fill","no-border"],t)}function g(e,t){var n=f[t];if(!n)throw new Error("invalid hit type <"+t+">");return Ae(e,n),e}function v(e,t){Se(e,t)}this.removeHits=function(e){b(Oe(".djs-hit",e),De)},this.createDefaultHit=function(e,t){var n,i=e.waypoints,r=e.isFrame;return i?this.createWaypointsHit(t,i):(n=r?"stroke":"all",this.createBoxHit(t,n,{width:e.width,height:e.height}))},this.createWaypointsHit=function(e,t){var n=vt(t);return g(n,"stroke"),v(e,n),n},this.createBoxHit=function(e,t,n){n=I({x:0,y:0},n);var i=Ie("rect");return g(i,t),Ae(i,n),v(e,i),i},this.updateDefaultHit=function(e,t){var n=_e(".djs-hit",t);if(n)return e.waypoints?yt(n,e.waypoints):Ae(n,{width:e.width,height:e.height}),n},this.fire=r,this.triggerMouseEvent=function(e,t,n){var i=a[e];if(!i)throw new Error("unmapped DOM event name <"+e+">");return r(i,t,n)},this.mouseHandler=s,this.registerEvent=h,this.unregisterEvent=u}ds.$inject=["eventBus","elementRegistry","styles"];var fs={__init__:["interactionEvents"],interactionEvents:["type",ds]},ms=500;function gs(e,t){this.offset=6;var n=t.cls("djs-outline",["no-fill"]),i=this;function r(e,t){var i=Ie("rect");return Ae(i,I({x:10,y:10,rx:4,width:100,height:100},n)),Se(e,i),i}e.on(["shape.added","shape.changed"],ms,(function(e){var t=e.element,n=e.gfx,o=_e(".djs-outline",n);o||(o=r(n)),i.updateShapeOutline(o,t)})),e.on(["connection.added","connection.changed"],(function(e){var t=e.element,n=e.gfx,o=_e(".djs-outline",n);o||(o=r(n)),i.updateConnectionOutline(o,t)}))}gs.prototype.updateShapeOutline=function(e,t){Ae(e,{x:-this.offset,y:-this.offset,width:t.width+2*this.offset,height:t.height+2*this.offset})},gs.prototype.updateConnectionOutline=function(e,t){var n=Et(t);Ae(e,{x:n.x-this.offset,y:n.y-this.offset,width:n.width+2*this.offset,height:n.height+2*this.offset})},gs.$inject=["eventBus","styles","elementRegistry"];var vs={__init__:["outline"],outline:["type",gs]};function ys(e,t){this._eventBus=e,this._canvas=t,this._selectedElements=[];var n=this;e.on(["shape.remove","connection.remove"],(function(e){var t=e.element;n.deselect(t)})),e.on(["diagram.clear","root.set"],(function(e){n.select(null)}))}ys.$inject=["eventBus","canvas"],ys.prototype.deselect=function(e){var t=this._selectedElements,n=t.indexOf(e);if(-1!==n){var i=t.slice();t.splice(n,1),this._eventBus.fire("selection.changed",{oldSelection:i,newSelection:t})}},ys.prototype.get=function(){return this._selectedElements},ys.prototype.isSelected=function(e){return-1!==this._selectedElements.indexOf(e)},ys.prototype.select=function(e,t){var n=this._selectedElements,i=n.slice();c(e)||(e=e?[e]:[]);var r=this._canvas,o=r.getRootElement();e=e.filter((function(e){var t=r.findRoot(e);return o===t})),t?b(e,(function(e){-1===n.indexOf(e)&&n.push(e)})):this._selectedElements=n=e.slice(),this._eventBus.fire("selection.changed",{oldSelection:i,newSelection:n})};var bs="hover",xs="selected",ws=6;function _s(e,t,n){this._canvas=e;var i=this;function r(t,n){e.addMarker(t,n)}function o(t,n){e.removeMarker(t,n)}this._multiSelectionBox=null,t.on("element.hover",(function(e){r(e.element,bs)})),t.on("element.out",(function(e){o(e.element,bs)})),t.on("selection.changed",(function(e){var t=e.oldSelection,n=e.newSelection;b(t,(function(e){-1===n.indexOf(e)&&function(e){o(e,xs)}(e)})),b(n,(function(e){-1===t.indexOf(e)&&function(e){r(e,xs)}(e)})),i._updateSelectionOutline(n)})),t.on("element.changed",(function(e){n.isSelected(e.element)&&i._updateSelectionOutline(n.get())}))}function Os(e,t,n,i){e.on("create.end",500,(function(e){var n=e.context,i=n.canExecute,r=n.elements,o=(n.hints||{}).autoSelect;if(i){if(!1===o)return;c(o)?t.select(o):t.select(r.filter(Es))}})),e.on("connect.end",500,(function(e){var n=e.context.connection;n&&t.select(n)})),e.on("shape.move.end",500,(function(e){var n=e.previousSelection||[],r=i.get(e.context.shape.id);g(n,(function(e){return r.id===e.id}))||t.select(r)})),e.on("element.click",(function(e){if(as(e)){var i=e.element;i===n.getRootElement()&&(i=null);var r=t.isSelected(i),o=t.get().length>1,s=ls(e)||cs(e);if(r&&o)return s?t.deselect(i):t.select(i);r?t.deselect(i):t.select(i,s)}}))}function Es(e){return!e.hidden}_s.$inject=["canvas","eventBus","selection"],_s.prototype._updateSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");Be(t);var n=e.length>1;if(Te(this._canvas.getContainer())[n?"add":"remove"]("djs-multi-select"),n){var i=function(e){return{x:e.x-ws,y:e.y-ws,width:e.width+2*ws,height:e.height+2*ws}}(Et(e)),r=Ie("rect");Ae(r,I({rx:3},i)),Te(r).add("djs-selection-outline"),Se(t,r)}},Os.$inject=["eventBus","selection","canvas","elementRegistry"];var ks={__init__:["selectionVisuals","selectionBehavior"],__depends__:[fs,vs],selection:["type",ys],selectionVisuals:["type",_s],selectionBehavior:["type",Os]};function Ss(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(1e9*Math.random())+"-"}Ss.prototype.next=function(){return this._prefix+ ++this._counter};var Cs=new Ss("ov");function Ps(e,t,n,i){var r,o;this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=Cs,this._overlayDefaults=I({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=(r=n.getContainer(),J(o=we('<div class="djs-overlay-container" />'),{position:"absolute",width:0,height:0}),r.insertBefore(o,r.firstChild),o),this._init()}function $s(e,t,n){J(e,{left:t+"px",top:n+"px"})}function As(e,t){e.style.display=!1===t?"none":""}function Rs(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach((function(n){e.style[n+"transform"]=t}))}Ps.$inject=["config.overlays","eventBus","canvas","elementRegistry"],Ps.prototype.get=function(e){if(d(e)&&(e={id:e}),d(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?y(t.overlays,T({type:e.type})):t.overlays.slice():[]}return e.type?y(this._overlays,T({type:e.type})):e.id?this._overlays[e.id]:null},Ps.prototype.add=function(e,t,n){if(h(t)&&(n=t,t=null),e.id||(e=this._elementRegistry.get(e)),!n.position)throw new Error("must specifiy overlay position");if(!n.html)throw new Error("must specifiy overlay html");if(!e)throw new Error("invalid element specified");var i=this._ids.next();return n=I({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},Ps.prototype.remove=function(e){var t=this.get(e)||[];c(t)||(t=[t]);var n=this;b(t,(function(e){var t=n._getOverlayContainer(e.element,!0);if(e&&(Ee(e.html),Ee(e.htmlContainer),delete e.htmlContainer,delete e.element,delete n._overlays[e.id]),t){var i=t.overlays.indexOf(e);-1!==i&&t.overlays.splice(i,1)}}))},Ps.prototype.isShown=function(){return"none"!==this._overlayRoot.style.display},Ps.prototype.show=function(){As(this._overlayRoot)},Ps.prototype.hide=function(){As(this._overlayRoot,!1)},Ps.prototype.clear=function(){this._overlays={},this._overlayContainers=[],re(this._overlayRoot)},Ps.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=Et(t);i=o.x,r=o.y}$s(n,i,r),ee(e.html,"data-container-id",t.id)},Ps.prototype._updateOverlay=function(e){var t,n,i=e.position,r=e.htmlContainer,o=e.element,s=i.left,a=i.top;void 0!==i.right&&(t=o.waypoints?Et(o).width:o.width,s=-1*i.right+t);void 0!==i.bottom&&(n=o.waypoints?Et(o).height:o.height,a=-1*i.bottom+n);$s(r,s||0,a||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Ps.prototype._createOverlayContainer=function(e){var t=we('<div class="djs-overlays" />');J(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},Ps.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";Rs(this._overlayRoot,n)},Ps.prototype._getOverlayContainer=function(e,t){var n=g(this._overlayContainers,(function(t){return t.element===e}));return n||t?n:this._createOverlayContainer(e)},Ps.prototype._addOverlay=function(e){var t,n,i=e.id,r=e.element,o=e.html;o.get&&o.constructor.prototype.jquery&&(o=o.get(0)),d(o)&&(o=we(o)),n=this._getOverlayContainer(r),J(t=we('<div class="djs-overlay" data-overlay-id="'+i+'">'),{position:"absolute"}),t.appendChild(o),e.type&&ne(t).add("djs-overlay-"+e.type),As(t,this._canvas.findRoot(r)===this._canvas.getRootElement()),e.htmlContainer=t,n.overlays.push(e),n.html.appendChild(t),this._overlays[i]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Ps.prototype._updateOverlayVisibilty=function(e,t){var n=e.show,i=this._canvas.findRoot(e.element),r=n&&n.minZoom,o=n&&n.maxZoom,s=e.htmlContainer,l=!0;(i!==this._canvas.getRootElement()||n&&(a(r)&&r>t.scale||a(o)&&o<t.scale))&&(l=!1),As(s,l),this._updateOverlayScale(e,t)},Ps.prototype._updateOverlayScale=function(e,t){var n,i,r,o=e.scale,s=e.htmlContainer,l="";!0!==o&&(!1===o?(n=1,i=1):(n=o.min,i=o.max),a(n)&&t.scale<n&&(r=(1/t.scale||1)*n),a(i)&&t.scale>i&&(r=(1/t.scale||1)*i)),a(r)&&(l="scale("+r+","+r+")"),Rs(s,l)},Ps.prototype._updateOverlaysVisibilty=function(e){var t=this;b(this._overlays,(function(n){t._updateOverlayVisibilty(n,e)}))},Ps.prototype._init=function(){var e=this._eventBus,t=this;e.on("canvas.viewbox.changing",(function(e){t.hide()})),e.on("canvas.viewbox.changed",(function(e){var n;n=e.viewbox,t._updateRoot(n),t._updateOverlaysVisibilty(n),t.show()})),e.on(["shape.remove","connection.remove"],(function(e){var n=e.element;b(t.get({element:n}),(function(e){t.remove(e.id)}));var i=t._getOverlayContainer(n);if(i){Ee(i.html);var r=t._overlayContainers.indexOf(i);-1!==r&&t._overlayContainers.splice(r,1)}})),e.on("element.changed",500,(function(e){var n=e.element,i=t._getOverlayContainer(n,!0);i&&(b(i.overlays,(function(e){t._updateOverlay(e)})),t._updateOverlayContainer(i))})),e.on("element.marker.update",(function(e){var n=t._getOverlayContainer(e.element,!0);n&&ne(n.html)[e.add?"add":"remove"](e.marker)})),e.on("root.set",(function(){t._updateOverlaysVisibilty(t._canvas.viewbox())})),e.on("diagram.clear",this.clear,this)};var Ts={__init__:["overlays"],overlays:["type",Ps]};function Ms(e,t,n,i){e.on("element.changed",(function(i){var r=i.element;(r.parent||r===t.getRootElement())&&(i.gfx=n.getGraphics(r)),i.gfx&&e.fire(kt(r)+".changed",i)})),e.on("elements.changed",(function(t){var n=t.elements;n.forEach((function(t){e.fire("element.changed",{element:t})})),i.updateContainments(n)})),e.on("shape.changed",(function(e){i.update("shape",e.element,e.gfx)})),e.on("connection.changed",(function(e){i.update("connection",e.element,e.gfx)}))}Ms.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];var Ds={__init__:["changeSupport"],changeSupport:["type",Ms]};function Bs(e){this._eventBus=e}function Ls(e){return function(t,n,i,r,o){(p(t)||u(t))&&(o=r,r=i,i=n,n=t,t=null),this.on(t,e,n,i,r,o)}}function Ns(e,t){t.invoke(Bs,this),this.executed((function(t){var n=t.context;n.rootElement?e.setRootElement(n.rootElement):n.rootElement=e.getRootElement()})),this.revert((function(t){var n=t.context;n.rootElement&&e.setRootElement(n.rootElement)}))}Bs.$inject=["eventBus"],Bs.prototype.on=function(e,t,n,i,r,o){if((p(t)||u(t))&&(o=r,r=i,i=n,n=t,t=null),p(n)&&(o=r,r=i,i=n,n=1e3),h(r)&&(o=r,r=!1),!p(i))throw new Error("handlerFn must be a function");c(e)||(e=[e]);var s=this._eventBus;b(e,(function(e){var a=["commandStack",e,t].filter((function(e){return e})).join(".");s.on(a,n,r?function(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}(i,o):i,o)}))},Bs.prototype.canExecute=Ls("canExecute"),Bs.prototype.preExecute=Ls("preExecute"),Bs.prototype.preExecuted=Ls("preExecuted"),Bs.prototype.execute=Ls("execute"),Bs.prototype.executed=Ls("executed"),Bs.prototype.postExecute=Ls("postExecute"),Bs.prototype.postExecuted=Ls("postExecuted"),Bs.prototype.revert=Ls("revert"),Bs.prototype.reverted=Ls("reverted"),e(Ns,Bs),Ns.$inject=["canvas","injector"];var js={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",Ns]};function zs(e){return CSS.escape(e)}var Is={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function Xs(e){return(e=""+e)&&e.replace(/[&<>"']/g,(function(e){return Is[e]}))}var Qs="_plane";function Fs(e){return function(e){return e.replace(new RegExp(Qs+"$"),"")}(e.id)}function Vs(e){var t=e.id;return Vr(e,"bpmn:SubProcess")?Ws(t):t}function qs(e){return Ws(e)}function Hs(e){return Vr(Wr(e),"bpmndi:BPMNPlane")}function Ws(e){return e+Qs}var Ys="bjs-breadcrumbs-shown";function Gs(e,t,n){var i=we('<ul class="bjs-breadcrumbs"></ul>'),r=n.getContainer(),o=ne(r);r.appendChild(i);var s=[];function a(e){e&&(s=function(e){for(var t=Hr(e),n=[],i=t;i;i=i.$parent)(Vr(i,"bpmn:SubProcess")||Vr(i,"bpmn:Process"))&&n.push(i);return n.reverse()}(e));var r=s.map((function(e){var i=Xs(e.name||e.id),r=we('<li><span class="bjs-crumb"><a title="'+i+'">'+i+"</a></span></li>"),o=n.findRoot(Vs(e))||n.findRoot(e.id);if(!o&&Vr(e,"bpmn:Process")){var s=t.find((function(t){var n=Hr(t);return n&&n.get("processRef")&&n.get("processRef")===e}));o=n.findRoot(s.id)}return r.addEventListener("click",(function(){n.setRootElement(o)})),r}));i.innerHTML="";var a=r.length>1;o.toggle(Ys,a),r.forEach((function(e){i.appendChild(e)}))}e.on("element.changed",(function(e){var t=Hr(e.element);g(s,(function(e){return e===t}))&&a()})),e.on("root.set",(function(e){a(e.element)}))}function Us(e,t){var n=null,i=new Zs;e.on("root.set",(function(e){var r=e.element,o=t.viewbox(),s=i.get(r);if(i.set(n,{x:o.x,y:o.y,zoom:o.scale}),n=r,!Vr(r,"bpmn:Collaboration")||s){s=s||{x:0,y:0,zoom:1};var a=(o.x-s.x)*o.scale,l=(o.y-s.y)*o.scale;0===a&&0===l||t.scroll({dx:a,dy:l}),s.zoom!==o.scale&&t.zoom(s.zoom,{x:0,y:0})}})),e.on("diagram.clear",(function(){i.clear(),n=null}))}function Zs(){this._entries=[],this.set=function(e,t){var n=!1;for(var i in this._entries)if(this._entries[i][0]===e){this._entries[i][1]=t,n=!0;break}n||this._entries.push([e,t])},this.get=function(e){for(var t in this._entries)if(this._entries[t][0]===e)return this._entries[t][1];return null},this.clear=function(){this._entries.length=0},this.remove=function(e){var t=-1;for(var n in this._entries)if(this._entries[n][0]===e){t=n;break}-1!==t&&this._entries.splice(t,1)}}Gs.$inject=["eventBus","elementRegistry","canvas"],Us.$inject=["eventBus","canvas"];var Ks=180,Js=160;function ea(e,t){this._eventBus=e,this._moddle=t;var n=this;e.on("import.render.start",1500,(function(e,t){n._handleImport(t.definitions)}))}function ta(e){return Vr(e,"bpmndi:BPMNDiagram")?e:ta(e.$parent)}ea.prototype._handleImport=function(e){if(e.diagrams){var t=this;this._definitions=e,this._processToDiagramMap={},e.diagrams.forEach((function(e){e.plane&&e.plane.bpmnElement&&(t._processToDiagramMap[e.plane.bpmnElement.id]=e)}));var n=[];e.diagrams.forEach((function(e){var i=t._createNewDiagrams(e.plane);Array.prototype.push.apply(n,i)})),n.forEach((function(e){t._movePlaneElementsToOrigin(e.plane)}))}},ea.prototype._createNewDiagrams=function(e){var t=this,n=[],i=[];e.get("planeElement").forEach((function(t){var r=t.bpmnElement;if(r){var o=r.$parent;Vr(r,"bpmn:SubProcess")&&!t.isExpanded&&n.push(r),function(e,t){var n=e.$parent;if(!Vr(n,"bpmn:SubProcess")||n===t.bpmnElement)return!1;if(qr(e,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))return!1;return!0}(r,e)&&i.push({diElement:t,parent:o})}}));var r=[];return n.forEach((function(e){if(!t._processToDiagramMap[e.id]){var n=t._createDiagram(e);t._processToDiagramMap[e.id]=n,r.push(n)}})),i.forEach((function(e){for(var i=e.diElement,r=e.parent;r&&-1===n.indexOf(r);)r=r.$parent;if(r){var o=t._processToDiagramMap[r.id];t._moveToDiPlane(i,o.plane)}})),r},ea.prototype._movePlaneElementsToOrigin=function(e){var t=e.get("planeElement"),n=function(e){var t={top:1/0,right:-1/0,bottom:-1/0,left:1/0};return e.planeElement.forEach((function(e){if(e.bounds){var n=Pn(e.bounds);t.top=Math.min(n.top,t.top),t.left=Math.min(n.left,t.left)}})),$n(t)}(e),i=n.x-Ks,r=n.y-Js;t.forEach((function(e){e.waypoint?e.waypoint.forEach((function(e){e.x=e.x-i,e.y=e.y-r})):e.bounds&&(e.bounds.x=e.bounds.x-i,e.bounds.y=e.bounds.y-r)}))},ea.prototype._moveToDiPlane=function(e,t){var n=ta(e).plane.get("planeElement");n.splice(n.indexOf(e),1),t.get("planeElement").push(e)},ea.prototype._createDiagram=function(e){var t=this._moddle.create("bpmndi:BPMNPlane",{bpmnElement:e}),n=this._moddle.create("bpmndi:BPMNDiagram",{plane:t});return t.$parent=n,t.bpmnElement=e,n.$parent=this._definitions,this._definitions.diagrams.push(n),n},ea.$inject=["eventBus","moddle"];var na=250;function ia(e,t,n,i){Bs.call(this,t),this._canvas=e,this._eventBus=t,this._elementRegistry=n,this._overlays=i;var r=this;this.executed("shape.toggleCollapse",na,(function(e){var t=e.shape;r._canDrillDown(t)?r._addOverlay(t):r._removeOverlay(t)}),!0),this.reverted("shape.toggleCollapse",na,(function(e){var t=e.shape;r._canDrillDown(t)?r._addOverlay(t):r._removeOverlay(t)}),!0),this.executed(["shape.create","shape.move","shape.delete"],na,(function(e){var t=e.oldParent,n=e.newParent||e.parent,i=e.shape;r._canDrillDown(i)&&r._addOverlay(i),r._updateDrilldownOverlay(t),r._updateDrilldownOverlay(n),r._updateDrilldownOverlay(i)}),!0),this.reverted(["shape.create","shape.move","shape.delete"],na,(function(e){var t=e.oldParent,n=e.newParent||e.parent,i=e.shape;r._canDrillDown(i)&&r._addOverlay(i),r._updateDrilldownOverlay(t),r._updateDrilldownOverlay(n),r._updateDrilldownOverlay(i)}),!0),t.on("import.render.complete",(function(){n.filter((function(e){return r._canDrillDown(e)})).map((function(e){r._addOverlay(e)}))}))}e(ia,Bs),ia.prototype._updateDrilldownOverlay=function(e){var t=this._canvas;if(e){var n=t.findRoot(e);n&&this._updateOverlayVisibility(n)}},ia.prototype._canDrillDown=function(e){var t=this._canvas;return Vr(e,"bpmn:SubProcess")&&t.findRoot(Vs(e))},ia.prototype._updateOverlayVisibility=function(e){var t=this._overlays,n=Hr(e),i=t.get({element:n.id,type:"drilldown"})[0];if(i){var r=n&&n.get("flowElements")&&n.get("flowElements").length;ne(i.html).toggle("bjs-drilldown-empty",!r)}},ia.prototype._addOverlay=function(e){var t=this._canvas,n=this._overlays;n.get({element:e,type:"drilldown"}).length&&this._removeOverlay(e);var i=we('<button class="bjs-drilldown"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M4.81801948,3.50735931 L10.4996894,9.1896894 L10.5,4 L12,4 L12,12 L4,12 L4,10.5 L9.6896894,10.4996894 L3.75735931,4.56801948 C3.46446609,4.27512627 3.46446609,3.80025253 3.75735931,3.50735931 C4.05025253,3.21446609 4.52512627,3.21446609 4.81801948,3.50735931 Z"/></svg></button>');i.addEventListener("click",(function(){t.setRootElement(t.findRoot(Vs(e)))})),n.add(e,"drilldown",{position:{bottom:-7,right:-8},html:i}),this._updateOverlayVisibility(e)},ia.prototype._removeOverlay=function(e){this._overlays.remove({element:e,type:"drilldown"})},ia.$inject=["canvas","eventBus","elementRegistry","overlays"];var ra={__depends__:[Ts,Ds,js],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",Gs],drilldownCentering:["type",Us],drilldownOverlayBehavior:["type",ia],subprocessCompatibility:["type",ea]};function oa(e){oo.call(this,e)}e(oa,oo),oa.prototype._modules=[ts,Uo,ks,Ts,ra],oa.prototype._moddleExtensions={};var sa=["c","C"],aa=["v","V"],la=["y","Y"],ca=["z","Z"];function ha(e){return!e.altKey&&(e.ctrlKey||e.metaKey)}function ua(e,t){return-1!==(e=c(e)?e:[e]).indexOf(t.key)||-1!==e.indexOf(t.code)}function pa(e){return e.shiftKey}function da(e){return ha(e)&&!pa(e)&&ua(ca,e)}function fa(e){return ha(e)&&(ua(la,e)||ua(ca,e)&&pa(e))}var ma="keyboard.keydown",ga="input-handle-modified-keys";function va(e,t){var n=this;this._config=e||{},this._eventBus=t,this._keydownHandler=this._keydownHandler.bind(this),this._keyupHandler=this._keyupHandler.bind(this),t.on("diagram.destroy",(function(){n._fire("destroy"),n.unbind()})),t.on("diagram.init",(function(){n._fire("init")})),t.on("attach",(function(){e&&e.bindTo&&n.bind(e.bindTo)})),t.on("detach",(function(){n.unbind()}))}va.$inject=["config.keyboard","eventBus"],va.prototype._keydownHandler=function(e){this._keyHandler(e,ma)},va.prototype._keyupHandler=function(e){this._keyHandler(e,"keyboard.keyup")},va.prototype._keyHandler=function(e,t){if(!this._isEventIgnored(e)){var n={keyEvent:e};this._eventBus.fire(t||ma,n)&&e.preventDefault()}},va.prototype._isEventIgnored=function(e){return!!e.defaultPrevented||(t=e.target)&&(oe(t,"input, textarea")||"true"===t.contentEditable)&&this._isModifiedKeyIgnored(e);var t},va.prototype._isModifiedKeyIgnored=function(e){return!ha(e)||-1===this._getAllowedModifiers(e.target).indexOf(e.key)},va.prototype._getAllowedModifiers=function(e){var t=se(e,"["+ga+"]",!0);return!t||this._node&&!this._node.contains(t)?[]:t.getAttribute(ga).split(",")},va.prototype.bind=function(e){this.unbind(),this._node=e,fe.bind(e,"keydown",this._keydownHandler),fe.bind(e,"keyup",this._keyupHandler),this._fire("bind")},va.prototype.getBinding=function(){return this._node},va.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),fe.unbind(e,"keydown",this._keydownHandler),fe.unbind(e,"keyup",this._keyupHandler)),this._node=null},va.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},va.prototype.addListener=function(e,t,n){p(e)&&(n=t,t=e,e=1e3),this._eventBus.on(n||ma,e,t)},va.prototype.removeListener=function(e,t){this._eventBus.off(t||ma,e)},va.prototype.hasModifier=function(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey},va.prototype.isCmd=ha,va.prototype.isShift=pa,va.prototype.isKey=ua;var ya=500;function ba(e,t){var n=this;e.on("editorActions.init",ya,(function(e){var i=e.editorActions;n.registerBindings(t,i)}))}ba.$inject=["eventBus","keyboard"],ba.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}n("undo",(function(e){if(da(e.keyEvent))return t.trigger("undo"),!0})),n("redo",(function(e){if(fa(e.keyEvent))return t.trigger("redo"),!0})),n("copy",(function(e){if(function(e){return ha(e)&&ua(sa,e)}(e.keyEvent))return t.trigger("copy"),!0})),n("paste",(function(e){if(function(e){return ha(e)&&ua(aa,e)}(e.keyEvent))return t.trigger("paste"),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(ua(["+","Add","="],n)&&ha(n))return t.trigger("stepZoom",{value:1}),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(ua(["-","Subtract"],n)&&ha(n))return t.trigger("stepZoom",{value:-1}),!0})),n("zoom",(function(e){var n=e.keyEvent;if(ua("0",n)&&ha(n))return t.trigger("zoom",{value:1}),!0})),n("removeSelection",(function(e){if(ua(["Backspace","Delete","Del"],e.keyEvent))return t.trigger("removeSelection"),!0}))};var xa={__init__:["keyboard","keyboardBindings"],keyboard:["type",va],keyboardBindings:["type",ba]},wa={moveSpeed:50,moveSpeedAccelerated:200};function _a(e,t,n){var i=this;this._config=I({},wa,e||{}),t.addListener((function(e){var n=e.keyEvent,r=i._config;if(!t.isCmd(n))return;if(t.isKey(["ArrowLeft","Left","ArrowUp","Up","ArrowDown","Down","ArrowRight","Right"],n)){var o,s=t.isShift(n)?r.moveSpeedAccelerated:r.moveSpeed;switch(n.key){case"ArrowLeft":case"Left":o="left";break;case"ArrowUp":case"Up":o="up";break;case"ArrowRight":case"Right":o="right";break;case"ArrowDown":case"Down":o="down"}return i.moveCanvas({speed:s,direction:o}),!0}})),this.moveCanvas=function(e){var t=0,i=0,r=e.speed/Math.min(Math.sqrt(n.viewbox().scale),1);switch(e.direction){case"left":t=r;break;case"up":i=r;break;case"right":t=-r;break;case"down":i=-r}n.scroll({dx:t,dy:i})}}_a.$inject=["config.keyboardMove","keyboard","canvas"];var Oa={__depends__:[xa],__init__:["keyboardMove"],keyboardMove:["type",_a]},Ea=/^djs-cursor-.*$/;function ka(e){var t=ne(document.body);t.removeMatching(Ea),e&&t.add("djs-cursor-"+e)}function Sa(){ka(null)}var Ca=5e3;function Pa(e,t){function n(){return!1}return t=t||"element.click",e.once(t,Ca,n),function(){e.off(t,n)}}function $a(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function Aa(e,t){return{x:e.x-t.x,y:e.y-t.y}}var Ra=15;function Ta(e,t){var n;function i(i){var r,o=n.start,s=n.button,a=os(i),l=Aa(a,o);(!n.dragging&&(r=l,Math.sqrt(Math.pow(r.x,2)+Math.pow(r.y,2))>Ra)&&(n.dragging=!0,0===s&&Pa(e),ka("grab")),n.dragging)&&(l=Aa(a,n.last||n.start),t.scroll({dx:l.x,dy:l.y}),n.last=a);i.preventDefault()}function r(e){fe.unbind(document,"mousemove",i),fe.unbind(document,"mouseup",r),n=null,Sa()}e.on("element.mousedown",500,(function(e){return function(e){if(se(e.target,".djs-draggable"))return;var t=e.button;if(t>=2||e.ctrlKey||e.shiftKey||e.altKey)return;return n={button:t,start:os(e)},fe.bind(document,"mousemove",i),fe.bind(document,"mouseup",r),!0}(e.originalEvent)})),this.isActive=function(){return!!n}}Ta.$inject=["eventBus","canvas"];var Ma={__init__:["moveCanvas"],moveCanvas:["type",Ta]};function Da(e){return Math.log(e)/Math.log(10)}function Ba(e,t){var n=Da(e.min),i=Da(e.max);return(Math.abs(n)+Math.abs(i))/t}var La=Math.sign||function(e){return e>=0?1:-1},Na={min:.2,max:4},ja=.75;function za(e,t,n){e=e||{},this._enabled=!1,this._canvas=n,this._container=n._container,this._handleWheel=z(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||ja;var i=this;t.on("canvas.init",(function(t){i._init(!1!==e.enabled)}))}za.$inject=["config.zoomScroll","eventBus","canvas"],za.prototype.scroll=function(e){this._canvas.scroll(e)},za.prototype.reset=function(){this._canvas.zoom("fit-viewport")},za.prototype.zoom=function(e,t){var n=Ba(Na,20);this._totalDelta+=e,Math.abs(this._totalDelta)>.1&&(this._zoom(e,t,n),this._totalDelta=0)},za.prototype._handleWheel=function(e){if(!se(e.target,".djs-scrollable",!0)){var t=this._container;e.preventDefault();var n,i=e.ctrlKey,r=e.shiftKey,o=-1*this._scale;if(o*=i?0===e.deltaMode?.02:.32:0===e.deltaMode?1:16,i){var s=t.getBoundingClientRect(),a={x:e.clientX-s.left,y:e.clientY-s.top};n=Math.sqrt(Math.pow(e.deltaY,2)+Math.pow(e.deltaX,2))*La(e.deltaY)*o,this.zoom(n,a)}else n=r?{dx:o*e.deltaY,dy:0}:{dx:o*e.deltaX,dy:o*e.deltaY},this.scroll(n)}},za.prototype.stepZoom=function(e,t){var n=Ba(Na,10);this._zoom(e,t,n)},za.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=Da(i.zoom()),s=Math.round(o/n)*n;s+=n*r;var a,l,c=Math.pow(10,s);i.zoom((a=Na,l=c,Math.max(a.min,Math.min(a.max,l))),t)},za.prototype.toggle=function(e){var t=this._container,n=this._handleWheel,i=this._enabled;return void 0===e&&(e=!i),i!==e&&fe[e?"bind":"unbind"](t,"wheel",n,!1),this._enabled=e,e},za.prototype._init=function(e){this.toggle(e)};var Ia={__init__:["zoomScroll"],zoomScroll:["type",za]};function Xa(e){oa.call(this,e)}e(Xa,oa),Xa.prototype._navigationModules=[Oa,Ma,Ia],Xa.prototype._modules=[].concat(oa.prototype._modules,Xa.prototype._navigationModules);var Qa={exports:{}};
2
2
  /*! Hammer.JS - v2.0.7 - 2016-04-22
3
3
  * http://hammerjs.github.io/
4
4
  *