UNPKG

474 kBJavaScriptView Raw
1/*! bpmn-js - bpmn-modeler v7.2.1 | Copyright (c) 2014-present, camunda Services GmbH | bpmn.io/license */
2!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).BpmnJS=t()}(this,function(){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function t(e,t){return e(t={exports:{}},t.exports),t.exports}var n=t(function(e){"function"==typeof Object.create?e.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}});var i=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),a="";for(r=0;r<Math.floor(i);r++){a=Math.floor(Math.random()*n).toString(n)+a}if(o){var s=Math.pow(n,o);a=Math.floor(Math.random()*s).toString(n)+a}var c=parseInt(a,n);return c!==1/0&&c>=Math.pow(2,e)?t(e,n):a};t.rack=function(e,n,i){var r=function(r){var a=0;do{if(a++>10){if(!i)throw new Error("too many ID collisions, use more bits");e+=i}var s=t(e,n)}while(Object.hasOwnProperty.call(o,s));return o[s]=r,s},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 r(e){if(!(this instanceof r))return new r(e);e=e||[128,36,1],this._seed=e.length?i.rack(e[0],e[1],e[2]):e}function o(e){return Array.prototype.concat.apply([],e)}r.prototype.next=function(e){return this._seed(e||!0)},r.prototype.nextPrefixed=function(e,t){var n;do{n=e+this.next(!0)}while(this.assigned(n));return this.claim(n,t),n},r.prototype.claim=function(e,t){this._seed.set(e,t||!0)},r.prototype.assigned=function(e){return this._seed.get(e)||!1},r.prototype.unclaim=function(e){delete this._seed.hats[e]},r.prototype.clear=function(){var e,t=this._seed.hats;for(e in t)this.unclaim(e)};var a=Object.prototype.toString,s=Object.prototype.hasOwnProperty;function c(e){return void 0===e}function p(e){return void 0!==e}function u(e){return null==e}function l(e){return"[object Array]"===a.call(e)}function h(e){return"[object Object]"===a.call(e)}function d(e){return"[object Number]"===a.call(e)}function f(e){var t=a.call(e);return"[object Function]"===t||"[object AsyncFunction]"===t||"[object GeneratorFunction]"===t||"[object AsyncGeneratorFunction]"===t||"[object Proxy]"===t}function m(e){return"[object String]"===a.call(e)}function v(e,t){return s.call(e,t)}function y(e,t){var n;return t=N(t),b(e,function(e,i){if(t(e,i))return n=e,!1}),n}function g(e,t){var n=[];return b(e,function(e,i){t(e,i)&&n.push(e)}),n}function b(e,t){var n;if(!c(e)){var i=l(e)?j:O;for(var r in e)if(v(e,r)&&!1===t(n=e[r],i(r)))return n}}function x(e,t){return c(e)?[]:(function(e){if(!l(e))throw new Error("must supply array")}(e),t=N(t),e.filter(function(e,n){return!t(e,n)}))}function E(e,t,n){return b(e,function(e,i){n=t(n,e,i)}),n}function _(e,t){return!!E(e,function(e,n,i){return e&&t(n,i)},!0)}function w(e,t){return!!y(e,t)}function S(e,t){var n=[];return b(e,function(e,i){n.push(t(e,i))}),n}function C(e){return e&&Object.keys(e)||[]}function T(e){return C(e).length}function R(e){return S(e,function(e){return e})}function A(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t=B(t),b(e,function(e){var i=t(e)||"_",r=n[i];r||(r=n[i]=[]),r.push(e)}),n}function P(e){e=B(e);for(var t={},n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return b(i,function(n){return A(n,e,t)}),S(t,function(e,t){return e[0]})}var k=P;function M(e,t){t=B(t);var n=[];return b(e,function(e,i){for(var r=t(e,i),o={d:r,v:e},a=0;a<n.length;a++){if(r<n[a].d)return void n.splice(a,0,o)}n.push(o)}),S(n,function(e){return e.v})}function D(e){return function(t){return _(e,function(e,n){return t[n]===e})}}function B(e){return f(e)?e:function(t){return t[e]}}function N(e){return f(e)?e:function(t){return t===e}}function O(e){return e}function j(e){return Number(e)}function L(e,t){var n,i,r,o;function a(){var a=Date.now(),c=o+t-a;if(c>0)return s(c);e.apply(r,i),n=o=i=r=void 0}function s(e){n=setTimeout(a,e)}return function(){o=Date.now();for(var e=arguments.length,a=new Array(e),c=0;c<e;c++)a[c]=arguments[c];i=a,r=this,n||s(t)}}function I(e,t){return e.bind(t)}function z(){return(z=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}function F(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return z.apply(void 0,[e].concat(n))}function $(e,t){var n={},i=Object(e);return b(t,function(t){t in i&&(n[t]=e[t])}),n}function H(e,t){var n={};return b(Object(e),function(e,i){-1===t.indexOf(i)&&(n[i]=e)}),n}function G(e,t,n){return 2==arguments.length?e.getAttribute(t):null===n?e.removeAttribute(t):(e.setAttribute(t,n),e)}var W=[].indexOf,V=function(e,t){if(W)return e.indexOf(t);for(var n=0;n<e.length;++n)if(e[n]===t)return n;return-1},U=/\s+/,q=Object.prototype.toString;function K(e){return new Y(e)}function Y(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function X(e){for(var t;e.childNodes.length;)t=e.childNodes[0],e.removeChild(t);return e}Y.prototype.add=function(e){if(this.list)return this.list.add(e),this;var t=this.array();return~V(t,e)||t.push(e),this.el.className=t.join(" "),this},Y.prototype.remove=function(e){if("[object RegExp]"==q.call(e))return this.removeMatching(e);if(this.list)return this.list.remove(e),this;var t=this.array(),n=V(t,e);return~n&&t.splice(n,1),this.el.className=t.join(" "),this},Y.prototype.removeMatching=function(e){for(var t=this.array(),n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},Y.prototype.toggle=function(e,t){return this.list?(void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this):(void 0!==t?t?this.add(e):this.remove(e):this.has(e)?this.remove(e):this.add(e),this)},Y.prototype.array=function(){var e=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(U);return""===e[0]&&e.shift(),e},Y.prototype.has=Y.prototype.contains=function(e){return this.list?this.list.contains(e):!!~V(this.array(),e)};var Z="undefined"!=typeof Element?Element.prototype:{},Q=Z.matches||Z.matchesSelector||Z.webkitMatchesSelector||Z.mozMatchesSelector||Z.msMatchesSelector||Z.oMatchesSelector,J=function(e,t){if(!e||1!==e.nodeType)return!1;if(Q)return Q.call(e,t);for(var n=e.parentNode.querySelectorAll(t),i=0;i<n.length;i++)if(n[i]==e)return!0;return!1};function ee(e,t,n){for(var i=n?e:e.parentNode;i&&i.nodeType!==document.DOCUMENT_NODE&&i.nodeType!==document.DOCUMENT_FRAGMENT_NODE;){if(J(i,t))return i;i=i.parentNode}return J(i,t)?i:null}var te=Element.prototype,ne=te.matchesSelector||te.webkitMatchesSelector||te.mozMatchesSelector||te.msMatchesSelector||te.oMatchesSelector,ie=function(e,t){if(ne)return ne.call(e,t);for(var n=e.parentNode.querySelectorAll(t),i=0;i<n.length;++i)if(n[i]==e)return!0;return!1};var re,oe=window.addEventListener?"addEventListener":"attachEvent",ae=window.removeEventListener?"removeEventListener":"detachEvent",se="addEventListener"!==oe?"on":"",ce={bind:function(e,t,n,i){return e[oe](se+t,n,i||!1),n},unbind:function(e,t,n,i){return e[ae](se+t,n,i||!1),n}},pe=["focus","blur"],ue={bind:function(e,t,n,i,r){return-1!==pe.indexOf(n)&&(r=!0),ce.bind(e,n,function(n){var r=n.target||n.srcElement;n.delegateTarget=function(e,t,n){for(var i=n?e:e.parentNode;i&&i!==document;){if(ie(i,t))return i;i=i.parentNode}}(r,t,!0),n.delegateTarget&&i.call(e,n)},r)},unbind:function(e,t,n,i){-1!==pe.indexOf(t)&&(i=!0),ce.unbind(e,t,n,i)}},le=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){var r=t.createElement("html");return r.innerHTML=e,r.removeChild(r.lastChild)}var o=de[i]||de._default,a=o[0],s=o[1],c=o[2];(r=t.createElement("div")).innerHTML=s+e+c;for(;a--;)r=r.lastChild;if(r.firstChild==r.lastChild)return r.removeChild(r.firstChild);var p=t.createDocumentFragment();for(;r.firstChild;)p.appendChild(r.removeChild(r.firstChild));return p},he=!1;"undefined"!=typeof document&&((re=document.createElement("div")).innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',he=!re.getElementsByTagName("link").length,re=void 0);var de={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:he?[1,"X<div>","</div>"]:[0,"",""]};function fe(e,t){return(t=t||document).querySelector(e)}function me(e,t){return(t=t||document).querySelectorAll(e)}function ve(e){e.parentNode&&e.parentNode.removeChild(e)}function ye(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 ge(e,t){return ye(t,e),e}de.td=de.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],de.option=de.optgroup=[1,'<select multiple="multiple">',"</select>"],de.thead=de.tbody=de.colgroup=de.caption=de.tfoot=[1,"<table>","</table>"],de.polyline=de.ellipse=de.polygon=de.circle=de.text=de.line=de.path=de.rect=de.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];var be=2,xe={"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":be,"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":be,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function Ee(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=xe[i];r?(r===be&&"number"==typeof n&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function _e(e,t,n){if("string"==typeof t){if(void 0===n)return function(e,t){return xe[t]?e.style[t]:e.getAttributeNS(null,t)}(e,t);Ee(e,t,n)}else!function(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)Ee(e,i,t[i])}(e,t);return e}function we(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0;n<e.length;++n)if(e[n]===t)return n;return-1}var Se=/\s+/,Ce=Object.prototype.toString;function Te(e){return void 0!==e}function Re(e){return new Ae(e)}function Ae(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function Pe(e){var t=e.parentNode;return t&&t.removeChild(e),e}function ke(e){for(var t;t=e.firstChild;)Pe(t);return e}function Me(e){return e.cloneNode(!0)}Ae.prototype.add=function(e){if(this.list)return this.list.add(e),this;var t=this.array();return~we(t,e)||t.push(e),Te(this.el.className.baseVal)?this.el.className.baseVal=t.join(" "):this.el.className=t.join(" "),this},Ae.prototype.remove=function(e){if("[object RegExp]"===Ce.call(e))return this.removeMatching(e);if(this.list)return this.list.remove(e),this;var t=this.array(),n=we(t,e);return~n&&t.splice(n,1),this.el.className.baseVal=t.join(" "),this},Ae.prototype.removeMatching=function(e){for(var t=this.array(),n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},Ae.prototype.toggle=function(e,t){return this.list?(Te(t)?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this):(Te(t)?t?this.add(e):this.remove(e):this.has(e)?this.remove(e):this.add(e),this)},Ae.prototype.array=function(){var e=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(Se);return""===e[0]&&e.shift(),e},Ae.prototype.has=Ae.prototype.contains=function(e){return this.list?this.list.contains(e):!!~we(this.array(),e)};var De={svg:"http://www.w3.org/2000/svg"},Be='<svg xmlns="'+De.svg+'"';function Ne(e){var t=!1;"<svg"===e.substring(0,4)?-1===e.indexOf(De.svg)&&(e=Be+e.substring(4)):(e=Be+">"+e+"</svg>",t=!0);var n=function(e){var t;return(t=new DOMParser).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 Oe(e,t){var n;return"<"===e.charAt(0)?(n=Ne(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(De.svg,e),t&&_e(n,t),n}var je=Oe("svg");function Le(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function Ie(e){return e?je.createSVGTransformFromMatrix(e):je.createSVGTransform()}var ze=/([&<>]{1})/g,Fe=/([\n\r"]{1})/g,$e={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"'"};function He(e,t){return e.replace(t,function(e,t){return $e[t]||t})}function Ge(e,t){var n,i,r,o,a;switch(e.nodeType){case 3:t.push(He(e.textContent,ze));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,'="',He(o.value,Fe),'"');if(e.hasChildNodes()){for(t.push(">"),n=0,i=(a=e.childNodes).length;n<i;++n)Ge(a.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("\x3c!--",He(e.nodeValue,ze),"--\x3e");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function We(e,t){var n=Ne(t);if(ke(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++)ye(r[o],e)}}function Ve(e,t){if(void 0!==t){try{We(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 Ue(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function qe(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(Ue(e,i))}(n,t)),n.consolidate()}var Ke=/^class /;function Ye(e){return"[object Array]"===Object.prototype.toString.call(e)}function Xe(){var e=Array.prototype.slice.call(arguments);1===e.length&&Ye(e[0])&&(e=e[0]);var t=e.pop();return t.$inject=e,t}var Ze=/constructor\s*[^(]*\(\s*([^)]*)\)/m,Qe=/^function\s*[^(]*\(\s*([^)]*)\)/m,Je=/\/\*([^*]*)\*\//m;function et(e){if("function"!=typeof e)throw new Error('Cannot annotate "'+e+'". Expected a function!');var t=e.toString().match(function(e){return Ke.test(e.toString())}(e)?Ze:Qe);return t&&t[1]&&t[1].split(",").map(function(e){return(t=e.match(Je))?t[1].trim():e.trim()})||[]}var tt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function nt(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}function it(e,t){t=t||{get:function(e,t){if(n.push(e),!1===t)return null;throw a('No provider for "'+e+'"!')}};var n=[],i=this._providers=Object.create(t._providers||null),r=this._instances=Object.create(null),o=r.injector=this,a=function(e){var t=n.join(" -> ");return n.length=0,new Error(t?e+" (Resolving: "+t+")":e)},s=function e(o,s){if(!i[o]&&-1!==o.indexOf(".")){for(var c=o.split("."),p=e(c.shift());c.length;)p=p[c.shift()];return p}if(rt(r,o))return r[o];if(rt(i,o)){if(-1!==n.indexOf(o))throw n.push(o),a("Cannot resolve circular dependency!");return n.push(o),r[o]=i[o][0](i[o][1]),n.pop(),r[o]}return t.get(o,s)},c=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("function"!=typeof e){if(!Ye(e))throw new Error('Cannot invoke "'+e+'". Expected a function!');e=Xe(e.slice())}var n=e.$inject||et(e),i=n.map(function(e){return rt(t,e)?t[e]:s(e)});return{fn:e,dependencies:i}},p=function(e){var t=c(e),n=t.dependencies,i=t.fn;return new(Function.prototype.bind.apply(i,[null].concat(nt(n))))},u=function(e,t,n){var i=c(e,n),r=i.dependencies,o=i.fn;return o.call.apply(o,[t].concat(nt(r)))},l=function(e){return Xe(function(t){return e.get(t)})},h={factory:u,type:p,value:function(e){return e}};e.forEach(function(e){function t(e,t){return"value"!==e&&Ye(t)&&(t=Xe(t.slice())),t}if(e instanceof function(){var e=[];this.factory=function(t,n){return e.push([t,"factory",n]),this},this.value=function(t,n){return e.push([t,"value",n]),this},this.type=function(t,n){return e.push([t,"type",n]),this},this.forEach=function(t){e.forEach(t)}})e.forEach(function(e){var n=e[0],r=e[1],o=e[2];i[n]=[h[r],t(r,o),r]});else if("object"===(void 0===e?"undefined":tt(e)))if(e.__exports__){var n=Object.keys(e).reduce(function(t,n){return"__"!==n.substring(0,2)&&(t[n]=e[n]),t},Object.create(null)),r=new it((e.__modules__||[]).concat([n]),o),a=Xe(function(e){return r.get(e)});e.__exports__.forEach(function(e){i[e]=[a,e,"private",r]})}else Object.keys(e).forEach(function(n){if("private"!==e[n][2]){var r=e[n][0],o=e[n][1];i[n]=[h[r],t(r,o),r]}else i[n]=e[n]})}),this.get=s,this.invoke=u,this.instantiate=p,this.createChild=function(e,t){if(t&&t.length){var n,r,a,s,c=Object.create(null),p=Object.create(null),u=[],h=[],d=[];for(var f in i)n=i[f],-1!==t.indexOf(f)&&("private"===n[2]?-1===(r=u.indexOf(n[3]))?(a=n[3].createChild([],t),s=l(a),u.push(n[3]),h.push(a),d.push(s),c[f]=[s,f,"private",a]):c[f]=[d[r],f,"private",h[r]]:c[f]=[n[2],n[1]],p[f]=!0),"factory"!==n[2]&&"type"!==n[2]||!n[1].$scope||t.forEach(function(e){-1!==n[1].$scope.indexOf(e)&&(c[f]=[n[2],n[1]],p[e]=!0)});t.forEach(function(e){if(!p[e])throw new Error('No provider for "'+e+'". Cannot use provider from the parent!')}),e.unshift(c)}return new it(e,o)}}function rt(e,t){return Object.hasOwnProperty.call(e,t)}var ot=1e3;function at(e,t){var n=this;t=t||ot,e.on(["render.shape","render.connection"],t,function(e,t){var i=e.type,r=t.element,o=t.gfx;if(n.canRender(r))return"render.shape"===i?n.drawShape(o,r):n.drawConnection(o,r)}),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 st(e){return e.join(",").replace(/,?([A-z]),?/g,"$1")}function ct(e){for(var t,n="",i=0;t=e[i];i++)n+=t.x+","+t.y+" ";return n}function pt(e,t){var n=Oe("polyline");return _e(n,{points:ct(e)}),t&&_e(n,t),n}function ut(e){return g(e,function(t){return!y(e,function(e){return e!==t&&function e(t,n){if(!n)return;if(t===n)return n;if(!t.parent)return;return e(t.parent,n)}(t,e)})})}function lt(e,t,n){var i=!n||-1===e.indexOf(t);return i&&e.push(t),i}function ht(e,t,n){n=n||0,l(e)||(e=[e]),b(e,function(e,i){var r=t(e,i,n);l(r)&&r.length&&ht(r,t,n+1)})}function dt(e,t){return function(e,t,n){var i=[],r=[];return ht(e,function(e,o,a){lt(i,e,t);var s=e.children;if((-1===n||a<n)&&s&&lt(r,s,t))return s}),i}(e,!t,-1)}function ft(e,t){var n,i,r,o;return t=!!t,l(e)||(e=[e]),b(e,function(e){var a=e;e.waypoints&&!t&&(a=ft(e.waypoints,!0));var s=a.x,c=a.y,p=a.height||0,u=a.width||0;(s<n||void 0===n)&&(n=s),(c<i||void 0===i)&&(i=c),(s+u>r||void 0===r)&&(r=s+u),(c+p>o||void 0===o)&&(o=c+p)}),{x:n,y:i,height:o-i,width:r-n}}function mt(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function vt(e){return!(!e||!e.isFrame)}function yt(e,t){return F({},e||{},t||{})}at.prototype.canRender=function(){},at.prototype.drawShape=function(){},at.prototype.drawConnection=function(){},at.prototype.getShapePath=function(){},at.prototype.getConnectionPath=function(){};var gt=1;function bt(e,t){at.call(this,e,gt),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})}n(bt,at),bt.prototype.canRender=function(){return!0},bt.prototype.drawShape=function(e,t){var n=Oe("rect");return _e(n,{x:0,y:0,width:t.width||0,height:t.height||0}),vt(t)?_e(n,this.FRAME_STYLE):_e(n,this.SHAPE_STYLE),ge(e,n),n},bt.prototype.drawConnection=function(e,t){var n=pt(t.waypoints,this.CONNECTION_STYLE);return ge(e,n),n},bt.prototype.getShapePath=function(e){var t=e.x,n=e.y,i=e.width;return st([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])},bt.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 st(r)},bt.$inject=["eventBus","styles"];var xt={__init__:["defaultRenderer"],defaultRenderer:["type",bt],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 F(this.style(t,n),{class:e})},this.style=function(t,n){l(t)||n||(n=t,t=[]);var i=E(t,function(t,n){return F(t,e[n]||{})},{});return n?F(i,n):i},this.computeStyle=function(e,n,i){return l(n)||(i=n,n=[]),t.style(n||[],F({},i,e||{}))}}]};function Et(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return-1!==n&&e.splice(n,1),n}function _t(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 wt(e,t){return e&&t?e.indexOf(t):-1}function St(e,t){return Math.round(e*t)/t}function Ct(e){return d(e)?e+"px":e}function Tt(e,t,n){var i=Oe("g");Re(i).add(t);var r=void 0!==n?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}var Rt={shape:["x","y","width","height"],connection:["waypoints"]};function At(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._init(e||{})}function Pt(e,t){var n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}At.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],At.prototype._init=function(e){var t=this._eventBus,n=this._container=function(e){var t=(e=F({},{width:"100%",height:"100%"},e)).container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container"),F(n.style,{position:"relative",overflow:"hidden",width:Ct(e.width),height:Ct(e.height)}),t.appendChild(n),n}(e),i=this._svg=Oe("svg");_e(i,{width:"100%",height:"100%"}),ge(n,i);var r=this._viewport=Tt(i,"viewport");this._layers={},!1!==e.deferUpdate&&(this._viewboxChanged=L(I(this._viewboxChanged,this),300)),t.on("diagram.init",function(){t.fire("canvas.init",{svg:i,viewport:r})},this),t.on(["shape.added","connection.added","shape.removed","connection.removed","elements.changed"],function(){delete this._cachedViewbox},this),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},At.prototype._destroy=function(e){this._eventBus.fire("canvas.destroy",{svg:this._svg,viewport:this._viewport});var t=this._container.parentNode;t&&t.removeChild(this._container),delete this._svg,delete this._container,delete this._layers,delete this._rootElement,delete this._viewport},At.prototype._clear=function(){var e=this;this._elementRegistry.getAll().forEach(function(t){var n=mt(t);"root"===n?e.setRootElement(null,!0):e._removeElement(t,n)}),delete this._cachedViewbox},At.prototype.getDefaultLayer=function(){return this.getLayer("base",0)},At.prototype.getLayer=function(e,t){if(!e)throw new Error("must specify a name");var 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},At.prototype._createLayer=function(e,t){t||(t=0);var n=E(this._layers,function(e,n){return t>=n.index&&e++,e},0);return{group:Tt(this._viewport,"layer-"+e,n),index:t}},At.prototype.getContainer=function(){return this._container},At.prototype._updateMarker=function(e,t,n){var i;e.id||(e=this._elementRegistry.get(e)),(i=this._elementRegistry._elements[e.id])&&(b([i.gfx,i.secondaryGfx],function(e){e&&(n?Re(e).add(t):Re(e).remove(t))}),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},At.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},At.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},At.prototype.hasMarker=function(e,t){return e.id||(e=this._elementRegistry.get(e)),Re(this.getGraphics(e)).has(t)},At.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},At.prototype.getRootElement=function(){return this._rootElement||this.setRootElement({id:"__implicitroot",children:[]}),this._rootElement},At.prototype.setRootElement=function(e,t){e&&this._ensureValid("root",e);var n=this._rootElement,i=this._elementRegistry,r=this._eventBus;if(n){if(!t)throw new Error("rootElement already set, need to specify override");r.fire("root.remove",{element:n}),r.fire("root.removed",{element:n}),i.remove(n)}if(e){var o=this.getDefaultLayer();r.fire("root.add",{element:e}),i.add(e,o,this._svg),r.fire("root.added",{element:e,gfx:o})}return this._rootElement=e,e},At.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 with id "+t.id+" already exists");var n=Rt[e];if(!_(n,function(e){return void 0!==t[e]}))throw new Error("must supply { "+n.join(", ")+" } with "+e)},At.prototype._setParent=function(e,t,n){_t(t.children,e,n),e.parent=t},At.prototype._addElement=function(e,t,n,i){n=n||this.getRootElement();var r=this._eventBus,o=this._graphicsFactory;this._ensureValid(e,t),r.fire(e+".add",{element:t,parent:n}),this._setParent(t,n,i);var a=o.create(e,t,i);return this._elementRegistry.add(t,a),o.update(e,t,a),r.fire(e+".added",{element:t,gfx:a}),t},At.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},At.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},At.prototype._removeElement=function(e,t){var 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),Et(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},At.prototype.removeShape=function(e){return this._removeElement(e,"shape")},At.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},At.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},At.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},At.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},At.prototype.viewbox=function(e){if(void 0===e&&this._cachedViewbox)return this._cachedViewbox;var t,n,i,r,o,a,s=this._viewport,c=this.getSize();return e?(this._changeViewbox(function(){r=Math.min(c.width/e.width,c.height/e.height);var t=this._svg.createSVGMatrix().scale(r).translate(-e.x,-e.y);qe(s,t)}),e):(t=this.getDefaultLayer().getBBox(),n=(i=qe(s))?i.matrix:function(e,t,n,i,r,o){var a=je.createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return Le(a,e);case 6:return Le(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}(),r=St(n.a,1e3),o=St(-n.e||0,1e3),a=St(-n.f||0,1e3),e=this._cachedViewbox={x:o?o/r:0,y:a?a/r:0,width:c.width/r,height:c.height/r,scale:r,inner:{width:t.width,height:t.height,x:t.x,y:t.y},outer:c})},At.prototype.scroll=function(e){var t=this._viewport,n=t.getCTM();return e&&this._changeViewbox(function(){e=F({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),Pt(t,n)}),{x:n.e,y:n.f}},At.prototype.zoom=function(e,t){return e?"fit-viewport"===e?this._fitViewport(t):(this._changeViewbox(function(){"object"!=typeof t&&(n=this.viewbox().outer,t={x:n.width/2,y:n.height/2}),i=this._setZoom(e,t)}),St(i.a,1e3)):this.viewbox(e).scale;var n,i},At.prototype._fitViewport=function(e){var t,n,i=this.viewbox(),r=i.outer,o=i.inner;return o.x>=0&&o.y>=0&&o.x+o.width<=r.width&&o.y+o.height<=r.height&&!e?n={x:0,y:0,width:Math.max(o.width+o.x,r.width),height:Math.max(o.height+o.y,r.height)}:(t=Math.min(1,r.width/o.width,r.height/o.height),n={x:o.x+(e?o.width/2-r.width/t/2:0),y:o.y+(e?o.height/2-r.height/t/2:0),width:r.width/t,height:r.height/t}),this.viewbox(n),this.viewbox(!1).scale},At.prototype._setZoom=function(e,t){var n,i,r,o,a=this._svg,s=this._viewport,c=a.createSVGMatrix(),p=a.createSVGPoint(),u=(i=s.getCTM()).a;return t?(n=F(p,t).matrixTransform(i.inverse()),r=c.translate(n.x,n.y).scale(1/u*e).translate(-n.x,-n.y),o=i.multiply(r)):o=c.scale(e),Pt(this._viewport,o),o},At.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},At.prototype.getAbsoluteBBox=function(e){var t,n=this.viewbox();e.waypoints?t=this.getGraphics(e).getBBox():t=e;return{x:t.x*n.scale-n.x*n.scale,y:t.y*n.scale-n.y*n.scale,width:t.width*n.scale,height:t.height*n.scale}},At.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var kt="data-element-id";function Mt(e){this._elements={},this._eventBus=e}Mt.$inject=["eventBus"],Mt.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),_e(t,kt,i),n&&_e(n,kt,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},Mt.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(_e(i.gfx,kt,""),i.secondaryGfx&&_e(i.secondaryGfx,kt,""),delete t[n])},Mt.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)},Mt.prototype.get=function(e){var t;t="string"==typeof e?e:e&&_e(e,kt);var n=this._elements[t];return n&&n.element},Mt.prototype.filter=function(e){var t=[];return this.forEach(function(n,i){e(n,i)&&t.push(n)}),t},Mt.prototype.getAll=function(){return this.filter(function(e){return e})},Mt.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)})},Mt.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},Mt.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 Dt={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},isExtended:function(e){return!0===e.__refs_collection}};function Bt(e,t,n){var i=Dt.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 Nt(e,t){if(!(this instanceof Nt))return new Nt(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Nt.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?Bt(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)},Nt.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return Dt.isExtended(n)||Bt(this,t,e),n},Nt.prototype.ensureBound=function(e,t){(function(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)})(e,t)||this.bind(e,t)},Nt.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Nt.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Ot=Nt,jt=Dt;Ot.Collection=jt;var Lt=new Ot({name:"children",enumerable:!0,collection:!0},{name:"parent"}),It=new Ot({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),zt=new Ot({name:"attachers",collection:!0},{name:"host"}),Ft=new Ot({name:"outgoing",collection:!0},{name:"source"}),$t=new Ot({name:"incoming",collection:!0},{name:"target"});function Ht(){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)}}),Lt.bind(this,"parent"),It.bind(this,"labels"),Ft.bind(this,"outgoing"),$t.bind(this,"incoming")}function Gt(){Ht.call(this),Lt.bind(this,"children"),zt.bind(this,"host"),zt.bind(this,"attachers")}function Wt(){Gt.call(this)}function Vt(){Gt.call(this),It.bind(this,"labelTarget")}function Ut(){Ht.call(this),Ft.bind(this,"source"),$t.bind(this,"target")}n(Gt,Ht),n(Wt,Gt),n(Vt,Gt),n(Ut,Ht);var qt={connection:Ut,shape:Gt,label:Vt,root:Wt};function Kt(){this._uid=12}Kt.prototype.createRoot=function(e){return this.create("root",e)},Kt.prototype.createLabel=function(e){return this.create("label",e)},Kt.prototype.createShape=function(e){return this.create("shape",e)},Kt.prototype.createConnection=function(e){return this.create("connection",e)},Kt.prototype.create=function(e,t){return(t=F({},t||{})).id||(t.id=e+"_"+this._uid++),function(e,t){var n=qt[e];if(!n)throw new Error("unknown type: <"+e+">");return F(new n,t)}(e,t)};var Yt=Array.prototype.slice;function Xt(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function Zt(){}function Qt(e){return e.childNodes[0]}function Jt(e,t,n,i,r){var o=Ie();o.setTranslate(t,n);var a=Ie();a.setRotate(i||0,0,0);var s=Ie();s.setScale(r||1,r||1),qe(e,[o,a,s])}function en(e,t,n){var i=Ie();i.setTranslate(t,n),qe(e,i)}function tn(e,t){var n=Ie();n.setRotate(t,0,0),qe(e,n)}function nn(e,t){this._eventBus=e,this._elementRegistry=t}function rn(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}Xt.prototype.on=function(e,t,n,i){if(e=l(e)?e:[e],f(t)&&(i=n,n=t,t=1e3),!d(t))throw new Error("priority must be a number");var r=n;i&&((r=I(n,i)).__fn=n.__fn||n);var o=this;e.forEach(function(e){o._addListener(e,{priority:t,callback:r,next:null})})},Xt.prototype.once=function(e,t,n,i){var r=this;if(f(t)&&(i=n,n=t,t=1e3),!d(t))throw new Error("priority must be a number");function o(){var t=n.apply(i,arguments);return r.off(e,o),t}o.__fn=n,this.on(e,t,o)},Xt.prototype.off=function(e,t){e=l(e)?e:[e];var n=this;e.forEach(function(e){n._removeListener(e,t)})},Xt.prototype.createEvent=function(e){var t=new Zt;return t.init(e),t},Xt.prototype.fire=function(e,t){var n,i,r,o;if(o=Yt.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 Zt?t:this.createEvent(t),o[0]=n;var a=n.type;e!==a&&(n.type=e);try{r=this._invokeListeners(n,o,i)}finally{e!==a&&(n.type=a)}return void 0===r&&n.defaultPrevented&&(r=!1),r}},Xt.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},Xt.prototype._destroy=function(){this._listeners={}},Xt.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},Xt.prototype._invokeListener=function(e,t,n){var i;try{void 0!==(i=function(e,t){return e.apply(null,t)}(n.callback,t))&&(e.returnValue=i,e.stopPropagation()),!1===i&&e.preventDefault()}catch(e){if(!this.handleError(e))throw console.error("unhandled error in event listener"),console.error(e.stack),e}return i},Xt.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)},Xt.prototype._getListeners=function(e){return this._listeners[e]},Xt.prototype._setListeners=function(e,t){this._listeners[e]=t},Xt.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.__fn!==t||(i?i.next=n:this._setListeners(e,n)),i=o,o=n;else this._setListeners(e,null)},Zt.prototype.stopPropagation=function(){this.cancelBubble=!0},Zt.prototype.preventDefault=function(){this.defaultPrevented=!0},Zt.prototype.init=function(e){F(this,e||{})},nn.$inject=["eventBus","elementRegistry"],nn.prototype._getChildrenContainer=function(e){var t,n=this._elementRegistry.getGraphics(e);return e.parent?(t=function(e){return e.parentNode.childNodes[1]}(n))||(Re(t=Oe("g")).add("djs-children"),ge(n.parentNode,t)):t=n,t},nn.prototype._clear=function(e){var t=Qt(e);return X(t),t},nn.prototype._createContainer=function(e,t,n,i){var r=Oe("g");Re(r).add("djs-group"),void 0!==n?rn(r,t,t.childNodes[n]):ge(t,r);var o=Oe("g");Re(o).add("djs-element"),Re(o).add("djs-"+e),i&&Re(o).add("djs-frame"),ge(r,o);var a=Oe("g");return Re(a).add("djs-visual"),ge(o,a),o},nn.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,vt(t))},nn.prototype.updateContainments=function(e){var t=this,n=this._elementRegistry;b(E(e,function(e,t){return t.parent&&(e[t.parent.id]=t.parent),e},{}),function(e){var i=e.children;if(i){var r=t._getChildrenContainer(e);b(i.slice().reverse(),function(e){rn(n.getGraphics(e).parentNode,r)})}})},nn.prototype.drawShape=function(e,t){return this._eventBus.fire("render.shape",{gfx:e,element:t})},nn.prototype.getShapePath=function(e){return this._eventBus.fire("render.getShapePath",e)},nn.prototype.drawConnection=function(e,t){return this._eventBus.fire("render.connection",{gfx:e,element:t})},nn.prototype.getConnectionPath=function(e){return this._eventBus.fire("render.getConnectionPath",e)},nn.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if("shape"===e)this.drawShape(i,t),en(n,t.x,t.y);else{if("connection"!==e)throw new Error("unknown type: "+e);this.drawConnection(i,t)}t.hidden?_e(n,"display","none"):_e(n,"display","block")}},nn.prototype.remove=function(e){Pe(this._elementRegistry.getGraphics(e).parentNode)};var on={__depends__:[xt],__init__:["canvas"],canvas:["type",At],elementRegistry:["type",Mt],elementFactory:["type",Kt],eventBus:["type",Xt],graphicsFactory:["type",nn]};function an(e){var t=[],n=[];function i(e){return t.indexOf(e)>=0}e.forEach(function e(r){i(r)||((r.__depends__||[]).forEach(e),i(r)||(function(e){t.push(e)}(r),(r.__init__||[]).forEach(function(e){n.push(e)})))});var r=new it(t);return n.forEach(function(e){try{r["string"==typeof e?"get":"invoke"](e)}catch(e){throw console.error("Failed to instantiate component"),console.error(e.stack),e}}),r}function sn(e,t){this.injector=t=t||function(e){return an([{config:["value",e=e||{}]},on].concat(e.modules||[]))}(e),this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("diagram.init")}function cn(){}function pn(e,t){this.model=e,this.properties=t}sn.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},sn.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")},cn.prototype.get=function(e){return this.$model.properties.get(this,e)},cn.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},pn.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(cn.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,I(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 un={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},ln={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e,10)}};function hn(e,t){var n=ln[e];return n?n(t):t}function dn(e){return!!un[e]}function fn(e){return!!ln[e]}function mn(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 vn(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function yn(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,b(e,I(this.registerPackage,this))}function gn(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function bn(e){this.model=e}function xn(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function En(e){this.properties=new bn(this),this.factory=new pn(this,this.properties),this.registry=new yn(e,this.properties),this.typeCache={}}vn.prototype.build=function(){return $(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},vn.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)},vn.prototype.replaceProperty=function(e,t,n){var i=e.ns,r=this.properties,o=this.propertiesByName,a=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 s=r.indexOf(e);if(-1===s)throw new Error("property <"+i.name+"> not found in property list");r.splice(s,1),this.addProperty(t,n?void 0:s,a),o[i.name]=o[i.localName]=t},vn.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=mn(r[0],i),a=mn(r[1],o.prefix).name,s=this.propertiesByName[a];if(!s)throw new Error("refined property <"+a+"> not found");this.replaceProperty(s,e,n),delete e.redefines},vn.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},vn.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},vn.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},vn.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},vn.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")},vn.prototype.hasProperty=function(e){return this.propertiesByName[e]},vn.prototype.addTrait=function(e,t){var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(b(e.properties,I(function(n){n=F({},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)},yn.prototype.getPackage=function(e){return this.packageMap[e]},yn.prototype.getPackages=function(){return this.packages},yn.prototype.registerPackage=function(e){e=F({},e);var t=this.packageMap;gn(t,e,"prefix"),gn(t,e,"uri"),b(e.types,I(function(t){this.registerType(t,e)},this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},yn.prototype.registerType=function(e,t){var n=mn((e=F({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:F(e.meta||{})})).name,t.prefix),i=n.name,r={};b(e.properties,I(function(e){var t=mn(e.name,n.prefix),i=t.name;dn(e.type)||(e.type=mn(e.type,t.prefix).name),F(e,{ns:t,name:i}),r[i]=e},this)),F(e,{ns:n,name:i,propertiesByName:r}),b(e.extends,I(function(e){var t=this.typeMap[e];t.traits=t.traits||[],t.traits.push(i)},this)),this.definePackage(e,t),this.typeMap[i]=e},yn.prototype.mapTypes=function(e,t,n){var i=dn(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(e){return a(e,!0)}function a(n,i){var o=mn(n,dn(n)?"":e.prefix);r.mapTypes(o,t,i)}if(!i)throw new Error("unknown type <"+e.name+">");b(i.superClass,n?o:a),t(i,!n),b(i.traits,o)},yn.prototype.getEffectiveDescriptor=function(e){var t=mn(e),n=new vn(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},yn.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},bn.prototype.set=function(e,t,n){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:xn(e,i,n):e.$attrs[t]=n},bn.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&&xn(e,n,[]),e[i]},bn.prototype.define=function(e,t,n){Object.defineProperty(e,t,n)},bn.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},bn.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},En.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},En.prototype.getType=function(e){var t=this.typeCache,n=m(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},En.prototype.createAny=function(e,t,n){var i=mn(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}),b(n,function(e,t){h(e)&&void 0!==e.value?r[e.name]=e.value:r[t]=e}),r},En.prototype.getPackage=function(e){return this.registry.getPackage(e)},En.prototype.getPackages=function(){return this.registry.getPackages()},En.prototype.getElementDescriptor=function(e){return e.$descriptor},En.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},En.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},En.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var _n=String.fromCharCode,wn=Object.prototype.hasOwnProperty,Sn=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,Cn={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function Tn(e,t,n,i){return i?wn.call(Cn,i)?Cn[i]:"&"+i+";":_n(t||parseInt(n,16))}function Rn(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(Sn,Tn):e}Object.keys(Cn).forEach(function(e){Cn[e.toUpperCase()]=Cn[e]});var An="http://www.w3.org/2001/XMLSchema-instance",Pn="xsi",kn="xsi:type",Mn="non-whitespace outside of root node";function Dn(e){return new Error(e)}function Bn(e){return"missing namespace for prefix <"+e+">"}function Nn(e){return{get:e,enumerable:!0}}function On(e){var t,n={};for(t in e)n[t]=e[t];return n}function jn(e){return e+"$uri"}function Ln(){return{line:0,column:0}}function In(e){throw e}function zn(e){if(!this)return new zn(e);var t,n,i,r,o,a,s,c,p,u=e&&e.proxy,l=In,h=Ln,d=!1,f=!1,m=null,v=!1;function y(e){e instanceof Error||(e=Dn(e)),m=e,l(e,h)}function g(e){o&&(e instanceof Error||(e=Dn(e)),o(e,h))}this.on=function(e,p){if("function"!=typeof p)throw Dn("required args <name, cb>");switch(e){case"openTag":n=p;break;case"text":t=p;break;case"closeTag":i=p;break;case"error":l=p;break;case"warn":o=p;break;case"cdata":r=p;break;case"attention":c=p;break;case"question":s=p;break;case"comment":a=p;break;default:throw Dn("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw Dn("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return n[An]=Pn,f=!0,p=n,this},this.parse=function(e){if("string"!=typeof e)throw Dn("required args <xml=string>");return m=null,function(e){var o,l,m,b,x,E,_,w,S,C,T,R=f?[]:null,A=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[jn(n)]=t;return i}(p):null,P=[],k=0,M=!1,D=!1,B=0,N=0,O="",j=0;function L(){if(null!==T)return T;var e,t,n,i,r,o,a,s,c,u,l,h=f&&A.xmlns,m=f&&d?[]:null,v=j,y=O,b=y.length,x={},E={};e:for(;v<b;v++)if(c=!1,!(32===(u=y.charCodeAt(v))||u<14&&u>8)){for((u<65||u>122||u>90&&u<97)&&95!==u&&58!==u&&(g("illegal first char attribute name"),c=!0),l=v+1;l<b;l++)if(!((u=y.charCodeAt(l))>96&&u<123||u>64&&u<91||u>47&&u<59||46===u||45===u||95===u)){if(32===u||u<14&&u>8){g("missing attribute value"),v=l;continue e}if(61===u)break;g("illegal attribute name char"),c=!0}if("xmlns:xmlns"===(s=y.substring(v,l))&&(g("illegal declaration of xmlns"),c=!0),34===(u=y.charCodeAt(l+1)))-1===(l=y.indexOf('"',v=l+2))&&-1!==(l=y.indexOf("'",v))&&(g("attribute value quote missmatch"),c=!0);else if(39===u)-1===(l=y.indexOf("'",v=l+2))&&-1!==(l=y.indexOf('"',v))&&(g("attribute value quote missmatch"),c=!0);else for(g("missing attribute value quotes"),c=!0,l+=1;l<b&&!(32===(u=y.charCodeAt(l+1))||u<14&&u>8);l++);for(-1===l&&(g("missing closing quotes"),l=b,c=!0),c||(o=y.substring(v,l)),v=l;l+1<b&&!(32===(u=y.charCodeAt(l+1))||u<14&&u>8);l++)v===l&&(g("illegal character after attribute end"),c=!0);if(v=l+1,!c)if(s in E)g("attribute <"+s+"> already defined");else if(E[s]=!0,f)if(d){if(null!==(r="xmlns"===s?"xmlns":120===s.charCodeAt(0)&&"xmlns:"===s.substr(0,6)?s.substr(6):null)){if(e=Rn(o),t=jn(r),!(a=p[e])){if("xmlns"===r||t in A&&A[t]!==e)do{a="ns"+k++}while(void 0!==A[a]);else a=r;p[e]=a}A[r]!==a&&(i||(A=On(A),i=!0),A[r]=a,"xmlns"===r&&(A[jn(a)]=e,h=a),A[t]=e),x[s]=o;continue}m.push(s,o)}else-1!==(u=s.indexOf(":"))?(n=A[s.substring(0,u)])?((s=h===n?s.substr(u+1):n+s.substr(u))===kn&&(-1!==(u=o.indexOf(":"))?(n=o.substring(0,u),n=A[n]||n,o=n+o.substring(u)):o=h+":"+o),x[s]=o):g(Bn(s.substring(0,u))):x[s]=o;else x[s]=o}if(d)for(v=0,b=m.length;v<b;v++){if(s=m[v++],o=m[v],-1!==(u=s.indexOf(":"))){if(!(n=A[s.substring(0,u)])){g(Bn(s.substring(0,u)));continue}(s=h===n?s.substr(u+1):n+s.substr(u))===kn&&(-1!==(u=o.indexOf(":"))?(n=o.substring(0,u),n=A[n]||n,o=n+o.substring(u)):o=h+":"+o)}x[s]=o}return T=x}h=function(){for(var t,n,i=/(\r\n|\r|\n)/g,r=0,o=0,a=0,s=N;B>=a&&(t=i.exec(e))&&!((s=t[0].length+t.index)>B);)r+=1,a=s;return-1==B?(o=s,n=e.substring(N)):0===N?n=e.substring(N,B):(o=B-a,n=-1==N?e.substring(B):e.substring(B,N+1)),{data:n,line:r,column:o}},u&&(C=Object.create({},{name:Nn(function(){return w}),originalName:Nn(function(){return S}),attrs:Nn(L),ns:Nn(function(){return A})}));for(;-1!==N;){if(-1===(B=60===e.charCodeAt(N)?N:e.indexOf("<",N)))return P.length?y("unexpected end of file"):0===N?y("missing start tag"):void(N<e.length&&e.substring(N).trim()&&g(Mn));if(N!==B)if(P.length){if(t&&(t(e.substring(N,B),Rn,h),v))return}else if(e.substring(N,B).trim()&&(g(Mn),v))return;if(33===(x=e.charCodeAt(B+1))){if(91===(b=e.charCodeAt(B+2))&&"CDATA["===e.substr(B+3,6)){if(-1===(N=e.indexOf("]]>",B)))return y("unclosed cdata");if(r&&(r(e.substring(B+9,N),h),v))return;N+=3;continue}if(45===b&&45===e.charCodeAt(B+3)){if(-1===(N=e.indexOf("--\x3e",B)))return y("unclosed comment");if(a&&(a(e.substring(B+4,N),Rn,h),v))return;N+=3;continue}}if(63!==x){for(l=B+1;;l++){if(E=e.charCodeAt(l),isNaN(E))return N=-1,y("unclosed tag");if(34===E)b=e.indexOf('"',l+1),l=-1!==b?b:l;else if(39===E)b=e.indexOf("'",l+1),l=-1!==b?b:l;else if(62===E){N=l;break}}if(33!==x){if(T={},47===x){if(M=!1,D=!0,!P.length)return y("missing open tag");if(l=w=P.pop(),b=B+2+l.length,e.substring(B+2,b)!==l)return y("closing tag mismatch");for(;b<N;b++)if(!(32===(x=e.charCodeAt(b))||x>8&&x<14))return y("close tag")}else{if(47===e.charCodeAt(N-1)?(l=w=e.substring(B+1,N-1),M=!0,D=!0):(l=w=e.substring(B+1,N),M=!0,D=!1),!(x>96&&x<123||x>64&&x<91||95===x||58===x))return y("illegal first char nodeName");for(b=1,m=l.length;b<m;b++)if(!((x=l.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){w=l.substring(0,b),T=null;break}return y("invalid nodeName")}D||P.push(w)}if(f){if(o=A,M&&(D||R.push(o),null===T&&(d=-1!==l.indexOf("xmlns",b))&&(j=b,O=l,L(),d=!1)),S=w,-1!==(x=w.indexOf(":"))){if(!(_=A[w.substring(0,x)]))return y("missing namespace on <"+S+">");w=w.substr(x+1)}else _=A.xmlns;_&&(w=_+":"+w)}if(M&&(j=b,O=l,n&&(u?n(C,Rn,D,h):n(w,L,Rn,D,h),v)))return;if(D){if(i&&(i(u?C:w,Rn,M,h),v))return;f&&(A=M?o:R.pop())}N+=1}else{if(c&&(c(e.substring(B,N+1),Rn,h),v))return;N+=1}}else{if(-1===(N=e.indexOf("?>",B)))return y("unclosed question");if(s&&(s(e.substring(B,N+2),h),v))return;N+=2}}}(e),h=Ln,v=!1,m},this.stop=function(){v=!0}}function Fn(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var $n={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},Hn="xsi:type";function Gn(e){return e.xml&&e.xml.serialize}function Wn(e){return Gn(e)===Hn}function Vn(e,t){return Fn(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function Un(e){return new Error(e)}function qn(e){return e.$descriptor}function Kn(e){F(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(e){this.references.push(e)},this.addElement=function(e){if(!e)throw Un("expected element");var t,n=this.elementsById,i=qn(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 Un("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function Yn(){}function Xn(){}function Zn(){}function Qn(e,t){this.property=e,this.context=t}function Jn(e,t){this.element=t,this.propertyDesc=e}function ei(){}function ti(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function ni(e,t,n){ti.call(this,e,t,n)}function ii(e,t,n){this.model=e,this.context=n}function ri(e){e instanceof En&&(e={model:e}),F(this,{lax:!1},e)}Yn.prototype.handleEnd=function(){},Yn.prototype.handleText=function(){},Yn.prototype.handleNode=function(){},Xn.prototype=Object.create(Yn.prototype),Xn.prototype.handleNode=function(){return this},Zn.prototype=Object.create(Yn.prototype),Zn.prototype.handleText=function(e){this.body=(this.body||"")+e},Qn.prototype=Object.create(Zn.prototype),Qn.prototype.handleNode=function(e){if(this.element)throw Un("expected no sub nodes");return this.element=this.createReference(e),this},Qn.prototype.handleEnd=function(){this.element.id=this.body},Qn.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},Jn.prototype=Object.create(Zn.prototype),Jn.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=hn(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},ei.prototype=Object.create(Zn.prototype),ei.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},ti.prototype=Object.create(ei.prototype),ti.prototype.addReference=function(e){this.context.addReference(e)},ti.prototype.handleText=function(e){if(!qn(this.element).bodyProperty)throw Un("unexpected body text <"+e+">");Zn.prototype.handleText.call(this,e)},ti.prototype.handleEnd=function(){var e=this.body,t=this.element,n=qn(t).bodyProperty;n&&void 0!==e&&(e=hn(n.type,e),t.set(n.name,e))},ti.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,r=qn(i),o=this.context,a=new i({}),s=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:a,property:i.ns.name,id:e})}):o.addReference({element:a,property:i.ns.name,id:e}):(i?e=hn(i.type,e):"xmlns"!==n&&(t=mn(n,r.ns.prefix),s.getPackage(t.prefix)&&o.addWarning({message:"unknown attribute <"+n+">",element:a,property:n,value:e})),a.set(n,e))}),a},ti.prototype.getPropertyForNode=function(e){var t,n,i=mn(e.name),r=this.type,o=this.model,a=qn(r),s=i.name,c=a.propertiesByName[s];if(c&&!c.isAttr)return Wn(c)&&(t=e.attributes[Hn])?(t=function(e,t){var n=mn(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),F({},c,{effectiveType:qn(n=o.getType(t)).name})):c;var p=o.getPackage(i.prefix);if(p){if(t=Vn(i,p),n=o.getType(t),c=y(a.properties,function(e){return!e.isVirtual&&!e.isReference&&!e.isAttribute&&n.hasType(e.type)}))return F({},c,{effectiveType:qn(n).name})}else if(c=y(a.properties,function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type}))return c;throw Un("unrecognized element <"+i.name+">")},ti.prototype.toString=function(){return"ElementDescriptor["+qn(this.type).name+"]"},ti.prototype.valueHandler=function(e,t){return new Jn(e,t)},ti.prototype.referenceHandler=function(e){return new Qn(e,this.context)},ti.prototype.handler=function(e){return"Element"===e?new ii(this.model,e,this.context):new ti(this.model,e,this.context)},ti.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,fn(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?(F(o,{element:i}),this.context.addReference(o)):o.$parent=i),r},ni.prototype=Object.create(ti.prototype),ni.prototype.createElement=function(e){var t=e.name,n=mn(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&Vn(n,o)||t;if(!r.hasType(a))throw Un("unexpected element <"+e.originalName+">");return ti.prototype.createElement.call(this,e)},ii.prototype=Object.create(ei.prototype),ii.prototype.createElement=function(e){var t=e.name,n=mn(t).prefix,i=e.ns[n+"$uri"],r=e.attributes;return this.model.createAny(t,i,r)},ii.prototype.handleChild=function(e){var t=new ii(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},ii.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},ri.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof ti?(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,a=new Kn(F({},t,{rootHandler:i})),s=new zn({proxy:!0}),c=function(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}();function p(e,t,n){var i=t(),r=i.line,o=i.column,s=i.data;"<"===s.charAt(0)&&-1!==s.indexOf(" ")&&(s=s.slice(0,s.indexOf(" "))+">");var c="unparsable content "+(s?s+" ":"")+"detected\n\tline: "+r+"\n\tcolumn: "+o+"\n\tnested error: "+e.message;if(n)return a.addWarning({message:c,error:e}),!0;throw Un(c)}function u(e,t){return p(e,t,!0)}i.context=a,c.push(i);var l=/^<\?xml /i,h=/ encoding="([^"]+)"/i,d=/^utf-8$/i;function f(e,t){try{c.peek().handleText(e)}catch(e){u(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 s.ns(m).on("openTag",function(e,t,n,i){var r=e.attrs||{},a=Object.keys(r).reduce(function(e,n){var i=t(r[n]);return e[n]=i,e},{});!function(e,t){var n=c.peek();try{c.push(n.handleNode(e))}catch(e){p(e,t,o)&&c.push(new Xn)}}({name:e.name,originalName:e.originalName,attributes:a,ns:e.ns},i)}).on("question",function(e){if(l.test(e)){var t=h.exec(e),n=t&&t[1];n&&!d.test(n)&&a.addWarning({message:"unsupported document encoding <"+n+">, falling back to UTF-8"})}}).on("closeTag",function(){c.pop().handleEnd()}).on("cdata",f).on("text",function(e,t,n){!function(e,t){(e=e.trim())&&f(e,t)}(t(e),n)}).on("error",p).on("warn",u),new Promise(function(t,n){var r;try{s.parse(e),function(){var e,t,n=a.elementsById,i=a.references;for(e=0;t=i[e];e++){var r=t.element,o=n[t.id],s=qn(r).propertiesByName[t.property];if(o||a.addWarning({message:"unresolved reference <"+t.id+">",element:t.element,property:t.property,value:t.id}),s.isMany){var c=r.get(s.name),p=c.indexOf(t);-1===p&&(p=c.length),o?c[p]=o:c.splice(p,1)}else r.set(s.name,o)}}()}catch(e){r=e}var o=i.element;r||o||(r=Un("failed to parse document as <"+i.type.$descriptor.name+">"));var c=a.warnings,p=a.references,u=a.elementsById;return r?(r.warnings=c,n(r)):t({rootElement:o,elementsById:u,references:p,warnings:c})})},ri.prototype.handler=function(e){return new ni(this.model,e)};var oi='<?xml version="1.0" encoding="UTF-8"?>\n',ai=/<|>|'|"|&|\n\r|\n/g,si=/<|>|&/g;function ci(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 pi(e,t){return Fn(t)?(n=e).charAt(0).toLowerCase()+n.slice(1):e;var n}function ui(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function li(e){return m(e)?e:(e.prefix?e.prefix+":":"")+e.localName}var hi={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},di={"<":"lt",">":"gt","&":"amp"};function fi(e,t,n){return(e=m(e)?e:""+e).replace(t,function(e){return"&"+n[e]+";"})}function mi(e){this.tagName=e}function vi(){}function yi(e){this.tagName=e}function gi(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function bi(e,t){gi.call(this,e,t)}function xi(){this.value="",this.write=function(e){this.value+=e}}function Ei(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 _i(e){return e=F({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new xi,r=new Ei(i,e.format);if(e.preamble&&r.append(oi),(new gi).build(t).serializeTo(r),!n)return i.value}}}function wi(e,t){En.call(this,e,t)}mi.prototype.build=function(e){return this.element=e,this},mi.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},vi.prototype.serializeValue=vi.prototype.serializeTo=function(e){e.append(this.escape?fi(this.value,si,di):this.value)},vi.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(si)&&(this.escape=!0),this},ui(yi,vi),yi.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},gi.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 g(e.$descriptor.properties,function(t){var n=t.name;if(t.isVirtual)return!1;if(!e.hasOwnProperty(n))return!1;var i=e[n];return i!==t.default&&null!==i&&(!t.isMany||i.length)})}(e),this.parseAttributes(g(n,function(e){return e.isAttr})),this.parseContainments(function(e){return g(e,function(e){return!e.isAttr})}(n))),this.parseGenericAttributes(e,t),this},gi.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?F({localName:t.ns.localName},e):F({localName:pi(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},gi.prototype.nsPropertyTagName=function(e){return function(e,t){return F({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},gi.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},gi.prototype.nsAttributeName=function(e){var t;if(t=m(e)?mn(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}:F({localName:t.localName},n)},gi.prototype.parseGeneric=function(e){var t=this,n=this.body,i=[];return b(e,function(r,o){"$body"===o?n.push((new vi).build({type:"String"},r)):"$children"===o?b(r,function(e){n.push(new gi(t).build(e))}):0!==o.indexOf("$")&&t.parseNsAttribute(e,o,r)&&i.push({name:o,value:r})}),i},gi.prototype.parseNsAttribute=function(e,t,n){var i,r=e.$model,o=mn(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 a=this.logNamespaceUsed(i,!0);this.getNamespaces().logUsed(a)}},gi.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},gi.prototype.parseGenericAttributes=function(e,t){var n=this;b(t,function(t){if(t.name!==Hn)try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){console.warn("missing namespace information for ",t.name,"=",t.value,"on",e,n)}})},gi.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 vi).build(e,r[0]));else if(fn(e.type))b(r,function(i){n.push(new yi(t.addTagName(t.nsPropertyTagName(e))).build(e,i))});else if(o)b(r,function(i){n.push(new mi(t.addTagName(t.nsPropertyTagName(e))).build(i))});else{var a=Wn(e),s=function(e){return"property"===Gn(e)}(e);b(r,function(i){var r;r=a?new bi(t,e):s?new gi(t,e):new gi(t),n.push(r.build(i))})}})},gi.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new ci(t):n=t),n},gi.prototype.logNamespace=function(e,t,n){var i=this.getNamespaces(n),r=e.uri,o=e.prefix,a=i.byUri(r);return"xml"===o||a&&!n||i.add(e,t),i.mapPrefix(o,r),e},gi.prototype.logNamespaceUsed=function(e,t){var n,i,r,o=this.element.$model,a=this.getNamespaces(t),s=e.prefix,c=e.uri;if(!s&&!c)return{localName:e.localName};if(r=$n[s]||o&&(o.getPackage(s)||{}).uri,!(c=c||r||a.uriByPrefix(s)))throw new Error("no namespace uri given for prefix <"+s+">");if(!(e=a.byUri(c))){for(n=s,i=1;a.uriByPrefix(n);)n=s+"_"+i++;e=this.logNamespace({prefix:n,uri:c},r===c)}return s&&a.mapPrefix(s,c),e},gi.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)})},gi.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),li(e)},gi.prototype.addAttribute=function(e,t){var n=this.attrs;m(t)&&(t=fi(t,ai,hi)),n.push({name:e,value:t})},gi.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return S(e.getUsed(),function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}})}(n).concat(t)),b(t,function(t){e.append(" ").append(li(t.name)).append('="').append(t.value).append('"')})},gi.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==vi;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()},ui(bi,gi),bi.prototype.parseNsAttributes=function(e){var t=gi.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(Hn),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},bi.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},wi.prototype=Object.create(En.prototype),wi.prototype.fromXML=function(e,t,n){m(t)||(n=t,t="bpmn:Definitions");var i=new ri(F({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},wi.prototype.toXML=function(e,t){var n=new _i(t);return new Promise(function(t,i){try{return t({xml:n.toXML(e)})}catch(e){return i(e)}})};var Si={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",isAttr:!0,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"],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:[]}};function Ci(e,t){return new wi(F({},Si,e),t)}function Ti(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}var Ri=new Ot({name:"bpmnElement",enumerable:!0},{name:"di",configurable:!0});function Ai(e,t){return e.$instanceOf(t)}function Pi(e,t){var n={},i=[];function r(e,t){return function(n){e(n,t)}}function o(e){n[e.id]=e}function a(n,i){try{var r=n.di&&function(n,i){if(n.gfx)throw new Error(t("already rendered {element}",{element:Ti(n)}));return e.element(n,i)}(n,i);return o(n),r}catch(e){s(e.message,{element:n,error:e}),console.error(t("failed to import {element}",{element:Ti(n)})),console.error(e)}}function s(t,n){e.error(t,n)}function c(e){var n=e.bpmnElement;n?n.di?s(t("multiple DI elements defined for {element}",{element:Ti(n)}),{element:n}):(Ri.bind(n,"di"),n.di=e):s(t("no bpmnElement referenced in {element}",{element:Ti(e)}),{element:e})}function p(e){var t;c(t=e.plane),b(t.planeElement,u)}function u(e){c(e)}function l(){for(;i.length;)i.shift()()}function h(e,t){A(e,t),_(e.ioSpecification,t),E(e.artifacts,t),o(e)}function d(e,t){a(e,t)}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 E(e,t){b(e,function(e){Ai(e,"bpmn:Association")?i.push(function(){x(e,t)}):x(e,t)})}function _(e,t){e&&(b(e.dataInputs,r(m,t)),b(e.dataOutputs,r(v,t)))}function w(e,t){A(e,t),E(e.artifacts,t)}function S(e,t){var n=a(e,t);Ai(e,"bpmn:SubProcess")&&w(e,n||t),Ai(e,"bpmn:Activity")&&_(e.ioSpecification,t),i.push(function(){b(e.dataInputAssociations,r(f,t)),b(e.dataOutputAssociations,r(f,t))})}function C(e,t){a(e,t)}function T(e,t){i.push(function(){var n=a(e,t);e.childLaneSet&&R(e.childLaneSet,n||t),function(e){b(e.flowNodeRef,function(t){var n=t.get("lanes");n&&n.push(e)})}(e)})}function R(e,t){b(e.lanes,r(T,t))}function A(e,n){!function(e,n){b(e,function(e){Ai(e,"bpmn:SequenceFlow")?i.push(function(){!function(e,t){a(e,t)}(e,n)}):Ai(e,"bpmn:BoundaryEvent")?i.unshift(function(){S(e,n)}):Ai(e,"bpmn:FlowNode")?S(e,n):Ai(e,"bpmn:DataObject")||(Ai(e,"bpmn:DataStoreReference")?C(e,n):Ai(e,"bpmn:DataObjectReference")?C(e,n):s(t("unrecognized flowElement {element} in context {context}",{element:Ti(e),context:n?Ti(n.businessObject):"null"}),{element:e,context:n}))})}(e.flowElements,n),e.laneSets&&function(e,t){b(e,r(R,t))}(e.laneSets,n)}function P(e,t){var n=a(e,t),i=e.processRef;i&&h(i,n||t)}return{handleDeferred:l,handleDefinitions:function(o,a){var u=o.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"));p(a);var f=a.plane;if(!f)throw new Error(t("no plane for {element}",{element:Ti(a)}));var m=f.bpmnElement;if(!m){if(!(m=function(e){return y(e.rootElements,function(e){return Ai(e,"bpmn:Process")||Ai(e,"bpmn:Collaboration")})}(o)))throw new Error(t("no process or collaboration to display"));s(t("correcting missing bpmnElement on {plane} to {rootElement}",{plane:Ti(f),rootElement:Ti(m)})),f.bpmnElement=m,c(f)}var v,x=function(t,n){return e.root(t,n)}(m,f);if(Ai(m,"bpmn:Process"))h(m,x);else{if(!Ai(m,"bpmn:Collaboration"))throw new Error(t("unsupported bpmnElement for {plane}: {rootElement}",{plane:Ti(f),rootElement:Ti(m)}));b((v=m).participants,r(P)),E(v.artifacts),i.push(function(){var e;b(v.messageFlows,r(d,e))}),function(e,t){g(e,function(e){return!n[e.id]&&Ai(e,"bpmn:Process")&&e.laneSets}).forEach(r(h,t))}(o.rootElements,x)}l()},handleSubProcess:w,registerDi:c}}function ki(e,t,n){var i,r,o,a=[];return new Promise(function(s,c){try{return i=e.get("bpmnImporter"),r=e.get("eventBus"),o=e.get("translate"),r.fire("import.render.start",{definitions:t}),function(e,t){new Pi({root:function(e){return i.add(e)},element:function(e,t){return i.add(e,t)},error:function(e,t){a.push({message:e,context:t})}},o).handleDefinitions(e,t)}(t,n),r.fire("import.render.complete",{error:void 0,warnings:a}),s({warnings:a})}catch(e){return e.warnings=a,c(e)}})}function Mi(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&&f(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)})}}
3/**
4 * This file must not be changed or exchanged.
5 *
6 * @see http://bpmn.io/license for more information.
7 */var Di='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21" style="vertical-align:middle"><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>';function Bi(e){return e.join(";")}var Ni,Oi=Bi(["color: #404040"]),ji='<div class="bjs-powered-by-lightbox" style="'+Bi(["z-index: 1001","position: fixed","top: 0","left: 0","right: 0","bottom: 0"])+'"><div class="backdrop" style="'+Bi(["width: 100%","height: 100%","background: rgba(40,40,40,0.2)"])+'"></div><div class="notice" style="'+Bi(["position: absolute","left: 50%","top: 40%","transform: translate(-50%)","width: 260px","padding: 10px","background: white","box-shadow: 0 1px 4px rgba(0,0,0,0.3)","font-family: Helvetica, Arial, sans-serif","font-size: 14px","display: flex","line-height: 1.3"])+'"><a href="https://bpmn.io" target="_blank" rel="noopener" style="margin: 15px 20px 15px 10px; align-self: center;'+Oi+'">'+Di+'</a><span>Web-based tooling for BPMN, DMN and CMMN diagrams powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>';
8/**
9 * The code in the <project-logo></project-logo> area
10 * must not be changed.
11 *
12 * @see http://bpmn.io/license for more information.
13 */
14function Li(e){
15/**
16 * Adds the project logo to the diagram container as
17 * required by the bpmn.io license.
18 *
19 * @see http://bpmn.io/license
20 *
21 * @param {Element} container
22 */
23var t,n;e=F({},zi,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),t=this._container,n=le('<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" style="position: absolute; bottom: 15px; right: 15px; z-index: 100; '+Oi+'">'+Di+"</a>"),t.appendChild(n),ce.bind(n,"click",function(e){Ni||(Ni=le(ji),ue.bind(Ni,".backdrop","click",function(e){document.body.removeChild(Ni)})),document.body.appendChild(Ni),e.preventDefault()}),this._init(this._container,this._moddle,e)}function Ii(e,t){return e.warnings=t,e}n(Li,sn),Li.prototype.importXML=Mi(function(e,t){var n=this;return new Promise(function(i,r){e=n._emit("import.parse.start",{xml:e})||e,n._moddle.fromXML(e,"bpmn:Definitions").then(function(e){var o,a,s=e.rootElement,c=e.references,p=e.warnings,u=e.elementsById;s=n._emit("import.parse.complete",(o={error:null,definitions:s,elementsById:u,references:c,warnings:p},a=n.get("eventBus").createEvent(o),Object.defineProperty(a,"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:o.warnings,references:o.references,elementsById:o.elementsById}}}),a))||s,n.importDefinitions(s,t).then(function(e){var t=[].concat(p,e.warnings||[]);return n._emit("import.done",{error:null,warnings:t}),i({warnings:t})}).catch(function(e){var t=[].concat(p,e.warnings||[]);return n._emit("import.done",{error:e,warnings:t}),r(Ii(e,t))})}).catch(function(e){return n._emit("import.parse.complete",{error:e}),e=function(e){var 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}(e),n._emit("import.done",{error:e,warnings:e.warnings}),r(e)})})}),Li.prototype.importDefinitions=Mi(function(e,t){var n=this;return new Promise(function(i,r){n._setDefinitions(e),n.open(t).then(function(e){var t=e.warnings;return i({warnings:t})}).catch(function(e){return r(e)})})}),Li.prototype.open=Mi(function(e){var t=this._definitions,n=e,i=this;return new Promise(function(r,o){if(!t){var a=new Error("no XML imported");return o(Ii(a,[]))}if("string"==typeof e&&!(n=function(e,t){if(!t)return null;return y(e.diagrams,function(e){return e.id===t})||null}(t,e))){var s=new Error("BPMNDiagram <"+e+"> not found");return o(Ii(s,[]))}try{i.clear()}catch(e){return o(Ii(e,[]))}ki(i,t,n).then(function(e){var t=e.warnings;return r({warnings:t})}).catch(function(e){return o(e)})})}),Li.prototype.saveXML=Mi(function(e){e=e||{};var t=this,n=this._definitions;return new Promise(function(i,r){if(!n){var o=new Error("no definitions loaded");return r(o)}n=t._emit("saveXML.start",{definitions:n})||n,t._moddle.toXML(n,e).then(function(e){var n=e.xml;try{n=t._emit("saveXML.serialized",{error:null,xml:n})||n,t._emit("saveXML.done",{error:null,xml:n})}catch(e){console.error("error in saveXML life-cycle listener",e)}return i({xml:n})}).catch(function(e){return r(e)})})}),Li.prototype.saveSVG=Mi(function(e){var t=this;return new Promise(function(e,n){var i,r;t._emit("saveSVG.start");try{var o=t.get("canvas"),a=o.getDefaultLayer(),s=fe("defs",o._svg),c=Ve(a),p=s?"<defs>"+Ve(s)+"</defs>":"",u=a.getBBox();i='<?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="'+u.width+'" height="'+u.height+'" viewBox="'+u.x+" "+u.y+" "+u.width+" "+u.height+'" version="1.1">'+p+c+"</svg>"}catch(e){r=e}return t._emit("saveSVG.done",{error:r,svg:i}),r?n(r):e({svg:i})})}),Li.prototype._setDefinitions=function(e){this._definitions=e},Li.prototype.getModules=function(){return this._modules},Li.prototype.clear=function(){this.getDefinitions()&&(this.get("elementRegistry").forEach(function(e){var t=e.businessObject;t&&t.di&&delete t.di}),sn.prototype.clear.call(this))},Li.prototype.destroy=function(){sn.prototype.destroy.call(this),ve(this._container)},Li.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},Li.prototype.off=function(e,t){this.get("eventBus").off(e,t)},Li.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=fe(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},Li.prototype.getDefinitions=function(){return this._definitions},Li.prototype.detach=function(){var e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},Li.prototype._init=function(e,t,n){var i=n.modules||this.getModules(),r=n.additionalModules||[],o=[].concat([{bpmnjs:["value",this],moddle:["value",t]}],i,r),a=F(H(n,["additionalModules"]),{canvas:F({},n.canvas,{container:e}),modules:o});sn.call(this,a),n&&n.container&&this.attachTo(n.container)},Li.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},Li.prototype._createContainer=function(e){var t=le('<div class="bjs-container"></div>');return F(t.style,{width:Fi(e.width),height:Fi(e.height),position:e.position}),t},Li.prototype._createModdle=function(e){return new Ci(F({},this._moddleExtensions,e.moddleExtensions))},Li.prototype._modules=[];var zi={width:"100%",height:"100%",position:"relative"};function Fi(e){return e+(d(e)?"px":"")}function $i(e){Li.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 Hi(e,t){var n=Gi(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function Gi(e){return e&&e.businessObject||e}function Wi(e){return!Hi(e,"bpmn:CallActivity")&&(Hi(e,"bpmn:SubProcess")?!!Gi(e).di.isExpanded:!Hi(e,"bpmn:Participant")||!!Gi(e).processRef)}function Vi(e){return e&&!!Gi(e).triggeredByEvent}function Ui(e,t){var n=Gi(e),i=!1;return n.eventDefinitions&&b(n.eventDefinitions,function(e){Hi(e,t)&&(i=!0)}),i}function qi(e){return Hi(e,"bpmn:FlowElement")||Hi(e,"bpmn:Participant")||Hi(e,"bpmn:Lane")||Hi(e,"bpmn:SequenceFlow")||Hi(e,"bpmn:MessageFlow")||Hi(e,"bpmn:DataInput")||Hi(e,"bpmn:DataOutput")?"name":Hi(e,"bpmn:TextAnnotation")?"text":Hi(e,"bpmn:Group")?"categoryValueRef":void 0}function Ki(e){var t=e.businessObject,n=qi(t);if(n)return"categoryValueRef"===n?function(e){var t=e.categoryValueRef;return t&&t.value||""}(t):t[n]||""}function Yi(e,t,n){return w(e.eventDefinitions,function(i){return i.$type===t&&function(e,t){return _(t,function(t,n){return e[n]==t})}(e,n)})}function Xi(e){return e.businessObject.di}function Zi(e){return e.businessObject}function Qi(e,t){return Xi(e).get("bioc:fill")||t||"white"}function Ji(e,t){return Xi(e).get("bioc:stroke")||t||"black"}n($i,Li),$i.prototype._createModdle=function(e){var t=Li.prototype._createModdle.call(this,e);return t.ids=new r([32,36,1]),t},$i.prototype._collectIds=function(e,t){var n,i=e.$model.ids;for(n in i.clear(),t)i.claim(n,t[n])};var er=new r,tr=10,nr=3,ir=.95,rr=.35;function or(e,t,n,i,r,o,a){at.call(this,t,a);var s=e&&e.defaultFillColor,c=e&&e.defaultStrokeColor,p=er.next(),u={},l=n.computeStyle;function d(e,t){var n=F({fill:"black",strokeWidth:1,strokeLinecap:"round",strokeDasharray:"none"},t.attrs),i=t.ref||{x:0,y:0},o=t.scale||1;"none"===n.strokeDasharray&&(n.strokeDasharray=[1e4,1]);var a=Oe("marker");_e(t.element,n),ge(a,t.element),_e(a,{id:e,viewBox:"0 0 20 20",refX:i.x,refY:i.y,markerWidth:20*o,markerHeight:20*o,orient:"auto"});var s=fe("defs",r._svg);s||(s=Oe("defs"),ge(r._svg,s)),ge(s,a),u[e]=a}function f(e){return e.replace(/[^0-9a-zA-z]+/g,"_")}function m(e,t,n){var i=e+"-"+f(t)+"-"+f(n)+"-"+p;return u[i]||function(e,t,n,i){if("sequenceflow-end"===t){var r=Oe("path");_e(r,{d:"M 1 5 L 11 10 L 1 15 Z"}),d(e,{element:r,ref:{x:11,y:10},scale:.5,attrs:{fill:i,stroke:i}})}if("messageflow-start"===t){var o=Oe("circle");_e(o,{cx:6,cy:6,r:3.5}),d(e,{element:o,attrs:{fill:n,stroke:i},ref:{x:6,y:6}})}if("messageflow-end"===t){var a=Oe("path");_e(a,{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z"}),d(e,{element:a,attrs:{fill:n,stroke:i,strokeLinecap:"butt"},ref:{x:8.5,y:5}})}if("association-start"===t){var s=Oe("path");_e(s,{d:"M 11 5 L 1 10 L 11 15"}),d(e,{element:s,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:1,y:10},scale:.5})}if("association-end"===t){var c=Oe("path");_e(c,{d:"M 1 5 L 11 10 L 1 15"}),d(e,{element:c,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:12,y:10},scale:.5})}if("conditional-flow-marker"===t){var p=Oe("path");_e(p,{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z"}),d(e,{element:p,attrs:{fill:n,stroke:i},ref:{x:-1,y:10},scale:.5})}if("conditional-default-flow-marker"===t){var u=Oe("path");_e(u,{d:"M 6 4 L 10 16"}),d(e,{element:u,attrs:{stroke:i},ref:{x:0,y:10},scale:.5})}}(i,e,t,n),"url(#"+i+")"}function v(e,t,n,i,r){h(i)&&(r=i,i=0),i=i||0,"none"===(r=l(r,{stroke:"black",strokeWidth:2,fill:"white"})).fill&&delete r.fillOpacity;var o=t/2,a=n/2,s=Oe("circle");return _e(s,{cx:o,cy:a,r:Math.round((t+n)/4-i)}),_e(s,r),ge(e,s),s}function y(e,t,n,i,r,o){h(r)&&(o=r,r=0),r=r||0,o=l(o,{stroke:"black",strokeWidth:2,fill:"white"});var a=Oe("rect");return _e(a,{x:r,y:r,width:t-2*r,height:n-2*r,rx:i,ry:i}),_e(a,o),ge(e,a),a}function g(e,t,n){var i=pt(t,n=l(n,["no-fill"],{stroke:"black",strokeWidth:2,fill:"none"}));return ge(e,i),i}function x(e,t,n){n=l(n,["no-fill"],{strokeWidth:2,stroke:"black"});var i=Oe("path");return _e(i,{d:t}),_e(i,n),ge(e,i),i}function E(e,t,n,i){return x(t,n,F({"data-marker":e},i))}function _(e){return function(t,n){return P[e](t,n)}}function w(e){return P[e]}function S(e,t){var n=Zi(e),i=function(e){return"bpmn:IntermediateThrowEvent"===e.$type||"bpmn:EndEvent"===e.$type}(n);return n.eventDefinitions&&n.eventDefinitions.length>1?n.parallelMultiple?w("bpmn:ParallelMultipleEventDefinition")(t,e,i):w("bpmn:MultipleEventDefinition")(t,e,i):Yi(n,"bpmn:MessageEventDefinition")?w("bpmn:MessageEventDefinition")(t,e,i):Yi(n,"bpmn:TimerEventDefinition")?w("bpmn:TimerEventDefinition")(t,e,i):Yi(n,"bpmn:ConditionalEventDefinition")?w("bpmn:ConditionalEventDefinition")(t,e):Yi(n,"bpmn:SignalEventDefinition")?w("bpmn:SignalEventDefinition")(t,e,i):Yi(n,"bpmn:EscalationEventDefinition")?w("bpmn:EscalationEventDefinition")(t,e,i):Yi(n,"bpmn:LinkEventDefinition")?w("bpmn:LinkEventDefinition")(t,e,i):Yi(n,"bpmn:ErrorEventDefinition")?w("bpmn:ErrorEventDefinition")(t,e,i):Yi(n,"bpmn:CancelEventDefinition")?w("bpmn:CancelEventDefinition")(t,e,i):Yi(n,"bpmn:CompensateEventDefinition")?w("bpmn:CompensateEventDefinition")(t,e,i):Yi(n,"bpmn:TerminateEventDefinition")?w("bpmn:TerminateEventDefinition")(t,e,i):null}function C(e,t,n){n=F({size:{width:100}},n);var i=o.createText(t||"",n);return Re(i).add("djs-label"),ge(e,i),i}function T(e,t,n){return C(e,Zi(t).name,{box:t,align:n,padding:5,style:{fill:Ji(t,c)}})}function R(e,t,n){Jt(C(e,t,{box:{height:30,width:n.height},align:"center-middle",style:{fill:Ji(n,c)}}),0,-(-1*n.height),270)}function A(e){for(var t=e.waypoints,n="m "+t[0].x+","+t[0].y,i=1;i<t.length;i++)n+="L"+t[i].x+","+t[i].y+" ";return n}var P=this.handlers={"bpmn:Event":function(e,t,n){return"fillOpacity"in n||(n.fillOpacity=ir),v(e,t.width,t.height,n)},"bpmn:StartEvent":function(e,t){var n={fill:Qi(t,s),stroke:Ji(t,c)};Zi(t).isInterrupting||(n={strokeDasharray:"6",strokeLinecap:"round",fill:Qi(t,s),stroke:Ji(t,c)});var i=w("bpmn:Event")(e,t,n);return S(t,e),i},"bpmn:MessageEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.235,my:.315}}),{strokeWidth:1,fill:n?Ji(t,c):Qi(t,s),stroke:n?Qi(t,s):Ji(t,c)})},"bpmn:TimerEventDefinition":function(e,t){var n=v(e,t.width,t.height,.2*t.height,{strokeWidth:2,fill:Qi(t,s),stroke:Ji(t,c)});x(e,i.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.5}}),{strokeWidth:2,strokeLinecap:"square",stroke:Ji(t,c)});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}}),a=t.width/2;x(e,o,{strokeWidth:1,strokeLinecap:"square",transform:"rotate("+30*r+","+t.height/2+","+a+")",stroke:Ji(t,c)})}return n},"bpmn:EscalationEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?Ji(t,c):"none",stroke:Ji(t,c)})},"bpmn:ConditionalEventDefinition":function(e,t){return x(e,i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.222}}),{strokeWidth:1,stroke:Ji(t,c)})},"bpmn:LinkEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.57,my:.263}}),{strokeWidth:1,fill:n?Ji(t,c):"none",stroke:Ji(t,c)})},"bpmn:ErrorEventDefinition":function(e,t,n){return x(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?Ji(t,c):"none",stroke:Ji(t,c)})},"bpmn:CancelEventDefinition":function(e,t,n){var r=x(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?Ji(t,c):"none",stroke:Ji(t,c)});return tn(r,45),r},"bpmn:CompensateEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.22,my:.5}}),{strokeWidth:1,fill:n?Ji(t,c):"none",stroke:Ji(t,c)})},"bpmn:SignalEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?Ji(t,c):"none",stroke:Ji(t,c)})},"bpmn:MultipleEventDefinition":function(e,t,n){return x(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?Ji(t,c):"none"})},"bpmn:ParallelMultipleEventDefinition":function(e,t){return x(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:Ji(t,c),stroke:Ji(t,c)})},"bpmn:EndEvent":function(e,t){var n=w("bpmn:Event")(e,t,{strokeWidth:4,fill:Qi(t,s),stroke:Ji(t,c)});return S(t,e),n},"bpmn:TerminateEventDefinition":function(e,t){return v(e,t.width,t.height,8,{strokeWidth:4,fill:Ji(t,c),stroke:Ji(t,c)})},"bpmn:IntermediateEvent":function(e,t){var n=w("bpmn:Event")(e,t,{strokeWidth:1,fill:Qi(t,s),stroke:Ji(t,c)});return v(e,t.width,t.height,nr,{strokeWidth:1,fill:Qi(t,"none"),stroke:Ji(t,c)}),S(t,e),n},"bpmn:IntermediateCatchEvent":_("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":_("bpmn:IntermediateEvent"),"bpmn:Activity":function(e,t,n){return"fillOpacity"in(n=n||{})||(n.fillOpacity=ir),y(e,t.width,t.height,tr,n)},"bpmn:Task":function(e,t){var n={fill:Qi(t,s),stroke:Ji(t,c)},i=w("bpmn:Activity")(e,t,n);return T(e,t,"center-middle"),k(e,t),i},"bpmn:ServiceTask":function(e,t){var n=w("bpmn:Task")(e,t);return x(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}}),{strokeWidth:1,fill:Qi(t,s),stroke:Ji(t,c)}),x(e,i.getScaledPath("TASK_TYPE_SERVICE_FILL",{abspos:{x:17.2,y:18}}),{strokeWidth:0,fill:Qi(t,s)}),x(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}}),{strokeWidth:1,fill:Qi(t,s),stroke:Ji(t,c)}),n},"bpmn:UserTask":function(e,t){var n=w("bpmn:Task")(e,t);return x(e,i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Qi(t,s),stroke:Ji(t,c)}),x(e,i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Qi(t,s),stroke:Ji(t,c)}),x(e,i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Ji(t,c),stroke:Ji(t,c)}),n},"bpmn:ManualTask":function(e,t){var n=w("bpmn:Task")(e,t);return x(e,i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}}),{strokeWidth:.5,fill:Qi(t,s),stroke:Ji(t,c)}),n},"bpmn:SendTask":function(e,t){var n=w("bpmn:Task")(e,t);return x(e,i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}}),{strokeWidth:1,fill:Ji(t,c),stroke:Qi(t,s)}),n},"bpmn:ReceiveTask":function(e,t){var n,r=Zi(t),o=w("bpmn:Task")(e,t);return r.instantiate?(v(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}}),x(e,n,{strokeWidth:1,fill:Qi(t,s),stroke:Ji(t,c)}),o},"bpmn:ScriptTask":function(e,t){var n=w("bpmn:Task")(e,t);return x(e,i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}}),{strokeWidth:1,stroke:Ji(t,c)}),n},"bpmn:BusinessRuleTask":function(e,t){var n=w("bpmn:Task")(e,t);return _e(x(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}})),{strokeWidth:1,fill:Qi(t,"#aaaaaa"),stroke:Ji(t,c)}),_e(x(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}})),{strokeWidth:1,stroke:Ji(t,c)}),n},"bpmn:SubProcess":function(e,t,n){n=F({fill:Qi(t,s),stroke:Ji(t,c)},n);var i=w("bpmn:Activity")(e,t,n),r=Wi(t);return Vi(t)&&_e(i,{strokeDasharray:"1,2"}),T(e,t,r?"center-top":"center-middle"),r?k(e,t):k(e,t,["SubProcessMarker"]),i},"bpmn:AdHocSubProcess":function(e,t){return w("bpmn:SubProcess")(e,t)},"bpmn:Transaction":function(e,t){var i=w("bpmn:SubProcess")(e,t),r=n.style(["no-fill","no-events"],{stroke:Ji(t,c)});return y(e,t.width,t.height,tr-2,nr,r),i},"bpmn:CallActivity":function(e,t){return w("bpmn:SubProcess")(e,t,{strokeWidth:5})},"bpmn:Participant":function(e,t){var n={fillOpacity:ir,fill:Qi(t,s),stroke:Ji(t,c)},i=w("bpmn:Lane")(e,t,n);Wi(t)?(g(e,[{x:30,y:0},{x:30,y:t.height}],{stroke:Ji(t,c)}),R(e,Zi(t).name,t)):C(e,Zi(t).name,{box:t,align:"center-middle",style:{fill:Ji(t,c)}});return!!Zi(t).participantMultiplicity&&w("ParticipantMultiplicityMarker")(e,t),i},"bpmn:Lane":function(e,t,n){var i=y(e,t.width,t.height,0,F({fill:Qi(t,s),fillOpacity:rr,stroke:Ji(t,c)},n)),r=Zi(t);"bpmn:Lane"===r.$type&&R(e,r.name,t);return i},"bpmn:InclusiveGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return v(e,t.width,t.height,.24*t.height,{strokeWidth:2.5,fill:Qi(t,s),stroke:Ji(t,c)}),n},"bpmn:ExclusiveGateway":function(e,t){var n=w("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 Xi(t).isMarkerVisible&&x(e,r,{strokeWidth:1,fill:Ji(t,c),stroke:Ji(t,c)}),n},"bpmn:ComplexGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return x(e,i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.26}}),{strokeWidth:1,fill:Ji(t,c),stroke:Ji(t,c)}),n},"bpmn:ParallelGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return x(e,i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.2}}),{strokeWidth:1,fill:Ji(t,c),stroke:Ji(t,c)}),n},"bpmn:EventBasedGateway":function(e,t){var n=Zi(t),r=w("bpmn:Gateway")(e,t);v(e,t.width,t.height,.2*t.height,{strokeWidth:1,fill:"none",stroke:Ji(t,c)});var o=n.eventGatewayType,a=!!n.instantiate;if("Parallel"===o){var s=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}});_e(x(e,s),{strokeWidth:1,fill:"none"})}else if("Exclusive"===o){if(!a)_e(v(e,t.width,t.height,.26*t.height),{strokeWidth:1,fill:"none",stroke:Ji(t,c)});!function(){var n=i.getScaledPath("GATEWAY_EVENT_BASED",{xScaleFactor:.18,yScaleFactor:.18,containerWidth:t.width,containerHeight:t.height,position:{mx:.36,my:.44}}),r={strokeWidth:2,fill:Qi(t,"none"),stroke:Ji(t,c)};x(e,n,r)}()}return r},"bpmn:Gateway":function(e,t){var n={fill:Qi(t,s),fillOpacity:ir,stroke:Ji(t,c)};return function(e,t,n,i){var r=t/2,o=n/2,a=[{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=l(i,{stroke:"black",strokeWidth:2,fill:"white"});var s=Oe("polygon");return _e(s,{points:a}),_e(s,i),ge(e,s),s}(e,t.width,t.height,n)},"bpmn:SequenceFlow":function(e,t){var n,i=A(t),r=Qi(t,s),o=Ji(t,c),a=x(e,i,{strokeLinejoin:"round",markerEnd:m("sequenceflow-end",r,o),stroke:Ji(t,c)}),p=Zi(t);return t.source&&(n=t.source.businessObject,p.conditionExpression&&n.$instanceOf("bpmn:Activity")&&_e(a,{markerStart:m("conditional-flow-marker",r,o)}),n.default&&(n.$instanceOf("bpmn:Gateway")||n.$instanceOf("bpmn:Activity"))&&n.default===p&&_e(a,{markerStart:m("conditional-default-flow-marker",r,o)})),a},"bpmn:Association":function(e,t,n){var i=Zi(t),r=Qi(t,s),o=Ji(t,c);return n=F({strokeDasharray:"0.5, 5",strokeLinecap:"round",strokeLinejoin:"round",stroke:Ji(t,c)},n||{}),"One"!==i.associationDirection&&"Both"!==i.associationDirection||(n.markerEnd=m("association-end",r,o)),"Both"===i.associationDirection&&(n.markerStart=m("association-start",r,o)),g(e,t.waypoints,n)},"bpmn:DataInputAssociation":function(e,t){var n=Qi(t,s),i=Ji(t,c);return w("bpmn:Association")(e,t,{markerEnd:m("association-end",n,i)})},"bpmn:DataOutputAssociation":function(e,t){var n=Qi(t,s),i=Ji(t,c);return w("bpmn:Association")(e,t,{markerEnd:m("association-end",n,i)})},"bpmn:MessageFlow":function(e,t){var n=Zi(t),r=Xi(t),o=Qi(t,s),a=Ji(t,c),p=x(e,A(t),{markerEnd:m("messageflow-end",o,a),markerStart:m("messageflow-start",o,a),strokeDasharray:"10, 12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.5px",stroke:Ji(t,c)});if(n.messageRef){var u=p.getPointAtLength(p.getTotalLength()/2),l=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:u.x,y:u.y}}),h={strokeWidth:1};"initiating"===r.messageVisibleKind?(h.fill="white",h.stroke="black"):(h.fill="#888",h.stroke="white"),x(e,l,h)}return p},"bpmn:DataObject":function(e,t){var n=x(e,i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}}),{fill:Qi(t,s),fillOpacity:ir,stroke:Ji(t,c)});return function(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}(Zi(t))&&function(e,t){var n=(t.height-16)/t.height,r=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.451,my:n}});x(e,r,{strokeWidth:2})}(e,t),n},"bpmn:DataObjectReference":_("bpmn:DataObject"),"bpmn:DataInput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=w("bpmn:DataObject")(e,t);return x(e,n,{strokeWidth:1}),r},"bpmn:DataOutput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=w("bpmn:DataObject")(e,t);return x(e,n,{strokeWidth:1,fill:"black"}),r},"bpmn:DataStoreReference":function(e,t){return x(e,i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.133}}),{strokeWidth:2,fill:Qi(t,s),fillOpacity:ir,stroke:Ji(t,c)})},"bpmn:BoundaryEvent":function(e,t){var n=Zi(t).cancelActivity,i={strokeWidth:1,fill:Qi(t,s),stroke:Ji(t,c)};n||(i.strokeDasharray="6",i.strokeLinecap="round");var r=F({},i,{fillOpacity:1}),o=F({},i,{fill:"none"}),a=w("bpmn:Event")(e,t,r);return v(e,t.width,t.height,nr,o),S(t,e),a},"bpmn:Group":function(e,t){return y(e,t.width,t.height,tr,{stroke:Ji(t,c),strokeWidth:1,strokeDasharray:"8,3,1,3",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 C(e,Ki(t),{box:n,fitBox:!0,style:F({},o.getExternalStyle(),{fill:Ji(t,c)})})}(e,t)},"bpmn:TextAnnotation":function(e,t){var n=y(e,t.width,t.height,0,0,{fill:"none",stroke:"none"});return x(e,i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:0}}),{stroke:Ji(t,c)}),C(e,Zi(t).text||"",{box:t,align:"left-top",padding:5,style:{fill:Ji(t,c)}}),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:1,fill:Qi(t,s),stroke:Ji(t,c)})},SubProcessMarker:function(e,t){en(y(e,14,14,0,{strokeWidth:1,fill:Qi(t,s),stroke:Ji(t,c)}),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:Qi(t,s),stroke:Ji(t,c)})},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:Qi(t,s),stroke:Ji(t,c)})},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:Qi(t,s),stroke:Ji(t,c)})},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:Qi(t,s),stroke:Ji(t,c)})},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,fill:Qi(t,s),stroke:Ji(t,c),strokeLinecap:"round",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:Ji(t,c),stroke:Ji(t,c)})}};function k(e,t,n){var i,r=Zi(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){w(n)(e,t,i)}),r.isForCompensation&&w("CompensationMarker")(e,t,i),"bpmn:AdHocSubProcess"===r.$type&&w("AdhocMarker")(e,t,i);var a=r.loopCharacteristics,s=a&&a.isSequential;a&&(void 0===s&&w("LoopMarker")(e,t,i),!1===s&&w("ParallelMarker")(e,t,i),!0===s&&w("SequentialMarker")(e,t,i))}this._drawPath=x}n(or,at),or.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],or.prototype.canRender=function(e){return Hi(e,"bpmn:BaseElement")},or.prototype.drawShape=function(e,t){var n=t.type;return(0,this.handlers[n])(e,t)},or.prototype.drawConnection=function(e,t){var n=t.type;return(0,this.handlers[n])(e,t)},or.prototype.getShapePath=function(e){return Hi(e,"bpmn:Event")?(n=(t=e).x+t.width/2,i=t.y+t.height/2,r=t.width/2,st([["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"]])):Hi(e,"bpmn:Activity")?function(e,t){var n=e.x,i=e.y,r=e.width,o=e.height;return st([["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,tr):Hi(e,"bpmn:Gateway")?function(e){var t=e.width/2,n=e.height/2;return st([["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 st([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])}(e);var t,n,i,r};var ar=0,sr={width:150,height:50};function cr(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 pr(e,t,n){for(var i,r=e.shift(),o=r;;){if((i=cr(o,n)).width=o?i.width:0," "===o||""===o||i.width<Math.round(t)||o.length<2)return ur(e,o,r,i);o=lr(o,i.width,t)}}function ur(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}}function lr(e,t,n){var i=Math.max(e.length*(n/t),1),r=function(e,t){var n,i=e.split(/(\s|-)/g),r=[],o=0;if(i.length>1)for(;n=i.shift();){if(!(n.length+o<t)){"-"===n&&r.pop();break}r.push(n),o+=n.length}return r.join("")}(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function hr(e){this._config=F({},{size:sr,padding:ar,style:{},align:"center-top"},e||{})}hr.prototype.createText=function(e,t){return this.layoutText(e,t).element},hr.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},hr.prototype.layoutText=function(e,t){var n=F({},this._config.size,t.box),i=F({},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)?F({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),a=t.fitBox||!1,s=function(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}(i),c=e.split(/\r?\n/g),p=[],u=n.width-o.left-o.right,l=Oe("text");for(_e(l,{x:0,y:0}),_e(l,i),ge(function(){var e=document.getElementById("helper-svg");return e||(_e(e=Oe("svg"),{id:"helper-svg",width:0,height:0,style:"visibility: hidden; position: fixed"}),document.body.appendChild(e)),e}(),l);c.length;)p.push(pr(c,u,l));"middle"===r.vertical&&(o.top=o.bottom=0);var d=E(p,function(e,t,n){return e+(s||t.height)},0)+o.top+o.bottom,f=E(p,function(e,t,n){return t.width>e?t.width:e},0),m=o.top;"middle"===r.vertical&&(m+=(n.height-d)/2),m-=(s||p[0].height)/4;var v=Oe("text");return _e(v,i),b(p,function(e){var t;switch(m+=s||e.height,r.horizontal){case"left":t=o.left;break;case"right":t=(a?f:u)-o.right-e.width;break;default:t=Math.max(((a?f:u)-e.width)/2+o.left,0)}var n=Oe("tspan");_e(n,{x:t,y:m}),n.textContent=e.text,ge(v,n)}),Pe(l),{dimensions:{width:f,height:d},element:v}};var dr=12,fr=1.2,mr=30;function vr(e){var t=F({fontFamily:"Arial, sans-serif",fontSize:dr,fontWeight:"normal",lineHeight:fr},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=F({},t,{fontSize:n},e&&e.externalStyle||{}),r=new hr({style:t});this.getExternalLabelBounds=function(e,t){var n=r.getDimensions(t,{box:{width:90,height:30,x:e.width/2+e.x,y:e.height/2+e.y},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(mr,Math.round(i.height))}},this.createText=function(e,t){return r.createText(e,t||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}vr.$inject=["config.textRenderer"];var yr=/\{([^}]+)\}/g,gr=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;var br={__init__:["bpmnRenderer"],bpmnRenderer:["type",or],textRenderer:["type",vr],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 0 15 l 0 -15 m 4 15 l 0 -15 m 4 15 l 0 -15 ",height:61,width:51,heightElements:[12],widthElements:[1,6,12,15]},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,a,s={};if(t.position){for(var c=t.containerHeight/r.height*t.yScaleFactor,p=t.containerWidth/r.width*t.xScaleFactor,u=0;u<r.heightElements.length;u++)s["y"+u]=r.heightElements[u]*c;for(var l=0;l<r.widthElements.length;l++)s["x"+l]=r.widthElements[l]*p}return o=r.d,a={mx:n,my:i,e:s},String(o).replace(yr,function(e,t){return function(e,t,n){var i=n;return t.replace(gr,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,a)})}}]};var xr={translate:["value",function(e,t){return t=t||{},e.replace(/{([^}]+)}/g,function(e,n){return t[n]||"{"+n+"}"})}]},Er={width:90,height:20},_r=15;function wr(e){return Hi(e,"bpmn:Event")||Hi(e,"bpmn:Gateway")||Hi(e,"bpmn:DataStoreReference")||Hi(e,"bpmn:DataObjectReference")||Hi(e,"bpmn:DataInput")||Hi(e,"bpmn:DataOutput")||Hi(e,"bpmn:SequenceFlow")||Hi(e,"bpmn:MessageFlow")||Hi(e,"bpmn:Group")}function Sr(e){return Rr(e.label)}function Cr(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)),a=r.x,s=r.y;return Math.abs(o)<Math.PI/2?s-=_r:a+=_r,{x:a,y:s}}function Tr(e){return e.waypoints?Cr(e.waypoints):Hi(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+Er.height/2}:{x:e.x+e.width/2,y:e.y+e.height+Er.height/2}}function Rr(e){return e&&!!e.labelTarget}function Ar(e,t){return e&&t?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):-1}function Pr(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=Ar(e,t);return Math.abs(r/o)<=i}var kr=2;function Mr(e,t){var n;return function(e,t){var n;n=l(e)?e:[e,t];var i=n.slice().shift();return _(n,function(e){return Math.abs(i.y-e.y)<=kr})}(n=l(e)?e:[e,t])?"h":!!function(e,t){var n;n=l(e)?e:[e,t];var i=n.slice().shift();return _(n,function(e){return Math.abs(i.x-e.x)<=kr})}(n)&&"v"}function Dr(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 Br(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}
24/**
25 * This file contains source code adapted from Snap.svg (licensed Apache-2.0).
26 *
27 * @see https://github.com/adobe-webplatform/Snap.svg/blob/master/src/path.js
28 */var Nr=/,?([a-z]),?/gi,Or=parseFloat,jr=Math,Lr=jr.PI,Ir=jr.min,zr=jr.max,Fr=jr.pow,$r=jr.abs,Hr=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/gi,Gr=/(-?\d*\.?\d*(?:e[-+]?\\d+)?)[\s]*,?[\s]*/gi,Wr=Array.isArray||function(e){return e instanceof Array};function Vr(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Ur(e){if("function"==typeof e||Object(e)!==e)return e;var t=new e.constructor;for(var n in e)Vr(e,n)&&(t[n]=Ur(e[n]));return t}function qr(e){var t=qr.ps=qr.ps||{};return t[e]?t[e].sleep=100:t[e]={sleep:100},setTimeout(function(){for(var n in t)Vr(t,n)&&n!=e&&(t[n].sleep--,!t[n].sleep&&delete t[n])}),t[e]}function Kr(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 Yr(){return this.join(",").replace(Nr,"$1")}function Xr(e){var t=Ur(e);return t.toString=Yr,t}function Zr(e,t,n,i,r,o,a,s,c){var p=1-c,u=Fr(p,3),l=Fr(p,2),h=c*c*c,d=u*t+3*l*c*i+3*p*c*c*o+h*s;return{x:io(u*e+3*l*c*n+3*p*c*c*r+h*a),y:io(d)}}function Qr(e){var t=function(e,t,n,i,r,o,a,s){for(var c,p,u,l,h,d,f,m,v=[],y=[[],[]],g=0;g<2;++g)if(0==g?(p=6*e-12*n+6*r,c=-3*e+9*n-9*r+3*a,u=3*n-3*e):(p=6*t-12*i+6*o,c=-3*t+9*i-9*o+3*s,u=3*i-3*t),$r(c)<1e-12){if($r(p)<1e-12)continue;0<(l=-u/p)&&l<1&&v.push(l)}else f=p*p-4*u*c,m=jr.sqrt(f),f<0||(0<(h=(-p+m)/(2*c))&&h<1&&v.push(h),0<(d=(-p-m)/(2*c))&&d<1&&v.push(d));var b,x=v.length,E=x;for(;x--;)l=v[x],b=1-l,y[0][x]=b*b*b*e+3*b*b*l*n+3*b*l*l*r+l*l*l*a,y[1][x]=b*b*b*t+3*b*b*l*i+3*b*l*l*o+l*l*l*s;return y[0][E]=e,y[1][E]=t,y[0][E+1]=a,y[1][E+1]=s,y[0].length=y[1].length=E+2,{x0:Ir.apply(0,y[0]),y0:Ir.apply(0,y[1]),x1:zr.apply(0,y[0]),y1:zr.apply(0,y[1])}}.apply(null,e);return Kr(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function Jr(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function eo(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 to(e,t,n,i,r,o,a,s,c){null==c&&(c=1);for(var p=(c=c>1?1:c<0?0:c)/2,u=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],l=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],h=0,d=0;d<12;d++){var f=p*u[d]+p,m=eo(f,e,n,r,a),v=eo(f,t,i,o,s),y=m*m+v*v;h+=l[d]*jr.sqrt(y)}return p*h}function no(e,t,n,i,r,o,a,s){if(!(zr(e,n)<Ir(r,a)||Ir(e,n)>zr(r,a)||zr(t,i)<Ir(o,s)||Ir(t,i)>zr(o,s))){var c=(e*i-t*n)*(o-s)-(t-i)*(r*s-o*a),p=(e-n)*(o-s)-(t-i)*(r-a);if(p){var u=io(((e*i-t*n)*(r-a)-(e-n)*(r*s-o*a))/p),l=io(c/p),h=+u.toFixed(2),d=+l.toFixed(2);if(!(h<+Ir(e,n).toFixed(2)||h>+zr(e,n).toFixed(2)||h<+Ir(r,a).toFixed(2)||h>+zr(r,a).toFixed(2)||d<+Ir(t,i).toFixed(2)||d>+zr(t,i).toFixed(2)||d<+Ir(o,s).toFixed(2)||d>+zr(o,s).toFixed(2)))return{x:u,y:l}}}}function io(e){return Math.round(1e11*e)/1e11}function ro(e,t,n){if(!function(e,t){return e=Kr(e),Jr(t=Kr(t),e.x,e.y)||Jr(t,e.x2,e.y)||Jr(t,e.x,e.y2)||Jr(t,e.x2,e.y2)||Jr(e,t.x,t.y)||Jr(e,t.x2,t.y)||Jr(e,t.x,t.y2)||Jr(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)}(Qr(e),Qr(t)))return n?0:[];for(var i=to.apply(0,e),r=to.apply(0,t),o=ao(e)?1:~~(i/5)||1,a=ao(t)?1:~~(r/5)||1,s=[],c=[],p={},u=n?0:[],l=0;l<o+1;l++){var h=Zr.apply(0,e.concat(l/o));s.push({x:h.x,y:h.y,t:l/o})}for(l=0;l<a+1;l++)h=Zr.apply(0,t.concat(l/a)),c.push({x:h.x,y:h.y,t:l/a});for(l=0;l<o;l++)for(var d=0;d<a;d++){var f,m=s[l],v=s[l+1],y=c[d],g=c[d+1],b=$r(v.x-m.x)<.01?"y":"x",x=$r(g.x-y.x)<.01?"y":"x",E=no(m.x,m.y,v.x,v.y,y.x,y.y,g.x,g.y);if(E){if(p[f=E.x.toFixed(9)+"#"+E.y.toFixed(9)])continue;p[f]=!0;var _=m.t+$r((E[b]-m[b])/(v[b]-m[b]))*(v.t-m.t),w=y.t+$r((E[x]-y[x])/(g[x]-y[x]))*(g.t-y.t);_>=0&&_<=1&&w>=0&&w<=1&&(n?u++:u.push({x:E.x,y:E.y,t1:_,t2:w}))}}return u}function oo(e){var t=qr(e);if(t.abs)return Xr(t.abs);if(Wr(e)&&Wr(e&&e[0])||(e=function(e){if(!e)return null;var t=qr(e);if(t.arr)return Ur(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 Wr(e)&&Wr(e[0])&&(i=Ur(e)),i.length||String(e).replace(Hr,function(e,t,r){var o=[],a=t.toLowerCase();for(r.replace(Gr,function(e,t){t&&o.push(+t)}),"m"==a&&o.length>2&&(i.push([t].concat(o.splice(0,2))),a="l",t="m"==t?"l":"L");o.length>=n[a]&&(i.push([t].concat(o.splice(0,n[a]))),n[a]););}),i.toString=qr.toString,t.arr=Ur(i),i}(e)),!e||!e.length)return[["M",0,0]];var n,i=[],r=0,o=0,a=0,s=0,c=0;"M"==e[0][0]&&(a=r=+e[0][1],s=o=+e[0][2],c++,i[0]=["M",r,o]);for(var p,u,l=c,h=e.length;l<h;l++){if(i.push(p=[]),(n=(u=e[l])[0])!=n.toUpperCase())switch(p[0]=n.toUpperCase(),p[0]){case"A":p[1]=u[1],p[2]=u[2],p[3]=u[3],p[4]=u[4],p[5]=u[5],p[6]=+u[6]+r,p[7]=+u[7]+o;break;case"V":p[1]=+u[1]+o;break;case"H":p[1]=+u[1]+r;break;case"M":a=+u[1]+r,s=+u[2]+o;default:for(var d=1,f=u.length;d<f;d++)p[d]=+u[d]+(d%2?r:o)}else for(var m=0,v=u.length;m<v;m++)p[m]=u[m];switch(n=n.toUpperCase(),p[0]){case"Z":r=+a,o=+s;break;case"H":r=p[1];break;case"V":o=p[1];break;case"M":a=p[p.length-2],s=p[p.length-1];default:r=p[p.length-2],o=p[p.length-1]}}return i.toString=Yr,t.abs=Xr(i),i}function ao(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function so(e,t,n,i){return[e,t,n,i,n,i]}function co(e,t,n,i,r,o){return[1/3*e+2/3*n,1/3*t+2/3*i,1/3*r+2/3*n,1/3*o+2/3*i,r,o]}function po(e,t,n,i,r,o,a,s,c,p){var u,l,h=120*Lr/180,d=Lr/180*(+r||0),f=[],m=(l=function(e,t,n){return{x:e*jr.cos(n)-t*jr.sin(n),y:e*jr.sin(n)+t*jr.cos(n)}},function e(){var t=Array.prototype.slice.call(arguments,0),n=t.join("␀"),i=e.cache=e.cache||{},r=e.count=e.count||[];return Vr(i,n)?(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])}(r,n),i[n]):(r.length>=1e3&&delete i[r.shift()],r.push(n),i[n]=l.apply(0,t),i[n])});if(p)S=p[0],C=p[1],_=p[2],w=p[3];else{e=(u=m(e,t,-d)).x,t=u.y;var v=(e-(s=(u=m(s,c,-d)).x))/2,y=(t-(c=u.y))/2,g=v*v/(n*n)+y*y/(i*i);g>1&&(n*=g=jr.sqrt(g),i*=g);var b=n*n,x=i*i,E=(o==a?-1:1)*jr.sqrt($r((b*x-b*y*y-x*v*v)/(b*y*y+x*v*v))),_=E*n*y/i+(e+s)/2,w=E*-i*v/n+(t+c)/2,S=jr.asin(((t-w)/i).toFixed(9)),C=jr.asin(((c-w)/i).toFixed(9));(S=e<_?Lr-S:S)<0&&(S=2*Lr+S),(C=s<_?Lr-C:C)<0&&(C=2*Lr+C),a&&S>C&&(S-=2*Lr),!a&&C>S&&(C-=2*Lr)}var T=C-S;if($r(T)>h){var R=C,A=s,P=c;C=S+h*(a&&C>S?1:-1),f=po(s=_+n*jr.cos(C),c=w+i*jr.sin(C),n,i,r,0,a,A,P,[C,R,_,w])}T=C-S;var k=jr.cos(S),M=jr.sin(S),D=jr.cos(C),B=jr.sin(C),N=jr.tan(T/4),O=4/3*n*N,j=4/3*i*N,L=[e,t],I=[e+O*M,t-j*k],z=[s+O*B,c-j*D],F=[s,c];if(I[0]=2*L[0]-I[0],I[1]=2*L[1]-I[1],p)return[I,z,F].concat(f);for(var $=[],H=0,G=(f=[I,z,F].concat(f).join().split(",")).length;H<G;H++)$[H]=H%2?m(f[H-1],f[H],d).y:m(f[H],f[H+1],d).x;return $}function uo(e){var t=qr(e);if(t.curve)return Xr(t.curve);for(var n=oo(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(po.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(co(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(co(t.x,t.y,e[1],e[2],e[3],e[4]));break;case"L":e=["C"].concat(so(t.x,t.y,e[1],e[2]));break;case"H":e=["C"].concat(so(t.x,t.y,e[1],t.y));break;case"V":e=["C"].concat(so(t.x,t.y,t.x,e[1]));break;case"Z":e=["C"].concat(so(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;)a[t]="A",e.splice(t++,0,["C"].concat(i.splice(0,6)));e.splice(t,1),u=n.length}},a=[],s="",c="",p=0,u=n.length;p<u;p++){n[p]&&(s=n[p][0]),"C"!=s&&(a[p]=s,p&&(c=a[p-1])),n[p]=r(n[p],i,c),"A"!=a[p]&&"C"==s&&(a[p]="C"),o(n,p);var l=n[p],h=l.length;i.x=l[h-2],i.y=l[h-1],i.bx=Or(l[h-4])||i.x,i.by=Or(l[h-3])||i.y}return t.curve=Xr(n),n}var lo=function(e,t,n){e=uo(e),t=uo(t);for(var i,r,o,a,s,c,p,u,l,h,d=n?0:[],f=0,m=e.length;f<m;f++){var v=e[f];if("M"==v[0])i=s=v[1],r=c=v[2];else{"C"==v[0]?(l=[i,r].concat(v.slice(1)),i=l[6],r=l[7]):(l=[i,r,i,r,s,c,s,c],i=s,r=c);for(var y=0,g=t.length;y<g;y++){var b=t[y];if("M"==b[0])o=p=b[1],a=u=b[2];else{"C"==b[0]?(h=[o,a].concat(b.slice(1)),o=h[6],a=h[7]):(h=[o,a,o,a,p,u,p,u],o=p,a=u);var x=ro(l,h,n);if(n)d+=x;else{for(var E=0,_=x.length;E<_;E++)x[E].segment1=f,x[E].segment2=y,x[E].bez1=l,x[E].bez2=h;d=d.concat(x)}}}}}return d};function ho(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function fo(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function mo(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function vo(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function yo(e){return fo({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function go(e,t,n){h(n=n||0)||(n={x:n,y:n});var i=mo(e),r=mo(t),o=i.bottom+n.y<=r.top,a=i.left-n.x>=r.right,s=i.top-n.y>=r.bottom,c=o?"top":s?"bottom":null,p=i.right+n.x<=r.left?"left":a?"right":null;return p&&c?c+"-"+p:p||c||"intersect"}function bo(e,t,n){var i=lo(e,t);return 1===i.length?fo(i[0]):2===i.length&&Ar(i[0],i[1])<1?fo(i[0]):i.length>1?fo((i=M(i,function(e){var t=Math.floor(100*e.t2)||1;return t=((t=100-t)<10?"0":"")+t,e.segment2+"#"+t}))[n?0:i.length-1]):null}function xo(e,t){return F({id:e.id,type:e.$type,businessObject:e},t)}function Eo(e,t,n){var i=e.di.waypoint;return!i||i.length<2?[yo(t),yo(n)]:i.map(function(e){return{x:e.x,y:e.y}})}function _o(e,t,n,i){return new Error(e("element {element} referenced by {referenced}#{property} not yet drawn",{element:Ti(n),referenced:Ti(t),property:i}))}function wo(e,t,n,i,r,o){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._translate=r,this._textRenderer=o}wo.$inject=["eventBus","canvas","elementFactory","elementRegistry","translate","textRenderer"],wo.prototype.add=function(e,t){var n,i,r,o,a,s,c,p=e.di,u=this._translate;if(Hi(p,"bpmndi:BPMNPlane"))n=this._elementFactory.createRoot(xo(e)),this._canvas.setRootElement(n);else if(Hi(p,"bpmndi:BPMNShape")){var l=!Wi(e),h=function(e){return Hi(e,"bpmn:Group")}(e);i=t&&(t.hidden||t.collapsed);var d=e.di.bounds;n=this._elementFactory.createShape(xo(e,{collapsed:l,hidden:i,x:Math.round(d.x),y:Math.round(d.y),width:Math.round(d.width),height:Math.round(d.height),isFrame:h})),Hi(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,n),Hi(e,"bpmn:Lane")&&(r=0),Hi(e,"bpmn:DataStoreReference")&&(o=t,a=yo(d),s=a.x,c=a.y,s>=o.x&&s<=o.x+o.width&&c>=o.y&&c<=o.y+o.height||(t=this._canvas.getRootElement())),this._canvas.addShape(n,t,r)}else{if(!Hi(p,"bpmndi:BPMNEdge"))throw new Error(u("unknown di {di} for element {semantic}",{di:Ti(p),semantic:Ti(e)}));var f=this._getSource(e),m=this._getTarget(e);i=t&&(t.hidden||t.collapsed),n=this._elementFactory.createConnection(xo(e,{hidden:i,source:f,target:m,waypoints:Eo(e,f,m)})),Hi(e,"bpmn:DataAssociation")&&(t=null),Hi(e,"bpmn:SequenceFlow")&&(r=0),this._canvas.addConnection(n,t,r)}return wr(e)&&Ki(n)&&this.addLabel(e,n),this._eventBus.fire("bpmnElement.added",{element:n}),n},wo.prototype._attachBoundary=function(e,t){var n=this._translate,i=e.attachedToRef;if(!i)throw new Error(n("missing {semantic}#attachedToRef",{semantic:Ti(e)}));var r=this._elementRegistry.get(i.id),o=r&&r.attachers;if(!r)throw _o(n,e,i,"attachedToRef");t.host=r,o||(r.attachers=o=[]),-1===o.indexOf(t)&&o.push(t)},wo.prototype.addLabel=function(e,t){var n,i,r;return n=function(e,t){var n,i,r,o=e.di.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(Er.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=Tr(t),i=Er),F({x:n.x-i.width/2,y:n.y-i.height/2},i)}(e,t),(i=Ki(t))&&(n=this._textRenderer.getExternalLabelBounds(n,i)),r=this._elementFactory.createLabel(xo(e,{id:e.id+"_label",labelTarget:t,type:"label",hidden:t.hidden||!Ki(t),x:Math.round(n.x),y:Math.round(n.y),width:Math.round(n.width),height:Math.round(n.height)})),this._canvas.addShape(r,t.parent)},wo.prototype._getEnd=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?_o(o,e,i,t+"Ref"):new Error(o("{semantic}#{side} Ref not specified",{semantic:Ti(e),side:t}))},wo.prototype._getSource=function(e){return this._getEnd(e,"source")},wo.prototype._getTarget=function(e){return this._getEnd(e,"target")},wo.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};var So={__depends__:[br,{__depends__:[xr],bpmnImporter:["type",wo]}]};function Co(e){e&&"function"==typeof e.stopPropagation&&e.stopPropagation()}function To(e){return e.originalEvent||e.srcEvent}function Ro(e,t){Co(e),Co(To(e))}function Ao(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 Po(e){return!(To(e)||e).button}function ko(e){var t=To(e)||e;return!!Po(e)&&(/mac/i.test(navigator.platform)?t.metaKey:t.ctrlKey)}function Mo(e){return!0}var Do=500;function Bo(e,t,n){var i=this;function r(n,i,r){var o,a;(function(e,t){return!(c[e]||Po)(t)})(n,i)||(r?a=t.getGraphics(r):(o=i.delegateTarget||i.target)&&(a=o,r=t.get(a)),a&&r&&!1===e.fire(n,{element:r,gfx:a,originalEvent:i})&&(i.stopPropagation(),i.preventDefault()))}var o={};function a(e){return o[e]}var s={click:"element.click",contextmenu:"element.contextmenu",dblclick:"element.dblclick",mousedown:"element.mousedown",mousemove:"element.mousemove",mouseover:"element.hover",mouseout:"element.out",mouseup:"element.mouseup"},c={"element.contextmenu":Mo};var p="svg, .djs-element";function u(e,t,n,i){var a=o[n]=function(e){r(n,e)};i&&(c[n]=i),a.$delegate=ue.bind(e,p,t,a)}function l(e,t,n){var i=a(n);i&&ue.unbind(e,t,i.$delegate)}e.on("canvas.destroy",function(e){var t;t=e.svg,b(s,function(e,n){l(t,n,e)})}),e.on("canvas.init",function(e){var t;t=e.svg,b(s,function(e,n){u(t,n,e)})}),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"],Do,function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.updateHit",{element:n,gfx:i})}),e.on("interactionEvents.createHit",Do,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 h=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:h};function m(e,t){return t=F({stroke:"white",strokeWidth:15},t||{}),n.cls(e,["no-fill","no-border"],t)}function v(e,t){var n=f[t];if(!n)throw new Error("invalid hit type <"+t+">");return _e(e,n),e}function y(e,t){ge(e,t)}this.removeHits=function(e){b(me(".djs-hit",e),Pe)},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=pt(t);return v(n,"stroke"),y(e,n),n},this.createBoxHit=function(e,t,n){n=F({x:0,y:0},n);var i=Oe("rect");return v(i,t),_e(i,n),y(e,i),i},this.updateDefaultHit=function(e,t){var n=fe(".djs-hit",t);if(n)return e.waypoints?function(e,t){_e(e,{points:ct(t)})}(n,e.waypoints):_e(n,{width:e.width,height:e.height}),n},this.fire=r,this.triggerMouseEvent=function(e,t,n){var i=s[e];if(!i)throw new Error("unmapped DOM event name <"+e+">");return r(i,t,n)},this.mouseHandler=a,this.registerEvent=u,this.unregisterEvent=l}Bo.$inject=["eventBus","elementRegistry","styles"];var No={__init__:["interactionEvents"],interactionEvents:["type",Bo]},Oo=500;function jo(e,t,n){this.offset=6;var i=t.cls("djs-outline",["no-fill"]),r=this;function o(e,t){var n=Oe("rect");return _e(n,F({x:10,y:10,width:100,height:100},i)),ge(e,n),n}e.on(["shape.added","shape.changed"],Oo,function(e){var t=e.element,n=e.gfx,i=fe(".djs-outline",n);i||(i=o(n)),r.updateShapeOutline(i,t)}),e.on(["connection.added","connection.changed"],function(e){var t=e.element,n=e.gfx,i=fe(".djs-outline",n);i||(i=o(n)),r.updateConnectionOutline(i,t)})}jo.prototype.updateShapeOutline=function(e,t){_e(e,{x:-this.offset,y:-this.offset,width:t.width+2*this.offset,height:t.height+2*this.offset})},jo.prototype.updateConnectionOutline=function(e,t){var n=ft(t);_e(e,{x:n.x-this.offset,y:n.y-this.offset,width:n.width+2*this.offset,height:n.height+2*this.offset})},jo.$inject=["eventBus","styles","elementRegistry"];var Lo={__init__:["outline"],outline:["type",jo]};function Io(e){this._eventBus=e,this._selectedElements=[];var t=this;e.on(["shape.remove","connection.remove"],function(e){var n=e.element;t.deselect(n)}),e.on(["diagram.clear"],function(e){t.select(null)})}Io.$inject=["eventBus"],Io.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})}},Io.prototype.get=function(){return this._selectedElements},Io.prototype.isSelected=function(e){return-1!==this._selectedElements.indexOf(e)},Io.prototype.select=function(e,t){var n=this._selectedElements,i=n.slice();l(e)||(e=e?[e]:[]),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 zo="hover",Fo="selected";function $o(e,t,n,i){function r(e,n){t.addMarker(e,n)}function o(e,n){t.removeMarker(e,n)}this._multiSelectionBox=null,e.on("element.hover",function(e){r(e.element,zo)}),e.on("element.out",function(e){o(e.element,zo)}),e.on("selection.changed",function(e){var t=e.oldSelection,n=e.newSelection;b(t,function(e){-1===n.indexOf(e)&&o(e,Fo)}),b(n,function(e){-1===t.indexOf(e)&&r(e,Fo)})})}function Ho(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;l(o)?t.select(o):t.select(r.filter(Go))}}),e.on("connect.end",500,function(e){e.context.canExecute&&e.context.hover&&t.select(e.context.hover)}),e.on("shape.move.end",500,function(e){var n=e.previousSelection||[],r=i.get(e.context.shape.id);y(n,function(e){return r.id===e.id})||t.select(r)}),e.on("element.click",function(e){var i=e.element;i===n.getRootElement()&&(i=null);var r=t.isSelected(i),o=t.get().length>1,a=ko(e);if(r&&o)return a?t.deselect(i):t.select(i);r?t.deselect(i):t.select(i,a)})}function Go(e){return!e.hidden}$o.$inject=["eventBus","canvas","selection","styles"],Ho.$inject=["eventBus","selection","canvas","elementRegistry"];var Wo={__init__:["selectionVisuals","selectionBehavior"],__depends__:[No,Lo],selection:["type",Io],selectionVisuals:["type",$o],selectionBehavior:["type",Ho]};function Vo(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(1e9*Math.random())+"-"}Vo.prototype.next=function(){return this._prefix+ ++this._counter};var Uo=new Vo("ov");function qo(e,t,n,i){var r,o;this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=Uo,this._overlayDefaults=F({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=(r=n.getContainer(),o=le('<div class="djs-overlay-container" style="position: absolute; width: 0; height: 0;" />'),r.insertBefore(o,r.firstChild),o),this._init()}function Ko(e,t,n){F(e.style,{left:t+"px",top:n+"px"})}function Yo(e,t){e.style.display=!1===t?"none":""}function Xo(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(n){e.style[n+"transform"]=t})}qo.$inject=["config.overlays","eventBus","canvas","elementRegistry"],qo.prototype.get=function(e){if(m(e)&&(e={id:e}),m(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?g(t.overlays,D({type:e.type})):t.overlays.slice():[]}return e.type?g(this._overlays,D({type:e.type})):e.id?this._overlays[e.id]:null},qo.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=F({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},qo.prototype.remove=function(e){var t=this.get(e)||[];l(t)||(t=[t]);var n=this;b(t,function(e){var t=n._getOverlayContainer(e.element,!0);if(e&&(ve(e.html),ve(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)}})},qo.prototype.show=function(){Yo(this._overlayRoot)},qo.prototype.hide=function(){Yo(this._overlayRoot,!1)},qo.prototype.clear=function(){this._overlays={},this._overlayContainers=[],X(this._overlayRoot)},qo.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=ft(t);i=o.x,r=o.y}Ko(n,i,r),G(e.html,"data-container-id",t.id)},qo.prototype._updateOverlay=function(e){var t,n,i=e.position,r=e.htmlContainer,o=e.element,a=i.left,s=i.top;void 0!==i.right&&(t=o.waypoints?ft(o).width:o.width,a=-1*i.right+t);void 0!==i.bottom&&(n=o.waypoints?ft(o).height:o.height,s=-1*i.bottom+n);Ko(r,a||0,s||0)},qo.prototype._createOverlayContainer=function(e){var t=le('<div class="djs-overlays" style="position: absolute" />');this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},qo.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";Xo(this._overlayRoot,n)},qo.prototype._getOverlayContainer=function(e,t){var n=y(this._overlayContainers,function(t){return t.element===e});return n||t?n:this._createOverlayContainer(e)},qo.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)),m(o)&&(o=le(o)),n=this._getOverlayContainer(r),(t=le('<div class="djs-overlay" data-overlay-id="'+i+'" style="position: absolute">')).appendChild(o),e.type&&K(t).add("djs-overlay-"+e.type),e.htmlContainer=t,n.overlays.push(e),n.html.appendChild(t),this._overlays[i]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},qo.prototype._updateOverlayVisibilty=function(e,t){var n=e.show,i=n&&n.minZoom,r=n&&n.maxZoom,o=e.htmlContainer,a=!0;n&&((p(i)&&i>t.scale||p(r)&&r<t.scale)&&(a=!1),Yo(o,a)),this._updateOverlayScale(e,t)},qo.prototype._updateOverlayScale=function(e,t){var n,i,r,o=e.scale,a=e.htmlContainer,s="";!0!==o&&(!1===o?(n=1,i=1):(n=o.min,i=o.max),p(n)&&t.scale<n&&(r=(1/t.scale||1)*n),p(i)&&t.scale>i&&(r=(1/t.scale||1)*i)),p(r)&&(s="scale("+r+","+r+")"),Xo(a,s)},qo.prototype._updateOverlaysVisibilty=function(e){var t=this;b(this._overlays,function(n){t._updateOverlayVisibilty(n,e)})},qo.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){ve(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&&K(n.html)[e.add?"add":"remove"](e.marker)}),e.on("diagram.clear",this.clear,this)};var Zo={__init__:["overlays"],overlays:["type",qo]};function Qo(e){Li.call(this,e)}function Jo(e){return!e.altKey&&(e.ctrlKey||e.metaKey)}function ea(e,t){return-1!==(e=l(e)?e:[e]).indexOf(t.key)||-1!==e.indexOf(t.keyCode)}function ta(e){return e.shiftKey}n(Qo,Li),Qo.prototype._modules=[So,xr,Wo,Zo],Qo.prototype._moddleExtensions={};function na(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()})}na.$inject=["config.keyboard","eventBus"],na.prototype._keydownHandler=function(e){this._keyHandler(e,"keyboard.keydown")},na.prototype._keyupHandler=function(e){this._keyHandler(e,"keyboard.keyup")},na.prototype._keyHandler=function(e,t){if(!function(e){return e&&(J(e,"input, textarea")||"true"===e.contentEditable)}(e.target)){var n={keyEvent:e};this._eventBus.fire(t||"keyboard.keydown",n)&&e.preventDefault()}},na.prototype.bind=function(e){this.unbind(),this._node=e,ce.bind(e,"keydown",this._keydownHandler,!0),ce.bind(e,"keyup",this._keyupHandler,!0),this._fire("bind")},na.prototype.getBinding=function(){return this._node},na.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),ce.unbind(e,"keydown",this._keydownHandler,!0),ce.unbind(e,"keyup",this._keyupHandler,!0)),this._node=null},na.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},na.prototype.addListener=function(e,t,n){f(e)&&(n=t,t=e,e=1e3),this._eventBus.on(n||"keyboard.keydown",e,t)},na.prototype.removeListener=function(e,t){this._eventBus.off(t||"keyboard.keydown",e)},na.prototype.hasModifier=function(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey},na.prototype.isCmd=Jo,na.prototype.isShift=ta,na.prototype.isKey=ea;var ia=500,ra=["c","C",67],oa=["v","V",86],aa=["y","Y",89],sa=["z","Z",90];function ca(e,t){var n=this;e.on("editorActions.init",ia,function(e){var i=e.editorActions;n.registerBindings(t,i)})}ca.$inject=["eventBus","keyboard"],ca.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}n("undo",function(e){var n=e.keyEvent;if(Jo(n)&&!ta(n)&&ea(sa,n))return t.trigger("undo"),!0}),n("redo",function(e){var n=e.keyEvent;if(Jo(n)&&(ea(aa,n)||ea(sa,n)&&ta(n)))return t.trigger("redo"),!0}),n("copy",function(e){var n=e.keyEvent;if(Jo(n)&&ea(ra,n))return t.trigger("copy"),!0}),n("paste",function(e){var n=e.keyEvent;if(Jo(n)&&ea(oa,n))return t.trigger("paste"),!0}),n("stepZoom",function(e){var n=e.keyEvent;if(ea(["+","Add"],n)&&Jo(n))return t.trigger("stepZoom",{value:1}),!0}),n("stepZoom",function(e){var n=e.keyEvent;if(ea(["-","Subtract"],n)&&Jo(n))return t.trigger("stepZoom",{value:-1}),!0}),n("zoom",function(e){var n=e.keyEvent;if(ea("0",n)&&Jo(n))return t.trigger("zoom",{value:1}),!0}),n("removeSelection",function(e){if(ea(["Delete","Del"],e.keyEvent))return t.trigger("removeSelection"),!0})};var pa={__init__:["keyboard","keyboardBindings"],keyboard:["type",na],keyboardBindings:["type",ca]},ua={moveSpeed:50,moveSpeedAccelerated:200};function la(e,t,n){var i=this;this._config=F({},ua,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,a=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:a,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})}}la.$inject=["config.keyboardMove","keyboard","canvas"];var ha={__depends__:[pa],__init__:["keyboardMove"],keyboardMove:["type",la]},da=/^djs-cursor-.*$/;function fa(e){var t=K(document.body);t.removeMatching(da),e&&t.add("djs-cursor-"+e)}function ma(){fa(null)}var va=5e3;function ya(e,t){function n(){return!1}return t=t||"element.click",e.once(t,va,n),function(){e.off(t,n)}}function ga(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function ba(e,t){return{x:e.x-t.x,y:e.y-t.y}}var xa=15;function Ea(e,t){var n;function i(i){var r,o=n.start,a=Ao(i),s=ba(a,o);(!n.dragging&&(r=s,Math.sqrt(Math.pow(r.x,2)+Math.pow(r.y,2))>xa)&&(n.dragging=!0,ya(e),fa("grab")),n.dragging)&&(s=ba(a,n.last||n.start),t.scroll({dx:s.x,dy:s.y}),n.last=a);i.preventDefault()}function r(e){ce.unbind(document,"mousemove",i),ce.unbind(document,"mouseup",r),n=null,ma()}e.on("element.mousedown",500,function(e){return function(e){if(ee(e.target,".djs-draggable"))return;if(e.button||e.ctrlKey||e.shiftKey||e.altKey)return;return n={start:Ao(e)},ce.bind(document,"mousemove",i),ce.bind(document,"mouseup",r),!0}(e.originalEvent)})}Ea.$inject=["eventBus","canvas"];var _a={__init__:["moveCanvas"],moveCanvas:["type",Ea]};function wa(e){return Math.log(e)/Math.log(10)}function Sa(e,t){var n=wa(e.min),i=wa(e.max);return(Math.abs(n)+Math.abs(i))/t}var Ca=Math.sign||function(e){return e>=0?1:-1},Ta={min:.2,max:4},Ra=.75;function Aa(e,t,n){e=e||{},this._enabled=!1,this._canvas=n,this._container=n._container,this._handleWheel=I(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||Ra;var i=this;t.on("canvas.init",function(t){i._init(!1!==e.enabled)})}Aa.$inject=["config.zoomScroll","eventBus","canvas"],Aa.prototype.scroll=function(e){this._canvas.scroll(e)},Aa.prototype.reset=function(){this._canvas.zoom("fit-viewport")},Aa.prototype.zoom=function(e,t){var n=Sa(Ta,20);this._totalDelta+=e,Math.abs(this._totalDelta)>.1&&(this._zoom(e,t,n),this._totalDelta=0)},Aa.prototype._handleWheel=function(e){if(!ee(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 a=t.getBoundingClientRect(),s={x:e.clientX-a.left,y:e.clientY-a.top};n=Math.sqrt(Math.pow(e.deltaY,2)+Math.pow(e.deltaX,2))*Ca(e.deltaY)*o,this.zoom(n,s)}else n=r?{dx:o*e.deltaY,dy:0}:{dx:o*e.deltaX,dy:o*e.deltaY},this.scroll(n)}},Aa.prototype.stepZoom=function(e,t){var n=Sa(Ta,10);this._zoom(e,t,n)},Aa.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=wa(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s,c,p=Math.pow(10,a);i.zoom((s=Ta,c=p,Math.max(s.min,Math.min(s.max,c))),t)},Aa.prototype.toggle=function(e){var t=this._container,n=this._handleWheel,i=this._enabled;return void 0===e&&(e=!i),i!==e&&ce[e?"bind":"unbind"](t,"wheel",n,!1),this._enabled=e,e},Aa.prototype._init=function(e){this.toggle(e)};var Pa={__init__:["zoomScroll"],zoomScroll:["type",Aa]};function ka(e){Qo.call(this,e)}n(ka,Qo),ka.prototype._navigationModules=[ha,_a,Pa],ka.prototype._modules=[].concat(Qo.prototype._modules,ka.prototype._navigationModules);var Ma=t(function(e){
29/*! Hammer.JS - v2.0.7 - 2016-04-22
30 * http://hammerjs.github.io/
31 *
32 * Copyright (c) 2016 Jorik Tangelder;
33 * Licensed under the MIT license */
34!function(t,n,i,r){var o,a=["","webkit","Moz","MS","ms","o"],s=n.createElement("div"),c="function",p=Math.round,u=Math.abs,l=Date.now;function h(e,t,n){return setTimeout(b(e,n),t)}function d(e,t,n){return!!Array.isArray(e)&&(f(e,n[t],n),!0)}function f(e,t,n){var i;if(e)if(e.forEach)e.forEach(t,n);else if(e.length!==r)for(i=0;i<e.length;)t.call(n,e[i],i,e),i++;else for(i in e)e.hasOwnProperty(i)&&t.call(n,e[i],i,e)}function m(e,n,i){var r="DEPRECATED METHOD: "+n+"\n"+i+" AT \n";return function(){var n=new Error("get-stack-trace"),i=n&&n.stack?n.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",o=t.console&&(t.console.warn||t.console.log);return o&&o.call(t.console,r,i),e.apply(this,arguments)}}o="function"!=typeof Object.assign?function(e){if(e===r||null===e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),n=1;n<arguments.length;n++){var i=arguments[n];if(i!==r&&null!==i)for(var o in i)i.hasOwnProperty(o)&&(t[o]=i[o])}return t}:Object.assign;var v=m(function(e,t,n){for(var i=Object.keys(t),o=0;o<i.length;)(!n||n&&e[i[o]]===r)&&(e[i[o]]=t[i[o]]),o++;return e},"extend","Use `assign`."),y=m(function(e,t){return v(e,t,!0)},"merge","Use `assign`.");function g(e,t,n){var i,r=t.prototype;(i=e.prototype=Object.create(r)).constructor=e,i._super=r,n&&o(i,n)}function b(e,t){return function(){return e.apply(t,arguments)}}function x(e,t){return typeof e==c?e.apply(t&&t[0]||r,t):e}function E(e,t){return e===r?t:e}function _(e,t,n){f(T(t),function(t){e.addEventListener(t,n,!1)})}function w(e,t,n){f(T(t),function(t){e.removeEventListener(t,n,!1)})}function S(e,t){for(;e;){if(e==t)return!0;e=e.parentNode}return!1}function C(e,t){return e.indexOf(t)>-1}function T(e){return e.trim().split(/\s+/g)}function R(e,t,n){if(e.indexOf&&!n)return e.indexOf(t);for(var i=0;i<e.length;){if(n&&e[i][n]==t||!n&&e[i]===t)return i;i++}return-1}function A(e){return Array.prototype.slice.call(e,0)}function P(e,t,n){for(var i=[],r=[],o=0;o<e.length;){var a=t?e[o][t]:e[o];R(r,a)<0&&i.push(e[o]),r[o]=a,o++}return n&&(i=t?i.sort(function(e,n){return e[t]>n[t]}):i.sort()),i}function k(e,t){for(var n,i,o=t[0].toUpperCase()+t.slice(1),s=0;s<a.length;){if((i=(n=a[s])?n+o:t)in e)return i;s++}return r}var M=1;function D(e){var n=e.ownerDocument||e;return n.defaultView||n.parentWindow||t}var B="ontouchstart"in t,N=k(t,"PointerEvent")!==r,O=B&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),j=25,L=1,I=2,z=4,F=8,$=1,H=2,G=4,W=8,V=16,U=H|G,q=W|V,K=U|q,Y=["x","y"],X=["clientX","clientY"];function Z(e,t){var n=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){x(e.options.enable,[e])&&n.handler(t)},this.init()}function Q(e,t,n){var i=n.pointers.length,o=n.changedPointers.length,a=t&L&&i-o==0,s=t&(z|F)&&i-o==0;n.isFirst=!!a,n.isFinal=!!s,a&&(e.session={}),n.eventType=t,function(e,t){var n=e.session,i=t.pointers,o=i.length;n.firstInput||(n.firstInput=J(t));o>1&&!n.firstMultiple?n.firstMultiple=J(t):1===o&&(n.firstMultiple=!1);var a=n.firstInput,s=n.firstMultiple,c=s?s.center:a.center,p=t.center=ee(i);t.timeStamp=l(),t.deltaTime=t.timeStamp-a.timeStamp,t.angle=re(c,p),t.distance=ie(c,p),function(e,t){var n=t.center,i=e.offsetDelta||{},r=e.prevDelta||{},o=e.prevInput||{};t.eventType!==L&&o.eventType!==z||(r=e.prevDelta={x:o.deltaX||0,y:o.deltaY||0},i=e.offsetDelta={x:n.x,y:n.y});t.deltaX=r.x+(n.x-i.x),t.deltaY=r.y+(n.y-i.y)}(n,t),t.offsetDirection=ne(t.deltaX,t.deltaY);var h=te(t.deltaTime,t.deltaX,t.deltaY);t.overallVelocityX=h.x,t.overallVelocityY=h.y,t.overallVelocity=u(h.x)>u(h.y)?h.x:h.y,t.scale=s?(d=s.pointers,f=i,ie(f[0],f[1],X)/ie(d[0],d[1],X)):1,t.rotation=s?function(e,t){return re(t[1],t[0],X)+re(e[1],e[0],X)}(s.pointers,i):0,t.maxPointers=n.prevInput?t.pointers.length>n.prevInput.maxPointers?t.pointers.length:n.prevInput.maxPointers:t.pointers.length,function(e,t){var n,i,o,a,s=e.lastInterval||t,c=t.timeStamp-s.timeStamp;if(t.eventType!=F&&(c>j||s.velocity===r)){var p=t.deltaX-s.deltaX,l=t.deltaY-s.deltaY,h=te(c,p,l);i=h.x,o=h.y,n=u(h.x)>u(h.y)?h.x:h.y,a=ne(p,l),e.lastInterval=t}else n=s.velocity,i=s.velocityX,o=s.velocityY,a=s.direction;t.velocity=n,t.velocityX=i,t.velocityY=o,t.direction=a}(n,t);var d,f;var m=e.element;S(t.srcEvent.target,m)&&(m=t.srcEvent.target);t.target=m}(e,n),e.emit("hammer.input",n),e.recognize(n),e.session.prevInput=n}function J(e){for(var t=[],n=0;n<e.pointers.length;)t[n]={clientX:p(e.pointers[n].clientX),clientY:p(e.pointers[n].clientY)},n++;return{timeStamp:l(),pointers:t,center:ee(t),deltaX:e.deltaX,deltaY:e.deltaY}}function ee(e){var t=e.length;if(1===t)return{x:p(e[0].clientX),y:p(e[0].clientY)};for(var n=0,i=0,r=0;r<t;)n+=e[r].clientX,i+=e[r].clientY,r++;return{x:p(n/t),y:p(i/t)}}function te(e,t,n){return{x:t/e||0,y:n/e||0}}function ne(e,t){return e===t?$:u(e)>=u(t)?e<0?H:G:t<0?W:V}function ie(e,t,n){n||(n=Y);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return Math.sqrt(i*i+r*r)}function re(e,t,n){n||(n=Y);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return 180*Math.atan2(r,i)/Math.PI}Z.prototype={handler:function(){},init:function(){this.evEl&&_(this.element,this.evEl,this.domHandler),this.evTarget&&_(this.target,this.evTarget,this.domHandler),this.evWin&&_(D(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&w(this.element,this.evEl,this.domHandler),this.evTarget&&w(this.target,this.evTarget,this.domHandler),this.evWin&&w(D(this.element),this.evWin,this.domHandler)}};var oe={mousedown:L,mousemove:I,mouseup:z},ae="mousedown",se="mousemove mouseup";function ce(){this.evEl=ae,this.evWin=se,this.pressed=!1,Z.apply(this,arguments)}g(ce,Z,{handler:function(e){var t=oe[e.type];t&L&&0===e.button&&(this.pressed=!0),t&I&&1!==e.which&&(t=z),this.pressed&&(t&z&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:"mouse",srcEvent:e}))}});var pe={pointerdown:L,pointermove:I,pointerup:z,pointercancel:F,pointerout:F},ue={2:"touch",3:"pen",4:"mouse",5:"kinect"},le="pointerdown",he="pointermove pointerup pointercancel";function de(){this.evEl=le,this.evWin=he,Z.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(le="MSPointerDown",he="MSPointerMove MSPointerUp MSPointerCancel"),g(de,Z,{handler:function(e){var t=this.store,n=!1,i=e.type.toLowerCase().replace("ms",""),r=pe[i],o=ue[e.pointerType]||e.pointerType,a="touch"==o,s=R(t,e.pointerId,"pointerId");r&L&&(0===e.button||a)?s<0&&(t.push(e),s=t.length-1):r&(z|F)&&(n=!0),s<0||(t[s]=e,this.callback(this.manager,r,{pointers:t,changedPointers:[e],pointerType:o,srcEvent:e}),n&&t.splice(s,1))}});var fe={touchstart:L,touchmove:I,touchend:z,touchcancel:F},me="touchstart",ve="touchstart touchmove touchend touchcancel";function ye(){this.evTarget=me,this.evWin=ve,this.started=!1,Z.apply(this,arguments)}g(ye,Z,{handler:function(e){var t=fe[e.type];if(t===L&&(this.started=!0),this.started){var n=function(e,t){var n=A(e.touches),i=A(e.changedTouches);t&(z|F)&&(n=P(n.concat(i),"identifier",!0));return[n,i]}.call(this,e,t);t&(z|F)&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:"touch",srcEvent:e})}}});var ge={touchstart:L,touchmove:I,touchend:z,touchcancel:F},be="touchstart touchmove touchend touchcancel";function xe(){this.evTarget=be,this.targetIds={},Z.apply(this,arguments)}g(xe,Z,{handler:function(e){var t=ge[e.type],n=function(e,t){var n=A(e.touches),i=this.targetIds;if(t&(L|I)&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,o,a=A(e.changedTouches),s=[],c=this.target;if(o=n.filter(function(e){return S(e.target,c)}),t===L)for(r=0;r<o.length;)i[o[r].identifier]=!0,r++;r=0;for(;r<a.length;)i[a[r].identifier]&&s.push(a[r]),t&(z|F)&&delete i[a[r].identifier],r++;if(!s.length)return;return[P(o.concat(s),"identifier",!0),s]}.call(this,e,t);n&&this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:"touch",srcEvent:e})}});var Ee=2500,_e=25;function we(){Z.apply(this,arguments);var e=b(this.handler,this);this.touch=new xe(this.manager,e),this.mouse=new ce(this.manager,e),this.primaryTouch=null,this.lastTouches=[]}function Se(e){var t=e.changedPointers[0];if(t.identifier===this.primaryTouch){var n={x:t.clientX,y:t.clientY};this.lastTouches.push(n);var i=this.lastTouches;setTimeout(function(){var e=i.indexOf(n);e>-1&&i.splice(e,1)},Ee)}}g(we,Z,{handler:function(e,t,n){var i="touch"==n.pointerType,r="mouse"==n.pointerType;if(!(r&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(i)(function(e,t){e&L?(this.primaryTouch=t.changedPointers[0].identifier,Se.call(this,t)):e&(z|F)&&Se.call(this,t)}).call(this,t,n);else if(r&&function(e){for(var t=e.srcEvent.clientX,n=e.srcEvent.clientY,i=0;i<this.lastTouches.length;i++){var r=this.lastTouches[i],o=Math.abs(t-r.x),a=Math.abs(n-r.y);if(o<=_e&&a<=_e)return!0}return!1}.call(this,n))return;this.callback(e,t,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var Ce=k(s.style,"touchAction"),Te=Ce!==r,Re="auto",Ae="manipulation",Pe="none",ke="pan-x",Me="pan-y",De=function(){if(!Te)return!1;var e={},n=t.CSS&&t.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(i){e[i]=!n||t.CSS.supports("touch-action",i)}),e}();function Be(e,t){this.manager=e,this.set(t)}Be.prototype={set:function(e){"compute"==e&&(e=this.compute()),Te&&this.manager.element.style&&De[e]&&(this.manager.element.style[Ce]=e),this.actions=e.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return f(this.manager.recognizers,function(t){x(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))}),function(e){if(C(e,Pe))return Pe;var t=C(e,ke),n=C(e,Me);if(t&&n)return Pe;if(t||n)return t?ke:Me;if(C(e,Ae))return Ae;return Re}(e.join(" "))},preventDefaults:function(e){var t=e.srcEvent,n=e.offsetDirection;if(this.manager.session.prevented)t.preventDefault();else{var i=this.actions,r=C(i,Pe)&&!De[Pe],o=C(i,Me)&&!De[Me],a=C(i,ke)&&!De[ke];if(r){var s=1===e.pointers.length,c=e.distance<2,p=e.deltaTime<250;if(s&&c&&p)return}if(!a||!o)return r||o&&n&U||a&&n&q?this.preventSrc(t):void 0}},preventSrc:function(e){this.manager.session.prevented=!0,e.preventDefault()}};var Ne=1,Oe=2,je=4,Le=8,Ie=Le,ze=16;function Fe(e){this.options=o({},this.defaults,e||{}),this.id=M++,this.manager=null,this.options.enable=E(this.options.enable,!0),this.state=Ne,this.simultaneous={},this.requireFail=[]}function $e(e){return e&ze?"cancel":e&Le?"end":e&je?"move":e&Oe?"start":""}function He(e){return e==V?"down":e==W?"up":e==H?"left":e==G?"right":""}function Ge(e,t){var n=t.manager;return n?n.get(e):e}function We(){Fe.apply(this,arguments)}function Ve(){We.apply(this,arguments),this.pX=null,this.pY=null}function Ue(){We.apply(this,arguments)}function qe(){Fe.apply(this,arguments),this._timer=null,this._input=null}function Ke(){We.apply(this,arguments)}function Ye(){We.apply(this,arguments)}function Xe(){Fe.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Ze(e,t){return(t=t||{}).recognizers=E(t.recognizers,Ze.defaults.preset),new Qe(e,t)}Fe.prototype={defaults:{},set:function(e){return o(this.options,e),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(e){if(d(e,"recognizeWith",this))return this;var t=this.simultaneous;return t[(e=Ge(e,this)).id]||(t[e.id]=e,e.recognizeWith(this)),this},dropRecognizeWith:function(e){return d(e,"dropRecognizeWith",this)?this:(e=Ge(e,this),delete this.simultaneous[e.id],this)},requireFailure:function(e){if(d(e,"requireFailure",this))return this;var t=this.requireFail;return-1===R(t,e=Ge(e,this))&&(t.push(e),e.requireFailure(this)),this},dropRequireFailure:function(e){if(d(e,"dropRequireFailure",this))return this;e=Ge(e,this);var t=R(this.requireFail,e);return t>-1&&this.requireFail.splice(t,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(e){return!!this.simultaneous[e.id]},emit:function(e){var t=this,n=this.state;function i(n){t.manager.emit(n,e)}n<Le&&i(t.options.event+$e(n)),i(t.options.event),e.additionalEvent&&i(e.additionalEvent),n>=Le&&i(t.options.event+$e(n))},tryEmit:function(e){if(this.canEmit())return this.emit(e);this.state=32},canEmit:function(){for(var e=0;e<this.requireFail.length;){if(!(this.requireFail[e].state&(32|Ne)))return!1;e++}return!0},recognize:function(e){var t=o({},e);if(!x(this.options.enable,[this,t]))return this.reset(),void(this.state=32);this.state&(Ie|ze|32)&&(this.state=Ne),this.state=this.process(t),this.state&(Oe|je|Le|ze)&&this.tryEmit(t)},process:function(e){},getTouchAction:function(){},reset:function(){}},g(We,Fe,{defaults:{pointers:1},attrTest:function(e){var t=this.options.pointers;return 0===t||e.pointers.length===t},process:function(e){var t=this.state,n=e.eventType,i=t&(Oe|je),r=this.attrTest(e);return i&&(n&F||!r)?t|ze:i||r?n&z?t|Le:t&Oe?t|je:Oe:32}}),g(Ve,We,{defaults:{event:"pan",threshold:10,pointers:1,direction:K},getTouchAction:function(){var e=this.options.direction,t=[];return e&U&&t.push(Me),e&q&&t.push(ke),t},directionTest:function(e){var t=this.options,n=!0,i=e.distance,r=e.direction,o=e.deltaX,a=e.deltaY;return r&t.direction||(t.direction&U?(r=0===o?$:o<0?H:G,n=o!=this.pX,i=Math.abs(e.deltaX)):(r=0===a?$:a<0?W:V,n=a!=this.pY,i=Math.abs(e.deltaY))),e.direction=r,n&&i>t.threshold&&r&t.direction},attrTest:function(e){return We.prototype.attrTest.call(this,e)&&(this.state&Oe||!(this.state&Oe)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=He(e.direction);t&&(e.additionalEvent=this.options.event+t),this._super.emit.call(this,e)}}),g(Ue,We,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[Pe]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||this.state&Oe)},emit:function(e){if(1!==e.scale){var t=e.scale<1?"in":"out";e.additionalEvent=this.options.event+t}this._super.emit.call(this,e)}}),g(qe,Fe,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[Re]},process:function(e){var t=this.options,n=e.pointers.length===t.pointers,i=e.distance<t.threshold,r=e.deltaTime>t.time;if(this._input=e,!i||!n||e.eventType&(z|F)&&!r)this.reset();else if(e.eventType&L)this.reset(),this._timer=h(function(){this.state=Ie,this.tryEmit()},t.time,this);else if(e.eventType&z)return Ie;return 32},reset:function(){clearTimeout(this._timer)},emit:function(e){this.state===Ie&&(e&&e.eventType&z?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=l(),this.manager.emit(this.options.event,this._input)))}}),g(Ke,We,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[Pe]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||this.state&Oe)}}),g(Ye,We,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:U|q,pointers:1},getTouchAction:function(){return Ve.prototype.getTouchAction.call(this)},attrTest:function(e){var t,n=this.options.direction;return n&(U|q)?t=e.overallVelocity:n&U?t=e.overallVelocityX:n&q&&(t=e.overallVelocityY),this._super.attrTest.call(this,e)&&n&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&u(t)>this.options.velocity&&e.eventType&z},emit:function(e){var t=He(e.offsetDirection);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),g(Xe,Fe,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[Ae]},process:function(e){var t=this.options,n=e.pointers.length===t.pointers,i=e.distance<t.threshold,r=e.deltaTime<t.time;if(this.reset(),e.eventType&L&&0===this.count)return this.failTimeout();if(i&&r&&n){if(e.eventType!=z)return this.failTimeout();var o=!this.pTime||e.timeStamp-this.pTime<t.interval,a=!this.pCenter||ie(this.pCenter,e.center)<t.posThreshold;if(this.pTime=e.timeStamp,this.pCenter=e.center,a&&o?this.count+=1:this.count=1,this._input=e,0===this.count%t.taps)return this.hasRequireFailures()?(this._timer=h(function(){this.state=Ie,this.tryEmit()},t.interval,this),Oe):Ie}return 32},failTimeout:function(){return this._timer=h(function(){this.state=32},this.options.interval,this),32},reset:function(){clearTimeout(this._timer)},emit:function(){this.state==Ie&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Ze.VERSION="2.0.7",Ze.defaults={domEvents:!1,touchAction:"compute",enable:!0,inputTarget:null,inputClass:null,preset:[[Ke,{enable:!1}],[Ue,{enable:!1},["rotate"]],[Ye,{direction:U}],[Ve,{direction:U},["swipe"]],[Xe],[Xe,{event:"doubletap",taps:2},["tap"]],[qe]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};function Qe(e,t){var n;this.options=o({},Ze.defaults,t||{}),this.options.inputTarget=this.options.inputTarget||e,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=e,this.input=new((n=this).options.inputClass||(N?de:O?xe:B?we:ce))(n,Q),this.touchAction=new Be(this,this.options.touchAction),Je(this,!0),f(this.options.recognizers,function(e){var t=this.add(new e[0](e[1]));e[2]&&t.recognizeWith(e[2]),e[3]&&t.requireFailure(e[3])},this)}function Je(e,t){var n,i=e.element;i.style&&(f(e.options.cssProps,function(r,o){n=k(i.style,o),t?(e.oldCssProps[n]=i.style[n],i.style[n]=r):i.style[n]=e.oldCssProps[n]||""}),t||(e.oldCssProps={}))}Qe.prototype={set:function(e){return o(this.options,e),e.touchAction&&this.touchAction.update(),e.inputTarget&&(this.input.destroy(),this.input.target=e.inputTarget,this.input.init()),this},stop:function(e){this.session.stopped=e?2:1},recognize:function(e){var t=this.session;if(!t.stopped){var n;this.touchAction.preventDefaults(e);var i=this.recognizers,r=t.curRecognizer;(!r||r&&r.state&Ie)&&(r=t.curRecognizer=null);for(var o=0;o<i.length;)n=i[o],2===t.stopped||r&&n!=r&&!n.canRecognizeWith(r)?n.reset():n.recognize(e),!r&&n.state&(Oe|je|Le)&&(r=t.curRecognizer=n),o++}},get:function(e){if(e instanceof Fe)return e;for(var t=this.recognizers,n=0;n<t.length;n++)if(t[n].options.event==e)return t[n];return null},add:function(e){if(d(e,"add",this))return this;var t=this.get(e.options.event);return t&&this.remove(t),this.recognizers.push(e),e.manager=this,this.touchAction.update(),e},remove:function(e){if(d(e,"remove",this))return this;if(e=this.get(e)){var t=this.recognizers,n=R(t,e);-1!==n&&(t.splice(n,1),this.touchAction.update())}return this},on:function(e,t){if(e!==r&&t!==r){var n=this.handlers;return f(T(e),function(e){n[e]=n[e]||[],n[e].push(t)}),this}},off:function(e,t){if(e!==r){var n=this.handlers;return f(T(e),function(e){t?n[e]&&n[e].splice(R(n[e],t),1):delete n[e]}),this}},emit:function(e,t){this.options.domEvents&&function(e,t){var i=n.createEvent("Event");i.initEvent(e,!0,!0),i.gesture=t,t.target.dispatchEvent(i)}(e,t);var i=this.handlers[e]&&this.handlers[e].slice();if(i&&i.length){t.type=e,t.preventDefault=function(){t.srcEvent.preventDefault()};for(var r=0;r<i.length;)i[r](t),r++}},destroy:function(){this.element&&Je(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},o(Ze,{INPUT_START:L,INPUT_MOVE:I,INPUT_END:z,INPUT_CANCEL:F,STATE_POSSIBLE:Ne,STATE_BEGAN:Oe,STATE_CHANGED:je,STATE_ENDED:Le,STATE_RECOGNIZED:Ie,STATE_CANCELLED:ze,STATE_FAILED:32,DIRECTION_NONE:$,DIRECTION_LEFT:H,DIRECTION_RIGHT:G,DIRECTION_UP:W,DIRECTION_DOWN:V,DIRECTION_HORIZONTAL:U,DIRECTION_VERTICAL:q,DIRECTION_ALL:K,Manager:Qe,Input:Z,TouchAction:Be,TouchInput:xe,MouseInput:ce,PointerEventInput:de,TouchMouseInput:we,SingleTouchInput:ye,Recognizer:Fe,AttrRecognizer:We,Tap:Xe,Pan:Ve,Swipe:Ye,Pinch:Ue,Rotate:Ke,Press:qe,on:_,off:w,each:f,merge:y,extend:v,assign:o,inherit:g,bindFn:b,prefixed:k}),(void 0!==t?t:"undefined"!=typeof self?self:{}).Hammer=Ze,"function"==typeof r&&r.amd?r(function(){return Ze}):e.exports?e.exports=Ze:t.Hammer=Ze}(window,document)}),Da=.2,Ba=4,Na=["mousedown","mouseup","mouseover","mouseout","click","dblclick"];function Oa(e,t){return t.get(e,!1)}function ja(e){e.preventDefault(),e.stopPropagation(),"function"==typeof e.stopImmediatePropagation&&e.stopImmediatePropagation()}function La(e){function t(t){setTimeout(function(){b(Na,function(t){ce.unbind(e,t,ja,!0)})},500)}ce.bind(e,"touchstart",function(t){b(Na,function(t){ce.bind(e,t,ja,!0)})},!0),ce.bind(e,"touchend",t,!0),ce.bind(e,"touchcancel",t,!0);var n=new Ma.Manager(e,{inputClass:Ma.TouchInput,recognizers:[]}),i=new Ma.Tap,r=new Ma.Pan({threshold:10}),o=new Ma.Press,a=new Ma.Pinch,s=new Ma.Tap({event:"doubletap",taps:2});return a.requireFailure(r),a.requireFailure(o),n.add([r,o,a,s,i]),n.reset=function(e){var t=this.recognizers,i=this.session;i.stopped||(n.stop(e),setTimeout(function(){var e,n;for(e=0;n=t[e];e++)n.reset(),n.state=8;i.curRecognizer=null},0))},n.on("hammer.input",function(e){e.srcEvent.defaultPrevented&&n.reset(!0)}),n}function Ia(e,t,n,i,r){var o,a=Oa("dragging",e),s=Oa("move",e),c=Oa("contextPad",e),p=Oa("palette",e);function u(e){return function(t){r.fire(e,t)}}function l(e){return ee(e,"svg, .djs-element",!0)}function h(e){function n(e){var n=l(e.target),r=n&&i.get(n);if(s&&t.getRootElement()!==r)return s.start(e,r,!0);!function(e){var n=0,i=0;function r(e){var r=e.deltaX-n,o=e.deltaY-i;t.scroll({dx:r,dy:o}),n=e.deltaX,i=e.deltaY}function a(e){o.off("panmove",r),o.off("panend",a),o.off("pancancel",a)}o.on("panmove",r),o.on("panend",a),o.on("pancancel",a)}()}(o=La(e)).on("doubletap",u("element.dblclick")),o.on("tap",u("element.click")),o.on("panstart",n),o.on("press",n),o.on("pinchstart",function(e){var n=t.zoom(),i=e.center;function r(e){var r=1-(1-e.scale)/1.5,o=Math.max(Da,Math.min(Ba,r*n));t.zoom(o,i),ja(e)}function a(e){o.off("pinchmove",r),o.off("pinchend",a),o.off("pinchcancel",a),o.reset(!0)}o.on("pinchmove",r),o.on("pinchend",a),o.on("pinchcancel",a)})}a&&n.on("drag.move",function(e){var t=e.originalEvent;if(t&&!(t instanceof MouseEvent)){var n=Ao(t),r=l(document.elementFromPoint(n.x,n.y)),o=r&&i.get(r);o!==e.hover&&(e.hover&&a.out(e),o&&(a.hover({element:o,gfx:r}),e.hover=o,e.hoverGfx=r))}}),c&&n.on("contextPad.create",function(e){var t=La(e.pad.html);t.on("panstart",function(e){c.trigger("dragstart",e,!0)}),t.on("press",function(e){c.trigger("dragstart",e,!0)}),t.on("tap",function(e){c.trigger("click",e)})}),p&&n.on("palette.create",function(e){var t=La(e.container);t.on("panstart",function(e){p.trigger("dragstart",e,!0)}),t.on("press",function(e){p.trigger("dragstart",e,!0)}),t.on("tap",function(e){p.trigger("click",e)})}),n.on("canvas.init",function(e){h(e.svg)})}function za(e,t){var n=this;t.on("canvas.init",function(e){n.addBBoxMarker(e.svg)})}Ia.$inject=["injector","canvas","eventBus","elementRegistry","interactionEvents","touchFix"],za.$inject=["canvas","eventBus"],za.prototype.addBBoxMarker=function(e){var t={fill:"none",class:"outer-bound-marker"},n=Oe("rect");_e(n,{x:-1e4,y:1e4,width:10,height:10}),_e(n,t),ge(e,n);var i=Oe("rect");_e(i,{x:1e4,y:1e4,width:10,height:10}),_e(i,t),ge(e,i)};var Fa={__depends__:[{__depends__:[No],__init__:["touchInteractionEvents"],touchInteractionEvents:["type",Ia],touchFix:["type",za]}]};function $a(e){return e&&e[e.length-1]}function Ha(e){return e.y}function Ga(e){return e.x}var Wa={left:Ga,center:Ga,right:function(e){return e.x+e.width},top:Ha,middle:Ha,bottom:function(e){return e.y+e.height}};function Va(e){this._modeling=e}Va.$inject=["modeling"],Va.prototype._getOrientationDetails=function(e){var t="x",n="width";return-1!==["top","bottom","middle"].indexOf(e)&&(t="y",n="height"),{axis:t,dimension:n}},Va.prototype._isType=function(e,t){return-1!==t.indexOf(e)},Va.prototype._alignmentPosition=function(e,t){var n,i,r,o=this._getOrientationDetails(e),a=o.axis,s=o.dimension,c={},p={},u=!1;if(this._isType(e,["left","top"]))c[e]=t[0][a];else if(this._isType(e,["right","bottom"]))r=$a(t),c[e]=r[a]+r[s];else if(this._isType(e,["center","middle"])){if(b(t,function(e){var t=e[a]+Math.round(e[s]/2);p[t]?p[t].elements.push(e):p[t]={elements:[e],center:t}}),n=M(p,function(e){return e.elements.length>1&&(u=!0),e.elements.length}),u)return c[e]=$a(n).center,c;i=t[0],r=$a(t=M(t,function(e){return e[a]+e[s]})),c[e]=function(e,t){return Math.round((e[a]+t[a]+t[s])/2)}(i,r)}return c},Va.prototype.trigger=function(e,t){var n=this._modeling,i=M(g(e,function(e){return!(e.waypoints||e.host||e.labelTarget)}),Wa[t]),r=this._alignmentPosition(t,i);n.alignElements(i,r)};var Ua={__init__:["alignElements"],alignElements:["type",Va]},qa=10,Ka=50,Ya=250;function Xa(e,t,n,i){for(var r;r=Qa(e,n,t);)n=i(t,n,r);return n}function Za(e){return function(t,n,i){var r={x:n.x,y:n.y};return["x","y"].forEach(function(o){var a=e[o];if(a){var s="x"===o?"width":"height",c=a.margin,p=a.minDistance;r[o]=c<0?Math.min(i[o]+c-t[s]/2,n[o]-p+c):Math.max(i[o]+i[s]+c+t[s]/2,n[o]+p+c)}}),r}}function Qa(e,t,n){var i={x:t.x-n.width/2,y:t.y-n.height/2,width:n.width,height:n.height};return y(function(e){var t=Ja(e);e.host&&(t=t.concat(Ja(e.host)));e.attachers&&(t=t.concat(e.attachers.reduce(function(e,t){return e.concat(Ja(t))},[])));return t}(e),function(e){return e!==n&&"intersect"===go(e,i,qa)})}function Ja(e){return(t=e,t.outgoing.map(function(e){return e.target})).concat(function(e){return e.incoming.map(function(e){return e.source})}(e));var t}function es(){return!0}var ts=100;function ns(e,t){e.on("autoPlace",ts,function(e){var t=e.shape;return function(e,t,n){n||(n={});var i=n.defaultDistance||Ka,r=yo(e);return{x:mo(e).right+i+t.width/2,y:r.y}}(e.source,t)}),this.append=function(n,i,r){e.fire("autoPlace.start",{source:n,shape:i});var o=e.fire("autoPlace",{source:n,shape:i}),a=t.appendShape(n,i,o,n.parent,r);return e.fire("autoPlace.end",{source:n,shape:a}),a}}function is(e,t){e.on("autoPlace.end",500,function(e){t.select(e.shape)})}ns.$inject=["eventBus","modeling"],is.$inject=["eventBus","selection"];var rs={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",ns],autoPlaceSelectionBehavior:["type",is]};function os(e,t){return w(t,function(t){return Hi(e,t)})}function as(e,t){for("string"==typeof t&&(t=[t]);e=e.parent;)if(os(e,t))return e;return null}function ss(e,t){return Hi(t,"bpmn:TextAnnotation")?function(e,t){var n=mo(e),i={x:n.right+t.width/2,y:n.top-50-t.height/2};return Xa(e,t,i,Za({y:{margin:-30,minDistance:20}}))}(e,t):os(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])?function(e,t){var n=mo(e),i={x:n.right-10+t.width/2,y:n.bottom+40+t.width/2};return Xa(e,t,i,Za({x:{margin:30,minDistance:30}}))}(e,t):Hi(t,"bpmn:FlowNode")?function(e,t){var n=mo(e),i=yo(e),r=function(e,t){t||(t={});var n=t.defaultDistance||Ka,i=t.direction||"e",r=t.filter,o=t.getWeight||function(t){return t.source===e?1:-1},a=t.maxDistance||Ya,s=t.reference||"start";function c(e,t){return"n"===i?"start"===s?mo(e).top-mo(t).bottom:"center"===s?mo(e).top-yo(t).y:mo(e).top-mo(t).top:"w"===i?"start"===s?mo(e).left-mo(t).right:"center"===s?mo(e).left-yo(t).x:mo(e).left-mo(t).left:"s"===i?"start"===s?mo(t).top-mo(e).bottom:"center"===s?yo(t).y-mo(e).bottom:mo(t).bottom-mo(e).bottom:"start"===s?mo(t).left-mo(e).right:"center"===s?yo(t).x-mo(e).right:mo(t).right-mo(e).right}r||(r=es);var p=e.incoming.filter(r).map(function(t){var n=o(t),i=n<0?c(t.source,e):c(e,t.source);return{id:t.source.id,distance:i,weight:n}}),u=e.outgoing.filter(r).map(function(t){var n=o(t),i=n>0?c(e,t.target):c(t.target,e);return{id:t.target.id,distance:i,weight:n}});return E(p.concat(u).reduce(function(e,t){return e[t.id+"__weight_"+t.weight]=t,e},{}),function(e,t){var n=t.distance,i=t.weight;return n<0||n>a?e:(e[String(n)]||(e[String(n)]=0),e[String(n)]+=1*i,(!e.distance||e[e.distance]<e[String(n)])&&(e.distance=n),e)},{}).distance||n}(e,{filter:function(e){return Hi(e,"bpmn:SequenceFlow")}}),o=30,a="left";Hi(e,"bpmn:BoundaryEvent")&&-1!==(a=go(e,e.host,-25)).indexOf("top")&&(o*=-1);var s={x:n.right+r+t.width/2,y:i.y+cs(a,80)};return Xa(e,t,s,Za({y:{margin:o,minDistance:80}}))}(e,t):void 0}function cs(e,t){return-1!=e.indexOf("top")?-1*t:-1!=e.indexOf("bottom")?t:0}function ps(e){e.on("autoPlace",function(e){var t=e.shape;return ss(e.source,t)})}ps.$inject=["eventBus"];var us={__depends__:[rs],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",ps]};function ls(e){this._eventBus=e}ls.$inject=["eventBus"],ls.prototype.on=function(e,t,n,i,r,o){if((f(t)||d(t))&&(o=r,r=i,i=n,n=t,t=null),f(n)&&(o=r,r=i,i=n,n=1e3),h(r)&&(o=r,r=!1),!f(i))throw new Error("handlerFn must be a function");l(e)||(e=[e]);var a=this._eventBus;b(e,function(e){var s=["commandStack",e,t].filter(function(e){return e}).join(".");a.on(s,n,r?function(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}(i,o):i,o)})};function hs(e,t,n,i){ls.call(this,e),this._elementRegistry=t,this._modeling=n,this._rules=i;var r=this;this.postExecuted(["shape.create"],function(e){var t=e.context,n=t.hints||{},i=t.shape,o=t.parent||t.newParent;!1!==n.autoResize&&r._expand([i],o)}),this.postExecuted(["elements.move"],function(e){var t=e.context,n=o(R(t.closure.topLevel)),i=t.hints,a=!i||i.autoResize;!1!==a&&b(A(n,function(e){return e.parent.id}),function(e,t){l(a)&&(e=e.filter(function(e){return y(a,D({id:e.id}))})),r._expand(e,t)})}),this.postExecuted(["shape.toggleCollapse"],function(e){var t=e.context,n=t.hints,i=t.shape;n&&!1===n.autoResize||i.collapsed||r._expand(i.children||[],i)}),this.postExecuted(["shape.resize"],function(e){var t=e.context,n=t.hints,i=t.shape,o=i.parent;n&&!1===n.autoResize||o&&r._expand([i],o)})}function ds(e){e.invoke(hs,this)}function fs(e){ls.call(this,e),this.init()}function ms(e){fs.call(this,e);var t=this;this.addRule("element.autoResize",function(e){return t.canResize(e.elements,e.target)})}function vs(e,t){ms.call(this,e),this._modeling=t}b(["canExecute","preExecute","preExecuted","execute","executed","postExecute","postExecuted","revert","reverted"],function(e){ls.prototype[e]=function(t,n,i,r,o){(f(t)||d(t))&&(o=r,r=i,i=n,n=t,t=null),this.on(t,e,n,i,r,o)}}),hs.$inject=["eventBus","elementRegistry","modeling","rules"],n(hs,ls),hs.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=mo(ft(e)),o=mo(t),a={};return r.top-o.top<i.top&&(a.top=r.top-n.top),r.left-o.left<i.left&&(a.left=r.left-n.left),o.right-r.right<i.right&&(a.right=r.right+n.right),o.bottom-r.bottom<i.bottom&&(a.bottom=r.bottom+n.bottom),vo(F({},o,a))},hs.prototype._expand=function(e,t){if("string"==typeof t&&(t=this._elementRegistry.get(t)),this._rules.allowed("element.autoResize",{elements:e,target:t})){var n=this._getOptimalBounds(e,t);if(function(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}(n,t)){var i=function(e,t){var n="";e=mo(e),t=mo(t),e.top>t.top&&(n=n.concat("n"));e.right<t.right&&(n=n.concat("w"));e.bottom<t.bottom&&(n=n.concat("s"));e.left>t.left&&(n=n.concat("e"));return n}($(t,["x","y","width","height"]),n);this.resize(t,n,{autoResize:i});var r=t.parent;r&&this._expand([t],r)}}},hs.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},hs.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},hs.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)},ds.$inject=["injector"],n(ds,hs),ds.prototype.resize=function(e,t,n){Hi(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)},fs.$inject=["eventBus"],n(fs,ls),fs.prototype.addRule=function(e,t,n){var i=this;"string"==typeof e&&(e=[e]),e.forEach(function(e){i.canExecute(e,t,function(e,t,i){return n(e)},!0)})},fs.prototype.init=function(){},ms.$inject=["eventBus"],n(ms,fs),ms.prototype.canResize=function(e,t){return!1},n(vs,ms),vs.$inject=["eventBus","modeling"],vs.prototype.canResize=function(e,t){if(!Hi(t,"bpmn:Participant")&&!Hi(t,"bpmn:Lane")&&!Hi(t,"bpmn:SubProcess"))return!1;var n=!0;return b(e,function(e){(Hi(e,"bpmn:Lane")||e.labelTarget)&&(n=!1)}),n};var ys={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",ds],bpmnAutoResizeProvider:["type",vs]},gs=Math.round,bs="djs-drag-active";function xs(e){e.preventDefault()}function Es(e,t,n,i){var r,o={threshold:5,trapClick:!0};function a(e){var n=t.viewbox(),i=t._container.getBoundingClientRect();return{x:n.x+(e.x-i.left)/n.scale,y:n.y+(e.y-i.top)/n.scale}}function s(t,n){n=n||r;var i=e.createEvent(F({},n.payload,n.data,{isTouch:n.isTouch}));return!1!==e.fire("drag."+t,i)&&e.fire(n.prefix+"."+t,i)}function c(e,i){var o,c=r.payload,p=r.displacement,u=r.globalStart,l=Ao(e),h=ba(l,u),d=r.localStart,f=a(l),v=ba(f,d);if(!r.active&&(i||(o=h,Math.sqrt(Math.pow(o.x,2)+Math.pow(o.y,2))>r.threshold))){if(F(c,{x:gs(d.x+p.x),y:gs(d.y+p.y),dx:0,dy:0},{originalEvent:e}),!1===s("start"))return m();r.active=!0,r.keepSelection||(c.previousSelection=n.get(),n.select(null)),r.cursor&&fa(r.cursor),t.addMarker(t.getRootElement(),bs)}Ro(e),r.active&&(F(c,{x:gs(f.x+p.x),y:gs(f.y+p.y),dx:gs(v.x),dy:gs(v.y)},{originalEvent:e}),s("move"))}function p(e){var t=!0;r.active&&(e&&(r.payload.originalEvent=e,Ro(e)),t=s("end")),!1===t&&s("rejected"),s("ended",v(!0!==t))}function u(e){27===e.which&&(xs(e),m())}function l(t){var n;r.active&&(n=ya(e),setTimeout(n,400),xs(t)),p(t)}function h(e){c(e)}function d(e){var t=r.payload;t.hoverGfx=e.gfx,t.hover=e.element,s("hover")}function f(e){s("out");var t=r.payload;t.hoverGfx=null,t.hover=null}function m(e){var t;if(r){var n=r.active;n&&s("cancel"),t=v(e),n&&s("canceled",t)}}function v(o){var a,v;s("cleanup"),ma(),v=r.trapClick?l:p,ce.unbind(document,"mousemove",c),ce.unbind(document,"dragstart",xs),ce.unbind(document,"selectstart",xs),ce.unbind(document,"mousedown",v,!0),ce.unbind(document,"mouseup",v,!0),ce.unbind(document,"keyup",u),ce.unbind(document,"touchstart",h,!0),ce.unbind(document,"touchcancel",m,!0),ce.unbind(document,"touchmove",c,!0),ce.unbind(document,"touchend",p,!0),e.off("element.hover",d),e.off("element.out",f),t.removeMarker(t.getRootElement(),bs);var y=r.payload.previousSelection;return!1!==o&&y&&!n.get().length&&function(e){var t=e.filter(function(e){return i.get(e.id)});t.length&&n.select(t)}(y),a=r,r=null,a}e.on("diagram.destroy",m),this.init=function(t,n,i,v){r&&m(!1),"string"==typeof n&&(v=i,i=n,n=null);var y,g,b,x,E,_=(v=F({},o,v||{})).data||{};x=v.trapClick?l:p,t?(y=To(t)||t,g=Ao(t),Ro(t),"dragstart"===y.type&&xs(y)):(y=null,g={x:0,y:0}),b=a(g),n||(n=b),E=function(e){return"undefined"!=typeof TouchEvent&&e instanceof TouchEvent}(y),r=F({prefix:i,data:_,payload:{},globalStart:g,displacement:ba(n,b),localStart:b,isTouch:E},v),v.manual||(E?(ce.bind(document,"touchstart",h,!0),ce.bind(document,"touchcancel",m,!0),ce.bind(document,"touchmove",c,!0),ce.bind(document,"touchend",p,!0)):(ce.bind(document,"mousemove",c),ce.bind(document,"dragstart",xs),ce.bind(document,"selectstart",xs),ce.bind(document,"mousedown",x,!0),ce.bind(document,"mouseup",x,!0)),ce.bind(document,"keyup",u),e.on("element.hover",d),e.on("element.out",f)),s("init"),v.autoActivate&&c(t,!0)},this.move=c,this.hover=d,this.out=f,this.end=p,this.cancel=m,this.context=function(){return r},this.setOptions=function(e){F(o,e)}}Es.$inject=["eventBus","canvas","selection","elementRegistry"];var _s=1500;function ws(e,t,n){var i=this;e.on("drag.start",function(r){e.once("drag.move",_s,function(e){!function(e){if(!e.hover){var r=e.originalEvent,o=i._findTargetGfx(r),a=o&&n.get(o);o&&a&&(e.stopPropagation(),t.hover({element:a,gfx:o}),t.move(r))}}(e)})}),e.on("drag.init",function(){var n,i;function r(e){n=e.hover,i=e.hoverGfx}function o(){n=null,i=null}function a(){if(n){var e=n,r=i;n=null,i=null,t.out({element:e,gfx:r})}}e.on("drag.hover",r),e.on("element.out",o),e.on("element.hover",_s,a),e.once("drag.cleanup",function(){e.off("drag.hover",r),e.off("element.out",o),e.off("element.hover",a)})}),this._findTargetGfx=function(e){var t;if(e instanceof MouseEvent)return t=Ao(e),function(e){return ee(e,"svg, .djs-element",!0)}(document.elementFromPoint(t.x,t.y))}}ws.$inject=["eventBus","dragging","elementRegistry"];var Ss={__init__:["hoverFix"],__depends__:[Wo],dragging:["type",Es],hoverFix:["type",ws]};function Cs(e,t,n){this._canvas=n,this._opts=F({scrollThresholdIn:[20,20,20,20],scrollThresholdOut:[0,0,0,0],scrollRepeatTimeout:15,scrollStep:10},e);var i=this;t.on("drag.move",function(e){var t=i._toBorderPoint(e);i.startScroll(t)}),t.on(["drag.cleanup"],function(){i.stopScroll()})}function Ts(e,t,n){return t<e&&e<n}Cs.$inject=["config.autoScroll","eventBus","canvas"],Cs.prototype.startScroll=function(e){var t=this._canvas,n=this._opts,i=this,r=t.getContainer().getBoundingClientRect(),o=[e.x,e.y,r.width-e.x,r.height-e.y];this.stopScroll();for(var a=0,s=0,c=0;c<4;c++)Ts(o[c],n.scrollThresholdOut[c],n.scrollThresholdIn[c])&&(0===c?a=n.scrollStep:1==c?s=n.scrollStep:2==c?a=-n.scrollStep:3==c&&(s=-n.scrollStep));0===a&&0===s||(t.scroll({dx:a,dy:s}),this._scrolling=setTimeout(function(){i.startScroll(e)},n.scrollRepeatTimeout))},Cs.prototype.stopScroll=function(){clearTimeout(this._scrolling)},Cs.prototype.setOptions=function(e){this._opts=F({},this._opts,e)},Cs.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=Ao(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};var Rs={__depends__:[Ss],__init__:["autoScroll"],autoScroll:["type",Cs]};function As(e){this._commandStack=e.get("commandStack",!1)}As.$inject=["injector"],As.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),void 0===n||n};var Ps={__init__:["rules"],rules:["type",As]},ks=Math.round,Ms=Math.max;var Ds=10;function Bs(e,t){return function(e,t){var n,i;for(n=0;i=e[n];n++)if(Ar(i,t)<=Ds)return{point:e[n],bendpoint:!0,index:n};return null}(e,t)||function(e,t){var n,i,r=lo(function(e,t){return[["M",e.x,e.y],["m",0,-t],["a",t,t,0,1,1,0,2*t],["a",t,t,0,1,1,0,-2*t],["z"]]}(t,Ds),(n=[],e.forEach(function(e,t){n.push([0===t?"M":"L",e.x,e.y])}),n)),o=r[0],a=r[r.length-1];return o?o!==a?o.segment2!==a.segment2?{point:e[i=Ms(o.segment2,a.segment2)-1],bendpoint:!0,index:i}:{point:{x:ks(o.x+a.x)/2,y:ks(o.y+a.y)/2},index:o.segment2}:{point:{x:ks(o.x),y:ks(o.y)},index:o.segment2}:null}(e,t)}var Ns="djs-bendpoint",Os="djs-segment-dragger";function js(e,t,n){return Bs(t,function(e,t){var n,i=Ao(t),r=e._container.getBoundingClientRect();n={x:r.left,y:r.top};var o=e.viewbox();return{x:o.x+(i.x-n.x)/o.scale,y:o.y+(i.y-n.y)/o.scale}}(e,n))}function Ls(e,t){var n=Oe("g");Re(n).add(Ns),ge(e,n);var i=Oe("circle");_e(i,{cx:0,cy:0,r:4}),Re(i).add("djs-visual"),ge(n,i);var r=Oe("circle");return _e(r,{cx:0,cy:0,r:10}),Re(r).add("djs-hit"),ge(n,r),t&&Re(n).add(t),n}function Is(e,t,n,i){var r=Oe("g");ge(e,r);var o=function(e,t,n){var i=t.x-e.x,r=t.y-e.y;return Fs("h"===n?i:r)}(t,n,i),a=Oe("rect");_e(a,{x:-7,y:-1.5,width:14,height:3}),Re(a).add("djs-visual"),ge(r,a);var s=Oe("rect");return _e(s,{x:-o/2,y:-7,width:o,height:14}),Re(s).add("djs-hit"),ge(r,s),tn(r,"v"===i?90:0),r}function zs(e,t,n){var i=Oe("g"),r=Br(t,n),o=Mr(t,n);return ge(e,i),Is(i,t,n,o),Re(i).add(Os),Re(i).add("h"===o?"horizontal":"vertical"),en(i,r.x,r.y),i}function Fs(e){return Math.abs(Math.round(2*e/3))}var $s=t(function(t,n){var i;i=e,t.exports=function(e){if(e.CSS&&e.CSS.escape)return e.CSS.escape;var t=function(e){if(0==arguments.length)throw new TypeError("`CSS.escape` requires an argument.");for(var t,n=String(e),i=n.length,r=-1,o="",a=n.charCodeAt(0);++r<i;)0!=(t=n.charCodeAt(r))?o+=t>=1&&t<=31||127==t||0==r&&t>=48&&t<=57||1==r&&t>=48&&t<=57&&45==a?"\\"+t.toString(16)+" ":0==r&&1==i&&45==t||!(t>=128||45==t||95==t||t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122)?"\\"+n.charAt(r):n.charAt(r):o+="�";return o};return e.CSS||(e.CSS={}),e.CSS.escape=t,t}(i)}),Hs={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function Gs(e){return(e=""+e)&&e.replace(/[&<>"']/g,function(e){return Hs[e]})}function Ws(e,t,n,i,r){function o(e,n){var o=n.waypoints,a=js(t,o,e);if(a)return!function(e,t,n){var i,r,o,a,s,c,p=e.index,u=e.point;return!(p<=0||e.bendpoint)&&(o=Br(i=t[p-1],r=t[p]),a=Mr(i,r),s=Math.abs(u.x-o.x),c=Math.abs(u.y-o.y),a&&s<=n&&c<=n)}(a,o,function(e,t){var n,i,r=e.waypoints;return t.index<=0||t.bendpoint?null:(i=Mr((n={start:r[t.index-1],end:r[t.index]}).start,n.end))?Fs("h"===i?n.end.x-n.start.x:n.end.y-n.start.y)/2:null}(n,a))?i.start(e,n,a.index,!a.bendpoint):r.start(e,n,a.index),!0}function a(e,t,i){ce.bind(e,t,function(e){n.triggerMouseEvent(t,e,i),e.stopPropagation()})}function s(e,n){var i=t.getLayer("overlays"),r=fe('.djs-bendpoints[data-element-id="'+$s(e.id)+'"]',i);return!r&&n&&(_e(r=Oe("g"),{"data-element-id":e.id}),Re(r).add("djs-bendpoints"),ge(i,r),a(r,"mousedown",e),a(r,"click",e),a(r,"dblclick",e)),r}function c(e,t){return fe('.djs-segment-dragger[data-segment-idx="'+e+'"]',t)}function p(e,t){t.waypoints.forEach(function(t,n){var i=Ls(e);ge(e,i),en(i,t.x,t.y)}),Ls(e,"floating")}function u(e,t){for(var n,i,r,o=t.waypoints,s=1;s<o.length;s++)Mr(n=o[s-1],i=o[s])&&(_e(r=zs(e,n,i),{"data-segment-idx":s}),a(r,"mousemove",t))}function l(e){var t=s(e);return t||(p(t=s(e,!0),e),u(t,e)),t}function h(e){var t=s(e);t&&(!function(e){b(me("."+Os,e),function(e){Pe(e)})}(t),function(e){b(me("."+Ns,e),function(e){Pe(e)})}(t),u(t,e),p(t,e))}function d(e,t,n){var i,r,o=c(t.index,e),a=n[t.index-1],s=n[t.index],p=t.point,u=Br(a,s),l=Mr(a,s);o&&(i=function(e){return fe(".djs-visual",e)}(o),r={x:p.x-u.x,y:p.y-u.y},"v"===l&&(r={x:r.y,y:r.x}),en(i,r.x,r.y))}e.on("connection.changed",function(e){h(e.element)}),e.on("connection.remove",function(e){var t=s(e.element);t&&Pe(t)}),e.on("element.marker.update",function(e){var t,n=e.element;n.waypoints&&(t=l(n),e.add?Re(t).add(e.marker):Re(t).remove(e.marker))}),e.on("element.mousemove",function(e){var n,i,r=e.element,o=r.waypoints;if(o){if(n=s(r,!0),!(i=js(t,o,e.originalEvent)))return;!function(e,t){var n=fe(".floating",e),i=t.point;n&&en(n,i.x,i.y)}(n,i),i.bendpoint||d(n,i,o)}}),e.on("element.mousedown",function(e){var t=e.originalEvent,n=e.element;if(n.waypoints)return o(t,n)}),e.on("selection.changed",function(e){var t=e.newSelection[0];t&&t.waypoints&&l(t)}),e.on("element.hover",function(e){var t=e.element;t.waypoints&&(l(t),n.registerEvent(e.gfx,"mousemove","element.mousemove"))}),e.on("element.out",function(e){n.unregisterEvent(e.gfx,"mousemove","element.mousemove")}),e.on("element.updateId",function(e){var t=e.element,n=e.newId;if(t.waypoints){var i=s(t);i&&_e(i,{"data-element-id":n})}}),this.addHandles=l,this.updateHandles=h,this.getBendpointsContainer=s,this.getSegmentDragger=c}Ws.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];var Vs=Math.round,Us="reconnectStart",qs="reconnectEnd",Ks="updateWaypoints";function Ys(e,t,n,i,r,o){this._injector=e,this.start=function(e,t,o,a){var s,c=n.getGraphics(t),p=t.source,u=t.target,l=t.waypoints,h=(s=a||0!==o?a||o!==l.length-1?Ks:qs:Us)===Ks?"connection.updateWaypoints":"connection.reconnect",d=r.allowed(h,{connection:t,source:p,target:u});!1===d&&(d=r.allowed(h,{connection:t,source:u,target:p})),!1!==d&&i.init(e,"bendpoint.move",{data:{connection:t,connectionGfx:c,context:{allowed:d,bendpointIndex:o,connection:t,source:p,target:u,insert:a,type:s}}})},t.on("bendpoint.move.hover",function(e){var t,n=e.context,i=n.connection,o=i.source,a=i.target,s=e.hover,c=n.type;if(n.hover=s,s){var p=c===Ks?"connection.updateWaypoints":"connection.reconnect";if(t=n.allowed=r.allowed(p,{connection:i,source:c===Us?s:o,target:c===qs?s:a}))return n.source=c===Us?s:o,void(n.target=c===qs?s:a);!1===t&&(t=n.allowed=r.allowed(p,{connection:i,source:c===qs?s:a,target:c===Us?s:o})),t&&(n.source=c===qs?s:a,n.target=c===Us?s:o)}}),t.on(["bendpoint.move.out","bendpoint.move.cleanup"],function(e){var t=e.context;t.hover=null,t.source=null,t.target=null,t.allowed=!1}),t.on("bendpoint.move.end",function(e){var t=e.context,n=t.allowed,i=t.bendpointIndex,r=t.connection,a=t.insert,s=r.waypoints.slice(),c=t.source,p=t.target,u=t.type,l=t.hints||{},h={x:Vs(e.x),y:Vs(e.y)};if(!n)return!1;u===Ks?(a?s.splice(i,0,h):s[i]=h,l.bendpointMove={insert:a,bendpointIndex:i},s=this.cropWaypoints(r,s),o.updateWaypoints(r,function(e){e=e.slice();for(var t,n,i,r=0;e[r];)t=e[r],n=e[r-1],0===Ar(t,i=e[r+1])||Pr(n,i,t)?e.splice(r,1):r++;return e}(s),l)):(u===Us?(l.docking="source",Xs(t)&&(l.docking="target",l.newWaypoints=s.reverse())):u===qs&&(l.docking="target",Xs(t)&&(l.docking="source",l.newWaypoints=s.reverse())),o.reconnect(r,c,p,h,l))},this)}function Xs(e){var t=e.hover,n=e.source,i=e.target,r=e.type;return r===Us?t&&i&&t===i&&n!==i:r===qs?t&&n&&t===n&&n!==i:void 0}Ys.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],Ys.prototype.cropWaypoints=function(e,t){var n=this._injector.get("connectionDocking",!1);if(!n)return t;var i=e.waypoints;return e.waypoints=t,e.waypoints=n.getCroppedWaypoints(e),t=e.waypoints,e.waypoints=i,t};var Zs="reconnectStart",Qs="reconnectEnd",Js="updateWaypoints",ec="connect-ok",tc="connect-not-ok",nc="connect-hover",ic="djs-updating",rc="djs-element-hidden",oc=1100;function ac(e,t,n,i){this._injector=t;var r=t.get("connectionPreview",!1);n.on("bendpoint.move.start",function(e){var t=e.context,n=t.bendpointIndex,r=t.connection,o=t.insert,a=r.waypoints,s=a.slice();t.waypoints=a,o&&s.splice(n,0,{x:e.x,y:e.y}),r.waypoints=s,Re(t.draggerGfx=Ls(i.getLayer("overlays"))).add("djs-dragging"),i.addMarker(r,rc),i.addMarker(r,ic)}),n.on("bendpoint.move.hover",function(e){var t=e.context,n=t.allowed,r=t.hover,o=t.type;if(r){if(i.addMarker(r,nc),o===Js)return;n?(i.removeMarker(r,tc),i.addMarker(r,ec)):!1===n&&(i.removeMarker(r,ec),i.addMarker(r,tc))}}),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],oc,function(e){var t=e.context,n=t.hover,r=t.target;n&&(i.removeMarker(n,nc),i.removeMarker(n,r?ec:tc))}),n.on("bendpoint.move.move",function(t){var n=t.context,i=n.allowed,o=n.bendpointIndex,a=n.draggerGfx,s=n.hover,c=n.type,p=n.connection,u=p.source,l=p.target,h=p.waypoints.slice(),d={x:t.x,y:t.y},f=n.hints||{},m={};r&&(f.connectionStart&&(m.connectionStart=f.connectionStart),f.connectionEnd&&(m.connectionEnd=f.connectionEnd),c===Zs?Xs(n)?(m.connectionEnd=m.connectionEnd||d,m.source=l,m.target=s||u,h=h.reverse()):(m.connectionStart=m.connectionStart||d,m.source=s||u,m.target=l):c===Qs?Xs(n)?(m.connectionStart=m.connectionStart||d,m.source=s||l,m.target=u,h=h.reverse()):(m.connectionEnd=m.connectionEnd||d,m.source=u,m.target=s||l):(m.noCropping=!0,m.noLayout=!0,h[o]=d),c===Js&&(h=e.cropWaypoints(p,h)),m.waypoints=h,r.drawPreview(n,i,m)),en(a,t.x,t.y)},this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],oc,function(e){var t=e.context,n=t.connection,o=t.draggerGfx,a=t.hover,s=t.target,c=t.waypoints;n.waypoints=c,Pe(o),i.removeMarker(n,ic),i.removeMarker(n,rc),a&&(i.removeMarker(a,ec),i.removeMarker(a,s?ec:tc)),r&&r.cleanUp(t)})}ac.$inject=["bendpointMove","injector","eventBus","canvas"];var sc="connect-hover",cc="djs-updating";function pc(e,t,n){return uc(e,t,e[t]+n)}function uc(e,t,n){return{x:"x"===t?n:e.x,y:"y"===t?n:e.y}}function lc(e){return"x"===e?"y":"x"}function hc(e,t,n){var i,r;return e.original?e.original:(i=yo(t),uc(e,r=lc(n),i[r]))}function dc(e,t,n,i,r,o){var a=e.get("connectionDocking",!1);function s(e,t){if(!a)return t;var n,i=e.waypoints;return e.waypoints=t,n=a.getCroppedWaypoints(e),e.waypoints=i,n}function c(e){r.update("connection",e.connection,e.connectionGfx)}function p(e,t,n){var i=e.newWaypoints,r=function(e,t,n,i){var r=Math.max(t[i],n[i]),o=Math.min(t[i],n[i]);return uc(t,i,Math.min(Math.max(o+20,e[i]),r-20))}(n,i[e.segmentStartIndex+t],i[e.segmentEndIndex+t],lc(e.axis));en(e.draggerGfx,r.x,r.y)}this.start=function(e,t,r){var o,a,s,c,p=n.getGraphics(t),u=r-1,l=r,h=t.waypoints,d=h[u],f=h[l],m=js(n,h,e);(a=Mr(d,f))&&(s="v"===a?"x":"y",0===u&&(d=hc(d,t.source,s)),l===h.length-1&&(f=hc(f,t.target,s)),o={connection:t,segmentStartIndex:u,segmentEndIndex:l,segmentStart:d,segmentEnd:f,axis:s,dragPosition:c=m?m.point:{x:(d.x+f.x)/2,y:(d.y+f.y)/2}},i.init(e,c,"connectionSegment.move",{cursor:"x"===s?"resize-ew":"resize-ns",data:{connection:t,connectionGfx:p,context:o}}))},t.on("connectionSegment.move.start",function(e){var t=e.context,i=e.connection,r=n.getLayer("overlays");t.originalWaypoints=i.waypoints.slice(),t.draggerGfx=zs(r,t.segmentStart,t.segmentEnd),Re(t.draggerGfx).add("djs-dragging"),n.addMarker(i,cc)}),t.on("connectionSegment.move.move",function(e){var t,n,i=e.context,r=i.connection,o=i.segmentStartIndex,a=i.segmentEndIndex,u=i.segmentStart,l=i.segmentEnd,h=i.axis,d=i.originalWaypoints.slice(),f=pc(u,h,e["d"+h]),m=pc(l,h,e["d"+h]),v=d.length,y=0;d[o]=f,d[a]=m,o<2&&(t=go(r.source,f),1===o?"intersect"===t&&(d.shift(),d[0]=f,y--):"intersect"!==t&&(d.unshift(u),y++)),a>v-3&&(n=go(r.target,m),a===v-2?"intersect"===n&&(d.pop(),d[d.length-1]=m):"intersect"!==n&&d.push(l)),i.newWaypoints=r.waypoints=s(r,d),p(i,y,e),i.newSegmentStartIndex=o+y,c(e)}),t.on("connectionSegment.move.hover",function(e){e.context.hover=e.hover,n.addMarker(e.hover,sc)}),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],function(e){var t=e.context.hover;t&&n.removeMarker(t,sc)}),t.on("connectionSegment.move.cleanup",function(e){var t=e.context,i=t.connection;t.draggerGfx&&Pe(t.draggerGfx),n.removeMarker(i,cc)}),t.on(["connectionSegment.move.cancel","connectionSegment.move.end"],function(e){var t=e.context;t.connection.waypoints=t.originalWaypoints,c(e)}),t.on("connectionSegment.move.end",function(e){var t=e.context,n=t.connection,i=t.newWaypoints,r=t.newSegmentStartIndex,a=function(e,t){var n=0;return{waypoints:e.filter(function(i,r){return!Pr(e[r-1],e[r+1],i)||(n=r<=t?n-1:n,!1)}),segmentOffset:n}}(i=i.map(function(e){return{original:e.original,x:Math.round(e.x),y:Math.round(e.y)}}),r),c=s(n,a.waypoints),p=a.segmentOffset,u={segmentMove:{segmentStartIndex:t.segmentStartIndex,newSegmentStartIndex:r+p}};o.updateWaypoints(n,c,u)})}dc.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var fc=Math.abs,mc=Math.round;function vc(e){return{x:e.x,y:e.y}}function yc(e){return{x:e.x+e.width,y:e.y+e.height}}function gc(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:mc(e.x+e.width/2),y:mc(e.y+e.height/2)}}function bc(e,t){var n=e.snapped;return!!n&&("string"==typeof t?n[t]:n.x&&n.y)}function xc(e,t,n){if("string"!=typeof t)throw new Error("axis must be in [x, y]");if("number"!=typeof n&&!1!==n)throw new Error("value must be Number or false");var i,r=e[t],o=e.snapped=e.snapped||{};return!1===n?o[t]=!1:(o[t]=!0,i=n-r,e[t]+=i,e["d"+t]+=i),r}function Ec(e){return e.children||[]}var _c=Math.abs,wc=Math.round,Sc=10;function Cc(e){function t(e,t){if(l(e)){for(var n=e.length;n--;)if(_c(e[n]-t)<=Sc)return e[n]}else{var i=t%(e=+e);if(i<Sc)return t-i;if(i>e-Sc)return t-i+e}return t}function n(e){if(e.width)return{x:wc(e.width/2+e.x),y:wc(e.height/2+e.y)}}e.on("connectionSegment.move.move",1500,function(e){var i,r,o=function(e){var t=e.snapPoints,i=e.connection,r=i.waypoints,o=e.segmentStart,a=e.segmentStartIndex,s=e.segmentEnd,c=e.segmentEndIndex,p=e.axis;if(t)return t;var u=[r[a-1],o,s,r[c+1]];return a<2&&u.unshift(n(i.source)),c>r.length-3&&u.unshift(n(i.target)),e.snapPoints=t={horizontal:[],vertical:[]},b(u,function(e){e&&(e=e.original||e,"y"===p&&t.horizontal.push(e.y),"x"===p&&t.vertical.push(e.x))}),t}(e.context),a=e.x,s=e.y;if(o){var c=a-(i=t(o.vertical,a)),p=s-(r=t(o.horizontal,s));F(e,{dx:e.dx-c,dy:e.dy-p,x:i,y:r}),(c||-1!==o.vertical.indexOf(a))&&xc(e,"x",i),(p||-1!==o.horizontal.indexOf(s))&&xc(e,"y",r)}}),e.on(["bendpoint.move.move","bendpoint.move.end"],1500,function(e){var i,r,o=e.context,a=function(e){var t=e.snapPoints,n=e.connection.waypoints,i=e.bendpointIndex;if(t)return t;var r=[n[i-1],n[i+1]];return e.snapPoints=t={horizontal:[],vertical:[]},b(r,function(e){e&&(e=e.original||e,t.horizontal.push(e.y),t.vertical.push(e.x))}),t}(o),s=o.hover,c=s&&n(s),p=e.x,u=e.y;if(a){var l=p-(i=t(c?a.vertical.concat([c.x]):a.vertical,p)),h=u-(r=t(c?a.horizontal.concat([c.y]):a.horizontal,u));F(e,{dx:e.dx-l,dy:e.dy-h,x:e.x-l,y:e.y-h}),(l||-1!==a.vertical.indexOf(p))&&xc(e,"x",i),(h||-1!==a.horizontal.indexOf(u))&&xc(e,"y",r)}})}Cc.$inject=["eventBus"];var Tc={__depends__:[Ss,Ps],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",Ws],bendpointMove:["type",Ys],bendpointMovePreview:["type",ac],connectionSegmentMove:["type",dc],bendpointSnapping:["type",Cc]};function Rc(e,t,n,i){function r(e,t){return i.allowed("connection.create",{source:e,target:t})}e.on("connect.hover",function(e){var t,n=e.context,i=n.start,o=e.hover;if(n.hover=o,!u(t=n.canExecute=r(i,o))){if(!1!==t)return n.source=i,void(n.target=o);u(t=n.canExecute=r(o,i))||!1!==t&&(n.source=o,n.target=i)}}),e.on(["connect.out","connect.cleanup"],function(e){var t=e.context;t.hover=null,t.source=null,t.target=null,t.canExecute=!1}),e.on("connect.end",function(e){var t=e.context,i=t.canExecute,r=t.connectionStart,o={x:e.x,y:e.y},a=t.source,s=t.target;if(!i)return!1;var c=null,p={connectionStart:Ac(t)?o:r,connectionEnd:Ac(t)?r:o};h(i)&&(c=i),n.connect(a,s,c,p)}),this.start=function(e,n,i,r){h(i)||(r=i,i=yo(n)),t.init(e,"connect",{autoActivate:r,data:{shape:n,context:{start:n,connectionStart:i}}})}}function Ac(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}Rc.$inject=["eventBus","dragging","modeling","rules"];var Pc=1100,kc=900,Mc="connect-ok",Dc="connect-not-ok";function Bc(e,t,n){var i=e.get("connectionPreview",!1);i&&t.on("connect.move",function(e){var t=e.context,n=t.canExecute,r=t.hover,o=t.source,a=t.start,s=t.startPosition,c=t.connectionStart,p=t.connectionEnd,u=t.target;c||(c=Ac(t)?{x:e.x,y:e.y}:s),p||(p=Ac(t)?s:{x:e.x,y:e.y}),i.drawPreview(t,n,{source:o||a,target:u||r,connectionStart:c,connectionEnd:p})}),t.on("connect.hover",kc,function(e){var t=e.context,i=e.hover,r=t.canExecute;null!==r&&n.addMarker(i,r?Mc:Dc)}),t.on(["connect.out","connect.cleanup"],Pc,function(e){var t=e.hover;t&&(n.removeMarker(t,Mc),n.removeMarker(t,Dc))}),i&&t.on("connect.cleanup",function(e){i.cleanUp(e.context)})}Bc.$inject=["injector","eventBus","canvas"];var Nc={__depends__:[Wo,Ps,Ss],__init__:["connectPreview"],connect:["type",Rc],connectPreview:["type",Bc]};function Oc(e,t,n,i){this._canvas=t,this._graphicsFactory=n,this._elementFactory=i,this._connectionDocking=e.get("connectionDocking",!1),this._layouter=e.get("layouter",!1)}Oc.$inject=["injector","canvas","graphicsFactory","elementFactory"],Oc.prototype.drawPreview=function(e,t,n){n=n||{};var i,r,o,a=e.connectionPreviewGfx,s=e.getConnection,c=n.source,p=n.target,u=n.waypoints,l=n.connectionStart,h=n.connectionEnd,d=n.noLayout,f=n.noCropping,m=n.noNoop,v=this;a||(a=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),ke(a),s||(s=e.getConnection=(r=function(e,t,n){return v.getConnection(e,t,n)},o={},function(e){var t=JSON.stringify(e),n=o[t];return n||(n=o[t]=r.apply(null,arguments)),n})),t&&(i=s(t,c,p)),i?(i.waypoints=u||[],this._layouter&&!d&&(i.waypoints=this._layouter.layoutConnection(i,{source:c,target:p,connectionStart:l,connectionEnd:h,waypoints:n.waypoints||i.waypoints})),i.waypoints&&i.waypoints.length||(i.waypoints=[c?yo(c):l,p?yo(p):h]),this._connectionDocking&&(c||p)&&!f&&(i.waypoints=this._connectionDocking.getCroppedWaypoints(i,c,p)),this._graphicsFactory.drawConnection(a,i)):!m&&this.drawNoopPreview(a,n)},Oc.prototype.drawNoopPreview=function(e,t){var n=t.source,i=t.target,r=t.connectionStart||yo(n),o=t.connectionEnd||yo(i),a=this.cropWaypoints(r,o,n,i);ge(e,this.createNoopConnection(a[0],a[1]))},Oc.prototype.cropWaypoints=function(e,t,n,i){var r=this._graphicsFactory,o=n&&r.getShapePath(n),a=i&&r.getShapePath(i),s=r.getConnectionPath({waypoints:[e,t]});return[e=n&&bo(o,s,!0)||e,t=i&&bo(a,s,!1)||t]},Oc.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Pe(e.connectionPreviewGfx)},Oc.prototype.getConnection=function(e){var t=function(e){return h(e)?e:{}}(e);return this._elementFactory.createConnection(t)},Oc.prototype.createConnectionPreviewGfx=function(){var e=Oe("g");return _e(e,{pointerEvents:"none"}),Re(e).add("djs-connection-preview"),ge(this._canvas.getDefaultLayer(),e),e},Oc.prototype.createNoopConnection=function(e,t){var n=Oe("polyline");return _e(n,{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"}),_e(n,{points:[e.x,e.y,t.x,t.y]}),n};var jc={__init__:["connectionPreview"],connectionPreview:["type",Oc]},Lc=Math.min,Ic=Math.max;function zc(e){e.preventDefault()}function Fc(e){e.stopPropagation()}function $c(e){this.container=e.container,this.parent=le('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=fe("[contenteditable]",this.parent),this.keyHandler=e.keyHandler||function(){},this.resizeHandler=e.resizeHandler||function(){},this.autoResize=I(this.autoResize,this),this.handlePaste=I(this.handlePaste,this)}function Hc(e,t){this._eventBus=e,this._providers=[],this._textbox=new $c({container:t.getContainer(),keyHandler:I(this._handleKey,this),resizeHandler:I(this._handleResize,this)})}$c.prototype.create=function(e,t,n,i){var r=this.parent,o=this.content,a=this.container;i=this.options=i||{};var s=$(t=this.style=t||{},["width","height","maxWidth","maxHeight","minWidth","minHeight","left","top","backgroundColor","position","overflow","border","wordWrap","textAlign","outline","transform"]);F(r.style,{width:e.width+"px",height:e.height+"px",maxWidth:e.maxWidth+"px",maxHeight:e.maxHeight+"px",minWidth:e.minWidth+"px",minHeight:e.minHeight+"px",left:e.x+"px",top:e.y+"px",backgroundColor:"#ffffff",position:"absolute",overflow:"visible",border:"1px solid #ccc",boxSizing:"border-box",wordWrap:"normal",textAlign:"center",outline:"none"},s);var c=$(t,["fontFamily","fontSize","fontWeight","lineHeight","padding","paddingTop","paddingRight","paddingBottom","paddingLeft"]);return F(o.style,{boxSizing:"border-box",width:"100%",outline:"none",wordWrap:"break-word"},c),i.centerVertically&&F(o.style,{position:"absolute",top:"50%",transform:"translate(0, -50%)"},c),o.innerText=n,ce.bind(o,"keydown",this.keyHandler),ce.bind(o,"mousedown",Fc),ce.bind(o,"paste",this.handlePaste),i.autoResize&&ce.bind(o,"input",this.autoResize),i.resizable&&this.resizable(t),a.appendChild(r),this.setSelection(o.lastChild,o.lastChild&&o.lastChild.length),r},$c.prototype.handlePaste=function(e){var t,n=this.options,i=this.style;if(e.preventDefault(),t=e.clipboardData?e.clipboardData.getData("text/plain"):window.clipboardData.getData("Text"),this.insertText(t),n.autoResize){var r=this.autoResize(i);r&&this.resizeHandler(r)}},$c.prototype.insertText=function(e){document.execCommand("insertText",!1,e)||this._insertTextIE(e)},$c.prototype._insertTextIE=function(e){var t,n,i,r=this.getSelection(),o=r.startContainer,a=r.endContainer,s=r.startOffset,c=r.endOffset,p=r.commonAncestorContainer,u=(t=p.childNodes,[].slice.call(t));if(function(e){return e.nodeType===Node.TEXT_NODE}(p)){var l=o.textContent;o.textContent=l.substring(0,s)+e+l.substring(c),n=o,i=s+e.length}else if(o===this.content&&a===this.content){var h=document.createTextNode(e);this.content.insertBefore(h,u[s]),n=h,i=h.textContent.length}else{var d=u.indexOf(o),f=u.indexOf(a);u.forEach(function(t,n){n===d?t.textContent=o.textContent.substring(0,s)+e+a.textContent.substring(c):n>d&&n<=f&&ve(t)}),n=o,i=s+e.length}n&&void 0!==i&&setTimeout(function(){self.setSelection(n,i)})},$c.prototype.autoResize=function(){var e=this.parent,t=this.content,n=parseInt(this.style.fontSize)||12;if(t.scrollHeight>e.offsetHeight||t.scrollHeight<e.offsetHeight-n){var i=e.getBoundingClientRect(),r=t.scrollHeight;e.style.height=r+"px",this.resizeHandler({width:i.width,height:i.height,dx:0,dy:r-i.height})}},$c.prototype.resizable=function(){var e=this,t=this.parent,n=this.resizeHandle,i=parseInt(this.style.minWidth)||0,r=parseInt(this.style.minHeight)||0,o=parseInt(this.style.maxWidth)||1/0,a=parseInt(this.style.maxHeight)||1/0;if(!n){var s,c,p,u;n=this.resizeHandle=le('<div class="djs-direct-editing-resize-handle"></div>');var l=function(n){zc(n),Fc(n);var l=Lc(Ic(p+n.clientX-s,i),o),h=Lc(Ic(u+n.clientY-c,r),a);t.style.width=l+"px",t.style.height=h+"px",e.resizeHandler({width:p,height:u,dx:n.clientX-s,dy:n.clientY-c})},h=function(e){zc(e),Fc(e),ce.unbind(document,"mousemove",l,!1),ce.unbind(document,"mouseup",h,!1)};ce.bind(n,"mousedown",function(e){zc(e),Fc(e),s=e.clientX,c=e.clientY;var n=t.getBoundingClientRect();p=n.width,u=n.height,ce.bind(document,"mousemove",l),ce.bind(document,"mouseup",h)})}F(n.style,{position:"absolute",bottom:"0px",right:"0px",cursor:"nwse-resize",width:"0",height:"0",borderTop:(parseInt(this.style.fontSize)/4||3)+"px solid transparent",borderRight:(parseInt(this.style.fontSize)/4||3)+"px solid #ccc",borderBottom:(parseInt(this.style.fontSize)/4||3)+"px solid #ccc",borderLeft:(parseInt(this.style.fontSize)/4||3)+"px solid transparent"}),t.appendChild(n)},$c.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),ce.unbind(t,"keydown",this.keyHandler),ce.unbind(t,"mousedown",Fc),ce.unbind(t,"input",this.autoResize),ce.unbind(t,"paste",this.handlePaste),n&&(n.removeAttribute("style"),ve(n)),ve(e)},$c.prototype.getValue=function(){return this.content.innerText.trim()},$c.prototype.getSelection=function(){return window.getSelection().getRangeAt(0)},$c.prototype.setSelection=function(e,t){var n=document.createRange();null===e?n.selectNodeContents(this.content):(n.setStart(e,t),n.setEnd(e,t));var i=window.getSelection();i.removeAllRanges(),i.addRange(n)},Hc.$inject=["eventBus","canvas"],Hc.prototype.registerProvider=function(e){this._providers.push(e)},Hc.prototype.isActive=function(){return!!this._active},Hc.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},Hc.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},Hc.prototype.close=function(){this._textbox.destroy(),this._fire("deactivate"),this._active=null,this.resizable=void 0},Hc.prototype.complete=function(){var e=this._active;if(e){var t,n=e.context.bounds,i=this.$textbox.getBoundingClientRect(),r=this.getValue();r===e.context.text&&i.height===n.height&&i.width===n.width||(t=this._textbox.container.getBoundingClientRect(),e.provider.update(e.element,r,e.context.text,{x:i.left-t.left,y:i.top-t.top,width:i.width,height:i.height})),this._fire("complete"),this.close()}},Hc.prototype.getValue=function(){return this._textbox.getValue()},Hc.prototype._handleKey=function(e){e.stopPropagation();var t=e.keyCode||e.charCode;return 27===t?(e.preventDefault(),this.cancel()):13!==t||e.shiftKey?void 0:(e.preventDefault(),this.complete())},Hc.prototype._handleResize=function(e){this._fire("resize",e)},Hc.prototype.activate=function(e){var t;this.isActive()&&this.cancel();var n=y(this._providers,function(n){return(t=n.activate(e))?n:null});return t&&(this.$textbox=this._textbox.create(t.bounds,t.style,t.text,t.options),this._active={element:e,context:t,provider:n},t.options&&t.options.resizable&&(this.resizable=!0),this._fire("activate")),!!t};var Gc={__depends__:[No],__init__:["directEditing"],directEditing:["type",Hc]};function Wc(e,t,n){this._eventBus=t,this._overlays=n;var i=p(e&&e.scale)?e.scale:{min:1,max:1.5};this._overlaysConfig={position:{right:-9,top:-6},scale:i},this._current=null,this._init()}Wc.$inject=["config.contextPad","eventBus","overlays"],Wc.prototype._init=function(){var e=this._eventBus,t=this;e.on("selection.changed",function(e){var n=e.newSelection;1===n.length?t.open(n[0]):t.close()}),e.on("elements.delete",function(e){b(e.elements,function(e){t.isOpen(e)&&t.close()})}),e.on("element.changed",function(e){var n=e.element,i=t._current;i&&i.element===n&&t.open(n,!0)})},Wc.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("contextPad.getProviders",e,function(e){e.providers.push(t)})},Wc.prototype.getEntries=function(e){var t=this._getProviders(),n={};return b(t,function(t){var i=t.getContextPadEntries(e);f(i)?n=i(n):b(i,function(e,t){n[t]=e})}),n},Wc.prototype.trigger=function(e,t,n){var i,r,o=this._current.element,a=this._current.entries,s=t.delegateTarget||t.target;if(!s)return t.preventDefault();if(i=a[G(s,"data-action")].action,r=t.originalEvent||t,f(i)){if("click"===e)return i(r,o,n)}else if(i[e])return i[e](r,o,n);t.preventDefault()},Wc.prototype.open=function(e,t){!t&&this.isOpen(e)||(this.close(),this._updateAndOpen(e))},Wc.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},Wc.prototype._updateAndOpen=function(e){var t=this.getEntries(e),n=this.getPad(e),i=n.html;b(t,function(e,t){var n,r=e.group||"default",o=le(e.html||'<div class="entry" draggable="true"></div>');G(o,"data-action",t),(n=fe("[data-group="+r+"]",i))||(n=le('<div class="group" data-group="'+r+'"></div>'),i.appendChild(n)),n.appendChild(o),e.className&&function(e,t){var n=K(e);(l(t)?t:t.split(/\s+/g)).forEach(function(e){n.add(e)})}(o,e.className),e.title&&G(o,"title",e.title),e.imageUrl&&o.appendChild(le('<img src="'+e.imageUrl+'">'))}),K(i).add("open"),this._current={element:e,pad:n,entries:t},this._eventBus.fire("contextPad.open",{current:this._current})},Wc.prototype.getPad=function(e){if(this.isOpen())return this._current.pad;var t=this,n=this._overlays,i=le('<div class="djs-context-pad"></div>'),r=F({html:i},this._overlaysConfig);ue.bind(i,".entry","click",function(e){t.trigger("click",e)}),ue.bind(i,".entry","dragstart",function(e){t.trigger("dragstart",e)}),ce.bind(i,"mousedown",function(e){e.stopPropagation()}),this._overlayId=n.add(e,"context-pad",r);var o=n.get(this._overlayId);return this._eventBus.fire("contextPad.create",{element:e,pad:o}),o},Wc.prototype.close=function(){this.isOpen()&&(this._overlays.remove(this._overlayId),this._overlayId=null,this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},Wc.prototype.isOpen=function(e){return!(!this._current||e&&this._current.element!==e)};var Vc={__depends__:[No,Zo],contextPad:["type",Wc]},Uc=["marker-start","marker-mid","marker-end"],qc=["circle","ellipse","line","path","polygon","polyline","rect"];function Kc(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._styles=i,this._clonedMarkers={};var r=this;t.on("drag.cleanup",function(){b(r._clonedMarkers,function(e){Pe(e)}),r._clonedMarkers={}})}Kc.$inject=["elementRegistry","eventBus","canvas","styles"],Kc.prototype.getGfx=function(e){return this._elementRegistry.getGraphics(e)},Kc.prototype.addDragger=function(e,t,n){var i=Me(n=n||this.getGfx(e)),r=n.getBoundingClientRect();return this._cloneMarkers(Qt(i)),_e(i,this._styles.cls("djs-dragger",[],{x:r.top,y:r.left})),ge(t,i),i},Kc.prototype.addFrame=function(e,t){var n=Oe("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return ge(t,n),n},Kc.prototype._cloneMarkers=function(e){var t=this;if(e.childNodes)for(var n=0;n<e.childNodes.length;n++)t._cloneMarkers(e.childNodes[n]);(function(e){return-1!==qc.indexOf(e.nodeName)})(e)&&Uc.forEach(function(n){if(_e(e,n)){var i=function(e,t,n){return fe("marker#"+(i=_e(e,t),i.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]),n||document);var i}(e,n,t._canvas.getContainer());t._cloneMarker(e,i,n)}})},Kc.prototype._cloneMarker=function(e,t,n){var i=t.id,r=this._clonedMarkers[i];if(!r){var o=i+"-clone";(r=Me(t)).id=o,Re(r).add("djs-dragger").add("djs-dragger-marker"),this._clonedMarkers[i]=r;var a=fe("defs",this._canvas._svg);a||(a=Oe("defs"),ge(this._canvas._svg,a)),ge(a,r)}_e(e,n,"url(#"+this._clonedMarkers[i].id+")")};var Yc={__init__:["previewSupport"],previewSupport:["type",Kc]},Xc="drop-ok",Zc="drop-not-ok",Qc="attach-ok",Jc="new-parent",ep="create",tp=2e3;function np(e,t,n,i,r){function o(t,n){[Qc,Xc,Zc,Jc].forEach(function(i){i===n?e.addMarker(t,i):e.removeMarker(t,i)})}function a(){var e=t.context();e&&e.prefix===ep&&t.cancel()}n.on(["create.move","create.hover"],function(e){var t=e.context,n=t.elements,i=e.hover,a=t.source,s=t.hints||{};if(!i)return t.canExecute=!1,void(t.target=null);ip(e);var c={x:e.x,y:e.y},p=t.canExecute=i&&function(e,t,n,i,o){if(!t)return!1;var a=y(e=g(e,function(t){var n=t.labelTarget;return!(t.parent||function(e){return!!e.labelTarget}(t)&&-1!==e.indexOf(n))}),function(e){return!rp(e)}),s=!1,c=!1,p=!1;op(e)&&(s=r.allowed("shape.attach",{position:n,shape:a,target:t})),s||(p=op(e)?r.allowed("shape.create",{position:n,shape:a,source:i,target:t}):r.allowed("elements.create",{elements:e,position:n,target:t}));var u=o.connectionTarget;return p||s?(a&&i&&(c=r.allowed("connection.create",{source:u===i?a:i,target:u===i?i:a,hints:{targetParent:t,targetAttach:s}})),{attach:s,connect:c}):(null===p||null===s)&&null}(n,i,c,a,s);i&&null!==p&&(t.target=i,p&&p.attach?o(i,Qc):o(i,p?Jc:Zc))}),n.on(["create.end","create.out","create.cleanup"],function(e){var t=e.hover;t&&o(t,null)}),n.on("create.end",function(e){var t=e.context,n=t.source,r=t.shape,o=t.elements,a=t.target,s=t.canExecute,c=s&&s.attach,p=s&&s.connect,u=t.hints||{};if(!1===s||!a)return!1;ip(e);var l={x:e.x,y:e.y};r=p?i.appendShape(n,r,l,a,{attach:c,connection:!0===p?{}:p,connectionTarget:u.connectionTarget}):y(o=i.createElements(o,l,a,F({},u,{attach:c})),function(e){return!rp(e)}),F(t,{elements:o,shape:r}),F(e,{elements:o,shape:r})}),n.on("create.init",function(){n.on("elements.changed",a),n.once(["create.cancel","create.end"],tp,function(){n.off("elements.changed",a)})}),this.start=function(e,n,i){l(n)||(n=[n]);var r=y(n,function(e){return!rp(e)});if(r){i=F({elements:n,hints:{},shape:r},i||{}),b(n,function(e){d(e.x)||(e.x=0),d(e.y)||(e.y=0)});var o=ft(n);b(n,function(e){rp(e)&&(e.waypoints=S(e.waypoints,function(e){return{x:e.x-o.x-o.width/2,y:e.y-o.y-o.height/2}})),F(e,{x:e.x-o.x-o.width/2,y:e.y-o.y-o.height/2})}),t.init(e,ep,{cursor:"grabbing",autoActivate:!0,data:{shape:r,elements:n,context:i}})}}}function ip(e){var t=e.context.createConstraints;t&&(t.left&&(e.x=Math.max(e.x,t.left)),t.right&&(e.x=Math.min(e.x,t.right)),t.top&&(e.y=Math.max(e.y,t.top)),t.bottom&&(e.y=Math.min(e.y,t.bottom)))}function rp(e){return!!e.waypoints}function op(e){return e&&1===e.length&&!rp(e[0])}np.$inject=["canvas","dragging","eventBus","modeling","rules"];var ap=750;function sp(e,t,n,i,r){t.on("create.move",ap,function(t){var o=t.hover,a=t.context,s=a.elements,c=a.dragGroup;c||(c=a.dragGroup=function(e){var t=Oe("g");_e(t,r.cls("djs-drag-group",["no-events"]));var o=Oe("g");return e.forEach(function(e){var r;e.hidden||(e.waypoints?(r=n._createContainer("connection",o),n.drawConnection(Qt(r),e)):(r=n._createContainer("shape",o),n.drawShape(Qt(r),e),en(r,e.x,e.y)),i.addDragger(e,t,r))}),t}(s)),o?(c.parentNode||ge(e.getDefaultLayer(),c),en(c,t.x,t.y)):Pe(c)}),t.on("create.cleanup",function(e){var t=e.context.dragGroup;t&&Pe(t)})}sp.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];var cp={__depends__:[Ss,Yc,Ps,Wo],__init__:["create","createPreview"],create:["type",np],createPreview:["type",sp]},pp=["contextPad.close","canvas.viewbox.changing","commandStack.changed"];function up(e,t,n){var i=p(e&&e.scale)?e.scale:{min:1,max:1.5};this._config={scale:i},this._eventBus=t,this._canvas=n,this._providers={},this._current={}}up.$inject=["config.popupMenu","eventBus","canvas"],up.prototype.registerProvider=function(e,t,n){n||(n=t,t=1e3),this._eventBus.on("popupMenu.getProviders."+e,t,function(e){e.providers.push(n)})},up.prototype.isEmpty=function(e,t){if(!e)throw new Error("element parameter is missing");if(!t)throw new Error("providerId parameter is missing");var n=this._getProviders(t);if(!n)return!0;var i=this._getEntries(e,n),r=this._getHeaderEntries(e,n),o=T(i)>0,a=r&&T(r)>0;return!o&&!a},up.prototype.open=function(e,t,n){var i=this._getProviders(t);if(!e)throw new Error("Element is missing");if(!i||!i.length)throw new Error("No registered providers for: "+t);if(!n)throw new Error("the position argument is missing");this.isOpen()&&this.close(),this._emit("open");var r=this._current={className:t,element:e,position:n},o=this._getEntries(e,i),a=this._getHeaderEntries(e,i);r.entries=F({},o,a),r.container=this._createContainer(),T(a)&&r.container.appendChild(this._createEntries(a,"djs-popup-header")),T(o)&&r.container.appendChild(this._createEntries(o,"djs-popup-body"));var s=this._canvas.getContainer();this._attachContainer(r.container,s,n.cursor),this._bindAutoClose()},up.prototype.close=function(){this.isOpen()&&(this._emit("close"),this._unbindAutoClose(),ve(this._current.container),this._current.container=null)},up.prototype.isOpen=function(){return!!this._current.container},up.prototype.trigger=function(e){e.preventDefault();var t=G(e.delegateTarget||e.target,"data-id"),n=this._getEntry(t);if(n.action)return n.action.call(null,e,n)},up.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"popupMenu.getProviders."+e,providers:[]});return this._eventBus.fire(t),t.providers},up.prototype._getEntries=function(e,t){var n={};return b(t,function(t){if(t.getPopupMenuEntries){var i=t.getPopupMenuEntries(e);f(i)?n=i(n):b(i,function(e,t){n[t]=e})}else b(t.getEntries(e),function(e){var t=e.id;if(!t)throw new Error("every entry must have the id property set");n[t]=H(e,["id"])})}),n},up.prototype._getHeaderEntries=function(e,t){var n={};return b(t,function(t){if(t.getPopupMenuHeaderEntries){var i=t.getPopupMenuHeaderEntries(e);f(i)?n=i(n):b(i,function(e,t){n[t]=e})}else{if(!t.getHeaderEntries)return;b(t.getHeaderEntries(e),function(e){var t=e.id;if(!t)throw new Error("every entry must have the id property set");n[t]=H(e,["id"])})}}),n},up.prototype._getEntry=function(e){var t=this._current.entries[e];if(!t)throw new Error("entry not found");return t},up.prototype._emit=function(e){this._eventBus.fire("popupMenu."+e)},up.prototype._createContainer=function(){var e=le('<div class="djs-popup">'),t=this._current.position,n=this._current.className;return F(e.style,{position:"absolute",left:t.x+"px",top:t.y+"px",visibility:"hidden"}),K(e).add(n),e},up.prototype._attachContainer=function(e,t,n){var i=this;ue.bind(e,".entry","click",function(e){i.trigger(e)}),this._updateScale(e),t.appendChild(e),n&&this._assureIsInbounds(e,n)},up.prototype._updateScale=function(e){var t,n,i=this._canvas.zoom(),r=this._config.scale,o=i;!0!==r&&(!1===r?(t=1,n=1):(t=r.min,n=r.max),p(t)&&i<t&&(o=t),p(n)&&i>n&&(o=n)),function(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(n){e.style[n+"transform"]=t})}(e,"scale("+o+")")},up.prototype._assureIsInbounds=function(e,t){var n,i,r=this._canvas._container.getBoundingClientRect(),o=e.offsetLeft,a=e.offsetTop,s=e.scrollWidth,c=e.scrollHeight,p={},u=t.x-r.left,l=t.y-r.top;o+s>r.width&&(p.x=!0),a+c>r.height&&(p.y=!0),p.x&&p.y?(n=u-s+"px",i=l-c+"px"):p.x?(n=u-s+"px",i=l+"px"):p.y&&l<c?(n=u+"px",i="10px"):p.y&&(n=u+"px",i=l-c+"px"),F(e.style,{left:n,top:i},{visibility:"visible","z-index":1e3})},up.prototype._createEntries=function(e,t){var n=le("<div>"),i=this;return K(n).add(t),b(e,function(e,t){var r=i._createEntry(e,t);n.appendChild(r)}),n},up.prototype._createEntry=function(e,t){var n=le("<div>"),i=K(n);if(i.add("entry"),e.className&&e.className.split(" ").forEach(function(e){i.add(e)}),G(n,"data-id",t),e.label){var r=le("<span>");r.textContent=e.label,n.appendChild(r)}return e.imageUrl&&n.appendChild(le('<img src="'+e.imageUrl+'" />')),!0===e.active&&i.add("active"),!0===e.disabled&&i.add("disabled"),e.title&&(n.title=e.title),n},up.prototype._bindAutoClose=function(){this._eventBus.once(pp,this.close,this)},up.prototype._unbindAutoClose=function(){this._eventBus.off(pp,this.close,this)};var lp={__init__:["popupMenu"],popupMenu:["type",up]};function hp(){}hp.prototype.get=function(){return this._data},hp.prototype.set=function(e){this._data=e},hp.prototype.clear=function(){var e=this._data;return delete this._data,e},hp.prototype.isEmpty=function(){return!this._data};var dp={clipboard:["type",hp]};function fp(e){var t=this;function n(e){t._lastMoveEvent=e}this._lastMoveEvent=null,e.on("canvas.init",function(e){(t._svg=e.svg).addEventListener("mousemove",n)}),e.on("canvas.destroy",function(){t._lastMouseEvent=null,t._svg.removeEventListener("mousemove",n)})}fp.$inject=["eventBus"],fp.prototype.getLastMoveEvent=function(){return this._lastMoveEvent||function(e,t){var n=document.createEvent("MouseEvent"),i=e,r=t,o=e,a=t;n.initMouseEvent&&n.initMouseEvent("mousemove",!0,!0,window,0,i,r,o,a,!1,!1,!1,!1,0,null);return n}(0,0)};var mp={__init__:["mouse"],mouse:["type",fp]};function vp(e,t,n,i,r,o,a,s){this._canvas=e,this._create=t,this._clipboard=n,this._elementFactory=i,this._eventBus=r,this._modeling=o,this._mouse=a,this._rules=s,r.on("copyPaste.copyElement",function(e){var t=e.descriptor,n=e.element,i=e.elements;t.priority=1,t.id=n.id,y(i,function(e){return e===n.parent})&&(t.parent=n.parent.id),function(e){return!!e.host}(n)&&(t.priority=2,t.host=n.host.id),yp(n)&&(t.priority=3,t.source=n.source.id,t.target=n.target.id,t.waypoints=function(e){return S(e.waypoints,function(e){return(e=bp(e)).original&&(e.original=bp(e.original)),e})}(n)),gp(n)&&(t.priority=4,t.labelTarget=n.labelTarget.id),b(["x","y","width","height"],function(e){d(n[e])&&(t[e]=n[e])}),t.hidden=n.hidden,t.collapsed=n.collapsed}),r.on("copyPaste.pasteElements",function(e){F(e.hints,{createElementsBehavior:!1})})}function yp(e){return!!e.waypoints}function gp(e){return!!e.labelTarget}function bp(e){return F({},e)}function xp(e,t){var n=t.indexOf(e);return-1===n?t:t.splice(n,1)}vp.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],vp.prototype.copy=function(e){var t,n;return l(e)||(e=e?[e]:[]),n=!1===(t=this._eventBus.fire("copyPaste.canCopyElements",{elements:e}))?{}:this.createTree(l(t)?t:e),this._clipboard.set(n),this._eventBus.fire("copyPaste.elementsCopied",{elements:e,tree:n}),n},vp.prototype.paste=function(e){var t=this._clipboard.get();if(!this._clipboard.isEmpty()){var n=e&&e.hints||{};this._eventBus.fire("copyPaste.pasteElements",{hints:n});var i=this._createElements(t);if(e&&e.element&&e.point)return this._paste(i,e.element,e.point,n);this._create.start(this._mouse.getLastMoveEvent(),i,{hints:n||{}})}},vp.prototype._paste=function(e,t,n,i){b(e,function(e){d(e.x)||(e.x=0),d(e.y)||(e.y=0)});var r=ft(e);return b(e,function(e){yp(e)&&(e.waypoints=S(e.waypoints,function(e){return{x:e.x-r.x-r.width/2,y:e.y-r.y-r.height/2}})),F(e,{x:e.x-r.x-r.width/2,y:e.y-r.y-r.height/2})}),this._modeling.createElements(e,n,t,F({},i))},vp.prototype._createElements=function(e){var t=this,n=this._eventBus,i={},r=[];return b(e,function(e,o){b(e=M(e,"priority"),function(e){var o,a=F({},H(e,["priority"]));return i[e.parent]?a.parent=i[e.parent]:delete a.parent,n.fire("copyPaste.pasteElement",{cache:i,descriptor:a}),yp(a)?(a.source=i[e.source],a.target=i[e.target],o=i[e.id]=t.createConnection(a),void r.push(o)):gp(a)?(a.labelTarget=i[a.labelTarget],o=i[e.id]=t.createLabel(a),void r.push(o)):(a.host&&(a.host=i[a.host]),o=i[e.id]=t.createShape(a),void r.push(o))})}),r},vp.prototype.createConnection=function(e){return this._elementFactory.createConnection(H(e,["id"]))},vp.prototype.createLabel=function(e){return this._elementFactory.createLabel(H(e,["id"]))},vp.prototype.createShape=function(e){return this._elementFactory.createShape(H(e,["id"]))},vp.prototype.hasRelations=function(e,t){var n,i;return!(yp(e)&&(n=y(t,D({id:e.source.id})),i=y(t,D({id:e.target.id})),!n||!i))&&!(gp(e)&&!y(t,D({id:e.labelTarget.id})))},vp.prototype.createTree=function(e){var t=this._rules,n=this,i={},r=[];function o(e,t){var n=y(r,function(t){return e===t.element});n?n.depth<t&&(r=function(e,t){var n=t.indexOf(e);-1!==n&&t.splice(n,1);return t}(n,r)).push({element:n.element,depth:t}):r.push({element:e,depth:t})}return ht(ut(e),function(e,t,n){if(!gp(e))return b(e.labels,function(e){o(e,n)}),b([e.attachers,e.incoming,e.outgoing],function(e){e&&e.length&&b(e,function(e){b(e.labels,function(e){o(e,n)}),o(e,n)})}),o(e,n),e.children}),e=S(r,function(e){return e.element}),r=M(r=S(r,function(t){return t.descriptor={},n._eventBus.fire("copyPaste.copyElement",{descriptor:t.descriptor,element:t.element,elements:e}),t}),function(e){return e.descriptor.priority}),e=S(r,function(e){return e.element}),b(r,function(r){var o=r.depth;n.hasRelations(r.element,e)?!function(e,n){return t.allowed("element.copy",{element:e,elements:n})}(r.element,e)?xp(r.element,e):(i[o]||(i[o]=[]),i[o].push(r.descriptor)):xp(r.element,e)}),i};var Ep={__depends__:[dp,cp,mp,Ps],__init__:["copyPaste"],copyPaste:["type",vp]};function _p(e,t,n){l(n)||(n=[n]),b(n,function(n){c(e[n])||(t[n]=e[n])})}var wp=750;function Sp(e,t,n){var i;t.on("copyPaste.copyElement",wp,function(e){var t=e.descriptor,n=e.element,i=t.oldBusinessObject=Gi(n);if(t.type=n.type,_p(i,t,"name"),t.di={},_p(i.di,t.di,["fill","stroke"]),_p(i.di,t,"isExpanded"),Cp(t))return t;i.default&&(t.default=i.default.id)}),t.on("moddleCopy.canCopyProperty",function(t){var i,r=t.parent,o=t.property;if("processRef"===t.propertyName&&Hi(r,"bpmn:Participant")&&Hi(o,"bpmn:Process"))return i=e.create("bpmn:Process"),n.copyElement(o,i)}),t.on("copyPaste.pasteElements",function(){i={}}),t.on("copyPaste.pasteElement",function(t){var r,o,a,s=t.cache,c=t.descriptor,p=c.oldBusinessObject;Cp(c)?c.businessObject=Gi(s[c.labelTarget]):(r=e.create(p.$type),c.businessObject=n.copyElement(p,r),function(e,t){var n=Gi(e);e.default&&(i[e.default]={element:n,property:"default"}),e.host&&(Gi(e).attachedToRef=Gi(t[e.host])),i=H(i,E(i,function(t,i,r){var o=i.element,a=i.property;return r===e.id&&(o[a]=n,t.push(e.id)),t},[]))}(c,s),_p(c,r,["isExpanded","name"]),o=c,l(a="oldBusinessObject")||(a=[a]),b(a,function(e){o[e]&&delete o[e]}))})}function Cp(e){return!!e.labelTarget}Sp.$inject=["bpmnFactory","eventBus","moddleCopy"];var Tp=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing"];function Rp(e,t,n){this._bpmnFactory=t,this._eventBus=e,this._moddle=n,e.on("moddleCopy.canCopyProperties",function(e){var t=e.propertyNames;if(t&&t.length)return M(t,function(e){return"extensionElements"===e})}),e.on("moddleCopy.canCopyProperty",function(e){var t=e.parent,n=h(t)&&t.$descriptor,i=e.propertyName;return(!i||-1===Tp.indexOf(i))&&(!(i&&n&&!y(n.properties,D({name:i})))&&void 0)}),e.on("moddleCopy.canSetCopiedProperty",function(e){var t,n,i=e.property;if(n="bpmn:ExtensionElements",(t=i)&&"function"==typeof t.$instanceOf&&t.$instanceOf(n)&&(!i.values||!i.values.length))return!1})}function Ap(e,t){return E(e.properties,function(e,n){return t&&n.default?e:e.concat(n.name)},[])}Rp.$inject=["eventBus","bpmnFactory","moddle"],Rp.prototype.copyElement=function(e,t,n){var i=this;n&&!l(n)&&(n=[n]),n=n||Ap(e.$descriptor);var r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t});return!1===r?t:(l(r)&&(n=r),b(n,function(n){var r;v(e,n)&&(r=e.get(n));var o=i.copyProperty(r,t,n);!1!==i._eventBus.fire("moddleCopy.canSetCopiedProperty",{parent:t,property:o,propertyName:n})&&p(o)&&t.set(n,o)}),t)},Rp.prototype.copyProperty=function(e,t,n){var i=this,r=this._eventBus.fire("moddleCopy.canCopyProperty",{parent:t,property:e,propertyName:n});if(!1!==r){if(r)return h(r)&&r.$type&&!r.$parent&&(r.$parent=t),r;var o=this._moddle.getPropertyDescriptor(t,n);if(!o.isId&&!o.isReference){if(l(e))return E(e,function(e,o){return(r=i.copyProperty(o,t,n))?(r.$parent=t,e.concat(r)):e},[]);if(h(e)&&e.$type){if(this._moddle.getElementDescriptor(e).isGeneric)return;return(r=i._bpmnFactory.create(e.$type)).$parent=t,r=i.copyElement(e,r)}return e}}};var Pp={__depends__:[Ep],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",Sp],moddleCopy:["type",Rp]},kp=Math.round;function Mp(e){this._modeling=e}Mp.$inject=["modeling"],Mp.prototype.replaceElement=function(e,t,n){if(e.waypoints)return null;var i=this._modeling,r=t.width||e.width,o=t.height||e.height,a=t.x||e.x,s=t.y||e.y,c=kp(a+r/2),p=kp(s+o/2);return i.replaceShape(e,F({},t,{x:c,y:p,width:r,height:o}),n)};var Dp={__init__:["replace"],replace:["type",Mp]};var Bp=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function Np(e,t,n,i,r,o){this.replaceElement=function(a,s,p){p=p||{};var u=s.type,h=a.businessObject;if(Op(h)&&"bpmn:SubProcess"===u&&function(e,t){var n=e&&v(e,"collapsed")?e.collapsed:!Wi(e);return n!==(t&&(v(t,"collapsed")||v(t,"isExpanded"))?v(t,"collapsed")?t.collapsed:!t.isExpanded:n)&&(e.collapsed=n,!0)}(a,s))return i.toggleCollapse(a),a;var d,f=e.create(u),m={type:u,businessObject:f},y=Ap(h.$descriptor),x=Ap(f.$descriptor,!0),E=(d=x,y.filter(function(e){return-1!==d.indexOf(e)}));F(f,$(s,Bp));var _=g(E,function(e){return"eventDefinitions"===e?jp(a,s.eventDefinitionType):"loopCharacteristics"===e?!Vi(f):!f.hasOwnProperty(e)&&("processRef"!==e||!1!==s.isExpanded)&&"triggeredByEvent"!==e});return f=n.copyElement(h,f,_),s.eventDefinitionType&&(jp(f,s.eventDefinitionType)||(m.eventDefinitionType=s.eventDefinitionType,m.eventDefinitionAttrs=s.eventDefinitionAttrs)),Hi(h,"bpmn:Activity")&&(Op(h)?m.isExpanded=Wi(h):s&&v(s,"isExpanded")&&(m.isExpanded=s.isExpanded),Wi(h)&&!Hi(h,"bpmn:Task")&&m.isExpanded&&(m.width=a.width,m.height=a.height)),Op(h)&&!Op(f)&&(p.moveChildren=!1),Hi(h,"bpmn:Participant")&&(!0===s.isExpanded?f.processRef=e.create("bpmn:Process"):p.moveChildren=!1,m.width=a.width,m.height=t._getDefaultSize(f).height),f.name=h.name,os(h,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&os(f,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(f.default=h.default),s.host&&!Hi(h,"bpmn:BoundaryEvent")&&Hi(f,"bpmn:BoundaryEvent")&&(m.host=s.host),m.di={},function(e,t,n){l(n)||(n=[n]),b(n,function(n){c(e[n])||(t[n]=e[n])})}(h.di,m.di,["fill","stroke"]),m=r.replaceElement(a,m,p),!1!==p.select&&o.select(m),m}}function Op(e){return Hi(e,"bpmn:SubProcess")}function jp(e,t){var n=Gi(e);return t&&n.get("eventDefinitions").some(function(e){return Hi(e,t)})}Np.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","selection"];var Lp={__depends__:[Pp,Dp,Wo],bpmnReplace:["type",Np]};function Ip(e){return function(t){var n=t.target,i=Gi(e),r=i.eventDefinitions&&i.eventDefinitions[0],o=i.$type===n.type,a=(r&&r.$type)===n.eventDefinitionType,s=i.triggeredByEvent===n.triggeredByEvent,c=void 0===n.isExpanded||n.isExpanded===Wi(i);return!(o&&a&&s&&c)}}var zp=[{label:"Start Event",actionName:"replace-with-none-start",className:"bpmn-icon-start-event-none",target:{type:"bpmn:StartEvent"}},{label:"Intermediate Throw Event",actionName:"replace-with-none-intermediate-throwing",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:IntermediateThrowEvent"}},{label:"End Event",actionName:"replace-with-none-end",className:"bpmn-icon-end-event-none",target:{type:"bpmn:EndEvent"}},{label:"Message Start Event",actionName:"replace-with-message-start",className:"bpmn-icon-start-event-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Timer Start Event",actionName:"replace-with-timer-start",className:"bpmn-icon-start-event-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},{label:"Conditional Start Event",actionName:"replace-with-conditional-start",className:"bpmn-icon-start-event-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},{label:"Signal Start Event",actionName:"replace-with-signal-start",className:"bpmn-icon-start-event-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}}],Fp=[{label:"Start Event",actionName:"replace-with-none-start",className:"bpmn-icon-start-event-none",target:{type:"bpmn:StartEvent"}},{label:"Intermediate Throw Event",actionName:"replace-with-none-intermediate-throwing",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:IntermediateThrowEvent"}},{label:"End Event",actionName:"replace-with-none-end",className:"bpmn-icon-end-event-none",target:{type:"bpmn:EndEvent"}}],$p=[{label:"Start Event",actionName:"replace-with-none-start",className:"bpmn-icon-start-event-none",target:{type:"bpmn:StartEvent"}},{label:"Intermediate Throw Event",actionName:"replace-with-none-intermediate-throw",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:IntermediateThrowEvent"}},{label:"End Event",actionName:"replace-with-none-end",className:"bpmn-icon-end-event-none",target:{type:"bpmn:EndEvent"}},{label:"Message Intermediate Catch Event",actionName:"replace-with-message-intermediate-catch",className:"bpmn-icon-intermediate-event-catch-message",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Message Intermediate Throw Event",actionName:"replace-with-message-intermediate-throw",className:"bpmn-icon-intermediate-event-throw-message",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Timer Intermediate Catch Event",actionName:"replace-with-timer-intermediate-catch",className:"bpmn-icon-intermediate-event-catch-timer",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},{label:"Escalation Intermediate Throw Event",actionName:"replace-with-escalation-intermediate-throw",className:"bpmn-icon-intermediate-event-throw-escalation",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},{label:"Conditional Intermediate Catch Event",actionName:"replace-with-conditional-intermediate-catch",className:"bpmn-icon-intermediate-event-catch-condition",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},{label:"Link Intermediate Catch Event",actionName:"replace-with-link-intermediate-catch",className:"bpmn-icon-intermediate-event-catch-link",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:LinkEventDefinition",eventDefinitionAttrs:{name:""}}},{label:"Link Intermediate Throw Event",actionName:"replace-with-link-intermediate-throw",className:"bpmn-icon-intermediate-event-throw-link",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:LinkEventDefinition",eventDefinitionAttrs:{name:""}}},{label:"Compensation Intermediate Throw Event",actionName:"replace-with-compensation-intermediate-throw",className:"bpmn-icon-intermediate-event-throw-compensation",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},{label:"Signal Intermediate Catch Event",actionName:"replace-with-signal-intermediate-catch",className:"bpmn-icon-intermediate-event-catch-signal",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},{label:"Signal Intermediate Throw Event",actionName:"replace-with-signal-intermediate-throw",className:"bpmn-icon-intermediate-event-throw-signal",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}}],Hp=[{label:"Start Event",actionName:"replace-with-none-start",className:"bpmn-icon-start-event-none",target:{type:"bpmn:StartEvent"}},{label:"Intermediate Throw Event",actionName:"replace-with-none-intermediate-throw",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:IntermediateThrowEvent"}},{label:"End Event",actionName:"replace-with-none-end",className:"bpmn-icon-end-event-none",target:{type:"bpmn:EndEvent"}},{label:"Message End Event",actionName:"replace-with-message-end",className:"bpmn-icon-end-event-message",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Escalation End Event",actionName:"replace-with-escalation-end",className:"bpmn-icon-end-event-escalation",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},{label:"Error End Event",actionName:"replace-with-error-end",className:"bpmn-icon-end-event-error",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:ErrorEventDefinition"}},{label:"Cancel End Event",actionName:"replace-with-cancel-end",className:"bpmn-icon-end-event-cancel",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:CancelEventDefinition"}},{label:"Compensation End Event",actionName:"replace-with-compensation-end",className:"bpmn-icon-end-event-compensation",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},{label:"Signal End Event",actionName:"replace-with-signal-end",className:"bpmn-icon-end-event-signal",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},{label:"Terminate End Event",actionName:"replace-with-terminate-end",className:"bpmn-icon-end-event-terminate",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:TerminateEventDefinition"}}],Gp=[{label:"Exclusive Gateway",actionName:"replace-with-exclusive-gateway",className:"bpmn-icon-gateway-xor",target:{type:"bpmn:ExclusiveGateway"}},{label:"Parallel Gateway",actionName:"replace-with-parallel-gateway",className:"bpmn-icon-gateway-parallel",target:{type:"bpmn:ParallelGateway"}},{label:"Inclusive Gateway",actionName:"replace-with-inclusive-gateway",className:"bpmn-icon-gateway-or",target:{type:"bpmn:InclusiveGateway"}},{label:"Complex Gateway",actionName:"replace-with-complex-gateway",className:"bpmn-icon-gateway-complex",target:{type:"bpmn:ComplexGateway"}},{label:"Event based Gateway",actionName:"replace-with-event-based-gateway",className:"bpmn-icon-gateway-eventbased",target:{type:"bpmn:EventBasedGateway",instantiate:!1,eventGatewayType:"Exclusive"}}],Wp=[{label:"Transaction",actionName:"replace-with-transaction",className:"bpmn-icon-transaction",target:{type:"bpmn:Transaction",isExpanded:!0}},{label:"Event Sub Process",actionName:"replace-with-event-subprocess",className:"bpmn-icon-event-subprocess-expanded",target:{type:"bpmn:SubProcess",triggeredByEvent:!0,isExpanded:!0}},{label:"Sub Process (collapsed)",actionName:"replace-with-collapsed-subprocess",className:"bpmn-icon-subprocess-collapsed",target:{type:"bpmn:SubProcess",isExpanded:!1}}],Vp=[{label:"Sub Process",actionName:"replace-with-subprocess",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:SubProcess",isExpanded:!0}},{label:"Event Sub Process",actionName:"replace-with-event-subprocess",className:"bpmn-icon-event-subprocess-expanded",target:{type:"bpmn:SubProcess",triggeredByEvent:!0,isExpanded:!0}}],Up=[{label:"Sub Process",actionName:"replace-with-subprocess",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:SubProcess",isExpanded:!0}},{label:"Transaction",actionName:"replace-with-transaction",className:"bpmn-icon-transaction",target:{type:"bpmn:Transaction",isExpanded:!0}}],qp=[{label:"Task",actionName:"replace-with-task",className:"bpmn-icon-task",target:{type:"bpmn:Task"}},{label:"Send Task",actionName:"replace-with-send-task",className:"bpmn-icon-send",target:{type:"bpmn:SendTask"}},{label:"Receive Task",actionName:"replace-with-receive-task",className:"bpmn-icon-receive",target:{type:"bpmn:ReceiveTask"}},{label:"User Task",actionName:"replace-with-user-task",className:"bpmn-icon-user",target:{type:"bpmn:UserTask"}},{label:"Manual Task",actionName:"replace-with-manual-task",className:"bpmn-icon-manual",target:{type:"bpmn:ManualTask"}},{label:"Business Rule Task",actionName:"replace-with-rule-task",className:"bpmn-icon-business-rule",target:{type:"bpmn:BusinessRuleTask"}},{label:"Service Task",actionName:"replace-with-service-task",className:"bpmn-icon-service",target:{type:"bpmn:ServiceTask"}},{label:"Script Task",actionName:"replace-with-script-task",className:"bpmn-icon-script",target:{type:"bpmn:ScriptTask"}},{label:"Call Activity",actionName:"replace-with-call-activity",className:"bpmn-icon-call-activity",target:{type:"bpmn:CallActivity"}},{label:"Sub Process (collapsed)",actionName:"replace-with-collapsed-subprocess",className:"bpmn-icon-subprocess-collapsed",target:{type:"bpmn:SubProcess",isExpanded:!1}},{label:"Sub Process (expanded)",actionName:"replace-with-expanded-subprocess",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:SubProcess",isExpanded:!0}}],Kp=[{label:"Message Boundary Event",actionName:"replace-with-message-boundary",className:"bpmn-icon-intermediate-event-catch-message",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Timer Boundary Event",actionName:"replace-with-timer-boundary",className:"bpmn-icon-intermediate-event-catch-timer",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},{label:"Escalation Boundary Event",actionName:"replace-with-escalation-boundary",className:"bpmn-icon-intermediate-event-catch-escalation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},{label:"Conditional Boundary Event",actionName:"replace-with-conditional-boundary",className:"bpmn-icon-intermediate-event-catch-condition",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},{label:"Error Boundary Event",actionName:"replace-with-error-boundary",className:"bpmn-icon-intermediate-event-catch-error",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ErrorEventDefinition"}},{label:"Cancel Boundary Event",actionName:"replace-with-cancel-boundary",className:"bpmn-icon-intermediate-event-catch-cancel",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:CancelEventDefinition"}},{label:"Signal Boundary Event",actionName:"replace-with-signal-boundary",className:"bpmn-icon-intermediate-event-catch-signal",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},{label:"Compensation Boundary Event",actionName:"replace-with-compensation-boundary",className:"bpmn-icon-intermediate-event-catch-compensation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},{label:"Message Boundary Event (non-interrupting)",actionName:"replace-with-non-interrupting-message-boundary",className:"bpmn-icon-intermediate-event-catch-non-interrupting-message",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:MessageEventDefinition",cancelActivity:!1}},{label:"Timer Boundary Event (non-interrupting)",actionName:"replace-with-non-interrupting-timer-boundary",className:"bpmn-icon-intermediate-event-catch-non-interrupting-timer",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:TimerEventDefinition",cancelActivity:!1}},{label:"Escalation Boundary Event (non-interrupting)",actionName:"replace-with-non-interrupting-escalation-boundary",className:"bpmn-icon-intermediate-event-catch-non-interrupting-escalation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",cancelActivity:!1}},{label:"Conditional Boundary Event (non-interrupting)",actionName:"replace-with-non-interrupting-conditional-boundary",className:"bpmn-icon-intermediate-event-catch-non-interrupting-condition",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",cancelActivity:!1}},{label:"Signal Boundary Event (non-interrupting)",actionName:"replace-with-non-interrupting-signal-boundary",className:"bpmn-icon-intermediate-event-catch-non-interrupting-signal",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:SignalEventDefinition",cancelActivity:!1}}],Yp=[{label:"Message Start Event",actionName:"replace-with-message-start",className:"bpmn-icon-start-event-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Timer Start Event",actionName:"replace-with-timer-start",className:"bpmn-icon-start-event-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},{label:"Conditional Start Event",actionName:"replace-with-conditional-start",className:"bpmn-icon-start-event-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},{label:"Signal Start Event",actionName:"replace-with-signal-start",className:"bpmn-icon-start-event-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},{label:"Error Start Event",actionName:"replace-with-error-start",className:"bpmn-icon-start-event-error",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ErrorEventDefinition"}},{label:"Escalation Start Event",actionName:"replace-with-escalation-start",className:"bpmn-icon-start-event-escalation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},{label:"Compensation Start Event",actionName:"replace-with-compensation-start",className:"bpmn-icon-start-event-compensation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},{label:"Message Start Event (non-interrupting)",actionName:"replace-with-non-interrupting-message-start",className:"bpmn-icon-start-event-non-interrupting-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition",isInterrupting:!1}},{label:"Timer Start Event (non-interrupting)",actionName:"replace-with-non-interrupting-timer-start",className:"bpmn-icon-start-event-non-interrupting-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition",isInterrupting:!1}},{label:"Conditional Start Event (non-interrupting)",actionName:"replace-with-non-interrupting-conditional-start",className:"bpmn-icon-start-event-non-interrupting-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",isInterrupting:!1}},{label:"Signal Start Event (non-interrupting)",actionName:"replace-with-non-interrupting-signal-start",className:"bpmn-icon-start-event-non-interrupting-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition",isInterrupting:!1}},{label:"Escalation Start Event (non-interrupting)",actionName:"replace-with-non-interrupting-escalation-start",className:"bpmn-icon-start-event-non-interrupting-escalation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",isInterrupting:!1}}],Xp=[{label:"Sequence Flow",actionName:"replace-with-sequence-flow",className:"bpmn-icon-connection"},{label:"Default Flow",actionName:"replace-with-default-flow",className:"bpmn-icon-default-flow"},{label:"Conditional Flow",actionName:"replace-with-conditional-flow",className:"bpmn-icon-conditional-flow"}],Zp=[{label:"Expanded Pool",actionName:"replace-with-expanded-pool",className:"bpmn-icon-participant",target:{type:"bpmn:Participant",isExpanded:!0}},{label:"Collapsed Pool",actionName:"replace-with-collapsed-pool",className:"bpmn-icon-lane",target:{type:"bpmn:Participant",isExpanded:!1}}];function Qp(e,t,n,i,r,o){this._popupMenu=e,this._modeling=t,this._moddle=n,this._bpmnReplace=i,this._rules=r,this._translate=o,this.register()}Qp.$inject=["popupMenu","modeling","moddle","bpmnReplace","rules","translate"],Qp.prototype.register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},Qp.prototype.getEntries=function(e){var t,n=e.businessObject;if(!this._rules.allowed("shape.replace",{element:e}))return[];var i=Ip(e);return Hi(n,"bpmn:StartEvent")&&!Hi(n.$parent,"bpmn:SubProcess")?(t=g(zp,i),this._createEntries(e,t)):Hi(n,"bpmn:Participant")?(t=g(Zp,function(e){return Wi(n)!==e.target.isExpanded}),this._createEntries(e,t)):Hi(n,"bpmn:StartEvent")&&Vi(n.$parent)?(t=g(Yp,function(t){var n=!1!==t.target.isInterrupting,r=Gi(e).isInterrupting===n;return i(t)||!i(t)&&!r}),this._createEntries(e,t)):Hi(n,"bpmn:StartEvent")&&!Vi(n.$parent)&&Hi(n.$parent,"bpmn:SubProcess")?(t=g(Fp,i),this._createEntries(e,t)):Hi(n,"bpmn:EndEvent")?(t=g(Hp,function(e){return!("bpmn:CancelEventDefinition"==e.target.eventDefinitionType&&!Hi(n.$parent,"bpmn:Transaction"))&&i(e)}),this._createEntries(e,t)):Hi(n,"bpmn:BoundaryEvent")?(t=g(Kp,function(e){var t=e.target;if("bpmn:CancelEventDefinition"==t.eventDefinition&&!Hi(n.attachedToRef,"bpmn:Transaction"))return!1;var r=!1!==t.cancelActivity,o=n.cancelActivity==r;return i(e)||!i(e)&&!o}),this._createEntries(e,t)):Hi(n,"bpmn:IntermediateCatchEvent")||Hi(n,"bpmn:IntermediateThrowEvent")?(t=g($p,i),this._createEntries(e,t)):Hi(n,"bpmn:Gateway")?(t=g(Gp,i),this._createEntries(e,t)):Hi(n,"bpmn:Transaction")?(t=g(Vp,i),this._createEntries(e,t)):Vi(n)&&Wi(n)?(t=g(Up,i),this._createEntries(e,t)):Hi(n,"bpmn:SubProcess")&&Wi(n)?(t=g(Wp,i),this._createEntries(e,t)):Hi(n,"bpmn:AdHocSubProcess")&&!Wi(n)?(t=g(qp,function(t){var n=t.target,i="bpmn:SubProcess"===n.type,r=!0===n.isExpanded;return Ip(e)&&(!i||r)}),this._createEntries(e,t)):Hi(n,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,Xp):Hi(n,"bpmn:FlowNode")?(t=g(qp,i),Hi(n,"bpmn:SubProcess")&&!Wi(n)&&(t=g(t,function(e){return"Sub Process (collapsed)"!==e.label})),this._createEntries(e,t)):[]},Qp.prototype.getHeaderEntries=function(e){var t=[];return Hi(e,"bpmn:Activity")&&!Vi(e)&&(t=t.concat(this._getLoopEntries(e))),!Hi(e,"bpmn:SubProcess")||Hi(e,"bpmn:Transaction")||Vi(e)||t.push(this._getAdHocEntry(e)),t},Qp.prototype._createEntries=function(e,t){var n=[],i=this;return b(t,function(t){var r=i._createMenuEntry(t,e);n.push(r)}),n},Qp.prototype._createSequenceFlowEntries=function(e,t){var n=Gi(e),i=[],r=this._modeling,o=this._moddle,a=this;return b(t,function(t){switch(t.actionName){case"replace-with-default-flow":n.sourceRef.default!==n&&(Hi(n.sourceRef,"bpmn:ExclusiveGateway")||Hi(n.sourceRef,"bpmn:InclusiveGateway")||Hi(n.sourceRef,"bpmn:ComplexGateway")||Hi(n.sourceRef,"bpmn:Activity"))&&i.push(a._createMenuEntry(t,e,function(){r.updateProperties(e.source,{default:n})}));break;case"replace-with-conditional-flow":!n.conditionExpression&&Hi(n.sourceRef,"bpmn:Activity")&&i.push(a._createMenuEntry(t,e,function(){var t=o.create("bpmn:FormalExpression",{body:""});r.updateProperties(e,{conditionExpression:t})}));break;default:if(Hi(n.sourceRef,"bpmn:Activity")&&n.conditionExpression)return i.push(a._createMenuEntry(t,e,function(){r.updateProperties(e,{conditionExpression:void 0})}));if((Hi(n.sourceRef,"bpmn:ExclusiveGateway")||Hi(n.sourceRef,"bpmn:InclusiveGateway")||Hi(n.sourceRef,"bpmn:ComplexGateway")||Hi(n.sourceRef,"bpmn:Activity"))&&n.sourceRef.default===n)return i.push(a._createMenuEntry(t,e,function(){r.updateProperties(e.source,{default:void 0})}))}}),i},Qp.prototype._createMenuEntry=function(e,t,n){var i=this._translate,r=this._bpmnReplace.replaceElement;return n=n||function(){return r(t,e.target)},{label:i(e.label),className:e.className,id:e.actionName,action:n}},Qp.prototype._getLoopEntries=function(e){var t=this,n=this._translate;function i(n,i){var r;i.active?r=void 0:(r=t._moddle.create(i.options.loopCharacteristics),i.options.isSequential&&(r.isSequential=i.options.isSequential)),t._modeling.updateProperties(e,{loopCharacteristics:r})}var r,o,a,s=Gi(e).loopCharacteristics;return s&&(r=s.isSequential,o=void 0===s.isSequential,a=void 0!==s.isSequential&&!s.isSequential),[{id:"toggle-parallel-mi",className:"bpmn-icon-parallel-mi-marker",title:n("Parallel Multi Instance"),active:a,action:i,options:{loopCharacteristics:"bpmn:MultiInstanceLoopCharacteristics",isSequential:!1}},{id:"toggle-sequential-mi",className:"bpmn-icon-sequential-mi-marker",title:n("Sequential Multi Instance"),active:r,action:i,options:{loopCharacteristics:"bpmn:MultiInstanceLoopCharacteristics",isSequential:!0}},{id:"toggle-loop",className:"bpmn-icon-loop-marker",title:n("Loop"),active:o,action:i,options:{loopCharacteristics:"bpmn:StandardLoopCharacteristics"}}]},Qp.prototype._getAdHocEntry=function(e){var t=this._translate,n=Hi(Gi(e),"bpmn:AdHocSubProcess"),i=this._bpmnReplace.replaceElement;return{id:"toggle-adhoc",className:"bpmn-icon-ad-hoc-marker",title:t("Ad-hoc"),active:n,action:function(t,r){return i(e,n?{type:"bpmn:SubProcess"}:{type:"bpmn:AdHocSubProcess"},{autoResize:!1,layoutConnection:!1})}}};var Jp={__depends__:[lp,Lp],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",Qp]},eu=Math.max,tu=Math.min,nu=20;function iu(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function ru(e,t,n){var i=t[e],r=n.min&&n.min[e],o=n.max&&n.max[e];return d(r)&&(i=(/top|left/.test(e)?tu:eu)(i,r)),d(o)&&(i=(/top|left/.test(e)?eu:tu)(i,o)),i}function ou(e,t){return void 0!==e?e:nu}function au(e){return!e.waypoints&&"label"!==e.type}function su(e,t){var n;if((n=void 0===e.length?g(e.children,au):e).length)return function(e,t){var n,i,r,o;return"object"==typeof t?(n=ou(t.left),i=ou(t.right),r=ou(t.top),o=ou(t.bottom)):n=i=r=o=ou(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}(ft(n),t)}var cu=Math.abs;var pu=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"];function uu(e,t){return t=t||[],e.children.filter(function(e){Hi(e,"bpmn:Lane")&&(uu(e,t),t.push(e))}),t}function lu(e){return e.children.filter(function(e){return Hi(e,"bpmn:Lane")})}function hu(e){return as(e,pu)||e}function du(e,t){var n=hu(e),i=uu(n,Hi(n,"bpmn:Process")?[]:[n]),r=mo(e),o=mo(t),a=function(e,t){return iu(mo(t),mo(e))}(e,t),s=[];return i.forEach(function(t){if(t!==e){var n,i,c=0,p=a.right,u=0,l=a.left,h=mo(t);a.top&&(cu(h.bottom-r.top)<10&&(u=o.top-h.bottom),cu(h.top-r.top)<5&&(c=o.top-h.top)),a.bottom&&(cu(h.top-r.bottom)<10&&(c=o.bottom-h.top),cu(h.bottom-r.bottom)<5&&(u=o.bottom-h.bottom)),(c||p||u||l)&&s.push({shape:t,newBounds:(n=t,i={top:c,right:p,bottom:u,left:l},{x:n.x+(i.left||0),y:n.y+(i.top||0),width:n.width-(i.left||0)+(i.right||0),height:n.height-(i.top||0)+(i.bottom||0)})})}}),s}function fu(e,t,n,i,r,o,a,s,c,p,u,l){e=e||{},i.registerProvider(this),this._contextPad=i,this._modeling=r,this._elementFactory=o,this._connect=a,this._create=s,this._popupMenu=c,this._canvas=p,this._rules=u,this._translate=l,!1!==e.autoPlace&&(this._autoPlace=t.get("autoPlace",!1)),n.on("create.end",250,function(e){var t=e.context.shape;if(ko(e)&&i.isOpen(t)){var n=i.getEntries(t);n.replace&&n.replace.action.click(e,t)}})}function mu(e,t,n){var i=e.$instanceOf(t),r=!1;return b(e.eventDefinitions||[],function(e){e.$type===n&&(r=!0)}),i&&r}fu.$inject=["config.contextPad","injector","eventBus","contextPad","modeling","elementFactory","connect","create","popupMenu","canvas","rules","translate"],fu.prototype.getContextPadEntries=function(e){var t=this._contextPad,n=this._modeling,i=this._elementFactory,r=this._connect,o=this._create,a=this._popupMenu,s=this._canvas,c=this._rules,p=this._autoPlace,u=this._translate,h={};if("label"===e.type)return h;var d=e.businessObject;function f(e,t){r.start(e,t)}function m(e,t,n,r){function a(t,n){var a=i.createShape(F({type:e},r));o.start(t,a,{source:n})}return"string"!=typeof n&&(r=n,n=u("Append {type}",{type:e.replace(/^bpmn:/,"")})),{group:"model",className:t,title:n,action:{dragstart:a,click:p?function(t,n){var o=i.createShape(F({type:e},r));p.append(n,o)}:a}}}function v(e){return function(i,r){n.splitLane(r,e),t.open(r,!0)}}if(os(d,["bpmn:Lane","bpmn:Participant"])&&Wi(d)){var y=lu(e);F(h,{"lane-insert-above":{group:"lane-insert-above",className:"bpmn-icon-lane-insert-above",title:u("Add Lane above"),action:{click:function(e,t){n.addLane(t,"top")}}}}),y.length<2&&(e.height>=120&&F(h,{"lane-divide-two":{group:"lane-divide",className:"bpmn-icon-lane-divide-two",title:u("Divide into two Lanes"),action:{click:v(2)}}}),e.height>=180&&F(h,{"lane-divide-three":{group:"lane-divide",className:"bpmn-icon-lane-divide-three",title:u("Divide into three Lanes"),action:{click:v(3)}}})),F(h,{"lane-insert-below":{group:"lane-insert-below",className:"bpmn-icon-lane-insert-below",title:u("Add Lane below"),action:{click:function(e,t){n.addLane(t,"bottom")}}}})}Hi(d,"bpmn:FlowNode")&&(Hi(d,"bpmn:EventBasedGateway")?F(h,{"append.receive-task":m("bpmn:ReceiveTask","bpmn-icon-receive-task",u("Append ReceiveTask")),"append.message-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-message",u("Append MessageIntermediateCatchEvent"),{eventDefinitionType:"bpmn:MessageEventDefinition"}),"append.timer-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-timer",u("Append TimerIntermediateCatchEvent"),{eventDefinitionType:"bpmn:TimerEventDefinition"}),"append.condition-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-condition",u("Append ConditionIntermediateCatchEvent"),{eventDefinitionType:"bpmn:ConditionalEventDefinition"}),"append.signal-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-signal",u("Append SignalIntermediateCatchEvent"),{eventDefinitionType:"bpmn:SignalEventDefinition"})}):mu(d,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?F(h,{"append.compensation-activity":m("bpmn:Task","bpmn-icon-task",u("Append compensation activity"),{isForCompensation:!0})}):Hi(d,"bpmn:EndEvent")||d.isForCompensation||mu(d,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")||Vi(d)||F(h,{"append.end-event":m("bpmn:EndEvent","bpmn-icon-end-event-none",u("Append EndEvent")),"append.gateway":m("bpmn:ExclusiveGateway","bpmn-icon-gateway-none",u("Append Gateway")),"append.append-task":m("bpmn:Task","bpmn-icon-task",u("Append Task")),"append.intermediate-event":m("bpmn:IntermediateThrowEvent","bpmn-icon-intermediate-event-none",u("Append Intermediate/Boundary Event"))})),a.isEmpty(e,"bpmn-replace")||F(h,{replace:{group:"edit",className:"bpmn-icon-screw-wrench",title:u("Change type"),action:{click:function(e,n){var i=F(function(e){var n=s.getContainer(),i=t.getPad(e).html,r=n.getBoundingClientRect(),o=i.getBoundingClientRect(),a=o.top-r.top;return{x:o.left-r.left,y:a+o.height+5}}(n),{cursor:{x:e.x,y:e.y}});a.open(n,"bpmn-replace",i)}}}}),os(d,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference"])&&F(h,{"append.text-annotation":m("bpmn:TextAnnotation","bpmn-icon-text-annotation"),connect:{group:"connect",className:"bpmn-icon-connection-multi",title:u("Connect using "+(d.isForCompensation?"":"Sequence/MessageFlow or ")+"Association"),action:{click:f,dragstart:f}}}),os(d,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&F(h,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:u("Connect using DataInputAssociation"),action:{click:f,dragstart:f}}}),Hi(d,"bpmn:Group")&&F(h,{"append.text-annotation":m("bpmn:TextAnnotation","bpmn-icon-text-annotation")});var g=c.allowed("elements.delete",{elements:[e]});return l(g)&&(g=g[0]===e),g&&F(h,{delete:{group:"edit",className:"bpmn-icon-trash",title:u("Remove"),action:{click:function(t){n.removeElements([e])}}}}),h};var vu={__depends__:[Gc,Vc,Wo,Nc,cp,Jp],__init__:["contextPadProvider"],contextPadProvider:["type",fu]},yu={horizontal:["x","width"],vertical:["y","height"]};function gu(e){this._modeling=e,this._filters=[],this.registerFilter(function(e,t,n){var i,r=0,o=0;return b(e,function(e){e.waypoints||e.labelTarget||(r+=e[n],o+=1)}),i=Math.round(r/o),g(e,function(e){return e[n]<i+50})})}gu.$inject=["modeling"],gu.prototype.registerFilter=function(e){if("function"!=typeof e)throw new Error("the filter has to be a function");this._filters.push(e)},gu.prototype.trigger=function(e,t){var n,i,r=this._modeling;if(!(e.length<3||(this._setOrientation(t),i=this._filterElements(e),(n=this._createGroups(i)).length<=2)))return r.distributeElements(n,this._axis,this._dimension),n},gu.prototype._filterElements=function(e){var t=this._filters,n=this._axis,i=this._dimension,r=[].concat(e);return t.length?(b(t,function(e){r=e(r,n,i)}),r):e},gu.prototype._createGroups=function(e){var t=[],n=this,i=this._axis,r=this._dimension;if(!i)throw new Error('must have a defined "axis" and "dimension"');return b(M(e,i),function(e,o){var a,s=n._findRange(e,i,r),c=t[t.length-1];c&&n._hasIntersection(c.range,s)?t[t.length-1].elements.push(e):(a={range:s,elements:[e]},t.push(a))}),t},gu.prototype._setOrientation=function(e){var t=yu[e];this._axis=t[0],this._dimension=t[1]},gu.prototype._hasIntersection=function(e,t){return Math.max(e.min,e.max)>=Math.min(t.min,t.max)&&Math.min(e.min,e.max)<=Math.max(t.min,t.max)},gu.prototype._findRange=function(e){var t=e[this._axis];return{min:t+5,max:t+e[this._dimension]-5}};var bu={__init__:["distributeElements"],distributeElements:["type",gu]};function xu(e){e.registerFilter(function(e){return g(e,function(e){var t=os(e,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:Participant","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(e.labelTarget||t)})})}xu.$inject=["distributeElements"];var Eu={__depends__:[bu],__init__:["bpmnDistributeElements"],bpmnDistributeElements:["type",xu]};function _u(e,t){this._actions={};var n=this;e.on("diagram.init",function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})})}function wu(e,t){return new Error(e+" "+t)}_u.$inject=["eventBus","injector"],_u.prototype._registerDefaultActions=function(e){var t=e.get("commandStack",!1),n=e.get("modeling",!1),i=e.get("selection",!1),r=e.get("zoomScroll",!1),o=e.get("copyPaste",!1),a=e.get("canvas",!1),s=e.get("rules",!1),c=e.get("keyboardMove",!1),p=e.get("keyboardMoveSelection",!1);t&&(this.register("undo",function(){t.undo()}),this.register("redo",function(){t.redo()})),o&&i&&this.register("copy",function(){var e=i.get();o.copy(e)}),o&&this.register("paste",function(){o.paste()}),r&&this.register("stepZoom",function(e){r.stepZoom(e.value)}),a&&this.register("zoom",function(e){a.zoom(e.value)}),n&&i&&s&&this.register("removeSelection",function(){var e=i.get();if(e.length){var t,r=s.allowed("elements.delete",{elements:e});!1!==r&&(t=l(r)?r:e).length&&n.removeElements(t.slice())}}),c&&this.register("moveCanvas",function(e){c.moveCanvas(e)}),p&&this.register("moveSelection",function(e){p.moveSelection(e.direction,e.accelerated)})},_u.prototype.trigger=function(e,t){if(!this._actions[e])throw wu(e,"is not a registered action");return this._actions[e](t)},_u.prototype.register=function(e,t){var n=this;if("string"==typeof e)return this._registerAction(e,t);b(e,function(e,t){n._registerAction(t,e)})},_u.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw wu(e,"is already registered");this._actions[e]=t},_u.prototype.unregister=function(e){if(!this.isRegistered(e))throw wu(e,"is not a registered action");this._actions[e]=void 0},_u.prototype.getActions=function(){return Object.keys(this._actions)},_u.prototype.isRegistered=function(e){return!!this._actions[e]};var Su={__init__:["editorActions"],editorActions:["type",_u]};function Cu(e){e.invoke(_u,this)}n(Cu,_u),Cu.$inject=["injector"],Cu.prototype._registerDefaultActions=function(e){_u.prototype._registerDefaultActions.call(this,e);var t=e.get("canvas",!1),n=e.get("elementRegistry",!1),i=e.get("selection",!1),r=e.get("spaceTool",!1),o=e.get("lassoTool",!1),a=e.get("handTool",!1),s=e.get("globalConnect",!1),c=e.get("distributeElements",!1),p=e.get("alignElements",!1),u=e.get("directEditing",!1),l=e.get("searchPad",!1),h=e.get("modeling",!1);t&&n&&i&&this._registerAction("selectElements",function(){var e=t.getRootElement(),r=n.filter(function(t){return t!==e});return i.select(r),r}),r&&this._registerAction("spaceTool",function(){r.toggle()}),o&&this._registerAction("lassoTool",function(){o.toggle()}),a&&this._registerAction("handTool",function(){a.toggle()}),s&&this._registerAction("globalConnectTool",function(){s.toggle()}),i&&c&&this._registerAction("distributeElements",function(e){var t=i.get(),n=e.type;t.length&&c.trigger(t,n)}),i&&p&&this._registerAction("alignElements",function(e){var t=i.get(),n=[],r=e.type;t.length&&(n=g(t,function(e){return!Hi(e,"bpmn:Lane")}),p.trigger(n,r))}),i&&h&&this._registerAction("setColor",function(e){var t=i.get();t.length&&h.setColor(t,e)}),i&&u&&this._registerAction("directEditing",function(){var e=i.get();e.length&&u.activate(e[0])}),l&&this._registerAction("find",function(){l.toggle()}),t&&h&&this._registerAction("moveToOrigin",function(){var e,i,r=t.getRootElement();e=ft(i=Hi(r,"bpmn:Collaboration")?n.filter(function(e){return Hi(e.parent,"bpmn:Collaboration")}):n.filter(function(e){return e!==r&&!Hi(e.parent,"bpmn:SubProcess")})),h.moveElements(i,{x:-e.x,y:-e.y},r)})};var Tu={__depends__:[Su],editorActions:["type",Cu]};function Ru(e){e.on(["create.init","shape.move.init"],function(e){var t=e.context;os(e.shape,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(t.gridSnappingContext||(t.gridSnappingContext={}),t.gridSnappingContext.snapLocation="top-left")})}Ru.$inject=["eventBus"];function Au(e,t,n){return n||(n="round"),Math[n](e/t)*t}var Pu=1200,ku=800;function Mu(e,t,n){var i=!n||!1!==n.active;this._eventBus=t;var r=this;t.on("diagram.init",ku,function(){r.setActive(i)}),t.on(["create.move","create.end","bendpoint.move.move","bendpoint.move.end","connect.move","connect.end","connectionSegment.move.move","connectionSegment.move.end","resize.move","resize.end","shape.move.move","shape.move.end"],Pu,function(t){var n=t.originalEvent;if(!(!r.active||n&&Jo(n))){var i=t.context,o=i.gridSnappingContext;o||(o=i.gridSnappingContext={}),["x","y"].forEach(function(n){var i={},o=function(e,t,n){var i=e.context,r=e.shape,o=i.gridSnappingContext,a=o.snapLocation,s=o.snapOffset;if(s&&d(s[t]))return s[t];s||(s=o.snapOffset={});d(s[t])||(s[t]=0);if(!r)return s[t];n.get(r.id)||(Du(t)?s[t]+=r[t]+r.width/2:s[t]+=r[t]+r.height/2);if(!a)return s[t];"x"===t?/left/.test(a)?s[t]-=r.width/2:/right/.test(a)&&(s[t]+=r.width/2):/top/.test(a)?s[t]-=r.height/2:/bottom/.test(a)&&(s[t]+=r.height/2);return s[t]}(t,n,e);o&&(i.offset=o);var a=function(e,t){var n=e.context,i=n.createConstraints,r=n.resizeConstraints||{},o=n.gridSnappingContext,a=o.snapConstraints;if(a&&a[t])return a[t];a||(a=o.snapConstraints={});a[t]||(a[t]={});var s=n.direction;i&&(Du(t)?(a.x.min=i.left,a.x.max=i.right):(a.y.min=i.top,a.y.max=i.bottom));var c=r.min,p=r.max;c&&(Du(t)?Nu(s)?a.x.max=c.left:a.x.min=c.right:Bu(s)?a.y.max=c.top:a.y.min=c.bottom);p&&(Du(t)?Nu(s)?a.x.min=p.left:a.x.max=p.right:Bu(s)?a.y.min=p.top:a.y.max=p.bottom);return a[t]}(t,n);a&&F(i,a),bc(t,n)||r.snapEvent(t,n,i)})}})}function Du(e){return"x"===e}function Bu(e){return-1!==e.indexOf("n")}function Nu(e){return-1!==e.indexOf("w")}function Ou(e,t){ls.call(this,e),this._gridSnapping=t;var n=this;this.preExecute("shape.resize",function(e){var t=e.context,i=(t.hints||{}).autoResize;if(i){var r=t.shape,o=t.newBounds;m(i)?t.newBounds=n.snapComplex(o,i):t.newBounds=n.snapSimple(r,o)}})}Mu.prototype.snapEvent=function(e,t,n){xc(e,t,this.snapValue(e[t],n))},Mu.prototype.getGridSpacing=function(){return 10},Mu.prototype.snapValue=function(e,t){var n,i,r=0;return t&&t.offset&&(r=t.offset),e=Au(e+=r,10),t&&t.min&&d(n=t.min)&&(n=Au(n+r,10,"ceil"),e=Math.max(e,n)),t&&t.max&&d(i=t.max)&&(i=Au(i+r,10,"floor"),e=Math.min(e,i)),e-=r},Mu.prototype.isActive=function(){return this.active},Mu.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},Mu.prototype.toggleActive=function(){this.setActive(!this.active)},Mu.$inject=["elementRegistry","eventBus","config.gridSnapping"],Ou.$inject=["eventBus","gridSnapping","modeling"],n(Ou,ls),Ou.prototype.snapSimple=function(e,t){var n=this._gridSnapping;return t.width=n.snapValue(t.width,{min:t.width}),t.height=n.snapValue(t.height,{min:t.height}),t.x=e.x+e.width/2-t.width/2,t.y=e.y+e.height/2-t.height/2,t},Ou.prototype.snapComplex=function(e,t){return/w|e/.test(t)&&(e=this.snapHorizontally(e,t)),/n|s/.test(t)&&(e=this.snapVertically(e,t)),e},Ou.prototype.snapHorizontally=function(e,t){var n=this._gridSnapping,i=/w/.test(t),r=/e/.test(t),o={};return o.width=n.snapValue(e.width,{min:e.width}),r&&(i?(o.x=n.snapValue(e.x,{max:e.x}),o.width+=n.snapValue(e.x-o.x,{min:e.x-o.x})):e.x=e.x+e.width-o.width),F(e,o),e},Ou.prototype.snapVertically=function(e,t){var n=this._gridSnapping,i=/n/.test(t),r=/s/.test(t),o={};return o.height=n.snapValue(e.height,{min:e.height}),i&&(r?(o.y=n.snapValue(e.y,{max:e.y}),o.height+=n.snapValue(e.y-o.y,{min:e.y-o.y})):e.y=e.y+e.height-o.height),F(e,o),e};var ju=2e3;function Lu(e,t){e.on(["spaceTool.move","spaceTool.end"],ju,function(e){var n,i=e.context;i.initialized&&("x"===i.axis?(n=t.snapValue(e.dx),e.x=e.x+n-e.dx,e.dx=n):(n=t.snapValue(e.dy),e.y=e.y+n-e.dy,e.dy=n))})}Lu.$inject=["eventBus","gridSnapping"];var Iu={__depends__:[{__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",Ou],gridSnappingSpaceToolBehavior:["type",Lu]}],__init__:["gridSnapping"],gridSnapping:["type",Mu]},zu=2e3;function Fu(e,t){e.on("autoPlace",zu,function(e){var n=e.source,i=yo(n),r=e.shape,o=ss(n,r);return["x","y"].forEach(function(e){var n={};o[e]!==i[e]&&(o[e]>i[e]?n.min=o[e]:n.max=o[e],Hi(r,"bpmn:TextAnnotation")&&(!function(e){return"x"===e}(e)?n.offset=-r.height/2:n.offset=-r.width/2),o[e]=t.snapValue(o[e],n))}),o})}Fu.$inject=["eventBus","gridSnapping"];var $u=1750;function Hu(e,t,n){t.on(["create.start","shape.move.start"],$u,function(t){var i=t.context,r=i.shape,o=e.getRootElement();Hi(r,"bpmn:Participant")&&Hi(o,"bpmn:Process")&&o.children.length&&(i.createConstraints&&(r.width=n.snapValue(r.width,{min:r.width}),r.height=n.snapValue(r.height,{min:r.height})))})}Hu.$inject=["canvas","eventBus","gridSnapping"];var Gu=3e3;function Wu(e,t,n){ls.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],Gu,function(e){var t=e.context,r=t.connection,o=t.hints||{},a=r.waypoints;o.connectionStart||o.connectionEnd||!1===o.createElementsBehavior||function(e){return e.length>3}(a)&&n.updateWaypoints(r,i.snapMiddleSegments(a))})}function Vu(e,t,n){var i=Mr(t,n),r={};return function(e){return"h"===e}(i)&&(r.y=e.snapValue(t.y)),function(e){return"v"===e}(i)&&(r.x=e.snapValue(t.x)),("x"in r||"y"in r)&&(t=F({},t,r),n=F({},n,r)),[t,n]}Wu.$inject=["eventBus","gridSnapping","modeling"],n(Wu,ls),Wu.prototype.snapMiddleSegments=function(e){var t,n=this._gridSnapping;e=e.slice();for(var i=1;i<e.length-2;i++)t=Vu(n,e[i],e[i+1]),e[i]=t[0],e[i+1]=t[1];return e};var Uu={__depends__:[Iu,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingCreateParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",Fu],gridSnappingCreateParticipantBehavior:["type",Hu],gridSnappingLayoutConnectionBehavior:["type",Wu]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",Ru]};function qu(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],function(e){var t=e.element,i=e.gfx;return Hi(t,"bpmn:Lane")?n.createParticipantHit(t,i):Hi(t,"bpmn:Participant")?Wi(t)?n.createParticipantHit(t,i):n.createDefaultHit(t,i):Hi(t,"bpmn:SubProcess")?Wi(t)?n.createSubProcessHit(t,i):n.createDefaultHit(t,i):void 0})}qu.$inject=["eventBus","interactionEvents"],qu.prototype.createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},qu.prototype.createParticipantHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createBoxHit(t,"click-stroke",{width:e.width,height:e.height}),this._interactionEvents.createBoxHit(t,"all",{width:30,height:e.height}),!0},qu.prototype.createSubProcessHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createBoxHit(t,"click-stroke",{width:e.width,height:e.height}),this._interactionEvents.createBoxHit(t,"all",{width:e.width,height:30}),!0};var Ku={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",qu]};function Yu(e){e.invoke(ca,this)}n(Yu,ca),Yu.$inject=["injector"],Yu.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}ca.prototype.registerBindings.call(this,e,t),n("selectElements",function(n){var i=n.keyEvent;if(e.isKey(["a","A"],i)&&e.isCmd(i))return t.trigger("selectElements"),!0}),n("find",function(n){var i=n.keyEvent;if(e.isKey(["f","F"],i)&&e.isCmd(i))return t.trigger("find"),!0}),n("spaceTool",function(n){var i=n.keyEvent;if(!e.hasModifier(i))return e.isKey(["s","S"],i)?(t.trigger("spaceTool"),!0):void 0}),n("lassoTool",function(n){var i=n.keyEvent;if(!e.hasModifier(i))return e.isKey(["l","L"],i)?(t.trigger("lassoTool"),!0):void 0}),n("handTool",function(n){var i=n.keyEvent;if(!e.hasModifier(i))return e.isKey(["h","H"],i)?(t.trigger("handTool"),!0):void 0}),n("globalConnectTool",function(n){var i=n.keyEvent;if(!e.hasModifier(i))return e.isKey(["c","C"],i)?(t.trigger("globalConnectTool"),!0):void 0}),n("directEditing",function(n){var i=n.keyEvent;if(!e.hasModifier(i))return e.isKey(["e","E"],i)?(t.trigger("directEditing"),!0):void 0})};var Xu={__depends__:[pa],__init__:["keyboardBindings"],keyboardBindings:["type",Yu]},Zu={moveSpeed:1,moveSpeedAccelerated:10},Qu=1500,Ju={ArrowLeft:"left",Left:"left",ArrowUp:"up",Up:"up",ArrowRight:"right",Right:"right",ArrowDown:"down",Down:"down"},el={left:function(e){return{x:-e,y:0}},up:function(e){return{x:0,y:-e}},right:function(e){return{x:e,y:0}},down:function(e){return{x:0,y:e}}};function tl(e,t,n,i,r){var o=this;this._config=F({},Zu,e||{}),t.addListener(Qu,function(e){var n=e.keyEvent,i=Ju[n.key];if(i&&!t.isCmd(n)){var r=t.isShift(n);return o.moveSelection(i,r),!0}}),this.moveSelection=function(e,t){var o=r.get();if(o.length){var a=this._config[t?"moveSpeedAccelerated":"moveSpeed"],s=el[e](a);i.allowed("elements.move",{shapes:o})&&n.moveElements(o,s)}}}tl.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];var nl={__depends__:[pa,Wo],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",tl]};function il(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(mt(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)})}il.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];var rl={__init__:["changeSupport"],changeSupport:["type",il]};function ol(e,t,n,i){this._dragging=i,this._rules=t;var r=this;function o(e,t){var n,i=e.shape,o=e.direction,a=e.resizeConstraints;e.delta=t,n=function(e,t,n){var i=n.x,r=n.y,o={x:e.x,y:e.y,width:e.width,height:e.height};return-1!==t.indexOf("n")?(o.y=e.y+r,o.height=e.height-r):-1!==t.indexOf("s")&&(o.height=e.height+r),-1!==t.indexOf("e")?o.width=e.width+i:-1!==t.indexOf("w")&&(o.x=e.x+i,o.width=e.width-i),o}(i,o,t),e.newBounds=function(e,t){if(!t)return e;var n=mo(e);return vo({top:ru("top",n,t),right:ru("right",n,t),bottom:ru("bottom",n,t),left:ru("left",n,t)})}(n,a),e.canExecute=r.canResize(e)}e.on("resize.start",function(e){var t,n,i;t=e.context,n=t.resizeConstraints,i=t.minBounds,void 0===n&&(void 0===i&&(i=r.computeMinResizeBox(t)),t.resizeConstraints={min:mo(i)})}),e.on("resize.move",function(e){var t={x:e.dx,y:e.dy};o(e.context,t)}),e.on("resize.end",function(e){!function(e){var t=e.shape,i=e.canExecute,r=e.newBounds;if(i){if(!function(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}(t,r=ho(r)))return;n.resizeShape(t,r)}}(e.context)})}function al(e,t){var n=yo(e),i=mo(e),r={x:n.x,y:n.y};return-1!==t.indexOf("n")?r.y=i.top:-1!==t.indexOf("s")&&(r.y=i.bottom),-1!==t.indexOf("e")?r.x=i.right:-1!==t.indexOf("w")&&(r.x=i.left),r}function sl(e){return"n"===e||"s"===e?"resize-ns":"e"===e||"w"===e?"resize-ew":"nw"===e||"se"===e?"resize-nwse":"resize-nesw"}ol.prototype.canResize=function(e){var t=this._rules,n=$(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},ol.prototype.activate=function(e,t,n){var i,r,o=this._dragging;if("string"==typeof n&&(n={direction:n}),!(r=(i=F({shape:t},n)).direction))throw new Error("must provide a direction (n|w|s|e|nw|se|ne|sw)");o.init(e,al(t,r),"resize",{autoActivate:!0,cursor:sl(r),data:{shape:t,context:i}})},ol.prototype.computeMinResizeBox=function(e){var t=e.shape;return function(e,t,n,i){var r=mo(t),o={top:/n/.test(e)?r.bottom-n.height:r.top,left:/w/.test(e)?r.right-n.width:r.left,bottom:/s/.test(e)?r.top+n.height:r.bottom,right:/e/.test(e)?r.left+n.width:r.right},a=i?mo(i):o;return vo({top:tu(o.top,a.top),left:tu(o.left,a.left),bottom:eu(o.bottom,a.bottom),right:eu(o.right,a.right)})}(e.direction,t,e.minDimensions||{width:10,height:10},su(t,e.childrenBoxPadding))},ol.$inject=["eventBus","rules","modeling","dragging"];var cl="djs-resizing",pl="resize-not-ok",ul=500;function ll(e,t,n){e.on("resize.move",ul,function(e){var i,r,o,a;i=e.context,r=i.shape,o=i.newBounds,(a=i.frame)||(a=i.frame=n.addFrame(r,t.getDefaultLayer()),t.addMarker(r,cl)),o.width>5&&_e(a,{x:o.x,width:o.width}),o.height>5&&_e(a,{y:o.y,height:o.height}),i.canExecute?Re(a).remove(pl):Re(a).add(pl)}),e.on("resize.cleanup",function(e){var n,i;n=e.context,i=n.shape,n.frame&&Pe(n.frame),t.removeMarker(i,cl)})}ll.$inject=["eventBus","canvas","previewSupport"];var hl=-6,dl=["n","w","s","e","nw","ne","se","sw"];function fl(e,t,n,i){this._resize=i,this._canvas=t;var r=this;e.on("selection.changed",function(e){var t=e.newSelection;r.removeResizers(),1===t.length&&b(t,I(r.addResizer,r))}),e.on("shape.changed",function(e){var t=e.element;n.isSelected(t)&&(r.removeResizers(),r.addResizer(t))})}fl.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(t){Po(t)&&i.activate(t,e,n)}ce.bind(t,"mousedown",r),ce.bind(t,"touchstart",r)},fl.prototype._createResizer=function(e,t,n,i){var r=this._getResizersParent(),o=function(e){var t={x:0,y:0};-1!==e.indexOf("e")?t.x=-hl:-1!==e.indexOf("w")&&(t.x=hl);-1!==e.indexOf("s")?t.y=-hl:-1!==e.indexOf("n")&&(t.y=hl);return t}(i),a=Oe("g");Re(a).add("djs-resizer"),Re(a).add("djs-resizer-"+e.id),Re(a).add("djs-resizer-"+i),ge(r,a);var s=Oe("rect");_e(s,{x:-2+o.x,y:-2+o.y,width:4,height:4}),Re(s).add("djs-resizer-visual"),ge(a,s);var c=Oe("rect");return _e(c,{x:-10+o.x,y:-10+o.y,width:20,height:20}),Re(c).add("djs-resizer-hit"),ge(a,c),Jt(a,t,n),a},fl.prototype.createResizer=function(e,t){var n=al(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},fl.prototype.addResizer=function(e){var t=this;this._resize.canResize({shape:e})&&b(dl,function(n){t.createResizer(e,n)})},fl.prototype.removeResizers=function(){ke(this._getResizersParent())},fl.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},fl.$inject=["eventBus","canvas","selection","resize"];var ml={__depends__:[Ps,Ss,Yc],__init__:["resize","resizePreview","resizeHandles"],resize:["type",ol],resizePreview:["type",ll],resizeHandles:["type",fl]};function vl(e,t){var n=t.create("bpmn:CategoryValue"),i=t.create("bpmn:Category",{categoryValue:[n]});return _t(e.get("rootElements"),i),Gi(i).$parent=e,Gi(n).$parent=i,n}function yl(e,t,n,i,r,o,a){function s(e,t){(t||os(e,["bpmn:Task","bpmn:TextAnnotation","bpmn:Group"])||gl(e))&&i.activate(e)}this._bpmnFactory=t,this._canvas=n,this._modeling=r,this._textRenderer=a,i.registerProvider(this),e.on("element.dblclick",function(e){s(e.element,!0)}),e.on(["autoPlace.start","canvas.viewbox.changing","drag.init","element.mousedown","popupMenu.open"],function(e){i.isActive()&&i.complete()}),e.on(["commandStack.changed"],function(e){i.isActive()&&i.cancel()}),e.on("directEditing.activate",function(e){o.removeResizers()}),e.on("create.end",500,function(e){var t=e.context,n=t.shape,i=e.context.canExecute;e.isTouch||i&&(t.hints&&!1===t.hints.createElementsBehavior||s(n))}),e.on("autoPlace.end",500,function(e){s(e.shape)})}function gl(e){return Hi(e,"bpmn:SubProcess")&&!Wi(e)}yl.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],yl.prototype.activate=function(e){var t=Ki(e);if(void 0!==t){var n={text:t};F(n,this.getEditingBBox(e));var i={};return(os(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||gl(e))&&F(i,{centerVertically:!0}),wr(e)&&F(i,{autoResize:!0}),Hi(e,"bpmn:TextAnnotation")&&F(i,{resizable:!0,autoResize:!0}),F(n,{options:i}),n}},yl.prototype.getEditingBBox=function(e){var t=this._canvas,n=e.label||e,i=t.getAbsoluteBBox(n),r=i.x+i.width/2,o=i.y+i.height/2,a={x:i.x,y:i.y},s=t.zoom(),c=this._textRenderer.getDefaultStyle(),p=this._textRenderer.getExternalStyle(),u=p.fontSize*s,l=p.lineHeight,h=c.fontSize*s,d=c.lineHeight,f={fontFamily:this._textRenderer.getDefaultStyle().fontFamily,fontWeight:this._textRenderer.getDefaultStyle().fontWeight};(Hi(e,"bpmn:Lane")||function(e){return Hi(e,"bpmn:Participant")&&Wi(e)}(e))&&(F(a,{width:i.height,height:30*s,x:i.x-i.height/2+15*s,y:o-30*s/2}),F(f,{fontSize:h+"px",lineHeight:d,paddingTop:7*s+"px",paddingBottom:7*s+"px",paddingLeft:5*s+"px",paddingRight:5*s+"px",transform:"rotate(-90deg)"})),(os(e,["bpmn:Task","bpmn:CallActivity"])||function(e){return Hi(e,"bpmn:Participant")&&!Wi(e)}(e)||gl(e))&&(F(a,{width:i.width,height:i.height}),F(f,{fontSize:h+"px",lineHeight:d,paddingTop:7*s+"px",paddingBottom:7*s+"px",paddingLeft:5*s+"px",paddingRight:5*s+"px"})),function(e){return Hi(e,"bpmn:SubProcess")&&Wi(e)}(e)&&(F(a,{width:i.width,x:i.x}),F(f,{fontSize:h+"px",lineHeight:d,paddingTop:7*s+"px",paddingBottom:7*s+"px",paddingLeft:5*s+"px",paddingRight:5*s+"px"}));var m=90*s,v=7*s,y=4*s;if(n.labelTarget&&(F(a,{width:m,height:i.height+v+y,x:r-m/2,y:i.y-v}),F(f,{fontSize:u+"px",lineHeight:l,paddingTop:v+"px",paddingBottom:y+"px"})),wr(n)&&!Sr(n)&&!Rr(n)){var g=Tr(e),b=t.getAbsoluteBBox({x:g.x,y:g.y,width:0,height:0}),x=u+v+y;F(a,{width:m,height:x,x:b.x-m/2,y:b.y-x/2}),F(f,{fontSize:u+"px",lineHeight:l,paddingTop:v+"px",paddingBottom:y+"px"})}return Hi(e,"bpmn:TextAnnotation")&&(F(a,{width:i.width,height:i.height,minWidth:30*s,minHeight:10*s}),F(f,{textAlign:"left",paddingTop:5*s+"px",paddingBottom:7*s+"px",paddingLeft:7*s+"px",paddingRight:5*s+"px",fontSize:h+"px",lineHeight:d})),{bounds:a,style:f}},yl.prototype.update=function(e,t,n,i){var r,o,a;if((Hi(e,"bpmn:TextAnnotation")&&(o=this._canvas.getAbsoluteBBox(e),r={x:e.x,y:e.y,width:e.width/o.width*i.width,height:e.height/o.height*i.height}),Hi(e,"bpmn:Group"))&&!Gi(e).categoryValueRef){var s=vl(Gi(this._canvas.getRootElement()).$parent,this._bpmnFactory);Gi(e).categoryValueRef=s}(a=t)&&a.trim()||(t=null),this._modeling.updateLabel(e,t,r)};var bl="djs-element-hidden",xl="djs-label-hidden";function El(e,t,n,i){var r,o,a,s=this,c=t.getDefaultLayer();e.on("directEditing.activate",function(e){var n=e.active;if(Hi(r=n.element.label||n.element,"bpmn:TextAnnotation")){o=t.getAbsoluteBBox(r),a=Oe("g");var p=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:r.width,containerHeight:r.height,position:{mx:0,my:0}}),u=s.path=Oe("path");_e(u,{d:p,strokeWidth:2,stroke:_l(r)}),ge(a,u),ge(c,a),en(a,r.x,r.y)}Hi(r,"bpmn:TextAnnotation")||r.labelTarget?t.addMarker(r,bl):(Hi(r,"bpmn:Task")||Hi(r,"bpmn:CallActivity")||Hi(r,"bpmn:SubProcess")||Hi(r,"bpmn:Participant"))&&t.addMarker(r,xl)}),e.on("directEditing.resize",function(e){if(Hi(r,"bpmn:TextAnnotation")){var t=e.height,n=e.dy,a=Math.max(r.height/o.height*(t+n),0),c=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:r.width,containerHeight:a,position:{mx:0,my:0}});_e(s.path,{d:c})}}),e.on(["directEditing.complete","directEditing.cancel"],function(e){var n=e.active;n&&(t.removeMarker(n.element.label||n.element,bl),t.removeMarker(r,xl)),r=void 0,o=void 0,a&&(Pe(a),a=void 0)})}function _l(e,t){return Gi(e).di.get("stroke")||t||"black"}El.$inject=["eventBus","canvas","elementRegistry","pathMap"];var wl={__depends__:[rl,ml,Gc],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",yl],labelEditingPreview:["type",El]},Sl=["top","bottom","left","right"],Cl=10;function Tl(e,t){function n(e){if(Sr(e)){var n=function(e){var t=yo(e.label),n=Rl(yo(e),t);if(i=n,-1===Sl.indexOf(i))return;var i;var r=function(e){var t=yo(e);return[].concat(e.incoming.map(function(e){return e.waypoints[e.waypoints.length-2]}),e.outgoing.map(function(e){return e.waypoints[1]})).map(function(e){return Rl(t,e)})}(e);if(e.host){var o=function(e){var t,n=e.host,i=go(yo(e),n);t=i.indexOf("-")>=0?i.split("-"):[i];return Sl.filter(function(e){return-1===t.indexOf(e)})}(e);r=r.concat(o)}var a=Sl.filter(function(e){return-1===r.indexOf(e)});if(-1!==a.indexOf(n))return;return a[0]}(e);n&&function(e,n){var i=yo(e),r=e.label,o=yo(r);if(!r.parent)return;var a,s=mo(e);switch(n){case"top":a={x:i.x,y:s.top-Cl-r.height/2};break;case"left":a={x:s.left-Cl-r.width/2,y:i.y};break;case"bottom":a={x:i.x,y:s.bottom+Cl+r.height/2};break;case"right":a={x:s.right+Cl+r.width/2,y:i.y}}var c=ba(a,o);t.moveShape(r,c)}(e,n)}}ls.call(this,e),this.postExecuted(["connection.create","connection.layout","connection.updateWaypoints"],function(e){var t=e.context,i=t.connection,r=i.source,o=i.target;!1!==(t.hints||{}).createElementsBehavior&&(n(r),n(o))}),this.postExecuted(["label.create"],function(e){var t=e.context,i=t.shape;!1!==(t.hints||{}).createElementsBehavior&&n(i.labelTarget)}),this.postExecuted(["elements.create"],function(e){var t=e.context,i=t.elements;!1!==(t.hints||{}).createElementsBehavior&&i.forEach(function(e){n(e)})})}function Rl(e,t){return go(t,e,5)}function Al(e,t,n){ls.call(this,e),this.preExecute("shape.append",function(e){var t=e.source,n=e.shape;e.position||(Hi(n,"bpmn:TextAnnotation")?e.position={x:t.x+t.width/2+75,y:t.y-50-n.height/2}:e.position={x:t.x+t.width+80+n.width/2,y:t.y+t.height/2})},!0)}function Pl(e,t){e.invoke(ls,this),this.postExecute("shape.move",function(e){var n=e.newParent,i=e.shape;b(g(i.incoming.concat(i.outgoing),function(e){return Hi(e,"bpmn:Association")}),function(e){t.moveConnection(e,{x:0,y:0},n)})},!0)}n(Tl,ls),Tl.$inject=["eventBus","modeling"],n(Al,ls),Al.$inject=["eventBus","elementFactory","bpmnRules"],n(Pl,ls),Pl.$inject=["injector","modeling"];var kl=500;function Ml(e,t){t.invoke(ls,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",kl,function(e){var t=e.elements;1===(t=t.filter(function(e){return Dl(e,e.host)})).length&&t.map(function(e){return t.indexOf(e)}).forEach(function(i){var r=t[i];e.elements[i]=n.replaceShape(t[i],r)})},!0),this.preExecute("elements.move",kl,function(e){var t=e.shapes,i=e.newHost;if(1===t.length){var r=t[0];Dl(r,i)&&(e.shapes=[n.replaceShape(r,i)])}},!0)}function Dl(e,t){return!Rr(e)&&os(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}function Bl(e,t){function n(e){return g(e.attachers,function(e){return Hi(e,"bpmn:BoundaryEvent")})}ls.call(this,e),this.postExecute("connection.create",function(e){var i=e.context.source,r=e.context.target,o=n(r);Hi(i,"bpmn:EventBasedGateway")&&Hi(r,"bpmn:ReceiveTask")&&o.length>0&&t.removeElements(o)}),this.postExecute("connection.reconnect",function(e){var i=e.context.oldSource,r=e.context.newSource;Hi(i,"bpmn:Gateway")&&Hi(r,"bpmn:EventBasedGateway")&&b(r.outgoing,function(e){var i=e.target,r=n(i);Hi(i,"bpmn:ReceiveTask")&&r.length>0&&t.removeElements(r)})})}Ml.$inject=["bpmnReplace","injector"],n(Ml,ls),Ml.prototype.replaceShape=function(e,t){var n,i=(n=Gi(e).eventDefinitions)&&n[0],r={type:"bpmn:BoundaryEvent",host:t};return i&&(r.eventDefinitionType=i.$type),this._bpmnReplace.replaceElement(e,r,{layoutConnection:!1})},Bl.$inject=["eventBus","modeling"],n(Bl,ls);var Nl=500;function Ol(e,t,n,i,r){function o(e){return os(e,["bpmn:ReceiveTask","bpmn:SendTask"])||function(e,t){l(t)||(t=[t]);return w(t,function(t){return Ui(e,t)})}(e,["bpmn:ErrorEventDefinition","bpmn:EscalationEventDefinition","bpmn:MessageEventDefinition","bpmn:SignalEventDefinition"])}function a(t){return!!y(e.getDefinitions().get("rootElements"),D({id:t.id}))}function s(e){return Hi(e,"bpmn:ErrorEventDefinition")?"errorRef":Hi(e,"bpmn:EscalationEventDefinition")?"escalationRef":Hi(e,"bpmn:MessageEventDefinition")?"messageRef":Hi(e,"bpmn:SignalEventDefinition")?"signalRef":void 0}function c(e){if(os(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.get("messageRef");var t=e.get("eventDefinitions")[0];return t.get(s(t))}n.invoke(ls,this),this.executed("shape.create",function(t){var n=t.shape;if(o(n)){var i=c(Gi(n));i&&!a(i)&&(_t(e.getDefinitions().get("rootElements"),i),t.addedRootElement=i)}},!0),this.reverted("shape.create",function(t){var n=t.addedRootElement;n&&Et(e.getDefinitions().get("rootElements"),n)},!0),t.on("copyPaste.copyElement",function(e){var t=e.descriptor,n=e.element;if(o(n)){var i=c(Gi(n));i&&(t.referencedRootElement=i)}}),t.on("copyPaste.pasteElement",Nl,function(e){var t=e.descriptor,n=t.businessObject;if(o(n)){var c=t.referencedRootElement;c&&(a(c)||(c=i.copyElement(c,r.create(c.$type))),function(e,t){if(os(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.set("messageRef",t);var n=e.get("eventDefinitions")[0];n.set(s(n),t)}(n,c))}})}function jl(e){e.invoke(ls,this),this.preExecute("shape.create",1500,function(e){var t=e.context,n=t.parent,i=t.shape;Hi(n,"bpmn:Lane")&&!Hi(i,"bpmn:Lane")&&(t.parent=as(n,"bpmn:Participant"))})}Ol.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],n(Ol,ls),jl.$inject=["injector"],n(jl,ls);var Ll=1500,Il=2e3;function zl(e,t,n){t.on(["create.hover","create.move","create.end","shape.move.hover","shape.move.move","shape.move.end"],Ll,function(t){var i=t.context.shape||t.shape,r=t.hover;Hi(r,"bpmn:Lane")&&!os(i,["bpmn:Lane","bpmn:Participant"])&&(t.hover=hu(r),t.hoverGfx=e.getGraphics(t.hover));var o=n.getRootElement();r!==o&&(i.labelTarget||Hi(i,"bpmn:Group"))&&(t.hover=o,t.hoverGfx=e.getGraphics(t.hover))}),t.on(["connect.hover","connect.out","connect.end","connect.cleanup","global-connect.hover","global-connect.out","global-connect.end","global-connect.cleanup"],Ll,function(t){var n=t.hover;Hi(n,"bpmn:Lane")&&(t.hover=hu(n)||n,t.hoverGfx=e.getGraphics(t.hover))}),t.on(["bendpoint.move.hover"],Ll,function(t){var n=t.context,i=t.hover,r=n.type;Hi(i,"bpmn:Lane")&&/reconnect/.test(r)&&(t.hover=hu(i)||i,t.hoverGfx=e.getGraphics(t.hover))}),t.on(["connect.start"],Ll,function(e){var t=e.context,n=t.start;Hi(n,"bpmn:Lane")&&(t.start=hu(n)||n)}),t.on("shape.move.start",Il,function(e){var t=e.shape;Hi(t,"bpmn:Lane")&&(e.shape=hu(t)||t)})}function Fl(e,t,n){ls.call(this,e),this.preExecute("shape.create",function(e){var n=e.context.shape;if(Hi(n,"bpmn:DataObjectReference")&&"label"!==n.type){var i=t.create("bpmn:DataObject");n.businessObject.dataObjectRef=i}})}zl.$inject=["elementRegistry","eventBus","canvas"],Fl.$inject=["eventBus","bpmnFactory","moddle"],n(Fl,ls);var $l=20,Hl=20,Gl=30,Wl=2e3;function Vl(e,t,n){function i(t){var i,r=t.parent,o=e.getRootElement();Hi(o,"bpmn:Collaboration")?i=o:(i=n.makeCollaboration(),t.process=r),t.parent=i}ls.call(this,t),t.on(["create.start","shape.move.start"],Wl,function(t){var n=t.context,i=n.shape,r=e.getRootElement();if(Hi(i,"bpmn:Participant")&&Hi(r,"bpmn:Process")&&r.children.length){var o=r.children.filter(function(e){return!Hi(e,"bpmn:Group")&&!Rr(e)&&!function(e){return!!e.waypoints}(e)});if(o.length){var a=ft(o);F(i,function(e,t){t={width:t.width+2*$l+Gl,height:t.height+2*Hl};var n=Math.max(e.width,t.width),i=Math.max(e.height,t.height);return{x:-n/2,y:-i/2,width:n,height:i}}(i,a)),n.createConstraints=function(e,t){return{bottom:(t=mo(t)).top+e.height/2-Hl,left:t.right-e.width/2+$l,top:t.bottom-e.height/2+Hl,right:t.left+e.width/2-$l-Gl}}(i,a)}}}),t.on("create.start",Wl,function(n){var i=n.context.shape,r=e.getRootElement(),o=e.getGraphics(r);function a(e){e.element=r,e.gfx=o}Hi(i,"bpmn:Participant")&&Hi(r,"bpmn:Process")&&(t.on("element.hover",Wl,a),t.once("create.cleanup",function(){t.off("element.hover",a)}))}),this.preExecute("shape.create",function(e){var t=e.parent;Hi(e.shape,"bpmn:Participant")&&Hi(t,"bpmn:Process")&&i(e)},!0),this.execute("shape.create",function(e){var t=e.process,n=e.shape;t&&(e.oldProcessRef=n.businessObject.processRef,n.businessObject.processRef=t.businessObject)},!0),this.revert("shape.create",function(e){var t=e.process,n=e.shape;t&&(n.businessObject.processRef=e.oldProcessRef)},!0),this.postExecute("shape.create",function(e){var t=e.process,i=e.shape;if(t){var r=t.children.slice();n.moveElements(r,{x:0,y:0},i)}},!0),this.preExecute("elements.create",Wl,function(e){var t,n=e.elements,r=e.parent;Ul(n)&&Hi(r,"bpmn:Process")&&(i(e),t=Ul(n),e.oldProcessRef=t.businessObject.processRef,t.businessObject.processRef=r.businessObject)},!0),this.revert("elements.create",function(e){var t=e.elements;e.process&&(Ul(t).businessObject.processRef=e.oldProcessRef)},!0),this.postExecute("elements.create",function(e){var t,i=e.elements,r=e.process;if(r){t=Ul(i);var o=r.children.slice();n.moveElements(o,{x:0,y:0},t)}},!0)}function Ul(e){return y(e,function(e){return Hi(e,"bpmn:Participant")})}Vl.$inject=["canvas","eventBus","modeling"],n(Vl,ls);var ql="__targetRef_placeholder";function Kl(e,t){function n(e,n){var i=e.get("properties"),r=y(i,function(e){return e.name===ql});return!r&&n&&_t(i,r=t.create("bpmn:Property",{name:ql})),r}function i(e,t){var i=n(e);i&&(function(e,t,n){return y(e.get("dataInputAssociations"),function(e){return e!==n&&e.targetRef===t})}(e,i,t)||Et(e.get("properties"),i))}function r(e){var t,r=e.context,o=r.connection,a=o.businessObject,s=o.target,c=s&&s.businessObject,p=r.newTarget,u=p&&p.businessObject,l=r.oldTarget||r.target,h=l&&l.businessObject,d=o.businessObject;h&&h!==c&&i(h,a),u&&u!==c&&i(u,a),c?(t=n(c,!0),d.targetRef=t):d.targetRef=null}ls.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],Yl(r)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],Yl(r))}function Yl(e){return function(t){if(Hi(t.context.connection,"bpmn:DataInputAssociation"))return e(t)}}function Xl(e){this._bpmnUpdater=e}function Zl(e,t,n,i){function r(e){return e.children.filter(function(e){return Hi(e,"bpmn:DataStoreReference")&&!e.labelTarget})}function o(e,i){var r=e.businessObject||e;if(i=i||n.filter(function(e){return Hi(e,"bpmn:Participant")})[0]){var o=i.businessObject||i;t.execute("dataStore.updateContainment",{dataStoreBo:r,newSemanticParent:o.processRef||o,newDiParent:o.di})}}ls.call(this,i),t.registerHandler("dataStore.updateContainment",Xl),this.preExecute("shape.create",function(e){var t=e.context,n=t.shape;Hi(n,"bpmn:DataStoreReference")&&"label"!==n.type&&(t.hints||(t.hints={}),t.hints.autoResize=!1)}),this.preExecute("elements.move",function(e){var t=e.context,n=t.shapes;n.filter(function(e){return Hi(e,"bpmn:DataStoreReference")}).length&&(t.hints||(t.hints={}),t.hints.autoResize=n.filter(function(e){return!Hi(e,"bpmn:DataStoreReference")}))}),this.postExecute("shape.create",function(e){var t=e.context.shape,n=t.parent;Hi(t,"bpmn:DataStoreReference")&&"label"!==t.type&&Hi(n,"bpmn:Collaboration")&&o(t)}),this.postExecute("shape.move",function(e){var t=e.context,n=t.shape,i=t.oldParent,r=n.parent;Hi(i,"bpmn:Collaboration")||Hi(n,"bpmn:DataStoreReference")&&"label"!==n.type&&Hi(r,"bpmn:Collaboration")&&o(n,Hi(i,"bpmn:Participant")?i:function(e,t){for(;e.parent;){if(Hi(e.parent,t))return e.parent;e=e.parent}}(i,"bpmn:Participant"))}),this.postExecute("shape.delete",function(t){var n=t.context.shape,i=e.getRootElement();os(n,["bpmn:Participant","bpmn:SubProcess"])&&Hi(i,"bpmn:Collaboration")&&r(i).filter(function(e){return function(e,t){var n=e.businessObject||e,i=t.businessObject||t;for(;n.$parent;){if(n.$parent===i.processRef||i)return!0;n=n.$parent}return!1}(e,n)}).forEach(function(e){o(e)})}),this.postExecute("canvas.updateRoot",function(e){var t=e.context,n=t.oldRoot,i=t.newRoot;r(n).forEach(function(e){Hi(i,"bpmn:Process")&&o(e,i)})})}Kl.$inject=["eventBus","bpmnFactory"],n(Kl,ls),Xl.$inject=["bpmnUpdater"],Xl.prototype.execute=function(e){var t=e.dataStoreBo,n=e.newSemanticParent,i=e.newDiParent;e.oldSemanticParent=t.$parent,e.oldDiParent=t.di.$parent,this._bpmnUpdater.updateSemanticParent(t,n),this._bpmnUpdater.updateDiParent(t.di,i)},Xl.prototype.revert=function(e){var t=e.dataStoreBo,n=e.oldSemanticParent,i=e.oldDiParent;this._bpmnUpdater.updateSemanticParent(t,n),this._bpmnUpdater.updateDiParent(t.di,i)},Zl.$inject=["canvas","commandStack","elementRegistry","eventBus"],n(Zl,ls);var Ql=500;function Jl(e,t,n){ls.call(this,e),this.postExecuted("shape.delete",Ql,function(e){var t=e.context,i=t.hints,r=t.shape,o=t.oldParent;Hi(r,"bpmn:Lane")&&(i&&i.nested||function(e,t){var i,r,o,a=lu(t),s=[],c=[];ht(a,function(t){return t.y>e.y?c.push(t):s.push(t),t.children}),a.length&&(i=c.length&&s.length?e.height/2:e.height,s.length&&(r=n.calculateAdjustments(s,"y",i,e.y-10),n.makeSpace(r.movingShapes,r.resizingShapes,{x:0,y:i},"s")),c.length&&(o=n.calculateAdjustments(c,"y",-i,e.y+e.height+10),n.makeSpace(o.movingShapes,o.resizingShapes,{x:0,y:-i},"n")))}(r,o))})}Jl.$inject=["eventBus","modeling","spaceTool"],n(Jl,ls);var eh=500;function th(e,t){t.invoke(ls,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",eh,function(e){var t=e.elements;t.filter(function(e){return nh(e,e.host)}).map(function(e){return t.indexOf(e)}).forEach(function(i){e.elements[i]=n.replaceShape(t[i])})},!0),this.preExecute("elements.move",eh,function(e){var t=e.shapes,i=e.newHost;t.forEach(function(e,r){var o,a=e.host;nh(e,(o=a,-1!==t.indexOf(o)?a:i))&&(t[r]=n.replaceShape(e))})},!0)}function nh(e,t){return!Rr(e)&&Hi(e,"bpmn:BoundaryEvent")&&!t}function ih(e,t,n){function i(e,i,r){var o,a,s,c,p,u,l,h,f=i.waypoints,m=e.outgoing.slice(),v=e.incoming.slice(),y=Bs(f,h=d(r.width)?yo(r):r);if(y){if(o=f.slice(0,y.index),a=f.slice(y.index+(y.bendpoint?1:0)),!o.length||!a.length)return;s=y.bendpoint?f[y.index]:h,rh(e,o[o.length-1])||o.push(oh(s)),rh(e,a[0])||a.unshift(oh(s))}c=i.source,p=i.target,t.canConnect(c,e,i)&&(n.reconnectEnd(i,e,o||h),u=i),t.canConnect(e,p,i)&&(u?l=n.connect(e,p,{type:i.type,waypoints:a}):(n.reconnectStart(i,e,a||h),l=i));var b=[].concat(u&&g(v,function(e){return e.source===u.source})||[],l&&g(m,function(e){return e.target===l.target})||[]);b.length&&n.removeElements(b)}ls.call(this,e),this.preExecute("elements.move",function(e){var n=e.newParent,i=e.shapes,r=e.delta,o=i[0];if(o&&n){n&&n.waypoints&&(e.newParent=n=n.parent);var a=yo(o),s={x:a.x+r.x,y:a.y+r.y},c=y(n.children,function(e){return t.canInsert(i,e)&&Bs(e.waypoints,s)});c&&(e.targetFlow=c,e.position=s)}},!0),this.postExecuted("elements.move",function(e){var t=e.shapes,n=e.targetFlow,r=e.position;n&&i(t[0],n,r)},!0),this.preExecute("shape.create",function(e){var n=e.parent,i=e.shape;t.canInsert(i,n)&&(e.targetFlow=n,e.parent=n.parent)},!0),this.postExecuted("shape.create",function(e){var t=e.shape,n=e.targetFlow,r=e.position;n&&i(t,n,r)},!0)}function rh(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}function oh(e){return F({},e)}function ah(e,t){ls.call(this,e),this.preExecuted("connection.create",function(e){var n=e.context,i=n.source,r=n.target,o=r.incoming.slice();n.hints&&!1===n.hints.createElementsBehavior||Hi(i,"bpmn:EventBasedGateway")&&r.incoming.length&&o.filter(sh).forEach(function(e){t.removeConnection(e)})}),this.preExecuted("shape.replace",function(e){var n=e.context.newShape;Hi(n,"bpmn:EventBasedGateway")&&n.outgoing.filter(sh).map(function(e){return e.target}).reduce(function(e,t){var n=t.incoming.filter(sh);return e.concat(n)},[]).forEach(function(e){e.source!==n&&t.removeConnection(e)})})}function sh(e){return Hi(e,"bpmn:SequenceFlow")}th.$inject=["bpmnReplace","injector"],n(th,ls),th.prototype.replaceShape=function(e){var t,n,i=(n=Gi(e).eventDefinitions)&&n[0];return t=i?{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:i.$type}:{type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,t,{layoutConnection:!1})},n(ih,ls),ih.$inject=["eventBus","bpmnRules","modeling"],ah.$inject=["eventBus","modeling"],n(ah,ls);var ch=2e3;function ph(e,t,n,i,r,o){function a(){return Gi(t.getRootElement()).$parent}function s(e){var t=Gi(e).categoryValueRef;if(t){var n=t.$parent;t&&(Et(n.categoryValue,t),n&&!n.categoryValue.length&&function(e){Et(a().get("rootElements"),e)}(n))}}r.invoke(ls,this),this.executed("shape.delete",function(e){var t,i=e.context.shape;if(Hi(i,"bpmn:Group")){var r=Gi(i).categoryValueRef,o=n.filter(function(e){return Hi(e,"bpmn:Group")});t=r,o.some(function(e){var n=Gi(e);return n.categoryValueRef&&n.categoryValueRef===t})||s(i)}}),this.reverted("shape.delete",function(e){var t=e.context.shape;if(Hi(t,"bpmn:Group")){var n=Gi(t).categoryValueRef,i=a(),r=n?n.$parent:null;_t(r.get("categoryValue"),n),_t(i.get("rootElements"),r)}}),this.execute("shape.create",function(t){var n=Gi(t.context.shape);if(Hi(n,"bpmn:Group")&&!n.categoryValueRef){var i=vl(a(),e);n.categoryValueRef=i}}),this.revert("shape.create",function(e){var t=e.context.shape;Hi(t,"bpmn:Group")&&(s(t),delete Gi(t).categoryValueRef)}),i.on("moddleCopy.canCopyProperty",ch,function(t){var n,i=t.property;if(Hi(i,"bpmn:CategoryValue"))return n=vl(a(),e),o.copyElement(i,n)})}function uh(e,t,n,i){var r,o,a,s;return 0==(r=(i.y-n.y)*(t.x-e.x)-(i.x-n.x)*(t.y-e.y))?null:(o=e.y-n.y,a=e.x-n.x,s=((i.x-n.x)*o-(i.y-n.y)*a)/r,{x:Math.round(e.x+s*(t.x-e.x)),y:Math.round(e.y+s*(t.y-e.y))})}function lh(e){function t(e,t,n){var i,r={x:n.x,y:n.y-50},o={x:n.x-50,y:n.y},a=uh(e,t,n,r),s=uh(e,t,n,o);i=a&&s?hh(a,n)>hh(s,n)?s:a:a||s,e.original=i}e.on("bpmnElement.added",function(e){var n,i,r=e.element;r.waypoints&&(t((i=(n=r).waypoints)[0],i[1],yo(n.source)),t(i[i.length-1],i[i.length-2],yo(n.target)))})}function hh(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function dh(e){ls.call(this,e);var t=["bpmn:Participant","bpmn:Lane"];this.executed(["shape.move","shape.create","shape.resize"],function(e){var n=Gi(e.context.shape);os(n,t)&&!n.di.get("isHorizontal")&&n.di.set("isHorizontal",!0)})}function fh(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function mh(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function vh(e,t){var n=t[0],i=t[1],r={x:i.x-n.x,y:i.y-n.y},o=function(e,t,n){var i=[{n:e[0]-n[0],lambda:t[0]},{n:e[1]-n[1],lambda:t[1]}];return-(i[0].n*t[0]+i[1].n*t[1])/(i[0].lambda*t[0]+i[1].lambda*t[1])}([n.x,n.y],[r.x,r.y],[e.x,e.y]);return{x:n.x+o*r.x,y:n.y+o*r.y}}function yh(e,t){var n=vh(e,t);return fh({x:n.x-e.x,y:n.y-e.y})}function gh(e,t){return fh({x:e.x-t.x,y:e.y-t.y})}ph.$inject=["bpmnFactory","canvas","elementRegistry","eventBus","injector","moddleCopy"],n(ph,ls),lh.$inject=["eventBus"],dh.$inject=["eventBus"],n(dh,ls);var bh=Math.sqrt,xh=Math.min,Eh=Math.max,_h=Math.abs;function wh(e){return Math.pow(e,2)}function Sh(e,t){return bh(wh(e.x-t.x)+wh(e.y-t.y))}function Ch(e,t,n,i){var r=t.x-e.x,o=t.y-e.y,a=n.x-e.x,s=n.y-e.y,c=r*r+o*o,p=(r*a+o*s)/c,u=p*p-(a*a+s*s-i*i)/c;if(u<0&&u>-1e-6&&(u=0),u<0)return[];var l=bh(u),h=-p+l,d=-p-l,f={x:e.x-r*h,y:e.y-o*h};return 0===u?[f]:[f,{x:e.x-r*d,y:e.y-o*d}].filter(function(n){return function(e,t,n){return Th(e.x,t.x,n.x)&&Th(e.y,t.y,n.y)}(n,e,t)})}function Th(e,t,n){return e>=xh(t,n)-Rh&&e<=Eh(t,n)+Rh}var Rh=.1;function Ah(e,t){return _h(e.x-t.x)<=Rh&&_h(e.y-t.y)<=Rh}function Ph(e,t,n,i){var r=0,o=0,a=function(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}(e),s=function(e,t){var n,i,r,o,a,s,c,p,u,l,h,d,f=0;for(f=0;f<t.length-1;f++){if(Ah(n=t[f],i=t[f+1])?s=[n]:(r=Sh(e,n),o=Sh(e,i),s=Ch(n,i,e,xh(r,o))),s.length<1)throw new Error("expected between [1, 2] circle -> line intersections");1===s.length&&(c={type:"bendpoint",position:s[0],segmentIndex:f,bendpointIndex:Ah(n,s[0])?f:f+1}),2===s.length&&(h=s[0],d=s[1],c={type:"segment",position:a={x:(h.x+d.x)/2,y:(h.y+d.y)/2},segmentIndex:f,relativeLocation:Sh(n,a)/Sh(n,i)}),p=Sh(c.position,e),(!l||u>p)&&(l=c,u=p)}return l}(a,n),c=s.segmentIndex,p=function(e,t,n,i){var r=n.segmentIndex,o=t.length-e.length;if(i.segmentMove){var a=i.segmentMove.segmentStartIndex,s=i.segmentMove.newSegmentStartIndex;return r===a?s:r>=s?r+o<s?s:r+o:r}if(i.bendpointMove){var c,p=i.bendpointMove.insert,u=i.bendpointMove.bendpointIndex;return 0===o?r:(r>=u&&(c=p?r+1:r-1),r<u&&(c=r,p&&"bendpoint"!==n.type&&u-1===r&&kh(t,u)<n.relativeLocation&&c++),c)}return 0===o?r:i.connectionStart?0===r?0:null:i.connectionEnd&&r===e.length-2?t.length-2:null}(n,t,s,i);if(null===p)return{x:r,y:o};if(p<0||p>t.length-2)return{x:r,y:o};var u,l,h=Mh(n,c),d=Mh(t,p),f=s.position,m=function(e,t){var n=gh(e[0],e[1]),i=gh(e[0],t);return 0===n?0:i/n}(h,f),v=(u=d,l=mh(h),mh(u)-l);if("bendpoint"===s.type){var y=t.length-n.length,g=s.bendpointIndex,b=n[g];if(-1!==t.indexOf(b))return{x:r,y:o};if(0===y){var x=t[g];return{x:x.x-s.position.x,y:x.y-s.position.y}}y<0&&0!==g&&g<n.length-1&&(m=kh(n,g))}var E,_,w=(d[1].x-d[0].x)*m+d[0].x,S=(d[1].y-d[0].y)*m+d[0].y,C=(E={x:a.x-f.x,y:a.y-f.y},(_=v)?{x:Math.cos(_)*E.x-Math.sin(_)*E.y,y:Math.sin(_)*E.x+Math.cos(_)*E.y}:E);return fo({x:r=w+C.x-a.x,y:o=S+C.y-a.y})}function kh(e,t){var n=gh(e[t-1],e[t]);return n/(n+gh(e[t],e[t+1]))}function Mh(e,t){return[e[t],e[t+1]]}function Dh(e,t,n){var i=ga(t),r=ga(n),o=ba(e,i),a=o.x*(n.width/t.width),s=o.y*(n.height/t.height);return fo({x:r.x+a,y:r.y+s})}function Bh(e,t,n){var i=ga(e),r=ga(t),o=ga(n),a=ba(e,i),s=ba(i,r),c=function(e,t,n){var i=mo(t),r=mo(n);if(function(e,t){return function(e,t){return e.right!==t.right&&e.left!==t.left}(e,t)||function(e,t){return e.top!==t.top&&e.bottom!==t.bottom}(e,t)}(i,r))return null;var o,a,s=go(t,e);if("top"===s)o={x:0,y:r.bottom-i.bottom};else if("bottom"===s)o={x:0,y:r.top-i.top};else if("right"===s)o={x:r.left-i.left,y:0};else{if("left"!==s)return null;o={x:r.right-i.right,y:0}}if(a={x:e.x+o.x,y:e.y+o.y},go(n,a)!==s)return null;return o}(i,t,n);if(c)return c;var p=s.x*(n.width/t.width),u=s.y*(n.height/t.height),l=o.x+p,h=o.y+u;return fo({x:l+a.x-e.x,y:h+a.y-e.y})}var Nh={width:90,height:20},Oh="name",jh="text";function Lh(e,t,n,i){ls.call(this,e),this.postExecute("element.updateProperties",function(e){var n=e.context,r=n.element,o=n.properties;if(Oh in o&&t.updateLabel(r,o[Oh]),jh in o&&Hi(r,"bpmn:TextAnnotation")){var a=i.getTextAnnotationBounds({x:r.x,y:r.y,width:r.width,height:r.height},o[jh]||"");t.updateLabel(r,o.text,a)}}),this.postExecute(["shape.create","connection.create"],function(e){var n=e.context;if(!1!==(n.hints||{}).createElementsBehavior){var r=n.shape||n.connection,o=r.businessObject;if(!Rr(r)&&wr(r)&&Ki(r)){var a=Tr(r),s=i.getExternalLabelBounds(Nh,Ki(r));t.createLabel(r,a,{id:o.id+"_label",businessObject:o,width:s.width,height:s.height})}}}),this.postExecute("shape.delete",function(e){var n=e.context,i=n.labelTarget,r=n.hints||{};i&&!1!==r.unsetLabel&&t.updateLabel(i,null,null,{removeShape:!1})}),this.postExecute(["label.create"],function(e){var t,i=e.context.shape;i.labelTarget&&Hi(i.labelTarget||i,"bpmn:BaseElement")&&((t=i.businessObject.di).label||(t.label=n.create("bpmndi:BPMNLabel",{bounds:n.create("dc:Bounds")})),F(t.label.bounds,{x:i.x,y:i.y,width:i.width,height:i.height}))}),this.postExecute(["connection.layout","connection.updateWaypoints"],function(e){var n=e.context;if(!1!==(n.hints||{}).labelBehavior){var i,r=n.connection.label;r&&r.parent&&(i=function(e){var t=e.context,n=t.connection,i=n.label,r=F({},t.hints),o=t.newWaypoints||n.waypoints,a=t.oldWaypoints;return void 0===r.startChanged&&(r.startChanged=!!r.connectionStart),void 0===r.endChanged&&(r.endChanged=!!r.connectionEnd),Ph(i,o,a,r)}(e),t.moveShape(r,i))}}),this.postExecute(["shape.replace"],function(e){var t=e.context,n=t.newShape,i=t.oldShape,r=Gi(n);r&&wr(r)&&i.label&&n.label&&(n.label.x=i.label.x,n.label.y=i.label.y)}),this.postExecute("shape.resize",function(e){var n,i=e.context,r=i.shape,o=i.newBounds,a=i.oldBounds;if(Sr(r)){var s=r.label,c=Ih(function(e,t){if(!t.length)return;var n=function(e,t){return M(t.map(function(t){return{line:t,distance:yh(e,t)}}),"distance")[0].line}(e,t);return vh(e,n)}(yo(s),[[{x:(n=a).x,y:n.y},{x:n.x+(n.width||0),y:n.y}],[{x:n.x+(n.width||0),y:n.y},{x:n.x+(n.width||0),y:n.y+(n.height||0)}],[{x:n.x,y:n.y+(n.height||0)},{x:n.x+(n.width||0),y:n.y+(n.height||0)}],[{x:n.x,y:n.y},{x:n.x,y:n.y+(n.height||0)}]]),a,o);t.moveShape(s,c)}})}function Ih(e,t,n){return fo(ba(Dh(e,t,n),e))}n(Lh,ls),Lh.$inject=["eventBus","modeling","bpmnFactory","textRenderer"];var zh="flow elements must be children of pools/participants",Fh="participants cannot be pasted onto a non-empty process diagram";function $h(e,t,n){function i(e,n,i){t.add({position:{x:e.x+5,y:e.y+5},type:"error",timeout:i||2e3,html:"<div>"+n+"</div>"})}e.on(["shape.move.rejected","create.rejected"],function(e){var t=e.context,r=t.shape;Hi(t.target,"bpmn:Collaboration")&&Hi(r,"bpmn:FlowNode")&&i(e,n(zh))}),e.on(["elements.paste.rejected"],function(e){var t=e.context,r=t.position,o=t.target;Hi(o,"bpmn:Collaboration")&&i(r,n(zh)),Hi(o,"bpmn:Process")&&i(r,n(Fh),3e3)})}function Hh(e,t,n,i){ls.call(this,e);var r=i.get("dragging",!1);function o(e){var i,r,o=e.source,a=e.target;e.parent&&(Hi(e,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(o,a)||(r=!0),n.canConnectMessageFlow(o,a)&&(i="bpmn:MessageFlow")),Hi(e,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(o,a)||(r=!0),n.canConnectSequenceFlow(o,a)&&(i="bpmn:SequenceFlow")),Hi(e,"bpmn:Association")&&!n.canConnectAssociation(o,a)&&(r=!0),r&&t.removeConnection(e),i&&t.connect(o,a,{type:i,waypoints:e.waypoints.slice()}))}this.postExecuted("elements.move",function(e){b(e.closure.allConnections,o)},!0),this.preExecute("connection.reconnect",function(e){var i,o,a=e.context,s=a.connection,c=a.newSource||s.source,p=a.newTarget||s.target;(i=n.canConnect(c,p))&&i.type!==s.type&&(o=t.connect(c,p,{type:i.type,waypoints:s.waypoints.slice()}),t.removeConnection(s),a.connection=o,r&&function(e,t){var n,i=r.context(),o=i&&i.payload.previousSelection;o&&o.length&&-1!==(n=o.indexOf(e))&&o.splice(n,1,t)}(s,o))}),this.postExecuted("element.updateProperties",function(e){var n,i=e.context,r=i.properties,o=i.element,a=o.businessObject;r.default&&(n=y(o.outgoing,D({id:o.businessObject.default.id})))&&t.updateProperties(n,{conditionExpression:void 0}),r.conditionExpression&&a.sourceRef.default===a&&t.updateProperties(o.source,{default:void 0})})}function Gh(e,t){ls.call(this,e),this.preExecute("shape.delete",function(e){var t=e.shape,n=t.parent;Hi(t,"bpmn:Participant")&&(e.collaborationRoot=n)},!0),this.postExecute("shape.delete",function(e){var n=e.collaborationRoot;n&&!n.businessObject.participants.length&&t.makeProcess()},!0)}function Wh(e,t,n,i,r,o){i.invoke(ls,this),this._bpmnReplace=e,this._elementRegistry=n,this._selection=o,this.postExecuted(["elements.move"],500,function(e){var n=e.context,i=n.newParent,r=n.newHost,o=[];b(n.closure.topLevel,function(e){o=Vi(e)?o.concat(e.children):o.concat(e)}),1===o.length&&r&&(i=r);var a=t.canReplace(o,i);a&&this.replaceElements(o,a.replacements,r)},this),this.postExecute(["shape.replace"],1500,function(e){var n,i=e.context,r=i.oldShape,o=i.newShape,a=r.attachers;a&&a.length&&(n=t.canReplace(a,o),this.replaceElements(a,n.replacements))},this),this.postExecuted(["shape.replace"],1500,function(e){var t=e.context,n=t.oldShape,i=t.newShape;r.unclaimId(n.businessObject.id,n.businessObject),r.updateProperties(i,{id:n.id})})}$h.$inject=["eventBus","tooltips","translate"],n(Hh,ls),Hh.$inject=["eventBus","modeling","bpmnRules","injector"],Gh.$inject=["eventBus","modeling"],n(Gh,ls),n(Wh,ls),Wh.prototype.replaceElements=function(e,t){var n=this._elementRegistry,i=this._bpmnReplace,r=this._selection;b(t,function(t){var r={type:t.newElementType},o=n.get(t.oldElementId),a=e.indexOf(o);e[a]=i.replaceElement(o,r,{select:!1})}),t&&r.select(e)},Wh.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var Vh=Math.abs,Uh=Math.min,qh=Math.max;function Kh(e,t,n,i){var r=e[t];e[t]=void 0===r?n:i(n,r)}function Yh(e,t,n){return Kh(e,t,n,Uh)}function Xh(e,t,n){return Kh(e,t,n,qh)}var Zh=20,Qh=50,Jh=20,ed=20;var td=1500,nd={width:300,height:60},id={width:300,height:150},rd={width:140,height:120},od={width:50,height:30};function ad(e){e.on("resize.start",td,function(e){var t=e.context,n=t.shape,i=t.direction,r=t.balanced;(Hi(n,"bpmn:Lane")||Hi(n,"bpmn:Participant"))&&(t.resizeConstraints=function(e,t,n){var i=hu(e),r=!0,o=!0,a=uu(i,[i]),s=mo(e),c={},p={};return/e/.test(t)?p.right=s.left+nd.width:/w/.test(t)&&(p.left=s.right-nd.width),a.forEach(function(e){var i=mo(e);/n/.test(t)&&(i.top<s.top-10&&(r=!1),n&&Vh(s.top-i.bottom)<10&&Xh(c,"top",i.top+nd.height),Vh(s.top-i.top)<5&&Yh(p,"top",i.bottom-nd.height)),/s/.test(t)&&(i.bottom>s.bottom+10&&(o=!1),n&&Vh(s.bottom-i.top)<10&&Yh(c,"bottom",i.bottom-nd.height),Vh(s.bottom-i.bottom)<5&&Xh(p,"bottom",i.top+nd.height))}),i.children.filter(function(e){return!e.hidden&&!e.waypoints&&(Hi(e,"bpmn:FlowElement")||Hi(e,"bpmn:Artifact"))}).forEach(function(e){var n=mo(e);r&&/n/.test(t)&&Yh(p,"top",n.top-Jh),/e/.test(t)&&Xh(p,"right",n.right+Zh),o&&/s/.test(t)&&Xh(p,"bottom",n.bottom+ed),/w/.test(t)&&Yh(p,"left",n.left-Qh)}),{min:p,max:c}}(n,i,r)),Hi(n,"bpmn:Participant")&&(t.minDimensions=id),Hi(n,"bpmn:SubProcess")&&Wi(n)&&(t.minDimensions=rd),Hi(n,"bpmn:TextAnnotation")&&(t.minDimensions=od)})}ad.$inject=["eventBus"];var sd=1001;function cd(e,t){e.on("resize.start",sd+500,function(e){var t=e.context,n=t.shape;(Hi(n,"bpmn:Lane")||Hi(n,"bpmn:Participant"))&&(t.balanced=!ko(e))}),e.on("resize.end",sd,function(e){var n=e.context,i=n.shape,r=n.canExecute,o=n.newBounds;if(Hi(i,"bpmn:Lane")||Hi(i,"bpmn:Participant"))return r&&(o=ho(o),t.resizeLane(i,o,n.balanced)),!1})}function pd(e,t,n){ls.call(this,e),this.preExecute("shape.delete",function(e){var i=e.context.shape;if(1===i.incoming.length&&1===i.outgoing.length){var r=i.incoming[0],o=i.outgoing[0];if(Hi(r,"bpmn:SequenceFlow")&&Hi(o,"bpmn:SequenceFlow")&&t.canConnect(r.source,o.target,r)){var a=function(e,t){var n=uh(ud(e[e.length-2]),ud(e[e.length-1]),ud(t[1]),ud(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[ud(e[0]),ud(t[t.length-1])]}(r.waypoints,o.waypoints);n.reconnectEnd(r,o.target,a)}}})}function ud(e){return e.original||e}cd.$inject=["eventBus","modeling"],n(pd,ls),pd.$inject=["eventBus","bpmnRules","modeling"];var ld=Math.max;function hd(e){e.on("spaceTool.getMinDimensions",function(e){var t=e.shapes,n=e.axis,i=e.start,r={};return b(t,function(e){var t=e.id;Hi(e,"bpmn:Participant")&&(!function(e){return"x"===e}(n)?r[t]={width:id.width,height:dd(e,i)}:r[t]=id),Hi(e,"bpmn:SubProcess")&&Wi(e)&&(r[t]=rd),Hi(e,"bpmn:TextAnnotation")&&(r[t]=od)}),r})}function dd(e,t){var n;return lu(e).length?(n=function(e,t){var n,i=lu(e);return n=function e(t,n){var i,r,o;for(i=0;i<t.length;i++)if(r=t[i],n>=r.y&&n<=r.y+r.height)return(o=lu(r)).length?e(o,n):r}(i,t),e.height-n.height+nd.height}(e,t),ld(id.height,n)):id.height}function fd(e,t){e.invoke(ls,this),this.postExecuted("shape.replace",function(e){var n=e.context.oldShape,i=e.context.newShape;if(Hi(i,"bpmn:SubProcess")&&Hi(n,"bpmn:Task")&&Wi(i)){var r,o={x:(r=i).x+r.width/6,y:r.y+r.height/2};t.createShape({type:"bpmn:StartEvent"},o,i)}})}hd.$inject=["eventBus"],fd.$inject=["injector","modeling"],n(fd,ls);var md=500;function vd(e,t,n,i){ls.call(this,e),this.executed(["shape.toggleCollapse"],md,function(e){var t,n=e.context.shape;Hi(n,"bpmn:SubProcess")&&(n.collapsed?Gi(n).di.isExpanded=!1:((t=n.children).length&&t.forEach(function(e){"label"!==e.type||e.businessObject.name||(e.hidden=!0)}),Gi(n).di.isExpanded=!0))}),this.reverted(["shape.toggleCollapse"],md,function(e){var t=e.context.shape;t.collapsed?Gi(t).di.isExpanded=!1:Gi(t).di.isExpanded=!0}),this.postExecuted(["shape.toggleCollapse"],md,function(e){var i,r=e.context.shape,o=t._getDefaultSize(r);i=r.collapsed?function(e,t){return{x:e.x+(e.width-t.width)/2,y:e.y+(e.height-t.height)/2,width:t.width,height:t.height}}(r,o):function(e,t){var n,i,r=e.children,o=t;return(n=su((i=r,i.filter(function(e){return!e.hidden})).concat([e])))?(o.width=Math.max(n.width,o.width),o.height=Math.max(n.height,o.height),o.x=n.x+(n.width-o.width)/2,o.y=n.y+(n.height-o.height)/2):(o.x=e.x+(e.width-o.width)/2,o.y=e.y+(e.height-o.height)/2),o}(r,o),n.resizeShape(r,i,null,{autoResize:!r.collapsed&&"nwse"})})}function yd(e,t,n,i){t.invoke(ls,this),this.preExecute("shape.delete",function(e){var t=e.context.shape,r=t.businessObject;Rr(t)||(Hi(t,"bpmn:Participant")&&Wi(t)&&n.ids.unclaim(r.processRef.id),i.unclaimId(r.id,r))}),this.preExecute("connection.delete",function(e){var t=e.context.connection.businessObject;i.unclaimId(t.id,t)}),this.preExecute("canvas.updateRoot",function(){var t=e.getRootElement().businessObject;n.ids.unclaim(t.id)})}n(vd,ls),vd.$inject=["eventBus","elementFactory","modeling"],n(yd,ls),yd.$inject=["canvas","injector","moddle","modeling"];var gd=500,bd=5e3;function xd(e,t,n){var i;function r(){if(!i)throw new Error(n("out of bounds release"));return i}ls.call(this,e);var o=["spaceTool","lane.add","lane.resize","lane.split","elements.create","elements.delete","elements.move","shape.create","shape.delete","shape.move","shape.resize"];this.preExecute(o,bd,function(e){(i=i||new Ed).enter()}),this.postExecuted(o,gd,function(e){!function(){if(!i)throw new Error(n("out of bounds release"));var e=i.leave();e&&(t.updateLaneRefs(i.flowNodes,i.lanes),i=null)}()}),this.preExecute(["shape.create","shape.move","shape.delete","shape.resize"],function(e){var t=e.context.shape,n=r();t.labelTarget||(Hi(t,"bpmn:Lane")&&n.addLane(t),Hi(t,"bpmn:FlowNode")&&n.addFlowNode(t))})}function Ed(){this.flowNodes=[],this.lanes=[],this.counter=0,this.addLane=function(e){this.lanes.push(e)},this.addFlowNode=function(e){this.flowNodes.push(e)},this.enter=function(){this.counter++},this.leave=function(){return this.counter--,!this.counter}}function _d(e,t){ls.call(this,e),this.preExecute("connection.delete",function(e){var n=e.context.connection,i=n.source;(function(e,t){if(!Hi(e,"bpmn:SequenceFlow"))return!1;var n=Gi(t),i=Gi(e);return n.get("default")===i})(n,i)&&t.updateProperties(i,{default:null})})}xd.$inject=["eventBus","modeling","translate"],n(xd,ls),n(_d,ls),_d.$inject=["eventBus","modeling"];var wd={__init__:["adaptiveLabelPositioningBehavior","appendBehavior","associationBehavior","attachEventBehavior","boundaryEventBehavior","rootElementReferenceBehavior","createBehavior","fixHoverBehavior","createDataObjectBehavior","createParticipantBehavior","dataStoreBehavior","dataInputAssociationBehavior","deleteLaneBehavior","detachEventBehavior","dropOnFlowBehavior","eventBasedGatewayBehavior","groupBehavior","importDockingFix","isHorizontalFix","labelBehavior","modelingFeedback","removeElementBehavior","removeParticipantBehavior","replaceConnectionBehavior","replaceElementBehaviour","resizeBehavior","resizeLaneBehavior","toggleElementCollapseBehaviour","spaceToolBehavior","subProcessStartEventBehavior","unclaimIdBehavior","unsetDefaultFlowBehavior","updateFlowNodeRefsBehavior"],adaptiveLabelPositioningBehavior:["type",Tl],appendBehavior:["type",Al],associationBehavior:["type",Pl],attachEventBehavior:["type",Ml],boundaryEventBehavior:["type",Bl],rootElementReferenceBehavior:["type",Ol],createBehavior:["type",jl],fixHoverBehavior:["type",zl],createDataObjectBehavior:["type",Fl],createParticipantBehavior:["type",Vl],dataInputAssociationBehavior:["type",Kl],dataStoreBehavior:["type",Zl],deleteLaneBehavior:["type",Jl],detachEventBehavior:["type",th],dropOnFlowBehavior:["type",ih],eventBasedGatewayBehavior:["type",ah],groupBehavior:["type",ph],importDockingFix:["type",lh],isHorizontalFix:["type",dh],labelBehavior:["type",Lh],modelingFeedback:["type",$h],replaceConnectionBehavior:["type",Hh],removeParticipantBehavior:["type",Gh],replaceElementBehaviour:["type",Wh],resizeBehavior:["type",ad],resizeLaneBehavior:["type",cd],removeElementBehavior:["type",pd],toggleElementCollapseBehaviour:["type",vd],spaceToolBehavior:["type",hd],subProcessStartEventBehavior:["type",fd],unclaimIdBehavior:["type",yd],updateFlowNodeRefsBehavior:["type",xd],unsetDefaultFlowBehavior:["type",_d]};function Sd(e,t){var n=go(e,t,-15);return"intersect"!==n?n:null}function Cd(e){fs.call(this,e)}function Td(e){return!e||Rr(e)}function Rd(e){do{if(Hi(e,"bpmn:Process"))return Gi(e);if(Hi(e,"bpmn:Participant"))return Gi(e).processRef||Gi(e)}while(e=e.parent)}function Ad(e){return Hi(e,"bpmn:TextAnnotation")}function Pd(e){return Hi(e,"bpmn:Group")&&!e.labelTarget}function kd(e){return Hi(e,"bpmn:BoundaryEvent")&&Bd(e,"bpmn:CompensateEventDefinition")}function Md(e){return Gi(e).isForCompensation}function Dd(e){for(var t=e;t=t.parent;){if(Hi(t,"bpmn:FlowElementsContainer"))return Gi(t);if(Hi(t,"bpmn:Participant"))return Gi(t).processRef}return null}function Bd(e,t){return!!y(Gi(e).eventDefinitions||[],function(e){return Hi(e,t)})}function Nd(e,t){return(Gi(e).eventDefinitions||[]).every(function(e){return Hi(e,t)})}function Od(e){return Hi(e,"bpmn:ReceiveTask")||Hi(e,"bpmn:IntermediateCatchEvent")&&(Bd(e,"bpmn:MessageEventDefinition")||Bd(e,"bpmn:TimerEventDefinition")||Bd(e,"bpmn:ConditionalEventDefinition")||Bd(e,"bpmn:SignalEventDefinition"))}function jd(e){return e.waypoints}function Ld(e,t){return-1!==function(e){for(var t=[];e;)(e=e.parent)&&t.push(e);return t}(t).indexOf(e)}function Id(e,t,n){if(Td(e)||Td(t))return null;if(!Hi(n,"bpmn:DataAssociation")){if(Zd(e,t))return{type:"bpmn:MessageFlow"};if(Qd(e,t))return{type:"bpmn:SequenceFlow"}}var i=Jd(e,t);return i||(kd(e)&&Md(t)?{type:"bpmn:Association",associationDirection:"One"}:!!Xd(e,t)&&{type:"bpmn:Association"})}function zd(e,t,n){return!(!Rr(e)&&!Pd(e))||!(Hi(t,"bpmn:Participant")&&!Wi(t))&&(Hi(e,"bpmn:Participant")?Hi(t,"bpmn:Process")||Hi(t,"bpmn:Collaboration"):os(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:Hi(e,"bpmn:Lane")?Hi(t,"bpmn:Participant")||Hi(t,"bpmn:Lane"):!(Hi(e,"bpmn:BoundaryEvent")&&(i=e,!Gi(i).cancelActivity||!Hd(i)&&!Gd(i)))&&(Hi(e,"bpmn:FlowElement")&&!Hi(e,"bpmn:DataStoreReference")?Hi(t,"bpmn:FlowElementsContainer")?Wi(t):os(t,["bpmn:Participant","bpmn:Lane"]):os(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?os(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):!!Hi(e,"bpmn:MessageFlow")&&(Hi(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t)));var i}function Fd(e){return Hi(e,"bpmn:Lane")}function $d(e){return!!function(e){return!Rr(e)&&Hi(e,"bpmn:BoundaryEvent")}(e)||(!(!Hi(e,"bpmn:IntermediateThrowEvent")||!Hd(e))||Hi(e,"bpmn:IntermediateCatchEvent")&&Gd(e))}function Hd(e){var t=Gi(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function Gd(e){return Wd(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function Wd(e,t){return t.some(function(t){return Bd(e,t)})}function Vd(e,t,n,i){if(Array.isArray(e)||(e=[e]),1!==e.length)return!1;var r=e[0];return!Rr(r)&&(!!$d(r)&&(!Vi(t)&&(!(!Hi(t,"bpmn:Activity")||Md(t))&&(!(i&&!Sd(i,t))&&(!function(e){return Hi(e,"bpmn:ReceiveTask")&&y(e.incoming,function(e){return Hi(e.source,"bpmn:EventBasedGateway")})}(t)&&"attach")))))}function Ud(e,t,n){if(!t)return!1;var i={replacements:[]};return b(e,function(e){Vi(t)||Hi(e,"bpmn:StartEvent")&&"label"!==e.type&&zd(e,t)&&(function(e){return e&&!1!==Gi(e).isInterrupting}(e)||i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),(function(e){return Ui(e,"bpmn:ErrorEventDefinition")}(e)||function(e){return Ui(e,"bpmn:EscalationEventDefinition")}(e)||function(e){return Ui(e,"bpmn:CompensateEventDefinition")}(e))&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),Wd(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&Hi(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"})),Hi(t,"bpmn:Transaction")||Bd(e,"bpmn:CancelEventDefinition")&&"label"!==e.type&&(Hi(e,"bpmn:EndEvent")&&zd(e,t)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:EndEvent"}),Hi(e,"bpmn:BoundaryEvent")&&Vd(e,t,0,n)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:BoundaryEvent"}))}),!!i.replacements.length&&i}function qd(e,t){return!w(e,Fd)&&(!t||e.every(function(e){return zd(e,t)}))}function Kd(e,t,n,i){return!!t&&(!(!Rr(e)&&!Pd(e))||n!==t&&((!n||!Ld(n,t))&&(zd(e,t)||ef(e,t))))}function Yd(e,t){return Hi(e,"bpmn:SubProcess")?Wi(e)&&(!t||t.width>=100&&t.height>=80):Hi(e,"bpmn:Lane")?!t||t.width>=130&&t.height>=60:Hi(e,"bpmn:Participant")?!t||t.width>=250&&t.height>=50:!!Ad(e)||!!Pd(e)}function Xd(e,t){return!jd(e)&&!jd(t)&&(!(!kd(e)||!Md(t))||!Ld(t,e)&&!Ld(e,t)&&(!!function(e,t){var n=Ad(e),i=Ad(t);return(n||i)&&n!==i}(e,t)||!!Jd(e,t)))}function Zd(e,t){return!(rf(e)&&!rf(t))&&(Hi(i=e,"bpmn:InteractionNode")&&!Hi(i,"bpmn:BoundaryEvent")&&(!Hi(i,"bpmn:Event")||Hi(i,"bpmn:ThrowEvent")&&Nd(i,"bpmn:MessageEventDefinition"))&&function(e){return Hi(e,"bpmn:InteractionNode")&&!Hi(e,"bpmn:BoundaryEvent")&&!Md(e)&&(!Hi(e,"bpmn:Event")||Hi(e,"bpmn:CatchEvent")&&Nd(e,"bpmn:MessageEventDefinition"))}(t)&&(n=t,!(Rd(e)===Rd(n))));var n,i}function Qd(e,t){return!(Od(t)&&t.incoming.length>0&&(n=t.incoming,(n=n||[]).some(nf))&&!Hi(e,"bpmn:EventBasedGateway"))&&(Hi(r=e,"bpmn:FlowNode")&&!Hi(r,"bpmn:EndEvent")&&!Vi(r)&&!(Hi(r,"bpmn:IntermediateThrowEvent")&&Bd(r,"bpmn:LinkEventDefinition"))&&!kd(r)&&!Md(r)&&function(e){return Hi(e,"bpmn:FlowNode")&&!Hi(e,"bpmn:StartEvent")&&!Hi(e,"bpmn:BoundaryEvent")&&!Vi(e)&&!(Hi(e,"bpmn:IntermediateCatchEvent")&&Bd(e,"bpmn:LinkEventDefinition"))&&!Md(e)}(t)&&(i=t,Dd(e)===Dd(i))&&!(Hi(e,"bpmn:EventBasedGateway")&&!Od(t)));var n,i,r}function Jd(e,t){return os(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&os(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:!(!os(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])||!os(e,["bpmn:Activity","bpmn:CatchEvent"]))&&{type:"bpmn:DataOutputAssociation"}}function ef(e,t,n){if(!t)return!1;if(Array.isArray(e)){if(1!==e.length)return!1;e=e[0]}return t.source!==e&&t.target!==e&&(os(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!Rr(t)&&Hi(e,"bpmn:FlowNode")&&!Hi(e,"bpmn:BoundaryEvent")&&zd(e,t.parent))}function tf(e,t){return!!Rr(t)||!(Hi(t,"bpmn:Lane")&&!function(e,t){return e&&t&&-1!==e.indexOf(t)}(e,t.parent))}function nf(e){if(e&&e.source)return Hi(e.source,"bpmn:EventBasedGateway")}function rf(e){return as(e,"bpmn:Process")||as(e,"bpmn:Collaboration")}n(Cd,fs),Cd.$inject=["eventBus"],Cd.prototype.init=function(){this.addRule("connection.start",function(e){return function(e){if(Td(e))return null;return os(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group"])}(e.source)}),this.addRule("connection.create",function(e){var t=e.source,n=e.target,i=e.hints||{},r=i.targetParent;if(i.targetAttach)return!1;r&&(n.parent=r);try{return Id(t,n)}finally{r&&(n.parent=null)}}),this.addRule("connection.reconnect",function(e){var t=e.connection;return Id(e.source,e.target,t)}),this.addRule("connection.updateWaypoints",function(e){return{type:e.connection.type}}),this.addRule("shape.resize",function(e){return Yd(e.shape,e.newBounds)}),this.addRule("elements.create",function(e){var t=e.elements,n=e.position,i=e.target;return _(t,function(e){return jd(e)?Id(e.source,e.target,e):e.host?Vd(e,e.host,null,n):Kd(e,i,null)})}),this.addRule("elements.move",function(e){var t=e.target,n=e.shapes,i=e.position;return Vd(n,t,null,i)||Ud(n,t,i)||qd(n,t)||ef(n,t)}),this.addRule("shape.create",function(e){return Kd(e.shape,e.target,e.source,e.position)}),this.addRule("shape.attach",function(e){return Vd(e.shape,e.target,null,e.position)}),this.addRule("element.copy",function(e){var t=e.element;return tf(e.elements,t)})},Cd.prototype.canConnectMessageFlow=Zd,Cd.prototype.canConnectSequenceFlow=Qd,Cd.prototype.canConnectDataAssociation=Jd,Cd.prototype.canConnectAssociation=Xd,Cd.prototype.canMove=qd,Cd.prototype.canAttach=Vd,Cd.prototype.canReplace=Ud,Cd.prototype.canDrop=zd,Cd.prototype.canInsert=ef,Cd.prototype.canCreate=Kd,Cd.prototype.canConnect=Id,Cd.prototype.canResize=Yd,Cd.prototype.canCopy=tf;var of={__depends__:[Ps],__init__:["bpmnRules"],bpmnRules:["type",Cd]},af=2e3;function sf(e,t){e.on("saveXML.start",af,function(){var e,n,i=t.getRootElement(),r=Gi(i).di;e=g(e=dt([i],!1),function(e){return e!==i&&!e.labelTarget}),n=S(e,Xi),r.set("planeElement",n)})}sf.$inject=["eventBus","canvas"];var cf={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",sf]};function pf(e){ls.call(this,e);var t=this;this.preExecute(["shape.create","connection.create"],function(e){var n=e.context,i=n.shape||n.connection,r=n.parent,o=t.getOrdering(i,r);o&&(void 0!==o.parent&&(n.parent=o.parent),n.parentIndex=o.index)}),this.preExecute(["shape.move","connection.move"],function(e){var n=e.context,i=n.shape||n.connection,r=n.newParent||i.parent,o=t.getOrdering(i,r);o&&(void 0!==o.parent&&(n.newParent=o.parent),n.newParentIndex=o.index)})}function uf(e,t,n){pf.call(this,e);var i=[{type:"bpmn:SubProcess",order:{level:6}},{type:"bpmn:SequenceFlow",order:{level:3,containers:["bpmn:Participant","bpmn:FlowElementsContainer"]}},{type:"bpmn:DataAssociation",order:{level:9,containers:["bpmn:Collaboration","bpmn:Process"]}},{type:"bpmn:MessageFlow",order:{level:9,containers:["bpmn:Collaboration"]}},{type:"bpmn:Association",order:{level:6,containers:["bpmn:Participant","bpmn:FlowElementsContainer","bpmn:Collaboration"]}},{type:"bpmn:BoundaryEvent",order:{level:8}},{type:"bpmn:Group",order:{level:10,containers:["bpmn:Collaboration","bpmn:Process"]}},{type:"bpmn:FlowElement",order:{level:5}},{type:"bpmn:Participant",order:{level:-2}},{type:"bpmn:Lane",order:{level:-1}}];function r(e){var t=e.order;return t||(e.order=t=function(e){if(e.labelTarget)return{level:10};var t=y(i,function(t){return os(e,[t.type])});return t&&t.order||{level:1}}(e)),t}this.getOrdering=function(e,i){if(e.labelTarget)return{parent:t.getRootElement(),index:-1};var o=r(e);o.containers&&(i=function(e,t,i){for(var r=t;r&&!os(r,i);)r=r.parent;if(!r)throw new Error(n("no parent for {element} in {parent}",{element:e.id,parent:t.id}));return r}(e,i,o.containers));var a=i.children.indexOf(e),s=function(e,t){t=N(t);var n=l(e)?-1:void 0;return b(e,function(e,i){if(t(e,i))return n=i,!1}),n}(i.children,function(t){return!(!e.labelTarget&&t.labelTarget)&&o.level<r(t).level});return-1!==s&&-1!==a&&a<s&&(s-=1),{index:s,parent:i}}}pf.prototype.getOrdering=function(e,t){return null},n(pf,ls),uf.$inject=["eventBus","canvas","translate"],n(uf,pf);var lf={__depends__:[xr],__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",uf]};function hf(e,t){this._handlerMap={},this._stack=[],this._stackIdx=-1,this._currentExecution={actions:[],dirty:[]},this._injector=t,this._eventBus=e,this._uid=1,e.on(["diagram.destroy","diagram.clear"],function(){this.clear(!1)},this)}hf.$inject=["eventBus","injector"],hf.prototype.execute=function(e,t){if(!e)throw new Error("command required");var n={command:e,context:t};this._pushAction(n),this._internalExecute(n),this._popAction(n)},hf.prototype.canExecute=function(e,t){var n={command:e,context:t},i=this._getHandler(e),r=this._fire(e,"canExecute",n);if(void 0===r){if(!i)return!1;i.canExecute&&(r=i.canExecute(t))}return r},hf.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,!1!==e&&this._fire("changed")},hf.prototype.undo=function(){var e,t=this._getUndoAction();if(t){for(this._pushAction(t);t&&(this._internalUndo(t),(e=this._getUndoAction())&&e.id===t.id);)t=e;this._popAction()}},hf.prototype.redo=function(){var e,t=this._getRedoAction();if(t){for(this._pushAction(t);t&&(this._internalExecute(t,!0),(e=this._getRedoAction())&&e.id===t.id);)t=e;this._popAction()}},hf.prototype.register=function(e,t){this._setHandler(e,t)},hf.prototype.registerHandler=function(e,t){if(!e||!t)throw new Error("command and handlerCls must be defined");var n=this._injector.instantiate(t);this.register(e,n)},hf.prototype.canUndo=function(){return!!this._getUndoAction()},hf.prototype.canRedo=function(){return!!this._getRedoAction()},hf.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},hf.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},hf.prototype._internalUndo=function(e){var t=this,n=e.command,i=e.context,r=this._getHandler(n);this._atomicDo(function(){t._fire(n,"revert",e),r.revert&&t._markDirty(r.revert(i)),t._revertedAction(e),t._fire(n,"reverted",e)})},hf.prototype._fire=function(e,t,n){arguments.length<3&&(n=t,t=null);var i,r,o,a=t?[e+"."+t,t]:[e];for(n=this._eventBus.createEvent(n),i=0;(r=a[i])&&(o=this._eventBus.fire("commandStack."+r,n),!n.cancelBubble);i++);return o},hf.prototype._createId=function(){return this._uid++},hf.prototype._atomicDo=function(e){var t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},hf.prototype._internalExecute=function(e,t){var n=this,i=e.command,r=e.context,o=this._getHandler(i);if(!o)throw new Error("no command handler registered for <"+i+">");this._pushAction(e),t||(this._fire(i,"preExecute",e),o.preExecute&&o.preExecute(r),this._fire(i,"preExecuted",e)),this._atomicDo(function(){n._fire(i,"execute",e),o.execute&&n._markDirty(o.execute(r)),n._executedAction(e,t),n._fire(i,"executed",e)}),t||(this._fire(i,"postExecute",e),o.postExecute&&o.postExecute(r),this._fire(i,"postExecuted",e)),this._popAction(e)},hf.prototype._pushAction=function(e){var t=this._currentExecution,n=t.actions,i=n[0];if(t.atomic)throw new Error("illegal invocation in <execute> or <revert> phase (action: "+e.command+")");e.id||(e.id=i&&i.id||this._createId()),n.push(e)},hf.prototype._popAction=function(){var e=this._currentExecution,t=e.actions,n=e.dirty;t.pop(),t.length||(this._eventBus.fire("elements.changed",{elements:P("id",n.reverse())}),n.length=0,this._fire("changed"))},hf.prototype._markDirty=function(e){var t=this._currentExecution;e&&(e=l(e)?e:[e],t.dirty=t.dirty.concat(e))},hf.prototype._executedAction=function(e,t){var n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},hf.prototype._revertedAction=function(e){this._stackIdx--},hf.prototype._getHandler=function(e){return this._handlerMap[e]},hf.prototype._setHandler=function(e,t){if(!e||!t)throw new Error("command and handler required");if(this._handlerMap[e])throw new Error("overriding handler for command <"+e+">");this._handlerMap[e]=t};var df={commandStack:["type",hf]},ff=new Vo("tt");function mf(e,t){e.style.display=!1===t?"none":""}var vf=".djs-tooltip";function yf(e,t){var n,i;this._eventBus=e,this._canvas=t,this._ids=ff,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=(n=t.getContainer(),i=le('<div class="djs-tooltip-container" style="position: absolute; width: 0; height: 0;" />'),n.insertBefore(i,n.firstChild),i);var r=this;ue.bind(this._tooltipRoot,vf,"mousedown",function(e){e.stopPropagation()}),ue.bind(this._tooltipRoot,vf,"mouseover",function(e){r.trigger("mouseover",e)}),ue.bind(this._tooltipRoot,vf,"mouseout",function(e){r.trigger("mouseout",e)}),this._init()}yf.$inject=["eventBus","canvas"],yf.prototype.add=function(e){if(!e.position)throw new Error("must specifiy tooltip position");if(!e.html)throw new Error("must specifiy tooltip html");var t=this._ids.next();return e=F({},this._tooltipDefaults,e,{id:t}),this._addTooltip(e),e.timeout&&this.setTimeout(e),t},yf.prototype.trigger=function(e,t){var n=t.delegateTarget||t.target,i=this.get(G(n,"data-tooltip-id"));i&&("mouseover"===e&&i.timeout&&this.clearTimeout(i),"mouseout"===e&&i.timeout&&(i.timeout=1e3,this.setTimeout(i)))},yf.prototype.get=function(e){return"string"!=typeof e&&(e=e.id),this._tooltips[e]},yf.prototype.clearTimeout=function(e){if(e=this.get(e)){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},yf.prototype.setTimeout=function(e){if(e=this.get(e)){this.clearTimeout(e);var t=this;e.removeTimer=setTimeout(function(){t.remove(e)},e.timeout)}},yf.prototype.remove=function(e){var t=this.get(e);t&&(ve(t.html),ve(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},yf.prototype.show=function(){mf(this._tooltipRoot)},yf.prototype.hide=function(){mf(this._tooltipRoot,!1)},yf.prototype._updateRoot=function(e){var t=e.scale||1,n=e.scale||1,i="matrix("+t+",0,0,"+n+","+-1*e.x*t+","+-1*e.y*n+")";this._tooltipRoot.style.transform=i,this._tooltipRoot.style["-ms-transform"]=i},yf.prototype._addTooltip=function(e){var t,n=e.id,i=e.html,r=this._tooltipRoot;i.get&&i.constructor.prototype.jquery&&(i=i.get(0)),m(i)&&(i=le(i)),(t=le('<div data-tooltip-id="'+n+'" class="djs-tooltip" style="position: absolute">')).appendChild(i),e.type&&K(t).add("djs-tooltip-"+e.type),e.className&&K(t).add(e.className),e.htmlContainer=t,r.appendChild(t),this._tooltips[n]=e,this._updateTooltip(e)},yf.prototype._updateTooltip=function(e){var t,n,i,r=e.position,o=e.htmlContainer;t=o,n=r.x,i=r.y,F(t.style,{left:n+"px",top:i+"px"})},yf.prototype._updateTooltipVisibilty=function(e){b(this._tooltips,function(t){var n=t.show,i=t.htmlContainer,r=!0;n&&((n.minZoom>e.scale||n.maxZoom<e.scale)&&(r=!1),mf(i,r))})},yf.prototype._init=function(){var e=this;this._eventBus.on("canvas.viewbox.changing",function(t){e.hide()}),this._eventBus.on("canvas.viewbox.changed",function(t){var n;n=t.viewbox,e._updateRoot(n),e._updateTooltipVisibilty(n),e.show()})};var gf={__init__:["tooltips"],tooltips:["type",yf]};function bf(e,t){if("function"!=typeof t)throw new Error("removeFn iterator must be a function");if(e){for(var n;n=e[0];)t(n);return e}}var xf=250,Ef=1400;function _f(e,t,n){ls.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",Ef,function(e){var t=e.context,n=t.shapes,i=t.validatedShapes;t.shapes=wf(n),t.validatedShapes=wf(i)}),i&&t.on("shape.move.start",xf,function(e){var t=e.context,n=t.shapes,r=[];b(n,function(e){b(e.labels,function(n){n.hidden||-1!==t.shapes.indexOf(n)||r.push(n),e.labelTarget&&r.push(e)})}),b(r,function(e){i.makeDraggable(t,e,!0)})}),this.preExecuted("elements.move",Ef,function(e){var t=e.context.closure,n=t.enclosedElements,i=[];b(n,function(e){b(e.labels,function(e){n[e.id]||i.push(e)})}),t.addAll(i)}),this.preExecute(["connection.delete","shape.delete"],function(e){var t=e.context;bf((t.connection||t.shape).labels,function(e){n.removeShape(e,{nested:!0})})}),this.execute("shape.delete",function(e){var t=e.context,n=t.shape,i=n.labelTarget;i&&(t.labelTargetIndex=wt(i.labels,n),t.labelTarget=i,n.labelTarget=null)}),this.revert("shape.delete",function(e){var t=e.context,n=t.shape,i=t.labelTarget,r=t.labelTargetIndex;i&&(_t(i.labels,n,r),n.labelTarget=i)})}function wf(e){return g(e,function(t){return-1===e.indexOf(t.labelTarget)})}n(_f,ls),_f.$inject=["injector","eventBus","modeling"];var Sf={__init__:["labelSupport"],labelSupport:["type",_f]},Cf=251,Tf=1401,Rf="attach-ok";function Af(e,t,n,i,r){ls.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",Tf,function(e){var t,n,i=e.context,r=i.shapes,o=i.validatedShapes;i.shapes=(n=Pf(t=r),k("id",t,n)),i.validatedShapes=function(e){var t=A(e,"id");return g(e,function(e){for(;e;){if(e.host&&t[e.host.id])return!1;e=e.parent}return!0})}(o)}),o&&t.on("shape.move.start",Cf,function(e){var t=e.context;b(Pf(t.shapes),function(e){o.makeDraggable(t,e,!0),b(e.labels,function(e){o.makeDraggable(t,e,!0)})})}),o&&t.on("shape.move.start",function(e){var i=e.context.shapes;if(1===i.length){var r=i[0].host;r&&(n.addMarker(r,Rf),t.once(["shape.move.out","shape.move.cleanup"],function(){n.removeMarker(r,Rf)}))}}),this.preExecuted("elements.move",Tf,function(e){var t=e.context,n=t.closure;b(Pf(t.shapes),function(e){n.add(e,n.topLevel[e.host.id])})}),this.postExecuted("elements.move",function(e){var t=e.context,n=t.shapes,i=t.newHost;i&&1!==n.length||b(i?n:g(n,function(e){var t,i=e.host;return function(e){return!!e.host}(e)&&(t=i,!(-1!==n.indexOf(t)))}),function(e){r.updateAttachment(e,i)})}),this.postExecuted("elements.move",function(e){b(e.context.shapes,function(e){b(e.attachers,function(e){b(e.outgoing.slice(),function(e){i.allowed("connection.reconnect",{connection:e,source:e.source,target:e.target})||r.removeConnection(e)}),b(e.incoming.slice(),function(e){i.allowed("connection.reconnect",{connection:e,source:e.source,target:e.target})||r.removeConnection(e)})})})}),this.postExecute("shape.create",function(e){var t=e.context,n=t.shape,i=t.host;i&&r.updateAttachment(n,i)}),this.postExecute("shape.replace",function(e){var t=e.context,n=t.oldShape,o=t.newShape;bf(n.attachers,function(e){"attach"===i.allowed("elements.move",{target:o,shapes:[e]})?r.updateAttachment(e,o):r.removeShape(e)}),o.attachers.length&&b(o.attachers,function(e){var t=Bh(e,n,o);r.moveShape(e,t,e.parent)})}),this.postExecute("shape.resize",function(e){var t=e.context,n=t.shape,i=t.oldBounds,o=t.newBounds,a=n.attachers;!1!==(t.hints||{}).attachSupport&&b(a,function(e){var t=Bh(e,i,o);r.moveShape(e,t,e.parent),b(e.labels,function(e){r.moveShape(e,t,e.parent)})})}),this.preExecute("shape.delete",function(e){var t=e.context.shape;bf(t.attachers,function(e){r.removeShape(e)}),t.host&&r.updateAttachment(t,null)})}function Pf(e){return o(S(e,function(e){return e.attachers||[]}))}n(Af,ls),Af.$inject=["injector","eventBus","canvas","rules","modeling"];var kf={__depends__:[Ps],__init__:["attachSupport"],attachSupport:["type",Af]};function Mf(e,t){this._eventBus=e,this._dragging=t,this._tools=[],this._active=null}Mf.$inject=["eventBus","dragging"],Mf.prototype.registerTool=function(e,t){var n=this._tools;if(!t)throw new Error('A tool has to be registered with it\'s "events"');n.push(e),this.bindEvents(e,t)},Mf.prototype.isActive=function(e){return e&&this._active===e},Mf.prototype.length=function(e){return this._tools.length},Mf.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},Mf.prototype.bindEvents=function(e,t){var n=this._eventBus,i=this._dragging,r=[];n.on(t.tool+".init",function(t){if(!t.context.reactivate&&this.isActive(e))return this.setActive(null),void i.cancel();this.setActive(e)},this),b(t,function(e){r.push(e+".ended"),r.push(e+".canceled")}),n.on(r,250,function(e){var t=e.originalEvent;this._active&&(t&&ee(t.target,'.group[data-group="tools"]')||this.setActive(null))},this)};var Df={__depends__:[Ss],__init__:["toolManager"],toolManager:["type",Mf]};function Bf(e,t){return-1!==e.indexOf(t)}var Nf=Math.abs,Of=Math.round,jf={x:"width",y:"height"},Lf={n:"top",w:"left",s:"bottom",e:"right"},If=1500,zf={n:"s",w:"e",s:"n",e:"w"},Ff=20;function $f(e,t,n,i,r,o){this._canvas=e,this._dragging=t,this._eventBus=n,this._modeling=i,this._rules=r,this._toolManager=o;var a=this;o.registerTool("space",{tool:"spaceTool.selection",dragging:"spaceTool"}),n.on("spaceTool.selection.end",function(e){n.once("spaceTool.selection.ended",function(){a.activateMakeSpace(e.originalEvent)})}),n.on("spaceTool.move",If,function(e){var t=e.context,n=t.initialized;n||(n=t.initialized=a.init(e,t)),n&&Gf(e)}),n.on("spaceTool.end",function(e){var t=e.context,i=t.axis,r=t.direction,o=t.movingShapes,s=t.resizingShapes,c=t.start;if(t.initialized){Gf(e);var p={x:0,y:0};p[i]=Of(e["d"+i]),a.makeSpace(o,s,p,r,c),n.once("spaceTool.ended",function(e){a.activateSelection(e.originalEvent,!0,!0)})}})}function Hf(e){return{top:e.top-Ff,right:e.right+Ff,bottom:e.bottom+Ff,left:e.left-Ff}}function Gf(e){var t,n,i=e.context.spaceToolConstraints;i&&(d(i.left)&&(t=Math.max(e.x,i.left),e.dx=e.dx+t-e.x,e.x=t),d(i.right)&&(t=Math.min(e.x,i.right),e.dx=e.dx+t-e.x,e.x=t),d(i.top)&&(n=Math.max(e.y,i.top),e.dy=e.dy+n-e.y,e.y=n),d(i.bottom)&&(n=Math.min(e.y,i.bottom),e.dy=e.dy+n-e.y,e.y=n))}function Wf(e,t){return-1!==e.indexOf(t)}function Vf(e){return!!e.waypoints}function Uf(e){return!!e.labelTarget}$f.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager"],$f.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:"crosshair",data:{context:{reactivate:n}},trapClick:!1})},$f.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:"crosshair",data:{context:{}}})},$f.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},$f.prototype.init=function(e,t){var n=Nf(e.dx)>Nf(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(Nf(i)<5)return!1;i<0&&(i*=-1),ko(e)&&(i*=-1);var o=function(e,t){if("x"===e){if(t>0)return"e";if(t<0)return"w"}if("y"===e){if(t>0)return"s";if(t<0)return"n"}return null}(n,i),a=dt(this._canvas.getRootElement(),!0),s=this.calculateAdjustments(a,n,i,r);return F(t,s,{axis:n,direction:o,spaceToolConstraints:function(e,t,n,i,r){var o=e.movingShapes,a=e.resizingShapes;if(!a.length)return;var s,c,p={};return b(a,function(e){var u,l,h,f=mo(e),m=g(e.children,function(e){return!(Vf(e)||Uf(e)||Wf(o,e)||Wf(a,e))}),v=g(e.children,function(e){return!Vf(e)&&!Uf(e)&&Wf(o,e)});m.length&&(l=Hf(mo(ft(m))),u=i-f[Lf[n]]+l[Lf[n]],"n"===n?p.bottom=c=d(c)?Math.min(c,u):u:"w"===n?p.right=c=d(c)?Math.min(c,u):u:"s"===n?p.top=s=d(s)?Math.max(s,u):u:"e"===n&&(p.left=s=d(s)?Math.max(s,u):u)),v.length&&(h=Hf(mo(ft(v))),u=i-h[Lf[zf[n]]]+f[Lf[zf[n]]],"n"===n?p.bottom=c=d(c)?Math.min(c,u):u:"w"===n?p.right=c=d(c)?Math.min(c,u):u:"s"===n?p.top=s=d(s)?Math.max(s,u):u:"e"===n&&(p.left=s=d(s)?Math.max(s,u):u));var y=r&&r[e.id];y&&("n"===n?(u=i+e[jf[t]]-y[jf[t]],p.bottom=c=d(c)?Math.min(c,u):u):"w"===n?(u=i+e[jf[t]]-y[jf[t]],p.right=c=d(c)?Math.min(c,u):u):"s"===n?(u=i-e[jf[t]]+y[jf[t]],p.top=s=d(s)?Math.max(s,u):u):"e"===n&&(u=i-e[jf[t]]+y[jf[t]],p.left=s=d(s)?Math.max(s,u):u))}),p}(s,n,o,r,this._eventBus.fire("spaceTool.getMinDimensions",{axis:n,direction:o,shapes:s.resizingShapes,start:r})),start:r}),fa("resize-"+("x"===n?"ew":"ns")),!0},$f.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[];return b(e,function(e){if(e.parent&&!Vf(e)){var s=e[t],c=s+e[jf[t]];return n>0&&s>i||n<0&&c<i?o.push(e):s<i&&c>i&&r.allowed("shape.resize",{shape:e})?a.push(e):void 0}}),{movingShapes:o,resizingShapes:a}},$f.prototype.toggle=function(){this.isActive()?this._dragging.cancel():this.activateSelection()},$f.prototype.isActive=function(){var e=this._dragging.context();return e&&/^spaceTool/.test(e.prefix)};var qf="djs-dragging",Kf="djs-resizing",Yf=250,Xf=Math.max;function Zf(e,t,n,i,r){function o(e,t){b(e,function(e){r.addDragger(e,t),n.addMarker(e,qf)})}e.on("spaceTool.selection.start",function(e){var t=n.getLayer("space"),r=e.context,o="M 0,-10000 L 0,10000",a="M -10000,0 L 10000,0",s=Oe("g");_e(s,i.cls("djs-crosshair-group",["no-events"])),ge(t,s);var c=Oe("path");_e(c,"d",o),Re(c).add("djs-crosshair"),ge(s,c);var p=Oe("path");_e(p,"d",a),Re(p).add("djs-crosshair"),ge(s,p),r.crosshairGroup=s}),e.on("spaceTool.selection.move",function(e){en(e.context.crosshairGroup,e.x,e.y)}),e.on("spaceTool.selection.cleanup",function(e){var t=e.context.crosshairGroup;t&&Pe(t)}),e.on("spaceTool.move",Yf,function(e){var a=e.context,s=a.line,c=a.axis,p=a.movingShapes,u=a.resizingShapes;if(a.initialized){if(!a.dragGroup){var l=n.getLayer("space");_e(s=Oe("path"),"d","M0,0 L0,0"),Re(s).add("djs-crosshair"),ge(l,s),a.line=s;var h=Oe("g");_e(h,i.cls("djs-drag-group",["no-events"])),ge(n.getDefaultLayer(),h),o(p,h),o(a.movingConnections=t.filter(function(e){var t=!1;b(p,function(n){b(n.outgoing,function(n){e===n&&(t=!0)})});var n=!1;b(p,function(t){b(t.incoming,function(t){e===t&&(n=!0)})});var i=!1;b(u,function(t){b(t.outgoing,function(t){e===t&&(i=!0)})});var r=!1;return b(u,function(t){b(t.incoming,function(t){e===t&&(r=!0)})}),function(e){return e.waypoints}(e)&&(t||i)&&(n||r)}),h),a.dragGroup=h}if(!a.frameGroup){var d=Oe("g");_e(d,i.cls("djs-frame-group",["no-events"])),ge(n.getDefaultLayer(),d);var f=[];b(u,function(e){var t=r.addFrame(e,d),i=t.getBBox();f.push({element:t,initialBounds:i}),n.addMarker(e,Kf)}),a.frameGroup=d,a.frames=f}_e(s,{d:{x:"M"+e.x+", -10000 L"+e.x+", 10000",y:"M -10000, "+e.y+" L 10000, "+e.y}[c]});var m={x:e.dx,y:e.dy};m[{x:"y",y:"x"}[a.axis]]=0,en(a.dragGroup,m.x,m.y),b(a.frames,function(e){var t,n,i=e.element,r=e.initialBounds;"e"===a.direction?_e(i,{width:Xf(r.width+m.x,5)}):_e(i,{width:t=Xf(r.width-m.x,5),x:r.x+r.width-t}),"s"===a.direction?_e(i,{height:Xf(r.height+m.y,5)}):_e(i,{height:n=Xf(r.height-m.y,5),y:r.y+r.height-n})})}}),e.on("spaceTool.cleanup",function(e){var t=e.context,i=t.movingShapes,r=t.movingConnections,o=t.resizingShapes,a=t.line,s=t.dragGroup,c=t.frameGroup;b(i,function(e){n.removeMarker(e,qf)}),b(r,function(e){n.removeMarker(e,qf)}),s&&(Pe(a),Pe(s)),b(o,function(e){n.removeMarker(e,Kf)}),c&&Pe(c)})}Zf.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];var Qf={__init__:["spaceToolPreview"],__depends__:[Ss,Ps,Df,Yc],spaceTool:["type",$f],spaceToolPreview:["type",Zf]};function Jf(e){this._model=e}function em(e,t,n,i){ls.call(this,e),this._bpmnFactory=t,this._translate=i;var r=this;function o(e){b(e.context.oldRoot.children,function(e){Hi(e,"bpmn:BaseElement")&&r.updateParent(e)})}function a(e){var t=e.context.shape;Hi(t,"bpmn:BaseElement")&&r.updateBounds(t)}function s(e){r.updateConnection(e.context)}function c(e){r.updateConnectionWaypoints(e.context.connection)}function p(e){r.updateAttachment(e.context)}this.executed(["connection.layout","connection.create"],function(e){var t,i=e.context,r=i.hints||{};i.cropped||!1===r.createElementsBehavior||((t=i.connection).waypoints=n.getCroppedWaypoints(t),i.cropped=!0)}),this.reverted(["connection.layout"],function(e){delete e.context.cropped}),this.executed(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],tm(function(e){var t=e.context;r.updateParent(t.shape||t.connection,t.oldParent)})),this.reverted(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],tm(function(e){var t=e.context,n=t.shape||t.connection,i=t.parent||t.newParent;r.updateParent(n,i)})),this.executed(["canvas.updateRoot"],o),this.reverted(["canvas.updateRoot"],o),this.executed(["shape.move","shape.create","shape.resize"],tm(function(e){"label"!==e.context.shape.type&&a(e)})),this.reverted(["shape.move","shape.create","shape.resize"],tm(function(e){"label"!==e.context.shape.type&&a(e)})),e.on("shape.changed",function(e){"label"===e.element.type&&a({context:{shape:e.element}})}),this.executed(["connection.create","connection.move","connection.delete","connection.reconnect"],tm(s)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],tm(s)),this.executed(["connection.layout","connection.move","connection.updateWaypoints"],tm(c)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],tm(c)),this.executed("connection.reconnect",tm(function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=Gi(n),a=Gi(i),s=Gi(r);o.conditionExpression&&!os(s,["bpmn:Activity","bpmn:ExclusiveGateway","bpmn:InclusiveGateway"])&&(t.oldConditionExpression=o.conditionExpression,delete o.conditionExpression),i!==r&&a.default===o&&(t.oldDefault=a.default,delete a.default)})),this.reverted("connection.reconnect",tm(function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=Gi(n),a=Gi(i),s=Gi(r);t.oldConditionExpression&&(o.conditionExpression=t.oldConditionExpression),t.oldDefault&&(a.default=t.oldDefault,delete s.default)})),this.executed(["element.updateAttachment"],tm(p)),this.reverted(["element.updateAttachment"],tm(p))}function tm(e){return function(t){var n=t.context;Hi(n.shape||n.connection,"bpmn:BaseElement")&&e(t)}}function nm(e,t,n){Kt.call(this),this._bpmnFactory=e,this._moddle=t,this._translate=n}function im(e,t,n){e[n]=t[n],delete t[n]}function rm(e,t){this._modeling=e,this._canvas=t}function om(e){this._modeling=e}function am(e,t){this._canvas=e,this._layouter=t}Jf.$inject=["moddle"],Jf.prototype._needsId=function(e){return os(e,["bpmn:RootElement","bpmn:FlowElement","bpmn:MessageFlow","bpmn:DataAssociation","bpmn:Artifact","bpmn:Participant","bpmn:Lane","bpmn:LaneSet","bpmn:Process","bpmn:Collaboration","bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane","bpmn:Property","bpmn:CategoryValue"])},Jf.prototype._ensureId=function(e){var t;t=Hi(e,"bpmn:Activity")?"Activity":Hi(e,"bpmn:Event")?"Event":Hi(e,"bpmn:Gateway")?"Gateway":os(e,["bpmn:SequenceFlow","bpmn:MessageFlow"])?"Flow":(e.$type||"").replace(/^[^:]*:/g,""),t+="_",!e.id&&this._needsId(e)&&(e.id=this._model.ids.nextPrefixed(t,e))},Jf.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},Jf.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},Jf.prototype.createDiShape=function(e,t,n){return this.create("bpmndi:BPMNShape",F({bpmnElement:e,bounds:this.createDiBounds(t)},n))},Jf.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},Jf.prototype.createDiWaypoints=function(e){var t=this;return S(e,function(e){return t.createDiWaypoint(e)})},Jf.prototype.createDiWaypoint=function(e){return this.create("dc:Point",$(e,["x","y"]))},Jf.prototype.createDiEdge=function(e,t,n){return this.create("bpmndi:BPMNEdge",F({bpmnElement:e},n))},Jf.prototype.createDiPlane=function(e){return this.create("bpmndi:BPMNPlane",{bpmnElement:e})},n(em,ls),em.$inject=["eventBus","bpmnFactory","connectionDocking","translate"],em.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},em.prototype.updateParent=function(e,t){if(!(e instanceof Vt||Hi(e,"bpmn:DataStoreReference")&&e.parent&&Hi(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=n&&n.businessObject,o=r&&r.di;Hi(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,r,t&&t.businessObject),Hi(e,"bpmn:DataOutputAssociation")&&(r=e.source?e.source.businessObject:null),Hi(e,"bpmn:DataInputAssociation")&&(r=e.target?e.target.businessObject:null),this.updateSemanticParent(i,r),Hi(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,r),this.updateDiParent(i.di,o)}},em.prototype.updateBounds=function(e){var t=e.businessObject.di,n=e instanceof Vt?this._getLabel(t):t,i=n.bounds;i||(i=this._bpmnFactory.createDiBounds(),n.set("bounds",i)),F(i,{x:e.x,y:e.y,width:e.width,height:e.height})},em.prototype.updateFlowNodeRefs=function(e,t,n){n!==t&&(Hi(n,"bpmn:Lane")&&Et(n.get("flowNodeRef"),e),Hi(t,"bpmn:Lane")&&_t(t.get("flowNodeRef"),e))},em.prototype.updateDiConnection=function(e,t,n){e.sourceElement&&e.sourceElement.bpmnElement!==t&&(e.sourceElement=t&&t.di),e.targetElement&&e.targetElement.bpmnElement!==n&&(e.targetElement=n&&n.di)},em.prototype.updateDiParent=function(e,t){if(t&&!Hi(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(Et(n,e),e.$parent=null)}},em.prototype.getLaneSet=function(e){var t,n;return Hi(e,"bpmn:Lane")?((t=e.childLaneSet)||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(Hi(e,"bpmn:Participant")&&(e=e.processRef),(t=(n=e.get("laneSets"))[0])||((t=this._bpmnFactory.create("bpmn:LaneSet")).$parent=e,n.push(t)),t)},em.prototype.updateSemanticParent=function(e,t,n){var i,r=this._translate;if(e.$parent!==t&&!((Hi(e,"bpmn:DataInput")||Hi(e,"bpmn:DataOutput"))&&(Hi(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),"ioSpecification"in t&&t.ioSpecification===e.$parent))){if(Hi(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(Hi(e,"bpmn:FlowElement")){if(t)if(Hi(t,"bpmn:Participant"))t=t.processRef;else if(Hi(t,"bpmn:Lane"))do{t=t.$parent.$parent}while(Hi(t,"bpmn:Lane"));i="flowElements"}else if(Hi(e,"bpmn:Artifact")){for(;t&&!Hi(t,"bpmn:Process")&&!Hi(t,"bpmn:SubProcess")&&!Hi(t,"bpmn:Collaboration");){if(Hi(t,"bpmn:Participant")){t=t.processRef;break}t=t.$parent}i="artifacts"}else if(Hi(e,"bpmn:MessageFlow"))i="messageFlows";else if(Hi(e,"bpmn:Participant")){i="participants";var o,a=e.processRef;a&&(o=function(e){for(;e&&!Hi(e,"bpmn:Definitions");)e=e.$parent;return e}(e.$parent||t),e.$parent&&(Et(o.get("rootElements"),a),a.$parent=null),t&&(_t(o.get("rootElements"),a),a.$parent=o))}else Hi(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":Hi(e,"bpmn:DataInputAssociation")&&(i="dataInputAssociations");if(!i)throw new Error(r("no parent for {element} in {parent}",{element:e.id,parent:t.id}));var s;if(e.$parent&&Et(s=e.$parent.get(i),e),t?((s=t.get(i)).push(e),e.$parent=t):e.$parent=null,n){var c=n.get(i);Et(s,e),t&&(c||(c=[],t.set(i,c)),c.push(e))}}},em.prototype.updateConnectionWaypoints=function(e){e.businessObject.di.set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},em.prototype.updateConnection=function(e){var t,n=e.connection,i=Gi(n),r=Gi(n.source),o=Gi(n.target);if(Hi(i,"bpmn:DataAssociation"))Hi(i,"bpmn:DataInputAssociation")?(i.get("sourceRef")[0]=r,t=e.parent||e.newParent||o,this.updateSemanticParent(i,o,t)):Hi(i,"bpmn:DataOutputAssociation")&&(t=e.parent||e.newParent||r,this.updateSemanticParent(i,r,t),i.targetRef=o);else{var a=Hi(i,"bpmn:SequenceFlow");i.sourceRef!==r&&(a&&(Et(i.sourceRef&&i.sourceRef.get("outgoing"),i),r&&r.get("outgoing")&&r.get("outgoing").push(i)),i.sourceRef=r),i.targetRef!==o&&(a&&(Et(i.targetRef&&i.targetRef.get("incoming"),i),o&&o.get("incoming")&&o.get("incoming").push(i)),i.targetRef=o)}this.updateConnectionWaypoints(n),this.updateDiConnection(i.di,r,o)},em.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label},n(nm,Kt),nm.$inject=["bpmnFactory","moddle","translate"],nm.prototype.baseCreate=Kt.prototype.create,nm.prototype.create=function(e,t){return"label"===e?this.baseCreate(e,F({type:"label"},Er,t)):this.createBpmnElement(e,t)},nm.prototype.createBpmnElement=function(e,t){var n,i,r,o=this._translate,a=(t=t||{}).businessObject;if(!a){if(!t.type)throw new Error(o("no shape type specified"));a=this._bpmnFactory.create(t.type)}return a.di||(a.di="root"===e?this._bpmnFactory.createDiPlane(a,[],{id:a.id+"_di"}):"connection"===e?this._bpmnFactory.createDiEdge(a,[],{id:a.id+"_di"}):this._bpmnFactory.createDiShape(a,{},{id:a.id+"_di"})),Hi(a,"bpmn:Group")&&(t=F({isFrame:!0},t)),t.di&&(F(a.di,t.di),delete t.di),function(e,t,n){b(n,function(n){void 0!==t[n]&&im(e,t,n)})}(a,t,["processRef","isInterrupting","associationDirection","isForCompensation"]),t.isExpanded&&im(a.di,t,"isExpanded"),Hi(a,"bpmn:ExclusiveGateway")&&(a.di.isMarkerVisible=!0),t.eventDefinitionType&&(i=a.get("eventDefinitions")||[],r=this._bpmnFactory.create(t.eventDefinitionType,t.eventDefinitionAttrs),"bpmn:ConditionalEventDefinition"===t.eventDefinitionType&&(r.condition=this._bpmnFactory.create("bpmn:FormalExpression")),i.push(r),r.$parent=a,a.eventDefinitions=i,delete t.eventDefinitionType),n=this._getDefaultSize(a),t=F({businessObject:a,id:a.id},n,t),this.baseCreate(e,t)},nm.prototype._getDefaultSize=function(e){return Hi(e,"bpmn:SubProcess")?Wi(e)?{width:350,height:200}:{width:100,height:80}:Hi(e,"bpmn:Task")?{width:100,height:80}:Hi(e,"bpmn:Gateway")?{width:50,height:50}:Hi(e,"bpmn:Event")?{width:36,height:36}:Hi(e,"bpmn:Participant")?Wi(e)?{width:600,height:250}:{width:400,height:60}:Hi(e,"bpmn:Lane")?{width:400,height:100}:Hi(e,"bpmn:DataObjectReference")?{width:36,height:50}:Hi(e,"bpmn:DataStoreReference")?{width:50,height:50}:Hi(e,"bpmn:TextAnnotation")?{width:100,height:30}:Hi(e,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},nm.prototype.createParticipantShape=function(e){return h(e)||(e={isExpanded:e}),!1!==(e=F({type:"bpmn:Participant"},e||{})).isExpanded&&(e.processRef=this._bpmnFactory.create("bpmn:Process")),this.createShape(e)},rm.$inject=["modeling","canvas"],rm.prototype.preExecute=function(e){var t=this._modeling,n=e.elements,i=e.alignment;b(n,function(e){var n={x:0,y:0};i.left?n.x=i.left-e.x:i.right?n.x=i.right-e.width-e.x:i.center?n.x=i.center-Math.round(e.width/2)-e.x:i.top?n.y=i.top-e.y:i.bottom?n.y=i.bottom-e.height-e.y:i.middle&&(n.y=i.middle-Math.round(e.height/2)-e.y),t.moveElements([e],n,e.parent)})},rm.prototype.postExecute=function(e){},om.$inject=["modeling"],om.prototype.preExecute=function(e){var t=e.source;if(!t)throw new Error("source required");var n=e.target||t.parent,i=e.shape,r=e.hints||{};i=e.shape=this._modeling.createShape(i,e.position,n,{attach:r.attach}),e.shape=i},om.prototype.postExecute=function(e){var t,n,i=e.hints||{};t=e.source,n=e.shape,w(t.outgoing,function(e){return e.target===n})||(i.connectionTarget===e.source?this._modeling.connect(e.shape,e.source,e.connection):this._modeling.connect(e.source,e.shape,e.connection))},am.$inject=["canvas","layouter"],am.prototype.execute=function(e){var t=e.connection,n=e.source,i=e.target,r=e.parent,o=e.parentIndex,a=e.hints;if(!n||!i)throw new Error("source and target required");if(!r)throw new Error("parent required");return t.source=n,t.target=i,t.waypoints||(t.waypoints=this._layouter.layoutConnection(t,a)),this._canvas.addConnection(t,r,o),t},am.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var sm=Math.round;function cm(e){this._modeling=e}function pm(e){return!!e.waypoints}cm.$inject=["modeling"],cm.prototype.preExecute=function(e){var t=e.elements,n=e.parent,i=e.parentIndex,r=e.position,o=e.hints,a=this._modeling;b(t,function(e){d(e.x)||(e.x=0),d(e.y)||(e.y=0)});var s=ft(t);b(t,function(e){pm(e)&&(e.waypoints=S(e.waypoints,function(e){return{x:sm(e.x-s.x-s.width/2+r.x),y:sm(e.y-s.y-s.height/2+r.y)}})),F(e,{x:sm(e.x-s.x-s.width/2+r.x),y:sm(e.y-s.y-s.height/2+r.y)})});var c=ut(t),p={};b(t,function(e){if(pm(e))p[e.id]=d(i)?a.createConnection(p[e.source.id],p[e.target.id],i,e,e.parent||n,o):a.createConnection(p[e.source.id],p[e.target.id],e,e.parent||n,o);else{var t=F({},o);-1===c.indexOf(e)&&(t.autoResize=!1),p[e.id]=d(i)?a.createShape(e,$(e,["x","y","width","height"]),e.parent||n,i,t):a.createShape(e,$(e,["x","y","width","height"]),e.parent||n,t)}}),e.elements=R(p)};var um=Math.round;function lm(e){this._canvas=e}function hm(e){lm.call(this,e)}lm.$inject=["canvas"],lm.prototype.execute=function(e){var t=e.shape,n=e.position,i=e.parent,r=e.parentIndex;if(!i)throw new Error("parent required");if(!n)throw new Error("position required");return void 0!==n.width?F(t,n):F(t,{x:n.x-um(t.width/2),y:n.y-um(t.height/2)}),this._canvas.addShape(t,i,r),t},lm.prototype.revert=function(e){var t=e.shape;return this._canvas.removeShape(t),t},n(hm,lm),hm.$inject=["canvas"];var dm=lm.prototype.execute;hm.prototype.execute=function(e){var t=e.shape;return function(e){["width","height"].forEach(function(t){void 0===e[t]&&(e[t]=0)})}(t),t.labelTarget=e.labelTarget,dm.call(this,e)};var fm=lm.prototype.revert;function mm(e,t){this._canvas=e,this._modeling=t}function vm(e,t){this._modeling=e,this._elementRegistry=t}function ym(e,t){this._canvas=e,this._modeling=t}function gm(e){this._modeling=e}hm.prototype.revert=function(e){return e.shape.labelTarget=null,fm.call(this,e)},mm.$inject=["canvas","modeling"],mm.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=wt(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},mm.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,_t(n.children,t,i),this._canvas.addConnection(t,n),t},vm.$inject=["modeling","elementRegistry"],vm.prototype.postExecute=function(e){var t=this._modeling,n=this._elementRegistry;b(e.elements,function(e){n.get(e.id)&&(e.waypoints?t.removeConnection(e):t.removeShape(e))})},ym.$inject=["canvas","modeling"],ym.prototype.preExecute=function(e){var t=this._modeling,n=e.shape;bf(n.incoming,function(e){t.removeConnection(e,{nested:!0})}),bf(n.outgoing,function(e){t.removeConnection(e,{nested:!0})}),bf(n.children,function(e){e.waypoints?t.removeConnection(e,{nested:!0}):t.removeShape(e,{nested:!0})})},ym.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=wt(i.children,n),t.removeShape(n),n},ym.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return _t(i.children,n,r),t.addShape(n,i),n},gm.$inject=["modeling"];var bm={x:"y",y:"x"};function xm(e,t){this._layouter=e,this._canvas=t}function Em(){}function _m(e,t,n){var i=Rm(e),r=Am(i,t),o=i[0];return r.length?r[r.length-1]:Dh(o.original||o,n,t)}function wm(e,t,n){var i=Rm(e),r=Am(i,t),o=i[i.length-1];return r.length?r[0]:Dh(o.original||o,n,t)}function Sm(e,t,n){var i=Rm(e),r=Tm(t,n),o=i[0];return Dh(o.original||o,r,t)}function Cm(e,t,n){var i=Rm(e),r=Tm(t,n),o=i[i.length-1];return Dh(o.original||o,r,t)}function Tm(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function Rm(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function Am(e,t){return g(S(e,Pm),function(e){return function(e,t){return"intersect"===go(t,e,1)}(e,t)})}function Pm(e){return e.original||e}function km(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}function Mm(e){this._modeling=e}function Dm(e){this._helper=new Mm(e)}function Bm(e){this._modeling=e,this._helper=new Mm(e)}function Nm(e){this._modeling=e}function Om(e){return e.original||e}function jm(e,t){this._modeling=e,this._rules=t}function Lm(e){this._modeling=e}function Im(e){this._modeling=e}function zm(e){return F({},e)}function Fm(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function $m(e,t,n){var i=Fm(n);return/e|s/.test(n)?e[i]>t:/n|w/.test(n)?e[i]<t:void 0}function Hm(e,t){return-1!==e.indexOf(t)}function Gm(e){this._modeling=e}function Wm(e){this._modeling=e}function Vm(e,t){return Et(e&&e.attachers,t)}function Um(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),_t(i,t,n)}}function qm(){}function Km(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",function(){i.registerHandlers(n)})}gm.prototype.preExecute=function(e){var t=this._modeling,n=e.groups,i=e.axis,r=e.dimension;function o(e,t){e.range.min=Math.min(t[i],e.range.min),e.range.max=Math.max(t[i]+t[r],e.range.max)}function a(e){return e[i]+e[r]/2}function s(e){return e.length-1}function c(e){return e.max-e.min}var p,u,l=n[0],h=s(n),d=n[h],f=0;b(n,function(e,p){var u,l,d;e.elements.length<2?p&&p!==n.length-1&&(o(e,e.elements[0]),f+=c(e.range)):(l=(u=M(e.elements,i))[0],p===h&&(l=u[s(u)]),d=a(l),e.range=null,b(u,function(n){!function(e,n){var r={y:0};r[i]=e-a(n),r[i]&&(r[bm[i]]=0,t.moveElements([n],r,n.parent))}(d,n),null!==e.range?o(e,n):e.range={min:n[i],max:n[i]+n[r]}}),p&&p!==n.length-1&&(f+=c(e.range)))}),u=Math.abs(d.range.min-l.range.max),(p=Math.round((u-f)/(n.length-1)))<n.length-1||b(n,function(e,o){var a,s={};e!==l&&e!==d&&(a=n[o-1],e.range.max=0,b(e.elements,function(n,o){s[bm[i]]=0,s[i]=a.range.max-n[i]+p,e.range.min!==n[i]&&(s[i]+=n[i]-e.range.min),s[i]&&t.moveElements([n],s,n.parent),e.range.max=Math.max(n[i]+n[r],o?e.range.max:0)}))})},gm.prototype.postExecute=function(e){},xm.$inject=["layouter","canvas"],xm.prototype.execute=function(e){var t=e.connection;return F(e,{oldWaypoints:t.waypoints}),t.waypoints=this._layouter.layoutConnection(t,e.hints),t},xm.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t},Em.prototype.execute=function(e){var t=e.connection,n=e.delta,i=e.newParent||t.parent,r=e.newParentIndex,o=t.parent;return e.oldParent=o,e.oldParentIndex=Et(o.children,t),_t(i.children,t,r),t.parent=i,b(t.waypoints,function(e){e.x+=n.x,e.y+=n.y,e.original&&(e.original.x+=n.x,e.original.y+=n.y)}),t},Em.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return Et(n.children,t),_t(i.children,t,r),t.parent=i,b(t.waypoints,function(e){e.x-=o.x,e.y-=o.y,e.original&&(e.original.x-=o.x,e.original.y-=o.y)}),t},km.prototype.add=function(e,t){return this.addAll([e],t)},km.prototype.addAll=function(e,t){return F(this,function(e,t,n){c(t)&&(t=!0),h(t)&&(n=t,t=!0);var i=yt((n=n||{}).allShapes),r=yt(n.allConnections),o=yt(n.enclosedElements),a=yt(n.enclosedConnections),s=yt(n.topLevel,t&&A(e,function(e){return e.id}));function p(e){s[e.source.id]&&s[e.target.id]&&(s[e.id]=[e]),i[e.source.id]&&i[e.target.id]&&(a[e.id]=o[e.id]=e),r[e.id]=e}return ht(e,function(e){if(o[e.id]=e,!e.waypoints)return i[e.id]=e,b(e.incoming,p),b(e.outgoing,p),e.children;a[e.id]=r[e.id]=e}),{allShapes:i,allConnections:r,topLevel:s,enclosedConnections:a,enclosedElements:o}}(e,!!t,this)),this},Mm.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},Mm.prototype.moveClosure=function(e,t,n,i,r){var o=this._modeling,a=e.allShapes,s=e.allConnections,c=e.enclosedConnections,p=e.topLevel,u=!1;r&&r.parent===n&&(u=!0),b(a,function(e){o.moveShape(e,t,p[e.id]&&!u&&n,{recurse:!1,layout:!1})}),b(s,function(e){var i=!!a[e.source.id],r=!!a[e.target.id];c[e.id]&&i&&r?o.moveConnection(e,t,p[e.id]&&!u&&n):o.layoutConnection(e,{connectionStart:i&&Sm(e,e.source,t),connectionEnd:r&&Cm(e,e.target,t)})})},Mm.prototype.getClosure=function(e){return(new km).addAll(e,!0)},Dm.$inject=["modeling"],Dm.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},Dm.prototype.postExecute=function(e){var t,n=e.hints;n&&n.primaryShape&&(t=n.primaryShape,n.oldParent=t.parent),this._helper.moveClosure(e.closure,e.delta,e.newParent,e.newHost,t)},Bm.$inject=["modeling"],Bm.prototype.execute=function(e){var t=e.shape,n=e.delta,i=e.newParent||t.parent,r=e.newParentIndex,o=t.parent;return e.oldBounds=$(t,["x","y","width","height"]),e.oldParent=o,e.oldParentIndex=Et(o.children,t),_t(i.children,t,r),F(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},Bm.prototype.postExecute=function(e){var t=e.shape,n=e.delta,i=e.hints,r=this._modeling;!1!==i.layout&&(b(t.incoming,function(e){r.layoutConnection(e,{connectionEnd:Cm(e,t,n)})}),b(t.outgoing,function(e){r.layoutConnection(e,{connectionStart:Sm(e,t,n)})})),!1!==i.recurse&&this.moveChildren(e)},Bm.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return _t(n.children,t,i),F(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},Bm.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},Bm.prototype.getNewParent=function(e){return e.newParent||e.shape.parent},Nm.$inject=["modeling"],Nm.prototype.execute=function(e){var t=e.newSource,n=e.newTarget,i=e.connection,r=e.dockingOrPoints;if(!t&&!n)throw new Error("newSource or newTarget required");return l(r)&&(e.oldWaypoints=i.waypoints,i.waypoints=r),t&&(e.oldSource=i.source,i.source=t),n&&(e.oldTarget=i.target,i.target=n),i},Nm.prototype.postExecute=function(e){var t=e.connection,n=e.newSource,i=e.newTarget,r=e.dockingOrPoints,o=e.hints||{},a={};o.connectionStart&&(a.connectionStart=o.connectionStart),o.connectionEnd&&(a.connectionEnd=o.connectionEnd),!1!==o.layoutConnection&&(!n||i&&"source"!==o.docking||(a.connectionStart=a.connectionStart||Om(l(r)?r[0]:r)),!i||n&&"target"!==o.docking||(a.connectionEnd=a.connectionEnd||Om(l(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},Nm.prototype.revert=function(e){var t=e.oldSource,n=e.oldTarget,i=e.oldWaypoints,r=e.connection;return t&&(r.source=t),n&&(r.target=n),i&&(r.waypoints=i),r},jm.$inject=["modeling","rules"],jm.prototype.preExecute=function(e){var t,n=this,i=this._modeling,r=this._rules,o=e.oldShape,a=e.newData,s=e.hints||{};function c(e,t,n){return r.allowed("connection.reconnect",{connection:n,source:e,target:t})}var p,u={x:a.x,y:a.y},l={x:o.x,y:o.y,width:o.width,height:o.height};t=e.newShape=e.newShape||n.createShape(a,u,o.parent,s),o.host&&i.updateAttachment(t,o.host),!1!==s.moveChildren&&(p=o.children.slice(),i.moveElements(p,{x:0,y:0},t,s));var h=o.incoming.slice(),d=o.outgoing.slice();b(h,function(e){c(e.source,t,e)&&n.reconnectEnd(e,t,wm(e,t,l),s)}),b(d,function(e){var i=e.target;c(t,i,e)&&n.reconnectStart(e,t,_m(e,t,l),s)})},jm.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},jm.prototype.execute=function(e){},jm.prototype.revert=function(e){},jm.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},jm.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},jm.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)},Lm.$inject=["modeling"],Lm.prototype.execute=function(e){var t=e.shape,n=e.newBounds,i=e.minBounds;if(void 0===n.x||void 0===n.y||void 0===n.width||void 0===n.height)throw new Error("newBounds must have {x, y, width, height} properties");if(i&&(n.width<i.width||n.height<i.height))throw new Error("width and height cannot be less than minimum height and width");if(!i&&n.width<10||n.height<10)throw new Error("width and height cannot be less than 10px");return e.oldBounds={width:t.width,height:t.height,x:t.x,y:t.y},F(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t},Lm.prototype.postExecute=function(e){var t=this._modeling,n=e.shape,i=e.oldBounds;!1!==(e.hints||{}).layout&&(b(n.incoming,function(e){t.layoutConnection(e,{connectionEnd:wm(e,n,i)})}),b(n.outgoing,function(e){t.layoutConnection(e,{connectionStart:_m(e,n,i)})}))},Lm.prototype.revert=function(e){var t=e.shape,n=e.oldBounds;return F(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t},Im.$inject=["modeling"],Im.prototype.preExecute=function(e){var t=e.delta,n=e.direction,i=e.movingShapes,r=e.resizingShapes,o=e.start,a={};this.moveShapes(i,t),b(r,function(e){a[e.id]=function(e){return{x:e.x,y:e.y,height:e.height,width:e.width}}(e)}),this.resizeShapes(r,t,n),this.updateConnectionWaypoints(function(e,t){var n=[];return b(e.concat(t),function(i){var r=i.incoming,o=i.outgoing;b(r.concat(o),function(i){var r=i.source,o=i.target;(Bf(e,r)||Bf(e,o)||Bf(t,r)||Bf(t,o))&&(Bf(n,i)||n.push(i))})}),n}(i,r),t,n,o,i,r,a)},Im.prototype.execute=function(){},Im.prototype.revert=function(){},Im.prototype.moveShapes=function(e,t){var n=this;b(e,function(e){n._modeling.moveShape(e,t,null,{autoResize:!1,layout:!1,recurse:!1})})},Im.prototype.resizeShapes=function(e,t,n){var i=this;b(e,function(e){var r=function(e,t,n){var i=e.x,r=e.y,o=e.width,a=e.height,s=n.x,c=n.y;switch(t){case"n":return{x:i,y:r+c,width:o,height:a-c};case"s":return{x:i,y:r,width:o,height:a+c};case"w":return{x:i+s,y:r,width:o-s,height:a};case"e":return{x:i,y:r,width:o+s,height:a};default:throw new Error("unknown direction: "+t)}}(e,n,t);i._modeling.resizeShape(e,r,null,{attachSupport:!1,autoResize:!1,layout:!1})})},Im.prototype.updateConnectionWaypoints=function(e,t,n,i,r,o,a){var s=this,c=r.concat(o);b(e,function(e){var p=e.source,u=e.target,l=function(e){return S(e.waypoints,function(e){return(e=zm(e)).original&&(e.original=zm(e.original)),e})}(e),h=Fm(n),d={labelBehavior:!1};Hm(c,p)&&Hm(c,u)?(l=S(l,function(e){return $m(e,i,n)&&(e[h]=e[h]+t[h]),e.original&&$m(e.original,i,n)&&(e.original[h]=e.original[h]+t[h]),e}),s._modeling.updateWaypoints(e,l,{labelBehavior:!1})):(Hm(c,p)||Hm(c,u))&&(Hm(r,p)?d.connectionStart=Sm(e,p,t):Hm(r,u)?d.connectionEnd=Cm(e,u,t):Hm(o,p)?d.connectionStart=_m(e,p,a[p.id]):Hm(o,u)&&(d.connectionEnd=wm(e,u,a[u.id])),s._modeling.layoutConnection(e,d))})},Gm.$inject=["modeling"],Gm.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=function e(t){var n={};b(t,function(t){n[t.id]=t.hidden,t.children&&(n=F({},n,e(t.children)))});return n}(n),t.collapsed=!t.collapsed;var i=function e(t,n){var i=[];b(t,function(t){t.hidden=n,i=i.concat(t),t.children&&(i=i.concat(e(t.children,t.collapsed||n)))});return i}(n,t.collapsed);return[t].concat(i)},Gm.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=function e(t,n){var i=[];b(t,function(t){t.hidden=n[t.id],i=i.concat(t),t.children&&(i=i.concat(e(t.children,n)))});return i}(t.children,n);return t.collapsed=!t.collapsed,[t].concat(i)},Wm.$inject=["modeling"],Wm.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=Vm(i,t),Um(n,t),t.host=n,t},Wm.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,Vm(n,t),Um(i,t,r),t},qm.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},qm.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t},Km.$inject=["eventBus","elementFactory","commandStack"],Km.prototype.getHandlers=function(){return{"shape.append":om,"shape.create":lm,"shape.delete":ym,"shape.move":Bm,"shape.resize":Lm,"shape.replace":jm,"shape.toggleCollapse":Gm,spaceTool:Im,"label.create":hm,"connection.create":am,"connection.delete":mm,"connection.move":Em,"connection.layout":xm,"connection.updateWaypoints":qm,"connection.reconnect":Nm,"elements.create":cm,"elements.move":Dm,"elements.delete":vm,"elements.distribute":gm,"elements.align":rm,"element.updateAttachment":Wm}},Km.prototype.registerHandlers=function(e){b(this.getHandlers(),function(t,n){e.registerHandler(n,t)})},Km.prototype.moveShape=function(e,t,n,i,r){"object"==typeof i&&(r=i,i=null);var o={shape:e,delta:t,newParent:n,newParentIndex:i,hints:r||{}};this._commandStack.execute("shape.move",o)},Km.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},Km.prototype.moveElements=function(e,t,n,i){var r,o=(i=i||{}).attach,a=n;!0===o?(r=n,a=n.parent):!1===o&&(r=null);var s={shapes:e,delta:t,newParent:a,newHost:r,hints:i};this._commandStack.execute("elements.move",s)},Km.prototype.moveConnection=function(e,t,n,i,r){"object"==typeof i&&(r=i,i=void 0);var o={connection:e,delta:t,newParent:n,newParentIndex:i,hints:r||{}};this._commandStack.execute("connection.move",o)},Km.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},Km.prototype.createConnection=function(e,t,n,i,r,o){"object"==typeof n&&(o=r,r=i,i=n,n=void 0);var a={source:e,target:t,parent:r,parentIndex:n,connection:i=this._create("connection",i),hints:o};return this._commandStack.execute("connection.create",a),a.connection},Km.prototype.createShape=function(e,t,n,i,r){"number"!=typeof i&&(r=i,i=void 0);var o,a,s=(r=r||{}).attach;e=this._create("shape",e),s?(o=n.parent,a=n):o=n;var c={position:t,shape:e,parent:o,parentIndex:i,host:a,hints:r};return this._commandStack.execute("shape.create",c),c.shape},Km.prototype.createElements=function(e,t,n,i,r){l(e)||(e=[e]),"number"!=typeof i&&(r=i,i=void 0);var o={position:t,elements:e,parent:n,parentIndex:i,hints:r=r||{}};return this._commandStack.execute("elements.create",o),o.elements},Km.prototype.createLabel=function(e,t,n,i){n=this._create("label",n);var r={labelTarget:e,position:t,parent:i||e.parent,shape:n};return this._commandStack.execute("label.create",r),r.shape},Km.prototype.appendShape=function(e,t,n,i,r){r=r||{};var o={source:e,position:n,target:i,shape:t=this._create("shape",t),connection:r.connection,connectionParent:r.connectionParent,hints:r};return this._commandStack.execute("shape.append",o),o.shape},Km.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},Km.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},Km.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},Km.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},Km.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},Km.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},Km.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},Km.prototype.createSpace=function(e,t,n,i,r){var o={delta:n,direction:i,movingShapes:e,resizingShapes:t,start:r};this._commandStack.execute("spaceTool",o)},Km.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},Km.prototype.reconnect=function(e,t,n,i,r){var o={connection:e,newSource:t,newTarget:n,dockingOrPoints:i,hints:r||{}};this._commandStack.execute("connection.reconnect",o)},Km.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,F(i,{docking:"source"}))},Km.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,F(i,{docking:"target"}))},Km.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},Km.prototype._create=function(e,t){return t instanceof Ht?t:this._elementFactory.create(e,t)},Km.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)};var Ym="id",Xm="di",Zm={width:0,height:0};function Qm(e,t,n,i,r){this._elementRegistry=e,this._moddle=t,this._translate=n,this._modeling=i,this._textRenderer=r}function Jm(e,t){return Ym in e&&e[Ym]!==t[Ym]}function ev(e,t){b(t,function(t,n){n!==Xm?e.set(n,t):e.di&&function(e,t){b(t,function(t,n){e.set(n,t)})}(e.di,t)})}Qm.$inject=["elementRegistry","moddle","translate","modeling","textRenderer"],Qm.prototype.execute=function(e){var t=e.element,n=[t],i=this._translate;if(!t)throw new Error(i("element required"));var r=this._elementRegistry,o=this._moddle.ids,a=t.businessObject,s=function(e){var t=F({},e);return tv.forEach(function(n){n in e&&(t[n]=Gi(t[n]))}),t}(e.properties),c=e.oldProperties||function(e,t){return E(C(t),function(n,i){return n[i]=i!==Xm?e.get(i):function(e,t){return E(t,function(t,n){return t[n]=e.get(n),t},{})}(e.di,C(t.di)),n},{})}(a,s);return Jm(s,a)&&(o.unclaim(a[Ym]),r.updateId(t,s[Ym]),o.claim(s[Ym],a)),"default"in s&&(s.default&&n.push(r.get(s.default.id)),a.default&&n.push(r.get(a.default.id))),ev(a,s),e.oldProperties=c,e.changed=n,n},Qm.prototype.postExecute=function(e){var t=e.element.label,n=t&&Gi(t).name;if(n){var i=this._textRenderer.getExternalLabelBounds(t,n);this._modeling.resizeShape(t,i,Zm)}},Qm.prototype.revert=function(e){var t=e.element,n=e.properties,i=e.oldProperties,r=t.businessObject,o=this._elementRegistry,a=this._moddle.ids;return ev(r,i),Jm(n,r)&&(a.unclaim(n[Ym]),o.updateId(t,i[Ym]),a.claim(i[Ym],r)),e.changed};var tv=["default"];function nv(e,t){this._canvas=e,this._modeling=t}function iv(e,t){this._modeling=e,this._spaceTool=t}function rv(e,t){this._modeling=e,this._translate=t}function ov(e,t){this._modeling=e,this._spaceTool=t}nv.$inject=["canvas","modeling"],nv.prototype.execute=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=t.getRootElement(),o=r.businessObject,a=o.$parent,s=o.di;t.setRootElement(n,!0),_t(a.rootElements,i),i.$parent=a,Et(a.rootElements,o),o.$parent=null,o.di=null,s.bpmnElement=i,i.di=s,e.oldRoot=r},nv.prototype.revert=function(e){var t=this._canvas,n=e.newRoot.businessObject,i=e.oldRoot,r=i.businessObject,o=n.$parent,a=n.di;t.setRootElement(i,!0),Et(o.rootElements,n),n.$parent=null,_t(o.rootElements,r),r.$parent=o,n.di=null,a.bpmnElement=r,r.di=a},iv.$inject=["modeling","spaceTool"],iv.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=hu(i),a=o===i,s=a?i:i.parent;lu(s).length||n.createShape({type:"bpmn:Lane"},{x:i.x+30,y:i.y,width:i.width-30,height:i.height},s);var c=[];ht(o,function(e){return c.push(e),e.label&&c.push(e.label),e===i?[]:g(e.children,function(e){return e!==i})});var p="top"===r?-120:120,u="top"===r?i.y:i.y+i.height,l=u+("top"===r?10:-10),h="top"===r?"n":"s",d=t.calculateAdjustments(c,"y",p,l);t.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:p},h,l),e.newLane=n.createShape({type:"bpmn:Lane"},{x:i.x+(a?30:0),y:u-("top"===r?120:0),width:i.width-(a?30:0),height:120},s)},rv.$inject=["modeling","translate"],rv.prototype.preExecute=function(e){var t=this._modeling,n=this._translate,i=e.shape,r=e.count,o=lu(i),a=o.length;if(a>r)throw new Error(n("more than {count} child lanes",{count:r}));var s,c,p,u,l,h=Math.round(i.height/r);for(l=0;l<r;l++)s=i.y+l*h,c=l===r-1?i.height-h*l:h,p={x:i.x+30,y:s,width:i.width-30,height:c},l<a?t.resizeShape(o[l],p):(u={type:"bpmn:Lane"},t.createShape(u,p,i))},ov.$inject=["modeling","spaceTool"],ov.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds;!1!==e.balanced?this.resizeBalanced(t,n):this.resizeSpace(t,n)},ov.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=du(e,t);n.resizeShape(e,t),i.forEach(function(e){n.resizeShape(e.shape,e.newBounds)})},ov.prototype.resizeSpace=function(e,t){var n,i,r,o,a,s=this._spaceTool,c=mo(e),p=iu(mo(t),c),u=hu(e),l=[],h=[];ht(u,function(e){return l.push(e),(Hi(e,"bpmn:Lane")||Hi(e,"bpmn:Participant"))&&h.push(e),e.children}),(p.bottom||p.top)&&(n=p.bottom||p.top,i=e.y+(p.bottom?e.height:0)+(p.bottom?-10:10),r=p.bottom?"s":"n",o=p.top>0||p.bottom<0?-n:n,a=s.calculateAdjustments(l,"y",o,i),s.makeSpace(a.movingShapes,a.resizingShapes,{x:0,y:n},r)),(p.left||p.right)&&(n=p.right||p.left,i=e.x+(p.right?e.width:0)+(p.right?-10:100),r=p.right?"e":"w",o=p.left>0||p.right<0?-n:n,a=s.calculateAdjustments(h,"x",o,i),s.makeSpace(a.movingShapes,a.resizingShapes,{x:n,y:0},r))};function av(e){this._elementRegistry=e}function sv(e){this._moddle=e}av.$inject=["elementRegistry"],av.prototype.computeUpdates=function(e,t){var n=[],i=[],r={},o=[];function a(e){-1===n.indexOf(e)&&(o.push(e),n.push(e))}function s(e){return e.parent?function(e){var t=hu(e);return r[t.id]||(r[t.id]=uu(t)),r[t.id]}(e).filter(function(t){return n=e,i=mo(t),r=n.x+n.width/2,o=n.y+n.height/2,r>i.left&&r<i.right&&o>i.top&&o<i.bottom;var n,i,r,o}).map(function(e){return e.businessObject}):[]}return t.forEach(function(e){var t=hu(e);t&&-1===n.indexOf(t)&&(t.children.filter(function(e){return Hi(e,"bpmn:FlowNode")}).forEach(a),n.push(t))}),e.forEach(a),o.forEach(function(e){var t=e.businessObject,n=t.get("lanes").slice(),r=s(e);i.push({flowNode:t,remove:n,add:r})}),t.forEach(function(e){var t=e.businessObject;e.parent||t.get("flowNodeRef").forEach(function(e){i.push({flowNode:e,remove:[t],add:[]})})}),i},av.prototype.execute=function(e){var t=e.updates;t||(t=e.updates=this.computeUpdates(e.flowNodeShapes,e.laneShapes)),t.forEach(function(e){var t=e.flowNode,n=t.get("lanes");e.remove.forEach(function(e){Et(n,e),Et(e.get("flowNodeRef"),t)}),e.add.forEach(function(e){_t(n,e),_t(e.get("flowNodeRef"),t)})})},av.prototype.revert=function(e){e.updates.forEach(function(e){var t=e.flowNode,n=t.get("lanes");e.add.forEach(function(e){Et(n,e),Et(e.get("flowNodeRef"),t)}),e.remove.forEach(function(e){_t(n,e),_t(e.get("flowNodeRef"),t)})})},sv.$inject=["moddle"],sv.prototype.execute=function(e){var t=this._moddle.ids,n=e.id,i=e.element;e.claiming?t.claim(n,i):t.unclaim(n)},sv.prototype.revert=function(e){var t=this._moddle.ids,n=e.id,i=e.element;e.claiming?t.unclaim(n):t.claim(n,i)};var cv={fill:void 0,stroke:void 0};function pv(e){this._commandStack=e}pv.$inject=["commandStack"],pv.prototype.postExecute=function(e){var t=e.elements,n=e.colors||cv,i=this,r={};"fill"in n&&F(r,{fill:n.fill}),"stroke"in n&&F(r,{stroke:n.stroke}),b(t,function(e){i._commandStack.execute("element.updateProperties",{element:e,properties:{di:r}})})};var uv={width:0,height:0};function lv(e,t){function n(e,t){var n=e.label||e,i=e.labelTarget||e;return function(e,t,n){var i=e.businessObject,r=qi(i);r&&("categoryValueRef"===r?i.categoryValueRef.value=t:i[r]=t)}(n,t),[n,i]}this.preExecute=function(t){var n=t.element,i=n.businessObject,r=t.newLabel;if(!Rr(n)&&wr(n)&&!Sr(n)&&!hv(r)){var o=Tr(n);o={x:o.x,y:o.y+7},e.createLabel(n,o,{id:i.id+"_label",businessObject:i})}},this.execute=function(e){return e.oldLabel=Ki(e.element),n(e.element,e.newLabel)},this.revert=function(e){return n(e.element,e.oldLabel)},this.postExecute=function(n){var i=n.element,r=i.label||i,o=n.newLabel,a=n.newBounds,s=n.hints||{};if(Rr(r)||Hi(r,"bpmn:TextAnnotation"))if(Rr(r)&&hv(o))!1!==s.removeShape&&e.removeShape(r,{unsetLabel:!1});else{var c=Ki(r);void 0===a&&(a=t.getExternalLabelBounds(r,c)),a&&e.resizeShape(r,a,uv)}}}function hv(e){return!e||!e.trim()}function dv(e,t,n,i){Km.call(this,e,t,n),this._bpmnRules=i}function fv(){}lv.$inject=["modeling","textRenderer"],n(dv,Km),dv.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],dv.prototype.getHandlers=function(){var e=Km.prototype.getHandlers.call(this);return e["element.updateProperties"]=Qm,e["canvas.updateRoot"]=nv,e["lane.add"]=iv,e["lane.resize"]=ov,e["lane.split"]=rv,e["lane.updateRefs"]=av,e["id.updateClaim"]=sv,e["element.setColor"]=pv,e["element.updateLabel"]=lv,e},dv.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},dv.prototype.connect=function(e,t,n,i){var r=this._bpmnRules;if(n||(n=r.canConnect(e,t)),n)return this.createConnection(e,t,n,e.parent,i)},dv.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},dv.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},dv.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},dv.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},dv.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},dv.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},dv.prototype.makeProcess=function(){var e={newRoot:this._create("root",{type:"bpmn:Process"})};this._commandStack.execute("canvas.updateRoot",e)},dv.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},dv.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},dv.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})},fv.prototype.layoutConnection=function(e,t){return[(t=t||{}).connectionStart||yo(t.source||e.source),t.connectionEnd||yo(t.target||e.target)]};var mv=20,vv=5,yv=Math.round,gv=20,bv={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function xv(e,t,n){var i,r,o,a=go(t,e,vv),s=n.split(":")[0],c=yv((t.x-e.x)/2+e.x),p=yv((t.y-e.y)/2+e.y),u=(o=a,{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/left|right/,v:/top|bottom/}[s].test(o)),l=/h|r|l/.test(s),h=!1;return u?(i=l?{x:c,y:e.y}:{x:e.x,y:p},r=l?"h:h":"v:v"):(r=l?"h:v":"v:h",function(e,t){return!{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/./,v:/./}[t].test(e)}(a,s)?l?(h=p===e.y,i={x:e.x+mv*(/l/.test(s)?-1:1),y:h?p+mv:p}):i={x:(h=c===e.x)?c+mv:c,y:e.y+mv*(/t/.test(s)?-1:1)}:i={x:c,y:p}),{waypoints:_v(e,i,r).concat(i),directions:r,turnNextDirections:h}}function Ev(e){return e.split(":").reverse().join(":")}function _v(e,t,n){if(!function(e){return e&&/^h|v|t|r|b|l:h|v|t|r|b|l$/.test(e)}(n=n||"h:h"))throw new Error("unknown directions: <"+n+">: must be specified as <start>:<end> with start/end in { h,v,t,r,b,l }");if(Rv(n)){var i=function(e,t,n){return xv(e,t,n)}(e,t,n),r=function(e,t,n){var i=xv(t,e,Ev(n));return{waypoints:i.waypoints.slice().reverse(),directions:Ev(i.directions),turnNextDirections:i.turnNextDirections}}(e,t,n),o=function(e,t){var n=e.directions.split(":")[1],i=t.directions.split(":")[0];e.turnNextDirections&&(n="h"==n?"v":"h"),t.turnNextDirections&&(i="h"==i?"v":"h");var r=n+":"+i;return{waypoints:_v(e.waypoints[e.waypoints.length-1],t.waypoints[0],r),directions:r}}(i,r);return[].concat(i.waypoints,o.waypoints,r.waypoints)}return function(e,t,n){var i=yv((t.x-e.x)/2+e.x),r=yv((t.y-e.y)/2+e.y);if("h:v"===n)return[{x:t.x,y:e.y}];if("v:h"===n)return[{x:e.x,y:t.y}];if("h:h"===n)return[{x:i,y:e.y},{x:i,y:t.y}];if("v:v"===n)return[{x:e.x,y:r},{x:t.x,y:r}];throw new Error("invalid directions: can only handle varians of [hv]:[hv]")}(e,t,n)}function wv(e,t,n,i,r){var o=x(r&&r.preferredLayouts||[],"straight")[0]||"h:h",a=go(e,t,bv[o]||0),s=function(e,t){if(Rv(t))return t;switch(e){case"intersect":return"t:t";case"top":case"bottom":return"v:v";case"left":case"right":return"h:h";default:return t}}(a,o);n=n||yo(e),i=i||yo(t);var c=s.split(":");return function(e,t,n){var i=_v(e,t,n);return i.unshift(e),i.push(t),Pv(i)}(Av(n,e,c[0],function(e){return{top:"bottom",bottom:"top",left:"right",right:"left","top-left":"bottom-right","bottom-right":"top-left","top-right":"bottom-left","bottom-left":"top-right"}[e]}(a)),Av(i,t,c[1],a),s)}function Sv(e,t,n,i,r,o){var a;return l(n)&&(r=n,o=i,n=yo(e),i=yo(t)),r=r||[],(a=-1!==(o=F({preferredLayouts:[]},o)).preferredLayouts.indexOf("straight")&&function(e,t,n,i,r){var o,a,s={};if(a=go(e,t),!/^(top|bottom|left|right)$/.test(a))return null;/top|bottom/.test(a)&&(o="x");/left|right/.test(a)&&(o="y");return"target"===r.preserveDocking?Cv(o,i,e)?(s[o]=i[o],[{x:void 0!==s.x?s.x:n.x,y:void 0!==s.y?s.y:n.y,original:{x:void 0!==s.x?s.x:n.x,y:void 0!==s.y?s.y:n.y}},{x:i.x,y:i.y}]):null:Cv(o,n,t)?(s[o]=n[o],[{x:n.x,y:n.y},{x:void 0!==s.x?s.x:i.x,y:void 0!==s.y?s.y:i.y,original:{x:void 0!==s.x?s.x:i.x,y:void 0!==s.y?s.y:i.y}}]):null}(e,t,n,i,o))?a:(a=o.connectionEnd&&function(e,t,n,i){var r=i.slice().reverse();return(r=Tv(e,t,n,r))?r.reverse():null}(t,e,i,r))?a:(a=o.connectionStart&&Tv(e,t,n,r))||(!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:wv(e,t,n,i,o))}function Cv(e,t,n){return function(e,t,n){return e>=t&&e<=n}(t[e],n[e],n[e]+n[{x:"width",y:"height"}[e]])}function Tv(e,t,n,i){if(function(e){return e.length<3||!(e.length>4)&&!!y(e,function(t,n){var i=e[n-1];return i&&Ar(t,i)<3})}(i))return null;var r,o=i[0],a=i.slice();return a[0]=n,a[1]=function(e,t,n){switch(Mr(t,e)){case"v":return{x:n.x,y:e.y};case"h":return{x:e.x,y:n.y}}return{x:e.x,y:e.y}}(a[1],o,n),(r=function(e,t,n){var i;for(i=e.length-2;0!==i;i--)if(Dr(e[i],t,gv)||Dr(e[i],n,gv))return e.slice(i);return e}(a,e,t))!==a&&(a=Tv(e,t,n,r)),a&&Mr(a)?null:a}function Rv(e){return e&&/t|r|b|l/.test(e)}function Av(e,t,n,i){if("h"===n&&(n=/left/.test(i)?"l":"r"),"v"===n&&(n=/top/.test(i)?"t":"b"),"t"===n)return{original:e,x:e.x,y:t.y};if("r"===n)return{original:e,x:t.x+t.width,y:e.y};if("b"===n)return{original:e,x:e.x,y:t.y+t.height};if("l"===n)return{original:e,x:t.x,y:e.y};throw new Error("unexpected dockingDirection: <"+n+">")}function Pv(e){return e.reduce(function(t,n,i){return Pr(t[t.length-1],e[i+1],n,0)||t.push(n),t},[])}var kv=-10,Mv=40,Dv={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},Bv={top:"t",right:"r",bottom:"b",left:"l"};function Nv(){}function Ov(e,t){return Hi(t,"bpmn:Participant")?"source":Hi(e,"bpmn:Participant")?"target":zv(t)?"source":zv(e)?"target":Hi(t,"bpmn:Event")?"target":Hi(e,"bpmn:Event")?"source":null}function jv(e){return zv(e)?"target":"source"}function Lv(e,t){return e?e.original||e:yo(t)}function Iv(e,t){return Hi(t,"bpmn:Activity")&&Hi(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function zv(e){return Hi(e,"bpmn:SubProcess")&&Wi(e)}function Fv(e,t){return e===t}function $v(e){var t=/right|left/.exec(e);return t&&t[0]}function Hv(e){var t=/top|bottom/.exec(e);return t&&t[0]}function Gv(e){return"right"===e||"left"===e}function Wv(e,t){var n=t.waypoints,i=n&&n.length&&go(n[0],e);return"top"===i?["t:r"]:"right"===i?["r:b"]:"left"===i?["l:t"]:["b:l"]}function Vv(e,t,n){var i,r,o=yo(e),a=yo(t),s=(r=(i=e).host,go(yo(i),r,kv)),c=Fv(e.host,t),p=-1!==["top","right","bottom","left"].indexOf(s),u=go(a,o,{x:e.width/2+t.width/2,y:e.height/2+t.height/2});return c?function(e,t,n,i,r){var o,a=t?e:Hv(e),s=Bv[a];o=t?Gv(e)?Uv("y",n,i,r)?"h":"b":Uv("x",n,i,r)?"v":"l":"v";return[s+":"+o]}(s,p,e,t,n):[function(e,t,n){if(n)return Bv[e];if(Fv(Hv(e),Hv(t))||(i=$v(e),r=$v(t),Dv[i]===r))return Bv[Hv(e)];var i,r;return Bv[$v(e)]}(s,u,p)+":"+function(e,t,n){if(n)return Gv(e)?(i=t,r=$v(e),o=Dv[r],-1!==i.indexOf(o)||Fv(e,t)?"h":"v"):function(e,t){var n=Hv(e),i=Dv[n];return-1!==t.indexOf(i)}(e,t)||Fv(e,t)?"v":"h";var i,r,o;return Gv(t)||Fv(Hv(e),Hv(t))&&$v(t)?"h":"v"}(s,u,p)]}function Uv(e,t,n,i){var r=Mv;return!(qv(e,i,n,r)||qv(e,i,{x:n.x+n.width,y:n.y+n.height},r)||qv(e,i,yo(t),r))}function qv(e,t,n,i){return Math.abs(t[e]-n[e])<i}function Kv(e){return F({original:e.point.original||e.point},e.actual)}function Yv(e,t){this._elementRegistry=e,this._graphicsFactory=t}n(Nv,fv),Nv.prototype.layoutConnection=function(e,t){t||(t={});var n,i,r=t.source||e.source,o=t.target||e.target,a=t.waypoints||e.waypoints,s=t.connectionStart,c=t.connectionEnd;return s||(s=Lv(a&&a[0],r)),c||(c=Lv(a&&a[a.length-1],o)),(Hi(e,"bpmn:Association")||Hi(e,"bpmn:DataAssociation"))&&a&&!Iv(r,o)?[].concat([s],a.slice(1,-1),[c]):(Hi(e,"bpmn:MessageFlow")?n=function(e,t){return{preferredLayouts:["straight","v:v"],preserveDocking:Ov(e,t)}}(r,o):(Hi(e,"bpmn:SequenceFlow")||Iv(r,o))&&(n=r===o?{preferredLayouts:Wv(r,e)}:Hi(r,"bpmn:BoundaryEvent")?{preferredLayouts:Vv(r,o,c)}:zv(r)||zv(o)?function(e){return{preferredLayouts:["straight","h:h"],preserveDocking:jv(e)}}(r):Hi(r,"bpmn:Gateway")?{preferredLayouts:["v:h"]}:Hi(o,"bpmn:Gateway")?{preferredLayouts:["h:v"]}:{preferredLayouts:["h:h"]}),n&&(i=Pv(Sv(r,o,s,c,a,n=F(n,t)))),i||[s,c])},Yv.$inject=["elementRegistry","graphicsFactory"],Yv.prototype.getCroppedWaypoints=function(e,t,n){t=t||e.source,n=n||e.target;var i=this.getDockingPoint(e,t,!0),r=this.getDockingPoint(e,n),o=e.waypoints.slice(i.idx+1,r.idx);return o.unshift(Kv(i)),o.push(Kv(r)),o},Yv.prototype.getDockingPoint=function(e,t,n){var i,r,o=e.waypoints;return{point:r=o[i=n?0:o.length-1],actual:this._getIntersection(t,e,n)||r,idx:i}},Yv.prototype._getIntersection=function(e,t,n){return bo(this._getShapePath(e),this._getConnectionPath(t),n)},Yv.prototype._getConnectionPath=function(e){return this._graphicsFactory.getConnectionPath(e)},Yv.prototype._getShapePath=function(e){return this._graphicsFactory.getShapePath(e)},Yv.prototype._getGfx=function(e){return this._elementRegistry.getGraphics(e)};var Xv={__init__:["modeling","bpmnUpdater"],__depends__:[wd,of,cf,lf,Lp,df,gf,Sf,kf,Wo,rl,Qf],bpmnFactory:["type",Jf],bpmnUpdater:["type",em],elementFactory:["type",nm],modeling:["type",dv],layouter:["type",Nv],connectionDocking:["type",Yv]},Zv=500,Qv=1250,Jv=1500,ey=Math.round;function ty(e,t,n,i,r){function o(e,t,n,i){return r.allowed("elements.move",{shapes:e,delta:t,position:n,target:i})}function a(e,n,i,r){if(h(i)&&(r=i,i=!1),!n.waypoints&&n.parent){var o=function(e){return{x:e.x+ey(e.width/2),y:e.y+ey(e.height/2)}}(n);return t.init(e,o,"shape.move",{cursor:"grabbing",autoActivate:i,data:{shape:n,context:r||{}}}),!0}}e.on("shape.move.start",Jv,function(e){var t=e.context,n=e.shape,r=i.get().slice();-1===r.indexOf(n)&&(r=[n]),F(t,{shapes:r=function(e){var t=A(e,"id");return g(e,function(e){for(;e=e.parent;)if(t[e.id])return!1;return!0})}(r),validatedShapes:r,shape:n})}),e.on("shape.move.start",Qv,function(e){var t=e.context,n=t.validatedShapes;if(!(t.canExecute=o(n)))return!1}),e.on("shape.move.move",Zv,function(e){var t,n=e.context,i=n.validatedShapes,r=e.hover,a={x:e.dx,y:e.dy};t=o(i,a,{x:e.x,y:e.y},r),n.delta=a,n.canExecute=t,n.target=null!==t?r:null}),e.on("shape.move.end",function(e){var t=e.context,i=t.delta,r=t.canExecute,o="attach"===r,a=t.shapes;if(!1===r)return!1;i.x=ey(i.x),i.y=ey(i.y),0===i.x&&0===i.y||n.moveElements(a,i,t.target,{primaryShape:t.shape,attach:o})}),e.on("element.mousedown",function(e){var t=To(e);if(!t)throw new Error("must supply DOM mousedown event");return a(t,e.element)}),this.start=a}ty.$inject=["eventBus","dragging","modeling","selection","rules"];var ny=499,iy="djs-dragging",ry="drop-ok",oy="drop-not-ok",ay="new-parent",sy="attach-ok";function cy(e,t,n,i){function r(e){return function(e){return g(e,function(t){return!function(e){return e.waypoints}(t)||y(e,D({id:t.source.id}))&&y(e,D({id:t.target.id}))})}(a(e))}function a(e){var t=dt(e,!0),n=S(t,function(e){return(e.incoming||[]).concat(e.outgoing||[])});return o(t.concat(n))}function s(e,n){[sy,ry,oy,ay].forEach(function(i){i===n?t.addMarker(e,i):t.removeMarker(e,i)})}e.on("shape.move.start",ny,function(e){var s=e.context,c=s.shapes,p=s.allDraggedElements,u=r(c);if(!s.dragGroup){var l=Oe("g");_e(l,n.cls("djs-drag-group",["no-events"])),ge(t.getDefaultLayer(),l),s.dragGroup=l}u.forEach(function(e){i.addDragger(e,s.dragGroup)}),b(p=p?o([p,a(c)]):a(c),function(e){t.addMarker(e,iy)}),s.allDraggedElements=p,s.differentParents=1!==T(A(c,function(e){return e.parent&&e.parent.id}))}),e.on("shape.move.move",ny,function(e){var t=e.context,n=t.dragGroup,i=t.target,r=t.shape.parent,o=t.canExecute;i&&("attach"===o?s(i,sy):t.canExecute&&i&&i.id!==r.id?s(i,ay):s(i,t.canExecute?ry:oy)),en(n,e.dx,e.dy)}),e.on(["shape.move.out","shape.move.cleanup"],function(e){var t=e.context.target;t&&s(t,null)}),e.on("shape.move.cleanup",function(e){var n=e.context,i=n.allDraggedElements,r=n.dragGroup;b(i,function(e){t.removeMarker(e,iy)}),r&&Pe(r)}),this.makeDraggable=function(e,n,r){i.addDragger(n,e.dragGroup),r&&t.addMarker(n,iy),e.allDraggedElements?e.allDraggedElements.push(n):e.allDraggedElements=[n]}}cy.$inject=["eventBus","canvas","styles","previewSupport"];var py={__depends__:[No,Wo,Lo,Ps,Ss,Yc],__init__:["move","movePreview"],move:["type",ty],movePreview:["type",cy]};function uy(e,t){this._eventBus=e,this._canvas=t;var n=this;e.on("tool-manager.update",function(e){var t=e.tool;n.updateToolHighlight(t)}),e.on("i18n.changed",function(){n._update()}),e.on("diagram.init",function(){n._diagramInitialized=!0,n._rebuild()})}function ly(e,t){var n=t.getPaletteEntries();return f(n)?n(e):(b(n,function(t,n){e[n]=t}),e)}uy.$inject=["eventBus","canvas"],uy.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("palette.getProviders",e,function(e){e.providers.push(t)}),this._rebuild()},uy.prototype.getEntries=function(){return this._getProviders().reduce(ly,{})},uy.prototype._rebuild=function(){this._diagramInitialized&&(this._getProviders().length&&(this._container||this._init(),this._update()))},uy.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=le(uy.HTML_MARKUP);n.appendChild(i),ue.bind(i,".djs-palette-toggle, .entry","click",function(t){var n=t.delegateTarget;if(J(n,".djs-palette-toggle"))return e.toggle();e.trigger("click",t)}),ce.bind(i,"mousedown",function(e){e.stopPropagation()}),ue.bind(i,".entry","dragstart",function(t){e.trigger("dragstart",t)}),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},uy.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},uy.prototype._toggleState=function(e){e=e||{};var t,n=this._getParentContainer(),i=this._container,r=this._eventBus,o=K(i);t="twoColumn"in e?e.twoColumn:this._needsCollapse(n.clientHeight,this._entries||{}),o.toggle("two-column",t),"open"in e&&o.toggle("open",e.open),r.fire("palette.changed",{twoColumn:t,open:this.isOpen()})},uy.prototype._update=function(){var e=fe(".djs-palette-entries",this._container),t=this._entries=this.getEntries();X(e),b(t,function(t,n){var i=t.group||"default",r=fe("[data-group="+i+"]",e);r||(r=le('<div class="group" data-group="'+i+'"></div>'),e.appendChild(r));var o=t.html||(t.separator?'<hr class="separator" />':'<div class="entry" draggable="true"></div>'),a=le(o);r.appendChild(a),t.separator||(G(a,"data-action",n),t.title&&G(a,"title",t.title),t.className&&function(e,t){var n=K(e);(l(t)?t:t.split(/\s+/g)).forEach(function(e){n.add(e)})}(a,t.className),t.imageUrl&&a.appendChild(le('<img src="'+t.imageUrl+'">')))}),this.open()},uy.prototype.trigger=function(e,t,n){var i,r,o,a=this._entries,s=t.delegateTarget||t.target;if(!s)return t.preventDefault();(i=a[G(s,"data-action")])&&(r=i.action,o=t.originalEvent||t,f(r)?"click"===e&&r(o,n):r[e]&&r[e](o,n),t.preventDefault())},uy.prototype._layoutChanged=function(){this._toggleState({})},uy.prototype._needsCollapse=function(e,t){return e<46*Object.keys(t).length+50},uy.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},uy.prototype.open=function(){this._toggleState({open:!0})},uy.prototype.toggle=function(e){this.isOpen()?this.close():this.open()},uy.prototype.isActiveTool=function(e){return e&&this._activeTool===e},uy.prototype.updateToolHighlight=function(e){var t;this._toolsContainer||(t=fe(".djs-palette-entries",this._container),this._toolsContainer=fe("[data-group=tools]",t)),b(this._toolsContainer.children,function(t){var n=t.getAttribute("data-action");if(n){var i=K(t);n=n.replace("-tool",""),i.contains("entry")&&n===e?i.add("highlighted-entry"):i.remove("highlighted-entry")}})},uy.prototype.isOpen=function(){return K(this._container).has("open")},uy.prototype._getParentContainer=function(){return this._canvas.getContainer()},uy.HTML_MARKUP='<div class="djs-palette"><div class="djs-palette-entries"></div><div class="djs-palette-toggle"></div></div>';var hy={__init__:["palette"],palette:["type",uy]};function dy(e,t,n,i,r,o){this._selection=r,this._dragging=n;var a=this,s=function(e){var n,i=t.getDefaultLayer();_e(n=e.frame=Oe("rect"),{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),ge(i,n)},c=function(e){var t=e.frame,n=e.bbox;_e(t,{x:n.x,y:n.y,width:n.width,height:n.height})},p=function(e){e.frame&&Pe(e.frame)};o.registerTool("lasso",{tool:"lasso.selection",dragging:"lasso"}),e.on("lasso.selection.end",function(t){var n=t.originalEvent.target;(t.hover||n instanceof SVGElement)&&e.once("lasso.selection.ended",function(){a.activateLasso(t.originalEvent,!0)})}),e.on("lasso.end",function(e){var t=fy(e),n=i.filter(function(e){return e});a.select(n,t)}),e.on("lasso.start",function(e){var t=e.context;t.bbox=fy(e),s(t)}),e.on("lasso.move",function(e){var t=e.context;t.bbox=fy(e),c(t)}),e.on("lasso.cleanup",function(e){var t=e.context;p(t)}),e.on("element.mousedown",1500,function(e){if(function(e){var t=To(e)||e;return Po(e)&&t.shiftKey}(e))return a.activateLasso(e.originalEvent),!0})}function fy(e){var t={x:e.x-e.dx,y:e.y-e.dy},n={x:e.x,y:e.y};return t.x<=n.x&&t.y<n.y||t.x<n.x&&t.y<=n.y?{x:t.x,y:t.y,width:n.x-t.x,height:n.y-t.y}:t.x>=n.x&&t.y<n.y||t.x>n.x&&t.y<=n.y?{x:n.x,y:t.y,width:t.x-n.x,height:n.y-t.y}:t.x<=n.x&&t.y>n.y||t.x<n.x&&t.y>=n.y?{x:t.x,y:n.y,width:n.x-t.x,height:t.y-n.y}:t.x>=n.x&&t.y>n.y||t.x>n.x&&t.y>=n.y?{x:n.x,y:n.y,width:t.x-n.x,height:t.y-n.y}:{x:n.x,y:n.y,width:0,height:0}}dy.$inject=["eventBus","canvas","dragging","elementRegistry","selection","toolManager"],dy.prototype.activateLasso=function(e,t){this._dragging.init(e,"lasso",{autoActivate:t,cursor:"crosshair",data:{context:{}}})},dy.prototype.activateSelection=function(e){this._dragging.init(e,"lasso.selection",{trapClick:!1,cursor:"crosshair",data:{context:{}}})},dy.prototype.select=function(e,t){var n=function(e,t){var n={};return b(e,function(e){var i=e;i.waypoints&&(i=ft(i)),!d(t.y)&&i.x>t.x&&(n[e.id]=e),!d(t.x)&&i.y>t.y&&(n[e.id]=e),i.x>t.x&&i.y>t.y&&(d(t.width)&&d(t.height)&&i.width+i.x<t.width+t.x&&i.height+i.y<t.height+t.y?n[e.id]=e:d(t.width)&&d(t.height)||(n[e.id]=e))}),n}(e,t);this._selection.select(R(n))},dy.prototype.toggle=function(){this.isActive()?this._dragging.cancel():this.activateSelection()},dy.prototype.isActive=function(){var e=this._dragging.context();return e&&/^lasso/.test(e.prefix)};var my={__depends__:[Df],__init__:["lassoTool"],lassoTool:["type",dy]},vy=1500;function yy(e,t,n,i,r){this._dragging=n;var o=this,a=i.get("keyboard",!1);r.registerTool("hand",{tool:"hand",dragging:"hand.move"}),e.on("element.mousedown",vy,function(e){if(ko(e))return this.activateMove(e.originalEvent),!1},this),a&&a.addListener(vy,function(e){function t(e){o.activateMove(e),window.removeEventListener("mousemove",t)}gy(e.keyEvent)&&(o.isActive()||(window.addEventListener("mousemove",t),a.addListener(vy,function e(i){gy(i.keyEvent)&&(window.removeEventListener("mousemove",t),a.removeListener(e,"keyboard.keyup"),n.cancel())},"keyboard.keyup")))},"keyboard.keydown"),e.on("hand.end",function(t){var n=t.originalEvent.target;if(!(t.hover||n instanceof SVGElement))return!1;e.once("hand.ended",function(){this.activateMove(t.originalEvent,{reactivate:!0})},this)},this),e.on("hand.move.move",function(e){var n=t.viewbox().scale;t.scroll({dx:e.dx*n,dy:e.dy*n})}),e.on("hand.move.end",function(t){var n=t.context.reactivate;return!ko(t)&&n&&e.once("hand.move.ended",function(e){this.activateHand(e.originalEvent,!0,!0)},this),!1},this)}function gy(e){return ea(" ",e)}yy.$inject=["eventBus","canvas","dragging","injector","toolManager"],yy.prototype.activateMove=function(e,t,n){"object"==typeof t&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:"grab",data:{context:n||{}}})},yy.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:"grab",data:{context:{reactivate:n}}})},yy.prototype.toggle=function(){this.isActive()?this._dragging.cancel():this.activateHand()},yy.prototype.isActive=function(){var e=this._dragging.context();return!!e&&/^(hand|hand\.move)$/.test(e.prefix)};var by={__depends__:[Df],__init__:["handTool"],handTool:["type",yy]},xy="connect-ok",Ey="connect-not-ok";function _y(e,t,n,i,r,o){var a=this;this._dragging=t,this._rules=o,r.registerTool("global-connect",{tool:"global-connect",dragging:"global-connect.drag"}),e.on("global-connect.hover",function(e){var t=e.context,n=e.hover,r=t.canStartConnect=a.canStartConnect(n);null!==r&&(t.startTarget=n,i.addMarker(n,r?xy:Ey))}),e.on(["global-connect.out","global-connect.cleanup"],function(e){var t=e.context.startTarget,n=e.context.canStartConnect;t&&i.removeMarker(t,n?xy:Ey)}),e.on(["global-connect.ended"],function(t){var i=t.context.startTarget,r={x:t.x,y:t.y};if(a.canStartConnect(i))return e.once("element.out",function(){e.once(["connect.ended","connect.canceled"],function(){e.fire("global-connect.drag.ended")}),n.start(null,i,r)}),!1})}_y.$inject=["eventBus","dragging","connect","canvas","toolManager","rules"],_y.prototype.start=function(e){this._dragging.init(e,"global-connect",{trapClick:!1,data:{context:{}}})},_y.prototype.toggle=function(){this.isActive()?this._dragging.cancel():this.start()},_y.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},_y.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};var wy={__depends__:[Nc,Ps,Ss,Df],globalConnect:["type",_y]};function Sy(e,t,n,i,r,o,a,s){this._palette=e,this._create=t,this._elementFactory=n,this._spaceTool=i,this._lassoTool=r,this._handTool=o,this._globalConnect=a,this._translate=s,e.registerProvider(this)}Sy.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],Sy.prototype.getPaletteEntries=function(e){var t={},n=this._create,i=this._elementFactory,r=this._spaceTool,o=this._lassoTool,a=this._handTool,s=this._globalConnect,c=this._translate;function p(e,t,r,o,a){function s(t){var r=i.createShape(F({type:e},a));a&&(r.businessObject.di.isExpanded=a.isExpanded),n.start(t,r)}var p=e.replace(/^bpmn:/,"");return{group:t,className:r,title:o||c("Create {type}",{type:p}),action:{dragstart:s,click:s}}}function u(e){var t=i.createShape({type:"bpmn:SubProcess",x:0,y:0,isExpanded:!0}),r=i.createShape({type:"bpmn:StartEvent",x:40,y:82,parent:t});n.start(e,[t,r],{hints:{autoSelect:[r]}})}function l(e){n.start(e,i.createParticipantShape())}return F(t,{"hand-tool":{group:"tools",className:"bpmn-icon-hand-tool",title:c("Activate the hand tool"),action:{click:function(e){a.activateHand(e)}}},"lasso-tool":{group:"tools",className:"bpmn-icon-lasso-tool",title:c("Activate the lasso tool"),action:{click:function(e){o.activateSelection(e)}}},"space-tool":{group:"tools",className:"bpmn-icon-space-tool",title:c("Activate the create/remove space tool"),action:{click:function(e){r.activateSelection(e)}}},"global-connect-tool":{group:"tools",className:"bpmn-icon-connection-multi",title:c("Activate the global connect tool"),action:{click:function(e){s.toggle(e)}}},"tool-separator":{group:"tools",separator:!0},"create.start-event":p("bpmn:StartEvent","event","bpmn-icon-start-event-none",c("Create StartEvent")),"create.intermediate-event":p("bpmn:IntermediateThrowEvent","event","bpmn-icon-intermediate-event-none",c("Create Intermediate/Boundary Event")),"create.end-event":p("bpmn:EndEvent","event","bpmn-icon-end-event-none",c("Create EndEvent")),"create.exclusive-gateway":p("bpmn:ExclusiveGateway","gateway","bpmn-icon-gateway-none",c("Create Gateway")),"create.task":p("bpmn:Task","activity","bpmn-icon-task",c("Create Task")),"create.data-object":p("bpmn:DataObjectReference","data-object","bpmn-icon-data-object",c("Create DataObjectReference")),"create.data-store":p("bpmn:DataStoreReference","data-store","bpmn-icon-data-store",c("Create DataStoreReference")),"create.subprocess-expanded":{group:"activity",className:"bpmn-icon-subprocess-expanded",title:c("Create expanded SubProcess"),action:{dragstart:u,click:u}},"create.participant-expanded":{group:"collaboration",className:"bpmn-icon-participant",title:c("Create Pool/Participant"),action:{dragstart:l,click:l}},"create.group":p("bpmn:Group","artifact","bpmn-icon-group",c("Create Group"))}),t};var Cy={__depends__:[hy,cp,Qf,my,by,wy,xr],__init__:["paletteProvider"],paletteProvider:["type",Sy]},Ty=250;function Ry(e,t,n,i,r){ls.call(this,e),e.on("shape.move.move",Ty,function(e){var o=e.context,a=o.canExecute;o.visualReplacements||(o.visualReplacements={}),a&&a.replacements?function(e){b(e.canExecute.replacements,function(o){var a=o.oldElementId,s={type:o.newElementType};if(!e.visualReplacements[a]){var c=t.get(a);F(s,{x:c.x,y:c.y});var p=n.createShape(s);i.addShape(p,c.parent);var u=fe('[data-element-id="'+$s(c.id)+'"]',e.dragGroup);u&&_e(u,{display:"none"});var l=r.addDragger(p,e.dragGroup);e.visualReplacements[a]=l,i.removeShape(p)}})}(o):function(e){var t=e.visualReplacements;b(t,function(n,i){var r=fe('[data-element-id="'+$s(i)+'"]',e.dragGroup);r&&_e(r,{display:"inline"}),n.remove(),t[i]&&delete t[i]})}(o)})}Ry.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],n(Ry,ls);var Ay={__depends__:[Yc],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",Ry]},Py=1250,ky=40,My=20,Dy=10,By=20,Ny=["x","y"],Oy=Math.abs;function jy(e){e.on(["connect.hover","connect.move","connect.end"],Py,function(e){var t=e.context,n=t.canExecute,i=t.start,r=t.hover,o=t.source,a=t.target;e.originalEvent&&Jo(e.originalEvent)||(t.initialConnectionStart||(t.initialConnectionStart=t.connectionStart),n&&r&&function(e,t,n){Ny.forEach(function(i){var r=zy(i,t);e[i]<t[i]+n?xc(e,i,t[i]+n):e[i]>t[i]+r-n&&xc(e,i,t[i]+r-n)})}(e,r,function(e){return Hi(e,"bpmn:Task")?Dy:My}(r)),r&&function(e,t){return w(t,function(t){return Iy(e,t)})}(n,["bpmn:Association","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow"])?(t.connectionStart=gc(i),os(r,["bpmn:Event","bpmn:Gateway"])&&Ly(e,gc(r)),os(r,["bpmn:Task","bpmn:SubProcess"])&&function(e,t){var n=gc(t);Ny.forEach(function(i){(function(e,t,n){return e[n]>t[n]+By&&e[n]<t[n]+zy(n,t)-By})(e,t,i)&&xc(e,i,n[i])})}(e,r),Hi(o,"bpmn:BoundaryEvent")&&a===o.host&&function(e){var t=e.context,n=t.source,i=t.target;if(function(e){var t=e.hover,n=e.source;return t&&n&&t===n}(t))return;var r=gc(n),o=go(r,i,-10),a=[];/top|bottom/.test(o)&&a.push("x");/left|right/.test(o)&&a.push("y");a.forEach(function(t){var n,i=e[t];Oy(i-r[t])<ky&&(n=i>r[t]?r[t]+ky:r[t]-ky,xc(e,t,n))})}(e)):Iy(n,"bpmn:MessageFlow")?(Hi(i,"bpmn:Event")&&(t.connectionStart=gc(i)),Hi(r,"bpmn:Event")&&Ly(e,gc(r))):t.connectionStart=t.initialConnectionStart)})}function Ly(e,t){xc(e,"x",t.x),xc(e,"y",t.y)}function Iy(e,t){return e&&e.type===t}function zy(e,t){return"x"===e?t.width:t.height}function Fy(){this._targets={},this._snapOrigins={},this._snapLocations=[],this._defaultSnaps={}}function $y(e){this._snapValues={}}jy.$inject=["eventBus"],Fy.prototype.getSnapOrigin=function(e){return this._snapOrigins[e]},Fy.prototype.setSnapOrigin=function(e,t){this._snapOrigins[e]=t,-1===this._snapLocations.indexOf(e)&&this._snapLocations.push(e)},Fy.prototype.addDefaultSnap=function(e,t){var n=this._defaultSnaps[e];n||(n=this._defaultSnaps[e]=[]),n.push(t)},Fy.prototype.getSnapLocations=function(){return this._snapLocations},Fy.prototype.setSnapLocations=function(e){this._snapLocations=e},Fy.prototype.pointsForTarget=function(e){var t=e.id||e,n=this._targets[t];return n||(n=this._targets[t]=new $y).initDefaults(this._defaultSnaps),n},$y.prototype.add=function(e,t){var n=this._snapValues[e];n||(n=this._snapValues[e]={x:[],y:[]}),-1===n.x.indexOf(t.x)&&n.x.push(t.x),-1===n.y.indexOf(t.y)&&n.y.push(t.y)},$y.prototype.snap=function(e,t,n,i){var r=this._snapValues[t];return r&&function(e,t,n){var i,r;for(n=void 0===n?10:n,i=0;i<t.length;i++)if(r=t[i],fc(r-e)<=n)return r}(e[n],r[n],i)},$y.prototype.initDefaults=function(e){var t=this;b(e||{},function(e,n){b(e,function(e){t.add(n,e)})})};var Hy=1250;function Gy(e,t,n){var i=this;this._elementRegistry=e,t.on(["create.start","shape.move.start"],function(e){i.initSnap(e)}),t.on(["create.move","create.end","shape.move.move","shape.move.end"],Hy,function(e){var t=e.context,r=t.shape,o=t.snapContext,a=t.target;if((!e.originalEvent||!Jo(e.originalEvent))&&!bc(e)&&a){var s=o.pointsForTarget(a);s.initialized||((s=i.addSnapTargetPoints(s,r,a)).initialized=!0),n.snap(e,s)}}),t.on(["create.cleanup","shape.move.cleanup"],function(){n.hide()})}function Wy(e){return!!e.labelTarget}Gy.$inject=["elementRegistry","eventBus","snapping"],Gy.prototype.initSnap=function(e){var t,n=this._elementRegistry,i=e.context,r=i.shape,o=i.snapContext;o||(o=i.snapContext=new Fy);var a=(t=n.get(r.id)?gc(r,e):{x:e.x+gc(r).x,y:e.y+gc(r).y}).x-r.width/2,s=t.y-r.height/2,c=t.x+r.width/2,p=t.y+r.height/2;return o.setSnapOrigin("mid",{x:t.x-e.x,y:t.y-e.y}),Wy(r)?o:(o.setSnapOrigin("top-left",{x:a-e.x,y:s-e.y}),o.setSnapOrigin("bottom-right",{x:c-e.x,y:p-e.y}),o)},Gy.prototype.addSnapTargetPoints=function(e,t,n){return b(this.getSnapTargets(t,n),function(n){if(Wy(n))Wy(t)&&e.add("mid",gc(n));else if(n.waypoints){if(n.waypoints.length<3)return;b(n.waypoints.slice(1,-1),function(t){e.add("mid",t)})}else{e.add("mid",gc(n))}}),d(t.x)&&d(t.y)?(this._elementRegistry.get(t.id)&&e.add("mid",gc(t)),e):e},Gy.prototype.getSnapTargets=function(e,t){return Ec(t).filter(function(e){return!e.hidden})};var Vy=1500;function Uy(e,t){t.invoke(Gy,this),e.on(["create.move","create.end"],Vy,qy),e.on(["create.move","create.end","shape.move.move","shape.move.end"],Vy,function(e){var t=e.context,n=t.canExecute,i=t.target;n&&("attach"===n||n.attach)&&!bc(e)&&function(e,t){var n,i=mo(t),r=Sd(e,t),o=e.context.shape;n=o.parent?{x:0,y:0}:yo(o);/top/.test(r)?xc(e,"y",i.top-n.y):/bottom/.test(r)&&xc(e,"y",i.bottom-n.y);/left/.test(r)?xc(e,"x",i.left-n.x):/right/.test(r)&&xc(e,"x",i.right-n.x)}(e,i)})}function qy(e){var t=e.context.createConstraints;if(t){var n=t.top,i=t.right,r=t.bottom,o=t.left;(o&&o>=e.x||i&&i<=e.x)&&xc(e,"x",e.x),(n&&n>=e.y||r&&r<=e.y)&&xc(e,"y",e.y)}}function Ky(e,t){return-1!==e.indexOf(t)}function Yy(e,t,n){return t?{x:e.x-n.x,y:e.y-n.y}:{x:e.x,y:e.y}}n(Uy,Gy),Uy.$inject=["eventBus","injector"],Uy.prototype.initSnap=function(e){var t=Gy.prototype.initSnap.call(this,e),n=e.shape,i=!!this._elementRegistry.get(n.id);return b(n.outgoing,function(n){var r=n.waypoints[0];r=r.original||r,t.setSnapOrigin(n.id+"-docking",Yy(r,i,e))}),b(n.incoming,function(n){var r=n.waypoints[n.waypoints.length-1];r=r.original||r,t.setSnapOrigin(n.id+"-docking",Yy(r,i,e))}),Hi(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},Uy.prototype.addSnapTargetPoints=function(e,t,n){Gy.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);b(i,function(n){var i;(function(e){if(Hi(e,"bpmn:SubProcess")&&Wi(e))return!0;return Hi(e,"bpmn:Participant")}(n)||(i="bpmn:TextAnnotation",[t,n].every(function(e){return Hi(e,i)})))&&(e.add("top-left",vc(n)),e.add("bottom-right",yc(n)))});var r=this._elementRegistry;return b(t.incoming,function(n){if(r.get(t.id)){Ky(i,n.source)||e.add("mid",yo(n.source));var o=n.waypoints[0];e.add(n.id+"-docking",o.original||o)}}),b(t.outgoing,function(n){if(r.get(t.id)){Ky(i,n.target)||e.add("mid",yo(n.target));var o=n.waypoints[n.waypoints.length-1];e.add(n.id+"-docking",o.original||o)}}),Hi(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},Uy.prototype.getSnapTargets=function(e,t){return Gy.prototype.getSnapTargets.call(this,e,t).filter(function(e){return!Hi(e,"bpmn:Lane")})};var Xy=1250;function Zy(e,t){var n=this;e.on(["resize.start"],function(e){n.initSnap(e)}),e.on(["resize.move","resize.end"],Xy,function(e){var i=e.context,r=i.shape,o=r.parent,a=i.direction,s=i.snapContext;if(!(e.originalEvent&&Jo(e.originalEvent)||bc(e))){var c=s.pointsForTarget(o);c.initialized||((c=n.addSnapTargetPoints(c,r,o,a)).initialized=!0),function(e){return"n"===e||"s"===e}(a)&&xc(e,"x",e.x),function(e){return"e"===e||"w"===e}(a)&&xc(e,"y",e.y),t.snap(e,c)}}),e.on(["resize.cleanup"],function(){t.hide()})}function Qy(e,t){var n=yo(e),i=mo(e),r={x:n.x,y:n.y};return-1!==t.indexOf("n")?r.y=i.top:-1!==t.indexOf("s")&&(r.y=i.bottom),-1!==t.indexOf("e")?r.x=i.right:-1!==t.indexOf("w")&&(r.x=i.left),r}Zy.prototype.initSnap=function(e){var t=e.context,n=t.shape,i=t.direction,r=t.snapContext;r||(r=t.snapContext=new Fy);var o=Qy(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},Zy.prototype.addSnapTargetPoints=function(e,t,n,i){return b(this.getSnapTargets(t,n),function(t){e.add("corner",yc(t)),e.add("corner",vc(t))}),e.add("corner",Qy(t,i)),e},Zy.$inject=["eventBus","snapping"],Zy.prototype.getSnapTargets=function(e,t){return Ec(t).filter(function(t){return!(n=t,i=e,n.host===i||function(e){return!!e.waypoints}(t)||function(e){return!!e.hidden}(t)||function(e){return!!e.labelTarget}(t));var n,i})};var Jy=1e3;function eg(e){this._canvas=e,this._asyncHide=L(I(this.hide,this),Jy)}eg.$inject=["canvas"],eg.prototype.snap=function(e,t){var n=e.context.snapContext,i=n.getSnapLocations(),r={x:bc(e,"x"),y:bc(e,"y")};b(i,function(i){var o=n.getSnapOrigin(i),a={x:e.x+o.x,y:e.y+o.y};if(b(["x","y"],function(e){var n;r[e]||void 0!==(n=t.snap(a,i,e,7))&&(r[e]={value:n,originValue:n-o[e]})}),r.x&&r.y)return!1}),this.showSnapLine("vertical",r.x&&r.x.value),this.showSnapLine("horizontal",r.y&&r.y.value),b(["x","y"],function(t){var n=r[t];h(n)&&xc(e,t,n.originValue)})},eg.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=Oe("path");return _e(n,{d:"M0,0 L0,0"}),Re(n).add("djs-snap-line"),ge(t,n),{update:function(t){d(t)?_e(n,"horizontal"===e?{d:"M-100000,"+t+" L+100000,"+t,display:""}:{d:"M "+t+",-100000 L "+t+", +100000",display:""}):_e(n,{display:"none"})}}},eg.prototype._createSnapLines=function(){this._snapLines={horizontal:this._createLine("horizontal"),vertical:this._createLine("vertical")}},eg.prototype.showSnapLine=function(e,t){var n=this.getSnapLine(e);n&&n.update(t),this._asyncHide()},eg.prototype.getSnapLine=function(e){return this._snapLines||this._createSnapLines(),this._snapLines[e]},eg.prototype.hide=function(){b(this._snapLines,function(e){e.update()})};var tg={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",Gy],resizeSnapping:["type",Zy],snapping:["type",eg]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",jy],createMoveSnapping:["type",Uy]};function ng(e,t,n,i){this._open=!1,this._results=[],this._eventMaps=[],this._canvas=e,this._eventBus=t,this._overlays=n,this._selection=i,this._container=le(ng.BOX_HTML),this._searchInput=fe(ng.INPUT_SELECTOR,this._container),this._resultsContainer=fe(ng.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy"],this.close,this)}function ig(e,t,n){var i=function(e){var t="";return e.forEach(function(e){e.matched?t+='<strong class="'+ng.RESULT_HIGHLIGHT_CLASS+'">'+Gs(e.matched)+"</strong>":t+=Gs(e.normal)}),""!==t?t:null}(t),r=le(n);r.innerHTML=i,e.appendChild(r)}ng.$inject=["canvas","eventBus","overlays","selection"],ng.prototype._bindEvents=function(){var e=this;function t(t,n,i,r){e._eventMaps.push({el:t,type:i,listener:ue.bind(t,n,i,r)})}t(document,"html","click",function(t){e.close()}),t(this._container,ng.INPUT_SELECTOR,"click",function(e){e.stopPropagation(),e.delegateTarget.focus()}),t(this._container,ng.RESULT_SELECTOR,"mouseover",function(t){t.stopPropagation(),e._scrollToNode(t.delegateTarget),e._preselect(t.delegateTarget)}),t(this._container,ng.RESULT_SELECTOR,"click",function(t){t.stopPropagation(),e._select(t.delegateTarget)}),t(this._container,ng.INPUT_SELECTOR,"keydown",function(e){38===e.keyCode&&e.preventDefault(),40===e.keyCode&&e.preventDefault()}),t(this._container,ng.INPUT_SELECTOR,"keyup",function(t){if(27===t.keyCode)return e.close();if(13===t.keyCode){var n=e._getCurrentResult();return n?e._select(n):e.close()}return 38===t.keyCode?e._scrollToDirection(!0):40===t.keyCode?e._scrollToDirection():void(37!==t.keyCode&&39!==t.keyCode&&e._search(t.delegateTarget.value))})},ng.prototype._unbindEvents=function(){this._eventMaps.forEach(function(e){ue.unbind(e.el,e.type,e.listener)})},ng.prototype._search=function(e){var t=this;if(this._clearResults(),e&&""!==e){var n=this._searchProvider.find(e);if(n.length){n.forEach(function(e){var n=e.element.id,i=t._createResultNode(e,n);t._results[n]={element:e.element,node:i}});var i=fe(ng.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}}},ng.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},ng.prototype._scrollToNode=function(e){if(e&&e!==this._getCurrentResult()){var t=e.offsetTop,n=this._resultsContainer.scrollTop,i=t-this._resultsContainer.clientHeight+e.clientHeight;t<n?this._resultsContainer.scrollTop=t:n<i&&(this._resultsContainer.scrollTop=i)}},ng.prototype._clearResults=function(){X(this._resultsContainer),this._results=[],this._resetOverlay(),this._eventBus.fire("searchPad.cleared")},ng.prototype._getCurrentResult=function(){return fe(ng.RESULT_SELECTED_SELECTOR,this._resultsContainer)},ng.prototype._createResultNode=function(e,t){var n=le(ng.RESULT_HTML);return e.primaryTokens.length>0&&ig(n,e.primaryTokens,ng.RESULT_PRIMARY_HTML),ig(n,e.secondaryTokens,ng.RESULT_SECONDARY_HTML),G(n,ng.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},ng.prototype.registerProvider=function(e){this._searchProvider=e},ng.prototype.open=function(){if(!this._searchProvider)throw new Error("no search provider registered");this.isOpen()||(this._bindEvents(),this._open=!0,K(this._container).add("open"),this._searchInput.focus(),this._eventBus.fire("searchPad.opened"))},ng.prototype.close=function(){this.isOpen()&&(this._unbindEvents(),this._open=!1,K(this._container).remove("open"),this._clearResults(),this._searchInput.value="",this._searchInput.blur(),this._resetOverlay(),this._eventBus.fire("searchPad.closed"))},ng.prototype.toggle=function(){this.isOpen()?this.close():this.open()},ng.prototype.isOpen=function(){return this._open},ng.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&&K(t).remove(ng.RESULT_SELECTED_CLASS);var n=G(e,ng.RESULT_ID_ATTRIBUTE),i=this._results[n].element;K(e).add(ng.RESULT_SELECTED_CLASS),this._resetOverlay(i),this._centerViewbox(i),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},ng.prototype._select=function(e){var t=G(e,ng.RESULT_ID_ATTRIBUTE),n=this._results[t].element;this.close(),this._resetOverlay(),this._centerViewbox(n),this._selection.select(n),this._eventBus.fire("searchPad.selected",n)},ng.prototype._centerViewbox=function(e){var t=this._canvas.viewbox(),n=ft(e),i={x:n.x+n.width/2-t.outer.width/2,y:n.y+n.height/2-t.outer.height/2,width:t.outer.width,height:t.outer.height};this._canvas.viewbox(i),this._canvas.zoom(t.scale)},ng.prototype._resetOverlay=function(e){if(this._overlayId&&this._overlays.remove(this._overlayId),e){var t=function(e){var t=e.width+12,n=e.height+12,i=["width: "+t+"px","height: "+n+"px"].join("; ");return{position:{bottom:n-6,right:t-6},show:!0,html:'<div style="'+i+'" class="'+ng.OVERLAY_CLASS+'"></div>'}}(ft(e));this._overlayId=this._overlays.add(e,t)}},ng.CONTAINER_SELECTOR=".djs-search-container",ng.INPUT_SELECTOR=".djs-search-input input",ng.RESULTS_CONTAINER_SELECTOR=".djs-search-results",ng.RESULT_SELECTOR=".djs-search-result",ng.RESULT_SELECTED_CLASS="djs-search-result-selected",ng.RESULT_SELECTED_SELECTOR="."+ng.RESULT_SELECTED_CLASS,ng.RESULT_ID_ATTRIBUTE="data-result-id",ng.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",ng.OVERLAY_CLASS="djs-search-overlay",ng.BOX_HTML='<div class="djs-search-container djs-draggable djs-scrollable"><div class="djs-search-input"><input type="text"/></div><div class="djs-search-results"></div></div>',ng.RESULT_HTML='<div class="djs-search-result"></div>',ng.RESULT_PRIMARY_HTML='<div class="djs-search-result-primary"></div>',ng.RESULT_SECONDARY_HTML='<p class="djs-search-result-secondary"></p>';var rg={__depends__:[Zo,Wo],searchPad:["type",ng]};function og(e,t,n){this._elementRegistry=e,this._canvas=n,t.registerProvider(this)}function ag(e){return g(e,function(e){return!!e.matched}).length>0}function sg(e,t){var n=[],i=e;if(!e)return n;e=e.toLowerCase(),t=t.toLowerCase();var r=e.indexOf(t);return r>-1?(0!==r&&n.push({normal:i.substr(0,r)}),n.push({matched:i.substr(r,t.length)}),t.length+r<e.length&&n.push({normal:i.substr(t.length+r,e.length)})):n.push({normal:i}),n}og.$inject=["elementRegistry","searchPad","canvas"],og.prototype.find=function(e){var t=this._canvas.getRootElement(),n=this._elementRegistry.filter(function(e){return!e.labelTarget});return n=g(n,function(e){return e!==t}),n=M(n=g(n=S(n,function(t){return{primaryTokens:sg(Ki(t),e),secondaryTokens:sg(t.id,e),element:t}}),function(e){return ag(e.primaryTokens)||ag(e.secondaryTokens)}),function(e){return Ki(e.element)+e.element.id})};var cg={__depends__:[rg],__init__:["bpmnSearch"],bpmnSearch:["type",og]};function pg(e){$i.call(this,e)}return n(pg,$i),pg.Viewer=Qo,pg.NavigatedViewer=ka,pg.prototype.createDiagram=Mi(function(){return this.importXML('<?xml version="1.0" encoding="UTF-8"?><bpmn:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" targetNamespace="http://bpmn.io/schema/bpmn" id="Definitions_1"><bpmn:process id="Process_1" isExecutable="false"><bpmn:startEvent id="StartEvent_1"/></bpmn:process><bpmndi:BPMNDiagram id="BPMNDiagram_1"><bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1"><bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1"><dc:Bounds height="36.0" width="36.0" x="173.0" y="102.0"/></bpmndi:BPMNShape></bpmndi:BPMNPlane></bpmndi:BPMNDiagram></bpmn:definitions>')}),pg.prototype._interactionModules=[ha,_a,Fa,Pa],pg.prototype._modelingModules=[Ua,us,Rs,ys,Tc,Nc,jc,vu,Pp,cp,Eu,Tu,Uu,Ku,Xu,nl,wl,Xv,py,Cy,Ay,ml,tg,cg],pg.prototype._modules=[].concat(Qo.prototype._modules,pg.prototype._interactionModules,pg.prototype._modelingModules),pg});