1/*! bpmn-js - bpmn-modeler v8.8.2 | 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="undefined"!=typeof globalThis?globalThis: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:{},t={exports:{}};"function"==typeof Object.create?t.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}};var n=t.exports;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,t,n){return b(e,(function(e,i){n=t(n,e,i)})),n}function E(e,t){return!!_(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 P(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 A(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];b(i,(function(n){return P(n,e,t)}));var o=S(t,(function(e,t){return e[0]}));return o}var k=A;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(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 G(e,t){var n={};return b(Object(e),(function(e,i){-1===t.indexOf(i)&&(n[i]=e)})),n}function H(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=window.addEventListener?"addEventListener":"attachEvent",ne=window.removeEventListener?"removeEventListener":"detachEvent",ie="addEventListener"!==te?"on":"",re={bind:function(e,t,n,i){return e[te](ie+t,n,i||!1),n},unbind:function(e,t,n,i){return e[ne](ie+t,n,i||!1),n}},oe=["focus","blur"];var ae,se={bind:function(e,t,n,i,r){return-1!==oe.indexOf(n)&&(r=!0),re.bind(e,n,(function(n){var r=n.target||n.srcElement;n.delegateTarget=ee(r,t,!0),n.delegateTarget&&i.call(e,n)}),r)},unbind:function(e,t,n,i){return-1!==oe.indexOf(t)&&(i=!0),re.unbind(e,t,n,i)}},ce=function(e,t){if("string"!=typeof e)throw new TypeError("String expected");t||(t=document);var n=/<([\w:]+)/.exec(e);if(!n)return t.createTextNode(e);e=e.replace(/^\s+|\s+$/g,"");var i=n[1];if("body"==i){return(r=t.createElement("html")).innerHTML=e,r.removeChild(r.lastChild)}var r,o=ue[i]||ue._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},pe=!1;"undefined"!=typeof document&&((ae=document.createElement("div")).innerHTML='  <link/><table></table><a href="/a">a</a><input type="checkbox"/>',pe=!ae.getElementsByTagName("link").length,ae=void 0);var ue={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:pe?[1,"X<div>","</div>"]:[0,"",""]};function le(e,t){return(t=t||document).querySelector(e)}function he(e,t){return(t=t||document).querySelectorAll(e)}function de(e){e.parentNode&&e.parentNode.removeChild(e)}function fe(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 me(e,t){return fe(t,e),e}ue.td=ue.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],ue.option=ue.optgroup=[1,'<select multiple="multiple">',"</select>"],ue.thead=ue.tbody=ue.colgroup=ue.caption=ue.tfoot=[1,"<table>","</table>"],ue.polyline=ue.ellipse=ue.polygon=ue.circle=ue.text=ue.line=ue.path=ue.rect=ue.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];var ve={"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":2,"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":2,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function ye(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=ve[i];r?(2===r&&"number"==typeof n&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function ge(e,t,n){if("string"==typeof t){if(void 0===n)return function(e,t){return ve[t]?e.style[t]:e.getAttributeNS(null,t)}(e,t);ye(e,t,n)}else!function(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)ye(e,i,t[i])}(e,t);return e}function be(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 xe=/\s+/,_e=Object.prototype.toString;function Ee(e){return void 0!==e}function we(e){return new Se(e)}function Se(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function Ce(e){var t=e.parentNode;return t&&t.removeChild(e),e}function Te(e){for(var t;t=e.firstChild;)Ce(t);return e}function Re(e){return e.cloneNode(!0)}Se.prototype.add=function(e){if(this.list)return this.list.add(e),this;var t=this.array();return~be(t,e)||t.push(e),Ee(this.el.className.baseVal)?this.el.className.baseVal=t.join(" "):this.el.className=t.join(" "),this},Se.prototype.remove=function(e){if("[object RegExp]"===_e.call(e))return this.removeMatching(e);if(this.list)return this.list.remove(e),this;var t=this.array(),n=be(t,e);return~n&&t.splice(n,1),this.el.className.baseVal=t.join(" "),this},Se.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},Se.prototype.toggle=function(e,t){return this.list?(Ee(t)?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this):(Ee(t)?t?this.add(e):this.remove(e):this.has(e)?this.remove(e):this.add(e),this)},Se.prototype.array=function(){var e=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(xe);return""===e[0]&&e.shift(),e},Se.prototype.has=Se.prototype.contains=function(e){return this.list?this.list.contains(e):!!~be(this.array(),e)};var Pe="http://www.w3.org/2000/svg",Ae='<svg xmlns="'+Pe+'"';function ke(e){var t=!1;"<svg"===e.substring(0,4)?-1===e.indexOf(Pe)&&(e=Ae+e.substring(4)):(e=Ae+">"+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 Me(e,t){var n;return"<"===e.charAt(0)?(n=ke(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(Pe,e),t&&ge(n,t),n}var De=Me("svg");function Be(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function Ne(e){return e?De.createSVGTransformFromMatrix(e):De.createSVGTransform()}var Oe=/([&<>]{1})/g,je=/([\n\r"]{1})/g,Le={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"'"};function Ie(e,t){return e.replace(t,(function(e,t){return Le[t]||t}))}function ze(e,t){var n,i,r,o,a;switch(e.nodeType){case 3:t.push(Ie(e.textContent,Oe));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,'="',Ie(o.value,je),'"');if(e.hasChildNodes()){for(t.push(">"),n=0,i=(a=e.childNodes).length;n<i;++n)ze(a.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("\x3c!--",Ie(e.nodeValue,Oe),"--\x3e");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function Fe(e,t){var n=ke(t);if(Te(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++)fe(r[o],e)}}function $e(e,t){if(void 0!==t){try{Fe(e,t)}catch(e){throw new Error("error parsing SVG: "+e.message)}return e}return function(e){for(var t=e.firstChild,n=[];t;)ze(t,n),t=t.nextSibling;return n.join("")}(e)}function Ge(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function He(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(Ge(e,i))}(n,t)),n.consolidate()}var We=/^class /;function Ve(e){return"[object Array]"===Object.prototype.toString.call(e)}function Ue(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function qe(){var e=Array.prototype.slice.call(arguments);1===e.length&&Ve(e[0])&&(e=e[0]);var t=e.pop();return t.$inject=e,t}var Ke=/constructor\s*[^(]*\(\s*([^)]*)\)/m,Ye=/^(?:async )?(?:function\s*)?[^(]*\(\s*([^)]*)\)/m,Xe=/\/\*([^*]*)\*\//m;function Ze(e){if("function"!=typeof e)throw new Error('Cannot annotate "'+e+'". Expected a function!');var t=e.toString().match(function(e){return We.test(e.toString())}(e)?Ke:Ye);return t&&t[1]&&t[1].split(",").map((function(e){return(t=e.match(Xe))?t[1].trim():e.trim()}))||[]}function Qe(){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)}}function Je(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){if(!i[e]&&-1!==e.indexOf(".")){for(var c=e.split("."),p=s(c.shift());c.length;)p=p[c.shift()];return p}if(Ue(r,e))return r[e];if(Ue(i,e)){if(-1!==n.indexOf(e))throw n.push(e),a("Cannot resolve circular dependency!");return n.push(e),r[e]=i[e][0](i[e][1]),n.pop(),r[e]}return t.get(e,o)},c=function(e,t){if(void 0===t&&(t={}),"function"!=typeof e){if(!Ve(e))throw new Error('Cannot invoke "'+e+'". Expected a function!');e=qe(e.slice())}return{fn:e,dependencies:(e.$inject||Ze(e)).map((function(e){return Ue(t,e)?t[e]:s(e)}))}},p=function(e){var t=c(e),n=t.fn,i=t.dependencies;return new(Function.prototype.bind.apply(n,[null].concat(i)))},u=function(e,t,n){var i=c(e,n),r=i.fn,o=i.dependencies;return r.apply(t,o)},l=function(e){return qe((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&&Ve(t)&&(t=qe(t.slice())),t}if(e instanceof Qe)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"==typeof 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 Je((e.__modules__||[]).concat([n]),o),a=qe((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 Je(e,o)}}function et(e,t){var n=this;t=t||1e3,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 tt(e){return e.join(",").replace(/,?([A-z]),?/g,"$1")}function nt(e){for(var t,n="",i=0;t=e[i];i++)n+=t.x+","+t.y+" ";return n}function it(e,t){var n=Me("polyline");return ge(n,{points:nt(e)}),t&&ge(n,t),n}function rt(e){return g(e,(function(t){return!y(e,(function(e){return e!==t&&ot(t,e)}))}))}function ot(e,t){if(t){if(e===t)return t;if(e.parent)return ot(e.parent,t)}}function at(e,t,n){var i=!n||-1===e.indexOf(t);return i&&e.push(t),i}function st(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&&st(r,t,n+1)}))}function ct(e,t){return function(e,t,n){var i=[],r=[];return st(e,(function(e,o,a){at(i,e,t);var s=e.children;if((-1===n||a<n)&&s&&at(r,s,t))return s})),i}(e,!t,-1)}function pt(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=pt(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 ut(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function lt(e){return!(!e||!e.isFrame)}function ht(e,t){return F({},e||{},t||{})}et.prototype.canRender=function(){},et.prototype.drawShape=function(){},et.prototype.drawConnection=function(){},et.prototype.getShapePath=function(){},et.prototype.getConnectionPath=function(){};function dt(e,t){et.call(this,e,1),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(dt,et),dt.prototype.canRender=function(){return!0},dt.prototype.drawShape=function(e,t){var n=Me("rect");return ge(n,{x:0,y:0,width:t.width||0,height:t.height||0}),lt(t)?ge(n,this.FRAME_STYLE):ge(n,this.SHAPE_STYLE),me(e,n),n},dt.prototype.drawConnection=function(e,t){var n=it(t.waypoints,this.CONNECTION_STYLE);return me(e,n),n},dt.prototype.getShapePath=function(e){var t=e.x,n=e.y,i=e.width;return tt([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])},dt.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 tt(r)},dt.$inject=["eventBus","styles"];var ft={__init__:["defaultRenderer"],defaultRenderer:["type",dt],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=_(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 mt(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return-1!==n&&e.splice(n,1),n}function vt(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 yt(e,t){return e&&t?e.indexOf(t):-1}function gt(e,t){return e&&t?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):-1}function bt(e,t,n,i){if(void 0===i&&(i=5),!e||!t||!n)return!1;var r=(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x),o=gt(e,t);return Math.abs(r/o)<=i}function xt(e,t){var n;return function(e,t){var n;n=l(e)?e:[e,t];var i=n.slice().shift();return E(n,(function(e){return Math.abs(i.y-e.y)<=2}))}(n=l(e)?e:[e,t])?"h":!!function(e,t){var n;n=l(e)?e:[e,t];var i=n.slice().shift();return E(n,(function(e){return Math.abs(i.x-e.x)<=2}))}(n)&&"v"}function _t(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 Et(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}
3/**
4	 * This file contains source code adapted from Snap.svg (licensed Apache-2.0).
5	 *
6	 * @see https://github.com/adobe-webplatform/Snap.svg/blob/master/src/path.js
7	 */var wt=/,?([a-z]),?/gi,St=parseFloat,Ct=Math,Tt=Ct.PI,Rt=Ct.min,Pt=Ct.max,At=Ct.pow,kt=Ct.abs,Mt=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/gi,Dt=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/gi,Bt=Array.isArray||function(e){return e instanceof Array};function Nt(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Ot(e){if("function"==typeof e||Object(e)!==e)return e;var t=new e.constructor;for(var n in e)Nt(e,n)&&(t[n]=Ot(e[n]));return t}function jt(e,t){for(var n=0,i=e.length;n<i;n++)if(e[n]===t)return e.push(e.splice(n,1)[0])}function Lt(e){var t=Lt.ps=Lt.ps||{};return t[e]?t[e].sleep=100:t[e]={sleep:100},setTimeout((function(){for(var n in t)Nt(t,n)&&n!=e&&(t[n].sleep--,!t[n].sleep&&delete t[n])})),t[e]}function It(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 zt(){return this.join(",").replace(wt,"$1")}function Ft(e){var t=Ot(e);return t.toString=zt,t}function $t(e,t,n,i,r,o,a,s,c){var p=1-c,u=At(p,3),l=At(p,2),h=c*c*c,d=u*t+3*l*c*i+3*p*c*c*o+h*s;return{x:qt(u*e+3*l*c*n+3*p*c*c*r+h*a),y:qt(d)}}function Gt(e){var t=en.apply(null,e);return It(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function Ht(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function Wt(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 Vt(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=Wt(f,e,n,r,a),v=Wt(f,t,i,o,s),y=m*m+v*v;h+=l[d]*Ct.sqrt(y)}return p*h}function Ut(e,t,n,i,r,o,a,s){if(!(Pt(e,n)<Rt(r,a)||Rt(e,n)>Pt(r,a)||Pt(t,i)<Rt(o,s)||Rt(t,i)>Pt(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=qt(((e*i-t*n)*(r-a)-(e-n)*(r*s-o*a))/p),l=qt(c/p),h=+u.toFixed(2),d=+l.toFixed(2);if(!(h<+Rt(e,n).toFixed(2)||h>+Pt(e,n).toFixed(2)||h<+Rt(r,a).toFixed(2)||h>+Pt(r,a).toFixed(2)||d<+Rt(t,i).toFixed(2)||d>+Pt(t,i).toFixed(2)||d<+Rt(o,s).toFixed(2)||d>+Pt(o,s).toFixed(2)))return{x:u,y:l}}}}function qt(e){return Math.round(1e11*e)/1e11}function Kt(e,t,n){if(!function(e,t){return e=It(e),Ht(t=It(t),e.x,e.y)||Ht(t,e.x2,e.y)||Ht(t,e.x,e.y2)||Ht(t,e.x2,e.y2)||Ht(e,t.x,t.y)||Ht(e,t.x2,t.y)||Ht(e,t.x,t.y2)||Ht(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)}(Gt(e),Gt(t)))return n?0:[];for(var i=Vt.apply(0,e),r=Vt.apply(0,t),o=Xt(e)?1:~~(i/5)||1,a=Xt(t)?1:~~(r/5)||1,s=[],c=[],p={},u=n?0:[],l=0;l<o+1;l++){var h=$t.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=$t.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=kt(v.x-m.x)<.01?"y":"x",x=kt(g.x-y.x)<.01?"y":"x",_=Ut(m.x,m.y,v.x,v.y,y.x,y.y,g.x,g.y);if(_){if(p[f=_.x.toFixed(9)+"#"+_.y.toFixed(9)])continue;p[f]=!0;var E=m.t+kt((_[b]-m[b])/(v[b]-m[b]))*(v.t-m.t),w=y.t+kt((_[x]-y[x])/(g[x]-y[x]))*(g.t-y.t);E>=0&&E<=1&&w>=0&&w<=1&&(n?u++:u.push({x:_.x,y:_.y,t1:E,t2:w}))}}return u}function Yt(e){var t=Lt(e);if(t.abs)return Ft(t.abs);if(Bt(e)&&Bt(e&&e[0])||(e=function(e){if(!e)return null;var t=Lt(e);if(t.arr)return Ot(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 Bt(e)&&Bt(e[0])&&(i=Ot(e)),i.length||String(e).replace(Mt,(function(e,t,r){var o=[],a=t.toLowerCase();for(r.replace(Dt,(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=Lt.toString,t.arr=Ot(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=zt,t.abs=Ft(i),i}function Xt(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function Zt(e,t,n,i){return[e,t,n,i,n,i]}function Qt(e,t,n,i,r,o){var a=1/3,s=2/3;return[a*e+s*n,a*t+s*i,a*r+s*n,a*o+s*i,r,o]}function Jt(e,t,n,i,r,o,a,s,c,p){var u,l,h=120*Tt/180,d=Tt/180*(+r||0),f=[],m=(l=function(e,t,n){return{x:e*Ct.cos(n)-t*Ct.sin(n),y:e*Ct.sin(n)+t*Ct.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 Nt(i,n)?(jt(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],E=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=Ct.sqrt(g),i*=g);var b=n*n,x=i*i,_=(o==a?-1:1)*Ct.sqrt(kt((b*x-b*y*y-x*v*v)/(b*y*y+x*v*v))),E=_*n*y/i+(e+s)/2,w=_*-i*v/n+(t+c)/2,S=Ct.asin(((t-w)/i).toFixed(9)),C=Ct.asin(((c-w)/i).toFixed(9));(S=e<E?Tt-S:S)<0&&(S=2*Tt+S),(C=s<E?Tt-C:C)<0&&(C=2*Tt+C),a&&S>C&&(S-=2*Tt),!a&&C>S&&(C-=2*Tt)}var T=C-S;if(kt(T)>h){var R=C,P=s,A=c;C=S+h*(a&&C>S?1:-1),f=Jt(s=E+n*Ct.cos(C),c=w+i*Ct.sin(C),n,i,r,0,a,P,A,[C,R,E,w])}T=C-S;var k=Ct.cos(S),M=Ct.sin(S),D=Ct.cos(C),B=Ct.sin(C),N=Ct.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 $=[],G=0,H=(f=[I,z,F].concat(f).join().split(",")).length;G<H;G++)$[G]=G%2?m(f[G-1],f[G],d).y:m(f[G],f[G+1],d).x;return $}function en(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),kt(c)<1e-12){if(kt(p)<1e-12)continue;0<(l=-u/p)&&l<1&&v.push(l)}else f=p*p-4*u*c,m=Ct.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));for(var b,x=v.length,_=x;x--;)b=1-(l=v[x]),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,y[1][_]=t,y[0][_+1]=a,y[1][_+1]=s,y[0].length=y[1].length=_+2,{x0:Rt.apply(0,y[0]),y0:Rt.apply(0,y[1]),x1:Pt.apply(0,y[0]),y1:Pt.apply(0,y[1])}}function tn(e){var t=Lt(e);if(t.curve)return Ft(t.curve);for(var n=Yt(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(Jt.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(Qt(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(Qt(t.x,t.y,e[1],e[2],e[3],e[4]));break;case"L":e=["C"].concat(Zt(t.x,t.y,e[1],e[2]));break;case"H":e=["C"].concat(Zt(t.x,t.y,e[1],t.y));break;case"V":e=["C"].concat(Zt(t.x,t.y,t.x,e[1]));break;case"Z":e=["C"].concat(Zt(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=St(l[h-4])||i.x,i.by=St(l[h-3])||i.y}return t.curve=Ft(n),n}var nn=function(e,t,n){e=tn(e),t=tn(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=Kt(l,h,n);if(n)d+=x;else{for(var _=0,E=x.length;_<E;_++)x[_].segment1=f,x[_].segment2=y,x[_].bez1=l,x[_].bez2=h;d=d.concat(x)}}}}}return d};function rn(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function on(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function an(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function sn(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function cn(e){return on({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function pn(e,t,n){h(n=n||0)||(n={x:n,y:n});var i=an(e),r=an(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 un(e,t,n){var i=nn(e,t);return 1===i.length||2===i.length&&gt(i[0],i[1])<1?on(i[0]):i.length>1?on((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 ln(e,t){return Math.round(e*t)/t}function hn(e){return d(e)?e+"px":e}function dn(e,t,n){var i=Me("g");we(i).add(t);var r=void 0!==n?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}var fn="base",mn="djs-element-hidden",vn={shape:["x","y","width","height"],connection:["waypoints"]};function yn(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._init(e||{})}function gn(e,t){var n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}yn.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],yn.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:hn(e.width),height:hn(e.height)}),t.appendChild(n),n}(e),i=this._svg=Me("svg");ge(i,{width:"100%",height:"100%"}),me(n,i);var r=this._viewport=dn(i,"viewport");this._layers={},this._planes={},!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)},yn.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._planes,delete this._activePlane,delete this._viewport},yn.prototype._clear=function(){var e=this;this._elementRegistry.getAll().forEach((function(t){var n=ut(t);"root"===n?e.setRootElementForPlane(null,e.findPlane(t),!0):e._removeElement(t,n)})),this._activePlane=null,this._planes={},delete this._cachedViewbox},yn.prototype.getDefaultLayer=function(){return this.getLayer(fn)},yn.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},yn.prototype._createLayer=function(e,t){t||(t=0);var n=_(this._layers,(function(e,n){return t>=n.index&&e++,e}),0);return{group:dn(this._viewport,"layer-"+e,n),index:t}},yn.prototype.getPlane=function(e){if(!e)throw new Error("must specify a name");return this._planes[e]},yn.prototype.createPlane=function(e,t){if(!e)throw new Error("must specify a name");if(this._planes[e])throw new Error("plane "+e+" already exists");t||(t={id:"__implicitroot"+e,children:[],isImplicit:!0});var n=this.getLayer(e);we(n).add(mn);var i=this._planes[e]={layer:n,name:e,rootElement:null};return this.setRootElementForPlane(t,i),i},yn.prototype.setActivePlane=function(e){if(!e)throw new Error("must specify a plane");return"string"==typeof e&&(e=this.getPlane(e)),this._activePlane&&we(this._activePlane.layer).add(mn),this._activePlane=e,we(e.layer).remove(mn),e.rootElement&&this._elementRegistry.updateGraphics(e.rootElement,this._svg,!0),this._eventBus.fire("plane.set",{plane:e}),e},yn.prototype.getActiveLayer=function(){return this.getActivePlane().layer},yn.prototype.getActivePlane=function(){var e=this._activePlane;return e||(e=this.createPlane(fn),this.setActivePlane(fn)),e},yn.prototype.findPlane=function(e){"string"==typeof e&&(e=this._elementRegistry.get(e));var t=function(e){for(;e.parent;)e=e.parent;return e}(e);return y(this._planes,(function(e){return e.rootElement===t}))},yn.prototype.getContainer=function(){return this._container},yn.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?we(e).add(t):we(e).remove(t))})),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},yn.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},yn.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},yn.prototype.hasMarker=function(e,t){return e.id||(e=this._elementRegistry.get(e)),we(this.getGraphics(e)).has(t)},yn.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},yn.prototype.getRootElement=function(){return this.getActivePlane().rootElement},yn.prototype.setRootElement=function(e,t){var n=this._activePlane;if(n)return this.setRootElementForPlane(e,n,t);var i=this.createPlane(fn,e);return this.setActivePlane(i),i.rootElement},yn.prototype.setRootElementForPlane=function(e,t,n){"string"==typeof t&&(t=this.getPlane(t)),e&&this._ensureValid("root",e);var i=t.rootElement,r=this._elementRegistry,o=this._eventBus;if(i){if(!n)throw new Error("rootElement already set, need to specify override");o.fire("root.remove",{element:i}),o.fire("root.removed",{element:i}),r.remove(i)}if(e){var a=t.layer;o.fire("root.add",{element:e}),r.add(e,a),o.fire("root.added",{element:e,gfx:a}),t===this._activePlane&&this._elementRegistry.updateGraphics(e,this._svg,!0)}return t.rootElement=e,e},yn.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=vn[e];if(!E(n,(function(e){return void 0!==t[e]})))throw new Error("must supply { "+n.join(", ")+" } with "+e)},yn.prototype._setParent=function(e,t,n){vt(t.children,e,n),e.parent=t},yn.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},yn.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},yn.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},yn.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),mt(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},yn.prototype.removeShape=function(e){return this._removeElement(e,"shape")},yn.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},yn.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},yn.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},yn.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},yn.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);He(s,t)})),e):(t=this.getDefaultLayer().getBBox(),n=(i=He(s))?i.matrix:function(e,t,n,i,r,o){var a=De.createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return Be(a,e);case 6:return Be(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}(),r=ln(n.a,1e3),o=ln(-n.e||0,1e3),a=ln(-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})},yn.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),gn(t,n)})),{x:n.e,y:n.f}},yn.prototype.scrollToElement=function(e,t){var n=100,i=this.findPlane(e);i!==this._activePlane&&this.setActivePlane(i),t||(t={}),"number"==typeof t&&(n=t),t={top:t.top||n,right:t.right||n,bottom:t.bottom||n,left:t.left||n};var r,o,a=pt(e),s=an(a),c=this.viewbox(),p=this.zoom();c.y+=t.top/p,c.x+=t.left/p,c.width-=(t.right+t.left)/p,c.height-=(t.bottom+t.top)/p;var u=an(c);if(a.width<c.width&&a.height<c.height){var l=Math.max(0,s.right-u.right),h=Math.min(0,s.left-u.left),d=Math.max(0,s.bottom-u.bottom),f=Math.min(0,s.top-u.top);r=l||h,o=d||f}else r=a.x-c.x,o=a.y-c.y;this.scroll({dx:-r*p,dy:-o*p})},yn.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)})),ln(i.a,1e3)):this.viewbox(e).scale;var n,i},yn.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},yn.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),gn(this._viewport,o),o},yn.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},yn.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}},yn.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var bn="data-element-id";function xn(e){this._elements={},this._eventBus=e}xn.$inject=["eventBus"],xn.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),ge(t,bn,i),n&&ge(n,bn,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},xn.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(ge(i.gfx,bn,""),i.secondaryGfx&&ge(i.secondaryGfx,bn,""),delete t[n])},xn.prototype.updateId=function(e,t){this._validateId(t),"string"==typeof e&&(e=this.get(e)),this._eventBus.fire("element.updateId",{element:e,newId:t});var n=this.getGraphics(e),i=this.getGraphics(e,!0);this.remove(e),e.id=t,this.add(e,n,i)},xn.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,ge(t,bn,i),t},xn.prototype.get=function(e){var t;t="string"==typeof e?e:e&&ge(e,bn);var n=this._elements[t];return n&&n.element},xn.prototype.filter=function(e){var t=[];return this.forEach((function(n,i){e(n,i)&&t.push(n)})),t},xn.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=t[n[i]],o=r.element;if(e(o,r.gfx))return o}},xn.prototype.getAll=function(){return this.filter((function(e){return e}))},xn.prototype.forEach=function(e){var t=this._elements;Object.keys(t).forEach((function(n){var i=t[n],r=i.element,o=i.gfx;return e(r,o)}))},xn.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},xn.prototype._validateId=function(e){if(!e)throw new Error("element must have an id");if(this._elements[e])throw new Error("element with id "+e+" already added")};var _n={exports:{}},En={};En.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},En.isExtended=function(e){return!0===e.__refs_collection};var wn=En;function Sn(e,t,n){var i=wn.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 Cn(e,t){if(!(this instanceof Cn))return new Cn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Cn.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?Sn(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)},Cn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return wn.isExtended(n)||Sn(this,t,e),n},Cn.prototype.ensureBound=function(e,t){(function(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)})(e,t)||this.bind(e,t)},Cn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Cn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Tn=Cn;_n.exports=Tn,_n.exports.Collection=En;var Rn=_n.exports,Pn=new Rn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),An=new Rn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),kn=new Rn({name:"attachers",collection:!0},{name:"host"}),Mn=new Rn({name:"outgoing",collection:!0},{name:"source"}),Dn=new Rn({name:"incoming",collection:!0},{name:"target"});function Bn(){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)}}),Pn.bind(this,"parent"),An.bind(this,"labels"),Mn.bind(this,"outgoing"),Dn.bind(this,"incoming")}function Nn(){Bn.call(this),Pn.bind(this,"children"),kn.bind(this,"host"),kn.bind(this,"attachers")}function On(){Nn.call(this)}function jn(){Nn.call(this),An.bind(this,"labelTarget")}function Ln(){Bn.call(this),Mn.bind(this,"source"),Dn.bind(this,"target")}n(Nn,Bn),n(On,Nn),n(jn,Nn),n(Ln,Bn);var In={connection:Ln,shape:Nn,label:jn,root:On};function zn(){this._uid=12}zn.prototype.createRoot=function(e){return this.create("root",e)},zn.prototype.createLabel=function(e){return this.create("label",e)},zn.prototype.createShape=function(e){return this.create("shape",e)},zn.prototype.createConnection=function(e){return this.create("connection",e)},zn.prototype.create=function(e,t){return(t=F({},t||{})).id||(t.id=e+"_"+this._uid++),function(e,t){var n=In[e];if(!n)throw new Error("unknown type: <"+e+">");return F(new n,t)}(e,t)};var Fn=Array.prototype.slice;function $n(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function Gn(){}function Hn(e){return e.childNodes[0]}function Wn(e,t,n,i,r){var o=Ne();o.setTranslate(t,n);var a=Ne();a.setRotate(i||0,0,0);var s=Ne();s.setScale(r||1,r||1),He(e,[o,a,s])}function Vn(e,t,n){var i=Ne();i.setTranslate(t,n),He(e,i)}function Un(e,t){var n=Ne();n.setRotate(t,0,0),He(e,n)}function qn(e,t){this._eventBus=e,this._elementRegistry=t}function Kn(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}$n.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})}))},$n.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(){o.__isTomb=!0;var t=n.apply(i,arguments);return r.off(e,o),t}o.__fn=n,this.on(e,t,o)},$n.prototype.off=function(e,t){e=l(e)?e:[e];var n=this;e.forEach((function(e){n._removeListener(e,t)}))},$n.prototype.createEvent=function(e){var t=new Gn;return t.init(e),t},$n.prototype.fire=function(e,t){var n,i,r,o;if(o=Fn.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 Gn?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}},$n.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},$n.prototype._destroy=function(){this._listeners={}},$n.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},$n.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return 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",e),e}return i},$n.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)},$n.prototype._getListeners=function(e){return this._listeners[e]},$n.prototype._setListeners=function(e,t){this._listeners[e]=t},$n.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)},Gn.prototype.stopPropagation=function(){this.cancelBubble=!0},Gn.prototype.preventDefault=function(){this.defaultPrevented=!0},Gn.prototype.init=function(e){F(this,e||{})},qn.$inject=["eventBus","elementRegistry"],qn.prototype._getChildrenContainer=function(e){var t,n=this._elementRegistry.getGraphics(e);return e.parent?(t=function(e){return e.parentNode.childNodes[1]}(n))||(we(t=Me("g")).add("djs-children"),me(n.parentNode,t)):t=n,t},qn.prototype._clear=function(e){var t=Hn(e);return X(t),t},qn.prototype._createContainer=function(e,t,n,i){var r=Me("g");we(r).add("djs-group"),void 0!==n?Kn(r,t,t.childNodes[n]):me(t,r);var o=Me("g");we(o).add("djs-element"),we(o).add("djs-"+e),i&&we(o).add("djs-frame"),me(r,o);var a=Me("g");return we(a).add("djs-visual"),me(o,a),o},qn.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,lt(t))},qn.prototype.updateContainments=function(e){var t=this,n=this._elementRegistry;b(_(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){Kn(n.getGraphics(e).parentNode,r)}))}}))},qn.prototype.drawShape=function(e,t){return this._eventBus.fire("render.shape",{gfx:e,element:t})},qn.prototype.getShapePath=function(e){return this._eventBus.fire("render.getShapePath",e)},qn.prototype.drawConnection=function(e,t){return this._eventBus.fire("render.connection",{gfx:e,element:t})},qn.prototype.getConnectionPath=function(e){return this._eventBus.fire("render.getConnectionPath",e)},qn.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if("shape"===e)this.drawShape(i,t),Vn(n,t.x,t.y);else{if("connection"!==e)throw new Error("unknown type: "+e);this.drawConnection(i,t)}t.hidden?ge(n,"display","none"):ge(n,"display","block")}},qn.prototype.remove=function(e){Ce(this._elementRegistry.getGraphics(e).parentNode)};var Yn={__depends__:[ft],__init__:["canvas"],canvas:["type",yn],elementRegistry:["type",xn],elementFactory:["type",zn],eventBus:["type",$n],graphicsFactory:["type",qn]};function Xn(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 Je(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 Zn(e,t){this.injector=t=t||function(e){return Xn([{config:["value",e=e||{}]},Yn].concat(e.modules||[]))}(e),this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("diagram.init")}function Qn(){}function Jn(e,t){this.model=e,this.properties=t}Zn.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},Zn.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")},Qn.prototype.get=function(e){return this.$model.properties.get(this,e)},Qn.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},Jn.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(Qn.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 ei={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},ti={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}};function ni(e,t){var n=ti[e];return n?n(t):t}function ii(e){return!!ei[e]}function ri(e){return!!ti[e]}function oi(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 ai(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function si(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,b(e,I(this.registerPackage,this))}function ci(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function pi(e){this.model=e}function ui(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function li(e){this.properties=new pi(this),this.factory=new Jn(this,this.properties),this.registry=new si(e,this.properties),this.typeCache={}}ai.prototype.build=function(){return $(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},ai.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)},ai.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},ai.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=oi(r[0],i),a=oi(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},ai.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},ai.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},ai.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},ai.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},ai.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")},ai.prototype.hasProperty=function(e){return this.propertiesByName[e]},ai.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)},si.prototype.getPackage=function(e){return this.packageMap[e]},si.prototype.getPackages=function(){return this.packages},si.prototype.registerPackage=function(e){e=F({},e);var t=this.packageMap;ci(t,e,"prefix"),ci(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)},si.prototype.registerType=function(e,t){var n=oi((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=oi(e.name,n.prefix),i=t.name;ii(e.type)||(e.type=oi(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},si.prototype.mapTypes=function(e,t,n){var i=ii(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(e){return a(e,!0)}function a(n,i){var o=oi(n,ii(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)},si.prototype.getEffectiveDescriptor=function(e){var t=oi(e),n=new ai(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},si.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},pi.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:ui(e,i,n):e.$attrs[t]=n},pi.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&&ui(e,n,[]),e[i]},pi.prototype.define=function(e,t,n){Object.defineProperty(e,t,n)},pi.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},pi.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},li.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},li.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},li.prototype.createAny=function(e,t,n){var i=oi(e),r={$type:e,$instanceOf:function(e){return e===this.$type}},o={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(r,o),this.properties.defineModel(r,this),this.properties.define(r,"$parent",{enumerable:!1,writable:!0}),this.properties.define(r,"$instanceOf",{enumerable:!1,writable:!0}),b(n,(function(e,t){h(e)&&void 0!==e.value?r[e.name]=e.value:r[t]=e})),r},li.prototype.getPackage=function(e){return this.registry.getPackage(e)},li.prototype.getPackages=function(){return this.registry.getPackages()},li.prototype.getElementDescriptor=function(e){return e.$descriptor},li.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},li.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},li.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var hi=String.fromCharCode,di=Object.prototype.hasOwnProperty,fi=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,mi={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function vi(e,t,n,i){return i?di.call(mi,i)?mi[i]:"&"+i+";":hi(t||parseInt(n,16))}function yi(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(fi,vi):e}Object.keys(mi).forEach((function(e){mi[e.toUpperCase()]=mi[e]}));var gi="xsi:type",bi="non-whitespace outside of root node";function xi(e){return new Error(e)}function _i(e){return"missing namespace for prefix <"+e+">"}function Ei(e){return{get:e,enumerable:!0}}function wi(e){var t,n={};for(t in e)n[t]=e[t];return n}function Si(e){return e+"$uri"}function Ci(){return{line:0,column:0}}function Ti(e){throw e}function Ri(e){if(!this)return new Ri(e);var t,n,i,r,o,a,s,c,p,u=e&&e.proxy,l=Ti,h=Ci,d=!1,f=!1,m=null,v=!1;function y(e){e instanceof Error||(e=xi(e)),m=e,l(e,h)}function g(e){o&&(e instanceof Error||(e=xi(e)),o(e,h))}this.on=function(e,p){if("function"!=typeof p)throw xi("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 xi("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw xi("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return n["http://www.w3.org/2001/XMLSchema-instance"]="xsi",f=!0,p=n,this},this.parse=function(e){if("string"!=typeof e)throw xi("required args <xml=string>");return m=null,function(e){var o,l,m,b,x,_,E,w,S,C,T,R=f?[]:null,P=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[Si(n)]=t;return i}(p):null,A=[],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&&P.xmlns,m=f&&d?[]:null,v=j,y=O,b=y.length,x={},_={};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 _)g("attribute <"+s+"> already defined");else if(_[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=yi(o),t=Si(r),!(a=p[e])){if("xmlns"===r||t in P&&P[t]!==e)do{a="ns"+k++}while(void 0!==P[a]);else a=r;p[e]=a}P[r]!==a&&(i||(P=wi(P),i=!0),P[r]=a,"xmlns"===r&&(P[Si(a)]=e,h=a),P[t]=e),x[s]=o;continue}m.push(s,o)}else-1!==(u=s.indexOf(":"))?(n=P[s.substring(0,u)])?((s=h===n?s.substr(u+1):n+s.substr(u))===gi&&(-1!==(u=o.indexOf(":"))?(n=o.substring(0,u),o=(n=P[n]||n)+o.substring(u)):o=h+":"+o),x[s]=o):g(_i(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=P[s.substring(0,u)])){g(_i(s.substring(0,u)));continue}(s=h===n?s.substr(u+1):n+s.substr(u))===gi&&(-1!==(u=o.indexOf(":"))?(n=o.substring(0,u),o=(n=P[n]||n)+o.substring(u)):o=h+":"+o)}x[s]=o}return T=x}function I(){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}}h=I,u&&(C=Object.create({},{name:Ei((function(){return w})),originalName:Ei((function(){return S})),attrs:Ei(L),ns:Ei((function(){return P}))}));for(;-1!==N;){if(-1===(B=60===e.charCodeAt(N)?N:e.indexOf("<",N)))return A.length?y("unexpected end of file"):0===N?y("missing start tag"):void(N<e.length&&e.substring(N).trim()&&g(bi));if(N!==B)if(A.length){if(t&&(t(e.substring(N,B),yi,h),v))return}else if(e.substring(N,B).trim()&&(g(bi),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),yi,h),v))return;N+=3;continue}}if(63!==x){for(l=B+1;;l++){if(_=e.charCodeAt(l),isNaN(_))return N=-1,y("unclosed tag");if(34===_)l=-1!==(b=e.indexOf('"',l+1))?b:l;else if(39===_)l=-1!==(b=e.indexOf("'",l+1))?b:l;else if(62===_){N=l;break}}if(33!==x){if(T={},47===x){if(M=!1,D=!0,!A.length)return y("missing open tag");if(l=w=A.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||A.push(w)}if(f){if(o=P,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(!(E=P[w.substring(0,x)]))return y("missing namespace on <"+S+">");w=w.substr(x+1)}else E=P.xmlns;E&&(w=E+":"+w)}if(M&&(j=b,O=l,n&&(u?n(C,yi,D,h):n(w,L,yi,D,h),v)))return;if(D){if(i&&(i(u?C:w,yi,M,h),v))return;f&&(P=M?o:R.pop())}N+=1}else{if(c&&(c(e.substring(B,N+1),yi,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=Ci,v=!1,m},this.stop=function(){v=!0}}function Pi(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var Ai={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},ki="xsi:type";function Mi(e){return e.xml&&e.xml.serialize}function Di(e){return Mi(e)===ki}function Bi(e,t){return Pi(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function Ni(e){return new Error(e)}function Oi(e){return e.$descriptor}function ji(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 Ni("expected element");var t,n=this.elementsById,i=Oi(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 Ni("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function Li(){}function Ii(){}function zi(){}function Fi(e,t){this.property=e,this.context=t}function $i(e,t){this.element=t,this.propertyDesc=e}function Gi(){}function Hi(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function Wi(e,t,n){Hi.call(this,e,t,n)}function Vi(e,t,n){this.model=e,this.context=n}function Ui(e){e instanceof li&&(e={model:e}),F(this,{lax:!1},e)}Li.prototype.handleEnd=function(){},Li.prototype.handleText=function(){},Li.prototype.handleNode=function(){},Ii.prototype=Object.create(Li.prototype),Ii.prototype.handleNode=function(){return this},zi.prototype=Object.create(Li.prototype),zi.prototype.handleText=function(e){this.body=(this.body||"")+e},Fi.prototype=Object.create(zi.prototype),Fi.prototype.handleNode=function(e){if(this.element)throw Ni("expected no sub nodes");return this.element=this.createReference(e),this},Fi.prototype.handleEnd=function(){this.element.id=this.body},Fi.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},$i.prototype=Object.create(zi.prototype),$i.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=ni(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},Gi.prototype=Object.create(zi.prototype),Gi.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},Hi.prototype=Object.create(Gi.prototype),Hi.prototype.addReference=function(e){this.context.addReference(e)},Hi.prototype.handleText=function(e){if(!Oi(this.element).bodyProperty)throw Ni("unexpected body text <"+e+">");zi.prototype.handleText.call(this,e)},Hi.prototype.handleEnd=function(){var e=this.body,t=this.element,n=Oi(t).bodyProperty;n&&void 0!==e&&(e=ni(n.type,e),t.set(n.name,e))},Hi.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,r=Oi(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=ni(i.type,e):"xmlns"!==n&&(t=oi(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},Hi.prototype.getPropertyForNode=function(e){var t,n,i=oi(e.name),r=this.type,o=this.model,a=Oi(r),s=i.name,c=a.propertiesByName[s];if(c&&!c.isAttr)return Di(c)&&(t=e.attributes[ki])?(t=function(e,t){var n=oi(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:Oi(n=o.getType(t)).name})):c;var p=o.getPackage(i.prefix);if(p){if(t=Bi(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:Oi(n).name})}else if(c=y(a.properties,(function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type})))return c;throw Ni("unrecognized element <"+i.name+">")},Hi.prototype.toString=function(){return"ElementDescriptor["+Oi(this.type).name+"]"},Hi.prototype.valueHandler=function(e,t){return new $i(e,t)},Hi.prototype.referenceHandler=function(e){return new Fi(e,this.context)},Hi.prototype.handler=function(e){return"Element"===e?new Vi(this.model,e,this.context):new Hi(this.model,e,this.context)},Hi.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,ri(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},Wi.prototype=Object.create(Hi.prototype),Wi.prototype.createElement=function(e){var t=e.name,n=oi(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&Bi(n,o)||t;if(!r.hasType(a))throw Ni("unexpected element <"+e.originalName+">");return Hi.prototype.createElement.call(this,e)},Vi.prototype=Object.create(Gi.prototype),Vi.prototype.createElement=function(e){var t=e.name,n=oi(t).prefix,i=e.ns[n+"$uri"],r=e.attributes;return this.model.createAny(t,i,r)},Vi.prototype.handleChild=function(e){var t=new Vi(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},Vi.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},Ui.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof Hi?(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 ji(F({},t,{rootHandler:i})),s=new Ri({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 Ni(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 Ii)}}({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.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=Oi(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=Ni("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})}))},Ui.prototype.handler=function(e){return new Wi(this.model,e)};var qi=/<|>|'|"|&|\n\r|\n/g,Ki=/<|>|&/g;function Yi(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 Xi(e,t){return Pi(t)?(n=e).charAt(0).toLowerCase()+n.slice(1):e;var n}function Zi(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function Qi(e){return m(e)?e:(e.prefix?e.prefix+":":"")+e.localName}var Ji={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},er={"<":"lt",">":"gt","&":"amp"};function tr(e,t,n){return(e=m(e)?e:""+e).replace(t,(function(e){return"&"+n[e]+";"}))}function nr(e){this.tagName=e}function ir(){}function rr(e){this.tagName=e}function or(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function ar(e,t){or.call(this,e,t)}function sr(){this.value="",this.write=function(e){this.value+=e}}function cr(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 pr(e){return e=F({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new sr,r=new cr(i,e.format);if(e.preamble&&r.append('<?xml version="1.0" encoding="UTF-8"?>\n'),(new or).build(t).serializeTo(r),!n)return i.value}}}function ur(e,t){li.call(this,e,t)}nr.prototype.build=function(e){return this.element=e,this},nr.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},ir.prototype.serializeValue=ir.prototype.serializeTo=function(e){e.append(this.escape?tr(this.value,Ki,er):this.value)},ir.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(Ki)&&(this.escape=!0),this},Zi(rr,ir),rr.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},or.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(!v(e,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},or.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?F({localName:t.ns.localName},e):F({localName:Xi(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},or.prototype.nsPropertyTagName=function(e){return function(e,t){return F({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},or.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},or.prototype.nsAttributeName=function(e){var t;if(t=m(e)?oi(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)},or.prototype.parseGeneric=function(e){var t=this,n=this.body,i=[];return b(e,(function(r,o){"$body"===o?n.push((new ir).build({type:"String"},r)):"$children"===o?b(r,(function(e){n.push(new or(t).build(e))})):0!==o.indexOf("$")&&t.parseNsAttribute(e,o,r)&&i.push({name:o,value:r})})),i},or.prototype.parseNsAttribute=function(e,t,n){var i,r=e.$model,o=oi(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)}},or.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},or.prototype.parseGenericAttributes=function(e,t){var n=this;b(t,(function(t){if(t.name!==ki)try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){console.warn("missing namespace information for ",t.name,"=",t.value,"on",e,n)}}))},or.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 ir).build(e,r[0]));else if(ri(e.type))b(r,(function(i){n.push(new rr(t.addTagName(t.nsPropertyTagName(e))).build(e,i))}));else if(o)b(r,(function(i){n.push(new nr(t.addTagName(t.nsPropertyTagName(e))).build(i))}));else{var a=Di(e),s=function(e){return"property"===Mi(e)}(e);b(r,(function(i){var r;r=a?new ar(t,e):s?new or(t,e):new or(t),n.push(r.build(i))}))}}))},or.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new Yi(t):n=t),n},or.prototype.logNamespace=function(e,t,n){var i=this.getNamespaces(n),r=e.uri,o=e.prefix;return i.byUri(r)&&!n||i.add(e,t),i.mapPrefix(o,r),e},or.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=Ai[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},or.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)}))},or.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),Qi(e)},or.prototype.addAttribute=function(e,t){var n=this.attrs;m(t)&&(t=tr(t,qi,Ji)),n.push({name:e,value:t})},or.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return e.getUsed().filter((function(e){return"xml"!==e.prefix})).map((function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}}))}(n).concat(t)),b(t,(function(t){e.append(" ").append(Qi(t.name)).append('="').append(t.value).append('"')}))},or.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==ir;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()},Zi(ar,or),ar.prototype.parseNsAttributes=function(e){var t=or.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(ki),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},ar.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},ur.prototype=Object.create(li.prototype),ur.prototype.fromXML=function(e,t,n){m(t)||(n=t,t="bpmn:Definitions");var i=new Ui(F({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},ur.prototype.toXML=function(e,t){var n=new pr(t);return new Promise((function(t,i){try{return t({xml:n.toXML(e)})}catch(e){return i(e)}}))};var lr={bpmn:{name:"BPMN20",uri:"http://www.omg.org/spec/BPMN/20100524/MODEL",prefix:"bpmn",associations:[],types:[{name:"Interface",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"operations",type:"Operation",isMany:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"Operation",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"inMessageRef",type:"Message",isReference:!0},{name:"outMessageRef",type:"Message",isReference:!0},{name:"errorRef",type:"Error",isMany:!0,isReference:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"EndPoint",superClass:["RootElement"]},{name:"Auditing",superClass:["BaseElement"]},{name:"GlobalTask",superClass:["CallableElement"],properties:[{name:"resources",type:"ResourceRole",isMany:!0}]},{name:"Monitoring",superClass:["BaseElement"]},{name:"Performer",superClass:["ResourceRole"]},{name:"Process",superClass:["FlowElementsContainer","CallableElement"],properties:[{name:"processType",type:"ProcessType",isAttr:!0},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"properties",type:"Property",isMany:!0},{name:"laneSets",isMany:!0,replaces:"FlowElementsContainer#laneSets",type:"LaneSet"},{name:"flowElements",isMany:!0,replaces:"FlowElementsContainer#flowElements",type:"FlowElement"},{name:"artifacts",type:"Artifact",isMany:!0},{name:"resources",type:"ResourceRole",isMany:!0},{name:"correlationSubscriptions",type:"CorrelationSubscription",isMany:!0},{name:"supports",type:"Process",isMany:!0,isReference:!0},{name:"definitionalCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"isExecutable",isAttr:!0,type:"Boolean"}]},{name:"LaneSet",superClass:["BaseElement"],properties:[{name:"lanes",type:"Lane",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Lane",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"partitionElementRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"partitionElement",type:"BaseElement"},{name:"flowNodeRef",type:"FlowNode",isMany:!0,isReference:!0},{name:"childLaneSet",type:"LaneSet",xml:{serialize:"xsi:type"}}]},{name:"GlobalManualTask",superClass:["GlobalTask"]},{name:"ManualTask",superClass:["Task"]},{name:"UserTask",superClass:["Task"],properties:[{name:"renderings",type:"Rendering",isMany:!0},{name:"implementation",isAttr:!0,type:"String"}]},{name:"Rendering",superClass:["BaseElement"]},{name:"HumanPerformer",superClass:["Performer"]},{name:"PotentialOwner",superClass:["HumanPerformer"]},{name:"GlobalUserTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"renderings",type:"Rendering",isMany:!0}]},{name:"Gateway",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"gatewayDirection",type:"GatewayDirection",default:"Unspecified",isAttr:!0}]},{name:"EventBasedGateway",superClass:["Gateway"],properties:[{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"eventGatewayType",type:"EventBasedGatewayType",isAttr:!0,default:"Exclusive"}]},{name:"ComplexGateway",superClass:["Gateway"],properties:[{name:"activationCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ExclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"InclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ParallelGateway",superClass:["Gateway"]},{name:"RootElement",isAbstract:!0,superClass:["BaseElement"]},{name:"Relationship",superClass:["BaseElement"],properties:[{name:"type",isAttr:!0,type:"String"},{name:"direction",type:"RelationshipDirection",isAttr:!0},{name:"source",isMany:!0,isReference:!0,type:"Element"},{name:"target",isMany:!0,isReference:!0,type:"Element"}]},{name:"BaseElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,type:"String",isId:!0},{name:"documentation",type:"Documentation",isMany:!0},{name:"extensionDefinitions",type:"ExtensionDefinition",isMany:!0,isReference:!0},{name:"extensionElements",type:"ExtensionElements"}]},{name:"Extension",properties:[{name:"mustUnderstand",default:!1,isAttr:!0,type:"Boolean"},{name:"definition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"extensionAttributeDefinitions",type:"ExtensionAttributeDefinition",isMany:!0}]},{name:"ExtensionAttributeDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"type",isAttr:!0,type:"String"},{name:"isReference",default:!1,isAttr:!0,type:"Boolean"},{name:"extensionDefinition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionElements",properties:[{name:"valueRef",isAttr:!0,isReference:!0,type:"Element"},{name:"values",type:"Element",isMany:!0},{name:"extensionAttributeDefinition",type:"ExtensionAttributeDefinition",isAttr:!0,isReference:!0}]},{name:"Documentation",superClass:["BaseElement"],properties:[{name:"text",type:"String",isBody:!0},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Event",isAbstract:!0,superClass:["FlowNode","InteractionNode"],properties:[{name:"properties",type:"Property",isMany:!0}]},{name:"IntermediateCatchEvent",superClass:["CatchEvent"]},{name:"IntermediateThrowEvent",superClass:["ThrowEvent"]},{name:"EndEvent",superClass:["ThrowEvent"]},{name:"StartEvent",superClass:["CatchEvent"],properties:[{name:"isInterrupting",default:!0,isAttr:!0,type:"Boolean"}]},{name:"ThrowEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"inputSet",type:"InputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"CatchEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"parallelMultiple",isAttr:!0,type:"Boolean",default:!1},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"outputSet",type:"OutputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"BoundaryEvent",superClass:["CatchEvent"],properties:[{name:"cancelActivity",default:!0,isAttr:!0,type:"Boolean"},{name:"attachedToRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"EventDefinition",isAbstract:!0,superClass:["RootElement"]},{name:"CancelEventDefinition",superClass:["EventDefinition"]},{name:"ErrorEventDefinition",superClass:["EventDefinition"],properties:[{name:"errorRef",type:"Error",isAttr:!0,isReference:!0}]},{name:"TerminateEventDefinition",superClass:["EventDefinition"]},{name:"EscalationEventDefinition",superClass:["EventDefinition"],properties:[{name:"escalationRef",type:"Escalation",isAttr:!0,isReference:!0}]},{name:"Escalation",properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"escalationCode",isAttr:!0,type:"String"}],superClass:["RootElement"]},{name:"CompensateEventDefinition",superClass:["EventDefinition"],properties:[{name:"waitForCompletion",isAttr:!0,type:"Boolean",default:!0},{name:"activityRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"TimerEventDefinition",superClass:["EventDefinition"],properties:[{name:"timeDate",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeCycle",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeDuration",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"LinkEventDefinition",superClass:["EventDefinition"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"target",type:"LinkEventDefinition",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","InteractionNode"],properties:[{name:"calledElement",type:"String",isAttr:!0}]},{name:"Task",superClass:["Activity","InteractionNode"]},{name:"SendTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ReceiveTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ScriptTask",superClass:["Task"],properties:[{name:"scriptFormat",isAttr:!0,type:"String"},{name:"script",type:"String"}]},{name:"BusinessRuleTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"AdHocSubProcess",superClass:["SubProcess"],properties:[{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"ordering",type:"AdHocOrdering",isAttr:!0},{name:"cancelRemainingInstances",default:!0,isAttr:!0,type:"Boolean"}]},{name:"Transaction",superClass:["SubProcess"],properties:[{name:"protocol",isAttr:!0,type:"String"},{name:"method",isAttr:!0,type:"String"}]},{name:"GlobalScriptTask",superClass:["GlobalTask"],properties:[{name:"scriptLanguage",isAttr:!0,type:"String"},{name:"script",isAttr:!0,type:"String"}]},{name:"GlobalBusinessRuleTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"ComplexBehaviorDefinition",superClass:["BaseElement"],properties:[{name:"condition",type:"FormalExpression"},{name:"event",type:"ImplicitThrowEvent"}]},{name:"ResourceRole",superClass:["BaseElement"],properties:[{name:"resourceRef",type:"Resource",isReference:!0},{name:"resourceParameterBindings",type:"ResourceParameterBinding",isMany:!0},{name:"resourceAssignmentExpression",type:"ResourceAssignmentExpression"},{name:"name",isAttr:!0,type:"String"}]},{name:"ResourceParameterBinding",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"parameterRef",type:"ResourceParameter",isAttr:!0,isReference:!0}],superClass:["BaseElement"]},{name:"ResourceAssignmentExpression",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}}],superClass:["BaseElement"]},{name:"Import",properties:[{name:"importType",isAttr:!0,type:"String"},{name:"location",isAttr:!0,type:"String"},{name:"namespace",isAttr:!0,type:"String"}]},{name:"Definitions",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"targetNamespace",isAttr:!0,type:"String"},{name:"expressionLanguage",default:"http://www.w3.org/1999/XPath",isAttr:!0,type:"String"},{name:"typeLanguage",default:"http://www.w3.org/2001/XMLSchema",isAttr:!0,type:"String"},{name:"imports",type:"Import",isMany:!0},{name:"extensions",type:"Extension",isMany:!0},{name:"rootElements",type:"RootElement",isMany:!0},{name:"diagrams",isMany:!0,type:"bpmndi:BPMNDiagram"},{name:"exporter",isAttr:!0,type:"String"},{name:"relationships",type:"Relationship",isMany:!0},{name:"exporterVersion",isAttr:!0,type:"String"}]}],enumerations:[{name:"ProcessType",literalValues:[{name:"None"},{name:"Public"},{name:"Private"}]},{name:"GatewayDirection",literalValues:[{name:"Unspecified"},{name:"Converging"},{name:"Diverging"},{name:"Mixed"}]},{name:"EventBasedGatewayType",literalValues:[{name:"Parallel"},{name:"Exclusive"}]},{name:"RelationshipDirection",literalValues:[{name:"None"},{name:"Forward"},{name:"Backward"},{name:"Both"}]},{name:"ItemKind",literalValues:[{name:"Physical"},{name:"Information"}]},{name:"ChoreographyLoopType",literalValues:[{name:"None"},{name:"Standard"},{name:"MultiInstanceSequential"},{name:"MultiInstanceParallel"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"MultiInstanceBehavior",literalValues:[{name:"None"},{name:"One"},{name:"All"},{name:"Complex"}]},{name:"AdHocOrdering",literalValues:[{name:"Parallel"},{name:"Sequential"}]}],xml:{tagAlias:"lowerCase",typePrefix:"t"}},bpmndi:{name:"BPMNDI",uri:"http://www.omg.org/spec/BPMN/20100524/DI",prefix:"bpmndi",types:[{name:"BPMNDiagram",properties:[{name:"plane",type:"BPMNPlane",redefines:"di:Diagram#rootElement"},{name:"labelStyle",type:"BPMNLabelStyle",isMany:!0}],superClass:["di:Diagram"]},{name:"BPMNPlane",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"}],superClass:["di:Plane"]},{name:"BPMNShape",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"isHorizontal",isAttr:!0,type:"Boolean"},{name:"isExpanded",isAttr:!0,type:"Boolean"},{name:"isMarkerVisible",isAttr:!0,type:"Boolean"},{name:"label",type:"BPMNLabel"},{name:"isMessageVisible",isAttr:!0,type:"Boolean"},{name:"participantBandKind",type:"ParticipantBandKind",isAttr:!0},{name:"choreographyActivityShape",type:"BPMNShape",isAttr:!0,isReference:!0}],superClass:["di:LabeledShape"]},{name:"BPMNEdge",properties:[{name:"label",type:"BPMNLabel"},{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"sourceElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#source"},{name:"targetElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#target"},{name:"messageVisibleKind",type:"MessageVisibleKind",isAttr:!0,default:"initiating"}],superClass:["di:LabeledEdge"]},{name:"BPMNLabel",properties:[{name:"labelStyle",type:"BPMNLabelStyle",isAttr:!0,isReference:!0,redefines:"di:DiagramElement#style"}],superClass:["di:Label"]},{name:"BPMNLabelStyle",properties:[{name:"font",type:"dc:Font"}],superClass:["di:Style"]}],enumerations:[{name:"ParticipantBandKind",literalValues:[{name:"top_initiating"},{name:"middle_initiating"},{name:"bottom_initiating"},{name:"top_non_initiating"},{name:"middle_non_initiating"},{name:"bottom_non_initiating"}]},{name:"MessageVisibleKind",literalValues:[{name:"initiating"},{name:"non_initiating"}]}],associations:[]},dc:{name:"DC",uri:"http://www.omg.org/spec/DD/20100524/DC",prefix:"dc",types:[{name:"Boolean"},{name:"Integer"},{name:"Real"},{name:"String"},{name:"Font",properties:[{name:"name",type:"String",isAttr:!0},{name:"size",type:"Real",isAttr:!0},{name:"isBold",type:"Boolean",isAttr:!0},{name:"isItalic",type:"Boolean",isAttr:!0},{name:"isUnderline",type:"Boolean",isAttr:!0},{name:"isStrikeThrough",type:"Boolean",isAttr:!0}]},{name:"Point",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0}]},{name:"Bounds",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0},{name:"width",type:"Real",isAttr:!0},{name:"height",type:"Real",isAttr:!0}]}],associations:[]},di:{name:"DI",uri:"http://www.omg.org/spec/DD/20100524/DI",prefix:"di",types:[{name:"DiagramElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"extension",type:"Extension"},{name:"owningDiagram",type:"Diagram",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"owningElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"modelElement",isReadOnly:!0,isVirtual:!0,isReference:!0,type:"Element"},{name:"style",type:"Style",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"ownedElement",type:"DiagramElement",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Node",isAbstract:!0,superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,superClass:["DiagramElement"],properties:[{name:"source",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"target",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"waypoint",isUnique:!1,isMany:!0,type:"dc:Point",xml:{serialize:"xsi:type"}}]},{name:"Diagram",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"rootElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0},{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"},{name:"ownedStyle",type:"Style",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Shape",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Plane",isAbstract:!0,superClass:["Node"],properties:[{name:"planeElement",type:"DiagramElement",subsettedProperty:"DiagramElement-ownedElement",isMany:!0}]},{name:"LabeledEdge",isAbstract:!0,superClass:["Edge"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"LabeledShape",isAbstract:!0,superClass:["Shape"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"Label",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],associations:[],xml:{tagAlias:"lowerCase"}},bioc:{name:"bpmn.io colors for BPMN",uri:"http://bpmn.io/schema/bpmn/biocolor/1.0",prefix:"bioc",types:[{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]},color:{name:"BPMN in Color",uri:"http://www.omg.org/spec/BPMN/non-normative/color/1.0",prefix:"color",types:[{name:"ColoredLabel",extends:["bpmndi:BPMNLabel"],properties:[{name:"color",isAttr:!0,type:"String"}]},{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"background-color",isAttr:!0,type:"String"},{name:"border-color",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"border-color",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]}};function hr(e,t){return new ur(F({},lr,e),t)}function dr(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}var fr=new Rn({name:"bpmnElement",enumerable:!0},{name:"di",configurable:!0});function mr(e,t){return e.$instanceOf(t)}function vr(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:dr(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:dr(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:dr(n)}),{element:n}):(fr.bind(n,"di"),n.di=e):s(t("no bpmnElement referenced in {element}",{element:dr(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){P(e,t),E(e.ioSpecification,t),_(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,t){b(e,(function(e){mr(e,"bpmn:Association")?i.push((function(){x(e,t)})):x(e,t)}))}function E(e,t){e&&(b(e.dataInputs,r(m,t)),b(e.dataOutputs,r(v,t)))}function w(e,t){P(e,t),_(e.artifacts,t)}function S(e,t){var n=a(e,t);mr(e,"bpmn:SubProcess")&&w(e,n||t),mr(e,"bpmn:Activity")&&E(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 P(e,n){!function(e,n){b(e,(function(e){mr(e,"bpmn:SequenceFlow")?i.push((function(){!function(e,t){a(e,t)}(e,n)})):mr(e,"bpmn:BoundaryEvent")?i.unshift((function(){S(e,n)})):mr(e,"bpmn:FlowNode")?S(e,n):mr(e,"bpmn:DataObject")||(mr(e,"bpmn:DataStoreReference")||mr(e,"bpmn:DataObjectReference")?C(e,n):s(t("unrecognized flowElement {element} in context {context}",{element:dr(e),context:n?dr(n.businessObject):"null"}),{element:e,context:n}))}))}(e.flowElements,n),e.laneSets&&function(e,t){b(e,r(R,t))}(e.laneSets,n)}function A(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:dr(a)}));var m=f.bpmnElement;if(!m){if(!(m=function(e){return y(e.rootElements,(function(e){return mr(e,"bpmn:Process")||mr(e,"bpmn:Collaboration")}))}(o)))throw new Error(t("no process or collaboration to display"));s(t("correcting missing bpmnElement on {plane} to {rootElement}",{plane:dr(f),rootElement:dr(m)})),f.bpmnElement=m,c(f)}var v,x=function(t,n){return e.root(t,n)}(m,f);if(mr(m,"bpmn:Process"))h(m,x);else{if(!mr(m,"bpmn:Collaboration"))throw new Error(t("unsupported bpmnElement for {plane}: {rootElement}",{plane:dr(f),rootElement:dr(m)}));b((v=m).participants,r(A)),_(v.artifacts),i.push((function(){var e;b(v.messageFlows,r(d,e))})),function(e,t){g(e,(function(e){return!n[e.id]&&mr(e,"bpmn:Process")&&e.laneSets})).forEach(r(h,t))}(o.rootElements,x)}l()},handleSubProcess:w,registerDi:c}}function yr(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 vr({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:undefined,warnings:a}),s({warnings:a})}catch(e){return e.warnings=a,c(e)}}))}function gr(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)}))}}
8/**
9	 * This file must not be changed or exchanged.
10	 *
11	 * @see http://bpmn.io/license for more information.
12	 */var br='<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 xr(e){return e.join(";")}var _r,Er=xr(["color: #404040"]),wr='<div class="bjs-powered-by-lightbox" style="'+xr(["z-index: 1001","position: fixed","top: 0","left: 0","right: 0","bottom: 0"])+'"><div class="backdrop" style="'+xr(["width: 100%","height: 100%","background: rgba(40,40,40,0.2)"])+'"></div><div class="notice" style="'+xr(["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;'+Er+'">'+br+'</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>';
13/**
14	 * The code in the <project-logo></project-logo> area
15	 * must not be changed.
16	 *
17	 * @see http://bpmn.io/license for more information.
18	 */
19function Sr(e){
20/**
21	 * Adds the project logo to the diagram container as
22	 * required by the bpmn.io license.
23	 *
24	 * @see http://bpmn.io/license
25	 *
26	 * @param {Element} container
27	 */
28var t,n;e=F({},Tr,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),t=this._container,n=ce('<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; '+Er+'">'+br+"</a>"),t.appendChild(n),re.bind(n,"click",(function(e){_r||(_r=ce(wr),se.bind(_r,".backdrop","click",(function(e){document.body.removeChild(_r)}))),document.body.appendChild(_r),e.preventDefault()})),this._init(this._container,this._moddle,e)}function Cr(e,t){return e.warnings=t,e}n(Sr,Zn),Sr.prototype.importXML=gr((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(Cr(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)}))}))})),Sr.prototype.importDefinitions=gr((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)}))}))})),Sr.prototype.open=gr((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(Cr(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(Cr(s,[]))}try{i.clear()}catch(e){return o(Cr(e,[]))}yr(i,t,n).then((function(e){var t=e.warnings;return r({warnings:t})})).catch((function(e){return o(e)}))}))})),Sr.prototype.saveXML=gr((function(e){e=e||{};var t=this,n=this._definitions;return new Promise((function(i){if(!n)return i({error:new Error("no definitions loaded")});n=t._emit("saveXML.start",{definitions:n})||n,t._moddle.toXML(n,e).then((function(e){var n=e.xml;return n=t._emit("saveXML.serialized",{xml:n})||n,i({xml:n})}))})).catch((function(e){return{error:e}})).then((function(e){t._emit("saveXML.done",e);var n=e.error;return n?Promise.reject(n):e}))})),Sr.prototype.saveSVG=gr((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=le("defs",o._svg),c=$e(a),p=s?"<defs>"+$e(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})}))})),Sr.prototype._setDefinitions=function(e){this._definitions=e},Sr.prototype.getModules=function(){return this._modules},Sr.prototype.clear=function(){this.getDefinitions()&&(this.get("elementRegistry").forEach((function(e){var t=e.businessObject;t&&t.di&&delete t.di})),Zn.prototype.clear.call(this))},Sr.prototype.destroy=function(){Zn.prototype.destroy.call(this),de(this._container)},Sr.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},Sr.prototype.off=function(e,t){this.get("eventBus").off(e,t)},Sr.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=le(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},Sr.prototype.getDefinitions=function(){return this._definitions},Sr.prototype.detach=function(){var e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},Sr.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(G(n,["additionalModules"]),{canvas:F({},n.canvas,{container:e}),modules:o});Zn.call(this,a),n&&n.container&&this.attachTo(n.container)},Sr.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},Sr.prototype._createContainer=function(e){var t=ce('<div class="bjs-container"></div>');return F(t.style,{width:Rr(e.width),height:Rr(e.height),position:e.position}),t},Sr.prototype._createModdle=function(e){return new hr(F({},this._moddleExtensions,e.moddleExtensions))},Sr.prototype._modules=[];var Tr={width:"100%",height:"100%",position:"relative"};function Rr(e){return e+(d(e)?"px":"")}function Pr(e){Sr.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 Ar(e,t){var n=kr(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function kr(e){return e&&e.businessObject||e}function Mr(e){return!Ar(e,"bpmn:CallActivity")&&(Ar(e,"bpmn:SubProcess")?kr(e).di&&!!kr(e).di.isExpanded:!Ar(e,"bpmn:Participant")||!!kr(e).processRef)}function Dr(e){return e&&!!kr(e).triggeredByEvent}function Br(e,t){var n=kr(e),i=!1;return n.eventDefinitions&&b(n.eventDefinitions,(function(e){Ar(e,t)&&(i=!0)})),i}function Nr(e){return Ar(e,"bpmn:FlowElement")||Ar(e,"bpmn:Participant")||Ar(e,"bpmn:Lane")||Ar(e,"bpmn:SequenceFlow")||Ar(e,"bpmn:MessageFlow")||Ar(e,"bpmn:DataInput")||Ar(e,"bpmn:DataOutput")?"name":Ar(e,"bpmn:TextAnnotation")?"text":Ar(e,"bpmn:Group")?"categoryValueRef":void 0}function Or(e){var t=e.businessObject,n=Nr(t);if(n)return"categoryValueRef"===n?function(e){var t=e.categoryValueRef;return t&&t.value||""}(t):t[n]||""}function jr(e,t,n){return w(e.eventDefinitions,(function(i){return i.$type===t&&function(e,t){return E(t,(function(t,n){return e[n]==t}))}(e,n)}))}function Lr(e){return e.businessObject.di}function Ir(e){return e.businessObject}function zr(e,t){var n=Lr(e);return n.get("color:background-color")||n.get("bioc:fill")||t||"white"}function Fr(e,t){var n=Lr(e);return n.get("color:border-color")||n.get("bioc:stroke")||t||"black"}function $r(e,t,n){var i=Lr(e).get("label");return i&&i.get("color:color")||t||Fr(e,n)}n(Pr,Sr),Pr.prototype._createModdle=function(e){var t=Sr.prototype._createModdle.call(this,e);return t.ids=new r([32,36,1]),t},Pr.prototype._collectIds=function(e,t){var n,i=e.$model.ids;for(n in i.clear(),t)i.claim(n,t[n])};var Gr=new r,Hr=.95;function Wr(e,t,n,i,r,o,a){et.call(this,t,a);var s=e&&e.defaultFillColor,c=e&&e.defaultStrokeColor,p=e&&e.defaultLabelColor,u=Gr.next(),l={},d=n.computeStyle;function f(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=Me("marker");ge(t.element,n),me(a,t.element),ge(a,{id:e,viewBox:"0 0 20 20",refX:i.x,refY:i.y,markerWidth:20*o,markerHeight:20*o,orient:"auto"});var s=le("defs",r._svg);s||(s=Me("defs"),me(r._svg,s)),me(s,a),l[e]=a}function m(e){return e.replace(/[^0-9a-zA-z]+/g,"_")}function v(e,t,n){var i=e+"-"+m(t)+"-"+m(n)+"-"+u;return l[i]||function(e,t,n,i){if("sequenceflow-end"===t){var r=Me("path");ge(r,{d:"M 1 5 L 11 10 L 1 15 Z"}),f(e,{element:r,ref:{x:11,y:10},scale:.5,attrs:{fill:i,stroke:i}})}if("messageflow-start"===t){var o=Me("circle");ge(o,{cx:6,cy:6,r:3.5}),f(e,{element:o,attrs:{fill:n,stroke:i},ref:{x:6,y:6}})}if("messageflow-end"===t){var a=Me("path");ge(a,{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z"}),f(e,{element:a,attrs:{fill:n,stroke:i,strokeLinecap:"butt"},ref:{x:8.5,y:5}})}if("association-start"===t){var s=Me("path");ge(s,{d:"M 11 5 L 1 10 L 11 15"}),f(e,{element:s,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:1,y:10},scale:.5})}if("association-end"===t){var c=Me("path");ge(c,{d:"M 1 5 L 11 10 L 1 15"}),f(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=Me("path");ge(p,{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z"}),f(e,{element:p,attrs:{fill:n,stroke:i},ref:{x:-1,y:10},scale:.5})}if("conditional-default-flow-marker"===t){var u=Me("path");ge(u,{d:"M 6 4 L 10 16"}),f(e,{element:u,attrs:{stroke:i},ref:{x:0,y:10},scale:.5})}}(i,e,t,n),"url(#"+i+")"}function y(e,t,n,i,r){h(i)&&(r=i,i=0),i=i||0,"none"===(r=d(r,{stroke:"black",strokeWidth:2,fill:"white"})).fill&&delete r.fillOpacity;var o=t/2,a=n/2,s=Me("circle");return ge(s,{cx:o,cy:a,r:Math.round((t+n)/4-i)}),ge(s,r),me(e,s),s}function g(e,t,n,i,r,o){h(r)&&(o=r,r=0),r=r||0,o=d(o,{stroke:"black",strokeWidth:2,fill:"white"});var a=Me("rect");return ge(a,{x:r,y:r,width:t-2*r,height:n-2*r,rx:i,ry:i}),ge(a,o),me(e,a),a}function x(e,t,n){var i=it(t,n=d(n,["no-fill"],{stroke:"black",strokeWidth:2,fill:"none"}));return me(e,i),i}function _(e,t,n){n=d(n,["no-fill"],{strokeWidth:2,stroke:"black"});var i=Me("path");return ge(i,{d:t}),ge(i,n),me(e,i),i}function E(e,t,n,i){return _(t,n,F({"data-marker":e},i))}function w(e){return function(t,n){return k[e](t,n)}}function S(e){return k[e]}function C(e,t){var n=Ir(e),i=function(e){return"bpmn:IntermediateThrowEvent"===e.$type||"bpmn:EndEvent"===e.$type}(n);return n.eventDefinitions&&n.eventDefinitions.length>1?n.parallelMultiple?S("bpmn:ParallelMultipleEventDefinition")(t,e,i):S("bpmn:MultipleEventDefinition")(t,e,i):jr(n,"bpmn:MessageEventDefinition")?S("bpmn:MessageEventDefinition")(t,e,i):jr(n,"bpmn:TimerEventDefinition")?S("bpmn:TimerEventDefinition")(t,e,i):jr(n,"bpmn:ConditionalEventDefinition")?S("bpmn:ConditionalEventDefinition")(t,e):jr(n,"bpmn:SignalEventDefinition")?S("bpmn:SignalEventDefinition")(t,e,i):jr(n,"bpmn:EscalationEventDefinition")?S("bpmn:EscalationEventDefinition")(t,e,i):jr(n,"bpmn:LinkEventDefinition")?S("bpmn:LinkEventDefinition")(t,e,i):jr(n,"bpmn:ErrorEventDefinition")?S("bpmn:ErrorEventDefinition")(t,e,i):jr(n,"bpmn:CancelEventDefinition")?S("bpmn:CancelEventDefinition")(t,e,i):jr(n,"bpmn:CompensateEventDefinition")?S("bpmn:CompensateEventDefinition")(t,e,i):jr(n,"bpmn:TerminateEventDefinition")?S("bpmn:TerminateEventDefinition")(t,e,i):null}function T(e,t,n){n=F({size:{width:100}},n);var i=o.createText(t||"",n);return we(i).add("djs-label"),me(e,i),i}function R(e,t,n){return T(e,Ir(t).name,{box:t,align:n,padding:5,style:{fill:$r(t,p,c)}})}function P(e,t,n){Wn(T(e,t,{box:{height:30,width:n.height},align:"center-middle",style:{fill:$r(n,p,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 k=this.handlers={"bpmn:Event":function(e,t,n){return"fillOpacity"in n||(n.fillOpacity=Hr),y(e,t.width,t.height,n)},"bpmn:StartEvent":function(e,t){var n={fill:zr(t,s),stroke:Fr(t,c)};Ir(t).isInterrupting||(n={strokeDasharray:"6",strokeLinecap:"round",fill:zr(t,s),stroke:Fr(t,c)});var i=S("bpmn:Event")(e,t,n);return C(t,e),i},"bpmn:MessageEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.235,my:.315}}),{strokeWidth:1,fill:n?Fr(t,c):zr(t,s),stroke:n?zr(t,s):Fr(t,c)})},"bpmn:TimerEventDefinition":function(e,t){var n=y(e,t.width,t.height,.2*t.height,{strokeWidth:2,fill:zr(t,s),stroke:Fr(t,c)});_(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:Fr(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;_(e,o,{strokeWidth:1,strokeLinecap:"square",transform:"rotate("+30*r+","+t.height/2+","+a+")",stroke:Fr(t,c)})}return n},"bpmn:EscalationEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?Fr(t,c):"none",stroke:Fr(t,c)})},"bpmn:ConditionalEventDefinition":function(e,t){return _(e,i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.222}}),{strokeWidth:1,stroke:Fr(t,c)})},"bpmn:LinkEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.57,my:.263}}),{strokeWidth:1,fill:n?Fr(t,c):"none",stroke:Fr(t,c)})},"bpmn:ErrorEventDefinition":function(e,t,n){return _(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?Fr(t,c):"none",stroke:Fr(t,c)})},"bpmn:CancelEventDefinition":function(e,t,n){var r=_(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?Fr(t,c):"none",stroke:Fr(t,c)});return Un(r,45),r},"bpmn:CompensateEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.22,my:.5}}),{strokeWidth:1,fill:n?Fr(t,c):"none",stroke:Fr(t,c)})},"bpmn:SignalEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?Fr(t,c):"none",stroke:Fr(t,c)})},"bpmn:MultipleEventDefinition":function(e,t,n){return _(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?Fr(t,c):"none"})},"bpmn:ParallelMultipleEventDefinition":function(e,t){return _(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:Fr(t,c),stroke:Fr(t,c)})},"bpmn:EndEvent":function(e,t){var n=S("bpmn:Event")(e,t,{strokeWidth:4,fill:zr(t,s),stroke:Fr(t,c)});return C(t,e),n},"bpmn:TerminateEventDefinition":function(e,t){return y(e,t.width,t.height,8,{strokeWidth:4,fill:Fr(t,c),stroke:Fr(t,c)})},"bpmn:IntermediateEvent":function(e,t){var n=S("bpmn:Event")(e,t,{strokeWidth:1,fill:zr(t,s),stroke:Fr(t,c)});return y(e,t.width,t.height,3,{strokeWidth:1,fill:zr(t,"none"),stroke:Fr(t,c)}),C(t,e),n},"bpmn:IntermediateCatchEvent":w("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":w("bpmn:IntermediateEvent"),"bpmn:Activity":function(e,t,n){return"fillOpacity"in(n=n||{})||(n.fillOpacity=Hr),g(e,t.width,t.height,10,n)},"bpmn:Task":function(e,t){var n={fill:zr(t,s),stroke:Fr(t,c)},i=S("bpmn:Activity")(e,t,n);return R(e,t,"center-middle"),M(e,t),i},"bpmn:ServiceTask":function(e,t){var n=S("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}}),{strokeWidth:1,fill:zr(t,s),stroke:Fr(t,c)}),_(e,i.getScaledPath("TASK_TYPE_SERVICE_FILL",{abspos:{x:17.2,y:18}}),{strokeWidth:0,fill:zr(t,s)}),_(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}}),{strokeWidth:1,fill:zr(t,s),stroke:Fr(t,c)}),n},"bpmn:UserTask":function(e,t){var n=S("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:zr(t,s),stroke:Fr(t,c)}),_(e,i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:zr(t,s),stroke:Fr(t,c)}),_(e,i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Fr(t,c),stroke:Fr(t,c)}),n},"bpmn:ManualTask":function(e,t){var n=S("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}}),{strokeWidth:.5,fill:zr(t,s),stroke:Fr(t,c)}),n},"bpmn:SendTask":function(e,t){var n=S("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}}),{strokeWidth:1,fill:Fr(t,c),stroke:zr(t,s)}),n},"bpmn:ReceiveTask":function(e,t){var n,r=Ir(t),o=S("bpmn:Task")(e,t);return r.instantiate?(y(e,28,28,4.4,{strokeWidth:1}),n=i.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):n=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),_(e,n,{strokeWidth:1,fill:zr(t,s),stroke:Fr(t,c)}),o},"bpmn:ScriptTask":function(e,t){var n=S("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}}),{strokeWidth:1,stroke:Fr(t,c)}),n},"bpmn:BusinessRuleTask":function(e,t){var n=S("bpmn:Task")(e,t);return ge(_(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}})),{strokeWidth:1,fill:zr(t,"#aaaaaa"),stroke:Fr(t,c)}),ge(_(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}})),{strokeWidth:1,stroke:Fr(t,c)}),n},"bpmn:SubProcess":function(e,t,n){n=F({fill:zr(t,s),stroke:Fr(t,c)},n);var i=S("bpmn:Activity")(e,t,n),r=Mr(t);return Dr(t)&&ge(i,{strokeDasharray:"1,2"}),R(e,t,r?"center-top":"center-middle"),r?M(e,t):M(e,t,["SubProcessMarker"]),i},"bpmn:AdHocSubProcess":function(e,t){return S("bpmn:SubProcess")(e,t)},"bpmn:Transaction":function(e,t){var i=S("bpmn:SubProcess")(e,t),r=n.style(["no-fill","no-events"],{stroke:Fr(t,c)});return g(e,t.width,t.height,8,3,r),i},"bpmn:CallActivity":function(e,t){return S("bpmn:SubProcess")(e,t,{strokeWidth:5})},"bpmn:Participant":function(e,t){var n={fillOpacity:Hr,fill:zr(t,s),stroke:Fr(t,c)},i=S("bpmn:Lane")(e,t,n);Mr(t)?(x(e,[{x:30,y:0},{x:30,y:t.height}],{stroke:Fr(t,c)}),P(e,Ir(t).name,t)):T(e,Ir(t).name,{box:t,align:"center-middle",style:{fill:$r(t,p,c)}});return!!Ir(t).participantMultiplicity&&S("ParticipantMultiplicityMarker")(e,t),i},"bpmn:Lane":function(e,t,n){var i=g(e,t.width,t.height,0,F({fill:zr(t,s),fillOpacity:.35,stroke:Fr(t,c)},n)),r=Ir(t);"bpmn:Lane"===r.$type&&P(e,r.name,t);return i},"bpmn:InclusiveGateway":function(e,t){var n=S("bpmn:Gateway")(e,t);return y(e,t.width,t.height,.24*t.height,{strokeWidth:2.5,fill:zr(t,s),stroke:Fr(t,c)}),n},"bpmn:ExclusiveGateway":function(e,t){var n=S("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 Lr(t).isMarkerVisible&&_(e,r,{strokeWidth:1,fill:Fr(t,c),stroke:Fr(t,c)}),n},"bpmn:ComplexGateway":function(e,t){var n=S("bpmn:Gateway")(e,t);return _(e,i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.26}}),{strokeWidth:1,fill:Fr(t,c),stroke:Fr(t,c)}),n},"bpmn:ParallelGateway":function(e,t){var n=S("bpmn:Gateway")(e,t);return _(e,i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.2}}),{strokeWidth:1,fill:Fr(t,c),stroke:Fr(t,c)}),n},"bpmn:EventBasedGateway":function(e,t){var n=Ir(t),r=S("bpmn:Gateway")(e,t);y(e,t.width,t.height,.2*t.height,{strokeWidth:1,fill:"none",stroke:Fr(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}});ge(_(e,s),{strokeWidth:1,fill:"none"})}else if("Exclusive"===o){if(!a)ge(y(e,t.width,t.height,.26*t.height),{strokeWidth:1,fill:"none",stroke:Fr(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:zr(t,"none"),stroke:Fr(t,c)};_(e,n,r)}()}return r},"bpmn:Gateway":function(e,t){var n={fill:zr(t,s),fillOpacity:Hr,stroke:Fr(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=d(i,{stroke:"black",strokeWidth:2,fill:"white"});var s=Me("polygon");return ge(s,{points:a}),ge(s,i),me(e,s),s}(e,t.width,t.height,n)},"bpmn:SequenceFlow":function(e,t){var n,i=A(t),r=zr(t,s),o=Fr(t,c),a=_(e,i,{strokeLinejoin:"round",markerEnd:v("sequenceflow-end",r,o),stroke:Fr(t,c)}),p=Ir(t);return t.source&&(n=t.source.businessObject,p.conditionExpression&&n.$instanceOf("bpmn:Activity")&&ge(a,{markerStart:v("conditional-flow-marker",r,o)}),n.default&&(n.$instanceOf("bpmn:Gateway")||n.$instanceOf("bpmn:Activity"))&&n.default===p&&ge(a,{markerStart:v("conditional-default-flow-marker",r,o)})),a},"bpmn:Association":function(e,t,n){var i=Ir(t),r=zr(t,s),o=Fr(t,c);return n=F({strokeDasharray:"0.5, 5",strokeLinecap:"round",strokeLinejoin:"round",stroke:Fr(t,c)},n||{}),"One"!==i.associationDirection&&"Both"!==i.associationDirection||(n.markerEnd=v("association-end",r,o)),"Both"===i.associationDirection&&(n.markerStart=v("association-start",r,o)),x(e,t.waypoints,n)},"bpmn:DataInputAssociation":function(e,t){var n=zr(t,s),i=Fr(t,c);return S("bpmn:Association")(e,t,{markerEnd:v("association-end",n,i)})},"bpmn:DataOutputAssociation":function(e,t){var n=zr(t,s),i=Fr(t,c);return S("bpmn:Association")(e,t,{markerEnd:v("association-end",n,i)})},"bpmn:MessageFlow":function(e,t){var n=Ir(t),r=Lr(t),o=zr(t,s),a=Fr(t,c),u=_(e,A(t),{markerEnd:v("messageflow-end",o,a),markerStart:v("messageflow-start",o,a),strokeDasharray:"10, 12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.5px",stroke:Fr(t,c)});if(n.messageRef){var l=u.getPointAtLength(u.getTotalLength()/2),h=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:l.x,y:l.y}}),d={strokeWidth:1};"initiating"===r.messageVisibleKind?(d.fill="white",d.stroke="black"):(d.fill="#888",d.stroke="white");var f=_(e,h,d),m=T(e,n.messageRef.name,{align:"center-top",fitBox:!0,style:{fill:Fr(t,p)}}),y=f.getBBox(),g=m.getBBox();Wn(m,l.x-g.width/2,l.y+y.height/2+10,0)}return u},"bpmn:DataObject":function(e,t){var n=_(e,i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}}),{fill:zr(t,s),fillOpacity:Hr,stroke:Fr(t,c)});return function(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}(Ir(t))&&function(e,t){var n=(t.height-18)/t.height,r=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.33,my:n}});_(e,r,{strokeWidth:2})}(e,t),n},"bpmn:DataObjectReference":w("bpmn:DataObject"),"bpmn:DataInput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=S("bpmn:DataObject")(e,t);return _(e,n,{strokeWidth:1}),r},"bpmn:DataOutput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=S("bpmn:DataObject")(e,t);return _(e,n,{strokeWidth:1,fill:"black"}),r},"bpmn:DataStoreReference":function(e,t){return _(e,i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.133}}),{strokeWidth:2,fill:zr(t,s),fillOpacity:Hr,stroke:Fr(t,c)})},"bpmn:BoundaryEvent":function(e,t){var n=Ir(t).cancelActivity,i={strokeWidth:1,fill:zr(t,s),stroke:Fr(t,c)};n||(i.strokeDasharray="6",i.strokeLinecap="round");var r=F({},i,{fillOpacity:1}),o=F({},i,{fill:"none"}),a=S("bpmn:Event")(e,t,r);return y(e,t.width,t.height,3,o),C(t,e),a},"bpmn:Group":function(e,t){return g(e,t.width,t.height,10,{stroke:Fr(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 T(e,Or(t),{box:n,fitBox:!0,style:F({},o.getExternalStyle(),{fill:$r(t,p,c)})})}(e,t)},"bpmn:TextAnnotation":function(e,t){var n=g(e,t.width,t.height,0,0,{fill:"none",stroke:"none"});return _(e,i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:0}}),{stroke:Fr(t,c)}),T(e,Ir(t).text||"",{box:t,align:"left-top",padding:5,style:{fill:$r(t,p,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:2,fill:zr(t,s),stroke:Fr(t,c)})},SubProcessMarker:function(e,t){Vn(g(e,14,14,0,{strokeWidth:1,fill:zr(t,s),stroke:Fr(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:zr(t,s),stroke:Fr(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:zr(t,s),stroke:Fr(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:zr(t,s),stroke:Fr(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:zr(t,s),stroke:Fr(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:zr(t,s),stroke:Fr(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:Fr(t,c),stroke:Fr(t,c)})}};function M(e,t,n){var i,r=Ir(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){S(n)(e,t,i)})),r.isForCompensation&&S("CompensationMarker")(e,t,i),"bpmn:AdHocSubProcess"===r.$type&&S("AdhocMarker")(e,t,i);var a=r.loopCharacteristics,s=a&&a.isSequential;a&&(void 0===s&&S("LoopMarker")(e,t,i),!1===s&&S("ParallelMarker")(e,t,i),!0===s&&S("SequentialMarker")(e,t,i))}this._drawPath=_}n(Wr,et),Wr.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],Wr.prototype.canRender=function(e){return Ar(e,"bpmn:BaseElement")},Wr.prototype.drawShape=function(e,t){var n=t.type;return(0,this.handlers[n])(e,t)},Wr.prototype.drawConnection=function(e,t){var n=t.type;return(0,this.handlers[n])(e,t)},Wr.prototype.getShapePath=function(e){return Ar(e,"bpmn:Event")?(n=(t=e).x+t.width/2,i=t.y+t.height/2,r=t.width/2,tt([["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"]])):Ar(e,"bpmn:Activity")?function(e,t){var n=e.x,i=e.y,r=e.width,o=e.height;return tt([["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,10):Ar(e,"bpmn:Gateway")?function(e){var t=e.width/2,n=e.height/2;return tt([["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 tt([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])}(e);var t,n,i,r};var Vr={width:150,height:50};function Ur(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 qr(e,t,n){for(var i,r=e.shift(),o=r;;){if((i=Ur(o,n)).width=o?i.width:0," "===o||""===o||i.width<Math.round(t)||o.length<2)return Kr(e,o,r,i);o=Yr(o,i.width,t)}}function Kr(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 Yr(e,t,n){var i=Math.max(e.length*(n/t),1),r=function(e,t){var n,i=e.split(/(\s|-|\u00AD)/g),r=[],o=0;if(i.length>1)for(;n=i.shift();){if(!(n.length+o<t)){"-"!==n&&"­"!==n||r.pop();break}r.push(n),o+=n.length}var a=r[r.length-1];return a&&"­"===a&&(r[r.length-1]="-"),r.join("")}(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Xr(e){this._config=F({},{size:Vr,padding:0,style:{},align:"center-top"},e||{})}Xr.prototype.createText=function(e,t){return this.layoutText(e,t).element},Xr.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Xr.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(/\u00AD?\r?\n/),p=[],u=n.width-o.left-o.right,l=Me("text");for(ge(l,{x:0,y:0}),ge(l,i),me(function(){var e=document.getElementById("helper-svg");return e||(ge(e=Me("svg"),{id:"helper-svg",width:0,height:0,style:"visibility: hidden; position: fixed"}),document.body.appendChild(e)),e}(),l);c.length;)p.push(qr(c,u,l));"middle"===r.vertical&&(o.top=o.bottom=0);var d=_(p,(function(e,t,n){return e+(s||t.height)}),0)+o.top+o.bottom,f=_(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=Me("text");return ge(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=Me("tspan");ge(n,{x:t,y:m}),n.textContent=e.text,me(v,n)})),Ce(l),{dimensions:{width:f,height:d},element:v}};function Zr(e){var t=F({fontFamily:"Arial, sans-serif",fontSize:12,fontWeight:"normal",lineHeight:1.2},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=F({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Xr({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(30,Math.round(i.height))}},this.createText=function(e,t){return r.createText(e,t||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}Zr.$inject=["config.textRenderer"];var Qr=/\{([^{}]+)\}/g,Jr=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;var eo={__init__:["bpmnRenderer"],bpmnRenderer:["type",Wr],textRenderer:["type",Zr],pathMap:["type",function(){this.pathMap={EVENT_MESSAGE:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:36,width:36,heightElements:[6,14],widthElements:[10.5,21]},EVENT_SIGNAL:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x1},0 Z",height:36,width:36,heightElements:[18],widthElements:[10,20]},EVENT_ESCALATION:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x0},-{e.y1} l -{e.x0},{e.y1} Z",height:36,width:36,heightElements:[20,7],widthElements:[8]},EVENT_CONDITIONAL:{d:"M {e.x0},{e.y0} l {e.x1},0 l 0,{e.y2} l -{e.x1},0 Z M {e.x2},{e.y3} l {e.x0},0 M {e.x2},{e.y4} l {e.x0},0 M {e.x2},{e.y5} l {e.x0},0 M {e.x2},{e.y6} l {e.x0},0 M {e.x2},{e.y7} l {e.x0},0 M {e.x2},{e.y8} l {e.x0},0 ",height:36,width:36,heightElements:[8.5,14.5,18,11.5,14.5,17.5,20.5,23.5,26.5],widthElements:[10.5,14.5,12.5]},EVENT_LINK:{d:"m {mx},{my} 0,{e.y0} -{e.x1},0 0,{e.y1} {e.x1},0 0,{e.y0} {e.x0},-{e.y2} -{e.x0},-{e.y2} z",height:36,width:36,heightElements:[4.4375,6.75,7.8125],widthElements:[9.84375,13.5]},EVENT_ERROR:{d:"m {mx},{my} {e.x0},-{e.y0} {e.x1},-{e.y1} {e.x2},{e.y2} {e.x3},-{e.y3} -{e.x4},{e.y4} -{e.x5},-{e.y5} z",height:36,width:36,heightElements:[.023,8.737,8.151,16.564,10.591,8.714],widthElements:[.085,6.672,6.97,4.273,5.337,6.636]},EVENT_CANCEL_45:{d:"m {mx},{my} -{e.x1},0 0,{e.x0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:36,width:36,heightElements:[4.75,8.5],widthElements:[4.75,8.5]},EVENT_COMPENSATION:{d:"m {mx},{my} {e.x0},-{e.y0} 0,{e.y1} z m {e.x1},-{e.y2} {e.x2},-{e.y3} 0,{e.y1} -{e.x2},-{e.y3} z",height:36,width:36,heightElements:[6.5,13,.4,6.1],widthElements:[9,9.3,8.7]},EVENT_TIMER_WH:{d:"M {mx},{my} l {e.x0},-{e.y0} m -{e.x0},{e.y0} l {e.x1},{e.y1} ",height:36,width:36,heightElements:[10,2],widthElements:[3,7]},EVENT_TIMER_LINE:{d:"M {mx},{my} m {e.x0},{e.y0} l -{e.x1},{e.y1} ",height:36,width:36,heightElements:[10,3],widthElements:[0,0]},EVENT_MULTIPLE:{d:"m {mx},{my} {e.x1},-{e.y0} {e.x1},{e.y0} -{e.x0},{e.y1} -{e.x2},0 z",height:36,width:36,heightElements:[6.28099,12.56199],widthElements:[3.1405,9.42149,12.56198]},EVENT_PARALLEL_MULTIPLE:{d:"m {mx},{my} {e.x0},0 0,{e.y1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} -{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z",height:36,width:36,heightElements:[2.56228,7.68683],widthElements:[2.56228,7.68683]},GATEWAY_EXCLUSIVE:{d:"m {mx},{my} {e.x0},{e.y0} {e.x1},{e.y0} {e.x2},0 {e.x4},{e.y2} {e.x4},{e.y1} {e.x2},0 {e.x1},{e.y3} {e.x0},{e.y3} {e.x3},0 {e.x5},{e.y1} {e.x5},{e.y2} {e.x3},0 z",height:17.5,width:17.5,heightElements:[8.5,6.5312,-6.5312,-8.5],widthElements:[6.5,-6.5,3,-3,5,-5]},GATEWAY_PARALLEL:{d:"m {mx},{my} 0,{e.y1} -{e.x1},0 0,{e.y0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:30,width:30,heightElements:[5,12.5],widthElements:[5,12.5]},GATEWAY_EVENT_BASED:{d:"m {mx},{my} {e.x0},{e.y0} {e.x0},{e.y1} {e.x1},{e.y2} {e.x2},0 z",height:11,width:11,heightElements:[-6,6,12,-12],widthElements:[9,-3,-12]},GATEWAY_COMPLEX:{d:"m {mx},{my} 0,{e.y0} -{e.x0},-{e.y1} -{e.x1},{e.y2} {e.x0},{e.y1} -{e.x2},0 0,{e.y3} {e.x2},0  -{e.x0},{e.y1} l {e.x1},{e.y2} {e.x0},-{e.y1} 0,{e.y0} {e.x3},0 0,-{e.y0} {e.x0},{e.y1} {e.x1},-{e.y2} -{e.x0},-{e.y1} {e.x2},0 0,-{e.y3} -{e.x2},0 {e.x0},-{e.y1} -{e.x1},-{e.y2} -{e.x0},{e.y1} 0,-{e.y0} -{e.x3},0 z",height:17.125,width:17.125,heightElements:[4.875,3.4375,2.125,3],widthElements:[3.4375,2.125,4.875,3]},DATA_OBJECT_PATH:{d:"m 0,0 {e.x1},0 {e.x0},{e.y0} 0,{e.y1} -{e.x2},0 0,-{e.y2} {e.x1},0 0,{e.y0} {e.x0},0",height:61,width:51,heightElements:[10,50,60],widthElements:[10,40,50,60]},DATA_OBJECT_COLLECTION_PATH:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},DATA_ARROW:{d:"m 5,9 9,0 0,-3 5,5 -5,5 0,-3 -9,0 z",height:61,width:51,heightElements:[],widthElements:[]},DATA_STORE:{d:"m  {mx},{my} l  0,{e.y2} c  {e.x0},{e.y1} {e.x1},{e.y1}  {e.x2},0 l  0,-{e.y2} c -{e.x0},-{e.y1} -{e.x1},-{e.y1} -{e.x2},0c  {e.x0},{e.y1} {e.x1},{e.y1}  {e.x2},0 m  -{e.x2},{e.y0}c  {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0m  -{e.x2},{e.y0}c  {e.x0},{e.y1} {e.x1},{e.y1}  {e.x2},0",height:61,width:61,heightElements:[7,10,45],widthElements:[2,58,60]},TEXT_ANNOTATION:{d:"m {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0",height:30,width:10,heightElements:[30],widthElements:[10]},MARKER_SUB_PROCESS:{d:"m{mx},{my} m 7,2 l 0,10 m -5,-5 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_PARALLEL:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},MARKER_SEQUENTIAL:{d:"m{mx},{my} m 0,3 l 10,0 m -10,3 l 10,0 m -10,3 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_COMPENSATION:{d:"m {mx},{my} 7,-5 0,10 z m 7.1,-0.3 6.9,-4.7 0,10 -6.9,-4.7 z",height:10,width:21,heightElements:[],widthElements:[]},MARKER_LOOP:{d:"m {mx},{my} c 3.526979,0 6.386161,-2.829858 6.386161,-6.320661 0,-3.490806 -2.859182,-6.320661 -6.386161,-6.320661 -3.526978,0 -6.38616,2.829855 -6.38616,6.320661 0,1.745402 0.714797,3.325567 1.870463,4.469381 0.577834,0.571908 1.265885,1.034728 2.029916,1.35457 l -0.718163,-3.909793 m 0.718163,3.909793 -3.885211,0.802902",height:13.9,width:13.7,heightElements:[],widthElements:[]},MARKER_ADHOC:{d:"m {mx},{my} m 0.84461,2.64411 c 1.05533,-1.23780996 2.64337,-2.07882 4.29653,-1.97997996 2.05163,0.0805 3.85579,1.15803 5.76082,1.79107 1.06385,0.34139996 2.24454,0.1438 3.18759,-0.43767 0.61743,-0.33642 1.2775,-0.64078 1.7542,-1.17511 0,0.56023 0,1.12046 0,1.6807 -0.98706,0.96237996 -2.29792,1.62393996 -3.6918,1.66181996 -1.24459,0.0927 -2.46671,-0.2491 -3.59505,-0.74812 -1.35789,-0.55965 -2.75133,-1.33436996 -4.27027,-1.18121996 -1.37741,0.14601 -2.41842,1.13685996 -3.44288,1.96782996 z",height:4,width:15,heightElements:[],widthElements:[]},TASK_TYPE_SEND:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:14,width:21,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_SCRIPT:{d:"m {mx},{my} c 9.966553,-6.27276 -8.000926,-7.91932 2.968968,-14.938 l -8.802728,0 c -10.969894,7.01868 6.997585,8.66524 -2.968967,14.938 z m -7,-12 l 5,0 m -4.5,3 l 4.5,0 m -3,3 l 5,0m -4,3 l 5,0",height:15,width:12.6,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_USER_1:{d:"m {mx},{my} c 0.909,-0.845 1.594,-2.049 1.594,-3.385 0,-2.554 -1.805,-4.62199999 -4.357,-4.62199999 -2.55199998,0 -4.28799998,2.06799999 -4.28799998,4.62199999 0,1.348 0.974,2.562 1.89599998,3.405 -0.52899998,0.187 -5.669,2.097 -5.794,4.7560005 v 6.718 h 17 v -6.718 c 0,-2.2980005 -5.5279996,-4.5950005 -6.0509996,-4.7760005 zm -8,6 l 0,5.5 m 11,0 l 0,-5"},TASK_TYPE_USER_2:{d:"m {mx},{my} m 2.162,1.009 c 0,2.4470005 -2.158,4.4310005 -4.821,4.4310005 -2.66499998,0 -4.822,-1.981 -4.822,-4.4310005 "},TASK_TYPE_USER_3:{d:"m {mx},{my} m -6.9,-3.80 c 0,0 2.25099998,-2.358 4.27399998,-1.177 2.024,1.181 4.221,1.537 4.124,0.965 -0.098,-0.57 -0.117,-3.79099999 -4.191,-4.13599999 -3.57499998,0.001 -4.20799998,3.36699999 -4.20699998,4.34799999 z"},TASK_TYPE_MANUAL:{d:"m {mx},{my} c 0.234,-0.01 5.604,0.008 8.029,0.004 0.808,0 1.271,-0.172 1.417,-0.752 0.227,-0.898 -0.334,-1.314 -1.338,-1.316 -2.467,-0.01 -7.886,-0.004 -8.108,-0.004 -0.014,-0.079 0.016,-0.533 0,-0.61 0.195,-0.042 8.507,0.006 9.616,0.002 0.877,-0.007 1.35,-0.438 1.353,-1.208 0.003,-0.768 -0.479,-1.09 -1.35,-1.091 -2.968,-0.002 -9.619,-0.013 -9.619,-0.013 v -0.591 c 0,0 5.052,-0.016 7.225,-0.016 0.888,-0.002 1.354,-0.416 1.351,-1.193 -0.006,-0.761 -0.492,-1.196 -1.361,-1.196 -3.473,-0.005 -10.86,-0.003 -11.0829995,-0.003 -0.022,-0.047 -0.045,-0.094 -0.069,-0.139 0.3939995,-0.319 2.0409995,-1.626 2.4149995,-2.017 0.469,-0.4870005 0.519,-1.1650005 0.162,-1.6040005 -0.414,-0.511 -0.973,-0.5 -1.48,-0.236 -1.4609995,0.764 -6.5999995,3.6430005 -7.7329995,4.2710005 -0.9,0.499 -1.516,1.253 -1.882,2.19 -0.37000002,0.95 -0.17,2.01 -0.166,2.979 0.004,0.718 -0.27300002,1.345 -0.055,2.063 0.629,2.087 2.425,3.312 4.859,3.318 4.6179995,0.014 9.2379995,-0.139 13.8569995,-0.158 0.755,-0.004 1.171,-0.301 1.182,-1.033 0.012,-0.754 -0.423,-0.969 -1.183,-0.973 -1.778,-0.01 -5.824,-0.004 -6.04,-0.004 10e-4,-0.084 0.003,-0.586 10e-4,-0.67 z"},TASK_TYPE_INSTANTIATING_SEND:{d:"m {mx},{my} l 0,8.4 l 12.6,0 l 0,-8.4 z l 6.3,3.6 l 6.3,-3.6"},TASK_TYPE_SERVICE:{d:"m {mx},{my} v -1.71335 c 0.352326,-0.0705 0.703932,-0.17838 1.047628,-0.32133 0.344416,-0.14465 0.665822,-0.32133 0.966377,-0.52145 l 1.19431,1.18005 1.567487,-1.57688 -1.195028,-1.18014 c 0.403376,-0.61394 0.683079,-1.29908 0.825447,-2.01824 l 1.622133,-0.01 v -2.2196 l -1.636514,0.01 c -0.07333,-0.35153 -0.178319,-0.70024 -0.323564,-1.04372 -0.145244,-0.34406 -0.321407,-0.6644 -0.522735,-0.96217 l 1.131035,-1.13631 -1.583305,-1.56293 -1.129598,1.13589 c -0.614052,-0.40108 -1.302883,-0.68093 -2.022633,-0.82247 l 0.0093,-1.61852 h -2.241173 l 0.0042,1.63124 c -0.353763,0.0736 -0.705369,0.17977 -1.049785,0.32371 -0.344415,0.14437 -0.665102,0.32092 -0.9635006,0.52046 l -1.1698628,-1.15823 -1.5667691,1.5792 1.1684265,1.15669 c -0.4026573,0.61283 -0.68308,1.29797 -0.8247287,2.01713 l -1.6588041,0.003 v 2.22174 l 1.6724648,-0.006 c 0.073327,0.35077 0.1797598,0.70243 0.3242851,1.04472 0.1452428,0.34448 0.3214064,0.6644 0.5227339,0.96066 l -1.1993431,1.19723 1.5840256,1.56011 1.1964668,-1.19348 c 0.6140517,0.40346 1.3028827,0.68232 2.0233517,0.82331 l 7.19e-4,1.69892 h 2.226848 z m 0.221462,-3.9957 c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_SERVICE_FILL:{d:"m {mx},{my} c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_BUSINESS_RULE_HEADER:{d:"m {mx},{my} 0,4 20,0 0,-4 z"},TASK_TYPE_BUSINESS_RULE_MAIN:{d:"m {mx},{my} 0,12 20,0 0,-12 zm 0,8 l 20,0 m -13,-4 l 0,8"},MESSAGE_FLOW_MARKER:{d:"m {mx},{my} m -10.5 ,-7 l 0,14 l 21,0 l 0,-14 z l 10.5,6 l 10.5,-6"}},this.getRawPath=function(e){return this.pathMap[e].d},this.getScaledPath=function(e,t){var n,i,r=this.pathMap[e];t.abspos?(n=t.abspos.x,i=t.abspos.y):(n=t.containerWidth*t.position.mx,i=t.containerHeight*t.position.my);var o,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(Qr,(function(e,t){return function(e,t,n){var i=n;return t.replace(Jr,(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 to={translate:["value",function(e,t){return t=t||{},e.replace(/{([^}]+)}/g,(function(e,n){return t[n]||"{"+n+"}"}))}]},no={width:90,height:20};function io(e){return Ar(e,"bpmn:Event")||Ar(e,"bpmn:Gateway")||Ar(e,"bpmn:DataStoreReference")||Ar(e,"bpmn:DataObjectReference")||Ar(e,"bpmn:DataInput")||Ar(e,"bpmn:DataOutput")||Ar(e,"bpmn:SequenceFlow")||Ar(e,"bpmn:MessageFlow")||Ar(e,"bpmn:Group")}function ro(e){return so(e.label)}function oo(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-=15:a+=15,{x:a,y:s}}function ao(e){return e.waypoints?oo(e.waypoints):Ar(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+no.height/2}:{x:e.x+e.width/2,y:e.y+e.height+no.height/2}}function so(e){return e&&!!e.labelTarget}function co(e,t){return F({id:e.id,type:e.$type,businessObject:e},t)}function po(e,t,n){var i=e.di.waypoint;return!i||i.length<2?[cn(t),cn(n)]:i.map((function(e){return{x:e.x,y:e.y}}))}function uo(e,t,n,i){return new Error(e("element {element} referenced by {referenced}#{property} not yet drawn",{element:dr(n),referenced:dr(t),property:i}))}function lo(e,t,n,i,r,o){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._translate=r,this._textRenderer=o}lo.$inject=["eventBus","canvas","elementFactory","elementRegistry","translate","textRenderer"],lo.prototype.add=function(e,t){var n,i,r,o,a,s,c,p=e.di,u=this._translate;if(Ar(p,"bpmndi:BPMNPlane"))n=this._elementFactory.createRoot(co(e)),this._canvas.setRootElement(n);else if(Ar(p,"bpmndi:BPMNShape")){var l=!Mr(e),h=function(e){return Ar(e,"bpmn:Group")}(e);i=t&&(t.hidden||t.collapsed);var d=e.di.bounds;n=this._elementFactory.createShape(co(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})),Ar(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,n),Ar(e,"bpmn:Lane")&&(r=0),Ar(e,"bpmn:DataStoreReference")&&(o=t,a=cn(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(!Ar(p,"bpmndi:BPMNEdge"))throw new Error(u("unknown di {di} for element {semantic}",{di:dr(p),semantic:dr(e)}));var f=this._getSource(e),m=this._getTarget(e);i=t&&(t.hidden||t.collapsed),n=this._elementFactory.createConnection(co(e,{hidden:i,source:f,target:m,waypoints:po(e,f,m)})),Ar(e,"bpmn:DataAssociation")&&(t=null),Ar(e,"bpmn:SequenceFlow")&&(r=0),this._canvas.addConnection(n,t,r)}return io(e)&&Or(n)&&this.addLabel(e,n),this._eventBus.fire("bpmnElement.added",{element:n}),n},lo.prototype._attachBoundary=function(e,t){var n=this._translate,i=e.attachedToRef;if(!i)throw new Error(n("missing {semantic}#attachedToRef",{semantic:dr(e)}));var r=this._elementRegistry.get(i.id),o=r&&r.attachers;if(!r)throw uo(n,e,i,"attachedToRef");t.host=r,o||(r.attachers=o=[]),-1===o.indexOf(t)&&o.push(t)},lo.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(no.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=ao(t),i=no),F({x:n.x-i.width/2,y:n.y-i.height/2},i)}(e,t),(i=Or(t))&&(n=this._textRenderer.getExternalLabelBounds(n,i)),r=this._elementFactory.createLabel(co(e,{id:e.id+"_label",labelTarget:t,type:"label",hidden:t.hidden||!Or(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)},lo.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?uo(o,e,i,t+"Ref"):new Error(o("{semantic}#{side} Ref not specified",{semantic:dr(e),side:t}))},lo.prototype._getSource=function(e){return this._getEnd(e,"source")},lo.prototype._getTarget=function(e){return this._getEnd(e,"target")},lo.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};var ho={__depends__:[eo,{__depends__:[to],bpmnImporter:["type",lo]}]};function fo(e){e&&"function"==typeof e.stopPropagation&&e.stopPropagation()}function mo(e){return e.originalEvent||e.srcEvent}function vo(e,t){fo(e),fo(mo(e))}function yo(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 go(e,t){return(mo(e)||e).button===t}function bo(e){return go(e,0)}function xo(e){var t=mo(e)||e;return!!bo(e)&&(/mac/i.test(navigator.platform)?t.metaKey:t.ctrlKey)}function _o(e){var t=mo(e)||e;return bo(e)&&t.shiftKey}function Eo(e){return!0}function wo(e){return bo(e)||function(e){return go(e,1)}(e)}function So(e,t,n){var i=this;function r(n,i,r){var o,a;(function(e,t){return!(c[e]||bo)(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":Eo,"element.mousedown":wo,"element.mouseup":wo,"element.click":wo,"element.dblclick":wo};function p(e,t,n,i){var a=o[n]=function(e){r(n,e)};i&&(c[n]=i),a.$delegate=se.bind(e,"svg, .djs-element",t,a)}function u(e,t,n){var i=a(n);i&&se.unbind(e,t,i.$delegate)}e.on("canvas.destroy",(function(e){var t;t=e.svg,b(s,(function(e,n){u(t,n,e)}))})),e.on("canvas.init",(function(e){var t;t=e.svg,b(s,(function(e,n){p(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"],500,(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.updateHit",{element:n,gfx:i})})),e.on("interactionEvents.createHit",500,(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 l=f("djs-hit djs-hit-stroke"),h=f("djs-hit djs-hit-click-stroke"),d={all:f("djs-hit djs-hit-all"),"click-stroke":h,stroke:l};function f(e,t){return t=F({stroke:"white",strokeWidth:15},t||{}),n.cls(e,["no-fill","no-border"],t)}function m(e,t){var n=d[t];if(!n)throw new Error("invalid hit type <"+t+">");return ge(e,n),e}function v(e,t){me(e,t)}this.removeHits=function(e){b(he(".djs-hit",e),Ce)},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=it(t);return m(n,"stroke"),v(e,n),n},this.createBoxHit=function(e,t,n){n=F({x:0,y:0},n);var i=Me("rect");return m(i,t),ge(i,n),v(e,i),i},this.updateDefaultHit=function(e,t){var n=le(".djs-hit",t);if(n)return e.waypoints?function(e,t){ge(e,{points:nt(t)})}(n,e.waypoints):ge(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=p,this.unregisterEvent=u}So.$inject=["eventBus","elementRegistry","styles"];var Co={__init__:["interactionEvents"],interactionEvents:["type",So]};function To(e,t,n){this.offset=6;var i=t.cls("djs-outline",["no-fill"]),r=this;function o(e,t){var n=Me("rect");return ge(n,F({x:10,y:10,width:100,height:100},i)),me(e,n),n}e.on(["shape.added","shape.changed"],500,(function(e){var t=e.element,n=e.gfx,i=le(".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=le(".djs-outline",n);i||(i=o(n)),r.updateConnectionOutline(i,t)}))}To.prototype.updateShapeOutline=function(e,t){ge(e,{x:-this.offset,y:-this.offset,width:t.width+2*this.offset,height:t.height+2*this.offset})},To.prototype.updateConnectionOutline=function(e,t){var n=pt(t);ge(e,{x:n.x-this.offset,y:n.y-this.offset,width:n.width+2*this.offset,height:n.height+2*this.offset})},To.$inject=["eventBus","styles","elementRegistry"];var Ro={__init__:["outline"],outline:["type",To]};function Po(e,t){this._eventBus=e,this._canvas=t,this._selectedElements=[];var n=this;e.on(["shape.remove","connection.remove"],(function(e){var t=e.element;n.deselect(t)})),e.on(["diagram.clear","plane.set"],(function(e){n.select(null)}))}Po.$inject=["eventBus","canvas"],Po.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})}},Po.prototype.get=function(){return this._selectedElements},Po.prototype.isSelected=function(e){return-1!==this._selectedElements.indexOf(e)},Po.prototype.select=function(e,t){var n=this._selectedElements,i=n.slice();l(e)||(e=e?[e]:[]);var r=this._canvas;e=e.filter((function(e){return r.findPlane(e)===r.getActivePlane()})),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 Ao="hover",ko="selected";function Mo(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,Ao)})),e.on("element.out",(function(e){o(e.element,Ao)})),e.on("selection.changed",(function(e){var t=e.oldSelection,n=e.newSelection;b(t,(function(e){-1===n.indexOf(e)&&o(e,ko)})),b(n,(function(e){-1===t.indexOf(e)&&r(e,ko)}))}))}function Do(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(Bo))}})),e.on("connect.end",500,(function(e){var n=e.context,i=n.canExecute,r=n.hover;i&&r&&t.select(r)})),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){if(bo(e)){var i=e.element;i===n.getRootElement()&&(i=null);var r=t.isSelected(i),o=t.get().length>1,a=xo(e)||_o(e);if(r&&o)return a?t.deselect(i):t.select(i);r?t.deselect(i):t.select(i,a)}}))}function Bo(e){return!e.hidden}Mo.$inject=["eventBus","canvas","selection","styles"],Do.$inject=["eventBus","selection","canvas","elementRegistry"];var No={__init__:["selectionVisuals","selectionBehavior"],__depends__:[Co,Ro],selection:["type",Po],selectionVisuals:["type",Mo],selectionBehavior:["type",Do]};function Oo(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(1e9*Math.random())+"-"}Oo.prototype.next=function(){return this._prefix+ ++this._counter};var jo=new Oo("ov");function Lo(e,t,n,i){var r,o;this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=jo,this._overlayDefaults=F({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=(r=n.getContainer(),o=ce('<div class="djs-overlay-container" style="position: absolute; width: 0; height: 0;" />'),r.insertBefore(o,r.firstChild),o),this._init()}function Io(e,t,n){F(e.style,{left:t+"px",top:n+"px"})}function zo(e,t){e.style.display=!1===t?"none":""}function Fo(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach((function(n){e.style[n+"transform"]=t}))}Lo.$inject=["config.overlays","eventBus","canvas","elementRegistry"],Lo.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},Lo.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},Lo.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&&(de(e.html),de(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)}}))},Lo.prototype.show=function(){zo(this._overlayRoot)},Lo.prototype.hide=function(){zo(this._overlayRoot,!1)},Lo.prototype.clear=function(){this._overlays={},this._overlayContainers=[],X(this._overlayRoot)},Lo.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=pt(t);i=o.x,r=o.y}Io(n,i,r),H(e.html,"data-container-id",t.id)},Lo.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?pt(o).width:o.width,a=-1*i.right+t);void 0!==i.bottom&&(n=o.waypoints?pt(o).height:o.height,s=-1*i.bottom+n);Io(r,a||0,s||0)},Lo.prototype._createOverlayContainer=function(e){var t=ce('<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},Lo.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";Fo(this._overlayRoot,n)},Lo.prototype._getOverlayContainer=function(e,t){var n=y(this._overlayContainers,(function(t){return t.element===e}));return n||t?n:this._createOverlayContainer(e)},Lo.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=ce(o)),n=this._getOverlayContainer(r),(t=ce('<div class="djs-overlay" data-overlay-id="'+i+'" style="position: absolute">')).appendChild(o),e.type&&K(t).add("djs-overlay-"+e.type);var a=this._canvas.findPlane(r),s=this._canvas.getActivePlane();e.plane=a,a!==s&&zo(t,!1),e.htmlContainer=t,n.overlays.push(e),n.html.appendChild(t),this._overlays[i]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Lo.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),zo(o,a)),this._updateOverlayScale(e,t)},Lo.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+")"),Fo(a,s)},Lo.prototype._updateOverlaysVisibilty=function(e){var t=this;b(this._overlays,(function(n){t._updateOverlayVisibilty(n,e)}))},Lo.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){de(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("plane.set",(function(e){b(t._overlays,(function(t){zo(t.htmlContainer,t.plane===e.plane)}))})),e.on("diagram.clear",this.clear,this)};var $o={__init__:["overlays"],overlays:["type",Lo]};function Go(e){Sr.call(this,e)}function Ho(e){return!e.altKey&&(e.ctrlKey||e.metaKey)}function Wo(e,t){return-1!==(e=l(e)?e:[e]).indexOf(t.key)||-1!==e.indexOf(t.keyCode)}function Vo(e){return e.shiftKey}n(Go,Sr),Go.prototype._modules=[ho,to,No,$o],Go.prototype._moddleExtensions={};var Uo="keyboard.keydown",qo="input-handle-modified-keys";function Ko(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()}))}Ko.$inject=["config.keyboard","eventBus"],Ko.prototype._keydownHandler=function(e){this._keyHandler(e,Uo)},Ko.prototype._keyupHandler=function(e){this._keyHandler(e,"keyboard.keyup")},Ko.prototype._keyHandler=function(e,t){if(!this._isEventIgnored(e)){var n={keyEvent:e};this._eventBus.fire(t||Uo,n)&&e.preventDefault()}},Ko.prototype._isEventIgnored=function(e){return(t=e.target)&&(J(t,"input, textarea")||"true"===t.contentEditable)&&this._isModifiedKeyIgnored(e);var t},Ko.prototype._isModifiedKeyIgnored=function(e){return!Ho(e)||!this._getAllowedModifiers(e.target).includes(e.key)},Ko.prototype._getAllowedModifiers=function(e){var t=ee(e,"[input-handle-modified-keys]",!0);return!t||this._node&&!this._node.contains(t)?[]:t.getAttribute(qo).split(",")},Ko.prototype.bind=function(e){this.unbind(),this._node=e,re.bind(e,"keydown",this._keydownHandler,!0),re.bind(e,"keyup",this._keyupHandler,!0),this._fire("bind")},Ko.prototype.getBinding=function(){return this._node},Ko.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),re.unbind(e,"keydown",this._keydownHandler,!0),re.unbind(e,"keyup",this._keyupHandler,!0)),this._node=null},Ko.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},Ko.prototype.addListener=function(e,t,n){f(e)&&(n=t,t=e,e=1e3),this._eventBus.on(n||Uo,e,t)},Ko.prototype.removeListener=function(e,t){this._eventBus.off(t||Uo,e)},Ko.prototype.hasModifier=function(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey},Ko.prototype.isCmd=Ho,Ko.prototype.isShift=Vo,Ko.prototype.isKey=Wo;var Yo=["c","C",67],Xo=["v","V",86],Zo=["y","Y",89],Qo=["z","Z",90];function Jo(e,t){var n=this;e.on("editorActions.init",500,(function(e){var i=e.editorActions;n.registerBindings(t,i)}))}Jo.$inject=["eventBus","keyboard"],Jo.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}n("undo",(function(e){var n=e.keyEvent;if(Ho(n)&&!Vo(n)&&Wo(Qo,n))return t.trigger("undo"),!0})),n("redo",(function(e){var n=e.keyEvent;if(Ho(n)&&(Wo(Zo,n)||Wo(Qo,n)&&Vo(n)))return t.trigger("redo"),!0})),n("copy",(function(e){var n=e.keyEvent;if(Ho(n)&&Wo(Yo,n))return t.trigger("copy"),!0})),n("paste",(function(e){var n=e.keyEvent;if(Ho(n)&&Wo(Xo,n))return t.trigger("paste"),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(Wo(["+","Add","="],n)&&Ho(n))return t.trigger("stepZoom",{value:1}),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(Wo(["-","Subtract"],n)&&Ho(n))return t.trigger("stepZoom",{value:-1}),!0})),n("zoom",(function(e){var n=e.keyEvent;if(Wo("0",n)&&Ho(n))return t.trigger("zoom",{value:1}),!0})),n("removeSelection",(function(e){if(Wo(["Backspace","Delete","Del"],e.keyEvent))return t.trigger("removeSelection"),!0}))};var ea={__init__:["keyboard","keyboardBindings"],keyboard:["type",Ko],keyboardBindings:["type",Jo]},ta={moveSpeed:50,moveSpeedAccelerated:200};function na(e,t,n){var i=this;this._config=F({},ta,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})}}na.$inject=["config.keyboardMove","keyboard","canvas"];var ia={__depends__:[ea],__init__:["keyboardMove"],keyboardMove:["type",na]},ra=/^djs-cursor-.*$/;function oa(e){var t=K(document.body);t.removeMatching(ra),e&&t.add("djs-cursor-"+e)}function aa(){oa(null)}function sa(e,t){function n(){return!1}return t=t||"element.click",e.once(t,5e3,n),function(){e.off(t,n)}}function ca(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function pa(e,t){return{x:e.x-t.x,y:e.y-t.y}}function ua(e,t){var n;function i(i){var r,o=n.start,a=n.button,s=yo(i),c=pa(s,o);(!n.dragging&&(r=c,Math.sqrt(Math.pow(r.x,2)+Math.pow(r.y,2))>15)&&(n.dragging=!0,0===a&&sa(e),oa("grab")),n.dragging)&&(c=pa(s,n.last||n.start),t.scroll({dx:c.x,dy:c.y}),n.last=s);i.preventDefault()}function r(e){re.unbind(document,"mousemove",i),re.unbind(document,"mouseup",r),n=null,aa()}e.on("element.mousedown",500,(function(e){return function(e){if(ee(e.target,".djs-draggable"))return;var t=e.button;if(t>=2||e.ctrlKey||e.shiftKey||e.altKey)return;return n={button:t,start:yo(e)},re.bind(document,"mousemove",i),re.bind(document,"mouseup",r),!0}(e.originalEvent)})),this.isActive=function(){return!!n}}ua.$inject=["eventBus","canvas"];var la={__init__:["moveCanvas"],moveCanvas:["type",ua]};function ha(e){return Math.log(e)/Math.log(10)}function da(e,t){var n=ha(e.min),i=ha(e.max);return(Math.abs(n)+Math.abs(i))/t}var fa=Math.sign||function(e){return e>=0?1:-1},ma={min:.2,max:4};function va(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||.75;var i=this;t.on("canvas.init",(function(t){i._init(!1!==e.enabled)}))}va.$inject=["config.zoomScroll","eventBus","canvas"],va.prototype.scroll=function(e){this._canvas.scroll(e)},va.prototype.reset=function(){this._canvas.zoom("fit-viewport")},va.prototype.zoom=function(e,t){var n=da(ma,20);this._totalDelta+=e,Math.abs(this._totalDelta)>.1&&(this._zoom(e,t,n),this._totalDelta=0)},va.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))*fa(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)}},va.prototype.stepZoom=function(e,t){var n=da(ma,10);this._zoom(e,t,n)},va.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=ha(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s,c,p=Math.pow(10,a);i.zoom((s=ma,c=p,Math.max(s.min,Math.min(s.max,c))),t)},va.prototype.toggle=function(e){var t=this._container,n=this._handleWheel,i=this._enabled;return void 0===e&&(e=!i),i!==e&&re[e?"bind":"unbind"](t,"wheel",n,!1),this._enabled=e,e},va.prototype._init=function(e){this.toggle(e)};var ya={__init__:["zoomScroll"],zoomScroll:["type",va]};function ga(e){Go.call(this,e)}n(ga,Go),ga.prototype._navigationModules=[ia,la,ya],ga.prototype._modules=[].concat(Go.prototype._modules,ga.prototype._navigationModules);var ba={exports:{}};
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 */!function(e){!function(t,n,i,r){var o,a=["","webkit","Moz","MS","ms","o"],s=n.createElement("div"),c=Math.round,p=Math.abs,u=Date.now;function l(e,t,n){return setTimeout(g(e,n),t)}function h(e,t,n){return!!Array.isArray(e)&&(d(e,n[t],n),!0)}function d(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 f(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 m=f((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`."),v=f((function(e,t){return m(e,t,!0)}),"merge","Use `assign`.");function y(e,t,n){var i,r=t.prototype;(i=e.prototype=Object.create(r)).constructor=e,i._super=r,n&&o(i,n)}function g(e,t){return function(){return e.apply(t,arguments)}}function b(e,t){return"function"==typeof e?e.apply(t&&t[0]||r,t):e}function x(e,t){return e===r?t:e}function _(e,t,n){d(C(t),(function(t){e.addEventListener(t,n,!1)}))}function E(e,t,n){d(C(t),(function(t){e.removeEventListener(t,n,!1)}))}function w(e,t){for(;e;){if(e==t)return!0;e=e.parentNode}return!1}function S(e,t){return e.indexOf(t)>-1}function C(e){return e.trim().split(/\s+/g)}function T(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 R(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];T(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 A(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 k=1;function M(e){var n=e.ownerDocument||e;return n.defaultView||n.parentWindow||t}var D="ontouchstart"in t,B=A(t,"PointerEvent")!==r,N=D&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),O="touch",j="mouse",L=24,I=["x","y"],z=["clientX","clientY"];function F(e,t){var n=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){b(e.options.enable,[e])&&n.handler(t)},this.init()}function $(e,t,n){var i=n.pointers.length,o=n.changedPointers.length,a=1&t&&i-o==0,s=12&t&&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=G(t));o>1&&!n.firstMultiple?n.firstMultiple=G(t):1===o&&(n.firstMultiple=!1);var a=n.firstInput,s=n.firstMultiple,c=s?s.center:a.center,l=t.center=H(i);t.timeStamp=u(),t.deltaTime=t.timeStamp-a.timeStamp,t.angle=q(c,l),t.distance=U(c,l),function(e,t){var n=t.center,i=e.offsetDelta||{},r=e.prevDelta||{},o=e.prevInput||{};1!==t.eventType&&4!==o.eventType||(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=V(t.deltaX,t.deltaY);var h=W(t.deltaTime,t.deltaX,t.deltaY);t.overallVelocityX=h.x,t.overallVelocityY=h.y,t.overallVelocity=p(h.x)>p(h.y)?h.x:h.y,t.scale=s?(d=s.pointers,f=i,U(f[0],f[1],z)/U(d[0],d[1],z)):1,t.rotation=s?function(e,t){return q(t[1],t[0],z)+q(e[1],e[0],z)}(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(8!=t.eventType&&(c>25||s.velocity===r)){var u=t.deltaX-s.deltaX,l=t.deltaY-s.deltaY,h=W(c,u,l);i=h.x,o=h.y,n=p(h.x)>p(h.y)?h.x:h.y,a=V(u,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;w(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 G(e){for(var t=[],n=0;n<e.pointers.length;)t[n]={clientX:c(e.pointers[n].clientX),clientY:c(e.pointers[n].clientY)},n++;return{timeStamp:u(),pointers:t,center:H(t),deltaX:e.deltaX,deltaY:e.deltaY}}function H(e){var t=e.length;if(1===t)return{x:c(e[0].clientX),y:c(e[0].clientY)};for(var n=0,i=0,r=0;r<t;)n+=e[r].clientX,i+=e[r].clientY,r++;return{x:c(n/t),y:c(i/t)}}function W(e,t,n){return{x:t/e||0,y:n/e||0}}function V(e,t){return e===t?1:p(e)>=p(t)?e<0?2:4:t<0?8:16}function U(e,t,n){n||(n=I);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return Math.sqrt(i*i+r*r)}function q(e,t,n){n||(n=I);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return 180*Math.atan2(r,i)/Math.PI}F.prototype={handler:function(){},init:function(){this.evEl&&_(this.element,this.evEl,this.domHandler),this.evTarget&&_(this.target,this.evTarget,this.domHandler),this.evWin&&_(M(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(M(this.element),this.evWin,this.domHandler)}};var K={mousedown:1,mousemove:2,mouseup:4},Y="mousedown",X="mousemove mouseup";function Z(){this.evEl=Y,this.evWin=X,this.pressed=!1,F.apply(this,arguments)}y(Z,F,{handler:function(e){var t=K[e.type];1&t&&0===e.button&&(this.pressed=!0),2&t&&1!==e.which&&(t=4),this.pressed&&(4&t&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:j,srcEvent:e}))}});var Q={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},J={2:O,3:"pen",4:j,5:"kinect"},ee="pointerdown",te="pointermove pointerup pointercancel";function ne(){this.evEl=ee,this.evWin=te,F.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(ee="MSPointerDown",te="MSPointerMove MSPointerUp MSPointerCancel"),y(ne,F,{handler:function(e){var t=this.store,n=!1,i=e.type.toLowerCase().replace("ms",""),r=Q[i],o=J[e.pointerType]||e.pointerType,a=o==O,s=T(t,e.pointerId,"pointerId");1&r&&(0===e.button||a)?s<0&&(t.push(e),s=t.length-1):12&r&&(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 ie={touchstart:1,touchmove:2,touchend:4,touchcancel:8},re="touchstart",oe="touchstart touchmove touchend touchcancel";function ae(){this.evTarget=re,this.evWin=oe,this.started=!1,F.apply(this,arguments)}function se(e,t){var n=R(e.touches),i=R(e.changedTouches);return 12&t&&(n=P(n.concat(i),"identifier",!0)),[n,i]}y(ae,F,{handler:function(e){var t=ie[e.type];if(1===t&&(this.started=!0),this.started){var n=se.call(this,e,t);12&t&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:O,srcEvent:e})}}});var ce={touchstart:1,touchmove:2,touchend:4,touchcancel:8},pe="touchstart touchmove touchend touchcancel";function ue(){this.evTarget=pe,this.targetIds={},F.apply(this,arguments)}function le(e,t){var n=R(e.touches),i=this.targetIds;if(3&t&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,o,a=R(e.changedTouches),s=[],c=this.target;if(o=n.filter((function(e){return w(e.target,c)})),1===t)for(r=0;r<o.length;)i[o[r].identifier]=!0,r++;for(r=0;r<a.length;)i[a[r].identifier]&&s.push(a[r]),12&t&&delete i[a[r].identifier],r++;return s.length?[P(o.concat(s),"identifier",!0),s]:void 0}y(ue,F,{handler:function(e){var t=ce[e.type],n=le.call(this,e,t);n&&this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:O,srcEvent:e})}});function he(){F.apply(this,arguments);var e=g(this.handler,this);this.touch=new ue(this.manager,e),this.mouse=new Z(this.manager,e),this.primaryTouch=null,this.lastTouches=[]}function de(e,t){1&e?(this.primaryTouch=t.changedPointers[0].identifier,fe.call(this,t)):12&e&&fe.call(this,t)}function fe(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)}),2500)}}function me(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<=25&&a<=25)return!0}return!1}y(he,F,{handler:function(e,t,n){var i=n.pointerType==O,r=n.pointerType==j;if(!(r&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(i)de.call(this,t,n);else if(r&&me.call(this,n))return;this.callback(e,t,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var ve=A(s.style,"touchAction"),ye=ve!==r,ge="compute",be="auto",xe="manipulation",_e="none",Ee="pan-x",we="pan-y",Se=function(){if(!ye)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 Ce(e,t){this.manager=e,this.set(t)}Ce.prototype={set:function(e){e==ge&&(e=this.compute()),ye&&this.manager.element.style&&Se[e]&&(this.manager.element.style[ve]=e),this.actions=e.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return d(this.manager.recognizers,(function(t){b(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))})),function(e){if(S(e,_e))return _e;var t=S(e,Ee),n=S(e,we);if(t&&n)return _e;if(t||n)return t?Ee:we;if(S(e,xe))return xe;return be}(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=S(i,_e)&&!Se.none,o=S(i,we)&&!Se["pan-y"],a=S(i,Ee)&&!Se["pan-x"];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&&6&n||a&&n&L?this.preventSrc(t):void 0}},preventSrc:function(e){this.manager.session.prevented=!0,e.preventDefault()}};var Te=32;function Re(e){this.options=o({},this.defaults,e||{}),this.id=k++,this.manager=null,this.options.enable=x(this.options.enable,!0),this.state=1,this.simultaneous={},this.requireFail=[]}function Pe(e){return 16&e?"cancel":8&e?"end":4&e?"move":2&e?"start":""}function Ae(e){return 16==e?"down":8==e?"up":2==e?"left":4==e?"right":""}function ke(e,t){var n=t.manager;return n?n.get(e):e}function Me(){Re.apply(this,arguments)}function De(){Me.apply(this,arguments),this.pX=null,this.pY=null}function Be(){Me.apply(this,arguments)}function Ne(){Re.apply(this,arguments),this._timer=null,this._input=null}function Oe(){Me.apply(this,arguments)}function je(){Me.apply(this,arguments)}function Le(){Re.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Ie(e,t){return(t=t||{}).recognizers=x(t.recognizers,Ie.defaults.preset),new ze(e,t)}Re.prototype={defaults:{},set:function(e){return o(this.options,e),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(e){if(h(e,"recognizeWith",this))return this;var t=this.simultaneous;return t[(e=ke(e,this)).id]||(t[e.id]=e,e.recognizeWith(this)),this},dropRecognizeWith:function(e){return h(e,"dropRecognizeWith",this)||(e=ke(e,this),delete this.simultaneous[e.id]),this},requireFailure:function(e){if(h(e,"requireFailure",this))return this;var t=this.requireFail;return-1===T(t,e=ke(e,this))&&(t.push(e),e.requireFailure(this)),this},dropRequireFailure:function(e){if(h(e,"dropRequireFailure",this))return this;e=ke(e,this);var t=T(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<8&&i(t.options.event+Pe(n)),i(t.options.event),e.additionalEvent&&i(e.additionalEvent),n>=8&&i(t.options.event+Pe(n))},tryEmit:function(e){if(this.canEmit())return this.emit(e);this.state=Te},canEmit:function(){for(var e=0;e<this.requireFail.length;){if(!(33&this.requireFail[e].state))return!1;e++}return!0},recognize:function(e){var t=o({},e);if(!b(this.options.enable,[this,t]))return this.reset(),void(this.state=Te);56&this.state&&(this.state=1),this.state=this.process(t),30&this.state&&this.tryEmit(t)},process:function(e){},getTouchAction:function(){},reset:function(){}},y(Me,Re,{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=6&t,r=this.attrTest(e);return i&&(8&n||!r)?16|t:i||r?4&n?8|t:2&t?4|t:2:Te}}),y(De,Me,{defaults:{event:"pan",threshold:10,pointers:1,direction:30},getTouchAction:function(){var e=this.options.direction,t=[];return 6&e&&t.push(we),e&L&&t.push(Ee),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||(6&t.direction?(r=0===o?1:o<0?2:4,n=o!=this.pX,i=Math.abs(e.deltaX)):(r=0===a?1:a<0?8:16,n=a!=this.pY,i=Math.abs(e.deltaY))),e.direction=r,n&&i>t.threshold&&r&t.direction},attrTest:function(e){return Me.prototype.attrTest.call(this,e)&&(2&this.state||!(2&this.state)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=Ae(e.direction);t&&(e.additionalEvent=this.options.event+t),this._super.emit.call(this,e)}}),y(Be,Me,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[_e]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||2&this.state)},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)}}),y(Ne,Re,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[be]},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||12&e.eventType&&!r)this.reset();else if(1&e.eventType)this.reset(),this._timer=l((function(){this.state=8,this.tryEmit()}),t.time,this);else if(4&e.eventType)return 8;return Te},reset:function(){clearTimeout(this._timer)},emit:function(e){8===this.state&&(e&&4&e.eventType?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=u(),this.manager.emit(this.options.event,this._input)))}}),y(Oe,Me,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[_e]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||2&this.state)}}),y(je,Me,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return De.prototype.getTouchAction.call(this)},attrTest:function(e){var t,n=this.options.direction;return 30&n?t=e.overallVelocity:6&n?t=e.overallVelocityX:n&L&&(t=e.overallVelocityY),this._super.attrTest.call(this,e)&&n&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&p(t)>this.options.velocity&&4&e.eventType},emit:function(e){var t=Ae(e.offsetDirection);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),y(Le,Re,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[xe]},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(),1&e.eventType&&0===this.count)return this.failTimeout();if(i&&r&&n){if(4!=e.eventType)return this.failTimeout();var o=!this.pTime||e.timeStamp-this.pTime<t.interval,a=!this.pCenter||U(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=l((function(){this.state=8,this.tryEmit()}),t.interval,this),2):8}return Te},failTimeout:function(){return this._timer=l((function(){this.state=Te}),this.options.interval,this),Te},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Ie.VERSION="2.0.7",Ie.defaults={domEvents:!1,touchAction:ge,enable:!0,inputTarget:null,inputClass:null,preset:[[Oe,{enable:!1}],[Be,{enable:!1},["rotate"]],[je,{direction:6}],[De,{direction:6},["swipe"]],[Le],[Le,{event:"doubletap",taps:2},["tap"]],[Ne]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};function ze(e,t){var n;this.options=o({},Ie.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||(B?ne:N?ue:D?he:Z))(n,$),this.touchAction=new Ce(this,this.options.touchAction),Fe(this,!0),d(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 Fe(e,t){var n,i=e.element;i.style&&(d(e.options.cssProps,(function(r,o){n=A(i.style,o),t?(e.oldCssProps[n]=i.style[n],i.style[n]=r):i.style[n]=e.oldCssProps[n]||""})),t||(e.oldCssProps={}))}ze.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&&8&r.state)&&(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&&14&n.state&&(r=t.curRecognizer=n),o++}},get:function(e){if(e instanceof Re)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(h(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(h(e,"remove",this))return this;if(e=this.get(e)){var t=this.recognizers,n=T(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 d(C(e),(function(e){n[e]=n[e]||[],n[e].push(t)})),this}},off:function(e,t){if(e!==r){var n=this.handlers;return d(C(e),(function(e){t?n[e]&&n[e].splice(T(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&&Fe(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},o(Ie,{INPUT_START:1,INPUT_MOVE:2,INPUT_END:4,INPUT_CANCEL:8,STATE_POSSIBLE:1,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:Te,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:L,DIRECTION_ALL:30,Manager:ze,Input:F,TouchAction:Ce,TouchInput:ue,MouseInput:Z,PointerEventInput:ne,TouchMouseInput:he,SingleTouchInput:ae,Recognizer:Re,AttrRecognizer:Me,Tap:Le,Pan:De,Swipe:je,Pinch:Be,Rotate:Oe,Press:Ne,on:_,off:E,each:d,merge:v,extend:m,assign:o,inherit:y,bindFn:g,prefixed:A}),(void 0!==t?t:"undefined"!=typeof self?self:{}).Hammer=Ie,e.exports?e.exports=Ie:t.Hammer=Ie}(window,document)}(ba);var xa=ba.exports,_a=["mousedown","mouseup","mouseover","mouseout","click","dblclick"];function Ea(e,t){return t.get(e,!1)}function wa(e){e.preventDefault(),"function"==typeof e.stopPropagation?e.stopPropagation():e.srcEvent&&"function"==typeof e.srcEvent.stopPropagation&&e.srcEvent.stopPropagation(),"function"==typeof e.stopImmediatePropagation&&e.stopImmediatePropagation()}function Sa(e){function t(t){setTimeout((function(){b(_a,(function(t){re.unbind(e,t,wa,!0)}))}),500)}re.bind(e,"touchstart",(function(t){b(_a,(function(t){re.bind(e,t,wa,!0)}))}),!0),re.bind(e,"touchend",t,!0),re.bind(e,"touchcancel",t,!0);var n=new xa.Manager(e,{inputClass:xa.TouchInput,recognizers:[],domEvents:!0}),i=new xa.Tap,r=new xa.Pan({threshold:10}),o=new xa.Press,a=new xa.Pinch,s=new xa.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 Ca(e,t,n,i,r){var o,a=Ea("dragging",e),s=Ea("move",e),c=Ea("contextPad",e),p=Ea("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=Sa(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(.2,Math.min(4,r*n));t.zoom(o,i),wa(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=yo(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=Sa(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=Sa(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 Ta(e,t){var n=this;t.on("canvas.init",(function(e){n.addBBoxMarker(e.svg)}))}Ca.$inject=["injector","canvas","eventBus","elementRegistry","interactionEvents","touchFix"],Ta.$inject=["canvas","eventBus"],Ta.prototype.addBBoxMarker=function(e){var t={fill:"none",class:"outer-bound-marker"},n=Me("rect");ge(n,{x:-1e4,y:1e4,width:10,height:10}),ge(n,t),me(e,n);var i=Me("rect");ge(i,{x:1e4,y:1e4,width:10,height:10}),ge(i,t),me(e,i)};var Ra={__depends__:[{__depends__:[Co],__init__:["touchInteractionEvents"],touchInteractionEvents:["type",Ca],touchFix:["type",Ta]}]};function Pa(e){return e&&e[e.length-1]}function Aa(e){return e.y}function ka(e){return e.x}var Ma={left:ka,center:ka,right:function(e){return e.x+e.width},top:Aa,middle:Aa,bottom:function(e){return e.y+e.height}};function Da(e){this._modeling=e}Da.$inject=["modeling"],Da.prototype._getOrientationDetails=function(e){var t="x",n="width";return-1!==["top","bottom","middle"].indexOf(e)&&(t="y",n="height"),{axis:t,dimension:n}},Da.prototype._isType=function(e,t){return-1!==t.indexOf(e)},Da.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=Pa(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]=Pa(n).center,c;i=t[0],r=Pa(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},Da.prototype.trigger=function(e,t){var n=this._modeling,i=g(e,(function(e){return!(e.waypoints||e.host||e.labelTarget)}));if(!(i.length<2)){var r=M(i,Ma[t]),o=this._alignmentPosition(t,r);n.alignElements(r,o)}};var Ba={__init__:["alignElements"],alignElements:["type",Da]};function Na(e,t,n,i){for(var r;r=ja(e,n,t);)n=i(t,n,r);return n}function Oa(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 ja(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=La(e);e.host&&(t=t.concat(La(e.host)));e.attachers&&(t=t.concat(e.attachers.reduce((function(e,t){return e.concat(La(t))}),[])));return t}(e),(function(e){return e!==n&&"intersect"===pn(e,i,10)}))}function La(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 Ia(){return!0}function za(e,t,n){e.on("autoPlace",100,(function(e){var t=e.shape;return function(e,t,n){n||(n={});var i=n.defaultDistance||50,r=cn(e);return{x:an(e).right+i+t.width/2,y:r.y}}(e.source,t)})),e.on("autoPlace.end",(function(e){n.scrollToElement(e.shape)})),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 Fa(e,t){e.on("autoPlace.end",500,(function(e){t.select(e.shape)}))}za.$inject=["eventBus","modeling","canvas"],Fa.$inject=["eventBus","selection"];var $a={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",za],autoPlaceSelectionBehavior:["type",Fa]};function Ga(e,t){return w(t,(function(t){return Ar(e,t)}))}function Ha(e,t){for("string"==typeof t&&(t=[t]);e=e.parent;)if(Ga(e,t))return e;return null}function Wa(e,t){return Ar(t,"bpmn:TextAnnotation")?function(e,t){var n=an(e),i={x:n.right+t.width/2,y:n.top-50-t.height/2};return Na(e,t,i,Oa({y:{margin:-30,minDistance:20}}))}(e,t):Ga(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])?function(e,t){var n=an(e),i={x:n.right-10+t.width/2,y:n.bottom+40+t.width/2};return Na(e,t,i,Oa({x:{margin:30,minDistance:30}}))}(e,t):Ar(t,"bpmn:FlowNode")?function(e,t){var n=an(e),i=cn(e),r=function(e,t){t||(t={});var n=t.defaultDistance||50,i=t.direction||"e",r=t.filter,o=t.getWeight||function(t){return t.source===e?1:-1},a=t.maxDistance||250,s=t.reference||"start";function c(e,t){return"n"===i?"start"===s?an(e).top-an(t).bottom:"center"===s?an(e).top-cn(t).y:an(e).top-an(t).top:"w"===i?"start"===s?an(e).left-an(t).right:"center"===s?an(e).left-cn(t).x:an(e).left-an(t).left:"s"===i?"start"===s?an(t).top-an(e).bottom:"center"===s?cn(t).y-an(e).bottom:an(t).bottom-an(e).bottom:"start"===s?an(t).left-an(e).right:"center"===s?cn(t).x-an(e).right:an(t).right-an(e).right}r||(r=Ia);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 _(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[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 Ar(e,"bpmn:SequenceFlow")}}),o=30,a=80,s="left";Ar(e,"bpmn:BoundaryEvent")&&-1!==(s=pn(e,e.host,-25)).indexOf("top")&&(o*=-1);var c={x:n.right+r+t.width/2,y:i.y+Va(s,a)};return Na(e,t,c,Oa({y:{margin:o,minDistance:a}}))}(e,t):void 0}function Va(e,t){return-1!=e.indexOf("top")?-1*t:-1!=e.indexOf("bottom")?t:0}function Ua(e){e.on("autoPlace",(function(e){var t=e.shape;return Wa(e.source,t)}))}Ua.$inject=["eventBus"];var qa={__depends__:[$a],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",Ua]};function Ka(e){this._eventBus=e}Ka.$inject=["eventBus"],Ka.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 Ya(e,t,n,i){Ka.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(P(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 Xa(e){e.invoke(Ya,this)}function Za(e){Ka.call(this,e),this.init()}function Qa(e){Za.call(this,e);var t=this;this.addRule("element.autoResize",(function(e){return t.canResize(e.elements,e.target)}))}function Ja(e,t){Qa.call(this,e),this._modeling=t}b(["canExecute","preExecute","preExecuted","execute","executed","postExecute","postExecuted","revert","reverted"],(function(e){Ka.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)}})),Ya.$inject=["eventBus","elementRegistry","modeling","rules"],n(Ya,Ka),Ya.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=an(pt(e)),o=an(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),sn(F({},o,a))},Ya.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=an(e),t=an(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)}}},Ya.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},Ya.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},Ya.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)},Xa.$inject=["injector"],n(Xa,Ya),Xa.prototype.resize=function(e,t,n){Ar(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)},Za.$inject=["eventBus"],n(Za,Ka),Za.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)}))},Za.prototype.init=function(){},Qa.$inject=["eventBus"],n(Qa,Za),Qa.prototype.canResize=function(e,t){return!1},n(Ja,Qa),Ja.$inject=["eventBus","modeling"],Ja.prototype.canResize=function(e,t){if(!Ar(t,"bpmn:Participant")&&!Ar(t,"bpmn:Lane")&&!Ar(t,"bpmn:SubProcess"))return!1;var n=!0;return b(e,(function(e){(Ar(e,"bpmn:Lane")||e.labelTarget)&&(n=!1)})),n};var es={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",Xa],bpmnAutoResizeProvider:["type",Ja]};function ts(e,t,n){var i,r,o=this,a=n.get("dragging",!1);a&&t.on("drag.start",(function(n){t.once("drag.move",1500,(function(t){!function(t){if(!t.hover){var n=t.originalEvent,i=o._findTargetGfx(n),r=i&&e.get(i);i&&r&&(t.stopPropagation(),a.hover({element:r,gfx:i}),a.move(n))}}(t)}))})),t.on("element.hover",(function(e){i=e.gfx,r=e.element})),t.on("element.hover",1500,(function(e){r&&t.fire("element.out",{element:r,gfx:i})})),t.on("element.out",(function(){i=null,r=null})),this._findTargetGfx=function(e){var t;if(e instanceof MouseEvent)return t=yo(e),function(e){return ee(e,"svg, .djs-element",!0)}(document.elementFromPoint(t.x,t.y))}}ts.$inject=["elementRegistry","eventBus","injector"];var ns={__init__:["hoverFix"],hoverFix:["type",ts]},is=Math.round,rs="djs-drag-active";function os(e){e.preventDefault()}function as(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=yo(e),h=pa(l,u),d=r.localStart,f=a(l),v=pa(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:is(d.x+p.x),y:is(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&&oa(r.cursor),t.addMarker(t.getRootElement(),rs)}vo(e),r.active&&(F(c,{x:is(f.x+p.x),y:is(f.y+p.y),dx:is(v.x),dy:is(v.y)},{originalEvent:e}),s("move"))}function p(e){var t=!0;r.active&&(e&&(r.payload.originalEvent=e,vo(e)),t=s("end")),!1===t&&s("rejected"),s("ended",v(!0!==t))}function u(e){27===e.which&&(os(e),m())}function l(t){var n;r.active&&(n=sa(e),setTimeout(n,400),os(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"),aa(),v=r.trapClick?l:p,re.unbind(document,"mousemove",c),re.unbind(document,"dragstart",os),re.unbind(document,"selectstart",os),re.unbind(document,"mousedown",v,!0),re.unbind(document,"mouseup",v,!0),re.unbind(document,"keyup",u),re.unbind(document,"touchstart",h,!0),re.unbind(document,"touchcancel",m,!0),re.unbind(document,"touchmove",c,!0),re.unbind(document,"touchend",p,!0),e.off("element.hover",d),e.off("element.out",f),t.removeMarker(t.getRootElement(),rs);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=mo(t)||t,g=yo(t),vo(t),"dragstart"===y.type&&os(y)):(y=null,g={x:0,y:0}),b=a(g),n||(n=b),_=function(e){return"undefined"!=typeof TouchEvent&&e instanceof TouchEvent}(y),r=F({prefix:i,data:E,payload:{},globalStart:g,displacement:pa(n,b),localStart:b,isTouch:_},v),v.manual||(_?(re.bind(document,"touchstart",h,!0),re.bind(document,"touchcancel",m,!0),re.bind(document,"touchmove",c,!0),re.bind(document,"touchend",p,!0)):(re.bind(document,"mousemove",c),re.bind(document,"dragstart",os),re.bind(document,"selectstart",os),re.bind(document,"mousedown",x,!0),re.bind(document,"mouseup",x,!0)),re.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)}}as.$inject=["eventBus","canvas","selection","elementRegistry"];var ss={__depends__:[ns,No],dragging:["type",as]};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 ps(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++)ps(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=yo(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};var us={__depends__:[ss],__init__:["autoScroll"],autoScroll:["type",cs]};function ls(e){this._commandStack=e.get("commandStack",!1)}ls.$inject=["injector"],ls.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),void 0===n||n};var hs={__init__:["rules"],rules:["type",ls]},ds=Math.round,fs=Math.max;function ms(e,t){return function(e,t){var n,i;for(n=0;i=e[n];n++)if(gt(i,t)<=10)return{point:e[n],bendpoint:!0,index:n};return null}(e,t)||function(e,t){var n,i,r=nn(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,10),(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=fs(o.segment2,a.segment2)-1],bendpoint:!0,index:i}:{point:{x:ds(o.x+a.x)/2,y:ds(o.y+a.y)/2},index:o.segment2}:{point:{x:ds(o.x),y:ds(o.y)},index:o.segment2}:null}(e,t)}var vs="djs-bendpoint",ys="djs-segment-dragger";function gs(e,t,n){return ms(t,function(e,t){var n,i=yo(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 bs(e,t){var n=Me("g");we(n).add(vs),me(e,n);var i=Me("circle");ge(i,{cx:0,cy:0,r:4}),we(i).add("djs-visual"),me(n,i);var r=Me("circle");return ge(r,{cx:0,cy:0,r:10}),we(r).add("djs-hit"),me(n,r),t&&we(n).add(t),n}function xs(e,t,n,i){var r=Me("g");me(e,r);var o=function(e,t,n){var i=t.x-e.x,r=t.y-e.y;return Es("h"===n?i:r)}(t,n,i),a=Me("rect");ge(a,{x:-7,y:-1.5,width:14,height:3}),we(a).add("djs-visual"),me(r,a);var s=Me("rect");return ge(s,{x:-o/2,y:-7,width:o,height:14}),we(s).add("djs-hit"),me(r,s),Un(r,"v"===i?90:0),r}function _s(e,t,n){var i=Me("g"),r=Et(t,n),o=xt(t,n);return me(e,i),xs(i,t,n,o),we(i).add(ys),we(i).add("h"===o?"horizontal":"vertical"),Vn(i,r.x,r.y),i}function Es(e){return Math.abs(Math.round(2*e/3))}var ws={exports:{}};
34/*! https://mths.be/cssescape v1.5.1 by @mathias | MIT license */!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)}(ws);var Ss=ws.exports,Cs={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function Ts(e){return(e=""+e)&&e.replace(/[&<>"']/g,(function(e){return Cs[e]}))}function Rs(e,t,n,i,r){function o(e,n){var o=n.waypoints,a=gs(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=Et(i=t[p-1],r=t[p]),a=xt(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=xt((n={start:r[t.index-1],end:r[t.index]}).start,n.end))?Es("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){re.bind(e,t,(function(e){n.triggerMouseEvent(t,e,i),e.stopPropagation()}))}function s(e,n){var i=t.getLayer("overlays"),r=le('.djs-bendpoints[data-element-id="'+Ss(e.id)+'"]',i);return!r&&n&&(ge(r=Me("g"),{"data-element-id":e.id}),we(r).add("djs-bendpoints"),me(i,r),a(r,"mousedown",e),a(r,"click",e),a(r,"dblclick",e)),r}function c(e,t){return le('.djs-segment-dragger[data-segment-idx="'+e+'"]',t)}function p(e,t){t.waypoints.forEach((function(t,n){var i=bs(e);me(e,i),Vn(i,t.x,t.y)})),bs(e,"floating")}function u(e,t){for(var n,i,r,o=t.waypoints,s=1;s<o.length;s++)xt(n=o[s-1],i=o[s])&&(ge(r=_s(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(he(".djs-segment-dragger",e),(function(e){Ce(e)}))}(t),function(e){b(he(".djs-bendpoint",e),(function(e){Ce(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=Et(a,s),l=xt(a,s);o&&(i=function(e){return le(".djs-visual",e)}(o),r={x:p.x-u.x,y:p.y-u.y},"v"===l&&(r={x:r.y,y:r.x}),Vn(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&&Ce(t)})),e.on("element.marker.update",(function(e){var t,n=e.element;n.waypoints&&(t=l(n),e.add?we(t).add(e.marker):we(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=gs(t,o,e.originalEvent)))return;!function(e,t){var n=le(".floating",e),i=t.point;n&&Vn(n,i.x,i.y)}(n,i),i.bendpoint||d(n,i,o)}})),e.on("element.mousedown",(function(e){if(bo(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&&ge(i,{"data-element-id":n})}})),this.addHandles=l,this.updateHandles=h,this.getBendpointsContainer=s,this.getSegmentDragger=c}Rs.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];var Ps=Math.round,As="reconnectStart",ks="reconnectEnd",Ms="updateWaypoints";function Ds(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?Ms:ks:As)===Ms?"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===Ms?"connection.updateWaypoints":"connection.reconnect";if(t=n.allowed=r.allowed(p,{connection:i,source:c===As?s:o,target:c===ks?s:a}))return n.source=c===As?s:o,void(n.target=c===ks?s:a);!1===t&&(t=n.allowed=r.allowed(p,{connection:i,source:c===ks?s:a,target:c===As?s:o})),t&&(n.source=c===ks?s:a,n.target=c===As?s:o)}})),t.on(["bendpoint.move.out","bendpoint.move.cleanup"],(function(e){var t=e.context,n=t.type;t.hover=null,t.source=null,t.target=null,n!==Ms&&(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:Ps(e.x),y:Ps(e.y)};if(!n)return!1;u===Ms?(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===gt(t,i=e[r+1])||bt(n,i,t)?e.splice(r,1):r++;return e}(s),l)):(u===As?(l.docking="source",Bs(t)&&(l.docking="target",l.newWaypoints=s.reverse())):u===ks&&(l.docking="target",Bs(t)&&(l.docking="source",l.newWaypoints=s.reverse())),o.reconnect(r,c,p,h,l))}),this)}function Bs(e){var t=e.hover,n=e.source,i=e.target,r=e.type;return r===As?t&&i&&t===i&&n!==i:r===ks?t&&n&&t===n&&n!==i:void 0}Ds.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],Ds.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 Ns="updateWaypoints",Os="connect-ok",js="connect-not-ok",Ls="connect-hover",Is="djs-updating",zs="djs-element-hidden";function Fs(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,we(t.draggerGfx=bs(i.getLayer("overlays"))).add("djs-dragging"),i.addMarker(r,zs),i.addMarker(r,Is)})),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,Ls),o===Ns)return;n?(i.removeMarker(r,js),i.addMarker(r,Os)):!1===n&&(i.removeMarker(r,Os),i.addMarker(r,js))}})),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],1100,(function(e){var t=e.context,n=t.hover,r=t.target;n&&(i.removeMarker(n,Ls),i.removeMarker(n,r?Os:js))})),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),"reconnectStart"===c?Bs(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):"reconnectEnd"===c?Bs(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===Ns&&(h=e.cropWaypoints(p,h)),m.waypoints=h,r.drawPreview(n,i,m)),Vn(a,t.x,t.y)}),this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],1100,(function(e){var t=e.context,n=t.connection,o=t.draggerGfx,a=t.hover,s=t.target,c=t.waypoints;n.waypoints=c,Ce(o),i.removeMarker(n,Is),i.removeMarker(n,zs),a&&(i.removeMarker(a,Os),i.removeMarker(a,s?Os:js)),r&&r.cleanUp(t)}))}Fs.$inject=["bendpointMove","injector","eventBus","canvas"];var $s="connect-hover",Gs="djs-updating";function Hs(e,t,n){return Ws(e,t,e[t]+n)}function Ws(e,t,n){return{x:"x"===t?n:e.x,y:"y"===t?n:e.y}}function Vs(e){return"x"===e?"y":"x"}function Us(e,t,n){var i,r;return e.original?e.original:(i=cn(t),Ws(e,r=Vs(n),i[r]))}function qs(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 Ws(t,i,Math.min(Math.max(o+20,e[i]),r-20))}(n,i[e.segmentStartIndex+t],i[e.segmentEndIndex+t],Vs(e.axis));Vn(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=gs(n,h,e);(a=xt(d,f))&&(s="v"===a?"x":"y",0===u&&(d=Us(d,t.source,s)),l===h.length-1&&(f=Us(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=_s(r,t.segmentStart,t.segmentEnd),we(t.draggerGfx).add("djs-dragging"),n.addMarker(i,Gs)})),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=Hs(u,h,e["d"+h]),m=Hs(l,h,e["d"+h]),v=d.length,y=0;d[o]=f,d[a]=m,o<2&&(t=pn(r.source,f),1===o?"intersect"===t&&(d.shift(),d[0]=f,y--):"intersect"!==t&&(d.unshift(u),y++)),a>v-3&&(n=pn(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,$s)})),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],(function(e){var t=e.context.hover;t&&n.removeMarker(t,$s)})),t.on("connectionSegment.move.cleanup",(function(e){var t=e.context,i=t.connection;t.draggerGfx&&Ce(t.draggerGfx),n.removeMarker(i,Gs)})),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!bt(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)}))}qs.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var Ks=Math.abs,Ys=Math.round;function Xs(e){return{x:e.x,y:e.y}}function Zs(e){return{x:e.x+e.width,y:e.y+e.height}}function Qs(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:Ys(e.x+e.width/2),y:Ys(e.y+e.height/2)}}function Js(e,t){var n=e.snapped;return!!n&&("string"==typeof t?n[t]:n.x&&n.y)}function ec(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 tc(e){return e.children||[]}var nc=Math.abs,ic=Math.round;function rc(e){function t(e,t){if(l(e)){for(var n=e.length;n--;)if(nc(e[n]-t)<=10)return e[n]}else{var i=t%(e=+e);if(i<10)return t-i;if(i>e-10)return t-i+e}return t}function n(e){if(e.width)return{x:ic(e.width/2+e.x),y:ic(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))&&ec(e,"x",i),(p||-1!==o.horizontal.indexOf(s))&&ec(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))&&ec(e,"x",i),(h||-1!==a.horizontal.indexOf(u))&&ec(e,"y",r)}}))}rc.$inject=["eventBus"];var oc={__depends__:[ss,hs],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",Rs],bendpointMove:["type",Ds],bendpointMovePreview:["type",Fs],connectionSegmentMove:["type",qs],bendpointSnapping:["type",rc]};function ac(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:sc(t)?o:r,connectionEnd:sc(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=cn(n)),t.init(e,"connect",{autoActivate:r,data:{shape:n,context:{start:n,connectionStart:i}}})}}function sc(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}ac.$inject=["eventBus","dragging","modeling","rules"];var cc="connect-ok",pc="connect-not-ok";function uc(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.target,p=t.connectionStart||s,u=t.connectionEnd||{x:e.x,y:e.y},l=p,h=u;sc(t)&&(l=u,h=p),i.drawPreview(t,n,{source:o||a,target:c||r,connectionStart:l,connectionEnd:h})})),t.on("connect.hover",900,(function(e){var t=e.context,i=e.hover,r=t.canExecute;null!==r&&n.addMarker(i,r?cc:pc)})),t.on(["connect.out","connect.cleanup"],1100,(function(e){var t=e.hover;t&&(n.removeMarker(t,cc),n.removeMarker(t,pc))})),i&&t.on("connect.cleanup",(function(e){i.cleanUp(e.context)}))}uc.$inject=["injector","eventBus","canvas"];var lc={__depends__:[No,hs,ss],__init__:["connectPreview"],connect:["type",ac],connectPreview:["type",uc]};function hc(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)}hc.$inject=["injector","canvas","graphicsFactory","elementFactory"],hc.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()),Te(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?cn(c):l,p?cn(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)},hc.prototype.drawNoopPreview=function(e,t){var n=t.source,i=t.target,r=t.connectionStart||cn(n),o=t.connectionEnd||cn(i),a=this.cropWaypoints(r,o,n,i);me(e,this.createNoopConnection(a[0],a[1]))},hc.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&&un(o,s,!0)||e,t=i&&un(a,s,!1)||t]},hc.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Ce(e.connectionPreviewGfx)},hc.prototype.getConnection=function(e){var t=function(e){return h(e)?e:{}}(e);return this._elementFactory.createConnection(t)},hc.prototype.createConnectionPreviewGfx=function(){var e=Me("g");return ge(e,{pointerEvents:"none"}),we(e).add("djs-connection-preview"),me(this._canvas.getActiveLayer(),e),e},hc.prototype.createNoopConnection=function(e,t){var n=Me("polyline");return ge(n,{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"}),ge(n,{points:[e.x,e.y,t.x,t.y]}),n};var dc={__init__:["connectionPreview"],connectionPreview:["type",hc]},fc=Math.min,mc=Math.max;function vc(e){e.preventDefault()}function yc(e){e.stopPropagation()}function gc(e){this.container=e.container,this.parent=ce('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=le("[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 bc(e,t){this._eventBus=e,this._providers=[],this._textbox=new gc({container:t.getContainer(),keyHandler:I(this._handleKey,this),resizeHandler:I(this._handleResize,this)})}gc.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,re.bind(o,"keydown",this.keyHandler),re.bind(o,"mousedown",yc),re.bind(o,"paste",this.handlePaste),i.autoResize&&re.bind(o,"input",this.autoResize),i.resizable&&this.resizable(t),a.appendChild(r),this.setSelection(o.lastChild,o.lastChild&&o.lastChild.length),r},gc.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)}},gc.prototype.insertText=function(e){e=e.replace(/\r\n|\r|\n/g,"\n"),document.execCommand("insertText",!1,e)||this._insertTextIE(e)},gc.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&&de(t)})),n=o,i=s+e.length}n&&void 0!==i&&setTimeout((function(){self.setSelection(n,i)}))},gc.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})}},gc.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=ce('<div class="djs-direct-editing-resize-handle"></div>');var l=function(n){vc(n),yc(n);var l=fc(mc(p+n.clientX-s,i),o),h=fc(mc(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){vc(e),yc(e),re.unbind(document,"mousemove",l,!1),re.unbind(document,"mouseup",h,!1)};re.bind(n,"mousedown",(function(e){vc(e),yc(e),s=e.clientX,c=e.clientY;var n=t.getBoundingClientRect();p=n.width,u=n.height,re.bind(document,"mousemove",l),re.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)},gc.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),re.unbind(t,"keydown",this.keyHandler),re.unbind(t,"mousedown",yc),re.unbind(t,"input",this.autoResize),re.unbind(t,"paste",this.handlePaste),n&&(n.removeAttribute("style"),de(n)),de(e)},gc.prototype.getValue=function(){return this.content.innerText.trim()},gc.prototype.getSelection=function(){return window.getSelection().getRangeAt(0)},gc.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)},bc.$inject=["eventBus","canvas"],bc.prototype.registerProvider=function(e){this._providers.push(e)},bc.prototype.isActive=function(){return!!this._active},bc.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},bc.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},bc.prototype.close=function(){this._textbox.destroy(),this._fire("deactivate"),this._active=null,this.resizable=void 0},bc.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()}},bc.prototype.getValue=function(){return this._textbox.getValue()},bc.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())},bc.prototype._handleResize=function(e){this._fire("resize",e)},bc.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 xc={__depends__:[Co],__init__:["directEditing"],directEditing:["type",bc]},_c=".entry";function Ec(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()}Ec.$inject=["config.contextPad","eventBus","overlays"],Ec.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)}))},Ec.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("contextPad.getProviders",e,(function(e){e.providers.push(t)}))},Ec.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},Ec.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[H(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()},Ec.prototype.open=function(e,t){!t&&this.isOpen(e)||(this.close(),this._updateAndOpen(e))},Ec.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},Ec.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=ce(e.html||'<div class="entry" draggable="true"></div>');H(o,"data-action",t),(n=le("[data-group="+r+"]",i))||(n=ce('<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&&H(o,"title",e.title),e.imageUrl&&o.appendChild(ce('<img src="'+e.imageUrl+'">'))})),K(i).add("open"),this._current={element:e,pad:n,entries:t},this._eventBus.fire("contextPad.open",{current:this._current})},Ec.prototype.getPad=function(e){if(this.isOpen())return this._current.pad;var t=this,n=this._overlays,i=ce('<div class="djs-context-pad"></div>'),r=F({html:i},this._overlaysConfig);se.bind(i,_c,"click",(function(e){t.trigger("click",e)})),se.bind(i,_c,"dragstart",(function(e){t.trigger("dragstart",e)})),re.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},Ec.prototype.close=function(){this.isOpen()&&(this._overlays.remove(this._overlayId),this._overlayId=null,this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},Ec.prototype.isOpen=function(e){return!(!this._current||e&&this._current.element!==e)};var wc={__depends__:[Co,$o],contextPad:["type",Ec]},Sc=["marker-start","marker-mid","marker-end"],Cc=["circle","ellipse","line","path","polygon","polyline","rect"];function Tc(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){Ce(e)})),r._clonedMarkers={}}))}Tc.$inject=["elementRegistry","eventBus","canvas","styles"],Tc.prototype.getGfx=function(e){return this._elementRegistry.getGraphics(e)},Tc.prototype.addDragger=function(e,t,n){var i=Re(n=n||this.getGfx(e)),r=n.getBoundingClientRect();return this._cloneMarkers(Hn(i)),ge(i,this._styles.cls("djs-dragger",[],{x:r.top,y:r.left})),me(t,i),i},Tc.prototype.addFrame=function(e,t){var n=Me("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return me(t,n),n},Tc.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!==Cc.indexOf(e.nodeName)})(e)&&Sc.forEach((function(n){if(ge(e,n)){var i=function(e,t,n){return le("marker#"+(i=ge(e,t),i.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]),n||document);var i}(e,n,t._canvas.getContainer());t._cloneMarker(e,i,n)}}))},Tc.prototype._cloneMarker=function(e,t,n){var i=t.id,r=this._clonedMarkers[i];if(!r){var o=i+"-clone";(r=Re(t)).id=o,we(r).add("djs-dragger").add("djs-dragger-marker"),this._clonedMarkers[i]=r;var a=le("defs",this._canvas._svg);a||(a=Me("defs"),me(this._canvas._svg,a)),me(a,r)}ge(e,n,"url(#"+this._clonedMarkers[i].id+")")};var Rc={__init__:["previewSupport"],previewSupport:["type",Tc]},Pc="drop-ok",Ac="drop-not-ok",kc="attach-ok",Mc="new-parent",Dc="create";function Bc(e,t,n,i,r){function o(t,n){[kc,Pc,Ac,Mc].forEach((function(i){i===n?e.addMarker(t,i):e.removeMarker(t,i)}))}function a(){var e=t.context();e&&e.prefix===Dc&&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);Nc(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!Oc(e)})),s=!1,c=!1,p=!1;jc(e)&&(s=r.allowed("shape.attach",{position:n,shape:a,target:t})),s||(p=jc(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,kc):o(i,p?Mc:Ac))})),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;Nc(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!Oc(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"],2e3,(function(){n.off("elements.changed",a)}))})),this.start=function(e,n,i){l(n)||(n=[n]);var r=y(n,(function(e){return!Oc(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=pt(n);b(n,(function(e){Oc(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,Dc,{cursor:"grabbing",autoActivate:!0,data:{shape:r,elements:n,context:i}})}}}function Nc(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 Oc(e){return!!e.waypoints}function jc(e){return e&&1===e.length&&!Oc(e[0])}Bc.$inject=["canvas","dragging","eventBus","modeling","rules"];function Lc(e,t,n,i,r){t.on("create.move",750,(function(t){var o=t.hover,a=t.context,s=a.elements,c=a.dragGroup;c||(c=a.dragGroup=function(e){var t=Me("g");ge(t,r.cls("djs-drag-group",["no-events"]));var o=Me("g");return e.forEach((function(e){var r;e.hidden||(e.waypoints?(r=n._createContainer("connection",o),n.drawConnection(Hn(r),e)):(r=n._createContainer("shape",o),n.drawShape(Hn(r),e),Vn(r,e.x,e.y)),i.addDragger(e,t,r))})),t}(s)),o?(c.parentNode||me(e.getActiveLayer(),c),Vn(c,t.x,t.y)):Ce(c)})),t.on("create.cleanup",(function(e){var t=e.context.dragGroup;t&&Ce(t)}))}Lc.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];var Ic={__depends__:[ss,Rc,hs,No],__init__:["create","createPreview"],create:["type",Bc],createPreview:["type",Lc]},zc="data-id",Fc=["contextPad.close","canvas.viewbox.changing","commandStack.changed"];function $c(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={}}$c.$inject=["config.popupMenu","eventBus","canvas"],$c.prototype.registerProvider=function(e,t,n){n||(n=t,t=1e3),this._eventBus.on("popupMenu.getProviders."+e,t,(function(e){e.providers.push(n)}))},$c.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},$c.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()},$c.prototype.close=function(){this.isOpen()&&(this._emit("close"),this._unbindAutoClose(),de(this._current.container),this._current.container=null)},$c.prototype.isOpen=function(){return!!this._current.container},$c.prototype.trigger=function(e){e.preventDefault();var t=H(e.delegateTarget||e.target,zc),n=this._getEntry(t);if(n.action)return n.action.call(null,e,n)},$c.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"popupMenu.getProviders."+e,providers:[]});return this._eventBus.fire(t),t.providers},$c.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]=G(e,["id"])}))})),n},$c.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]=G(e,["id"])}))}})),n},$c.prototype._getEntry=function(e){var t=this._current.entries[e];if(!t)throw new Error("entry not found");return t},$c.prototype._emit=function(e){this._eventBus.fire("popupMenu."+e)},$c.prototype._createContainer=function(){var e=ce('<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},$c.prototype._attachContainer=function(e,t,n){var i=this;se.bind(e,".entry","click",(function(e){i.trigger(e)})),this._updateScale(e),t.appendChild(e),n&&this._assureIsInbounds(e,n)},$c.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+")")},$c.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})},$c.prototype._createEntries=function(e,t){var n=ce("<div>"),i=this;return K(n).add(t),b(e,(function(e,t){var r=i._createEntry(e,t);n.appendChild(r)})),n},$c.prototype._createEntry=function(e,t){var n=ce("<div>"),i=K(n);if(i.add("entry"),e.className&&e.className.split(" ").forEach((function(e){i.add(e)})),H(n,zc,t),e.label){var r=ce("<span>");r.textContent=e.label,n.appendChild(r)}return e.imageUrl&&n.appendChild(ce('<img src="'+e.imageUrl+'" />')),!0===e.active&&i.add("active"),!0===e.disabled&&i.add("disabled"),e.title&&(n.title=e.title),n},$c.prototype._bindAutoClose=function(){this._eventBus.once(Fc,this.close,this)},$c.prototype._unbindAutoClose=function(){this._eventBus.off(Fc,this.close,this)};var Gc={__init__:["popupMenu"],popupMenu:["type",$c]};function Hc(){}Hc.prototype.get=function(){return this._data},Hc.prototype.set=function(e){this._data=e},Hc.prototype.clear=function(){var e=this._data;return delete this._data,e},Hc.prototype.isEmpty=function(){return!this._data};var Wc={clipboard:["type",Hc]};function Vc(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)}))}Vc.$inject=["eventBus"],Vc.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 Uc={__init__:["mouse"],mouse:["type",Vc]};function qc(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),Kc(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=Xc(e)).original&&(e.original=Xc(e.original)),e}))}(n)),Yc(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 Kc(e){return!!e.waypoints}function Yc(e){return!!e.labelTarget}function Xc(e){return F({},e)}function Zc(e,t){var n=t.indexOf(e);return-1===n?t:t.splice(n,1)}qc.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],qc.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},qc.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||{}})}},qc.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=pt(e);return b(e,(function(e){Kc(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))},qc.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({},G(e,["priority"]));return i[e.parent]?a.parent=i[e.parent]:delete a.parent,n.fire("copyPaste.pasteElement",{cache:i,descriptor:a}),Kc(a)?(a.source=i[e.source],a.target=i[e.target],o=i[e.id]=t.createConnection(a),void r.push(o)):Yc(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},qc.prototype.createConnection=function(e){return this._elementFactory.createConnection(G(e,["id"]))},qc.prototype.createLabel=function(e){return this._elementFactory.createLabel(G(e,["id"]))},qc.prototype.createShape=function(e){return this._elementFactory.createShape(G(e,["id"]))},qc.prototype.hasRelations=function(e,t){var n,i;return!(Kc(e)&&(n=y(t,D({id:e.source.id})),i=y(t,D({id:e.target.id})),!n||!i))&&!(Yc(e)&&!y(t,D({id:e.labelTarget.id})))},qc.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 st(rt(e),(function(e,t,n){if(!Yc(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)?Zc(r.element,e):(i[o]||(i[o]=[]),i[o].push(r.descriptor)):Zc(r.element,e)})),i};var Qc={__depends__:[Wc,Ic,Uc,hs],__init__:["copyPaste"],copyPaste:["type",qc]};function Jc(e,t,n){l(n)||(n=[n]),b(n,(function(n){c(e[n])||(t[n]=e[n])}))}function ep(e,t,n){var i;t.on("copyPaste.copyElement",750,(function(e){var t=e.descriptor,n=e.element,i=t.oldBusinessObject=kr(n);if(t.type=n.type,Jc(i,t,"name"),t.di={},Jc(i.di,t.di,["fill","stroke","background-color","border-color","color"]),Jc(i.di,t,"isExpanded"),tp(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&&Ar(r,"bpmn:Participant")&&Ar(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;tp(c)?c.businessObject=kr(s[c.labelTarget]):(r=e.create(p.$type),c.businessObject=n.copyElement(p,r),function(e,t){var n=kr(e);e.default&&(i[e.default]={element:n,property:"default"}),e.host&&(kr(e).attachedToRef=kr(t[e.host])),i=G(i,_(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),Jc(c,r,["isExpanded","name"]),o=c,l(a="oldBusinessObject")||(a=[a]),b(a,(function(e){o[e]&&delete o[e]})))}))}function tp(e){return!!e.labelTarget}ep.$inject=["bpmnFactory","eventBus","moddleCopy"];var np=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing"];function ip(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===np.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 rp(e,t){return _(e.properties,(function(e,n){return t&&n.default?e:e.concat(n.name)}),[])}ip.$inject=["eventBus","bpmnFactory","moddle"],ip.prototype.copyElement=function(e,t,n){var i=this;n&&!l(n)&&(n=[n]),n=n||rp(e.$descriptor);var r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t});return!1===r||(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},ip.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.isReference){if(o.isId)return this._copyId(e,t);if(l(e))return _(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}}},ip.prototype._copyId=function(e,t){return this._moddle.ids.assigned(e)?void 0:(this._moddle.ids.claim(e,t),e)};var op={__depends__:[Qc],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",ep],moddleCopy:["type",ip]},ap=Math.round;function sp(e){this._modeling=e}sp.$inject=["modeling"],sp.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=ap(a+r/2),p=ap(s+o/2);return i.replaceShape(e,F({},t,{x:c,y:p,width:r,height:o}),n)};var cp={__init__:["replace"],replace:["type",sp]};var pp=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function up(e,t,n,i,r,o,a){this.replaceElement=function(s,p,u){u=u||{};var h=p.type,d=s.businessObject;if(lp(d)&&"bpmn:SubProcess"===h&&function(e,t){var n=e&&v(e,"collapsed")?e.collapsed:!Mr(e);return n!==(t&&(v(t,"collapsed")||v(t,"isExpanded"))?v(t,"collapsed")?t.collapsed:!t.isExpanded:n)&&(e.collapsed=n,!0)}(s,p))return i.toggleCollapse(s),s;var f,m=e.create(h),y={type:h,businessObject:m},x=rp(d.$descriptor),_=rp(m.$descriptor,!0),E=(f=_,x.filter((function(e){return-1!==f.indexOf(e)})));F(m,$(p,pp));var w=g(E,(function(e){return"eventDefinitions"===e?hp(s,p.eventDefinitionType):"loopCharacteristics"===e?!Dr(m):!v(m,e)&&(("processRef"!==e||!1!==p.isExpanded)&&"triggeredByEvent"!==e)}));return m=n.copyElement(d,m,w),p.eventDefinitionType&&(hp(m,p.eventDefinitionType)||(y.eventDefinitionType=p.eventDefinitionType,y.eventDefinitionAttrs=p.eventDefinitionAttrs)),Ar(d,"bpmn:Activity")&&(lp(d)?y.isExpanded=Mr(d):p&&v(p,"isExpanded")&&(y.isExpanded=p.isExpanded),Mr(d)&&!Ar(d,"bpmn:Task")&&y.isExpanded&&(y.width=s.width,y.height=s.height)),lp(d)&&!lp(m)&&(u.moveChildren=!1),Ar(d,"bpmn:Participant")&&(!0===p.isExpanded?m.processRef=e.create("bpmn:Process"):u.moveChildren=!1,y.width=s.width,y.height=t._getDefaultSize(m).height),o.allowed("shape.resize",{shape:m})||(y.height=t._getDefaultSize(m).height,y.width=t._getDefaultSize(m).width),m.name=d.name,Ga(d,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&Ga(m,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(m.default=d.default),p.host&&!Ar(d,"bpmn:BoundaryEvent")&&Ar(m,"bpmn:BoundaryEvent")&&(y.host=p.host),"bpmn:DataStoreReference"!==y.type&&"bpmn:DataObjectReference"!==y.type||(y.x=s.x+(s.width-y.width)/2),y.di={},function(e,t,n){l(n)||(n=[n]),b(n,(function(n){c(e[n])||(t[n]=e[n])}))}(d.di,y.di,["fill","stroke","background-color","border-color","color"]),y=r.replaceElement(s,y,u),!1!==u.select&&a.select(y),y}}function lp(e){return Ar(e,"bpmn:SubProcess")}function hp(e,t){var n=kr(e);return t&&n.get("eventDefinitions").some((function(e){return Ar(e,t)}))}up.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","rules","selection"];var dp={__depends__:[op,cp,No],bpmnReplace:["type",up]};function fp(e){return function(t){var n=t.target,i=kr(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===Mr(i);return!(o&&a&&s&&c)}}var mp=[{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"}}],vp=[{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"}}],yp=[{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"}}],gp=[{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"}}],bp=[{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"}}],xp=[{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}}],_p=[{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}}],Ep=[{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}}],wp=[{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}}],Sp=[{label:"Data Store Reference",actionName:"replace-with-data-store-reference",className:"bpmn-icon-data-store",target:{type:"bpmn:DataStoreReference"}}],Cp=[{label:"Data Object Reference",actionName:"replace-with-data-object-reference",className:"bpmn-icon-data-object",target:{type:"bpmn:DataObjectReference"}}],Tp=[{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}}],Rp=[{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}}],Pp=[{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"}],Ap=[{label:"Expanded Pool",actionName:"replace-with-expanded-pool",className:"bpmn-icon-participant",target:{type:"bpmn:Participant",isExpanded:!0}},{label:function(e){var t="Empty Pool";return e.children&&e.children.length&&(t+=" (removes content)"),t},actionName:"replace-with-collapsed-pool",className:"bpmn-icon-lane",target:{type:"bpmn:Participant",isExpanded:!1}}];function kp(e,t,n,i,r,o,a){this._bpmnFactory=e,this._popupMenu=t,this._modeling=n,this._moddle=i,this._bpmnReplace=r,this._rules=o,this._translate=a,this.register()}kp.$inject=["bpmnFactory","popupMenu","modeling","moddle","bpmnReplace","rules","translate"],kp.prototype.register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},kp.prototype.getEntries=function(e){var t,n=e.businessObject;if(!this._rules.allowed("shape.replace",{element:e}))return[];var i=fp(e);return Ar(n,"bpmn:DataObjectReference")?this._createEntries(e,Sp):Ar(n,"bpmn:DataStoreReference")?this._createEntries(e,Cp):Ar(n,"bpmn:StartEvent")&&!Ar(n.$parent,"bpmn:SubProcess")?(t=g(mp,i),this._createEntries(e,t)):Ar(n,"bpmn:Participant")?(t=g(Ap,(function(e){return Mr(n)!==e.target.isExpanded})),this._createEntries(e,t)):Ar(n,"bpmn:StartEvent")&&Dr(n.$parent)?(t=g(Rp,(function(t){var n=!1!==t.target.isInterrupting,r=kr(e).isInterrupting===n;return i(t)||!i(t)&&!r})),this._createEntries(e,t)):Ar(n,"bpmn:StartEvent")&&!Dr(n.$parent)&&Ar(n.$parent,"bpmn:SubProcess")?(t=g(vp,i),this._createEntries(e,t)):Ar(n,"bpmn:EndEvent")?(t=g(gp,(function(e){return!("bpmn:CancelEventDefinition"==e.target.eventDefinitionType&&!Ar(n.$parent,"bpmn:Transaction"))&&i(e)})),this._createEntries(e,t)):Ar(n,"bpmn:BoundaryEvent")?(t=g(Tp,(function(e){var t=e.target;if("bpmn:CancelEventDefinition"==t.eventDefinitionType&&!Ar(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)):Ar(n,"bpmn:IntermediateCatchEvent")||Ar(n,"bpmn:IntermediateThrowEvent")?(t=g(yp,i),this._createEntries(e,t)):Ar(n,"bpmn:Gateway")?(t=g(bp,i),this._createEntries(e,t)):Ar(n,"bpmn:Transaction")?(t=g(_p,i),this._createEntries(e,t)):Dr(n)&&Mr(n)?(t=g(Ep,i),this._createEntries(e,t)):Ar(n,"bpmn:SubProcess")&&Mr(n)?(t=g(xp,i),this._createEntries(e,t)):Ar(n,"bpmn:AdHocSubProcess")&&!Mr(n)?(t=g(wp,(function(t){var n=t.target,i="bpmn:SubProcess"===n.type,r=!0===n.isExpanded;return fp(e)&&(!i||r)})),this._createEntries(e,t)):Ar(n,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,Pp):Ar(n,"bpmn:FlowNode")?(t=g(wp,i),Ar(n,"bpmn:SubProcess")&&!Mr(n)&&(t=g(t,(function(e){return"Sub Process (collapsed)"!==e.label}))),this._createEntries(e,t)):[]},kp.prototype.getHeaderEntries=function(e){var t=[];return Ar(e,"bpmn:Activity")&&!Dr(e)&&(t=t.concat(this._getLoopEntries(e))),Ar(e,"bpmn:DataObjectReference")&&(t=t.concat(this._getDataObjectIsCollection(e))),Ar(e,"bpmn:Participant")&&(t=t.concat(this._getParticipantMultiplicity(e))),!Ar(e,"bpmn:SubProcess")||Ar(e,"bpmn:Transaction")||Dr(e)||t.push(this._getAdHocEntry(e)),t},kp.prototype._createEntries=function(e,t){var n=[],i=this;return b(t,(function(t){var r=i._createMenuEntry(t,e);n.push(r)})),n},kp.prototype._createSequenceFlowEntries=function(e,t){var n=kr(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&&(Ar(n.sourceRef,"bpmn:ExclusiveGateway")||Ar(n.sourceRef,"bpmn:InclusiveGateway")||Ar(n.sourceRef,"bpmn:ComplexGateway")||Ar(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&&Ar(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(Ar(n.sourceRef,"bpmn:Activity")&&n.conditionExpression)return i.push(a._createMenuEntry(t,e,(function(){r.updateProperties(e,{conditionExpression:void 0})})));if((Ar(n.sourceRef,"bpmn:ExclusiveGateway")||Ar(n.sourceRef,"bpmn:InclusiveGateway")||Ar(n.sourceRef,"bpmn:ComplexGateway")||Ar(n.sourceRef,"bpmn:Activity"))&&n.sourceRef.default===n)return i.push(a._createMenuEntry(t,e,(function(){r.updateProperties(e.source,{default:void 0})})))}})),i},kp.prototype._createMenuEntry=function(e,t,n){var i=this._translate,r=this._bpmnReplace.replaceElement,o=e.label;return o&&"function"==typeof o&&(o=o(t)),n=n||function(){return r(t,e.target)},{label:i(o),className:e.className,id:e.actionName,action:n}},kp.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=kr(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"}}]},kp.prototype._getDataObjectIsCollection=function(e){var t=this,n=this._translate;var i=e.businessObject.dataObjectRef,r=i.isCollection;return[{id:"toggle-is-collection",className:"bpmn-icon-parallel-mi-marker",title:n("Collection"),active:r,action:function(n,r){t._modeling.updateModdleProperties(e,i,{isCollection:!r.active})}}]},kp.prototype._getParticipantMultiplicity=function(e){var t=this,n=this._bpmnFactory,i=this._translate;var r=e.businessObject.participantMultiplicity;return[{id:"toggle-participant-multiplicity",className:"bpmn-icon-parallel-mi-marker",title:i("Participant Multiplicity"),active:!!r,action:function(i,r){var o;r.active||(o=n.create("bpmn:ParticipantMultiplicity")),t._modeling.updateProperties(e,{participantMultiplicity:o})}}]},kp.prototype._getAdHocEntry=function(e){var t=this._translate,n=Ar(kr(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 Mp={__depends__:[Gc,dp],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",kp]},Dp=Math.max,Bp=Math.min;function Np(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function Op(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)?Bp:Dp)(i,r)),d(o)&&(i=(/top|left/.test(e)?Dp:Bp)(i,o)),i}function jp(e,t){return void 0!==e?e:20}function Lp(e){return!e.waypoints&&"label"!==e.type}function Ip(e,t){var n;if((n=void 0===e.length?g(e.children,Lp):e).length)return function(e,t){var n,i,r,o;return"object"==typeof t?(n=jp(t.left),i=jp(t.right),r=jp(t.top),o=jp(t.bottom)):n=i=r=o=jp(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}(pt(n),t)}var zp=Math.abs;var Fp=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"],$p=30;function Gp(e,t){return t=t||[],e.children.filter((function(e){Ar(e,"bpmn:Lane")&&(Gp(e,t),t.push(e))})),t}function Hp(e){return e.children.filter((function(e){return Ar(e,"bpmn:Lane")}))}function Wp(e){return Ha(e,Fp)||e}function Vp(e,t){var n=Wp(e),i=Gp(n,Ar(n,"bpmn:Process")?[]:[n]),r=an(e),o=an(t),a=function(e,t){return Np(an(t),an(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=an(t);a.top&&(zp(h.bottom-r.top)<10&&(u=o.top-h.bottom),zp(h.top-r.top)<5&&(c=o.top-h.top)),a.bottom&&(zp(h.top-r.bottom)<10&&(c=o.bottom-h.top),zp(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 Up(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(xo(e)&&i.isOpen(t)){var n=i.getEntries(t);n.replace&&n.replace.action.click(e,t)}}))}function qp(e,t,n){var i=e.$instanceOf(t),r=!1;return b(e.eventDefinitions||[],(function(e){e.$type===n&&(r=!0)})),i&&r}Up.$inject=["config.contextPad","injector","eventBus","contextPad","modeling","elementFactory","connect","create","popupMenu","canvas","rules","translate"],Up.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(Ga(d,["bpmn:Lane","bpmn:Participant"])&&Mr(d)){var y=Hp(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")}}}})}Ar(d,"bpmn:FlowNode")&&(Ar(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"})}):qp(d,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?F(h,{"append.compensation-activity":m("bpmn:Task","bpmn-icon-task",u("Append compensation activity"),{isForCompensation:!0})}):Ar(d,"bpmn:EndEvent")||d.isForCompensation||qp(d,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")||Dr(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)}}}}),Ga(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}}}),Ar(d,"bpmn:TextAnnotation")&&F(h,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:u("Connect using Association"),action:{click:f,dragstart:f}}}),Ga(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}}}),Ar(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 Kp={__depends__:[xc,wc,No,lc,Ic,Mp],__init__:["contextPadProvider"],contextPadProvider:["type",Up]},Yp={horizontal:["x","width"],vertical:["y","height"]};function Xp(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}))}))}Xp.$inject=["modeling"],Xp.prototype.registerFilter=function(e){if("function"!=typeof e)throw new Error("the filter has to be a function");this._filters.push(e)},Xp.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},Xp.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},Xp.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},Xp.prototype._setOrientation=function(e){var t=Yp[e];this._axis=t[0],this._dimension=t[1]},Xp.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)},Xp.prototype._findRange=function(e){var t=e[this._axis];return{min:t+5,max:t+e[this._dimension]-5}};var Zp={__init__:["distributeElements"],distributeElements:["type",Xp]};function Qp(e){e.registerFilter((function(e){return g(e,(function(e){var t=Ga(e,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:Participant","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(e.labelTarget||t)}))}))}Qp.$inject=["distributeElements"];var Jp={__depends__:[Zp],__init__:["bpmnDistributeElements"],bpmnDistributeElements:["type",Qp]},eu="is not a registered action";function tu(e,t){this._actions={};var n=this;e.on("diagram.init",(function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})}))}function nu(e,t){return new Error(e+" "+t)}tu.$inject=["eventBus","injector"],tu.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)}))},tu.prototype.trigger=function(e,t){if(!this._actions[e])throw nu(e,eu);return this._actions[e](t)},tu.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)}))},tu.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw nu(e,"is already registered");this._actions[e]=t},tu.prototype.unregister=function(e){if(!this.isRegistered(e))throw nu(e,eu);this._actions[e]=void 0},tu.prototype.getActions=function(){return Object.keys(this._actions)},tu.prototype.isRegistered=function(e){return!!this._actions[e]};var iu={__init__:["editorActions"],editorActions:["type",tu]};function ru(e){e.invoke(tu,this)}n(ru,tu),ru.$inject=["injector"],ru.prototype._registerDefaultActions=function(e){tu.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!Ar(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=pt(i=Ar(r,"bpmn:Collaboration")?n.filter((function(e){return Ar(e.parent,"bpmn:Collaboration")})):n.filter((function(e){return e!==r&&!Ar(e.parent,"bpmn:SubProcess")}))),h.moveElements(i,{x:-e.x,y:-e.y},r)}))};var ou={__depends__:[iu],editorActions:["type",ru]};function au(e){e.on(["create.init","shape.move.init"],(function(e){var t=e.context;Ga(e.shape,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(t.gridSnappingContext||(t.gridSnappingContext={}),t.gridSnappingContext.snapLocation="top-left")}))}au.$inject=["eventBus"];function su(e,t,n){return n||(n="round"),Math[n](e/t)*t}function cu(e,t,n){var i=!n||!1!==n.active;this._eventBus=t;var r=this;t.on("diagram.init",800,(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"],1200,(function(t){var n=t.originalEvent;if(!(!r.active||n&&Ho(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)||(pu(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&&(pu(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&&(pu(t)?lu(s)?a.x.max=c.left:a.x.min=c.right:uu(s)?a.y.max=c.top:a.y.min=c.bottom);p&&(pu(t)?lu(s)?a.x.min=p.left:a.x.max=p.right:uu(s)?a.y.min=p.top:a.y.max=p.bottom);return a[t]}(t,n);a&&F(i,a),Js(t,n)||r.snapEvent(t,n,i)}))}}))}function pu(e){return"x"===e}function uu(e){return-1!==e.indexOf("n")}function lu(e){return-1!==e.indexOf("w")}function hu(e,t){Ka.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)}}))}cu.prototype.snapEvent=function(e,t,n){ec(e,t,this.snapValue(e[t],n))},cu.prototype.getGridSpacing=function(){return 10},cu.prototype.snapValue=function(e,t){var n,i,r=0;return t&&t.offset&&(r=t.offset),e=su(e+=r,10),t&&t.min&&d(n=t.min)&&(n=su(n+r,10,"ceil"),e=Math.max(e,n)),t&&t.max&&d(i=t.max)&&(i=su(i+r,10,"floor"),e=Math.min(e,i)),e-=r},cu.prototype.isActive=function(){return this.active},cu.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},cu.prototype.toggleActive=function(){this.setActive(!this.active)},cu.$inject=["elementRegistry","eventBus","config.gridSnapping"],hu.$inject=["eventBus","gridSnapping","modeling"],n(hu,Ka),hu.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},hu.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},hu.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},hu.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};function du(e,t){e.on(["spaceTool.move","spaceTool.end"],2e3,(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))}))}du.$inject=["eventBus","gridSnapping"];var fu={__depends__:[{__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",hu],gridSnappingSpaceToolBehavior:["type",du]}],__init__:["gridSnapping"],gridSnapping:["type",cu]};function mu(e,t){e.on("autoPlace",2e3,(function(e){var n=e.source,i=cn(n),r=e.shape,o=Wa(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],Ar(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}))}mu.$inject=["eventBus","gridSnapping"];function vu(e,t,n){t.on(["create.start","shape.move.start"],1750,(function(t){var i=t.context,r=i.shape,o=e.getRootElement();Ar(r,"bpmn:Participant")&&Ar(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})))}))}vu.$inject=["canvas","eventBus","gridSnapping"];function yu(e,t,n){Ka.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],3e3,(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 gu(e,t,n){var i=xt(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]}yu.$inject=["eventBus","gridSnapping","modeling"],n(yu,Ka),yu.prototype.snapMiddleSegments=function(e){var t,n=this._gridSnapping;e=e.slice();for(var i=1;i<e.length-2;i++)t=gu(n,e[i],e[i+1]),e[i]=t[0],e[i+1]=t[1];return e};var bu={__depends__:[fu,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingCreateParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",mu],gridSnappingCreateParticipantBehavior:["type",vu],gridSnappingLayoutConnectionBehavior:["type",yu]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",au]};function xu(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],(function(e){var t=e.element,i=e.gfx;return Ar(t,"bpmn:Lane")?n.createParticipantHit(t,i):Ar(t,"bpmn:Participant")?Mr(t)?n.createParticipantHit(t,i):n.createDefaultHit(t,i):Ar(t,"bpmn:SubProcess")?Mr(t)?n.createSubProcessHit(t,i):n.createDefaultHit(t,i):void 0}))}xu.$inject=["eventBus","interactionEvents"],xu.prototype.createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},xu.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},xu.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 _u={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",xu]};function Eu(e){e.invoke(Jo,this)}n(Eu,Jo),Eu.$inject=["injector"],Eu.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}Jo.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 wu={__depends__:[ea],__init__:["keyboardBindings"],keyboardBindings:["type",Eu]},Su={moveSpeed:1,moveSpeedAccelerated:10},Cu="left",Tu="right",Ru="down",Pu={ArrowLeft:Cu,Left:Cu,ArrowUp:"up",Up:"up",ArrowRight:Tu,Right:Tu,ArrowDown:Ru,Down:Ru},Au={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 ku(e,t,n,i,r){var o=this;this._config=F({},Su,e||{}),t.addListener(1500,(function(e){var n=e.keyEvent,i=Pu[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=Au[e](a);i.allowed("elements.move",{shapes:o})&&n.moveElements(o,s)}}}ku.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];var Mu={__depends__:[ea,No],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",ku]};function Du(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(ut(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)}))}Du.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];var Bu={__init__:["changeSupport"],changeSupport:["type",Du]};function Nu(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=an(e);return sn({top:Op("top",n,t),right:Op("right",n,t),bottom:Op("bottom",n,t),left:Op("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:an(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=rn(r)))return;n.resizeShape(t,r)}}(e.context)}))}function Ou(e,t){var n=cn(e),i=an(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 ju(e){return"n"===e||"s"===e?"resize-ns":"e"===e||"w"===e?"resize-ew":"nw"===e||"se"===e?"resize-nwse":"resize-nesw"}Nu.prototype.canResize=function(e){var t=this._rules,n=$(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},Nu.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,Ou(t,r),"resize",{autoActivate:!0,cursor:ju(r),data:{shape:t,context:i}})},Nu.prototype.computeMinResizeBox=function(e){var t=e.shape;return function(e,t,n,i){var r=an(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?an(i):o;return sn({top:Bp(o.top,a.top),left:Bp(o.left,a.left),bottom:Dp(o.bottom,a.bottom),right:Dp(o.right,a.right)})}(e.direction,t,e.minDimensions||{width:10,height:10},Ip(t,e.childrenBoxPadding))},Nu.$inject=["eventBus","rules","modeling","dragging"];var Lu="djs-resizing",Iu="resize-not-ok";function zu(e,t,n){e.on("resize.move",500,(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.getActiveLayer()),t.addMarker(r,Lu)),o.width>5&&ge(a,{x:o.x,width:o.width}),o.height>5&&ge(a,{y:o.y,height:o.height}),i.canExecute?we(a).remove(Iu):we(a).add(Iu)})),e.on("resize.cleanup",(function(e){var n,i;n=e.context,i=n.shape,n.frame&&Ce(n.frame),t.removeMarker(i,Lu)}))}zu.$inject=["eventBus","canvas","previewSupport"];var Fu=-6,$u="djs-resizer",Gu=["n","w","s","e","nw","ne","se","sw"];function Hu(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))}))}Hu.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(t){bo(t)&&i.activate(t,e,n)}re.bind(t,"mousedown",r),re.bind(t,"touchstart",r)},Hu.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=6:-1!==e.indexOf("w")&&(t.x=Fu);-1!==e.indexOf("s")?t.y=6:-1!==e.indexOf("n")&&(t.y=Fu);return t}(i),a=Me("g");we(a).add($u),we(a).add("djs-resizer-"+e.id),we(a).add("djs-resizer-"+i),me(r,a);var s=Me("rect");ge(s,{x:-2+o.x,y:-2+o.y,width:4,height:4}),we(s).add("djs-resizer-visual"),me(a,s);var c=Me("rect");return ge(c,{x:-10+o.x,y:-10+o.y,width:20,height:20}),we(c).add("djs-resizer-hit"),me(a,c),Wn(a,t,n),a},Hu.prototype.createResizer=function(e,t){var n=Ou(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},Hu.prototype.addResizer=function(e){var t=this;this._resize.canResize({shape:e})&&b(Gu,(function(n){t.createResizer(e,n)}))},Hu.prototype.removeResizers=function(){Te(this._getResizersParent())},Hu.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},Hu.$inject=["eventBus","canvas","selection","resize"];var Wu={__depends__:[hs,ss,Rc],__init__:["resize","resizePreview","resizeHandles"],resize:["type",Nu],resizePreview:["type",zu],resizeHandles:["type",Hu]};function Vu(e,t){var n=t.create("bpmn:CategoryValue"),i=t.create("bpmn:Category",{categoryValue:[n]});return vt(e.get("rootElements"),i),kr(i).$parent=e,kr(n).$parent=i,n}function Uu(e,t,n,i,r,o,a){function s(e,t){(t||Ga(e,["bpmn:Task","bpmn:TextAnnotation","bpmn:Group"])||qu(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 qu(e){return Ar(e,"bpmn:SubProcess")&&!Mr(e)}Uu.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],Uu.prototype.activate=function(e){var t=Or(e);if(void 0!==t){var n={text:t};F(n,this.getEditingBBox(e));var i={};return(Ga(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||qu(e))&&F(i,{centerVertically:!0}),io(e)&&F(i,{autoResize:!0}),Ar(e,"bpmn:TextAnnotation")&&F(i,{resizable:!0,autoResize:!0}),F(n,{options:i}),n}},Uu.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};(Ar(e,"bpmn:Lane")||function(e){return Ar(e,"bpmn:Participant")&&Mr(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)"})),(Ga(e,["bpmn:Task","bpmn:CallActivity"])||function(e){return Ar(e,"bpmn:Participant")&&!Mr(e)}(e)||qu(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 Ar(e,"bpmn:SubProcess")&&Mr(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"})),io(n)&&!ro(n)&&!so(n)){var g=ao(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 Ar(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}},Uu.prototype.update=function(e,t,n,i){var r,o,a;if((Ar(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}),Ar(e,"bpmn:Group"))&&!kr(e).categoryValueRef){var s=Vu(kr(this._canvas.getRootElement()).$parent,this._bpmnFactory);kr(e).categoryValueRef=s}(a=t)&&a.trim()||(t=null),this._modeling.updateLabel(e,t,r)};var Ku="djs-element-hidden",Yu="djs-label-hidden";function Xu(e,t,n,i){var r,o,a,s=this,c=t.getDefaultLayer();e.on("directEditing.activate",(function(e){var n=e.active;if(Ar(r=n.element.label||n.element,"bpmn:TextAnnotation")){o=t.getAbsoluteBBox(r),a=Me("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=Me("path");ge(u,{d:p,strokeWidth:2,stroke:Zu(r)}),me(a,u),me(c,a),Vn(a,r.x,r.y)}Ar(r,"bpmn:TextAnnotation")||r.labelTarget?t.addMarker(r,Ku):(Ar(r,"bpmn:Task")||Ar(r,"bpmn:CallActivity")||Ar(r,"bpmn:SubProcess")||Ar(r,"bpmn:Participant"))&&t.addMarker(r,Yu)})),e.on("directEditing.resize",(function(e){if(Ar(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}});ge(s.path,{d:c})}})),e.on(["directEditing.complete","directEditing.cancel"],(function(e){var n=e.active;n&&(t.removeMarker(n.element.label||n.element,Ku),t.removeMarker(r,Yu)),r=void 0,o=void 0,a&&(Ce(a),a=void 0)}))}function Zu(e,t){return kr(e).di.get("stroke")||t||"black"}Xu.$inject=["eventBus","canvas","elementRegistry","pathMap"];var Qu={__depends__:[Bu,Wu,xc],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",Uu],labelEditingPreview:["type",Xu]},Ju=["top","bottom","left","right"],el=10;function tl(e,t){function n(e){if(ro(e)){var n=function(e){var t=cn(e.label),n=nl(cn(e),t);if(i=n,-1===Ju.indexOf(i))return;var i;var r=function(e){var t=cn(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 nl(t,e)}))}(e);if(e.host){var o=function(e){var t,n=e.host,i=pn(cn(e),n);t=i.indexOf("-")>=0?i.split("-"):[i];return Ju.filter((function(e){return-1===t.indexOf(e)}))}(e);r=r.concat(o)}var a=Ju.filter((function(e){return-1===r.indexOf(e)}));if(-1!==a.indexOf(n))return;return a[0]}(e);n&&function(e,n){var i=cn(e),r=e.label,o=cn(r);if(!r.parent)return;var a,s=an(e);switch(n){case"top":a={x:i.x,y:s.top-el-r.height/2};break;case"left":a={x:s.left-el-r.width/2,y:i.y};break;case"bottom":a={x:i.x,y:s.bottom+el+r.height/2};break;case"right":a={x:s.right+el+r.width/2,y:i.y}}var c=pa(a,o);t.moveShape(r,c)}(e,n)}}Ka.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 nl(e,t){return pn(t,e,5)}function il(e,t,n){Ka.call(this,e),this.preExecute("shape.append",(function(e){var t=e.source,n=e.shape;e.position||(Ar(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 rl(e,t){e.invoke(Ka,this),this.postExecute("shape.move",(function(e){var n=e.newParent,i=e.shape;b(g(i.incoming.concat(i.outgoing),(function(e){return Ar(e,"bpmn:Association")})),(function(e){t.moveConnection(e,{x:0,y:0},n)}))}),!0)}n(tl,Ka),tl.$inject=["eventBus","modeling"],n(il,Ka),il.$inject=["eventBus","elementFactory","bpmnRules"],n(rl,Ka),rl.$inject=["injector","modeling"];function ol(e,t){t.invoke(Ka,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",500,(function(e){var t=e.elements;1===(t=t.filter((function(e){return al(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",500,(function(e){var t=e.shapes,i=e.newHost;if(1===t.length){var r=t[0];al(r,i)&&(e.shapes=[n.replaceShape(r,i)])}}),!0)}function al(e,t){return!so(e)&&Ga(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}ol.$inject=["bpmnReplace","injector"],n(ol,Ka),ol.prototype.replaceShape=function(e,t){var n,i=(n=kr(e).eventDefinitions)&&n[0],r={type:"bpmn:BoundaryEvent",host:t};return i&&(r.eventDefinitionType=i.$type),this._bpmnReplace.replaceElement(e,r,{layoutConnection:!1})};function sl(e,t,n){function i(e){return g(e.attachers,(function(e){return Ar(e,"bpmn:BoundaryEvent")}))}Ka.call(this,e),this.postExecute("connection.create",(function(e){var t=e.context.source,r=e.context.target,o=i(r);Ar(t,"bpmn:EventBasedGateway")&&Ar(r,"bpmn:ReceiveTask")&&o.length>0&&n.removeElements(o)})),this.postExecute("connection.reconnect",(function(e){var t=e.context.oldSource,r=e.context.newSource;Ar(t,"bpmn:Gateway")&&Ar(r,"bpmn:EventBasedGateway")&&b(r.outgoing,(function(e){var t=e.target,r=i(t);Ar(t,"bpmn:ReceiveTask")&&r.length>0&&n.removeElements(r)}))})),e.on("moddleCopy.canCopyProperty",2e3,(function(e){var n=e.parent,i=e.property,r=e.propertyName,o=t.getPropertyDescriptor(n,r);o&&o.isReference&&Ar(i,"bpmn:RootElement")&&n.set(r,i)}))}sl.$inject=["eventBus","moddle","modeling"],n(sl,Ka);function cl(e,t,n,i,r){function o(e){return Ga(e,["bpmn:ReceiveTask","bpmn:SendTask"])||function(e,t){l(t)||(t=[t]);return w(t,(function(t){return Br(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 Ar(e,"bpmn:ErrorEventDefinition")?"errorRef":Ar(e,"bpmn:EscalationEventDefinition")?"escalationRef":Ar(e,"bpmn:MessageEventDefinition")?"messageRef":Ar(e,"bpmn:SignalEventDefinition")?"signalRef":void 0}function c(e){if(Ga(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.get("messageRef");var t=e.get("eventDefinitions")[0];return t.get(s(t))}n.invoke(Ka,this),this.executed("shape.create",(function(t){var n=t.shape;if(o(n)){var i=c(kr(n));i&&!a(i)&&(vt(e.getDefinitions().get("rootElements"),i),t.addedRootElement=i)}}),!0),this.reverted("shape.create",(function(t){var n=t.addedRootElement;n&&mt(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(kr(n));i&&(t.referencedRootElement=i)}})),t.on("copyPaste.pasteElement",500,(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(Ga(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.set("messageRef",t);var n=e.get("eventDefinitions")[0];n.set(s(n),t)}(n,c))}}))}function pl(e){e.invoke(Ka,this),this.preExecute("shape.create",1500,(function(e){var t=e.context,n=t.parent,i=t.shape;Ar(n,"bpmn:Lane")&&!Ar(i,"bpmn:Lane")&&(t.parent=Ha(n,"bpmn:Participant"))}))}cl.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],n(cl,Ka),pl.$inject=["injector"],n(pl,Ka);var ul=1500;function ll(e,t,n){t.on(["create.hover","create.move","create.out","create.end","shape.move.hover","shape.move.move","shape.move.out","shape.move.end"],ul,(function(t){var i=t.context.shape||t.shape,r=t.hover;Ar(r,"bpmn:Lane")&&!Ga(i,["bpmn:Lane","bpmn:Participant"])&&(t.hover=Wp(r),t.hoverGfx=e.getGraphics(t.hover));var o=n.getRootElement();r!==o&&(i.labelTarget||Ar(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"],ul,(function(t){var n=t.hover;Ar(n,"bpmn:Lane")&&(t.hover=Wp(n)||n,t.hoverGfx=e.getGraphics(t.hover))})),t.on(["bendpoint.move.hover"],ul,(function(t){var n=t.context,i=t.hover,r=n.type;Ar(i,"bpmn:Lane")&&/reconnect/.test(r)&&(t.hover=Wp(i)||i,t.hoverGfx=e.getGraphics(t.hover))})),t.on(["connect.start"],ul,(function(e){var t=e.context,n=t.start;Ar(n,"bpmn:Lane")&&(t.start=Wp(n)||n)})),t.on("shape.move.start",2e3,(function(e){var t=e.shape;Ar(t,"bpmn:Lane")&&(e.shape=Wp(t)||t)}))}function hl(e,t,n){Ka.call(this,e),this.preExecute("shape.create",(function(e){var n=e.context.shape;if(Ar(n,"bpmn:DataObjectReference")&&"label"!==n.type){var i=t.create("bpmn:DataObject");n.businessObject.dataObjectRef=i}}))}ll.$inject=["elementRegistry","eventBus","canvas"],hl.$inject=["eventBus","bpmnFactory","moddle"],n(hl,Ka);var dl=20,fl=20,ml=2e3;function vl(e,t,n){function i(t){var i,r=t.parent,o=e.getRootElement();Ar(o,"bpmn:Collaboration")?i=o:(i=n.makeCollaboration(),t.process=r),t.parent=i}Ka.call(this,t),t.on(["create.start","shape.move.start"],ml,(function(t){var n=t.context,i=n.shape,r=e.getRootElement();if(Ar(i,"bpmn:Participant")&&Ar(r,"bpmn:Process")&&r.children.length){var o=r.children.filter((function(e){return!Ar(e,"bpmn:Group")&&!so(e)&&!function(e){return!!e.waypoints}(e)}));if(o.length){var a=pt(o);F(i,function(e,t){t={width:t.width+40+30,height:t.height+40};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=an(t)).top+e.height/2-fl,left:t.right-e.width/2+dl,top:t.bottom-e.height/2+fl,right:t.left+e.width/2-dl-30}}(i,a)}}})),t.on("create.start",ml,(function(n){var i=n.context.shape,r=e.getRootElement(),o=e.getGraphics(r);function a(e){e.element=r,e.gfx=o}Ar(i,"bpmn:Participant")&&Ar(r,"bpmn:Process")&&(t.on("element.hover",ml,a),t.once("create.cleanup",(function(){t.off("element.hover",a)})))})),this.preExecute("shape.create",(function(e){var t=e.parent;Ar(e.shape,"bpmn:Participant")&&Ar(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",ml,(function(e){var t,n=e.elements,r=e.parent;yl(n)&&Ar(r,"bpmn:Process")&&(i(e),t=yl(n),e.oldProcessRef=t.businessObject.processRef,t.businessObject.processRef=r.businessObject)}),!0),this.revert("elements.create",(function(e){var t=e.elements;e.process&&(yl(t).businessObject.processRef=e.oldProcessRef)}),!0),this.postExecute("elements.create",(function(e){var t,i=e.elements,r=e.process;if(r){t=yl(i);var o=r.children.slice();n.moveElements(o,{x:0,y:0},t)}}),!0)}function yl(e){return y(e,(function(e){return Ar(e,"bpmn:Participant")}))}vl.$inject=["canvas","eventBus","modeling"],n(vl,Ka);var gl="__targetRef_placeholder";function bl(e,t){function n(e,n){var i=e.get("properties"),r=y(i,(function(e){return e.name===gl}));return!r&&n&&vt(i,r=t.create("bpmn:Property",{name:gl})),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)||mt(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}Ka.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],xl(r)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],xl(r))}function xl(e){return function(t){if(Ar(t.context.connection,"bpmn:DataInputAssociation"))return e(t)}}function _l(e){this._bpmnUpdater=e}function El(e,t,n,i){function r(e){return e.children.filter((function(e){return Ar(e,"bpmn:DataStoreReference")&&!e.labelTarget}))}function o(e,i){var r=e.businessObject||e;if(i=i||n.filter((function(e){return Ar(e,"bpmn:Participant")&&kr(e).processRef}))[0]){var o=i.businessObject||i;t.execute("dataStore.updateContainment",{dataStoreBo:r,newSemanticParent:o.processRef||o,newDiParent:o.di})}}Ka.call(this,i),t.registerHandler("dataStore.updateContainment",_l),this.preExecute("shape.create",(function(e){var t=e.context,n=t.shape;Ar(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 Ar(e,"bpmn:DataStoreReference")})).length&&(t.hints||(t.hints={}),t.hints.autoResize=n.filter((function(e){return!Ar(e,"bpmn:DataStoreReference")})))})),this.postExecute("shape.create",(function(e){var t=e.context.shape,n=t.parent;Ar(t,"bpmn:DataStoreReference")&&"label"!==t.type&&Ar(n,"bpmn:Collaboration")&&o(t)})),this.postExecute("shape.move",(function(e){var t=e.context,n=t.shape,i=t.oldParent,r=n.parent;Ar(i,"bpmn:Collaboration")||Ar(n,"bpmn:DataStoreReference")&&"label"!==n.type&&Ar(r,"bpmn:Collaboration")&&o(n,Ar(i,"bpmn:Participant")?i:function(e,t){for(;e.parent;){if(Ar(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();Ga(n,["bpmn:Participant","bpmn:SubProcess"])&&Ar(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){Ar(i,"bpmn:Process")&&o(e,i)}))}))}bl.$inject=["eventBus","bpmnFactory"],n(bl,Ka),_l.$inject=["bpmnUpdater"],_l.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)},_l.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)},El.$inject=["canvas","commandStack","elementRegistry","eventBus"],n(El,Ka);function wl(e,t,n){Ka.call(this,e),this.postExecuted("shape.delete",500,(function(e){var t=e.context,i=t.hints,r=t.shape,o=t.oldParent;Ar(r,"bpmn:Lane")&&(i&&i.nested||function(e,t){var i,r,o,a=Hp(t),s=[],c=[];st(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))}))}wl.$inject=["eventBus","modeling","spaceTool"],n(wl,Ka);function Sl(e,t){t.invoke(Ka,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",500,(function(e){var t=e.elements;t.filter((function(e){return Cl(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",500,(function(e){var t=e.shapes,i=e.newHost;t.forEach((function(e,r){var o,a=e.host;Cl(e,(o=a,-1!==t.indexOf(o)?a:i))&&(t[r]=n.replaceShape(e))}))}),!0)}function Cl(e,t){return!so(e)&&Ar(e,"bpmn:BoundaryEvent")&&!t}function Tl(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=ms(f,h=d(r.width)?cn(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,Rl(e,o[o.length-1])||o.push(Pl(s)),Rl(e,a[0])||a.unshift(Pl(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)}Ka.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=cn(o),s={x:a.x+r.x,y:a.y+r.y},c=y(n.children,(function(e){return t.canInsert(i,e)&&ms(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 Rl(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 Pl(e){return F({},e)}function Al(e,t){Ka.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||Ar(i,"bpmn:EventBasedGateway")&&r.incoming.length&&o.filter(kl).forEach((function(e){t.removeConnection(e)}))})),this.preExecuted("shape.replace",(function(e){var n=e.context.newShape;Ar(n,"bpmn:EventBasedGateway")&&n.outgoing.filter(kl).map((function(e){return e.target})).reduce((function(e,t){var n=t.incoming.filter(kl);return e.concat(n)}),[]).forEach((function(e){e.source!==n&&t.removeConnection(e)}))}))}function kl(e){return Ar(e,"bpmn:SequenceFlow")}Sl.$inject=["bpmnReplace","injector"],n(Sl,Ka),Sl.prototype.replaceShape=function(e){var t,n,i=(n=kr(e).eventDefinitions)&&n[0];return t=i?{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:i.$type}:{type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,t,{layoutConnection:!1})},n(Tl,Ka),Tl.$inject=["eventBus","bpmnRules","modeling"],Al.$inject=["eventBus","modeling"],n(Al,Ka);function Ml(e,t,n,i,r,o){function a(){return kr(t.getRootElement()).$parent}function s(e){var t=kr(e).categoryValueRef;if(t){var n=t.$parent;t&&(mt(n.categoryValue,t),n&&!n.categoryValue.length&&function(e){mt(a().get("rootElements"),e)}(n))}}r.invoke(Ka,this),this.executed("shape.delete",(function(e){var t,i=e.context.shape;if(Ar(i,"bpmn:Group")){var r=kr(i).categoryValueRef,o=n.filter((function(e){return Ar(e,"bpmn:Group")}));t=r,o.some((function(e){var n=kr(e);return n.categoryValueRef&&n.categoryValueRef===t}))||s(i)}})),this.reverted("shape.delete",(function(e){var t=e.context.shape;if(Ar(t,"bpmn:Group")){var n=kr(t).categoryValueRef,i=a(),r=n?n.$parent:null;vt(r.get("categoryValue"),n),vt(i.get("rootElements"),r)}})),this.execute("shape.create",(function(t){var n=kr(t.context.shape);if(Ar(n,"bpmn:Group")&&!n.categoryValueRef){var i=Vu(a(),e);n.categoryValueRef=i}})),this.revert("shape.create",(function(e){var t=e.context.shape;Ar(t,"bpmn:Group")&&(s(t),delete kr(t).categoryValueRef)})),i.on("moddleCopy.canCopyProperty",2e3,(function(t){var n,i=t.property;if(Ar(i,"bpmn:CategoryValue"))return n=Vu(a(),e),o.copyElement(i,n)}))}function Dl(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 Bl(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=Dl(e,t,n,r),s=Dl(e,t,n,o);i=a&&s?Nl(a,n)>Nl(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],cn(n.source)),t(i[i.length-1],i[i.length-2],cn(n.target)))}))}function Nl(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Ol(e){Ka.call(this,e);var t=["bpmn:Participant","bpmn:Lane"];this.executed(["shape.move","shape.create","shape.resize"],(function(e){var n=kr(e.context.shape);Ga(n,t)&&!n.di.get("isHorizontal")&&n.di.set("isHorizontal",!0)}))}function jl(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function Ll(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function Il(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 zl(e,t){var n=Il(e,t);return jl({x:n.x-e.x,y:n.y-e.y})}function Fl(e,t){return jl({x:e.x-t.x,y:e.y-t.y})}Ml.$inject=["bpmnFactory","canvas","elementRegistry","eventBus","injector","moddleCopy"],n(Ml,Ka),Bl.$inject=["eventBus"],Ol.$inject=["eventBus"],n(Ol,Ka);var $l=Math.sqrt,Gl=Math.min,Hl=Math.max,Wl=Math.abs;function Vl(e){return Math.pow(e,2)}function Ul(e,t){return $l(Vl(e.x-t.x)+Vl(e.y-t.y))}function ql(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=$l(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 Kl(e.x,t.x,n.x)&&Kl(e.y,t.y,n.y)}(n,e,t)}))}function Kl(e,t,n){return e>=Gl(t,n)-Yl&&e<=Hl(t,n)+Yl}var Yl=.1;function Xl(e,t){return Wl(e.x-t.x)<=Yl&&Wl(e.y-t.y)<=Yl}function Zl(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(Xl(n=t[f],i=t[f+1])?s=[n]:(r=Ul(e,n),o=Ul(e,i),s=ql(n,i,e,Gl(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:Xl(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:Ul(n,a)/Ul(n,i)}),p=Ul(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&&Ql(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=Jl(n,c),d=Jl(t,p),f=s.position,m=function(e,t){var n=Fl(e[0],e[1]),i=Fl(e[0],t);return 0===n?0:i/n}(h,f),v=(u=d,l=Ll(h),Ll(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=Ql(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=(_={x:a.x-f.x,y:a.y-f.y},(E=v)?{x:Math.cos(E)*_.x-Math.sin(E)*_.y,y:Math.sin(E)*_.x+Math.cos(E)*_.y}:_);return on({x:r=w+C.x-a.x,y:o=S+C.y-a.y})}function Ql(e,t){var n=Fl(e[t-1],e[t]);return n/(n+Fl(e[t],e[t+1]))}function Jl(e,t){return[e[t],e[t+1]]}function eh(e,t,n){var i=ca(t),r=ca(n),o=pa(e,i),a=o.x*(n.width/t.width),s=o.y*(n.height/t.height);return on({x:r.x+a,y:r.y+s})}function th(e,t,n){var i=ca(e),r=ca(t),o=ca(n),a=pa(e,i),s=pa(i,r),c=function(e,t,n){var i=an(t),r=an(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=pn(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},pn(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 on({x:l+a.x-e.x,y:h+a.y-e.y})}var nh={width:90,height:20},ih="name",rh="text";function oh(e,t,n,i){Ka.call(this,e),this.postExecute("element.updateProperties",(function(e){var n=e.context,r=n.element,o=n.properties;if(ih in o&&t.updateLabel(r,o.name),rh in o&&Ar(r,"bpmn:TextAnnotation")){var a=i.getTextAnnotationBounds({x:r.x,y:r.y,width:r.width,height:r.height},o.text||"");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(!so(r)&&io(r)&&Or(r)){var a=ao(r),s=i.getExternalLabelBounds(nh,Or(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&&Ar(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),Zl(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=kr(n);r&&io(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(ro(r)){var s=r.label,c=ah(function(e,t){if(!t.length)return;var n=function(e,t){return M(t.map((function(t){return{line:t,distance:zl(e,t)}})),"distance")[0].line}(e,t);return Il(e,n)}(cn(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 ah(e,t,n){return on(pa(eh(e,t,n),e))}function sh(e,t,n){var i=hh(e),r=dh(i,t),o=i[0];return r.length?r[r.length-1]:eh(o.original||o,n,t)}function ch(e,t,n){var i=hh(e),r=dh(i,t),o=i[i.length-1];return r.length?r[0]:eh(o.original||o,n,t)}function ph(e,t,n){var i=hh(e),r=lh(t,n),o=i[0];return eh(o.original||o,r,t)}function uh(e,t,n){var i=hh(e),r=lh(t,n),o=i[i.length-1];return eh(o.original||o,r,t)}function lh(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function hh(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function dh(e,t){return g(S(e,fh),(function(e){return function(e,t){return"intersect"===pn(t,e,1)}(e,t)}))}function fh(e){return e.original||e}function mh(e,t){Ka.call(this,e),this.postExecute("shape.replace",(function(e){var n=e.oldShape,i=e.newShape;if(function(e,t){return Ar(e,"bpmn:Participant")&&Mr(e)&&Ar(t,"bpmn:Participant")&&!Mr(t)}(n,i)){var r,o,a,s,c=(o=ct([r=n],!1),a=[],s=[],o.forEach((function(e){e!==r&&(e.incoming.forEach((function(e){Ar(e,"bpmn:MessageFlow")&&a.push(e)})),e.outgoing.forEach((function(e){Ar(e,"bpmn:MessageFlow")&&s.push(e)})))}),[]),{incoming:a,outgoing:s});c.incoming.forEach((function(e){var r=ch(e,i,n);t.reconnectEnd(e,i,r)})),c.outgoing.forEach((function(e){var r=sh(e,i,n);t.reconnectStart(e,i,r)}))}}),!0)}n(oh,Ka),oh.$inject=["eventBus","modeling","bpmnFactory","textRenderer"],mh.$inject=["eventBus","modeling"],n(mh,Ka);function vh(e,t,n){e.on(["shape.move.rejected","create.rejected"],(function(e){var i,r,o,a=e.context,s=a.shape;Ar(a.target,"bpmn:Collaboration")&&Ar(s,"bpmn:FlowNode")&&(i=e,r=n("flow elements must be children of pools/participants"),t.add({position:{x:i.x+5,y:i.y+5},type:"error",timeout:o||2e3,html:"<div>"+r+"</div>"}))}))}function yh(e,t,n,i){Ka.call(this,e);var r=i.get("dragging",!1);function o(e){var i,r,o=e.source,a=e.target;e.parent&&(Ar(e,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(o,a)||(r=!0),n.canConnectMessageFlow(o,a)&&(i="bpmn:MessageFlow")),Ar(e,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(o,a)||(r=!0),n.canConnectSequenceFlow(o,a)&&(i="bpmn:SequenceFlow")),Ar(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;if(!o||!o.length)return;if(-1===(n=o.indexOf(e)))return;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){Ka.call(this,e),this.preExecute("shape.delete",(function(e){var t=e.shape,n=t.parent;Ar(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 bh(e,t,n,i,r,o){i.invoke(Ka,this),this._bpmnReplace=e,this._elementRegistry=n,this._selection=o,this.postExecuted(["elements.create"],500,(function(e){var n=e.context,i=n.parent,r=n.elements,o=t.canReplace(r,i);o&&this.replaceElements(r,o.replacements)}),this),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=Dr(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})}))}vh.$inject=["eventBus","tooltips","translate"],n(yh,Ka),yh.$inject=["eventBus","modeling","bpmnRules","injector"],gh.$inject=["eventBus","modeling"],n(gh,Ka),n(bh,Ka),bh.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)},bh.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var xh=300,_h=60,Eh={width:300,height:150},wh={width:140,height:120},Sh={width:50,height:30};function Ch(e){e.on("resize.start",1500,(function(e){var t=e.context,n=t.shape,i=t.direction,r=t.balanced;(Ar(n,"bpmn:Lane")||Ar(n,"bpmn:Participant"))&&(t.resizeConstraints=function(e,t,n){var i=Wp(e),r=!0,o=!0,a=Gp(i,[i]),s=an(e),c={},p={};/e/.test(t)?p.right=s.left+xh:/w/.test(t)&&(p.left=s.right-xh);return a.forEach((function(e){var i=an(e);/n/.test(t)&&(i.top<s.top-10&&(r=!1),n&&Th(s.top-i.bottom)<10&&Mh(c,"top",i.top+_h),Th(s.top-i.top)<5&&kh(p,"top",i.bottom-_h)),/s/.test(t)&&(i.bottom>s.bottom+10&&(o=!1),n&&Th(s.bottom-i.top)<10&&kh(c,"bottom",i.bottom-_h),Th(s.bottom-i.bottom)<5&&Mh(p,"bottom",i.top+_h))})),i.children.filter((function(e){return!e.hidden&&!e.waypoints&&(Ar(e,"bpmn:FlowElement")||Ar(e,"bpmn:Artifact"))})).forEach((function(e){var n=an(e);r&&/n/.test(t)&&kh(p,"top",n.top-20),/e/.test(t)&&Mh(p,"right",n.right+20),o&&/s/.test(t)&&Mh(p,"bottom",n.bottom+20),/w/.test(t)&&kh(p,"left",n.left-50)})),{min:p,max:c}}(n,i,r)),Ar(n,"bpmn:Participant")&&(t.minDimensions=Eh),Ar(n,"bpmn:SubProcess")&&Mr(n)&&(t.minDimensions=wh),Ar(n,"bpmn:TextAnnotation")&&(t.minDimensions=Sh)}))}Ch.$inject=["eventBus"];var Th=Math.abs,Rh=Math.min,Ph=Math.max;function Ah(e,t,n,i){var r=e[t];e[t]=void 0===r?n:i(n,r)}function kh(e,t,n){return Ah(e,t,n,Rh)}function Mh(e,t,n){return Ah(e,t,n,Ph)}function Dh(e,t){e.on("resize.start",1501,(function(e){var t=e.context,n=t.shape;(Ar(n,"bpmn:Lane")||Ar(n,"bpmn:Participant"))&&(t.balanced=!xo(e))})),e.on("resize.end",1001,(function(e){var n=e.context,i=n.shape,r=n.canExecute,o=n.newBounds;if(Ar(i,"bpmn:Lane")||Ar(i,"bpmn:Participant"))return r&&(o=rn(o),t.resizeLane(i,o,n.balanced)),!1}))}function Bh(e,t,n){Ka.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(Ar(r,"bpmn:SequenceFlow")&&Ar(o,"bpmn:SequenceFlow")&&t.canConnect(r.source,o.target,r)){var a=function(e,t){var n=Dl(Nh(e[e.length-2]),Nh(e[e.length-1]),Nh(t[1]),Nh(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[Nh(e[0]),Nh(t[t.length-1])]}(r.waypoints,o.waypoints);n.reconnectEnd(r,o.target,a)}}}))}function Nh(e){return e.original||e}Dh.$inject=["eventBus","modeling"],n(Bh,Ka),Bh.$inject=["eventBus","bpmnRules","modeling"];var Oh=Math.max;function jh(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;Ar(e,"bpmn:Participant")&&(!function(e){return"x"===e}(n)?r[t]={width:Eh.width,height:Lh(e,i)}:r[t]=Eh),Ar(e,"bpmn:SubProcess")&&Mr(e)&&(r[t]=wh),Ar(e,"bpmn:TextAnnotation")&&(r[t]=Sh)})),r}))}function Lh(e,t){var n;return Hp(e).length?(n=function(e,t){var n,i=Hp(e);return n=Ih(i,t),e.height-n.height+_h}(e,t),Oh(Eh.height,n)):Eh.height}function Ih(e,t){var n,i,r;for(n=0;n<e.length;n++)if(t>=(i=e[n]).y&&t<=i.y+i.height)return(r=Hp(i)).length?Ih(r,t):i}function zh(e,t){e.invoke(Ka,this),this.postExecuted("shape.replace",(function(e){var n=e.context.oldShape,i=e.context.newShape;if(Ar(i,"bpmn:SubProcess")&&Ar(n,"bpmn:Task")&&Mr(i)){var r,o={x:(r=i).x+r.width/6,y:r.y+r.height/2};t.createShape({type:"bpmn:StartEvent"},o,i)}}))}jh.$inject=["eventBus"],zh.$inject=["injector","modeling"],n(zh,Ka);function Fh(e,t,n,i){Ka.call(this,e),this.executed(["shape.toggleCollapse"],500,(function(e){var t,n=e.context.shape;Ar(n,"bpmn:SubProcess")&&(n.collapsed?kr(n).di.isExpanded=!1:((t=n.children).length&&t.forEach((function(e){"label"!==e.type||e.businessObject.name||(e.hidden=!0)})),kr(n).di.isExpanded=!0))})),this.reverted(["shape.toggleCollapse"],500,(function(e){var t=e.context.shape;t.collapsed?kr(t).di.isExpanded=!1:kr(t).di.isExpanded=!0})),this.postExecuted(["shape.toggleCollapse"],500,(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=Ip((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 $h(e,t,n,i){t.invoke(Ka,this),this.preExecute("shape.delete",(function(e){var t=e.context.shape,r=t.businessObject;so(t)||(Ar(t,"bpmn:Participant")&&Mr(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(Fh,Ka),Fh.$inject=["eventBus","elementFactory","modeling"],n($h,Ka),$h.$inject=["canvas","injector","moddle","modeling"];function Gh(e,t,n){var i;function r(){if(!i)throw new Error(n("out of bounds release"));return i}Ka.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,5e3,(function(e){(i=i||new Hh).enter()})),this.postExecuted(o,500,(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||(Ar(t,"bpmn:Lane")&&n.addLane(t),Ar(t,"bpmn:FlowNode")&&n.addFlowNode(t))}))}function Hh(){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 Wh(e,t){Ka.call(this,e),this.preExecute("connection.delete",(function(e){var n=e.context.connection,i=n.source;(function(e,t){if(!Ar(e,"bpmn:SequenceFlow"))return!1;var n=kr(t),i=kr(e);return n.get("default")===i})(n,i)&&t.updateProperties(i,{default:null})}))}Gh.$inject=["eventBus","modeling","translate"],n(Gh,Ka),n(Wh,Ka),Wh.$inject=["eventBus","modeling"];var Vh={__init__:["adaptiveLabelPositioningBehavior","appendBehavior","associationBehavior","attachEventBehavior","boundaryEventBehavior","rootElementReferenceBehavior","createBehavior","fixHoverBehavior","createDataObjectBehavior","createParticipantBehavior","dataStoreBehavior","dataInputAssociationBehavior","deleteLaneBehavior","detachEventBehavior","dropOnFlowBehavior","eventBasedGatewayBehavior","groupBehavior","importDockingFix","isHorizontalFix","labelBehavior","messageFlowBehavior","modelingFeedback","removeElementBehavior","removeParticipantBehavior","replaceConnectionBehavior","replaceElementBehaviour","resizeBehavior","resizeLaneBehavior","toggleElementCollapseBehaviour","spaceToolBehavior","subProcessStartEventBehavior","unclaimIdBehavior","unsetDefaultFlowBehavior","updateFlowNodeRefsBehavior"],adaptiveLabelPositioningBehavior:["type",tl],appendBehavior:["type",il],associationBehavior:["type",rl],attachEventBehavior:["type",ol],boundaryEventBehavior:["type",sl],rootElementReferenceBehavior:["type",cl],createBehavior:["type",pl],fixHoverBehavior:["type",ll],createDataObjectBehavior:["type",hl],createParticipantBehavior:["type",vl],dataInputAssociationBehavior:["type",bl],dataStoreBehavior:["type",El],deleteLaneBehavior:["type",wl],detachEventBehavior:["type",Sl],dropOnFlowBehavior:["type",Tl],eventBasedGatewayBehavior:["type",Al],groupBehavior:["type",Ml],importDockingFix:["type",Bl],isHorizontalFix:["type",Ol],labelBehavior:["type",oh],messageFlowBehavior:["type",mh],modelingFeedback:["type",vh],replaceConnectionBehavior:["type",yh],removeParticipantBehavior:["type",gh],replaceElementBehaviour:["type",bh],resizeBehavior:["type",Ch],resizeLaneBehavior:["type",Dh],removeElementBehavior:["type",Bh],toggleElementCollapseBehaviour:["type",Fh],spaceToolBehavior:["type",jh],subProcessStartEventBehavior:["type",zh],unclaimIdBehavior:["type",$h],updateFlowNodeRefsBehavior:["type",Gh],unsetDefaultFlowBehavior:["type",Wh]};function Uh(e,t){var n=pn(e,t,-15);return"intersect"!==n?n:null}function qh(e){Za.call(this,e)}function Kh(e){return!e||so(e)}function Yh(e){do{if(Ar(e,"bpmn:Process"))return kr(e);if(Ar(e,"bpmn:Participant"))return kr(e).processRef||kr(e)}while(e=e.parent)}function Xh(e){return Ar(e,"bpmn:TextAnnotation")}function Zh(e){return Ar(e,"bpmn:Group")&&!e.labelTarget}function Qh(e){return Ar(e,"bpmn:BoundaryEvent")&&td(e,"bpmn:CompensateEventDefinition")}function Jh(e){return kr(e).isForCompensation}function ed(e){for(var t=e;t=t.parent;){if(Ar(t,"bpmn:FlowElementsContainer"))return kr(t);if(Ar(t,"bpmn:Participant"))return kr(t).processRef}return null}function td(e,t){return!!y(kr(e).eventDefinitions||[],(function(e){return Ar(e,t)}))}function nd(e,t){return(kr(e).eventDefinitions||[]).every((function(e){return Ar(e,t)}))}function id(e){return Ar(e,"bpmn:ReceiveTask")||Ar(e,"bpmn:IntermediateCatchEvent")&&(td(e,"bpmn:MessageEventDefinition")||td(e,"bpmn:TimerEventDefinition")||td(e,"bpmn:ConditionalEventDefinition")||td(e,"bpmn:SignalEventDefinition"))}function rd(e){return e.waypoints}function od(e,t){return-1!==function(e){for(var t=[];e;)(e=e.parent)&&t.push(e);return t}(t).indexOf(e)}function ad(e,t,n){if(Kh(e)||Kh(t))return null;if(!Ar(n,"bpmn:DataAssociation")){if(bd(e,t))return{type:"bpmn:MessageFlow"};if(xd(e,t))return{type:"bpmn:SequenceFlow"}}var i=_d(e,t);return i||(Qh(e)&&Jh(t)?{type:"bpmn:Association",associationDirection:"One"}:!!gd(e,t)&&{type:"bpmn:Association"})}function sd(e,t,n){return!(!so(e)&&!Zh(e))||!(Ar(t,"bpmn:Participant")&&!Mr(t))&&(Ar(e,"bpmn:Participant")?Ar(t,"bpmn:Process")||Ar(t,"bpmn:Collaboration"):Ga(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:Ar(e,"bpmn:Lane")?Ar(t,"bpmn:Participant")||Ar(t,"bpmn:Lane"):!(Ar(e,"bpmn:BoundaryEvent")&&(i=e,!kr(i).cancelActivity||!ud(i)&&!ld(i)))&&(Ar(e,"bpmn:FlowElement")&&!Ar(e,"bpmn:DataStoreReference")?Ar(t,"bpmn:FlowElementsContainer")?Mr(t):Ga(t,["bpmn:Participant","bpmn:Lane"]):Ar(e,"bpmn:DataStoreReference")&&Ar(t,"bpmn:Collaboration")?w(kr(t).get("participants"),(function(e){return!!e.get("processRef")})):Ga(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?Ga(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):!!Ar(e,"bpmn:MessageFlow")&&(Ar(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t)));var i}function cd(e){return Ar(e,"bpmn:Lane")}function pd(e){return!!function(e){return!so(e)&&Ar(e,"bpmn:BoundaryEvent")}(e)||(!(!Ar(e,"bpmn:IntermediateThrowEvent")||!ud(e))||Ar(e,"bpmn:IntermediateCatchEvent")&&ld(e))}function ud(e){var t=kr(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function ld(e){return hd(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function hd(e,t){return t.some((function(t){return td(e,t)}))}function dd(e,t,n,i){if(Array.isArray(e)||(e=[e]),1!==e.length)return!1;var r=e[0];return!so(r)&&(!!pd(r)&&(!Dr(t)&&(!(!Ar(t,"bpmn:Activity")||Jh(t))&&(!(i&&!Uh(i,t))&&(!function(e){return Ar(e,"bpmn:ReceiveTask")&&y(e.incoming,(function(e){return Ar(e.source,"bpmn:EventBasedGateway")}))}(t)&&"attach")))))}function fd(e,t,n){if(!t)return!1;var i={replacements:[]};return b(e,(function(e){Dr(t)||Ar(e,"bpmn:StartEvent")&&"label"!==e.type&&sd(e,t)&&(function(e){return e&&!1!==kr(e).isInterrupting}(e)||i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),(function(e){return Br(e,"bpmn:ErrorEventDefinition")}(e)||function(e){return Br(e,"bpmn:EscalationEventDefinition")}(e)||function(e){return Br(e,"bpmn:CompensateEventDefinition")}(e))&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),hd(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&Ar(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"})),Ar(t,"bpmn:Transaction")||td(e,"bpmn:CancelEventDefinition")&&"label"!==e.type&&(Ar(e,"bpmn:EndEvent")&&sd(e,t)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:EndEvent"}),Ar(e,"bpmn:BoundaryEvent")&&dd(e,t,0,n)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:BoundaryEvent"}))})),!!i.replacements.length&&i}function md(e,t){return!w(e,cd)&&(!t||e.every((function(e){return sd(e,t)})))}function vd(e,t,n,i){return!!t&&(!(!so(e)&&!Zh(e))||n!==t&&((!n||!od(n,t))&&(sd(e,t)||Ed(e,t))))}function yd(e,t){return Ar(e,"bpmn:SubProcess")?Mr(e)&&(!t||t.width>=100&&t.height>=80):Ar(e,"bpmn:Lane")?!t||t.width>=130&&t.height>=60:Ar(e,"bpmn:Participant")?!t||t.width>=250&&t.height>=50:!!Xh(e)||!!Zh(e)}function gd(e,t){return!rd(e)&&!rd(t)&&(!(!Qh(e)||!Jh(t))||!od(t,e)&&!od(e,t)&&(!!function(e,t){var n=Xh(e),i=Xh(t);return(n||i)&&n!==i}(e,t)||!!_d(e,t)))}function bd(e,t){return!(Cd(e)&&!Cd(t))&&(Ar(i=e,"bpmn:InteractionNode")&&!Ar(i,"bpmn:BoundaryEvent")&&(!Ar(i,"bpmn:Event")||Ar(i,"bpmn:ThrowEvent")&&nd(i,"bpmn:MessageEventDefinition"))&&function(e){return Ar(e,"bpmn:InteractionNode")&&!Jh(e)&&(!Ar(e,"bpmn:Event")||Ar(e,"bpmn:CatchEvent")&&nd(e,"bpmn:MessageEventDefinition"))&&!(Ar(e,"bpmn:BoundaryEvent")&&!td(e,"bpmn:MessageEventDefinition"))}(t)&&(n=t,!(Yh(e)===Yh(n))));var n,i}function xd(e,t){return!(id(t)&&t.incoming.length>0&&(n=t.incoming,(n=n||[]).some(Sd))&&!Ar(e,"bpmn:EventBasedGateway"))&&(Ar(r=e,"bpmn:FlowNode")&&!Ar(r,"bpmn:EndEvent")&&!Dr(r)&&!(Ar(r,"bpmn:IntermediateThrowEvent")&&td(r,"bpmn:LinkEventDefinition"))&&!Qh(r)&&!Jh(r)&&function(e){return Ar(e,"bpmn:FlowNode")&&!Ar(e,"bpmn:StartEvent")&&!Ar(e,"bpmn:BoundaryEvent")&&!Dr(e)&&!(Ar(e,"bpmn:IntermediateCatchEvent")&&td(e,"bpmn:LinkEventDefinition"))&&!Jh(e)}(t)&&(i=t,ed(e)===ed(i))&&!(Ar(e,"bpmn:EventBasedGateway")&&!id(t)));var n,i,r}function _d(e,t){return Ga(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&Ga(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:!(!Ga(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])||!Ga(e,["bpmn:Activity","bpmn:CatchEvent"]))&&{type:"bpmn:DataOutputAssociation"}}function Ed(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&&(Ga(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!so(t)&&Ar(e,"bpmn:FlowNode")&&!Ar(e,"bpmn:BoundaryEvent")&&sd(e,t.parent))}function wd(e,t){return!!so(t)||!(Ar(t,"bpmn:Lane")&&!function(e,t){return e&&t&&-1!==e.indexOf(t)}(e,t.parent))}function Sd(e){if(e&&e.source)return Ar(e.source,"bpmn:EventBasedGateway")}function Cd(e){return Ha(e,"bpmn:Process")||Ha(e,"bpmn:Collaboration")}n(qh,Za),qh.$inject=["eventBus"],qh.prototype.init=function(){this.addRule("connection.start",(function(e){return function(e){if(Kh(e))return null;return Ga(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group","bpmn:TextAnnotation"])}(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 ad(t,n)}finally{r&&(n.parent=null)}})),this.addRule("connection.reconnect",(function(e){var t=e.connection;return ad(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!(rd(i)&&!Ed(t,i))&&E(t,(function(e){return rd(e)?ad(e.source,e.target,e):e.host?dd(e,e.host,null,n):vd(e,i,null)}))})),this.addRule("elements.move",(function(e){var t=e.target,n=e.shapes,i=e.position;return dd(n,t,null,i)||fd(n,t,i)||md(n,t)||Ed(n,t)})),this.addRule("shape.create",(function(e){return vd(e.shape,e.target,e.source,e.position)})),this.addRule("shape.attach",(function(e){return dd(e.shape,e.target,null,e.position)})),this.addRule("element.copy",(function(e){var t=e.element;return wd(e.elements,t)}))},qh.prototype.canConnectMessageFlow=bd,qh.prototype.canConnectSequenceFlow=xd,qh.prototype.canConnectDataAssociation=_d,qh.prototype.canConnectAssociation=gd,qh.prototype.canMove=md,qh.prototype.canAttach=dd,qh.prototype.canReplace=fd,qh.prototype.canDrop=sd,qh.prototype.canInsert=Ed,qh.prototype.canCreate=vd,qh.prototype.canConnect=ad,qh.prototype.canResize=yd,qh.prototype.canCopy=wd;var Td={__depends__:[hs],__init__:["bpmnRules"],bpmnRules:["type",qh]};function Rd(e,t){e.on("saveXML.start",2e3,(function(){var e,n,i=t.getRootElement(),r=kr(i).di;e=g(e=ct([i],!1),(function(e){return e!==i&&!e.labelTarget})),n=S(e,Lr),r.set("planeElement",n)}))}Rd.$inject=["eventBus","canvas"];var Pd={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",Rd]};function Ad(e){Ka.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 kd(e,t,n){Ad.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;if(t||(e.order=t=function(e){if(e.labelTarget)return{level:10};var t=y(i,(function(t){return Ga(e,[t.type])}));return t&&t.order||{level:1}}(e)),!t)throw new Error("no order for <"+e.id+">");return t}this.getOrdering=function(e,n){if(e.labelTarget)return{parent:t.getRootElement(),index:-1};var i=r(e);i.containers&&(n=function(e,t,n){for(var i=t;i&&!Ga(i,n);)i=i.parent;if(!i)throw new Error("no parent for <"+e.id+"> in <"+(t&&t.id)+">");return i}(e,n,i.containers));var o=n.children.indexOf(e),a=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}(n.children,(function(t){return!(!e.labelTarget&&t.labelTarget)&&i.level<r(t).level}));return-1!==a&&-1!==o&&o<a&&(a-=1),{index:a,parent:n}}}Ad.prototype.getOrdering=function(e,t){return null},n(Ad,Ka),kd.$inject=["eventBus","canvas","translate"],n(kd,Ad);var Md={__depends__:[to],__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",kd]};function Dd(e,t){this._handlerMap={},this._stack=[],this._stackIdx=-1,this._currentExecution={actions:[],dirty:[],trigger:null},this._injector=t,this._eventBus=e,this._uid=1,e.on(["diagram.destroy","diagram.clear"],(function(){this.clear(!1)}),this)}Dd.$inject=["eventBus","injector"],Dd.prototype.execute=function(e,t){if(!e)throw new Error("command required");this._currentExecution.trigger="execute";var n={command:e,context:t};this._pushAction(n),this._internalExecute(n),this._popAction(n)},Dd.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},Dd.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,!1!==e&&this._fire("changed",{trigger:"clear"})},Dd.prototype.undo=function(){var e,t=this._getUndoAction();if(t){for(this._currentExecution.trigger="undo",this._pushAction(t);t&&(this._internalUndo(t),(e=this._getUndoAction())&&e.id===t.id);)t=e;this._popAction()}},Dd.prototype.redo=function(){var e,t=this._getRedoAction();if(t){for(this._currentExecution.trigger="redo",this._pushAction(t);t&&(this._internalExecute(t,!0),(e=this._getRedoAction())&&e.id===t.id);)t=e;this._popAction()}},Dd.prototype.register=function(e,t){this._setHandler(e,t)},Dd.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)},Dd.prototype.canUndo=function(){return!!this._getUndoAction()},Dd.prototype.canRedo=function(){return!!this._getRedoAction()},Dd.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},Dd.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},Dd.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)}))},Dd.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},Dd.prototype._createId=function(){return this._uid++},Dd.prototype._atomicDo=function(e){var t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},Dd.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)},Dd.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)},Dd.prototype._popAction=function(){var e=this._currentExecution,t=e.trigger,n=e.actions,i=e.dirty;n.pop(),n.length||(this._eventBus.fire("elements.changed",{elements:A("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},Dd.prototype._markDirty=function(e){var t=this._currentExecution;e&&(e=l(e)?e:[e],t.dirty=t.dirty.concat(e))},Dd.prototype._executedAction=function(e,t){var n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},Dd.prototype._revertedAction=function(e){this._stackIdx--},Dd.prototype._getHandler=function(e){return this._handlerMap[e]},Dd.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 Bd={commandStack:["type",Dd]},Nd=new Oo("tt");function Od(e,t){e.style.display=!1===t?"none":""}var jd=".djs-tooltip";function Ld(e,t){var n,i;this._eventBus=e,this._canvas=t,this._ids=Nd,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=(n=t.getContainer(),i=ce('<div class="djs-tooltip-container" style="position: absolute; width: 0; height: 0;" />'),n.insertBefore(i,n.firstChild),i);var r=this;se.bind(this._tooltipRoot,jd,"mousedown",(function(e){e.stopPropagation()})),se.bind(this._tooltipRoot,jd,"mouseover",(function(e){r.trigger("mouseover",e)})),se.bind(this._tooltipRoot,jd,"mouseout",(function(e){r.trigger("mouseout",e)})),this._init()}Ld.$inject=["eventBus","canvas"],Ld.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},Ld.prototype.trigger=function(e,t){var n=t.delegateTarget||t.target,i=this.get(H(n,"data-tooltip-id"));i&&("mouseover"===e&&i.timeout&&this.clearTimeout(i),"mouseout"===e&&i.timeout&&(i.timeout=1e3,this.setTimeout(i)))},Ld.prototype.get=function(e){return"string"!=typeof e&&(e=e.id),this._tooltips[e]},Ld.prototype.clearTimeout=function(e){if(e=this.get(e)){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},Ld.prototype.setTimeout=function(e){if(e=this.get(e)){this.clearTimeout(e);var t=this;e.removeTimer=setTimeout((function(){t.remove(e)}),e.timeout)}},Ld.prototype.remove=function(e){var t=this.get(e);t&&(de(t.html),de(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},Ld.prototype.show=function(){Od(this._tooltipRoot)},Ld.prototype.hide=function(){Od(this._tooltipRoot,!1)},Ld.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},Ld.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=ce(i)),(t=ce('<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)},Ld.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"})},Ld.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),Od(i,r))}))},Ld.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 Id={__init__:["tooltips"],tooltips:["type",Ld]};function zd(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}}function Fd(e,t,n){Ka.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",1400,(function(e){var t=e.context,n=t.shapes,i=t.validatedShapes;t.shapes=$d(n),t.validatedShapes=$d(i)})),i&&t.on("shape.move.start",250,(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",1400,(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;zd((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=yt(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&&(vt(i.labels,n,r),n.labelTarget=i)}))}function $d(e){return g(e,(function(t){return-1===e.indexOf(t.labelTarget)}))}n(Fd,Ka),Fd.$inject=["injector","eventBus","modeling"];var Gd={__init__:["labelSupport"],labelSupport:["type",Fd]},Hd="attach-ok";function Wd(e,t,n,i,r){Ka.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",1401,(function(e){var t,n,i=e.context,r=i.shapes,o=i.validatedShapes;i.shapes=(n=Vd(t=r),k("id",t,n)),i.validatedShapes=function(e){var t=P(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",251,(function(e){var t=e.context;b(Vd(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,Hd),t.once(["shape.move.out","shape.move.cleanup"],(function(){n.removeMarker(r,Hd)})))}})),this.preExecuted("elements.move",1401,(function(e){var t=e.context,n=t.closure;b(Vd(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;zd(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=th(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=th(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;zd(t.attachers,(function(e){r.removeShape(e)})),t.host&&r.updateAttachment(t,null)}))}function Vd(e){return o(S(e,(function(e){return e.attachers||[]})))}n(Wd,Ka),Wd.$inject=["injector","eventBus","canvas","rules","modeling"];var Ud={__depends__:[hs],__init__:["attachSupport"],attachSupport:["type",Wd]};function qd(e,t){this._eventBus=e,this._dragging=t,this._tools=[],this._active=null}qd.$inject=["eventBus","dragging"],qd.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)},qd.prototype.isActive=function(e){return e&&this._active===e},qd.prototype.length=function(e){return this._tools.length},qd.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},qd.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){this._active&&(function(e){var t=e.originalEvent&&e.originalEvent.target;return t&&ee(t,'.group[data-group="tools"]')}(e)||this.setActive(null))}),this)};var Kd={__depends__:[ss],__init__:["toolManager"],toolManager:["type",qd]};function Yd(e,t){return-1!==e.indexOf(t)}var Xd=Math.abs,Zd=Math.round,Qd={x:"width",y:"height"},Jd="crosshair",ef={n:"top",w:"left",s:"bottom",e:"right"},tf={n:"s",w:"e",s:"n",e:"w"};function nf(e,t,n,i,r,o,a){this._canvas=e,this._dragging=t,this._eventBus=n,this._modeling=i,this._rules=r,this._toolManager=o,this._mouse=a;var s=this;o.registerTool("space",{tool:"spaceTool.selection",dragging:"spaceTool"}),n.on("spaceTool.selection.end",(function(e){n.once("spaceTool.selection.ended",(function(){s.activateMakeSpace(e.originalEvent)}))})),n.on("spaceTool.move",1500,(function(e){var t=e.context,n=t.initialized;n||(n=t.initialized=s.init(e,t)),n&&of(e)})),n.on("spaceTool.end",(function(e){var t=e.context,i=t.axis,r=t.direction,o=t.movingShapes,a=t.resizingShapes,c=t.start;if(t.initialized){of(e);var p={x:0,y:0};p[i]=Zd(e["d"+i]),s.makeSpace(o,a,p,r,c),n.once("spaceTool.ended",(function(e){s.activateSelection(e.originalEvent,!0,!0)}))}}))}function rf(e){return{top:e.top-20,right:e.right+20,bottom:e.bottom+20,left:e.left-20}}function of(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 af(e,t){return-1!==e.indexOf(t)}function sf(e){return!!e.waypoints}function cf(e){return!!e.labelTarget}nf.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager","mouse"],nf.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:Jd,data:{context:{reactivate:n}},trapClick:!1})},nf.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:Jd,data:{context:{}}})},nf.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},nf.prototype.init=function(e,t){var n=Xd(e.dx)>Xd(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(Xd(i)<5)return!1;i<0&&(i*=-1),xo(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=ct(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=an(e),m=g(e.children,(function(e){return!(sf(e)||cf(e)||af(o,e)||af(a,e))})),v=g(e.children,(function(e){return!sf(e)&&!cf(e)&&af(o,e)}));m.length&&(l=rf(an(pt(m))),u=i-f[ef[n]]+l[ef[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=rf(an(pt(v))),u=i-h[ef[tf[n]]]+f[ef[tf[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[Qd[t]]-y[Qd[t]],p.bottom=c=d(c)?Math.min(c,u):u):"w"===n?(u=i+e[Qd[t]]-y[Qd[t]],p.right=c=d(c)?Math.min(c,u):u):"s"===n?(u=i-e[Qd[t]]+y[Qd[t]],p.top=s=d(s)?Math.max(s,u):u):"e"===n&&(u=i-e[Qd[t]]+y[Qd[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}),oa("resize-"+("x"===n?"ew":"ns")),!0},nf.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[];return b(e,(function(e){if(e.parent&&!sf(e)){var s=e[t],c=s+e[Qd[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}},nf.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},nf.prototype.isActive=function(){var e=this._dragging.context();return e&&/^spaceTool/.test(e.prefix)};var pf="djs-dragging",uf="djs-resizing",lf=Math.max;function hf(e,t,n,i,r){function o(e,t){b(e,(function(e){r.addDragger(e,t),n.addMarker(e,pf)}))}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=Me("g");ge(s,i.cls("djs-crosshair-group",["no-events"])),me(t,s);var c=Me("path");ge(c,"d",o),we(c).add("djs-crosshair"),me(s,c);var p=Me("path");ge(p,"d",a),we(p).add("djs-crosshair"),me(s,p),r.crosshairGroup=s})),e.on("spaceTool.selection.move",(function(e){Vn(e.context.crosshairGroup,e.x,e.y)})),e.on("spaceTool.selection.cleanup",(function(e){var t=e.context.crosshairGroup;t&&Ce(t)})),e.on("spaceTool.move",250,(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");ge(s=Me("path"),"d","M0,0 L0,0"),we(s).add("djs-crosshair"),me(l,s),a.line=s;var h=Me("g");ge(h,i.cls("djs-drag-group",["no-events"])),me(n.getActiveLayer(),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=Me("g");ge(d,i.cls("djs-frame-group",["no-events"])),me(n.getActiveLayer(),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,uf)})),a.frameGroup=d,a.frames=f}ge(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,Vn(a.dragGroup,m.x,m.y),b(a.frames,(function(e){var t,n,i=e.element,r=e.initialBounds;"e"===a.direction?ge(i,{width:lf(r.width+m.x,5)}):ge(i,{width:t=lf(r.width-m.x,5),x:r.x+r.width-t}),"s"===a.direction?ge(i,{height:lf(r.height+m.y,5)}):ge(i,{height:n=lf(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,pf)})),b(r,(function(e){n.removeMarker(e,pf)})),s&&(Ce(a),Ce(s)),b(o,(function(e){n.removeMarker(e,uf)})),c&&Ce(c)}))}hf.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];var df={__init__:["spaceToolPreview"],__depends__:[ss,hs,Kd,Rc,Uc],spaceTool:["type",nf],spaceToolPreview:["type",hf]};function ff(e){this._model=e}function mf(e,t,n,i){Ka.call(this,e),this._bpmnFactory=t,this._translate=i;var r=this;function o(e){b(e.context.oldRoot.children,(function(e){Ar(e,"bpmn:BaseElement")&&r.updateParent(e)}))}function a(e){var t=e.context.shape;Ar(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"],vf((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"],vf((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"],vf((function(e){"label"!==e.context.shape.type&&a(e)}))),this.reverted(["shape.move","shape.create","shape.resize"],vf((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"],vf(s)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],vf(s)),this.executed(["connection.layout","connection.move","connection.updateWaypoints"],vf(c)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],vf(c)),this.executed("connection.reconnect",vf((function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=kr(n),a=kr(i),s=kr(r);o.conditionExpression&&!Ga(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",vf((function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=kr(n),a=kr(i),s=kr(r);t.oldConditionExpression&&(o.conditionExpression=t.oldConditionExpression),t.oldDefault&&(a.default=t.oldDefault,delete s.default)}))),this.executed(["element.updateAttachment"],vf(p)),this.reverted(["element.updateAttachment"],vf(p))}function vf(e){return function(t){var n=t.context;Ar(n.shape||n.connection,"bpmn:BaseElement")&&e(t)}}function yf(e,t,n){zn.call(this),this._bpmnFactory=e,this._moddle=t,this._translate=n}function gf(e,t,n){e[n]=t[n],delete t[n]}function bf(e,t){this._modeling=e,this._canvas=t}function xf(e){this._modeling=e}function _f(e,t){this._canvas=e,this._layouter=t}ff.$inject=["moddle"],ff.prototype._needsId=function(e){return Ga(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"])},ff.prototype._ensureId=function(e){var t;t=Ar(e,"bpmn:Activity")?"Activity":Ar(e,"bpmn:Event")?"Event":Ar(e,"bpmn:Gateway")?"Gateway":Ga(e,["bpmn:SequenceFlow","bpmn:MessageFlow"])?"Flow":(e.$type||"").replace(/^[^:]*:/g,""),t+="_",!e.id&&this._needsId(e)&&(e.id=this._model.ids.nextPrefixed(t,e))},ff.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},ff.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},ff.prototype.createDiShape=function(e,t,n){return this.create("bpmndi:BPMNShape",F({bpmnElement:e,bounds:this.createDiBounds(t)},n))},ff.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},ff.prototype.createDiWaypoints=function(e){var t=this;return S(e,(function(e){return t.createDiWaypoint(e)}))},ff.prototype.createDiWaypoint=function(e){return this.create("dc:Point",$(e,["x","y"]))},ff.prototype.createDiEdge=function(e,t,n){return this.create("bpmndi:BPMNEdge",F({bpmnElement:e},n))},ff.prototype.createDiPlane=function(e){return this.create("bpmndi:BPMNPlane",{bpmnElement:e})},n(mf,Ka),mf.$inject=["eventBus","bpmnFactory","connectionDocking","translate"],mf.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},mf.prototype.updateParent=function(e,t){if(!(e instanceof jn||Ar(e,"bpmn:DataStoreReference")&&e.parent&&Ar(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=n&&n.businessObject,o=r&&r.di;Ar(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,r,t&&t.businessObject),Ar(e,"bpmn:DataOutputAssociation")&&(r=e.source?e.source.businessObject:null),Ar(e,"bpmn:DataInputAssociation")&&(r=e.target?e.target.businessObject:null),this.updateSemanticParent(i,r),Ar(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,r),this.updateDiParent(i.di,o)}},mf.prototype.updateBounds=function(e){var t=e.businessObject.di,n=e instanceof jn?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})},mf.prototype.updateFlowNodeRefs=function(e,t,n){n!==t&&(Ar(n,"bpmn:Lane")&&mt(n.get("flowNodeRef"),e),Ar(t,"bpmn:Lane")&&vt(t.get("flowNodeRef"),e))},mf.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)},mf.prototype.updateDiParent=function(e,t){if(t&&!Ar(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(mt(n,e),e.$parent=null)}},mf.prototype.getLaneSet=function(e){var t,n;return Ar(e,"bpmn:Lane")?((t=e.childLaneSet)||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(Ar(e,"bpmn:Participant")&&(e=e.processRef),(t=(n=e.get("laneSets"))[0])||((t=this._bpmnFactory.create("bpmn:LaneSet")).$parent=e,n.push(t)),t)},mf.prototype.updateSemanticParent=function(e,t,n){var i,r=this._translate;if(e.$parent!==t&&(!Ar(e,"bpmn:DataInput")&&!Ar(e,"bpmn:DataOutput")||(Ar(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),!("ioSpecification"in t)||t.ioSpecification!==e.$parent))){if(Ar(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(Ar(e,"bpmn:FlowElement")){if(t)if(Ar(t,"bpmn:Participant"))t=t.processRef;else if(Ar(t,"bpmn:Lane"))do{t=t.$parent.$parent}while(Ar(t,"bpmn:Lane"));i="flowElements"}else if(Ar(e,"bpmn:Artifact")){for(;t&&!Ar(t,"bpmn:Process")&&!Ar(t,"bpmn:SubProcess")&&!Ar(t,"bpmn:Collaboration");){if(Ar(t,"bpmn:Participant")){t=t.processRef;break}t=t.$parent}i="artifacts"}else if(Ar(e,"bpmn:MessageFlow"))i="messageFlows";else if(Ar(e,"bpmn:Participant")){i="participants";var o,a=e.processRef;a&&(o=function(e){for(;e&&!Ar(e,"bpmn:Definitions");)e=e.$parent;return e}(e.$parent||t),e.$parent&&(mt(o.get("rootElements"),a),a.$parent=null),t&&(vt(o.get("rootElements"),a),a.$parent=o))}else Ar(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":Ar(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&&mt(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);mt(s,e),t&&(c||(c=[],t.set(i,c)),c.push(e))}}},mf.prototype.updateConnectionWaypoints=function(e){e.businessObject.di.set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},mf.prototype.updateConnection=function(e){var t,n=e.connection,i=kr(n),r=kr(n.source),o=kr(n.target);if(Ar(i,"bpmn:DataAssociation"))Ar(i,"bpmn:DataInputAssociation")?(i.get("sourceRef")[0]=r,t=e.parent||e.newParent||o,this.updateSemanticParent(i,o,t)):Ar(i,"bpmn:DataOutputAssociation")&&(t=e.parent||e.newParent||r,this.updateSemanticParent(i,r,t),i.targetRef=o);else{var a=Ar(i,"bpmn:SequenceFlow");i.sourceRef!==r&&(a&&(mt(i.sourceRef&&i.sourceRef.get("outgoing"),i),r&&r.get("outgoing")&&r.get("outgoing").push(i)),i.sourceRef=r),i.targetRef!==o&&(a&&(mt(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)},mf.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label},n(yf,zn),yf.$inject=["bpmnFactory","moddle","translate"],yf.prototype.baseCreate=zn.prototype.create,yf.prototype.create=function(e,t){return"label"===e?this.baseCreate(e,F({type:"label"},no,t)):this.createBpmnElement(e,t)},yf.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"})),Ar(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]&&gf(e,t,n)}))}(a,t,["processRef","isInterrupting","associationDirection","isForCompensation"]),t.isExpanded&&gf(a.di,t,"isExpanded"),Ar(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)},yf.prototype._getDefaultSize=function(e){return Ar(e,"bpmn:SubProcess")?Mr(e)?{width:350,height:200}:{width:100,height:80}:Ar(e,"bpmn:Task")?{width:100,height:80}:Ar(e,"bpmn:Gateway")?{width:50,height:50}:Ar(e,"bpmn:Event")?{width:36,height:36}:Ar(e,"bpmn:Participant")?Mr(e)?{width:600,height:250}:{width:400,height:60}:Ar(e,"bpmn:Lane")?{width:400,height:100}:Ar(e,"bpmn:DataObjectReference")?{width:36,height:50}:Ar(e,"bpmn:DataStoreReference")?{width:50,height:50}:Ar(e,"bpmn:TextAnnotation")?{width:100,height:30}:Ar(e,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},yf.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)},bf.$inject=["modeling","canvas"],bf.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)}))},bf.prototype.postExecute=function(e){},xf.$inject=["modeling"],xf.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},xf.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))},_f.$inject=["canvas","layouter"],_f.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},_f.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var Ef=Math.round;function wf(e){this._modeling=e}function Sf(e){return!!e.waypoints}wf.$inject=["modeling"],wf.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=pt(t);b(t,(function(e){Sf(e)&&(e.waypoints=S(e.waypoints,(function(e){return{x:Ef(e.x-s.x-s.width/2+r.x),y:Ef(e.y-s.y-s.height/2+r.y)}}))),F(e,{x:Ef(e.x-s.x-s.width/2+r.x),y:Ef(e.y-s.y-s.height/2+r.y)})}));var c=rt(t),p={};b(t,(function(e){if(Sf(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 Cf=Math.round;function Tf(e){this._canvas=e}function Rf(e){Tf.call(this,e)}Tf.$inject=["canvas"],Tf.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-Cf(t.width/2),y:n.y-Cf(t.height/2)}),this._canvas.addShape(t,i,r),t},Tf.prototype.revert=function(e){var t=e.shape;return this._canvas.removeShape(t),t},n(Rf,Tf),Rf.$inject=["canvas"];var Pf=Tf.prototype.execute;Rf.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,Pf.call(this,e)};var Af=Tf.prototype.revert;function kf(e,t){this._canvas=e,this._modeling=t}function Mf(e,t){this._modeling=e,this._elementRegistry=t}function Df(e,t){this._canvas=e,this._modeling=t}function Bf(e){this._modeling=e}Rf.prototype.revert=function(e){return e.shape.labelTarget=null,Af.call(this,e)},kf.$inject=["canvas","modeling"],kf.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=yt(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},kf.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,vt(n.children,t,i),this._canvas.addConnection(t,n),t},Mf.$inject=["modeling","elementRegistry"],Mf.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))}))},Df.$inject=["canvas","modeling"],Df.prototype.preExecute=function(e){var t=this._modeling,n=e.shape;zd(n.incoming,(function(e){t.removeConnection(e,{nested:!0})})),zd(n.outgoing,(function(e){t.removeConnection(e,{nested:!0})})),zd(n.children,(function(e){e.waypoints?t.removeConnection(e,{nested:!0}):t.removeShape(e,{nested:!0})}))},Df.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=yt(i.children,n),t.removeShape(n),n},Df.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return vt(i.children,n,r),t.addShape(n,i),n},Bf.$inject=["modeling"];var Nf={x:"y",y:"x"};function Of(e,t){this._layouter=e,this._canvas=t}function jf(){}function Lf(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}function If(e){this._modeling=e}function zf(e){this._helper=new If(e)}function Ff(e){this._modeling=e,this._helper=new If(e)}function $f(e){this._modeling=e}function Gf(e){return e.original||e}function Hf(e,t){this._modeling=e,this._rules=t}function Wf(e){this._modeling=e}function Vf(e){this._modeling=e}function Uf(e){return F({},e)}function qf(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function Kf(e,t,n){var i=qf(n);return/e|s/.test(n)?e[i]>t:/n|w/.test(n)?e[i]<t:void 0}function Yf(e,t){return-1!==e.indexOf(t)}function Xf(e){this._modeling=e}function Zf(e){var t={};return b(e,(function(e){t[e.id]=e.hidden,e.children&&(t=F({},t,Zf(e.children)))})),t}function Qf(e,t){var n=[];return b(e,(function(e){e.hidden=t,n=n.concat(e),e.children&&(n=n.concat(Qf(e.children,e.collapsed||t)))})),n}function Jf(e,t){var n=[];return b(e,(function(e){e.hidden=t[e.id],n=n.concat(e),e.children&&(n=n.concat(Jf(e.children,t)))})),n}function em(e){this._modeling=e}function tm(e,t){return mt(e&&e.attachers,t)}function nm(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),vt(i,t,n)}}function im(){}function rm(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",(function(){i.registerHandlers(n)}))}function om(e){this._elementRegistry=e}function am(e,t){b(t,(function(t,n){e.set(n,t)}))}Bf.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[Nf[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[Nf[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)})))}))},Bf.prototype.postExecute=function(e){},Of.$inject=["layouter","canvas"],Of.prototype.execute=function(e){var t=e.connection;return F(e,{oldWaypoints:t.waypoints}),t.waypoints=this._layouter.layoutConnection(t,e.hints),t},Of.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t},jf.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=mt(o.children,t),vt(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},jf.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return mt(n.children,t),vt(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},Lf.prototype.add=function(e,t){return this.addAll([e],t)},Lf.prototype.addAll=function(e,t){return F(this,function(e,t,n){c(t)&&(t=!0),h(t)&&(n=t,t=!0);var i=ht((n=n||{}).allShapes),r=ht(n.allConnections),o=ht(n.enclosedElements),a=ht(n.enclosedConnections),s=ht(n.topLevel,t&&P(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 st(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},If.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},If.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&&ph(e,e.source,t),connectionEnd:r&&uh(e,e.target,t)})}))},If.prototype.getClosure=function(e){return(new Lf).addAll(e,!0)},zf.$inject=["modeling"],zf.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},zf.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)},Ff.$inject=["modeling"],Ff.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=mt(o.children,t),vt(i.children,t,r),F(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},Ff.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:uh(e,t,n)})})),b(t.outgoing,(function(e){r.layoutConnection(e,{connectionStart:ph(e,t,n)})}))),!1!==i.recurse&&this.moveChildren(e)},Ff.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return vt(n.children,t,i),F(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},Ff.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},Ff.prototype.getNewParent=function(e){return e.newParent||e.shape.parent},$f.$inject=["modeling"],$f.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},$f.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||Gf(l(r)?r[0]:r)),!i||n&&"target"!==o.docking||(a.connectionEnd=a.connectionEnd||Gf(l(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},$f.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},Hf.$inject=["modeling","rules"],Hf.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,ch(e,t,l),s)})),b(d,(function(e){var i=e.target;c(t,i,e)&&n.reconnectStart(e,t,sh(e,t,l),s)}))},Hf.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},Hf.prototype.execute=function(e){},Hf.prototype.revert=function(e){},Hf.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},Hf.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},Hf.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)},Wf.$inject=["modeling"],Wf.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},Wf.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:ch(e,n,i)})})),b(n.outgoing,(function(e){t.layoutConnection(e,{connectionStart:sh(e,n,i)})})))},Wf.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},Vf.$inject=["modeling"],Vf.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;(Yd(e,r)||Yd(e,o)||Yd(t,r)||Yd(t,o))&&(Yd(n,i)||n.push(i))}))})),n}(i,r),t,n,o,i,r,a)},Vf.prototype.execute=function(){},Vf.prototype.revert=function(){},Vf.prototype.moveShapes=function(e,t){var n=this;b(e,(function(e){n._modeling.moveShape(e,t,null,{autoResize:!1,layout:!1,recurse:!1})}))},Vf.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})}))},Vf.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=Uf(e)).original&&(e.original=Uf(e.original)),e}))}(e),h=qf(n),d={labelBehavior:!1};Yf(c,p)&&Yf(c,u)?(l=S(l,(function(e){return Kf(e,i,n)&&(e[h]=e[h]+t[h]),e.original&&Kf(e.original,i,n)&&(e.original[h]=e.original[h]+t[h]),e})),s._modeling.updateWaypoints(e,l,{labelBehavior:!1})):(Yf(c,p)||Yf(c,u))&&(Yf(r,p)?d.connectionStart=ph(e,p,t):Yf(r,u)?d.connectionEnd=uh(e,u,t):Yf(o,p)?d.connectionStart=sh(e,p,a[p.id]):Yf(o,u)&&(d.connectionEnd=ch(e,u,a[u.id])),s._modeling.layoutConnection(e,d))}))},Xf.$inject=["modeling"],Xf.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=Zf(n),t.collapsed=!t.collapsed;var i=Qf(n,t.collapsed);return[t].concat(i)},Xf.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=Jf(t.children,n);return t.collapsed=!t.collapsed,[t].concat(i)},em.$inject=["modeling"],em.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=tm(i,t),nm(n,t),t.host=n,t},em.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,tm(n,t),nm(i,t,r),t},im.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},im.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t},rm.$inject=["eventBus","elementFactory","commandStack"],rm.prototype.getHandlers=function(){return{"shape.append":xf,"shape.create":Tf,"shape.delete":Df,"shape.move":Ff,"shape.resize":Wf,"shape.replace":Hf,"shape.toggleCollapse":Xf,spaceTool:Vf,"label.create":Rf,"connection.create":_f,"connection.delete":kf,"connection.move":jf,"connection.layout":Of,"connection.updateWaypoints":im,"connection.reconnect":$f,"elements.create":wf,"elements.move":zf,"elements.delete":Mf,"elements.distribute":Bf,"elements.align":bf,"element.updateAttachment":em}},rm.prototype.registerHandlers=function(e){b(this.getHandlers(),(function(t,n){e.registerHandler(n,t)}))},rm.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)},rm.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},rm.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)},rm.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)},rm.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},rm.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},rm.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},rm.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},rm.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},rm.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},rm.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},rm.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},rm.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},rm.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},rm.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},rm.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},rm.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},rm.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)},rm.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},rm.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)},rm.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,F(i,{docking:"source"}))},rm.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,F(i,{docking:"target"}))},rm.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},rm.prototype._create=function(e,t){return t instanceof Bn?t:this._elementFactory.create(e,t)},rm.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)},om.$inject=["elementRegistry"],om.prototype.execute=function(e){var t=e.element,n=e.moddleElement,i=e.properties;if(!n)throw new Error("<moddleElement> required");var r=e.changed||this.getVisualReferences(n).concat(t),o=e.oldProperties||function(e,t){return _(t,(function(t,n){return t[n]=e.get(n),t}),{})}(n,C(i));return am(n,i),e.oldProperties=o,e.changed=r,r},om.prototype.revert=function(e){var t=e.oldProperties,n=e.moddleElement,i=e.changed;return am(n,t),i},om.prototype.getVisualReferences=function(e){var t=this._elementRegistry;return Ar(e,"bpmn:DataObject")?function(e,t){return t.filter((function(t){return Ar(t,"bpmn:DataObjectReference")&&kr(t).dataObjectRef===e}))}(e,t):[]};var sm="default",cm="id",pm="di",um={width:0,height:0};function lm(e,t,n,i,r){this._elementRegistry=e,this._moddle=t,this._translate=n,this._modeling=i,this._textRenderer=r}function hm(e,t){return cm in e&&e.id!==t.id}function dm(e,t){b(t,(function(t,n){n!==pm?e.set(n,t):e.di&&function(e,t){b(t,(function(t,n){e.set(n,t)}))}(e.di,t)}))}lm.$inject=["elementRegistry","moddle","translate","modeling","textRenderer"],lm.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 fm.forEach((function(n){n in e&&(t[n]=kr(t[n]))})),t}(e.properties),c=e.oldProperties||function(e,t){return _(C(t),(function(n,i){return n[i]=i!==pm?e.get(i):function(e,t){return _(t,(function(t,n){return t[n]=e.get(n),t}),{})}(e.di,C(t.di)),n}),{})}(a,s);return hm(s,a)&&(o.unclaim(a.id),r.updateId(t,s.id),o.claim(s.id,a)),sm in s&&(s.default&&n.push(r.get(s.default.id)),a.default&&n.push(r.get(a.default.id))),dm(a,s),e.oldProperties=c,e.changed=n,n},lm.prototype.postExecute=function(e){var t=e.element.label,n=t&&kr(t).name;if(n){var i=this._textRenderer.getExternalLabelBounds(t,n);this._modeling.resizeShape(t,i,um)}},lm.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 dm(r,i),hm(n,r)&&(a.unclaim(n.id),o.updateId(t,i.id),a.claim(i.id,r)),e.changed};var fm=["default"];function mm(e,t){this._canvas=e,this._modeling=t}function vm(e,t){this._modeling=e,this._spaceTool=t}function ym(e,t){this._modeling=e,this._translate=t}function gm(e,t){this._modeling=e,this._spaceTool=t}mm.$inject=["canvas","modeling"],mm.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),vt(a.rootElements,i),i.$parent=a,mt(a.rootElements,o),o.$parent=null,o.di=null,s.bpmnElement=i,i.di=s,e.oldRoot=r},mm.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),mt(o.rootElements,n),n.$parent=null,vt(o.rootElements,r),r.$parent=o,n.di=null,a.bpmnElement=r,r.di=a},vm.$inject=["modeling","spaceTool"],vm.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=Wp(i),a=o===i,s=a?i:i.parent;Hp(s).length||n.createShape({type:"bpmn:Lane"},{x:i.x+$p,y:i.y,width:i.width-$p,height:i.height},s);var c=[];st(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?$p:0),y:u-("top"===r?120:0),width:i.width-(a?$p:0),height:120},s)},ym.$inject=["modeling","translate"],ym.prototype.preExecute=function(e){var t=this._modeling,n=this._translate,i=e.shape,r=e.count,o=Hp(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+$p,y:s,width:i.width-$p,height:c},l<a?t.resizeShape(o[l],p):(u={type:"bpmn:Lane"},t.createShape(u,p,i))},gm.$inject=["modeling","spaceTool"],gm.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds;!1!==e.balanced?this.resizeBalanced(t,n):this.resizeSpace(t,n)},gm.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=Vp(e,t);n.resizeShape(e,t),i.forEach((function(e){n.resizeShape(e.shape,e.newBounds)}))},gm.prototype.resizeSpace=function(e,t){var n,i,r,o,a,s=this._spaceTool,c=an(e),p=Np(an(t),c),u=Wp(e),l=[],h=[];st(u,(function(e){return l.push(e),(Ar(e,"bpmn:Lane")||Ar(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))};var bm="flowNodeRef",xm="lanes";function _m(e){this._elementRegistry=e}function Em(e){this._moddle=e}_m.$inject=["elementRegistry"],_m.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=Wp(e);return r[t.id]||(r[t.id]=Gp(t)),r[t.id]}(e).filter((function(t){return n=e,i=an(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=Wp(e);t&&-1===n.indexOf(t)&&(t.children.filter((function(e){return Ar(e,"bpmn:FlowNode")})).forEach(a),n.push(t))})),e.forEach(a),o.forEach((function(e){var t=e.businessObject,n=t.get(xm).slice(),r=s(e);i.push({flowNode:t,remove:n,add:r})})),t.forEach((function(e){var t=e.businessObject;e.parent||t.get(bm).forEach((function(e){i.push({flowNode:e,remove:[t],add:[]})}))})),i},_m.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(xm);e.remove.forEach((function(e){mt(n,e),mt(e.get(bm),t)})),e.add.forEach((function(e){vt(n,e),vt(e.get(bm),t)}))}))},_m.prototype.revert=function(e){e.updates.forEach((function(e){var t=e.flowNode,n=t.get(xm);e.add.forEach((function(e){mt(n,e),mt(e.get(bm),t)})),e.remove.forEach((function(e){vt(n,e),vt(e.get(bm),t)}))}))},Em.$inject=["moddle"],Em.prototype.execute=function(e){var t=this._moddle.ids,n=e.id,i=e.element;e.claiming?t.claim(n,i):t.unclaim(n)},Em.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 wm={fill:void 0,stroke:void 0};function Sm(e){this._commandStack=e,this._normalizeColor=function(e){if(e){if(m(e)){var t=function(e){var t=document.createElement("canvas").getContext("2d");return t.fillStyle="transparent",t.fillStyle=e,/^#[0-9a-fA-F]{6}$/.test(t.fillStyle)?t.fillStyle:null}(e);if(t)return t}throw new Error("invalid color value: "+e)}}}Sm.$inject=["commandStack"],Sm.prototype.postExecute=function(e){var t=e.elements,n=e.colors||wm,i=this,r={};"fill"in n&&F(r,{"background-color":this._normalizeColor(n.fill)}),"stroke"in n&&F(r,{"border-color":this._normalizeColor(n.stroke)}),b(t,(function(e){var t=function(e){return!!e.waypoints}(e)?$(r,["border-color"]):r;!function(e){"border-color"in e&&(e.stroke=e["border-color"]);"background-color"in e&&(e.fill=e["background-color"])}(t),i._commandStack.execute("element.updateProperties",{element:e,properties:{di:t}})}))};var Cm={width:0,height:0};function Tm(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=Nr(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(!so(n)&&io(n)&&!ro(n)&&!Rm(r)){var o=ao(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=Or(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(so(r)||Ar(r,"bpmn:TextAnnotation"))if(so(r)&&Rm(o))!1!==s.removeShape&&e.removeShape(r,{unsetLabel:!1});else{var c=Or(r);void 0===a&&(a=t.getExternalLabelBounds(r,c)),a&&e.resizeShape(r,a,Cm)}}}function Rm(e){return!e||!e.trim()}function Pm(e,t,n,i){rm.call(this,e,t,n),this._bpmnRules=i}function Am(){}Tm.$inject=["modeling","textRenderer"],n(Pm,rm),Pm.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],Pm.prototype.getHandlers=function(){var e=rm.prototype.getHandlers.call(this);return e["element.updateModdleProperties"]=om,e["element.updateProperties"]=lm,e["canvas.updateRoot"]=mm,e["lane.add"]=vm,e["lane.resize"]=gm,e["lane.split"]=ym,e["lane.updateRefs"]=_m,e["id.updateClaim"]=Em,e["element.setColor"]=Sm,e["element.updateLabel"]=Tm,e},Pm.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},Pm.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)},Pm.prototype.updateModdleProperties=function(e,t,n){this._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:t,properties:n})},Pm.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},Pm.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},Pm.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},Pm.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},Pm.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},Pm.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},Pm.prototype.makeProcess=function(){var e={newRoot:this._create("root",{type:"bpmn:Process"})};this._commandStack.execute("canvas.updateRoot",e)},Pm.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},Pm.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},Pm.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})},Am.prototype.layoutConnection=function(e,t){return[(t=t||{}).connectionStart||cn(t.source||e.source),t.connectionEnd||cn(t.target||e.target)]};var km=Math.round,Mm={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function Dm(e,t,n){var i,r,o,a=pn(t,e,5),s=n.split(":")[0],c=km((t.x-e.x)/2+e.x),p=km((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+20*(/l/.test(s)?-1:1),y:h?p+20:p}):i={x:(h=c===e.x)?c+20:c,y:e.y+20*(/t/.test(s)?-1:1)}:i={x:c,y:p}),{waypoints:Nm(e,i,r).concat(i),directions:r,turnNextDirections:h}}function Bm(e){return e.split(":").reverse().join(":")}function Nm(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(zm(n)){var i=function(e,t,n){return Dm(e,t,n)}(e,t,n),r=function(e,t,n){var i=Dm(t,e,Bm(n));return{waypoints:i.waypoints.slice().reverse(),directions:Bm(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:Nm(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=km((t.x-e.x)/2+e.x),r=km((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 Om(e,t,n,i,r){var o=x(r&&r.preferredLayouts||[],"straight")[0]||"h:h",a=pn(e,t,Mm[o]||0),s=function(e,t){if(zm(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||cn(e),i=i||cn(t);var c=s.split(":");return function(e,t,n){var i=Nm(e,t,n);return i.unshift(e),i.push(t),$m(i)}(Fm(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)),Fm(i,t,c[1],a),s)}function jm(e,t,n,i,r,o){var a;return l(n)&&(r=n,o=i,n=cn(e),i=cn(t)),r=r||[],(a=-1!==(o=F({preferredLayouts:[]},o)).preferredLayouts.indexOf("straight")&&function(e,t,n,i,r){var o,a,s={};if(a=pn(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?Lm(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:Lm(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=o.connectionEnd&&function(e,t,n,i){var r=i.slice().reverse();return(r=Im(e,t,n,r))?r.reverse():null}(t,e,i,r))?a:(a=o.connectionStart&&Im(e,t,n,r))||(!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:Om(e,t,n,i,o))}function Lm(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 Im(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&&gt(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(xt(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(_t(e[i],t,20)||_t(e[i],n,20))return e.slice(i);return e}(a,e,t))!==a&&(a=Im(e,t,n,r)),a&&xt(a)?null:a}function zm(e){return e&&/t|r|b|l/.test(e)}function Fm(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 $m(e){return e.reduce((function(t,n,i){return bt(t[t.length-1],e[i+1],n,0)||t.push(n),t}),[])}var Gm={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},Hm={top:"t",right:"r",bottom:"b",left:"l"};function Wm(){}function Vm(e,t){return Ar(t,"bpmn:Participant")?"source":Ar(e,"bpmn:Participant")?"target":Ym(t)?"source":Ym(e)||Ar(t,"bpmn:Event")?"target":Ar(e,"bpmn:Event")?"source":null}function Um(e){return Ym(e)?"target":"source"}function qm(e,t){return e?e.original||e:cn(t)}function Km(e,t){return Ar(t,"bpmn:Activity")&&Ar(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function Ym(e){return Ar(e,"bpmn:SubProcess")&&Mr(e)}function Xm(e,t){return e===t}function Zm(e){var t=/right|left/.exec(e);return t&&t[0]}function Qm(e){var t=/top|bottom/.exec(e);return t&&t[0]}function Jm(e){return"right"===e||"left"===e}function ev(e,t){var n=t.waypoints,i=n&&n.length&&pn(n[0],e);return"top"===i?["t:r"]:"right"===i?["r:b"]:"left"===i?["l:t"]:["b:l"]}function tv(e,t,n){var i,r,o=cn(e),a=cn(t),s=(r=(i=e).host,pn(cn(i),r,-10)),c=Xm(e.host,t),p=-1!==["top","right","bottom","left"].indexOf(s),u=pn(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:Qm(e),s=Hm[a];o=t?Jm(e)?nv("y",n,i,r)?"h":"b":nv("x",n,i,r)?"v":"l":"v";return[s+":"+o]}(s,p,e,t,n):[function(e,t,n){if(n)return Hm[e];if(Xm(Qm(e),Qm(t))||(i=Zm(e),r=Zm(t),Gm[i]===r))return Hm[Qm(e)];var i,r;return Hm[Zm(e)]}(s,u,p)+":"+function(e,t,n){if(n)return Jm(e)?(i=t,r=Zm(e),o=Gm[r],-1!==i.indexOf(o)||Xm(e,t)?"h":"v"):function(e,t){var n=Qm(e),i=Gm[n];return-1!==t.indexOf(i)}(e,t)||Xm(e,t)?"v":"h";var i,r,o;return Jm(t)||Xm(Qm(e),Qm(t))&&Zm(t)?"h":"v"}(s,u,p)]}function nv(e,t,n,i){return!(iv(e,i,n,40)||iv(e,i,{x:n.x+n.width,y:n.y+n.height},40)||iv(e,i,cn(t),40))}function iv(e,t,n,i){return Math.abs(t[e]-n[e])<i}function rv(e){return F({original:e.point.original||e.point},e.actual)}function ov(e,t){this._elementRegistry=e,this._graphicsFactory=t}n(Wm,Am),Wm.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=qm(a&&a[0],r)),c||(c=qm(a&&a[a.length-1],o)),(Ar(e,"bpmn:Association")||Ar(e,"bpmn:DataAssociation"))&&a&&!Km(r,o)?[].concat([s],a.slice(1,-1),[c]):(Ar(e,"bpmn:MessageFlow")?n=function(e,t){return{preferredLayouts:["straight","v:v"],preserveDocking:Vm(e,t)}}(r,o):(Ar(e,"bpmn:SequenceFlow")||Km(r,o))&&(n=r===o?{preferredLayouts:ev(r,e)}:Ar(r,"bpmn:BoundaryEvent")?{preferredLayouts:tv(r,o,c)}:Ym(r)||Ym(o)?function(e){return{preferredLayouts:["straight","h:h"],preserveDocking:Um(e)}}(r):Ar(r,"bpmn:Gateway")?{preferredLayouts:["v:h"]}:Ar(o,"bpmn:Gateway")?{preferredLayouts:["h:v"]}:{preferredLayouts:["h:h"]}),n&&(i=$m(jm(r,o,s,c,a,n=F(n,t)))),i||[s,c])},ov.$inject=["elementRegistry","graphicsFactory"],ov.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(rv(i)),o.push(rv(r)),o},ov.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}},ov.prototype._getIntersection=function(e,t,n){return un(this._getShapePath(e),this._getConnectionPath(t),n)},ov.prototype._getConnectionPath=function(e){return this._graphicsFactory.getConnectionPath(e)},ov.prototype._getShapePath=function(e){return this._graphicsFactory.getShapePath(e)},ov.prototype._getGfx=function(e){return this._elementRegistry.getGraphics(e)};var av={__init__:["modeling","bpmnUpdater"],__depends__:[Vh,Td,Pd,Md,dp,Bd,Id,Gd,Ud,No,Bu,df],bpmnFactory:["type",ff],bpmnUpdater:["type",mf],elementFactory:["type",yf],modeling:["type",Pm],layouter:["type",Wm],connectionDocking:["type",ov]},sv=Math.round;function cv(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+sv(e.width/2),y:e.y+sv(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",1500,(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=P(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",1250,(function(e){var t=e.context,n=t.validatedShapes;if(!(t.canExecute=o(n)))return!1})),e.on("shape.move.move",500,(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=sv(i.x),i.y=sv(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){if(bo(e)){var t=mo(e);if(!t)throw new Error("must supply DOM mousedown event");return a(t,e.element)}})),this.start=a}cv.$inject=["eventBus","dragging","modeling","selection","rules"];var pv="djs-dragging",uv="drop-ok",lv="drop-not-ok",hv="new-parent",dv="attach-ok";function fv(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=ct(e,!0),n=S(t,(function(e){return(e.incoming||[]).concat(e.outgoing||[])}));return o(t.concat(n))}function s(e,n){[dv,uv,lv,hv].forEach((function(i){i===n?t.addMarker(e,i):t.removeMarker(e,i)}))}e.on("shape.move.start",499,(function(e){var s=e.context,c=s.shapes,p=s.allDraggedElements,u=r(c);if(!s.dragGroup){var l=Me("g");ge(l,n.cls("djs-drag-group",["no-events"])),me(t.getActiveLayer(),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,pv)})),s.allDraggedElements=p,s.differentParents=1!==T(P(c,(function(e){return e.parent&&e.parent.id})))})),e.on("shape.move.move",499,(function(e){var t=e.context,n=t.dragGroup,i=t.target,r=t.shape.parent,o=t.canExecute;i&&("attach"===o?s(i,dv):t.canExecute&&i&&i.id!==r.id?s(i,hv):s(i,t.canExecute?uv:lv)),Vn(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,pv)})),r&&Ce(r)})),this.makeDraggable=function(e,n,r){i.addDragger(n,e.dragGroup),r&&t.addMarker(n,pv),e.allDraggedElements?e.allDraggedElements.push(n):e.allDraggedElements=[n]}}fv.$inject=["eventBus","canvas","styles","previewSupport"];var mv={__depends__:[Co,No,Ro,hs,ss,Rc],__init__:["move","movePreview"],move:["type",cv],movePreview:["type",fv]},vv=".djs-palette-toggle",yv=".entry",gv="open";function bv(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 xv(e,t){var n=t.getPaletteEntries();return f(n)?n(e):(b(n,(function(t,n){e[n]=t})),e)}bv.$inject=["eventBus","canvas"],bv.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("palette.getProviders",e,(function(e){e.providers.push(t)})),this._rebuild()},bv.prototype.getEntries=function(){return this._getProviders().reduce(xv,{})},bv.prototype._rebuild=function(){this._diagramInitialized&&(this._getProviders().length&&(this._container||this._init(),this._update()))},bv.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=ce(bv.HTML_MARKUP);n.appendChild(i),se.bind(i,".djs-palette-toggle, .entry","click",(function(t){var n=t.delegateTarget;if(J(n,vv))return e.toggle();e.trigger("click",t)})),re.bind(i,"mousedown",(function(e){e.stopPropagation()})),se.bind(i,yv,"dragstart",(function(t){e.trigger("dragstart",t)})),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},bv.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},bv.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(gv,e.open),r.fire("palette.changed",{twoColumn:t,open:this.isOpen()})},bv.prototype._update=function(){var e=le(".djs-palette-entries",this._container),t=this._entries=this.getEntries();X(e),b(t,(function(t,n){var i=t.group||"default",r=le("[data-group="+i+"]",e);r||(r=ce('<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=ce(o);r.appendChild(a),t.separator||(H(a,"data-action",n),t.title&&H(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(ce('<img src="'+t.imageUrl+'">')))})),this.open()},bv.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[H(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())},bv.prototype._layoutChanged=function(){this._toggleState({})},bv.prototype._needsCollapse=function(e,t){return e<46*Object.keys(t).length+50},bv.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},bv.prototype.open=function(){this._toggleState({open:!0})},bv.prototype.toggle=function(e){this.isOpen()?this.close():this.open()},bv.prototype.isActiveTool=function(e){return e&&this._activeTool===e},bv.prototype.updateToolHighlight=function(e){var t;this._toolsContainer||(t=le(".djs-palette-entries",this._container),this._toolsContainer=le("[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")}}))},bv.prototype.isOpen=function(){return K(this._container).has(gv)},bv.prototype._getParentContainer=function(){return this._canvas.getContainer()},bv.HTML_MARKUP='<div class="djs-palette"><div class="djs-palette-entries"></div><div class="djs-palette-toggle"></div></div>';var _v={__init__:["palette"],palette:["type",bv]},Ev="crosshair";function wv(e,t,n,i,r,o,a){this._selection=r,this._dragging=n,this._mouse=a;var s=this,c=function(e){var n,i=t.getActiveLayer();ge(n=e.frame=Me("rect"),{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),me(i,n)},p=function(e){var t=e.frame,n=e.bbox;ge(t,{x:n.x,y:n.y,width:n.width,height:n.height})},u=function(e){e.frame&&Ce(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(){s.activateLasso(t.originalEvent,!0)}))})),e.on("lasso.end",(function(e){var t=Sv(e),n=i.filter((function(e){return e}));s.select(n,t)})),e.on("lasso.start",(function(e){var t=e.context;t.bbox=Sv(e),c(t)})),e.on("lasso.move",(function(e){var t=e.context;t.bbox=Sv(e),p(t)})),e.on("lasso.cleanup",(function(e){var t=e.context;u(t)})),e.on("element.mousedown",1500,(function(e){if(_o(e))return s.activateLasso(e.originalEvent),!0}))}function Sv(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}}wv.$inject=["eventBus","canvas","dragging","elementRegistry","selection","toolManager","mouse"],wv.prototype.activateLasso=function(e,t){this._dragging.init(e,"lasso",{autoActivate:t,cursor:Ev,data:{context:{}}})},wv.prototype.activateSelection=function(e,t){this._dragging.init(e,"lasso.selection",{trapClick:!1,autoActivate:t,cursor:Ev,data:{context:{}}})},wv.prototype.select=function(e,t){var n=function(e,t){var n={};return b(e,(function(e){var i=e;i.waypoints&&(i=pt(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))},wv.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},wv.prototype.isActive=function(){var e=this._dragging.context();return e&&/^lasso/.test(e.prefix)};var Cv={__depends__:[Kd,Uc],__init__:["lassoTool"],lassoTool:["type",wv]},Tv=1500,Rv="grab";function Pv(e,t,n,i,r,o){this._dragging=n,this._mouse=o;var a=this,s=i.get("keyboard",!1);r.registerTool("hand",{tool:"hand",dragging:"hand.move"}),e.on("element.mousedown",Tv,(function(e){if(xo(e))return a.activateMove(e.originalEvent,!0),!1})),s&&s.addListener(Tv,(function(e){if(Av(e.keyEvent)&&!a.isActive()){var t=a._mouse.getLastMoveEvent();a.activateMove(t,!!t)}}),"keyboard.keydown"),s&&s.addListener(Tv,(function(e){Av(e.keyEvent)&&a.isActive()&&a.toggle()}),"keyboard.keyup"),e.on("hand.end",(function(t){var n=t.originalEvent.target;if(!(t.hover||n instanceof SVGElement))return!1;e.once("hand.ended",(function(){a.activateMove(t.originalEvent,{reactivate:!0})}))})),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!xo(t)&&n&&e.once("hand.move.ended",(function(e){a.activateHand(e.originalEvent,!0,!0)})),!1}))}function Av(e){return Wo(" ",e)}Pv.$inject=["eventBus","canvas","dragging","injector","toolManager","mouse"],Pv.prototype.activateMove=function(e,t,n){"object"==typeof t&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:Rv,data:{context:n||{}}})},Pv.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:Rv,data:{context:{reactivate:n}}})},Pv.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateHand(e,!!e)},Pv.prototype.isActive=function(){var e=this._dragging.context();return!!e&&/^(hand|hand\.move)$/.test(e.prefix)};var kv={__depends__:[Kd,Uc],__init__:["handTool"],handTool:["type",Pv]},Mv="connect-ok",Dv="connect-not-ok";function Bv(e,t,n,i,r,o,a){var s=this;this._dragging=t,this._rules=o,this._mouse=a,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=s.canStartConnect(n);null!==r&&(t.startTarget=n,i.addMarker(n,r?Mv:Dv))})),e.on(["global-connect.out","global-connect.cleanup"],(function(e){var t=e.context.startTarget,n=e.context.canStartConnect;t&&i.removeMarker(t,n?Mv:Dv)})),e.on(["global-connect.ended"],(function(t){var i=t.context.startTarget,r={x:t.x,y:t.y};if(s.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}))}Bv.$inject=["eventBus","dragging","connect","canvas","toolManager","rules","mouse"],Bv.prototype.start=function(e,t){this._dragging.init(e,"global-connect",{autoActivate:t,trapClick:!1,data:{context:{}}})},Bv.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();return this.start(e,!!e)},Bv.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},Bv.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};var Nv={__depends__:[lc,hs,ss,Kd,Uc],globalConnect:["type",Bv]};function Ov(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)}Ov.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],Ov.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.start(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 jv={__depends__:[_v,Ic,df,Cv,kv,Nv,to],__init__:["paletteProvider"],paletteProvider:["type",Ov]};function Lv(e,t,n,i,r){Ka.call(this,e),e.on("shape.move.move",250,(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=le('[data-element-id="'+Ss(c.id)+'"]',e.dragGroup);u&&ge(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=le('[data-element-id="'+Ss(i)+'"]',e.dragGroup);r&&ge(r,{display:"inline"}),n.remove(),t[i]&&delete t[i]}))}(o)}))}Lv.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],n(Lv,Ka);var Iv={__depends__:[Rc],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",Lv]},zv=40,Fv=["x","y"],$v=Math.abs;function Gv(e){e.on(["connect.hover","connect.move","connect.end"],1250,(function(e){var t=e.context,n=t.canExecute,i=t.start,r=t.hover,o=t.source,a=t.target;e.originalEvent&&Ho(e.originalEvent)||(t.initialConnectionStart||(t.initialConnectionStart=t.connectionStart),n&&r&&function(e,t,n){Fv.forEach((function(i){var r=Vv(i,t);e[i]<t[i]+n?ec(e,i,t[i]+n):e[i]>t[i]+r-n&&ec(e,i,t[i]+r-n)}))}(e,r,function(e){return Ar(e,"bpmn:Task")?10:20}(r)),r&&function(e,t){return w(t,(function(t){return Wv(e,t)}))}(n,["bpmn:Association","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow"])?(t.connectionStart=Qs(i),Ga(r,["bpmn:Event","bpmn:Gateway"])&&Hv(e,Qs(r)),Ga(r,["bpmn:Task","bpmn:SubProcess"])&&function(e,t){var n=Qs(t);Fv.forEach((function(i){(function(e,t,n){return e[n]>t[n]+20&&e[n]<t[n]+Vv(n,t)-20})(e,t,i)&&ec(e,i,n[i])}))}(e,r),Ar(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=Qs(n),o=pn(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];$v(i-r[t])<zv&&(n=i>r[t]?r[t]+zv:r[t]-zv,ec(e,t,n))}))}(e)):Wv(n,"bpmn:MessageFlow")?(Ar(i,"bpmn:Event")&&(t.connectionStart=Qs(i)),Ar(r,"bpmn:Event")&&Hv(e,Qs(r))):t.connectionStart=t.initialConnectionStart)}))}function Hv(e,t){ec(e,"x",t.x),ec(e,"y",t.y)}function Wv(e,t){return e&&e.type===t}function Vv(e,t){return"x"===e?t.width:t.height}function Uv(){this._targets={},this._snapOrigins={},this._snapLocations=[],this._defaultSnaps={}}function qv(e){this._snapValues={}}Gv.$inject=["eventBus"],Uv.prototype.getSnapOrigin=function(e){return this._snapOrigins[e]},Uv.prototype.setSnapOrigin=function(e,t){this._snapOrigins[e]=t,-1===this._snapLocations.indexOf(e)&&this._snapLocations.push(e)},Uv.prototype.addDefaultSnap=function(e,t){var n=this._defaultSnaps[e];n||(n=this._defaultSnaps[e]=[]),n.push(t)},Uv.prototype.getSnapLocations=function(){return this._snapLocations},Uv.prototype.setSnapLocations=function(e){this._snapLocations=e},Uv.prototype.pointsForTarget=function(e){var t=e.id||e,n=this._targets[t];return n||(n=this._targets[t]=new qv).initDefaults(this._defaultSnaps),n},qv.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)},qv.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],Ks(r-e)<=n)return r}(e[n],r[n],i)},qv.prototype.initDefaults=function(e){var t=this;b(e||{},(function(e,n){b(e,(function(e){t.add(n,e)}))}))};function Kv(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"],1250,(function(e){var t=e.context,r=t.shape,o=t.snapContext,a=t.target;if((!e.originalEvent||!Ho(e.originalEvent))&&!Js(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 Yv(e){return!!e.labelTarget}Kv.$inject=["elementRegistry","eventBus","snapping"],Kv.prototype.initSnap=function(e){var t,n=this._elementRegistry,i=e.context,r=i.shape,o=i.snapContext;o||(o=i.snapContext=new Uv);var a=(t=n.get(r.id)?Qs(r,e):{x:e.x+Qs(r).x,y:e.y+Qs(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}),Yv(r)||(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},Kv.prototype.addSnapTargetPoints=function(e,t,n){return b(this.getSnapTargets(t,n),(function(n){if(Yv(n))Yv(t)&&e.add("mid",Qs(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",Qs(n))}})),d(t.x)&&d(t.y)?(this._elementRegistry.get(t.id)&&e.add("mid",Qs(t)),e):e},Kv.prototype.getSnapTargets=function(e,t){return tc(t).filter((function(e){return!e.hidden}))};function Xv(e,t){t.invoke(Kv,this),e.on(["create.move","create.end"],1500,Zv),e.on(["create.move","create.end","shape.move.move","shape.move.end"],1500,(function(e){var t=e.context,n=t.canExecute,i=t.target;n&&("attach"===n||n.attach)&&!Js(e)&&function(e,t){var n,i=an(t),r=Uh(e,t),o=e.context.shape;n=o.parent?{x:0,y:0}:cn(o);/top/.test(r)?ec(e,"y",i.top-n.y):/bottom/.test(r)&&ec(e,"y",i.bottom-n.y);/left/.test(r)?ec(e,"x",i.left-n.x):/right/.test(r)&&ec(e,"x",i.right-n.x)}(e,i)}))}function Zv(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)&&ec(e,"x",e.x),(n&&n>=e.y||r&&r<=e.y)&&ec(e,"y",e.y)}}function Qv(e,t){return-1!==e.indexOf(t)}function Jv(e,t,n){return t?{x:e.x-n.x,y:e.y-n.y}:{x:e.x,y:e.y}}n(Xv,Kv),Xv.$inject=["eventBus","injector"],Xv.prototype.initSnap=function(e){var t=Kv.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",Jv(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",Jv(r,i,e))})),Ar(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},Xv.prototype.addSnapTargetPoints=function(e,t,n){Kv.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);b(i,(function(n){var i;(function(e){if(Ar(e,"bpmn:SubProcess")&&Mr(e))return!0;return Ar(e,"bpmn:Participant")}(n)||(i="bpmn:TextAnnotation",[t,n].every((function(e){return Ar(e,i)}))))&&(e.add("top-left",Xs(n)),e.add("bottom-right",Zs(n)))}));var r=this._elementRegistry;return b(t.incoming,(function(n){if(r.get(t.id)){Qv(i,n.source)||e.add("mid",cn(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)){Qv(i,n.target)||e.add("mid",cn(n.target));var o=n.waypoints[n.waypoints.length-1];e.add(n.id+"-docking",o.original||o)}})),Ar(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},Xv.prototype.getSnapTargets=function(e,t){return Kv.prototype.getSnapTargets.call(this,e,t).filter((function(e){return!Ar(e,"bpmn:Lane")}))};function ey(e,t){var n=this;e.on(["resize.start"],(function(e){n.initSnap(e)})),e.on(["resize.move","resize.end"],1250,(function(e){var i=e.context,r=i.shape,o=r.parent,a=i.direction,s=i.snapContext;if(!(e.originalEvent&&Ho(e.originalEvent)||Js(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)&&ec(e,"x",e.x),function(e){return"e"===e||"w"===e}(a)&&ec(e,"y",e.y),t.snap(e,c)}})),e.on(["resize.cleanup"],(function(){t.hide()}))}function ty(e,t){var n=cn(e),i=an(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}ey.prototype.initSnap=function(e){var t=e.context,n=t.shape,i=t.direction,r=t.snapContext;r||(r=t.snapContext=new Uv);var o=ty(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},ey.prototype.addSnapTargetPoints=function(e,t,n,i){return b(this.getSnapTargets(t,n),(function(t){e.add("corner",Zs(t)),e.add("corner",Xs(t))})),e.add("corner",ty(t,i)),e},ey.$inject=["eventBus","snapping"],ey.prototype.getSnapTargets=function(e,t){return tc(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}))};function ny(e){this._canvas=e,this._asyncHide=L(I(this.hide,this),1e3)}ny.$inject=["canvas"],ny.prototype.snap=function(e,t){var n=e.context.snapContext,i=n.getSnapLocations(),r={x:Js(e,"x"),y:Js(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)&&ec(e,t,n.originValue)}))},ny.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=Me("path");return ge(n,{d:"M0,0 L0,0"}),we(n).add("djs-snap-line"),me(t,n),{update:function(t){d(t)?ge(n,"horizontal"===e?{d:"M-100000,"+t+" L+100000,"+t,display:""}:{d:"M "+t+",-100000 L "+t+", +100000",display:""}):ge(n,{display:"none"})}}},ny.prototype._createSnapLines=function(){this._snapLines={horizontal:this._createLine("horizontal"),vertical:this._createLine("vertical")}},ny.prototype.showSnapLine=function(e,t){var n=this.getSnapLine(e);n&&n.update(t),this._asyncHide()},ny.prototype.getSnapLine=function(e){return this._snapLines||this._createSnapLines(),this._snapLines[e]},ny.prototype.hide=function(){b(this._snapLines,(function(e){e.update()}))};var iy={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",Kv],resizeSnapping:["type",ey],snapping:["type",ny]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",Gv],createMoveSnapping:["type",Xv]};function ry(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=ce(ry.BOX_HTML),this._searchInput=le(ry.INPUT_SELECTOR,this._container),this._resultsContainer=le(ry.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy"],this.close,this)}function oy(e,t,n){var i=function(e){var t="";return e.forEach((function(e){e.matched?t+='<strong class="'+ry.RESULT_HIGHLIGHT_CLASS+'">'+Ts(e.matched)+"</strong>":t+=Ts(e.normal)})),""!==t?t:null}(t),r=ce(n);r.innerHTML=i,e.appendChild(r)}ry.$inject=["canvas","eventBus","overlays","selection"],ry.prototype._bindEvents=function(){var e=this;function t(t,n,i,r){e._eventMaps.push({el:t,type:i,listener:se.bind(t,n,i,r)})}t(document,"html","click",(function(t){e.close()})),t(this._container,ry.INPUT_SELECTOR,"click",(function(e){e.stopPropagation(),e.delegateTarget.focus()})),t(this._container,ry.RESULT_SELECTOR,"mouseover",(function(t){t.stopPropagation(),e._scrollToNode(t.delegateTarget),e._preselect(t.delegateTarget)})),t(this._container,ry.RESULT_SELECTOR,"click",(function(t){t.stopPropagation(),e._select(t.delegateTarget)})),t(this._container,ry.INPUT_SELECTOR,"keydown",(function(e){38===e.keyCode&&e.preventDefault(),40===e.keyCode&&e.preventDefault()})),t(this._container,ry.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))}))},ry.prototype._unbindEvents=function(){this._eventMaps.forEach((function(e){se.unbind(e.el,e.type,e.listener)}))},ry.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=le(ry.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}}},ry.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},ry.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)}},ry.prototype._clearResults=function(){X(this._resultsContainer),this._results=[],this._resetOverlay(),this._eventBus.fire("searchPad.cleared")},ry.prototype._getCurrentResult=function(){return le(ry.RESULT_SELECTED_SELECTOR,this._resultsContainer)},ry.prototype._createResultNode=function(e,t){var n=ce(ry.RESULT_HTML);return e.primaryTokens.length>0&&oy(n,e.primaryTokens,ry.RESULT_PRIMARY_HTML),oy(n,e.secondaryTokens,ry.RESULT_SECONDARY_HTML),H(n,ry.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},ry.prototype.registerProvider=function(e){this._searchProvider=e},ry.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"))},ry.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"))},ry.prototype.toggle=function(){this.isOpen()?this.close():this.open()},ry.prototype.isOpen=function(){return this._open},ry.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&&K(t).remove(ry.RESULT_SELECTED_CLASS);var n=H(e,ry.RESULT_ID_ATTRIBUTE),i=this._results[n].element;K(e).add(ry.RESULT_SELECTED_CLASS),this._resetOverlay(i),this._canvas.scrollToElement(i,{top:400}),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},ry.prototype._select=function(e){var t=H(e,ry.RESULT_ID_ATTRIBUTE),n=this._results[t].element;this.close(),this._resetOverlay(),this._canvas.scrollToElement(n,{top:400}),this._selection.select(n),this._eventBus.fire("searchPad.selected",n)},ry.prototype._resetOverlay=function(e){if(this._overlayId&&this._overlays.remove(this._overlayId),e){var t=function(e){var t=6,n=e.width+2*t,i=e.height+2*t,r=["width: "+n+"px","height: "+i+"px"].join("; ");return{position:{bottom:i-t,right:n-t},show:!0,html:'<div style="'+r+'" class="'+ry.OVERLAY_CLASS+'"></div>'}}(pt(e));this._overlayId=this._overlays.add(e,t)}},ry.CONTAINER_SELECTOR=".djs-search-container",ry.INPUT_SELECTOR=".djs-search-input input",ry.RESULTS_CONTAINER_SELECTOR=".djs-search-results",ry.RESULT_SELECTOR=".djs-search-result",ry.RESULT_SELECTED_CLASS="djs-search-result-selected",ry.RESULT_SELECTED_SELECTOR="."+ry.RESULT_SELECTED_CLASS,ry.RESULT_ID_ATTRIBUTE="data-result-id",ry.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",ry.OVERLAY_CLASS="djs-search-overlay",ry.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>',ry.RESULT_HTML='<div class="djs-search-result"></div>',ry.RESULT_PRIMARY_HTML='<div class="djs-search-result-primary"></div>',ry.RESULT_SECONDARY_HTML='<p class="djs-search-result-secondary"></p>';var ay={__depends__:[$o,No],searchPad:["type",ry]};function sy(e,t,n){this._elementRegistry=e,this._canvas=n,t.registerProvider(this)}function cy(e){return g(e,(function(e){return!!e.matched})).length>0}function py(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}sy.$inject=["elementRegistry","searchPad","canvas"],sy.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:py(Or(t),e),secondaryTokens:py(t.id,e),element:t}})),(function(e){return cy(e.primaryTokens)||cy(e.secondaryTokens)})),(function(e){return Or(e.element)+e.element.id}))};var uy={__depends__:[ay],__init__:["bpmnSearch"],bpmnSearch:["type",sy]};function ly(e){Pr.call(this,e)}return n(ly,Pr),ly.Viewer=Go,ly.NavigatedViewer=ga,ly.prototype.createDiagram=gr((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>')})),ly.prototype._interactionModules=[ia,la,Ra,ya],ly.prototype._modelingModules=[Ba,qa,us,es,oc,lc,dc,Kp,op,Ic,Jp,ou,bu,_u,wu,Mu,Qu,av,mv,jv,Iv,Wu,iy,uy],ly.prototype._modules=[].concat(Go.prototype._modules,ly.prototype._interactionModules,ly.prototype._modelingModules),ly}));
35