was.wm.js

Subversion Repositories:
Compare Path: Rev
With Path: Rev
?path1? @ 9  →  ?path2? @ 10
/trunk/dist/was.wm.js
@@ -6209,7 +6209,7 @@
}
 
// Open a window manager window.
static openWindowManagerWindow(nucleon, file) {
openWindowManagerWindow(nucleon, file) {
// If the nucleon already exists, then do not append the content again.
if($('#' + nucleon).length) {
return;
/trunk/dist/was.wm.min.js
@@ -2,4 +2,4 @@
* http://grimore.org
* Copyright (c) 2018 [object Object]; Licensed GPL-3.0 */
 
!function(t){"use strict";if(t){var e,i,r,n=(r=t.document.createTextNode("")).ownerDocument!==t.document&&"function"==typeof t.wrap&&t.wrap(r)===r?t.wrap(t):t,s=n.document,o=n.DocumentFragment||L,a=n.SVGElement||L,p=n.SVGSVGElement||L,h=n.SVGElementInstance||L,c=n.HTMLElement||n.Element,l=n.PointerEvent||n.MSPointerEvent,d=Math.hypot||function(t,e){return Math.sqrt(t*t+e*e)},u={},g=[],m=[],v=[],f=!1,y={},x={base:{accept:null,actionChecker:null,styleCursor:!0,preventDefault:"auto",origin:{x:0,y:0},deltaSource:"page",allowFrom:null,ignoreFrom:null,_context:s,dropChecker:null},drag:{enabled:!1,manualStart:!0,max:1/0,maxPerElement:1,snap:null,restrict:null,inertia:null,autoScroll:null,axis:"xy"},drop:{enabled:!1,accept:null,overlap:"pointer"},resize:{enabled:!1,manualStart:!1,max:1/0,maxPerElement:1,snap:null,restrict:null,inertia:null,autoScroll:null,square:!1,preserveAspectRatio:!1,axis:"xy",margin:NaN,edges:null,invert:"none"},gesture:{manualStart:!1,enabled:!1,max:1/0,maxPerElement:1,restrict:null},perAction:{manualStart:!1,max:1/0,maxPerElement:1,snap:{enabled:!1,endOnly:!1,range:1/0,targets:null,offsets:null,relativePoints:null},restrict:{enabled:!1,endOnly:!1},autoScroll:{enabled:!1,container:null,margin:60,speed:300},inertia:{enabled:!1,resistance:10,minSpeed:100,endSpeed:10,allowResume:!0,zeroResumeDelta:!0,smoothEndDuration:300}},_holdDuration:600},w={interaction:null,i:null,x:0,y:0,scroll:function(){var t,e,i,r,n=w.interaction.target.options[w.interaction.prepared.name].autoScroll,s=n.container||lt(w.interaction.element),o=(new Date).getTime(),a=(o-w.prevTimeX)/1e3,p=(o-w.prevTimeY)/1e3;n.velocity?(t=n.velocity.x,e=n.velocity.y):t=e=n.speed,r=e*p,((i=t*a)>=1||r>=1)&&(j(s)?s.scrollBy(w.x*i,w.y*r):s&&(s.scrollLeft+=w.x*i,s.scrollTop+=w.y*r),i>=1&&(w.prevTimeX=o),r>=1&&(w.prevTimeY=o)),w.isScrolling&&(X(w.i),w.i=R(w.scroll))},isScrolling:!1,prevTimeX:0,prevTimeY:0,start:function(t){w.isScrolling=!0,X(w.i),w.interaction=t,w.prevTimeX=(new Date).getTime(),w.prevTimeY=(new Date).getTime(),w.i=R(w.scroll)},stop:function(){w.isScrolling=!1,X(w.i)}},E="ontouchstart"in n||n.DocumentTouch&&s instanceof n.DocumentTouch,b=l&&!/Chrome/.test(navigator.userAgent),S=E||b?20:10,z=1,D=0,T=1/0,C=s.all&&!n.atob?{drag:"move",resizex:"e-resize",resizey:"s-resize",resizexy:"se-resize",resizetop:"n-resize",resizeleft:"w-resize",resizebottom:"s-resize",resizeright:"e-resize",resizetopleft:"se-resize",resizebottomright:"se-resize",resizetopright:"ne-resize",resizebottomleft:"ne-resize",gesture:""}:{drag:"move",resizex:"ew-resize",resizey:"ns-resize",resizexy:"nwse-resize",resizetop:"ns-resize",resizeleft:"ew-resize",resizebottom:"ns-resize",resizeright:"ew-resize",resizetopleft:"nwse-resize",resizebottomright:"nwse-resize",resizetopright:"nesw-resize",resizebottomleft:"nesw-resize",gesture:""},M={drag:!0,resize:!0,gesture:!0},A="onmousewheel"in s?"mousewheel":"wheel",k=["dragstart","dragmove","draginertiastart","dragend","dragenter","dragleave","dropactivate","dropdeactivate","dropmove","drop","resizestart","resizemove","resizeinertiastart","resizeend","gesturestart","gesturemove","gestureinertiastart","gestureend","down","move","up","cancel","tap","doubletap","hold"],P={},O="Opera"==navigator.appName&&E&&navigator.userAgent.match("Presto"),_=/iP(hone|od|ad)/.test(navigator.platform)&&/OS 7[^\d]/.test(navigator.appVersion),I="matches"in Element.prototype?"matches":"webkitMatchesSelector"in Element.prototype?"webkitMatchesSelector":"mozMatchesSelector"in Element.prototype?"mozMatchesSelector":"oMatchesSelector"in Element.prototype?"oMatchesSelector":"msMatchesSelector",R=t.requestAnimationFrame,X=t.cancelAnimationFrame,Y=function(){var t="attachEvent"in n&&!("addEventListener"in n),e=t?"attachEvent":"addEventListener",i=t?"detachEvent":"removeEventListener",r=t?"on":"",s=[],o=[],a=[];function p(){this.returnValue=!1}function h(){this.cancelBubble=!0}function c(){this.cancelBubble=!0,this.immediatePropagationStopped=!0}return{add:function(i,n,l,d){var u=Vt(s,i),g=o[u];if(g||(g={events:{},typeCount:0},u=s.push(i)-1,o.push(g),a.push(t?{supplied:[],wrapped:[],useCount:[]}:null)),g.events[n]||(g.events[n]=[],g.typeCount++),!Gt(g.events[n],l)){var m;if(t){var v=a[u],f=Vt(v.supplied,l),y=v.wrapped[f]||function(t){t.immediatePropagationStopped||(t.target=t.srcElement,t.currentTarget=i,t.preventDefault=t.preventDefault||p,t.stopPropagation=t.stopPropagation||h,t.stopImmediatePropagation=t.stopImmediatePropagation||c,/mouse|click/.test(t.type)&&(t.pageX=t.clientX+lt(i).document.documentElement.scrollLeft,t.pageY=t.clientY+lt(i).document.documentElement.scrollTop),l(t))};m=i[e](r+n,y,Boolean(d)),-1===f?(v.supplied.push(l),v.wrapped.push(y),v.useCount.push(1)):v.useCount[f]++}else m=i[e](n,l,d||!1);return g.events[n].push(l),m}},remove:function e(n,p,h,c){var l,d,u,g=Vt(s,n),m=o[g],v=h;if(m&&m.events)if(t&&(u=Vt((d=a[g]).supplied,h),v=d.wrapped[u]),"all"!==p){if(m.events[p]){var f=m.events[p].length;if("all"===h){for(l=0;l<f;l++)e(n,p,m.events[p][l],Boolean(c));return}for(l=0;l<f;l++)if(m.events[p][l]===h){n[i](r+p,v,c||!1),m.events[p].splice(l,1),t&&d&&(d.useCount[u]--,0===d.useCount[u]&&(d.supplied.splice(u,1),d.wrapped.splice(u,1),d.useCount.splice(u,1)));break}m.events[p]&&0===m.events[p].length&&(m.events[p]=null,m.typeCount--)}m.typeCount||(o.splice(g,1),s.splice(g,1),a.splice(g,1))}else for(p in m.events)m.events.hasOwnProperty(p)&&e(n,p,"all")},useAttachEvent:t,_elements:s,_targets:o,_attachedListeners:a}}(),$={webkit:/(Movement[XY]|Radius[XY]|RotationAngle|Force)$/};Ot.prototype={getPageXY:function(t,e){return at(t,e)},getClientXY:function(t,e){return pt(t,e)},setEventXY:function(t,e){return i=t,at(n=(r=e).length>1?mt(r):r[0],u),i.page.x=u.x,i.page.y=u.y,pt(n,u),i.client.x=u.x,i.client.y=u.y,void(i.timeStamp=(new Date).getTime());var i,r,n},pointerOver:function(t,i,r){if(!this.prepared.name&&this.mouse){var n=[],s=[],o=this.element;this.addPointer(t),!this.target||!Tt(this.target,this.element,r)&&Ct(this.target,this.element,r)||(this.target=null,this.element=null,this.matches=[],this.matchElements=[]);var a=m.get(r),p=a&&!Tt(a,r,r)&&Ct(a,r,r)&&Nt(a.getAction(t,i,this,r),a);p&&!Pt(a,r,p)&&(p=null),p?(this.target=a,this.element=r,this.matches=[],this.matchElements=[]):(m.forEachSelector(function(t,e){t&&Dt(t,r)&&!Tt(t,r,r)&&Ct(t,r,r)&&Kt(r,e)&&(n.push(t),s.push(r))}),this.validateSelector(t,i,n,s)?(this.matches=n,this.matchElements=s,this.pointerHover(t,i,this.matches,this.matchElements),Y.add(r,b?e.move:"mousemove",F.pointerHover)):this.target&&(bt(o,r)?(this.pointerHover(t,i,this.matches,this.matchElements),Y.add(this.element,b?e.move:"mousemove",F.pointerHover)):(this.target=null,this.element=null,this.matches=[],this.matchElements=[])))}},pointerHover:function(t,e,i,r,n,s){var o,a=this.target;!this.prepared.name&&this.mouse?(this.setEventXY(this.curCoords,[t]),n?o=this.validateSelector(t,e,n,s):a&&(o=Nt(a.getAction(this.pointers[0],e,this,this.element),this.target)),a&&a.options.styleCursor&&(a._doc.documentElement.style.cursor=o?Yt(o):"")):this.prepared.name&&this.checkAndPreventDefault(e,a,this.element)},pointerOut:function(t,i,r){this.prepared.name||(m.get(r)||Y.remove(r,b?e.move:"mousemove",F.pointerHover),this.target&&this.target.options.styleCursor&&!this.interacting()&&(this.target._doc.documentElement.style.cursor=""))},selectorDown:function(t,e,r,n){var s,o=this,a=Y.useAttachEvent?et({},e):e,p=r,h=this.addPointer(t);if(this.holdTimers[h]=setTimeout(function(){o.pointerHold(Y.useAttachEvent?a:t,a,r,n)},x._holdDuration),this.pointerIsDown=!0,this.inertiaStatus.active&&this.target.selector)for(;H(p);){if(p===this.element&&Nt(this.target.getAction(t,e,this,this.element),this.target).name===this.prepared.name)return X(this.inertiaStatus.i),this.inertiaStatus.active=!1,void this.collectEventTargets(t,e,r,"down");p=zt(p)}if(this.interacting())this.collectEventTargets(t,e,r,"down");else{for(this.setEventXY(this.curCoords,[t]),this.downEvent=e;H(p)&&!s;)this.matches=[],this.matchElements=[],m.forEachSelector(c),s=this.validateSelector(t,e,this.matches,this.matchElements),p=zt(p);if(s)return this.prepared.name=s.name,this.prepared.axis=s.axis,this.prepared.edges=s.edges,this.collectEventTargets(t,e,r,"down"),this.pointerDown(t,e,r,n,s);this.downTimes[h]=(new Date).getTime(),this.downTargets[h]=r,it(this.downPointer,t),rt(this.prevCoords,this.curCoords),this.pointerWasMoved=!1,this.collectEventTargets(t,e,r,"down")}function c(t,e,n){var s=i?n.querySelectorAll(e):void 0;Dt(t,p)&&!Tt(t,p,r)&&Ct(t,p,r)&&Kt(p,e,s)&&(o.matches.push(t),o.matchElements.push(p))}},pointerDown:function(t,e,i,r,n){if(n||this.inertiaStatus.active||!this.pointerWasMoved||!this.prepared.name){this.pointerIsDown=!0,this.downEvent=e;var s,o=this.addPointer(t);if(this.pointerIds.length>1&&this.target._element===this.element){var a=Nt(n||this.target.getAction(t,e,this,this.element),this.target);Pt(this.target,this.element,a)&&(s=a),this.prepared.name=null}else if(!this.prepared.name){var p=m.get(r);p&&!Tt(p,r,i)&&Ct(p,r,i)&&(s=Nt(n||p.getAction(t,e,this,r),p))&&Pt(p,r,s)&&(this.target=p,this.element=r)}var h=this.target,c=h&&h.options;if(!h||!n&&this.prepared.name)this.inertiaStatus.active&&r===this.element&&Nt(h.getAction(t,e,this,this.element),h).name===this.prepared.name&&(X(this.inertiaStatus.i),this.inertiaStatus.active=!1,this.checkAndPreventDefault(e,h,this.element));else{if(s=s||Nt(n||h.getAction(t,e,this,r),h,this.element),this.setEventXY(this.startCoords,this.pointers),!s)return;c.styleCursor&&(h._doc.documentElement.style.cursor=Yt(s)),this.resizeAxes="resize"===s.name?s.axis:null,"gesture"===s&&this.pointerIds.length<2&&(s=null),this.prepared.name=s.name,this.prepared.axis=s.axis,this.prepared.edges=s.edges,this.snapStatus.snappedX=this.snapStatus.snappedY=this.restrictStatus.restrictedX=this.restrictStatus.restrictedY=NaN,this.downTimes[o]=(new Date).getTime(),this.downTargets[o]=i,it(this.downPointer,t),rt(this.prevCoords,this.startCoords),this.pointerWasMoved=!1,this.checkAndPreventDefault(e,h,this.element)}}else this.checkAndPreventDefault(e,this.target,this.element)},setModifications:function(t,e){var i=this.target,r=!0,n=At(i,this.prepared.name)&&(!i.options[this.prepared.name].snap.endOnly||e),s=kt(i,this.prepared.name)&&(!i.options[this.prepared.name].restrict.endOnly||e);return n?this.setSnapping(t):this.snapStatus.locked=!1,s?this.setRestriction(t):this.restrictStatus.restricted=!1,n&&this.snapStatus.locked&&!this.snapStatus.changed?r=s&&this.restrictStatus.restricted&&this.restrictStatus.changed:s&&this.restrictStatus.restricted&&!this.restrictStatus.changed&&(r=!1),r},setStartOffsets:function(t,e,i){var r,n,s=e.getRect(i),o=xt(e,i),a=e.options[this.prepared.name].snap,p=e.options[this.prepared.name].restrict;s?(this.startOffset.left=this.startCoords.page.x-s.left,this.startOffset.top=this.startCoords.page.y-s.top,this.startOffset.right=s.right-this.startCoords.page.x,this.startOffset.bottom=s.bottom-this.startCoords.page.y,r="width"in s?s.width:s.right-s.left,n="height"in s?s.height:s.bottom-s.top):this.startOffset.left=this.startOffset.top=this.startOffset.right=this.startOffset.bottom=0,this.snapOffsets.splice(0);var h=a&&"startCoords"===a.offset?{x:this.startCoords.page.x-o.x,y:this.startCoords.page.y-o.y}:a&&a.offset||{x:0,y:0};if(s&&a&&a.relativePoints&&a.relativePoints.length)for(var c=0;c<a.relativePoints.length;c++)this.snapOffsets.push({x:this.startOffset.left-r*a.relativePoints[c].x+h.x,y:this.startOffset.top-n*a.relativePoints[c].y+h.y});else this.snapOffsets.push(h);s&&p.elementRect?(this.restrictOffset.left=this.startOffset.left-r*p.elementRect.left,this.restrictOffset.top=this.startOffset.top-n*p.elementRect.top,this.restrictOffset.right=this.startOffset.right-r*(1-p.elementRect.right),this.restrictOffset.bottom=this.startOffset.bottom-n*(1-p.elementRect.bottom)):this.restrictOffset.left=this.restrictOffset.top=this.restrictOffset.right=this.restrictOffset.bottom=0},start:function(t,e,i){this.interacting()||!this.pointerIsDown||this.pointerIds.length<("gesture"===t.name?2:1)||(-1===Vt(v,this)&&v.push(this),this.prepared.name||this.setEventXY(this.startCoords,this.pointers),this.prepared.name=t.name,this.prepared.axis=t.axis,this.prepared.edges=t.edges,this.target=e,this.element=i,this.setStartOffsets(t.name,e,i),this.setModifications(this.startCoords.page),this.prevEvent=this[this.prepared.name+"Start"](this.downEvent))},pointerMove:function(t,e,r,n,s){if(this.inertiaStatus.active){var o=this.inertiaStatus.upCoords.page,a=this.inertiaStatus.upCoords.client,p={pageX:o.x+this.inertiaStatus.sx,pageY:o.y+this.inertiaStatus.sy,clientX:a.x+this.inertiaStatus.sx,clientY:a.y+this.inertiaStatus.sy};this.setEventXY(this.curCoords,[p])}else this.recordPointer(t),this.setEventXY(this.curCoords,this.pointers);var h,c,l=this.curCoords.page.x===this.prevCoords.page.x&&this.curCoords.page.y===this.prevCoords.page.y&&this.curCoords.client.x===this.prevCoords.client.x&&this.curCoords.client.y===this.prevCoords.client.y,u=this.mouse?0:Vt(this.pointerIds,ht(t));if(this.pointerIsDown&&!this.pointerWasMoved&&(h=this.curCoords.client.x-this.startCoords.client.x,c=this.curCoords.client.y-this.startCoords.client.y,this.pointerWasMoved=d(h,c)>z),l||this.pointerIsDown&&!this.pointerWasMoved||(this.pointerIsDown&&clearTimeout(this.holdTimers[u]),this.collectEventTargets(t,e,r,"move")),this.pointerIsDown)if(l&&this.pointerWasMoved&&!s)this.checkAndPreventDefault(e,this.target,this.element);else if(nt(this.pointerDelta,this.prevCoords,this.curCoords),this.prepared.name){if(this.pointerWasMoved&&(!this.inertiaStatus.active||t instanceof Rt&&/inertiastart/.test(t.type))){if(!this.interacting()&&(nt(this.pointerDelta,this.prevCoords,this.curCoords),"drag"===this.prepared.name)){var g=Math.abs(h),v=Math.abs(c),f=this.target.options.drag.axis,y=g>v?"x":g<v?"y":"xy";if("xy"!==y&&"xy"!==f&&f!==y){this.prepared.name=null;for(var x=r;H(x);){var w=m.get(x);if(w&&w!==this.target&&!w.options.drag.manualStart&&"drag"===w.getAction(this.downPointer,this.downEvent,this,x).name&&Mt(y,w)){this.prepared.name="drag",this.target=w,this.element=x;break}x=zt(x)}if(!this.prepared.name){var E=this,b=function(t,e,n){var s=i?n.querySelectorAll(e):void 0;if(t!==E.target)return Dt(t,r)&&!t.options.drag.manualStart&&!Tt(t,x,r)&&Ct(t,x,r)&&Kt(x,e,s)&&"drag"===t.getAction(E.downPointer,E.downEvent,E,x).name&&Mt(y,t)&&Pt(t,x,"drag")?t:void 0};for(x=r;H(x);){var S=m.forEachSelector(b);if(S){this.prepared.name="drag",this.target=S,this.element=x;break}x=zt(x)}}}}var D=!!this.prepared.name&&!this.interacting();if(D&&(this.target.options[this.prepared.name].manualStart||!Pt(this.target,this.element,this.prepared)))return void this.stop(e);if(this.prepared.name&&this.target)D&&this.start(this.prepared,this.target,this.element),(this.setModifications(this.curCoords.page,s)||D)&&(this.prevEvent=this[this.prepared.name+"Move"](e)),this.checkAndPreventDefault(e,this.target,this.element)}rt(this.prevCoords,this.curCoords),(this.dragging||this.resizing)&&this.autoScrollMove(t)}},dragStart:function(t){var e=new Rt(this,t,"drag","start",this.element);this.dragging=!0,this.target.fire(e),this.activeDrops.dropzones=[],this.activeDrops.elements=[],this.activeDrops.rects=[],this.dynamicDrop||this.setActiveDrops(this.element);var i=this.getDropEvents(t,e);return i.activate&&this.fireActiveDrops(i.activate),e},dragMove:function(t){var e=this.target,i=new Rt(this,t,"drag","move",this.element),r=this.element,n=this.getDrop(i,t,r);this.dropTarget=n.dropzone,this.dropElement=n.element;var s=this.getDropEvents(t,i);return e.fire(i),s.leave&&this.prevDropTarget.fire(s.leave),s.enter&&this.dropTarget.fire(s.enter),s.move&&this.dropTarget.fire(s.move),this.prevDropTarget=this.dropTarget,this.prevDropElement=this.dropElement,i},resizeStart:function(t){var e=new Rt(this,t,"resize","start",this.element);if(this.prepared.edges){var i=this.target.getRect(this.element);if(this.target.options.resize.square||this.target.options.resize.preserveAspectRatio){var r=et({},this.prepared.edges);r.top=r.top||r.left&&!r.bottom,r.left=r.left||r.top&&!r.right,r.bottom=r.bottom||r.right&&!r.top,r.right=r.right||r.bottom&&!r.left,this.prepared._linkedEdges=r}else this.prepared._linkedEdges=null;this.target.options.resize.preserveAspectRatio&&(this.resizeStartAspectRatio=i.width/i.height),this.resizeRects={start:i,current:et({},i),restricted:et({},i),previous:et({},i),delta:{left:0,right:0,width:0,top:0,bottom:0,height:0}},e.rect=this.resizeRects.restricted,e.deltaRect=this.resizeRects.delta}return this.target.fire(e),this.resizing=!0,e},resizeMove:function(t){var e=new Rt(this,t,"resize","move",this.element),i=this.prepared.edges,r=this.target.options.resize.invert,n="reposition"===r||"negate"===r;if(i){var s,o=e.dx,a=e.dy,p=this.resizeRects.start,h=this.resizeRects.current,c=this.resizeRects.restricted,l=this.resizeRects.delta,d=et(this.resizeRects.previous,c),u=i;if(this.target.options.resize.preserveAspectRatio){var g=this.resizeStartAspectRatio;i=this.prepared._linkedEdges,u.left&&u.bottom||u.right&&u.top?a=-o/g:u.left||u.right?a=o/g:(u.top||u.bottom)&&(o=a*g)}else this.target.options.resize.square&&(i=this.prepared._linkedEdges,u.left&&u.bottom||u.right&&u.top?a=-o:u.left||u.right?a=o:(u.top||u.bottom)&&(o=a));if(i.top&&(h.top+=a),i.bottom&&(h.bottom+=a),i.left&&(h.left+=o),i.right&&(h.right+=o),n){if(et(c,h),"reposition"===r)c.top>c.bottom&&(s=c.top,c.top=c.bottom,c.bottom=s),c.left>c.right&&(s=c.left,c.left=c.right,c.right=s)}else c.top=Math.min(h.top,p.bottom),c.bottom=Math.max(h.bottom,p.top),c.left=Math.min(h.left,p.right),c.right=Math.max(h.right,p.left);for(var m in c.width=c.right-c.left,c.height=c.bottom-c.top,c)l[m]=c[m]-d[m];e.edges=this.prepared.edges,e.rect=c,e.deltaRect=l}return this.target.fire(e),e},gestureStart:function(t){var e=new Rt(this,t,"gesture","start",this.element);return e.ds=0,this.gesture.startDistance=this.gesture.prevDistance=e.distance,this.gesture.startAngle=this.gesture.prevAngle=e.angle,this.gesture.scale=1,this.gesturing=!0,this.target.fire(e),e},gestureMove:function(t){return this.pointerIds.length?((e=new Rt(this,t,"gesture","move",this.element)).ds=e.scale-this.gesture.scale,this.target.fire(e),this.gesture.prevAngle=e.angle,this.gesture.prevDistance=e.distance,e.scale===1/0||null===e.scale||void 0===e.scale||isNaN(e.scale)||(this.gesture.scale=e.scale),e):this.prevEvent;var e},pointerHold:function(t,e,i){this.collectEventTargets(t,e,i,"hold")},pointerUp:function(t,e,i,r){var n=this.mouse?0:Vt(this.pointerIds,ht(t));clearTimeout(this.holdTimers[n]),this.collectEventTargets(t,e,i,"up"),this.collectEventTargets(t,e,i,"tap"),this.pointerEnd(t,e,i,r),this.removePointer(t)},pointerCancel:function(t,e,i,r){var n=this.mouse?0:Vt(this.pointerIds,ht(t));clearTimeout(this.holdTimers[n]),this.collectEventTargets(t,e,i,"cancel"),this.pointerEnd(t,e,i,r),this.removePointer(t)},ie8Dblclick:function(t,e,i){this.prevTap&&e.clientX===this.prevTap.clientX&&e.clientY===this.prevTap.clientY&&i===this.prevTap.target&&(this.downTargets[0]=i,this.downTimes[0]=(new Date).getTime(),this.collectEventTargets(t,e,i,"tap"))},pointerEnd:function(t,e,i,r){var n,s=this.target,o=s&&s.options,a=o&&this.prepared.name&&o[this.prepared.name].inertia,p=this.inertiaStatus;if(this.interacting()){if(p.active&&!p.ending)return;var h,c,l,d=(new Date).getTime(),u=!1,g=At(s,this.prepared.name)&&o[this.prepared.name].snap.endOnly,m=kt(s,this.prepared.name)&&o[this.prepared.name].restrict.endOnly,v=0,f=0;if(h=this.dragging?"x"===o.drag.axis?Math.abs(this.pointerDelta.client.vx):"y"===o.drag.axis?Math.abs(this.pointerDelta.client.vy):this.pointerDelta.client.speed:this.pointerDelta.client.speed,l=(c=a&&a.enabled&&"gesture"!==this.prepared.name&&e!==p.startEvent)&&d-this.curCoords.timeStamp<50&&h>a.minSpeed&&h>a.endSpeed,c&&!l&&(g||m)){var y={};y.snap=y.restrict=y,g&&(this.setSnapping(this.curCoords.page,y),y.locked&&(v+=y.dx,f+=y.dy)),m&&(this.setRestriction(this.curCoords.page,y),y.restricted&&(v+=y.dx,f+=y.dy)),(v||f)&&(u=!0)}if(l||u){if(rt(p.upCoords,this.curCoords),this.pointers[0]=p.startEvent=new Rt(this,e,this.prepared.name,"inertiastart",this.element),p.t0=d,s.fire(p.startEvent),l){p.vx0=this.pointerDelta.client.vx,p.vy0=this.pointerDelta.client.vy,p.v0=h,this.calcInertia(p);var x,w=et({},this.curCoords.page),E=xt(s,this.element);if(w.x=w.x+p.xe-E.x,w.y=w.y+p.ye-E.y,(x={useStatusXY:!0,x:w.x,y:w.y,dx:0,dy:0,snap:null}).snap=x,v=f=0,g){var b=this.setSnapping(this.curCoords.page,x);b.locked&&(v+=b.dx,f+=b.dy)}if(m){var S=this.setRestriction(this.curCoords.page,x);S.restricted&&(v+=S.dx,f+=S.dy)}p.modifiedXe+=v,p.modifiedYe+=f,p.i=R(this.boundInertiaFrame)}else p.smoothEnd=!0,p.xe=v,p.ye=f,p.sx=p.sy=0,p.i=R(this.boundSmoothEndFrame);return void(p.active=!0)}(g||m)&&this.pointerMove(t,e,i,r,!0)}if(this.dragging){n=new Rt(this,e,"drag","end",this.element);var z=this.element,D=this.getDrop(n,e,z);this.dropTarget=D.dropzone,this.dropElement=D.element;var T=this.getDropEvents(e,n);T.leave&&this.prevDropTarget.fire(T.leave),T.enter&&this.dropTarget.fire(T.enter),T.drop&&this.dropTarget.fire(T.drop),T.deactivate&&this.fireActiveDrops(T.deactivate),s.fire(n)}else this.resizing?(n=new Rt(this,e,"resize","end",this.element),s.fire(n)):this.gesturing&&(n=new Rt(this,e,"gesture","end",this.element),s.fire(n));this.stop(e)},collectDrops:function(t){var e,i=[],r=[];for(t=t||this.element,e=0;e<m.length;e++)if(m[e].options.drop.enabled){var n=m[e],s=n.options.drop.accept;if(!(H(s)&&s!==t||Q(s)&&!Kt(t,s)))for(var o=n.selector?n._context.querySelectorAll(n.selector):[n._element],a=0,p=o.length;a<p;a++){var h=o[a];h!==t&&(i.push(n),r.push(h))}}return{dropzones:i,elements:r}},fireActiveDrops:function(t){var e,i,r,n;for(e=0;e<this.activeDrops.dropzones.length;e++)i=this.activeDrops.dropzones[e],(r=this.activeDrops.elements[e])!==n&&(t.target=r,i.fire(t)),n=r},setActiveDrops:function(t){var e=this.collectDrops(t,!0);this.activeDrops.dropzones=e.dropzones,this.activeDrops.elements=e.elements,this.activeDrops.rects=[];for(var i=0;i<this.activeDrops.dropzones.length;i++)this.activeDrops.rects[i]=this.activeDrops.dropzones[i].getRect(this.activeDrops.elements[i])},getDrop:function(t,e,i){var r=[];f&&this.setActiveDrops(i);for(var n=0;n<this.activeDrops.dropzones.length;n++){var s=this.activeDrops.dropzones[n],o=this.activeDrops.elements[n],h=this.activeDrops.rects[n];r.push(s.dropCheck(t,e,this.target,i,o,h)?o:null)}var l=function(t){var e,i,r,n,s,o=t[0],h=o?0:-1,l=[],d=[];for(n=1;n<t.length;n++)if((e=t[n])&&e!==o)if(o){if(e.parentNode!==e.ownerDocument)if(o.parentNode!==e.ownerDocument){if(!l.length)for(i=o;i.parentNode&&i.parentNode!==i.ownerDocument;)l.unshift(i),i=i.parentNode;if(o instanceof c&&e instanceof a&&!(e instanceof p)){if(e===o.parentNode)continue;i=e.ownerSVGElement}else i=e;for(d=[];i.parentNode!==i.ownerDocument;)d.unshift(i),i=i.parentNode;for(s=0;d[s]&&d[s]===l[s];)s++;var u=[d[s-1],d[s],l[s]];for(r=u[0].lastChild;r;){if(r===u[1]){o=e,h=n,l=[];break}if(r===u[2])break;r=r.previousSibling}}else o=e,h=n}else o=e,h=n;return h}(r);return{dropzone:this.activeDrops.dropzones[l]||null,element:this.activeDrops.elements[l]||null}},getDropEvents:function(t,e){var i={enter:null,leave:null,activate:null,deactivate:null,move:null,drop:null};return this.dropElement!==this.prevDropElement&&(this.prevDropTarget&&(i.leave={target:this.prevDropElement,dropzone:this.prevDropTarget,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,timeStamp:e.timeStamp,type:"dragleave"},e.dragLeave=this.prevDropElement,e.prevDropzone=this.prevDropTarget),this.dropTarget&&(i.enter={target:this.dropElement,dropzone:this.dropTarget,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,timeStamp:e.timeStamp,type:"dragenter"},e.dragEnter=this.dropElement,e.dropzone=this.dropTarget)),"dragend"===e.type&&this.dropTarget&&(i.drop={target:this.dropElement,dropzone:this.dropTarget,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,timeStamp:e.timeStamp,type:"drop"},e.dropzone=this.dropTarget),"dragstart"===e.type&&(i.activate={target:null,dropzone:null,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,timeStamp:e.timeStamp,type:"dropactivate"}),"dragend"===e.type&&(i.deactivate={target:null,dropzone:null,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,timeStamp:e.timeStamp,type:"dropdeactivate"}),"dragmove"===e.type&&this.dropTarget&&(i.move={target:this.dropElement,dropzone:this.dropTarget,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,dragmove:e,timeStamp:e.timeStamp,type:"dropmove"},e.dropzone=this.dropTarget),i},currentAction:function(){return(this.dragging?"drag":this.resizing&&"resize")||this.gesturing&&"gesture"||null},interacting:function(){return this.dragging||this.resizing||this.gesturing},clearTargets:function(){this.target=this.element=null,this.dropTarget=this.dropElement=this.prevDropTarget=this.prevDropElement=null},stop:function(t){if(this.interacting()){w.stop(),this.matches=[],this.matchElements=[];var e=this.target;e.options.styleCursor&&(e._doc.documentElement.style.cursor=""),t&&K(t.preventDefault)&&this.checkAndPreventDefault(t,e,this.element),this.dragging&&(this.activeDrops.dropzones=this.activeDrops.elements=this.activeDrops.rects=null)}this.clearTargets(),this.pointerIsDown=this.snapStatus.locked=this.dragging=this.resizing=this.gesturing=!1,this.prepared.name=this.prevEvent=null,this.inertiaStatus.resumeDx=this.inertiaStatus.resumeDy=0;for(var i=0;i<this.pointers.length;i++)-1===Vt(this.pointerIds,ht(this.pointers[i]))&&this.pointers.splice(i,1)},inertiaFrame:function(){var t,e,i,r,n,s,o,a=this.inertiaStatus,p=this.target.options[this.prepared.name].inertia.resistance,h=(new Date).getTime()/1e3-a.t0;if(h<a.te){var c=1-(Math.exp(-p*h)-a.lambda_v0)/a.one_ve_v0;if(a.modifiedXe===a.xe&&a.modifiedYe===a.ye)a.sx=a.xe*c,a.sy=a.ye*c;else{var l=(t=0,e=0,i=a.xe,r=a.ye,n=a.modifiedXe,s=a.modifiedYe,{x:wt(o=c,t,i,n),y:wt(o,e,r,s)});a.sx=l.x,a.sy=l.y}this.pointerMove(a.startEvent,a.startEvent),a.i=R(this.boundInertiaFrame)}else a.ending=!0,a.sx=a.modifiedXe,a.sy=a.modifiedYe,this.pointerMove(a.startEvent,a.startEvent),this.pointerEnd(a.startEvent,a.startEvent),a.active=a.ending=!1},smoothEndFrame:function(){var t=this.inertiaStatus,e=(new Date).getTime()-t.t0,i=this.target.options[this.prepared.name].inertia.smoothEndDuration;e<i?(t.sx=Et(e,0,t.xe,i),t.sy=Et(e,0,t.ye,i),this.pointerMove(t.startEvent,t.startEvent),t.i=R(this.boundSmoothEndFrame)):(t.ending=!0,t.sx=t.xe,t.sy=t.ye,this.pointerMove(t.startEvent,t.startEvent),this.pointerEnd(t.startEvent,t.startEvent),t.smoothEnd=t.active=t.ending=!1)},addPointer:function(t){var e=ht(t),i=this.mouse?0:Vt(this.pointerIds,e);return-1===i&&(i=this.pointerIds.length),this.pointerIds[i]=e,this.pointers[i]=t,i},removePointer:function(t){var e=ht(t),i=this.mouse?0:Vt(this.pointerIds,e);-1!==i&&(this.pointers.splice(i,1),this.pointerIds.splice(i,1),this.downTargets.splice(i,1),this.downTimes.splice(i,1),this.holdTimers.splice(i,1))},recordPointer:function(t){var e=this.mouse?0:Vt(this.pointerIds,ht(t));-1!==e&&(this.pointers[e]=t)},collectEventTargets:function(t,e,r,n){var s=this.mouse?0:Vt(this.pointerIds,ht(t));if("tap"!==n||!this.pointerWasMoved&&this.downTargets[s]&&this.downTargets[s]===r){for(var o=[],a=[],p=r;p;)Ut.isSet(p)&&Ut(p)._iEvents[n]&&(o.push(Ut(p)),a.push(p)),m.forEachSelector(h),p=zt(p);(o.length||"tap"===n)&&this.firePointers(t,e,r,o,a,n)}function h(t,e,s){var h=i?s.querySelectorAll(e):void 0;t._iEvents[n]&&H(p)&&Dt(t,p)&&!Tt(t,p,r)&&Ct(t,p,r)&&Kt(p,e,h)&&(o.push(t),a.push(p))}},firePointers:function(t,e,i,r,n,s){var o,a,p,h=this.mouse?0:Vt(this.pointerIds,ht(t)),c={};for("doubletap"===s?c=t:(it(c,e),e!==t&&it(c,t),c.preventDefault=Xt,c.stopPropagation=Rt.prototype.stopPropagation,c.stopImmediatePropagation=Rt.prototype.stopImmediatePropagation,c.interaction=this,c.timeStamp=(new Date).getTime(),c.originalEvent=e,c.originalPointer=t,c.type=s,c.pointerId=ht(t),c.pointerType=this.mouse?"mouse":b?Q(t.pointerType)?t.pointerType:[,,"touch","pen","mouse"][t.pointerType]:"touch"),"tap"===s&&(c.dt=c.timeStamp-this.downTimes[h],a=c.timeStamp-this.tapTime,p=!!(this.prevTap&&"doubletap"!==this.prevTap.type&&this.prevTap.target===c.target&&a<500),c.double=p,this.tapTime=c.timeStamp),o=0;o<r.length&&(c.currentTarget=n[o],c.interactable=r[o],r[o].fire(c),!(c.immediatePropagationStopped||c.propagationStopped&&n[o+1]!==c.currentTarget));o++);if(p){var l={};et(l,c),l.dt=a,l.type="doubletap",this.collectEventTargets(l,e,i,"doubletap"),this.prevTap=l}else"tap"===s&&(this.prevTap=c)},validateSelector:function(t,e,i,r){for(var n=0,s=i.length;n<s;n++){var o=i[n],a=r[n],p=Nt(o.getAction(t,e,this,a),o);if(p&&Pt(o,a,p))return this.target=o,this.element=a,p}},setSnapping:function(t,e){var i,r,n,s=this.target.options[this.prepared.name].snap,o=[];if((e=e||this.snapStatus).useStatusXY)r={x:e.x,y:e.y};else{var a=xt(this.target,this.element);(r=et({},t)).x-=a.x,r.y-=a.y}e.realX=r.x,e.realY=r.y,r.x=r.x-this.inertiaStatus.resumeDx,r.y=r.y-this.inertiaStatus.resumeDy;for(var p=s.targets?s.targets.length:0,h=0;h<this.snapOffsets.length;h++){var c={x:r.x-this.snapOffsets[h].x,y:r.y-this.snapOffsets[h].y};for(n=0;n<p;n++)(i=K(s.targets[n])?s.targets[n](c.x,c.y,this):s.targets[n])&&o.push({x:J(i.x)?i.x+this.snapOffsets[h].x:c.x,y:J(i.y)?i.y+this.snapOffsets[h].y:c.y,range:J(i.range)?i.range:s.range})}var l,u={target:null,inRange:!1,distance:0,range:0,dx:0,dy:0};for(n=0,p=o.length;n<p;n++){var g=(i=o[n]).range,m=i.x-r.x,v=i.y-r.y,f=d(m,v),y=f<=g;g===1/0&&u.inRange&&u.range!==1/0&&(y=!1),u.target&&!(y?u.inRange&&g!==1/0?f/g<u.distance/u.range:g===1/0&&u.range!==1/0||f<u.distance:!u.inRange&&f<u.distance)||(g===1/0&&(y=!0),u.target=i,u.distance=f,u.range=g,u.inRange=y,u.dx=m,u.dy=v,e.range=g)}return u.target?(l=e.snappedX!==u.target.x||e.snappedY!==u.target.y,e.snappedX=u.target.x,e.snappedY=u.target.y):(l=!0,e.snappedX=NaN,e.snappedY=NaN),e.dx=u.dx,e.dy=u.dy,e.changed=l||u.inRange&&!e.locked,e.locked=u.inRange,e},setRestriction:function(t,e){var i,r,n,s,o=this.target,a=o&&o.options[this.prepared.name].restrict,p=a&&a.restriction;return p?(i=i=(e=e||this.restrictStatus).useStatusXY?{x:e.x,y:e.y}:et({},t),e.snap&&e.snap.locked&&(i.x+=e.snap.dx||0,i.y+=e.snap.dy||0),i.x-=this.inertiaStatus.resumeDx,i.y-=this.inertiaStatus.resumeDy,e.dx=0,e.dy=0,e.restricted=!1,Q(p)&&!(p="parent"===p?zt(this.element):"self"===p?o.getRect(this.element):St(this.element,p))?e:(K(p)&&(p=p(i.x,i.y,this.element)),H(p)&&(p=ut(p)),r=p,p?"x"in p&&"y"in p?(n=Math.max(Math.min(r.x+r.width-this.restrictOffset.right,i.x),r.x+this.restrictOffset.left),s=Math.max(Math.min(r.y+r.height-this.restrictOffset.bottom,i.y),r.y+this.restrictOffset.top)):(n=Math.max(Math.min(r.right-this.restrictOffset.right,i.x),r.left+this.restrictOffset.left),s=Math.max(Math.min(r.bottom-this.restrictOffset.bottom,i.y),r.top+this.restrictOffset.top)):(n=i.x,s=i.y),e.dx=n-i.x,e.dy=s-i.y,e.changed=e.restrictedX!==n||e.restrictedY!==s,e.restricted=!(!e.dx&&!e.dy),e.restrictedX=n,e.restrictedY=s,e)):e},checkAndPreventDefault:function(t,e,i){if(e=e||this.target){var r=e.options,n=r.preventDefault;if("auto"!==n||!i||/^(input|select|textarea)$/i.test(t.target.nodeName))"always"!==n||t.preventDefault();else{if(/down|start/i.test(t.type)&&"drag"===this.prepared.name&&"xy"!==r.drag.axis)return;if(r[this.prepared.name]&&r[this.prepared.name].manualStart&&!this.interacting())return;t.preventDefault()}}},calcInertia:function(t){var e=this.target.options[this.prepared.name].inertia,i=e.resistance,r=-Math.log(e.endSpeed/t.v0)/i;t.x0=this.prevEvent.pageX,t.y0=this.prevEvent.pageY,t.t0=t.startEvent.timeStamp/1e3,t.sx=t.sy=0,t.modifiedXe=t.xe=(t.vx0-r)/i,t.modifiedYe=t.ye=(t.vy0-r)/i,t.te=r,t.lambda_v0=i/t.v0,t.one_ve_v0=1-e.endSpeed/t.v0},autoScrollMove:function(t){if(this.interacting()&&function(t,e){var i=t.options;return/^resize/.test(e)&&(e="resize"),i[e].autoScroll&&i[e].autoScroll.enabled}(this.target,this.prepared.name))if(this.inertiaStatus.active)w.x=w.y=0;else{var e,i,r,n,s=this.target.options[this.prepared.name].autoScroll,o=s.container||lt(this.element);if(j(o))n=t.clientX<w.margin,e=t.clientY<w.margin,i=t.clientX>o.innerWidth-w.margin,r=t.clientY>o.innerHeight-w.margin;else{var a=dt(o);n=t.clientX<a.left+w.margin,e=t.clientY<a.top+w.margin,i=t.clientX>a.right-w.margin,r=t.clientY>a.bottom-w.margin}w.x=i?1:n?-1:0,w.y=r?1:e?-1:0,w.isScrolling||(w.margin=s.margin,w.speed=s.speed,w.start(this))}},_updateEventTargets:function(t,e){this._eventTarget=t,this._curEventTarget=e}},Rt.prototype={preventDefault:L,stopImmediatePropagation:function(){this.immediatePropagationStopped=this.propagationStopped=!0},stopPropagation:function(){this.propagationStopped=!0}};for(var F={},N=["dragStart","dragMove","resizeStart","resizeMove","gestureStart","gestureMove","pointerOver","pointerOut","pointerHover","selectorDown","pointerDown","pointerMove","pointerUp","pointerCancel","pointerEnd","addPointer","removePointer","recordPointer","autoScrollMove"],W=0,q=N.length;W<q;W++){var U=N[W];F[U]=It(U)}m.indexOfElement=function(t,e){e=e||s;for(var i=0;i<this.length;i++){var r=this[i];if(r.selector===t&&r._context===e||!r.selector&&r._element===t)return i}return-1},m.get=function(t,e){return this[this.indexOfElement(t,e&&e.context)]},m.forEachSelector=function(t){for(var e=0;e<this.length;e++){var i=this[e];if(i.selector){var r=t(i,i.selector,i._context,e,this);if(void 0!==r)return r}}},Lt.prototype={setOnEvents:function(t,e){return"drop"===t?(K(e.ondrop)&&(this.ondrop=e.ondrop),K(e.ondropactivate)&&(this.ondropactivate=e.ondropactivate),K(e.ondropdeactivate)&&(this.ondropdeactivate=e.ondropdeactivate),K(e.ondragenter)&&(this.ondragenter=e.ondragenter),K(e.ondragleave)&&(this.ondragleave=e.ondragleave),K(e.ondropmove)&&(this.ondropmove=e.ondropmove)):(t="on"+t,K(e.onstart)&&(this[t+"start"]=e.onstart),K(e.onmove)&&(this[t+"move"]=e.onmove),K(e.onend)&&(this[t+"end"]=e.onend),K(e.oninertiastart)&&(this[t+"inertiastart"]=e.oninertiastart)),this},draggable:function(t){return G(t)?(this.options.drag.enabled=!1!==t.enabled,this.setPerAction("drag",t),this.setOnEvents("drag",t),/^x$|^y$|^xy$/.test(t.axis)?this.options.drag.axis=t.axis:null===t.axis&&delete this.options.drag.axis,this):Z(t)?(this.options.drag.enabled=t,this):this.options.drag},setPerAction:function(t,e){for(var i in e)i in x[t]&&(G(e[i])?(this.options[t][i]=et(this.options[t][i]||{},e[i]),G(x.perAction[i])&&"enabled"in x.perAction[i]&&(this.options[t][i].enabled=!1!==e[i].enabled)):Z(e[i])&&G(x.perAction[i])?this.options[t][i].enabled=e[i]:void 0!==e[i]&&(this.options[t][i]=e[i]))},dropzone:function(t){return G(t)?(this.options.drop.enabled=!1!==t.enabled,this.setOnEvents("drop",t),/^(pointer|center)$/.test(t.overlap)?this.options.drop.overlap=t.overlap:J(t.overlap)&&(this.options.drop.overlap=Math.max(Math.min(1,t.overlap),0)),"accept"in t&&(this.options.drop.accept=t.accept),"checker"in t&&(this.options.drop.checker=t.checker),this):Z(t)?(this.options.drop.enabled=t,this):this.options.drop},dropCheck:function(t,e,i,r,n,s){var o=!1;if(!(s=s||this.getRect(n)))return!!this.options.drop.checker&&this.options.drop.checker(t,e,o,this,n,i,r);var a=this.options.drop.overlap;if("pointer"===a){var p,h,c=at(t),l=xt(i,r);c.x+=l.x,c.y+=l.y,p=c.x>s.left&&c.x<s.right,h=c.y>s.top&&c.y<s.bottom,o=p&&h}var d=i.getRect(r);if("center"===a){var u=d.left+d.width/2,g=d.top+d.height/2;o=u>=s.left&&u<=s.right&&g>=s.top&&g<=s.bottom}J(a)&&(o=Math.max(0,Math.min(s.right,d.right)-Math.max(s.left,d.left))*Math.max(0,Math.min(s.bottom,d.bottom)-Math.max(s.top,d.top))/(d.width*d.height)>=a);return this.options.drop.checker&&(o=this.options.drop.checker(t,e,o,this,n,i,r)),o},dropChecker:function(t){return K(t)?(this.options.drop.checker=t,this):null===t?(delete this.options.getRect,this):this.options.drop.checker},accept:function(t){return H(t)?(this.options.drop.accept=t,this):tt(t)?(this.options.drop.accept=t,this):null===t?(delete this.options.drop.accept,this):this.options.drop.accept},resizable:function(t){return G(t)?(this.options.resize.enabled=!1!==t.enabled,this.setPerAction("resize",t),this.setOnEvents("resize",t),/^x$|^y$|^xy$/.test(t.axis)?this.options.resize.axis=t.axis:null===t.axis&&(this.options.resize.axis=x.resize.axis),Z(t.preserveAspectRatio)?this.options.resize.preserveAspectRatio=t.preserveAspectRatio:Z(t.square)&&(this.options.resize.square=t.square),this):Z(t)?(this.options.resize.enabled=t,this):this.options.resize},squareResize:function(t){return Z(t)?(this.options.resize.square=t,this):null===t?(delete this.options.resize.square,this):this.options.resize.square},gesturable:function(t){return G(t)?(this.options.gesture.enabled=!1!==t.enabled,this.setPerAction("gesture",t),this.setOnEvents("gesture",t),this):Z(t)?(this.options.gesture.enabled=t,this):this.options.gesture},autoScroll:function(t){return G(t)?t=et({actions:["drag","resize"]},t):Z(t)&&(t={actions:["drag","resize"],enabled:t}),this.setOptions("autoScroll",t)},snap:function(t){var e=this.setOptions("snap",t);return e===this?this:e.drag},setOptions:function(t,e){var i,r=e&&V(e.actions)?e.actions:["drag"];if(G(e)||Z(e)){for(i=0;i<r.length;i++){var n=/resize/.test(r[i])?"resize":r[i];if(G(this.options[n])){var s=this.options[n][t];G(e)?(et(s,e),s.enabled=!1!==e.enabled,"snap"===t&&("grid"===s.mode?s.targets=[Ut.createSnapGrid(et({offset:s.gridOffset||{x:0,y:0}},s.grid||{}))]:"anchor"===s.mode?s.targets=s.anchors:"path"===s.mode&&(s.targets=s.paths),"elementOrigin"in e&&(s.relativePoints=[e.elementOrigin]))):Z(e)&&(s.enabled=e)}}return this}var o={},a=["drag","resize","gesture"];for(i=0;i<a.length;i++)t in x[a[i]]&&(o[a[i]]=this.options[a[i]][t]);return o},inertia:function(t){var e=this.setOptions("inertia",t);return e===this?this:e.drag},getAction:function(t,e,i,r){var n=this.defaultActionChecker(t,i,r);return this.options.actionChecker?this.options.actionChecker(t,e,n,this,r,i):n},defaultActionChecker:Ft,actionChecker:function(t){return K(t)?(this.options.actionChecker=t,this):null===t?(delete this.options.actionChecker,this):this.options.actionChecker},getRect:function(t){return t=t||this._element,this.selector&&!H(t)&&(t=this._context.querySelector(this.selector)),ut(t)},rectChecker:function(t){return K(t)?(this.getRect=t,this):null===t?(delete this.options.getRect,this):this.getRect},styleCursor:function(t){return Z(t)?(this.options.styleCursor=t,this):null===t?(delete this.options.styleCursor,this):this.options.styleCursor},preventDefault:function(t){return/^(always|never|auto)$/.test(t)?(this.options.preventDefault=t,this):Z(t)?(this.options.preventDefault=t?"always":"never",this):this.options.preventDefault},origin:function(t){return tt(t)?(this.options.origin=t,this):G(t)?(this.options.origin=t,this):this.options.origin},deltaSource:function(t){return"page"===t||"client"===t?(this.options.deltaSource=t,this):this.options.deltaSource},restrict:function(t){if(!G(t))return this.setOptions("restrict",t);for(var e,i=["drag","resize","gesture"],r=0;r<i.length;r++){var n=i[r];if(n in t){var s=et({actions:[n],restriction:t[n]},t);e=this.setOptions("restrict",s)}}return e},context:function(){return this._context},_context:s,ignoreFrom:function(t){return tt(t)?(this.options.ignoreFrom=t,this):H(t)?(this.options.ignoreFrom=t,this):this.options.ignoreFrom},allowFrom:function(t){return tt(t)?(this.options.allowFrom=t,this):H(t)?(this.options.allowFrom=t,this):this.options.allowFrom},element:function(){return this._element},fire:function(t){if(!t||!t.type||!Gt(k,t.type))return this;var e,i,r,n="on"+t.type;if(t.type in this._iEvents)for(i=0,r=(e=this._iEvents[t.type]).length;i<r&&!t.immediatePropagationStopped;i++)e[i].name,e[i](t);if(K(this[n])&&(this[n].name,this[n](t)),t.type in P&&(e=P[t.type]))for(i=0,r=e.length;i<r&&!t.immediatePropagationStopped;i++)e[i].name,e[i](t);return this},on:function(t,e,i){var r;if(Q(t)&&-1!==t.search(" ")&&(t=t.trim().split(/ +/)),V(t)){for(r=0;r<t.length;r++)this.on(t[r],e,i);return this}if(G(t)){for(var n in t)this.on(n,t[n],e);return this}if("wheel"===t&&(t=A),i=!!i,Gt(k,t))t in this._iEvents?this._iEvents[t].push(e):this._iEvents[t]=[e];else if(this.selector){if(!y[t])for(y[t]={selectors:[],contexts:[],listeners:[]},r=0;r<g.length;r++)Y.add(g[r],t,Wt),Y.add(g[r],t,qt,!0);var s,o=y[t];for(s=o.selectors.length-1;s>=0&&(o.selectors[s]!==this.selector||o.contexts[s]!==this._context);s--);-1===s&&(s=o.selectors.length,o.selectors.push(this.selector),o.contexts.push(this._context),o.listeners.push([])),o.listeners[s].push([e,i])}else Y.add(this._element,t,e,i);return this},off:function(t,e,i){var r;if(Q(t)&&-1!==t.search(" ")&&(t=t.trim().split(/ +/)),V(t)){for(r=0;r<t.length;r++)this.off(t[r],e,i);return this}if(G(t)){for(var n in t)this.off(n,t[n],e);return this}var s,o=-1;if(i=!!i,"wheel"===t&&(t=A),Gt(k,t))(s=this._iEvents[t])&&-1!==(o=Vt(s,e))&&this._iEvents[t].splice(o,1);else if(this.selector){var a=y[t],p=!1;if(!a)return this;for(o=a.selectors.length-1;o>=0;o--)if(a.selectors[o]===this.selector&&a.contexts[o]===this._context){var h=a.listeners[o];for(r=h.length-1;r>=0;r--){var c=h[r][0],l=h[r][1];if(c===e&&l===i){h.splice(r,1),h.length||(a.selectors.splice(o,1),a.contexts.splice(o,1),a.listeners.splice(o,1),Y.remove(this._context,t,Wt),Y.remove(this._context,t,qt,!0),a.selectors.length||(y[t]=null)),p=!0;break}}if(p)break}}else Y.remove(this._element,t,e,i);return this},set:function(t){G(t)||(t={}),this.options=et({},x.base);var e,i=["drag","drop","resize","gesture"],r=["draggable","dropzone","resizable","gesturable"],n=et(et({},x.perAction),t[s]||{});for(e=0;e<i.length;e++){var s=i[e];this.options[s]=et({},x[s]),this.setPerAction(s,n),this[r[e]](t[s])}var o=["accept","actionChecker","allowFrom","deltaSource","dropChecker","ignoreFrom","origin","preventDefault","rectChecker","styleCursor"];for(e=0,q=o.length;e<q;e++){var a=o[e];this.options[a]=x.base[a],a in t&&this[a](t[a])}return this},unset:function(){if(Y.remove(this._element,"all"),Q(this.selector))for(var t in y)for(var e=y[t],i=0;i<e.selectors.length;i++){e.selectors[i]===this.selector&&e.contexts[i]===this._context&&(e.selectors.splice(i,1),e.contexts.splice(i,1),e.listeners.splice(i,1),e.selectors.length||(y[t]=null)),Y.remove(this._context,t,Wt),Y.remove(this._context,t,qt,!0);break}else Y.remove(this,"all"),this.options.styleCursor&&(this._element.style.cursor="");return this.dropzone(!1),m.splice(Vt(m,this),1),Ut}},Lt.prototype.snap=Ht(Lt.prototype.snap,"Interactable#snap is deprecated. See the new documentation for snapping at http://interactjs.io/docs/snapping"),Lt.prototype.restrict=Ht(Lt.prototype.restrict,"Interactable#restrict is deprecated. See the new documentation for resticting at http://interactjs.io/docs/restriction"),Lt.prototype.inertia=Ht(Lt.prototype.inertia,"Interactable#inertia is deprecated. See the new documentation for inertia at http://interactjs.io/docs/inertia"),Lt.prototype.autoScroll=Ht(Lt.prototype.autoScroll,"Interactable#autoScroll is deprecated. See the new documentation for autoScroll at http://interactjs.io/docs/#autoscroll"),Lt.prototype.squareResize=Ht(Lt.prototype.squareResize,"Interactable#squareResize is deprecated. See http://interactjs.io/docs/#resize-square"),Lt.prototype.accept=Ht(Lt.prototype.accept,"Interactable#accept is deprecated. use Interactable#dropzone({ accept: target }) instead"),Lt.prototype.dropChecker=Ht(Lt.prototype.dropChecker,"Interactable#dropChecker is deprecated. use Interactable#dropzone({ dropChecker: checkerFunction }) instead"),Lt.prototype.context=Ht(Lt.prototype.context,"Interactable#context as a method is deprecated. It will soon be a DOM Node instead"),Ut.isSet=function(t,e){return-1!==m.indexOfElement(t,e&&e.context)},Ut.on=function(t,e,i){if(Q(t)&&-1!==t.search(" ")&&(t=t.trim().split(/ +/)),V(t)){for(var r=0;r<t.length;r++)Ut.on(t[r],e,i);return Ut}if(G(t)){for(var n in t)Ut.on(n,t[n],e);return Ut}return Gt(k,t)?P[t]?P[t].push(e):P[t]=[e]:Y.add(s,t,e,i),Ut},Ut.off=function(t,e,i){if(Q(t)&&-1!==t.search(" ")&&(t=t.trim().split(/ +/)),V(t)){for(var r=0;r<t.length;r++)Ut.off(t[r],e,i);return Ut}if(G(t)){for(var n in t)Ut.off(n,t[n],e);return Ut}var o;Gt(k,t)?t in P&&-1!==(o=Vt(P[t],e))&&P[t].splice(o,1):Y.remove(s,t,e,i);return Ut},Ut.enableDragging=Ht(function(t){return null!=t?(M.drag=t,Ut):M.drag},"interact.enableDragging is deprecated and will soon be removed."),Ut.enableResizing=Ht(function(t){return null!=t?(M.resize=t,Ut):M.resize},"interact.enableResizing is deprecated and will soon be removed."),Ut.enableGesturing=Ht(function(t){return null!=t?(M.gesture=t,Ut):M.gesture},"interact.enableGesturing is deprecated and will soon be removed."),Ut.eventTypes=k,Ut.debug=function(){var t=v[0]||new Ot;return{interactions:v,target:t.target,dragging:t.dragging,resizing:t.resizing,gesturing:t.gesturing,prepared:t.prepared,matches:t.matches,matchElements:t.matchElements,prevCoords:t.prevCoords,startCoords:t.startCoords,pointerIds:t.pointerIds,pointers:t.pointers,addPointer:F.addPointer,removePointer:F.removePointer,recordPointer:F.recordPointer,snap:t.snapStatus,restrict:t.restrictStatus,inertia:t.inertiaStatus,downTime:t.downTimes[0],downEvent:t.downEvent,downPointer:t.downPointer,prevEvent:t.prevEvent,Interactable:Lt,interactables:m,pointerIsDown:t.pointerIsDown,defaultOptions:x,defaultActionChecker:Ft,actionCursors:C,dragMove:F.dragMove,resizeMove:F.resizeMove,gestureMove:F.gestureMove,pointerUp:F.pointerUp,pointerDown:F.pointerDown,pointerMove:F.pointerMove,pointerHover:F.pointerHover,eventTypes:k,events:Y,globalEvents:P,delegatedEvents:y,prefixedPropREs:$}},Ut.getPointerAverage=mt,Ut.getTouchBBox=vt,Ut.getTouchDistance=ft,Ut.getTouchAngle=yt,Ut.getElementRect=ut,Ut.getElementClientRect=dt,Ut.matchesSelector=Kt,Ut.closest=St,Ut.margin=Ht(function(t){return J(t)?(S=t,Ut):S},"interact.margin is deprecated. Use interact(target).resizable({ margin: number }); instead."),Ut.supportsTouch=function(){return E},Ut.supportsPointerEvent=function(){return b},Ut.stop=function(t){for(var e=v.length-1;e>=0;e--)v[e].stop(t);return Ut},Ut.dynamicDrop=function(t){return Z(t)?(f=t,Ut):f},Ut.pointerMoveTolerance=function(t){return J(t)?(z=t,this):z},Ut.maxInteractions=function(t){return J(t)?(T=t,this):T},Ut.createSnapGrid=function(t){return function(e,i){var r=0,n=0;G(t.offset)&&(r=t.offset.x,n=t.offset.y);var s=Math.round((e-r)/t.x),o=Math.round((i-n)/t.y);return{x:s*t.x+r,y:o*t.y+n,range:t.range}}},Bt(s),I in Element.prototype&&K(Element.prototype[I])||(i=function(t,e,i){for(var r=0,n=(i=i||t.parentNode.querySelectorAll(e)).length;r<n;r++)if(i[r]===t)return!0;return!1}),function(){for(var e=0,i=["ms","moz","webkit","o"],r=0;r<i.length&&!t.requestAnimationFrame;++r)R=t[i[r]+"RequestAnimationFrame"],X=t[i[r]+"CancelAnimationFrame"]||t[i[r]+"CancelRequestAnimationFrame"];R||(R=function(t){var i=(new Date).getTime(),r=Math.max(0,16-(i-e)),n=setTimeout(function(){t(i+r)},r);return e=i+r,n}),X||(X=function(t){clearTimeout(t)})}(),"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=Ut),exports.interact=Ut):"function"==typeof define&&define.amd?define("interact",function(){return Ut}):t.interact=Ut}function L(){}function H(t){if(!t||"object"!=typeof t)return!1;var e=lt(t)||n;return/object|function/.test(typeof e.Element)?t instanceof e.Element:1===t.nodeType&&"string"==typeof t.nodeName}function j(t){return t===n||!(!t||!t.Window)&&t instanceof t.Window}function B(t){return!!t&&t instanceof o}function V(t){return G(t)&&void 0!==typeof t.length&&K(t.splice)}function G(t){return!!t&&"object"==typeof t}function K(t){return"function"==typeof t}function J(t){return"number"==typeof t}function Z(t){return"boolean"==typeof t}function Q(t){return"string"==typeof t}function tt(t){return!!Q(t)&&(s.querySelector(t),!0)}function et(t,e){for(var i in e)t[i]=e[i];return t}function it(t,e){for(var i in e){var r=!1;for(var n in $)if(0===i.indexOf(n)&&$[n].test(i)){r=!0;break}r||(t[i]=e[i])}return t}function rt(t,e){t.page=t.page||{},t.page.x=e.page.x,t.page.y=e.page.y,t.client=t.client||{},t.client.x=e.client.x,t.client.y=e.client.y,t.timeStamp=e.timeStamp}function nt(t,e,i){t.page.x=i.page.x-e.page.x,t.page.y=i.page.y-e.page.y,t.client.x=i.client.x-e.client.x,t.client.y=i.client.y-e.client.y,t.timeStamp=(new Date).getTime()-e.timeStamp;var r=Math.max(t.timeStamp/1e3,.001);t.page.speed=d(t.page.x,t.page.y)/r,t.page.vx=t.page.x/r,t.page.vy=t.page.y/r,t.client.speed=d(t.client.x,t.page.y)/r,t.client.vx=t.client.x/r,t.client.vy=t.client.y/r}function st(t){return t instanceof n.Event||E&&n.Touch&&t instanceof n.Touch}function ot(t,e,i){return t=t||"page",(i=i||{}).x=e[t+"X"],i.y=e[t+"Y"],i}function at(t,e){return e=e||{},O&&st(t)?(ot("screen",t,e),e.x+=n.scrollX,e.y+=n.scrollY):ot("page",t,e),e}function pt(t,e){return e=e||{},O&&st(t)?ot("screen",t,e):ot("client",t,e),e}function ht(t){return J(t.pointerId)?t.pointerId:t.identifier}function ct(t){return t instanceof h?t.correspondingUseElement:t}function lt(t){if(j(t))return t;var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||n}function dt(t){var e=t instanceof a?t.getBoundingClientRect():t.getClientRects()[0];return e&&{left:e.left,right:e.right,top:e.top,bottom:e.bottom,width:e.width||e.right-e.left,height:e.height||e.bottom-e.top}}function ut(t){var e,i=dt(t);if(!_&&i){var r={x:(e=(e=lt(t))||n).scrollX||e.document.documentElement.scrollLeft,y:e.scrollY||e.document.documentElement.scrollTop};i.left+=r.x,i.right+=r.x,i.top+=r.y,i.bottom+=r.y}return i}function gt(t){var e=[];return V(t)?(e[0]=t[0],e[1]=t[1]):"touchend"===t.type?1===t.touches.length?(e[0]=t.touches[0],e[1]=t.changedTouches[0]):0===t.touches.length&&(e[0]=t.changedTouches[0],e[1]=t.changedTouches[1]):(e[0]=t.touches[0],e[1]=t.touches[1]),e}function mt(t){for(var e,i={pageX:0,pageY:0,clientX:0,clientY:0,screenX:0,screenY:0},r=0;r<t.length;r++)for(e in i)i[e]+=t[r][e];for(e in i)i[e]/=t.length;return i}function vt(t){if(t.length||t.touches&&t.touches.length>1){var e=gt(t),i=Math.min(e[0].pageX,e[1].pageX),r=Math.min(e[0].pageY,e[1].pageY);return{x:i,y:r,left:i,top:r,width:Math.max(e[0].pageX,e[1].pageX)-i,height:Math.max(e[0].pageY,e[1].pageY)-r}}}function ft(t,e){var i=(e=e||x.deltaSource)+"X",r=e+"Y",n=gt(t),s=n[0][i]-n[1][i],o=n[0][r]-n[1][r];return d(s,o)}function yt(t,e,i){var r=(i=i||x.deltaSource)+"X",n=i+"Y",s=gt(t),o=s[0][r]-s[1][r],a=s[0][n]-s[1][n],p=180*Math.atan(a/o)/Math.PI;if(J(e)){var h=(p-e)%360;h>315?p-=360+p/360|0:h>135?p-=180+p/360|0:h<-315?p+=360+p/360|0:h<-135&&(p+=180+p/360|0)}return p}function xt(t,e){var i=t?t.options.origin:x.origin;return"parent"===i?i=zt(e):"self"===i?i=t.getRect(e):tt(i)&&(i=St(e,i)||{x:0,y:0}),K(i)&&(i=i(t&&e)),H(i)&&(i=ut(i)),i.x="x"in i?i.x:i.left,i.y="y"in i?i.y:i.top,i}function wt(t,e,i,r){var n=1-t;return n*n*e+2*n*t*i+t*t*r}function Et(t,e,i,r){return-i*(t/=r)*(t-2)+e}function bt(t,e){for(;e;){if(e===t)return!0;e=e.parentNode}return!1}function St(t,e){for(var i=zt(t);H(i);){if(Kt(i,e))return i;i=zt(i)}return null}function zt(t){var e=t.parentNode;if(B(e)){for(;(e=e.host)&&B(e););return e}return e}function Dt(t,e){return t._context===e.ownerDocument||bt(t._context,e)}function Tt(t,e,i){var r=t.options.ignoreFrom;return!(!r||!H(i))&&(Q(r)?Jt(i,r,e):!!H(r)&&bt(r,i))}function Ct(t,e,i){var r=t.options.allowFrom;return!r||!!H(i)&&(Q(r)?Jt(i,r,e):!!H(r)&&bt(r,i))}function Mt(t,e){if(!e)return!1;var i=e.options.drag.axis;return"xy"===t||"xy"===i||i===t}function At(t,e){var i=t.options;return/^resize/.test(e)&&(e="resize"),i[e].snap&&i[e].snap.enabled}function kt(t,e){var i=t.options;return/^resize/.test(e)&&(e="resize"),i[e].restrict&&i[e].restrict.enabled}function Pt(t,e,i){for(var r=t.options,n=r[i.name].max,s=r[i.name].maxPerElement,o=0,a=0,p=0,h=0,c=v.length;h<c;h++){var l=v[h],d=l.prepared.name;if(l.interacting()){if(++o>=T)return!1;if(l.target===t){if((a+=d===i.name|0)>=n)return!1;if(l.element===e&&(p++,d!==i.name||p>=s))return!1}}}return T>0}function Ot(){if(this.target=null,this.element=null,this.dropTarget=null,this.dropElement=null,this.prevDropTarget=null,this.prevDropElement=null,this.prepared={name:null,axis:null,edges:null},this.matches=[],this.matchElements=[],this.inertiaStatus={active:!1,smoothEnd:!1,ending:!1,startEvent:null,upCoords:{},xe:0,ye:0,sx:0,sy:0,t0:0,vx0:0,vys:0,duration:0,resumeDx:0,resumeDy:0,lambda_v0:0,one_ve_v0:0,i:null},K(Function.prototype.bind))this.boundInertiaFrame=this.inertiaFrame.bind(this),this.boundSmoothEndFrame=this.smoothEndFrame.bind(this);else{var t=this;this.boundInertiaFrame=function(){return t.inertiaFrame()},this.boundSmoothEndFrame=function(){return t.smoothEndFrame()}}this.activeDrops={dropzones:[],elements:[],rects:[]},this.pointers=[],this.pointerIds=[],this.downTargets=[],this.downTimes=[],this.holdTimers=[],this.prevCoords={page:{x:0,y:0},client:{x:0,y:0},timeStamp:0},this.curCoords={page:{x:0,y:0},client:{x:0,y:0},timeStamp:0},this.startCoords={page:{x:0,y:0},client:{x:0,y:0},timeStamp:0},this.pointerDelta={page:{x:0,y:0,vx:0,vy:0,speed:0},client:{x:0,y:0,vx:0,vy:0,speed:0},timeStamp:0},this.downEvent=null,this.downPointer={},this._eventTarget=null,this._curEventTarget=null,this.prevEvent=null,this.tapTime=0,this.prevTap=null,this.startOffset={left:0,right:0,top:0,bottom:0},this.restrictOffset={left:0,right:0,top:0,bottom:0},this.snapOffsets=[],this.gesture={start:{x:0,y:0},startDistance:0,prevDistance:0,distance:0,scale:1,startAngle:0,prevAngle:0},this.snapStatus={x:0,y:0,dx:0,dy:0,realX:0,realY:0,snappedX:0,snappedY:0,targets:[],locked:!1,changed:!1},this.restrictStatus={dx:0,dy:0,restrictedX:0,restrictedY:0,snap:null,restricted:!1,changed:!1},this.restrictStatus.snap=this.snapStatus,this.pointerIsDown=!1,this.pointerWasMoved=!1,this.gesturing=!1,this.dragging=!1,this.resizing=!1,this.resizeAxes="xy",this.mouse=!1,v.push(this)}function _t(t,e,i){var r,n=0,s=v.length,o=/mouse/i.test(t.pointerType||e)||4===t.pointerType,a=ht(t);if(/down|start/i.test(e))for(n=0;n<s;n++){var p=i;if((r=v[n]).inertiaStatus.active&&r.target.options[r.prepared.name].inertia.allowResume&&r.mouse===o)for(;p;){if(p===r.element)return r;p=zt(p)}}if(o||!E&&!b){for(n=0;n<s;n++)if(v[n].mouse&&!v[n].inertiaStatus.active)return v[n];for(n=0;n<s;n++)if(v[n].mouse&&(!/down/.test(e)||!v[n].inertiaStatus.active))return r;return(r=new Ot).mouse=!0,r}for(n=0;n<s;n++)if(Gt(v[n].pointerIds,a))return v[n];if(/up|end|out/i.test(e))return null;for(n=0;n<s;n++)if((!(r=v[n]).prepared.name||r.target.options.gesture.enabled)&&!r.interacting()&&(o||!r.mouse))return r;return new Ot}function It(t){return function(e){var i,r,n=ct(e.path?e.path[0]:e.target),s=ct(e.currentTarget);if(E&&/touch/.test(e.type))for(D=(new Date).getTime(),r=0;r<e.changedTouches.length;r++){var o=e.changedTouches[r];(i=_t(o,e.type,n))&&(i._updateEventTargets(n,s),i[t](o,e,n,s))}else{if(!b&&/mouse/.test(e.type)){for(r=0;r<v.length;r++)if(!v[r].mouse&&v[r].pointerIsDown)return;if((new Date).getTime()-D<500)return}if(!(i=_t(e,e.type,n)))return;i._updateEventTargets(n,s),i[t](e,e,n,s)}}}function Rt(t,e,i,r,n,s){var o,a,p=t.target,h=t.snapStatus,c=t.restrictStatus,l=t.pointers,u=(p&&p.options||x).deltaSource,g=u+"X",m=u+"Y",v=p?p.options:x,f=xt(p,n),y="start"===r,w="end"===r,E=y?t.startCoords:t.curCoords;n=n||t.element,a=et({},E.page),o=et({},E.client),a.x-=f.x,a.y-=f.y,o.x-=f.x,o.y-=f.y;var b=v[i].snap&&v[i].snap.relativePoints;!At(p,i)||y&&b&&b.length||(this.snap={range:h.range,locked:h.locked,x:h.snappedX,y:h.snappedY,realX:h.realX,realY:h.realY,dx:h.dx,dy:h.dy},h.locked&&(a.x+=h.dx,a.y+=h.dy,o.x+=h.dx,o.y+=h.dy)),!kt(p,i)||y&&v[i].restrict.elementRect||!c.restricted||(a.x+=c.dx,a.y+=c.dy,o.x+=c.dx,o.y+=c.dy,this.restrict={dx:c.dx,dy:c.dy}),this.pageX=a.x,this.pageY=a.y,this.clientX=o.x,this.clientY=o.y,this.x0=t.startCoords.page.x-f.x,this.y0=t.startCoords.page.y-f.y,this.clientX0=t.startCoords.client.x-f.x,this.clientY0=t.startCoords.client.y-f.y,this.ctrlKey=e.ctrlKey,this.altKey=e.altKey,this.shiftKey=e.shiftKey,this.metaKey=e.metaKey,this.button=e.button,this.buttons=e.buttons,this.target=n,this.t0=t.downTimes[0],this.type=i+(r||""),this.interaction=t,this.interactable=p;var S=t.inertiaStatus;if(S.active&&(this.detail="inertia"),s&&(this.relatedTarget=s),w?"client"===u?(this.dx=o.x-t.startCoords.client.x,this.dy=o.y-t.startCoords.client.y):(this.dx=a.x-t.startCoords.page.x,this.dy=a.y-t.startCoords.page.y):y?(this.dx=0,this.dy=0):"inertiastart"===r?(this.dx=t.prevEvent.dx,this.dy=t.prevEvent.dy):"client"===u?(this.dx=o.x-t.prevEvent.clientX,this.dy=o.y-t.prevEvent.clientY):(this.dx=a.x-t.prevEvent.pageX,this.dy=a.y-t.prevEvent.pageY),t.prevEvent&&"inertia"===t.prevEvent.detail&&!S.active&&v[i].inertia&&v[i].inertia.zeroResumeDelta&&(S.resumeDx+=this.dx,S.resumeDy+=this.dy,this.dx=this.dy=0),"resize"===i&&t.resizeAxes?v.resize.square?("y"===t.resizeAxes?this.dx=this.dy:this.dy=this.dx,this.axes="xy"):(this.axes=t.resizeAxes,"x"===t.resizeAxes?this.dy=0:"y"===t.resizeAxes&&(this.dx=0)):"gesture"===i&&(this.touches=[l[0],l[1]],y?(this.distance=ft(l,u),this.box=vt(l),this.scale=1,this.ds=0,this.angle=yt(l,void 0,u),this.da=0):w||e instanceof Rt?(this.distance=t.prevEvent.distance,this.box=t.prevEvent.box,this.scale=t.prevEvent.scale,this.ds=this.scale-1,this.angle=t.prevEvent.angle,this.da=this.angle-t.gesture.startAngle):(this.distance=ft(l,u),this.box=vt(l),this.scale=this.distance/t.gesture.startDistance,this.angle=yt(l,t.gesture.prevAngle,u),this.ds=this.scale-t.gesture.prevScale,this.da=this.angle-t.gesture.prevAngle)),y)this.timeStamp=t.downTimes[0],this.dt=0,this.duration=0,this.speed=0,this.velocityX=0,this.velocityY=0;else if("inertiastart"===r)this.timeStamp=t.prevEvent.timeStamp,this.dt=t.prevEvent.dt,this.duration=t.prevEvent.duration,this.speed=t.prevEvent.speed,this.velocityX=t.prevEvent.velocityX,this.velocityY=t.prevEvent.velocityY;else if(this.timeStamp=(new Date).getTime(),this.dt=this.timeStamp-t.prevEvent.timeStamp,this.duration=this.timeStamp-t.downTimes[0],e instanceof Rt){var z=this[g]-t.prevEvent[g],D=this[m]-t.prevEvent[m],T=this.dt/1e3;this.speed=d(z,D)/T,this.velocityX=z/T,this.velocityY=D/T}else this.speed=t.pointerDelta[u].speed,this.velocityX=t.pointerDelta[u].vx,this.velocityY=t.pointerDelta[u].vy;if((w||"inertiastart"===r)&&t.prevEvent.speed>600&&this.timeStamp-t.prevEvent.timeStamp<150){var C=180*Math.atan2(t.prevEvent.velocityY,t.prevEvent.velocityX)/Math.PI;C<0&&(C+=360);var M=112.5<=C&&C<247.5,A=202.5<=C&&C<337.5,k=!M&&(292.5<=C||C<67.5),P=!A&&22.5<=C&&C<157.5;this.swipe={up:A,down:P,left:M,right:k,angle:C,speed:t.prevEvent.speed,velocity:{x:t.prevEvent.velocityX,y:t.prevEvent.velocityY}}}}function Xt(){this.originalEvent.preventDefault()}function Yt(t){var e="";if("drag"===t.name&&(e=C.drag),"resize"===t.name)if(t.axis)e=C[t.name+t.axis];else if(t.edges){for(var i="resize",r=["top","bottom","left","right"],n=0;n<4;n++)t.edges[r[n]]&&(i+=r[n]);e=C[i]}return e}function $t(t,e,i,r,n,s,o){if(!e)return!1;if(!0===e){var a=J(s.width)?s.width:s.right-s.left,p=J(s.height)?s.height:s.bottom-s.top;if(a<0&&("left"===t?t="right":"right"===t&&(t="left")),p<0&&("top"===t?t="bottom":"bottom"===t&&(t="top")),"left"===t)return i.x<(a>=0?s.left:s.right)+o;if("top"===t)return i.y<(p>=0?s.top:s.bottom)+o;if("right"===t)return i.x>(a>=0?s.right:s.left)-o;if("bottom"===t)return i.y>(p>=0?s.bottom:s.top)-o}return!!H(r)&&(H(e)?e===r:Jt(r,e,n))}function Ft(t,e,i){var r,n=this.getRect(i),s=!1,o=null,a=null,p=et({},e.curCoords.page),h=this.options;if(!n)return null;if(M.resize&&h.resize.enabled){var c=h.resize;if(r={left:!1,right:!1,top:!1,bottom:!1},G(c.edges)){for(var l in r)r[l]=$t(l,c.edges[l],p,e._eventTarget,i,n,c.margin||S);r.left=r.left&&!r.right,r.top=r.top&&!r.bottom,s=r.left||r.right||r.top||r.bottom}else{var d="y"!==h.resize.axis&&p.x>n.right-S,u="x"!==h.resize.axis&&p.y>n.bottom-S;s=d||u,a=(d?"x":"")+(u?"y":"")}}return o=s?"resize":M.drag&&h.drag.enabled?"drag":null,M.gesture&&e.pointerIds.length>=2&&!e.dragging&&!e.resizing&&(o="gesture"),o?{name:o,axis:a,edges:r}:null}function Nt(t,e){if(!G(t))return null;var i=t.name,r=e.options;return("resize"===i&&r.resize.enabled||"drag"===i&&r.drag.enabled||"gesture"===i&&r.gesture.enabled)&&M[i]?("resize"!==i&&"resizeyx"!==i||(i="resizexy"),t):null}function Wt(t,e){var i={},r=y[t.type],n=ct(t.path?t.path[0]:t.target),s=n;for(var o in e=!!e,t)i[o]=t[o];for(i.originalEvent=t,i.preventDefault=Xt;H(s);){for(var a=0;a<r.selectors.length;a++){var p=r.selectors[a],h=r.contexts[a];if(Kt(s,p)&&bt(h,n)&&bt(h,s)){var c=r.listeners[a];i.currentTarget=s;for(var l=0;l<c.length;l++)c[l][1]===e&&c[l][0](i)}}s=zt(s)}}function qt(t){return Wt.call(this,t,!0)}function Ut(t,e){return m.get(t,e)||new Lt(t,e)}function Lt(t,i){var r;if(this._element=t,this._iEvents=this._iEvents||{},tt(t)){this.selector=t;var s=i&&i.context;r=s?lt(s):n,s&&(r.Node?s instanceof r.Node:H(s)||s===r.document)&&(this._context=s)}else r=lt(t),H(t)&&(b?(Y.add(this._element,e.down,F.pointerDown),Y.add(this._element,e.move,F.pointerHover)):(Y.add(this._element,"mousedown",F.pointerDown),Y.add(this._element,"mousemove",F.pointerHover),Y.add(this._element,"touchstart",F.pointerDown),Y.add(this._element,"touchmove",F.pointerHover)));this._doc=r.document,Gt(g,this._doc)||Bt(this._doc),m.push(this),this.set(i)}function Ht(t,e){var i=!1;return function(){return i||(n.console.warn(e),i=!0),t.apply(this,arguments)}}function jt(t){for(var e=0;e<v.length;e++)v[e].pointerEnd(t,t)}function Bt(t){if(!Gt(g,t)){var i=t.defaultView||t.parentWindow;for(var r in y)Y.add(t,r,Wt),Y.add(t,r,qt,!0);b?(e=l===i.MSPointerEvent?{up:"MSPointerUp",down:"MSPointerDown",over:"mouseover",out:"mouseout",move:"MSPointerMove",cancel:"MSPointerCancel"}:{up:"pointerup",down:"pointerdown",over:"pointerover",out:"pointerout",move:"pointermove",cancel:"pointercancel"},Y.add(t,e.down,F.selectorDown),Y.add(t,e.move,F.pointerMove),Y.add(t,e.over,F.pointerOver),Y.add(t,e.out,F.pointerOut),Y.add(t,e.up,F.pointerUp),Y.add(t,e.cancel,F.pointerCancel),Y.add(t,e.move,F.autoScrollMove)):(Y.add(t,"mousedown",F.selectorDown),Y.add(t,"mousemove",F.pointerMove),Y.add(t,"mouseup",F.pointerUp),Y.add(t,"mouseover",F.pointerOver),Y.add(t,"mouseout",F.pointerOut),Y.add(t,"touchstart",F.selectorDown),Y.add(t,"touchmove",F.pointerMove),Y.add(t,"touchend",F.pointerUp),Y.add(t,"touchcancel",F.pointerCancel),Y.add(t,"mousemove",F.autoScrollMove),Y.add(t,"touchmove",F.autoScrollMove)),Y.add(i,"blur",jt);try{if(i.frameElement){var n=i.frameElement.ownerDocument,s=n.defaultView;Y.add(n,"mouseup",F.pointerEnd),Y.add(n,"touchend",F.pointerEnd),Y.add(n,"touchcancel",F.pointerEnd),Y.add(n,"pointerup",F.pointerEnd),Y.add(n,"MSPointerUp",F.pointerEnd),Y.add(s,"blur",jt)}}catch(t){Ut.windowParentError=t}Y.add(t,"dragstart",function(t){for(var e=0;e<v.length;e++){var i=v[e];if(i.element&&(i.element===t.target||bt(i.element,t.target)))return void i.checkAndPreventDefault(t,i.target,i.element)}}),Y.useAttachEvent&&(Y.add(t,"selectstart",function(t){var e=v[0];e.currentAction()&&e.checkAndPreventDefault(t)}),Y.add(t,"dblclick",It("ie8Dblclick"))),g.push(t)}}function Vt(t,e){for(var i=0,r=t.length;i<r;i++)if(t[i]===e)return i;return-1}function Gt(t,e){return-1!==Vt(t,e)}function Kt(e,r,s){return i?i(e,r,s):(n!==t&&(r=r.replace(/\/deep\//g," ")),e[I](r))}function Jt(t,e,i){for(;H(t);){if(Kt(t,e))return!0;if((t=zt(t))===i)return Kt(t,e)}return!1}}("undefined"==typeof window?void 0:window),function(t){var e=!1;if("function"==typeof define&&define.amd&&(define(t),e=!0),"object"==typeof exports&&(module.exports=t(),e=!0),!e){var i=window.Cookies,r=window.Cookies=t();r.noConflict=function(){return window.Cookies=i,r}}}(function(){function t(){for(var t=0,e={};t<arguments.length;t++){var i=arguments[t];for(var r in i)e[r]=i[r]}return e}return function e(i){function r(e,n,s){var o;if("undefined"!=typeof document){if(arguments.length>1){if("number"==typeof(s=t({path:"/"},r.defaults,s)).expires){var a=new Date;a.setMilliseconds(a.getMilliseconds()+864e5*s.expires),s.expires=a}s.expires=s.expires?s.expires.toUTCString():"";try{o=JSON.stringify(n),/^[\{\[]/.test(o)&&(n=o)}catch(t){}n=i.write?i.write(n,e):encodeURIComponent(String(n)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),e=(e=(e=encodeURIComponent(String(e))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape);var p="";for(var h in s)s[h]&&(p+="; "+h,!0!==s[h]&&(p+="="+s[h]));return document.cookie=e+"="+n+p}e||(o={});for(var c=document.cookie?document.cookie.split("; "):[],l=/(%[0-9A-Z]{2})+/g,d=0;d<c.length;d++){var u=c[d].split("="),g=u.slice(1).join("=");this.json||'"'!==g.charAt(0)||(g=g.slice(1,-1));try{var m=u[0].replace(l,decodeURIComponent);if(g=i.read?i.read(g,m):i(g,m)||g.replace(l,decodeURIComponent),this.json)try{g=JSON.parse(g)}catch(t){}if(e===m){o=g;break}e||(o[m]=g)}catch(t){}}return o}}return r.set=r,r.get=function(t){return r.call(r,t)},r.getJSON=function(){return r.apply({json:!0},[].slice.call(arguments))},r.defaults={},r.remove=function(e,i){r(e,"",t(i,{expires:-1}))},r.withConverter=e,r}(function(){})});class wasWM{loadWindowManagerIcons(t){var e=this;e.icons=[],$.get(t,function(i){var r=0,n={},s=Cookies.get("window-manager-icons");s&&(n=JSON.parse(s)),$.each(i,function(i,s){/\.html$/.test(s)&&$.get(t+"/"+s,function(i){if("icon"===(i=$(i).get(0)).getAttribute("data-type")){var o=i.getAttribute("data-target");if(e.icons.push(o),i.addEventListener("dblclick",()=>{e.openWindowManagerWindow(o,t+"/"+s)}),void 0!==n[o]){var a=n[o].x,p=n[o].y;return i.style.webkitTransform=i.style.transform="translate("+a+"px, "+p+"px)",i.setAttribute("data-x",a),i.setAttribute("data-y",p),void $("#window-manager-desktop").append(i)}i.style.webkitTransform=i.style.transform="translate("+r+"px, 0px)",i.setAttribute("data-x",r),i.setAttribute("data-y",0),$("#window-manager-desktop").append(i),r+=64}})})})}static openWindowManagerWindow(t,e){if(!$("#"+t).length){var i=$("#"+t+"-window-manager-icon-image").attr("src");$("#"+t+"-window-manager-icon-image").attr("src","/img/loader.gif"),$("#"+t+"-window-manager-icon").prop("disabled",!0),$.get(e,function(e){e=$(e).get().filter(e=>"window"===$(e).attr("data-type")&&$(e).attr("id")===t).pop();var i=[];$(e).find("script").each(function(){var t=$(this).attr("src");void 0!==t&&(i[t]=$(this))}),$(document).find("script").each(function(){var t=$(this).attr("src");void 0!==i[t]&&i[t].remove()});var r=Cookies.get("window-manager-windows");if(r){var n=JSON.parse(r);if(void 0!==n[t]){var s=n[t].x,o=n[t].y,a=$(e).find(".window-manager-window").get(0);a.style.webkitTransform=a.style.transform="translate("+s+"px, "+o+"px)",a.setAttribute("data-x",s),a.setAttribute("data-y",o)}}$(e).hide().appendTo("#window-manager-desktop").fadeIn(750)}).done(function(e){$("#"+t+"-window-manager-icon-image").attr("src",i),$("#"+t+"-window-manager-icon").prop("disabled",!1)})}}static getTopWindowIndex(){return Math.max.apply(null,$.map($(".window-manager-window"),function(t,e){if("static"!==$(t).css("position"))return parseInt($(t).css("z-index"))||1}))}static dragMoveListener(t){var e,i,r=t.target,n=(parseFloat(r.getAttribute("data-x"))||0)+t.dx,s=(parseFloat(r.getAttribute("data-y"))||0)+t.dy;r.style.webkitTransform=r.style.transform="translate("+n+"px, "+s+"px)",r.setAttribute("data-x",n),r.setAttribute("data-y",s),r.classList.contains("window-manager-window")&&(e={},(i=Cookies.get("window-manager-windows"))&&(e=JSON.parse(i)),e[$(t.target).data("target")]={x:n,y:s},Cookies.set("window-manager-windows",e,{path:""})),r.classList.contains("window-manager-icon")&&(e={},(i=Cookies.get("window-manager-icons"))&&(e=JSON.parse(i)),e[$(t.target).data("target")]={x:n,y:s},Cookies.set("window-manager-icons",e,{path:""}))}constructor(t){this.icons=[],interact(".window-manager-window").draggable({inertia:!0,restrict:{restriction:$("#window-manager-desktop").get(0),endOnly:!0,elementRect:{top:0,left:0,bottom:1,right:1}},autoScroll:!0,onmove:wasWM.dragMoveListener,onend:function(t){t.target.style.opacity=1},onstart:function(t){t.target.style.zIndex=wasWM.getTopWindowIndex()+1,t.target.style.opacity=.5}}).allowFrom(".panel-heading"),interact(".window-manager-icon").draggable({inertia:!1,restrict:{restriction:$("#window-manager-desktop").get(0),endOnly:!0,elementRect:{top:0,left:0,bottom:1,right:1}},snap:{targets:[],range:1/0,relativePoints:[{x:0,y:0}]},autoScroll:!0,onmove:wasWM.dragMoveListener,onend:function(t){t.target.style.opacity=1},onstart:function(t){t.target.style.opacity=.5}}),$(document).on("click",".window-manager-close-button",function(t){var e=$("#"+$(this).data("target"));e.fadeOut(750,function(){e.remove()})}),$(document).on("click",".window-manager-window",function(t){$(t.target).closest(".window-manager-window").css("z-index",wasWM.getTopWindowIndex()+1)}),window.dragMoveListener=wasWM.dragMoveListener,this.loadWindowManagerIcons(t)}}wasWM.prototype.icons=[];
!function(t){"use strict";if(t){var e,i,r,n=(r=t.document.createTextNode("")).ownerDocument!==t.document&&"function"==typeof t.wrap&&t.wrap(r)===r?t.wrap(t):t,s=n.document,o=n.DocumentFragment||L,a=n.SVGElement||L,p=n.SVGSVGElement||L,h=n.SVGElementInstance||L,c=n.HTMLElement||n.Element,l=n.PointerEvent||n.MSPointerEvent,d=Math.hypot||function(t,e){return Math.sqrt(t*t+e*e)},u={},g=[],m=[],v=[],f=!1,y={},x={base:{accept:null,actionChecker:null,styleCursor:!0,preventDefault:"auto",origin:{x:0,y:0},deltaSource:"page",allowFrom:null,ignoreFrom:null,_context:s,dropChecker:null},drag:{enabled:!1,manualStart:!0,max:1/0,maxPerElement:1,snap:null,restrict:null,inertia:null,autoScroll:null,axis:"xy"},drop:{enabled:!1,accept:null,overlap:"pointer"},resize:{enabled:!1,manualStart:!1,max:1/0,maxPerElement:1,snap:null,restrict:null,inertia:null,autoScroll:null,square:!1,preserveAspectRatio:!1,axis:"xy",margin:NaN,edges:null,invert:"none"},gesture:{manualStart:!1,enabled:!1,max:1/0,maxPerElement:1,restrict:null},perAction:{manualStart:!1,max:1/0,maxPerElement:1,snap:{enabled:!1,endOnly:!1,range:1/0,targets:null,offsets:null,relativePoints:null},restrict:{enabled:!1,endOnly:!1},autoScroll:{enabled:!1,container:null,margin:60,speed:300},inertia:{enabled:!1,resistance:10,minSpeed:100,endSpeed:10,allowResume:!0,zeroResumeDelta:!0,smoothEndDuration:300}},_holdDuration:600},w={interaction:null,i:null,x:0,y:0,scroll:function(){var t,e,i,r,n=w.interaction.target.options[w.interaction.prepared.name].autoScroll,s=n.container||lt(w.interaction.element),o=(new Date).getTime(),a=(o-w.prevTimeX)/1e3,p=(o-w.prevTimeY)/1e3;n.velocity?(t=n.velocity.x,e=n.velocity.y):t=e=n.speed,r=e*p,((i=t*a)>=1||r>=1)&&(j(s)?s.scrollBy(w.x*i,w.y*r):s&&(s.scrollLeft+=w.x*i,s.scrollTop+=w.y*r),i>=1&&(w.prevTimeX=o),r>=1&&(w.prevTimeY=o)),w.isScrolling&&(X(w.i),w.i=R(w.scroll))},isScrolling:!1,prevTimeX:0,prevTimeY:0,start:function(t){w.isScrolling=!0,X(w.i),w.interaction=t,w.prevTimeX=(new Date).getTime(),w.prevTimeY=(new Date).getTime(),w.i=R(w.scroll)},stop:function(){w.isScrolling=!1,X(w.i)}},E="ontouchstart"in n||n.DocumentTouch&&s instanceof n.DocumentTouch,b=l&&!/Chrome/.test(navigator.userAgent),S=E||b?20:10,z=1,D=0,T=1/0,C=s.all&&!n.atob?{drag:"move",resizex:"e-resize",resizey:"s-resize",resizexy:"se-resize",resizetop:"n-resize",resizeleft:"w-resize",resizebottom:"s-resize",resizeright:"e-resize",resizetopleft:"se-resize",resizebottomright:"se-resize",resizetopright:"ne-resize",resizebottomleft:"ne-resize",gesture:""}:{drag:"move",resizex:"ew-resize",resizey:"ns-resize",resizexy:"nwse-resize",resizetop:"ns-resize",resizeleft:"ew-resize",resizebottom:"ns-resize",resizeright:"ew-resize",resizetopleft:"nwse-resize",resizebottomright:"nwse-resize",resizetopright:"nesw-resize",resizebottomleft:"nesw-resize",gesture:""},M={drag:!0,resize:!0,gesture:!0},A="onmousewheel"in s?"mousewheel":"wheel",k=["dragstart","dragmove","draginertiastart","dragend","dragenter","dragleave","dropactivate","dropdeactivate","dropmove","drop","resizestart","resizemove","resizeinertiastart","resizeend","gesturestart","gesturemove","gestureinertiastart","gestureend","down","move","up","cancel","tap","doubletap","hold"],P={},O="Opera"==navigator.appName&&E&&navigator.userAgent.match("Presto"),_=/iP(hone|od|ad)/.test(navigator.platform)&&/OS 7[^\d]/.test(navigator.appVersion),I="matches"in Element.prototype?"matches":"webkitMatchesSelector"in Element.prototype?"webkitMatchesSelector":"mozMatchesSelector"in Element.prototype?"mozMatchesSelector":"oMatchesSelector"in Element.prototype?"oMatchesSelector":"msMatchesSelector",R=t.requestAnimationFrame,X=t.cancelAnimationFrame,Y=function(){var t="attachEvent"in n&&!("addEventListener"in n),e=t?"attachEvent":"addEventListener",i=t?"detachEvent":"removeEventListener",r=t?"on":"",s=[],o=[],a=[];function p(){this.returnValue=!1}function h(){this.cancelBubble=!0}function c(){this.cancelBubble=!0,this.immediatePropagationStopped=!0}return{add:function(i,n,l,d){var u=Vt(s,i),g=o[u];if(g||(g={events:{},typeCount:0},u=s.push(i)-1,o.push(g),a.push(t?{supplied:[],wrapped:[],useCount:[]}:null)),g.events[n]||(g.events[n]=[],g.typeCount++),!Gt(g.events[n],l)){var m;if(t){var v=a[u],f=Vt(v.supplied,l),y=v.wrapped[f]||function(t){t.immediatePropagationStopped||(t.target=t.srcElement,t.currentTarget=i,t.preventDefault=t.preventDefault||p,t.stopPropagation=t.stopPropagation||h,t.stopImmediatePropagation=t.stopImmediatePropagation||c,/mouse|click/.test(t.type)&&(t.pageX=t.clientX+lt(i).document.documentElement.scrollLeft,t.pageY=t.clientY+lt(i).document.documentElement.scrollTop),l(t))};m=i[e](r+n,y,Boolean(d)),-1===f?(v.supplied.push(l),v.wrapped.push(y),v.useCount.push(1)):v.useCount[f]++}else m=i[e](n,l,d||!1);return g.events[n].push(l),m}},remove:function e(n,p,h,c){var l,d,u,g=Vt(s,n),m=o[g],v=h;if(m&&m.events)if(t&&(u=Vt((d=a[g]).supplied,h),v=d.wrapped[u]),"all"!==p){if(m.events[p]){var f=m.events[p].length;if("all"===h){for(l=0;l<f;l++)e(n,p,m.events[p][l],Boolean(c));return}for(l=0;l<f;l++)if(m.events[p][l]===h){n[i](r+p,v,c||!1),m.events[p].splice(l,1),t&&d&&(d.useCount[u]--,0===d.useCount[u]&&(d.supplied.splice(u,1),d.wrapped.splice(u,1),d.useCount.splice(u,1)));break}m.events[p]&&0===m.events[p].length&&(m.events[p]=null,m.typeCount--)}m.typeCount||(o.splice(g,1),s.splice(g,1),a.splice(g,1))}else for(p in m.events)m.events.hasOwnProperty(p)&&e(n,p,"all")},useAttachEvent:t,_elements:s,_targets:o,_attachedListeners:a}}(),$={webkit:/(Movement[XY]|Radius[XY]|RotationAngle|Force)$/};Ot.prototype={getPageXY:function(t,e){return at(t,e)},getClientXY:function(t,e){return pt(t,e)},setEventXY:function(t,e){return i=t,at(n=(r=e).length>1?mt(r):r[0],u),i.page.x=u.x,i.page.y=u.y,pt(n,u),i.client.x=u.x,i.client.y=u.y,void(i.timeStamp=(new Date).getTime());var i,r,n},pointerOver:function(t,i,r){if(!this.prepared.name&&this.mouse){var n=[],s=[],o=this.element;this.addPointer(t),!this.target||!Tt(this.target,this.element,r)&&Ct(this.target,this.element,r)||(this.target=null,this.element=null,this.matches=[],this.matchElements=[]);var a=m.get(r),p=a&&!Tt(a,r,r)&&Ct(a,r,r)&&Nt(a.getAction(t,i,this,r),a);p&&!Pt(a,r,p)&&(p=null),p?(this.target=a,this.element=r,this.matches=[],this.matchElements=[]):(m.forEachSelector(function(t,e){t&&Dt(t,r)&&!Tt(t,r,r)&&Ct(t,r,r)&&Kt(r,e)&&(n.push(t),s.push(r))}),this.validateSelector(t,i,n,s)?(this.matches=n,this.matchElements=s,this.pointerHover(t,i,this.matches,this.matchElements),Y.add(r,b?e.move:"mousemove",F.pointerHover)):this.target&&(bt(o,r)?(this.pointerHover(t,i,this.matches,this.matchElements),Y.add(this.element,b?e.move:"mousemove",F.pointerHover)):(this.target=null,this.element=null,this.matches=[],this.matchElements=[])))}},pointerHover:function(t,e,i,r,n,s){var o,a=this.target;!this.prepared.name&&this.mouse?(this.setEventXY(this.curCoords,[t]),n?o=this.validateSelector(t,e,n,s):a&&(o=Nt(a.getAction(this.pointers[0],e,this,this.element),this.target)),a&&a.options.styleCursor&&(a._doc.documentElement.style.cursor=o?Yt(o):"")):this.prepared.name&&this.checkAndPreventDefault(e,a,this.element)},pointerOut:function(t,i,r){this.prepared.name||(m.get(r)||Y.remove(r,b?e.move:"mousemove",F.pointerHover),this.target&&this.target.options.styleCursor&&!this.interacting()&&(this.target._doc.documentElement.style.cursor=""))},selectorDown:function(t,e,r,n){var s,o=this,a=Y.useAttachEvent?et({},e):e,p=r,h=this.addPointer(t);if(this.holdTimers[h]=setTimeout(function(){o.pointerHold(Y.useAttachEvent?a:t,a,r,n)},x._holdDuration),this.pointerIsDown=!0,this.inertiaStatus.active&&this.target.selector)for(;H(p);){if(p===this.element&&Nt(this.target.getAction(t,e,this,this.element),this.target).name===this.prepared.name)return X(this.inertiaStatus.i),this.inertiaStatus.active=!1,void this.collectEventTargets(t,e,r,"down");p=zt(p)}if(this.interacting())this.collectEventTargets(t,e,r,"down");else{for(this.setEventXY(this.curCoords,[t]),this.downEvent=e;H(p)&&!s;)this.matches=[],this.matchElements=[],m.forEachSelector(c),s=this.validateSelector(t,e,this.matches,this.matchElements),p=zt(p);if(s)return this.prepared.name=s.name,this.prepared.axis=s.axis,this.prepared.edges=s.edges,this.collectEventTargets(t,e,r,"down"),this.pointerDown(t,e,r,n,s);this.downTimes[h]=(new Date).getTime(),this.downTargets[h]=r,it(this.downPointer,t),rt(this.prevCoords,this.curCoords),this.pointerWasMoved=!1,this.collectEventTargets(t,e,r,"down")}function c(t,e,n){var s=i?n.querySelectorAll(e):void 0;Dt(t,p)&&!Tt(t,p,r)&&Ct(t,p,r)&&Kt(p,e,s)&&(o.matches.push(t),o.matchElements.push(p))}},pointerDown:function(t,e,i,r,n){if(n||this.inertiaStatus.active||!this.pointerWasMoved||!this.prepared.name){this.pointerIsDown=!0,this.downEvent=e;var s,o=this.addPointer(t);if(this.pointerIds.length>1&&this.target._element===this.element){var a=Nt(n||this.target.getAction(t,e,this,this.element),this.target);Pt(this.target,this.element,a)&&(s=a),this.prepared.name=null}else if(!this.prepared.name){var p=m.get(r);p&&!Tt(p,r,i)&&Ct(p,r,i)&&(s=Nt(n||p.getAction(t,e,this,r),p))&&Pt(p,r,s)&&(this.target=p,this.element=r)}var h=this.target,c=h&&h.options;if(!h||!n&&this.prepared.name)this.inertiaStatus.active&&r===this.element&&Nt(h.getAction(t,e,this,this.element),h).name===this.prepared.name&&(X(this.inertiaStatus.i),this.inertiaStatus.active=!1,this.checkAndPreventDefault(e,h,this.element));else{if(s=s||Nt(n||h.getAction(t,e,this,r),h,this.element),this.setEventXY(this.startCoords,this.pointers),!s)return;c.styleCursor&&(h._doc.documentElement.style.cursor=Yt(s)),this.resizeAxes="resize"===s.name?s.axis:null,"gesture"===s&&this.pointerIds.length<2&&(s=null),this.prepared.name=s.name,this.prepared.axis=s.axis,this.prepared.edges=s.edges,this.snapStatus.snappedX=this.snapStatus.snappedY=this.restrictStatus.restrictedX=this.restrictStatus.restrictedY=NaN,this.downTimes[o]=(new Date).getTime(),this.downTargets[o]=i,it(this.downPointer,t),rt(this.prevCoords,this.startCoords),this.pointerWasMoved=!1,this.checkAndPreventDefault(e,h,this.element)}}else this.checkAndPreventDefault(e,this.target,this.element)},setModifications:function(t,e){var i=this.target,r=!0,n=At(i,this.prepared.name)&&(!i.options[this.prepared.name].snap.endOnly||e),s=kt(i,this.prepared.name)&&(!i.options[this.prepared.name].restrict.endOnly||e);return n?this.setSnapping(t):this.snapStatus.locked=!1,s?this.setRestriction(t):this.restrictStatus.restricted=!1,n&&this.snapStatus.locked&&!this.snapStatus.changed?r=s&&this.restrictStatus.restricted&&this.restrictStatus.changed:s&&this.restrictStatus.restricted&&!this.restrictStatus.changed&&(r=!1),r},setStartOffsets:function(t,e,i){var r,n,s=e.getRect(i),o=xt(e,i),a=e.options[this.prepared.name].snap,p=e.options[this.prepared.name].restrict;s?(this.startOffset.left=this.startCoords.page.x-s.left,this.startOffset.top=this.startCoords.page.y-s.top,this.startOffset.right=s.right-this.startCoords.page.x,this.startOffset.bottom=s.bottom-this.startCoords.page.y,r="width"in s?s.width:s.right-s.left,n="height"in s?s.height:s.bottom-s.top):this.startOffset.left=this.startOffset.top=this.startOffset.right=this.startOffset.bottom=0,this.snapOffsets.splice(0);var h=a&&"startCoords"===a.offset?{x:this.startCoords.page.x-o.x,y:this.startCoords.page.y-o.y}:a&&a.offset||{x:0,y:0};if(s&&a&&a.relativePoints&&a.relativePoints.length)for(var c=0;c<a.relativePoints.length;c++)this.snapOffsets.push({x:this.startOffset.left-r*a.relativePoints[c].x+h.x,y:this.startOffset.top-n*a.relativePoints[c].y+h.y});else this.snapOffsets.push(h);s&&p.elementRect?(this.restrictOffset.left=this.startOffset.left-r*p.elementRect.left,this.restrictOffset.top=this.startOffset.top-n*p.elementRect.top,this.restrictOffset.right=this.startOffset.right-r*(1-p.elementRect.right),this.restrictOffset.bottom=this.startOffset.bottom-n*(1-p.elementRect.bottom)):this.restrictOffset.left=this.restrictOffset.top=this.restrictOffset.right=this.restrictOffset.bottom=0},start:function(t,e,i){this.interacting()||!this.pointerIsDown||this.pointerIds.length<("gesture"===t.name?2:1)||(-1===Vt(v,this)&&v.push(this),this.prepared.name||this.setEventXY(this.startCoords,this.pointers),this.prepared.name=t.name,this.prepared.axis=t.axis,this.prepared.edges=t.edges,this.target=e,this.element=i,this.setStartOffsets(t.name,e,i),this.setModifications(this.startCoords.page),this.prevEvent=this[this.prepared.name+"Start"](this.downEvent))},pointerMove:function(t,e,r,n,s){if(this.inertiaStatus.active){var o=this.inertiaStatus.upCoords.page,a=this.inertiaStatus.upCoords.client,p={pageX:o.x+this.inertiaStatus.sx,pageY:o.y+this.inertiaStatus.sy,clientX:a.x+this.inertiaStatus.sx,clientY:a.y+this.inertiaStatus.sy};this.setEventXY(this.curCoords,[p])}else this.recordPointer(t),this.setEventXY(this.curCoords,this.pointers);var h,c,l=this.curCoords.page.x===this.prevCoords.page.x&&this.curCoords.page.y===this.prevCoords.page.y&&this.curCoords.client.x===this.prevCoords.client.x&&this.curCoords.client.y===this.prevCoords.client.y,u=this.mouse?0:Vt(this.pointerIds,ht(t));if(this.pointerIsDown&&!this.pointerWasMoved&&(h=this.curCoords.client.x-this.startCoords.client.x,c=this.curCoords.client.y-this.startCoords.client.y,this.pointerWasMoved=d(h,c)>z),l||this.pointerIsDown&&!this.pointerWasMoved||(this.pointerIsDown&&clearTimeout(this.holdTimers[u]),this.collectEventTargets(t,e,r,"move")),this.pointerIsDown)if(l&&this.pointerWasMoved&&!s)this.checkAndPreventDefault(e,this.target,this.element);else if(nt(this.pointerDelta,this.prevCoords,this.curCoords),this.prepared.name){if(this.pointerWasMoved&&(!this.inertiaStatus.active||t instanceof Rt&&/inertiastart/.test(t.type))){if(!this.interacting()&&(nt(this.pointerDelta,this.prevCoords,this.curCoords),"drag"===this.prepared.name)){var g=Math.abs(h),v=Math.abs(c),f=this.target.options.drag.axis,y=g>v?"x":g<v?"y":"xy";if("xy"!==y&&"xy"!==f&&f!==y){this.prepared.name=null;for(var x=r;H(x);){var w=m.get(x);if(w&&w!==this.target&&!w.options.drag.manualStart&&"drag"===w.getAction(this.downPointer,this.downEvent,this,x).name&&Mt(y,w)){this.prepared.name="drag",this.target=w,this.element=x;break}x=zt(x)}if(!this.prepared.name){var E=this,b=function(t,e,n){var s=i?n.querySelectorAll(e):void 0;if(t!==E.target)return Dt(t,r)&&!t.options.drag.manualStart&&!Tt(t,x,r)&&Ct(t,x,r)&&Kt(x,e,s)&&"drag"===t.getAction(E.downPointer,E.downEvent,E,x).name&&Mt(y,t)&&Pt(t,x,"drag")?t:void 0};for(x=r;H(x);){var S=m.forEachSelector(b);if(S){this.prepared.name="drag",this.target=S,this.element=x;break}x=zt(x)}}}}var D=!!this.prepared.name&&!this.interacting();if(D&&(this.target.options[this.prepared.name].manualStart||!Pt(this.target,this.element,this.prepared)))return void this.stop(e);if(this.prepared.name&&this.target)D&&this.start(this.prepared,this.target,this.element),(this.setModifications(this.curCoords.page,s)||D)&&(this.prevEvent=this[this.prepared.name+"Move"](e)),this.checkAndPreventDefault(e,this.target,this.element)}rt(this.prevCoords,this.curCoords),(this.dragging||this.resizing)&&this.autoScrollMove(t)}},dragStart:function(t){var e=new Rt(this,t,"drag","start",this.element);this.dragging=!0,this.target.fire(e),this.activeDrops.dropzones=[],this.activeDrops.elements=[],this.activeDrops.rects=[],this.dynamicDrop||this.setActiveDrops(this.element);var i=this.getDropEvents(t,e);return i.activate&&this.fireActiveDrops(i.activate),e},dragMove:function(t){var e=this.target,i=new Rt(this,t,"drag","move",this.element),r=this.element,n=this.getDrop(i,t,r);this.dropTarget=n.dropzone,this.dropElement=n.element;var s=this.getDropEvents(t,i);return e.fire(i),s.leave&&this.prevDropTarget.fire(s.leave),s.enter&&this.dropTarget.fire(s.enter),s.move&&this.dropTarget.fire(s.move),this.prevDropTarget=this.dropTarget,this.prevDropElement=this.dropElement,i},resizeStart:function(t){var e=new Rt(this,t,"resize","start",this.element);if(this.prepared.edges){var i=this.target.getRect(this.element);if(this.target.options.resize.square||this.target.options.resize.preserveAspectRatio){var r=et({},this.prepared.edges);r.top=r.top||r.left&&!r.bottom,r.left=r.left||r.top&&!r.right,r.bottom=r.bottom||r.right&&!r.top,r.right=r.right||r.bottom&&!r.left,this.prepared._linkedEdges=r}else this.prepared._linkedEdges=null;this.target.options.resize.preserveAspectRatio&&(this.resizeStartAspectRatio=i.width/i.height),this.resizeRects={start:i,current:et({},i),restricted:et({},i),previous:et({},i),delta:{left:0,right:0,width:0,top:0,bottom:0,height:0}},e.rect=this.resizeRects.restricted,e.deltaRect=this.resizeRects.delta}return this.target.fire(e),this.resizing=!0,e},resizeMove:function(t){var e=new Rt(this,t,"resize","move",this.element),i=this.prepared.edges,r=this.target.options.resize.invert,n="reposition"===r||"negate"===r;if(i){var s,o=e.dx,a=e.dy,p=this.resizeRects.start,h=this.resizeRects.current,c=this.resizeRects.restricted,l=this.resizeRects.delta,d=et(this.resizeRects.previous,c),u=i;if(this.target.options.resize.preserveAspectRatio){var g=this.resizeStartAspectRatio;i=this.prepared._linkedEdges,u.left&&u.bottom||u.right&&u.top?a=-o/g:u.left||u.right?a=o/g:(u.top||u.bottom)&&(o=a*g)}else this.target.options.resize.square&&(i=this.prepared._linkedEdges,u.left&&u.bottom||u.right&&u.top?a=-o:u.left||u.right?a=o:(u.top||u.bottom)&&(o=a));if(i.top&&(h.top+=a),i.bottom&&(h.bottom+=a),i.left&&(h.left+=o),i.right&&(h.right+=o),n){if(et(c,h),"reposition"===r)c.top>c.bottom&&(s=c.top,c.top=c.bottom,c.bottom=s),c.left>c.right&&(s=c.left,c.left=c.right,c.right=s)}else c.top=Math.min(h.top,p.bottom),c.bottom=Math.max(h.bottom,p.top),c.left=Math.min(h.left,p.right),c.right=Math.max(h.right,p.left);for(var m in c.width=c.right-c.left,c.height=c.bottom-c.top,c)l[m]=c[m]-d[m];e.edges=this.prepared.edges,e.rect=c,e.deltaRect=l}return this.target.fire(e),e},gestureStart:function(t){var e=new Rt(this,t,"gesture","start",this.element);return e.ds=0,this.gesture.startDistance=this.gesture.prevDistance=e.distance,this.gesture.startAngle=this.gesture.prevAngle=e.angle,this.gesture.scale=1,this.gesturing=!0,this.target.fire(e),e},gestureMove:function(t){return this.pointerIds.length?((e=new Rt(this,t,"gesture","move",this.element)).ds=e.scale-this.gesture.scale,this.target.fire(e),this.gesture.prevAngle=e.angle,this.gesture.prevDistance=e.distance,e.scale===1/0||null===e.scale||void 0===e.scale||isNaN(e.scale)||(this.gesture.scale=e.scale),e):this.prevEvent;var e},pointerHold:function(t,e,i){this.collectEventTargets(t,e,i,"hold")},pointerUp:function(t,e,i,r){var n=this.mouse?0:Vt(this.pointerIds,ht(t));clearTimeout(this.holdTimers[n]),this.collectEventTargets(t,e,i,"up"),this.collectEventTargets(t,e,i,"tap"),this.pointerEnd(t,e,i,r),this.removePointer(t)},pointerCancel:function(t,e,i,r){var n=this.mouse?0:Vt(this.pointerIds,ht(t));clearTimeout(this.holdTimers[n]),this.collectEventTargets(t,e,i,"cancel"),this.pointerEnd(t,e,i,r),this.removePointer(t)},ie8Dblclick:function(t,e,i){this.prevTap&&e.clientX===this.prevTap.clientX&&e.clientY===this.prevTap.clientY&&i===this.prevTap.target&&(this.downTargets[0]=i,this.downTimes[0]=(new Date).getTime(),this.collectEventTargets(t,e,i,"tap"))},pointerEnd:function(t,e,i,r){var n,s=this.target,o=s&&s.options,a=o&&this.prepared.name&&o[this.prepared.name].inertia,p=this.inertiaStatus;if(this.interacting()){if(p.active&&!p.ending)return;var h,c,l,d=(new Date).getTime(),u=!1,g=At(s,this.prepared.name)&&o[this.prepared.name].snap.endOnly,m=kt(s,this.prepared.name)&&o[this.prepared.name].restrict.endOnly,v=0,f=0;if(h=this.dragging?"x"===o.drag.axis?Math.abs(this.pointerDelta.client.vx):"y"===o.drag.axis?Math.abs(this.pointerDelta.client.vy):this.pointerDelta.client.speed:this.pointerDelta.client.speed,l=(c=a&&a.enabled&&"gesture"!==this.prepared.name&&e!==p.startEvent)&&d-this.curCoords.timeStamp<50&&h>a.minSpeed&&h>a.endSpeed,c&&!l&&(g||m)){var y={};y.snap=y.restrict=y,g&&(this.setSnapping(this.curCoords.page,y),y.locked&&(v+=y.dx,f+=y.dy)),m&&(this.setRestriction(this.curCoords.page,y),y.restricted&&(v+=y.dx,f+=y.dy)),(v||f)&&(u=!0)}if(l||u){if(rt(p.upCoords,this.curCoords),this.pointers[0]=p.startEvent=new Rt(this,e,this.prepared.name,"inertiastart",this.element),p.t0=d,s.fire(p.startEvent),l){p.vx0=this.pointerDelta.client.vx,p.vy0=this.pointerDelta.client.vy,p.v0=h,this.calcInertia(p);var x,w=et({},this.curCoords.page),E=xt(s,this.element);if(w.x=w.x+p.xe-E.x,w.y=w.y+p.ye-E.y,(x={useStatusXY:!0,x:w.x,y:w.y,dx:0,dy:0,snap:null}).snap=x,v=f=0,g){var b=this.setSnapping(this.curCoords.page,x);b.locked&&(v+=b.dx,f+=b.dy)}if(m){var S=this.setRestriction(this.curCoords.page,x);S.restricted&&(v+=S.dx,f+=S.dy)}p.modifiedXe+=v,p.modifiedYe+=f,p.i=R(this.boundInertiaFrame)}else p.smoothEnd=!0,p.xe=v,p.ye=f,p.sx=p.sy=0,p.i=R(this.boundSmoothEndFrame);return void(p.active=!0)}(g||m)&&this.pointerMove(t,e,i,r,!0)}if(this.dragging){n=new Rt(this,e,"drag","end",this.element);var z=this.element,D=this.getDrop(n,e,z);this.dropTarget=D.dropzone,this.dropElement=D.element;var T=this.getDropEvents(e,n);T.leave&&this.prevDropTarget.fire(T.leave),T.enter&&this.dropTarget.fire(T.enter),T.drop&&this.dropTarget.fire(T.drop),T.deactivate&&this.fireActiveDrops(T.deactivate),s.fire(n)}else this.resizing?(n=new Rt(this,e,"resize","end",this.element),s.fire(n)):this.gesturing&&(n=new Rt(this,e,"gesture","end",this.element),s.fire(n));this.stop(e)},collectDrops:function(t){var e,i=[],r=[];for(t=t||this.element,e=0;e<m.length;e++)if(m[e].options.drop.enabled){var n=m[e],s=n.options.drop.accept;if(!(H(s)&&s!==t||Q(s)&&!Kt(t,s)))for(var o=n.selector?n._context.querySelectorAll(n.selector):[n._element],a=0,p=o.length;a<p;a++){var h=o[a];h!==t&&(i.push(n),r.push(h))}}return{dropzones:i,elements:r}},fireActiveDrops:function(t){var e,i,r,n;for(e=0;e<this.activeDrops.dropzones.length;e++)i=this.activeDrops.dropzones[e],(r=this.activeDrops.elements[e])!==n&&(t.target=r,i.fire(t)),n=r},setActiveDrops:function(t){var e=this.collectDrops(t,!0);this.activeDrops.dropzones=e.dropzones,this.activeDrops.elements=e.elements,this.activeDrops.rects=[];for(var i=0;i<this.activeDrops.dropzones.length;i++)this.activeDrops.rects[i]=this.activeDrops.dropzones[i].getRect(this.activeDrops.elements[i])},getDrop:function(t,e,i){var r=[];f&&this.setActiveDrops(i);for(var n=0;n<this.activeDrops.dropzones.length;n++){var s=this.activeDrops.dropzones[n],o=this.activeDrops.elements[n],h=this.activeDrops.rects[n];r.push(s.dropCheck(t,e,this.target,i,o,h)?o:null)}var l=function(t){var e,i,r,n,s,o=t[0],h=o?0:-1,l=[],d=[];for(n=1;n<t.length;n++)if((e=t[n])&&e!==o)if(o){if(e.parentNode!==e.ownerDocument)if(o.parentNode!==e.ownerDocument){if(!l.length)for(i=o;i.parentNode&&i.parentNode!==i.ownerDocument;)l.unshift(i),i=i.parentNode;if(o instanceof c&&e instanceof a&&!(e instanceof p)){if(e===o.parentNode)continue;i=e.ownerSVGElement}else i=e;for(d=[];i.parentNode!==i.ownerDocument;)d.unshift(i),i=i.parentNode;for(s=0;d[s]&&d[s]===l[s];)s++;var u=[d[s-1],d[s],l[s]];for(r=u[0].lastChild;r;){if(r===u[1]){o=e,h=n,l=[];break}if(r===u[2])break;r=r.previousSibling}}else o=e,h=n}else o=e,h=n;return h}(r);return{dropzone:this.activeDrops.dropzones[l]||null,element:this.activeDrops.elements[l]||null}},getDropEvents:function(t,e){var i={enter:null,leave:null,activate:null,deactivate:null,move:null,drop:null};return this.dropElement!==this.prevDropElement&&(this.prevDropTarget&&(i.leave={target:this.prevDropElement,dropzone:this.prevDropTarget,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,timeStamp:e.timeStamp,type:"dragleave"},e.dragLeave=this.prevDropElement,e.prevDropzone=this.prevDropTarget),this.dropTarget&&(i.enter={target:this.dropElement,dropzone:this.dropTarget,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,timeStamp:e.timeStamp,type:"dragenter"},e.dragEnter=this.dropElement,e.dropzone=this.dropTarget)),"dragend"===e.type&&this.dropTarget&&(i.drop={target:this.dropElement,dropzone:this.dropTarget,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,timeStamp:e.timeStamp,type:"drop"},e.dropzone=this.dropTarget),"dragstart"===e.type&&(i.activate={target:null,dropzone:null,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,timeStamp:e.timeStamp,type:"dropactivate"}),"dragend"===e.type&&(i.deactivate={target:null,dropzone:null,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,timeStamp:e.timeStamp,type:"dropdeactivate"}),"dragmove"===e.type&&this.dropTarget&&(i.move={target:this.dropElement,dropzone:this.dropTarget,relatedTarget:e.target,draggable:e.interactable,dragEvent:e,interaction:this,dragmove:e,timeStamp:e.timeStamp,type:"dropmove"},e.dropzone=this.dropTarget),i},currentAction:function(){return(this.dragging?"drag":this.resizing&&"resize")||this.gesturing&&"gesture"||null},interacting:function(){return this.dragging||this.resizing||this.gesturing},clearTargets:function(){this.target=this.element=null,this.dropTarget=this.dropElement=this.prevDropTarget=this.prevDropElement=null},stop:function(t){if(this.interacting()){w.stop(),this.matches=[],this.matchElements=[];var e=this.target;e.options.styleCursor&&(e._doc.documentElement.style.cursor=""),t&&K(t.preventDefault)&&this.checkAndPreventDefault(t,e,this.element),this.dragging&&(this.activeDrops.dropzones=this.activeDrops.elements=this.activeDrops.rects=null)}this.clearTargets(),this.pointerIsDown=this.snapStatus.locked=this.dragging=this.resizing=this.gesturing=!1,this.prepared.name=this.prevEvent=null,this.inertiaStatus.resumeDx=this.inertiaStatus.resumeDy=0;for(var i=0;i<this.pointers.length;i++)-1===Vt(this.pointerIds,ht(this.pointers[i]))&&this.pointers.splice(i,1)},inertiaFrame:function(){var t,e,i,r,n,s,o,a=this.inertiaStatus,p=this.target.options[this.prepared.name].inertia.resistance,h=(new Date).getTime()/1e3-a.t0;if(h<a.te){var c=1-(Math.exp(-p*h)-a.lambda_v0)/a.one_ve_v0;if(a.modifiedXe===a.xe&&a.modifiedYe===a.ye)a.sx=a.xe*c,a.sy=a.ye*c;else{var l=(t=0,e=0,i=a.xe,r=a.ye,n=a.modifiedXe,s=a.modifiedYe,{x:wt(o=c,t,i,n),y:wt(o,e,r,s)});a.sx=l.x,a.sy=l.y}this.pointerMove(a.startEvent,a.startEvent),a.i=R(this.boundInertiaFrame)}else a.ending=!0,a.sx=a.modifiedXe,a.sy=a.modifiedYe,this.pointerMove(a.startEvent,a.startEvent),this.pointerEnd(a.startEvent,a.startEvent),a.active=a.ending=!1},smoothEndFrame:function(){var t=this.inertiaStatus,e=(new Date).getTime()-t.t0,i=this.target.options[this.prepared.name].inertia.smoothEndDuration;e<i?(t.sx=Et(e,0,t.xe,i),t.sy=Et(e,0,t.ye,i),this.pointerMove(t.startEvent,t.startEvent),t.i=R(this.boundSmoothEndFrame)):(t.ending=!0,t.sx=t.xe,t.sy=t.ye,this.pointerMove(t.startEvent,t.startEvent),this.pointerEnd(t.startEvent,t.startEvent),t.smoothEnd=t.active=t.ending=!1)},addPointer:function(t){var e=ht(t),i=this.mouse?0:Vt(this.pointerIds,e);return-1===i&&(i=this.pointerIds.length),this.pointerIds[i]=e,this.pointers[i]=t,i},removePointer:function(t){var e=ht(t),i=this.mouse?0:Vt(this.pointerIds,e);-1!==i&&(this.pointers.splice(i,1),this.pointerIds.splice(i,1),this.downTargets.splice(i,1),this.downTimes.splice(i,1),this.holdTimers.splice(i,1))},recordPointer:function(t){var e=this.mouse?0:Vt(this.pointerIds,ht(t));-1!==e&&(this.pointers[e]=t)},collectEventTargets:function(t,e,r,n){var s=this.mouse?0:Vt(this.pointerIds,ht(t));if("tap"!==n||!this.pointerWasMoved&&this.downTargets[s]&&this.downTargets[s]===r){for(var o=[],a=[],p=r;p;)Ut.isSet(p)&&Ut(p)._iEvents[n]&&(o.push(Ut(p)),a.push(p)),m.forEachSelector(h),p=zt(p);(o.length||"tap"===n)&&this.firePointers(t,e,r,o,a,n)}function h(t,e,s){var h=i?s.querySelectorAll(e):void 0;t._iEvents[n]&&H(p)&&Dt(t,p)&&!Tt(t,p,r)&&Ct(t,p,r)&&Kt(p,e,h)&&(o.push(t),a.push(p))}},firePointers:function(t,e,i,r,n,s){var o,a,p,h=this.mouse?0:Vt(this.pointerIds,ht(t)),c={};for("doubletap"===s?c=t:(it(c,e),e!==t&&it(c,t),c.preventDefault=Xt,c.stopPropagation=Rt.prototype.stopPropagation,c.stopImmediatePropagation=Rt.prototype.stopImmediatePropagation,c.interaction=this,c.timeStamp=(new Date).getTime(),c.originalEvent=e,c.originalPointer=t,c.type=s,c.pointerId=ht(t),c.pointerType=this.mouse?"mouse":b?Q(t.pointerType)?t.pointerType:[,,"touch","pen","mouse"][t.pointerType]:"touch"),"tap"===s&&(c.dt=c.timeStamp-this.downTimes[h],a=c.timeStamp-this.tapTime,p=!!(this.prevTap&&"doubletap"!==this.prevTap.type&&this.prevTap.target===c.target&&a<500),c.double=p,this.tapTime=c.timeStamp),o=0;o<r.length&&(c.currentTarget=n[o],c.interactable=r[o],r[o].fire(c),!(c.immediatePropagationStopped||c.propagationStopped&&n[o+1]!==c.currentTarget));o++);if(p){var l={};et(l,c),l.dt=a,l.type="doubletap",this.collectEventTargets(l,e,i,"doubletap"),this.prevTap=l}else"tap"===s&&(this.prevTap=c)},validateSelector:function(t,e,i,r){for(var n=0,s=i.length;n<s;n++){var o=i[n],a=r[n],p=Nt(o.getAction(t,e,this,a),o);if(p&&Pt(o,a,p))return this.target=o,this.element=a,p}},setSnapping:function(t,e){var i,r,n,s=this.target.options[this.prepared.name].snap,o=[];if((e=e||this.snapStatus).useStatusXY)r={x:e.x,y:e.y};else{var a=xt(this.target,this.element);(r=et({},t)).x-=a.x,r.y-=a.y}e.realX=r.x,e.realY=r.y,r.x=r.x-this.inertiaStatus.resumeDx,r.y=r.y-this.inertiaStatus.resumeDy;for(var p=s.targets?s.targets.length:0,h=0;h<this.snapOffsets.length;h++){var c={x:r.x-this.snapOffsets[h].x,y:r.y-this.snapOffsets[h].y};for(n=0;n<p;n++)(i=K(s.targets[n])?s.targets[n](c.x,c.y,this):s.targets[n])&&o.push({x:J(i.x)?i.x+this.snapOffsets[h].x:c.x,y:J(i.y)?i.y+this.snapOffsets[h].y:c.y,range:J(i.range)?i.range:s.range})}var l,u={target:null,inRange:!1,distance:0,range:0,dx:0,dy:0};for(n=0,p=o.length;n<p;n++){var g=(i=o[n]).range,m=i.x-r.x,v=i.y-r.y,f=d(m,v),y=f<=g;g===1/0&&u.inRange&&u.range!==1/0&&(y=!1),u.target&&!(y?u.inRange&&g!==1/0?f/g<u.distance/u.range:g===1/0&&u.range!==1/0||f<u.distance:!u.inRange&&f<u.distance)||(g===1/0&&(y=!0),u.target=i,u.distance=f,u.range=g,u.inRange=y,u.dx=m,u.dy=v,e.range=g)}return u.target?(l=e.snappedX!==u.target.x||e.snappedY!==u.target.y,e.snappedX=u.target.x,e.snappedY=u.target.y):(l=!0,e.snappedX=NaN,e.snappedY=NaN),e.dx=u.dx,e.dy=u.dy,e.changed=l||u.inRange&&!e.locked,e.locked=u.inRange,e},setRestriction:function(t,e){var i,r,n,s,o=this.target,a=o&&o.options[this.prepared.name].restrict,p=a&&a.restriction;return p?(i=i=(e=e||this.restrictStatus).useStatusXY?{x:e.x,y:e.y}:et({},t),e.snap&&e.snap.locked&&(i.x+=e.snap.dx||0,i.y+=e.snap.dy||0),i.x-=this.inertiaStatus.resumeDx,i.y-=this.inertiaStatus.resumeDy,e.dx=0,e.dy=0,e.restricted=!1,Q(p)&&!(p="parent"===p?zt(this.element):"self"===p?o.getRect(this.element):St(this.element,p))?e:(K(p)&&(p=p(i.x,i.y,this.element)),H(p)&&(p=ut(p)),r=p,p?"x"in p&&"y"in p?(n=Math.max(Math.min(r.x+r.width-this.restrictOffset.right,i.x),r.x+this.restrictOffset.left),s=Math.max(Math.min(r.y+r.height-this.restrictOffset.bottom,i.y),r.y+this.restrictOffset.top)):(n=Math.max(Math.min(r.right-this.restrictOffset.right,i.x),r.left+this.restrictOffset.left),s=Math.max(Math.min(r.bottom-this.restrictOffset.bottom,i.y),r.top+this.restrictOffset.top)):(n=i.x,s=i.y),e.dx=n-i.x,e.dy=s-i.y,e.changed=e.restrictedX!==n||e.restrictedY!==s,e.restricted=!(!e.dx&&!e.dy),e.restrictedX=n,e.restrictedY=s,e)):e},checkAndPreventDefault:function(t,e,i){if(e=e||this.target){var r=e.options,n=r.preventDefault;if("auto"!==n||!i||/^(input|select|textarea)$/i.test(t.target.nodeName))"always"!==n||t.preventDefault();else{if(/down|start/i.test(t.type)&&"drag"===this.prepared.name&&"xy"!==r.drag.axis)return;if(r[this.prepared.name]&&r[this.prepared.name].manualStart&&!this.interacting())return;t.preventDefault()}}},calcInertia:function(t){var e=this.target.options[this.prepared.name].inertia,i=e.resistance,r=-Math.log(e.endSpeed/t.v0)/i;t.x0=this.prevEvent.pageX,t.y0=this.prevEvent.pageY,t.t0=t.startEvent.timeStamp/1e3,t.sx=t.sy=0,t.modifiedXe=t.xe=(t.vx0-r)/i,t.modifiedYe=t.ye=(t.vy0-r)/i,t.te=r,t.lambda_v0=i/t.v0,t.one_ve_v0=1-e.endSpeed/t.v0},autoScrollMove:function(t){if(this.interacting()&&function(t,e){var i=t.options;return/^resize/.test(e)&&(e="resize"),i[e].autoScroll&&i[e].autoScroll.enabled}(this.target,this.prepared.name))if(this.inertiaStatus.active)w.x=w.y=0;else{var e,i,r,n,s=this.target.options[this.prepared.name].autoScroll,o=s.container||lt(this.element);if(j(o))n=t.clientX<w.margin,e=t.clientY<w.margin,i=t.clientX>o.innerWidth-w.margin,r=t.clientY>o.innerHeight-w.margin;else{var a=dt(o);n=t.clientX<a.left+w.margin,e=t.clientY<a.top+w.margin,i=t.clientX>a.right-w.margin,r=t.clientY>a.bottom-w.margin}w.x=i?1:n?-1:0,w.y=r?1:e?-1:0,w.isScrolling||(w.margin=s.margin,w.speed=s.speed,w.start(this))}},_updateEventTargets:function(t,e){this._eventTarget=t,this._curEventTarget=e}},Rt.prototype={preventDefault:L,stopImmediatePropagation:function(){this.immediatePropagationStopped=this.propagationStopped=!0},stopPropagation:function(){this.propagationStopped=!0}};for(var F={},N=["dragStart","dragMove","resizeStart","resizeMove","gestureStart","gestureMove","pointerOver","pointerOut","pointerHover","selectorDown","pointerDown","pointerMove","pointerUp","pointerCancel","pointerEnd","addPointer","removePointer","recordPointer","autoScrollMove"],W=0,q=N.length;W<q;W++){var U=N[W];F[U]=It(U)}m.indexOfElement=function(t,e){e=e||s;for(var i=0;i<this.length;i++){var r=this[i];if(r.selector===t&&r._context===e||!r.selector&&r._element===t)return i}return-1},m.get=function(t,e){return this[this.indexOfElement(t,e&&e.context)]},m.forEachSelector=function(t){for(var e=0;e<this.length;e++){var i=this[e];if(i.selector){var r=t(i,i.selector,i._context,e,this);if(void 0!==r)return r}}},Lt.prototype={setOnEvents:function(t,e){return"drop"===t?(K(e.ondrop)&&(this.ondrop=e.ondrop),K(e.ondropactivate)&&(this.ondropactivate=e.ondropactivate),K(e.ondropdeactivate)&&(this.ondropdeactivate=e.ondropdeactivate),K(e.ondragenter)&&(this.ondragenter=e.ondragenter),K(e.ondragleave)&&(this.ondragleave=e.ondragleave),K(e.ondropmove)&&(this.ondropmove=e.ondropmove)):(t="on"+t,K(e.onstart)&&(this[t+"start"]=e.onstart),K(e.onmove)&&(this[t+"move"]=e.onmove),K(e.onend)&&(this[t+"end"]=e.onend),K(e.oninertiastart)&&(this[t+"inertiastart"]=e.oninertiastart)),this},draggable:function(t){return G(t)?(this.options.drag.enabled=!1!==t.enabled,this.setPerAction("drag",t),this.setOnEvents("drag",t),/^x$|^y$|^xy$/.test(t.axis)?this.options.drag.axis=t.axis:null===t.axis&&delete this.options.drag.axis,this):Z(t)?(this.options.drag.enabled=t,this):this.options.drag},setPerAction:function(t,e){for(var i in e)i in x[t]&&(G(e[i])?(this.options[t][i]=et(this.options[t][i]||{},e[i]),G(x.perAction[i])&&"enabled"in x.perAction[i]&&(this.options[t][i].enabled=!1!==e[i].enabled)):Z(e[i])&&G(x.perAction[i])?this.options[t][i].enabled=e[i]:void 0!==e[i]&&(this.options[t][i]=e[i]))},dropzone:function(t){return G(t)?(this.options.drop.enabled=!1!==t.enabled,this.setOnEvents("drop",t),/^(pointer|center)$/.test(t.overlap)?this.options.drop.overlap=t.overlap:J(t.overlap)&&(this.options.drop.overlap=Math.max(Math.min(1,t.overlap),0)),"accept"in t&&(this.options.drop.accept=t.accept),"checker"in t&&(this.options.drop.checker=t.checker),this):Z(t)?(this.options.drop.enabled=t,this):this.options.drop},dropCheck:function(t,e,i,r,n,s){var o=!1;if(!(s=s||this.getRect(n)))return!!this.options.drop.checker&&this.options.drop.checker(t,e,o,this,n,i,r);var a=this.options.drop.overlap;if("pointer"===a){var p,h,c=at(t),l=xt(i,r);c.x+=l.x,c.y+=l.y,p=c.x>s.left&&c.x<s.right,h=c.y>s.top&&c.y<s.bottom,o=p&&h}var d=i.getRect(r);if("center"===a){var u=d.left+d.width/2,g=d.top+d.height/2;o=u>=s.left&&u<=s.right&&g>=s.top&&g<=s.bottom}J(a)&&(o=Math.max(0,Math.min(s.right,d.right)-Math.max(s.left,d.left))*Math.max(0,Math.min(s.bottom,d.bottom)-Math.max(s.top,d.top))/(d.width*d.height)>=a);return this.options.drop.checker&&(o=this.options.drop.checker(t,e,o,this,n,i,r)),o},dropChecker:function(t){return K(t)?(this.options.drop.checker=t,this):null===t?(delete this.options.getRect,this):this.options.drop.checker},accept:function(t){return H(t)?(this.options.drop.accept=t,this):tt(t)?(this.options.drop.accept=t,this):null===t?(delete this.options.drop.accept,this):this.options.drop.accept},resizable:function(t){return G(t)?(this.options.resize.enabled=!1!==t.enabled,this.setPerAction("resize",t),this.setOnEvents("resize",t),/^x$|^y$|^xy$/.test(t.axis)?this.options.resize.axis=t.axis:null===t.axis&&(this.options.resize.axis=x.resize.axis),Z(t.preserveAspectRatio)?this.options.resize.preserveAspectRatio=t.preserveAspectRatio:Z(t.square)&&(this.options.resize.square=t.square),this):Z(t)?(this.options.resize.enabled=t,this):this.options.resize},squareResize:function(t){return Z(t)?(this.options.resize.square=t,this):null===t?(delete this.options.resize.square,this):this.options.resize.square},gesturable:function(t){return G(t)?(this.options.gesture.enabled=!1!==t.enabled,this.setPerAction("gesture",t),this.setOnEvents("gesture",t),this):Z(t)?(this.options.gesture.enabled=t,this):this.options.gesture},autoScroll:function(t){return G(t)?t=et({actions:["drag","resize"]},t):Z(t)&&(t={actions:["drag","resize"],enabled:t}),this.setOptions("autoScroll",t)},snap:function(t){var e=this.setOptions("snap",t);return e===this?this:e.drag},setOptions:function(t,e){var i,r=e&&V(e.actions)?e.actions:["drag"];if(G(e)||Z(e)){for(i=0;i<r.length;i++){var n=/resize/.test(r[i])?"resize":r[i];if(G(this.options[n])){var s=this.options[n][t];G(e)?(et(s,e),s.enabled=!1!==e.enabled,"snap"===t&&("grid"===s.mode?s.targets=[Ut.createSnapGrid(et({offset:s.gridOffset||{x:0,y:0}},s.grid||{}))]:"anchor"===s.mode?s.targets=s.anchors:"path"===s.mode&&(s.targets=s.paths),"elementOrigin"in e&&(s.relativePoints=[e.elementOrigin]))):Z(e)&&(s.enabled=e)}}return this}var o={},a=["drag","resize","gesture"];for(i=0;i<a.length;i++)t in x[a[i]]&&(o[a[i]]=this.options[a[i]][t]);return o},inertia:function(t){var e=this.setOptions("inertia",t);return e===this?this:e.drag},getAction:function(t,e,i,r){var n=this.defaultActionChecker(t,i,r);return this.options.actionChecker?this.options.actionChecker(t,e,n,this,r,i):n},defaultActionChecker:Ft,actionChecker:function(t){return K(t)?(this.options.actionChecker=t,this):null===t?(delete this.options.actionChecker,this):this.options.actionChecker},getRect:function(t){return t=t||this._element,this.selector&&!H(t)&&(t=this._context.querySelector(this.selector)),ut(t)},rectChecker:function(t){return K(t)?(this.getRect=t,this):null===t?(delete this.options.getRect,this):this.getRect},styleCursor:function(t){return Z(t)?(this.options.styleCursor=t,this):null===t?(delete this.options.styleCursor,this):this.options.styleCursor},preventDefault:function(t){return/^(always|never|auto)$/.test(t)?(this.options.preventDefault=t,this):Z(t)?(this.options.preventDefault=t?"always":"never",this):this.options.preventDefault},origin:function(t){return tt(t)?(this.options.origin=t,this):G(t)?(this.options.origin=t,this):this.options.origin},deltaSource:function(t){return"page"===t||"client"===t?(this.options.deltaSource=t,this):this.options.deltaSource},restrict:function(t){if(!G(t))return this.setOptions("restrict",t);for(var e,i=["drag","resize","gesture"],r=0;r<i.length;r++){var n=i[r];if(n in t){var s=et({actions:[n],restriction:t[n]},t);e=this.setOptions("restrict",s)}}return e},context:function(){return this._context},_context:s,ignoreFrom:function(t){return tt(t)?(this.options.ignoreFrom=t,this):H(t)?(this.options.ignoreFrom=t,this):this.options.ignoreFrom},allowFrom:function(t){return tt(t)?(this.options.allowFrom=t,this):H(t)?(this.options.allowFrom=t,this):this.options.allowFrom},element:function(){return this._element},fire:function(t){if(!t||!t.type||!Gt(k,t.type))return this;var e,i,r,n="on"+t.type;if(t.type in this._iEvents)for(i=0,r=(e=this._iEvents[t.type]).length;i<r&&!t.immediatePropagationStopped;i++)e[i].name,e[i](t);if(K(this[n])&&(this[n].name,this[n](t)),t.type in P&&(e=P[t.type]))for(i=0,r=e.length;i<r&&!t.immediatePropagationStopped;i++)e[i].name,e[i](t);return this},on:function(t,e,i){var r;if(Q(t)&&-1!==t.search(" ")&&(t=t.trim().split(/ +/)),V(t)){for(r=0;r<t.length;r++)this.on(t[r],e,i);return this}if(G(t)){for(var n in t)this.on(n,t[n],e);return this}if("wheel"===t&&(t=A),i=!!i,Gt(k,t))t in this._iEvents?this._iEvents[t].push(e):this._iEvents[t]=[e];else if(this.selector){if(!y[t])for(y[t]={selectors:[],contexts:[],listeners:[]},r=0;r<g.length;r++)Y.add(g[r],t,Wt),Y.add(g[r],t,qt,!0);var s,o=y[t];for(s=o.selectors.length-1;s>=0&&(o.selectors[s]!==this.selector||o.contexts[s]!==this._context);s--);-1===s&&(s=o.selectors.length,o.selectors.push(this.selector),o.contexts.push(this._context),o.listeners.push([])),o.listeners[s].push([e,i])}else Y.add(this._element,t,e,i);return this},off:function(t,e,i){var r;if(Q(t)&&-1!==t.search(" ")&&(t=t.trim().split(/ +/)),V(t)){for(r=0;r<t.length;r++)this.off(t[r],e,i);return this}if(G(t)){for(var n in t)this.off(n,t[n],e);return this}var s,o=-1;if(i=!!i,"wheel"===t&&(t=A),Gt(k,t))(s=this._iEvents[t])&&-1!==(o=Vt(s,e))&&this._iEvents[t].splice(o,1);else if(this.selector){var a=y[t],p=!1;if(!a)return this;for(o=a.selectors.length-1;o>=0;o--)if(a.selectors[o]===this.selector&&a.contexts[o]===this._context){var h=a.listeners[o];for(r=h.length-1;r>=0;r--){var c=h[r][0],l=h[r][1];if(c===e&&l===i){h.splice(r,1),h.length||(a.selectors.splice(o,1),a.contexts.splice(o,1),a.listeners.splice(o,1),Y.remove(this._context,t,Wt),Y.remove(this._context,t,qt,!0),a.selectors.length||(y[t]=null)),p=!0;break}}if(p)break}}else Y.remove(this._element,t,e,i);return this},set:function(t){G(t)||(t={}),this.options=et({},x.base);var e,i=["drag","drop","resize","gesture"],r=["draggable","dropzone","resizable","gesturable"],n=et(et({},x.perAction),t[s]||{});for(e=0;e<i.length;e++){var s=i[e];this.options[s]=et({},x[s]),this.setPerAction(s,n),this[r[e]](t[s])}var o=["accept","actionChecker","allowFrom","deltaSource","dropChecker","ignoreFrom","origin","preventDefault","rectChecker","styleCursor"];for(e=0,q=o.length;e<q;e++){var a=o[e];this.options[a]=x.base[a],a in t&&this[a](t[a])}return this},unset:function(){if(Y.remove(this._element,"all"),Q(this.selector))for(var t in y)for(var e=y[t],i=0;i<e.selectors.length;i++){e.selectors[i]===this.selector&&e.contexts[i]===this._context&&(e.selectors.splice(i,1),e.contexts.splice(i,1),e.listeners.splice(i,1),e.selectors.length||(y[t]=null)),Y.remove(this._context,t,Wt),Y.remove(this._context,t,qt,!0);break}else Y.remove(this,"all"),this.options.styleCursor&&(this._element.style.cursor="");return this.dropzone(!1),m.splice(Vt(m,this),1),Ut}},Lt.prototype.snap=Ht(Lt.prototype.snap,"Interactable#snap is deprecated. See the new documentation for snapping at http://interactjs.io/docs/snapping"),Lt.prototype.restrict=Ht(Lt.prototype.restrict,"Interactable#restrict is deprecated. See the new documentation for resticting at http://interactjs.io/docs/restriction"),Lt.prototype.inertia=Ht(Lt.prototype.inertia,"Interactable#inertia is deprecated. See the new documentation for inertia at http://interactjs.io/docs/inertia"),Lt.prototype.autoScroll=Ht(Lt.prototype.autoScroll,"Interactable#autoScroll is deprecated. See the new documentation for autoScroll at http://interactjs.io/docs/#autoscroll"),Lt.prototype.squareResize=Ht(Lt.prototype.squareResize,"Interactable#squareResize is deprecated. See http://interactjs.io/docs/#resize-square"),Lt.prototype.accept=Ht(Lt.prototype.accept,"Interactable#accept is deprecated. use Interactable#dropzone({ accept: target }) instead"),Lt.prototype.dropChecker=Ht(Lt.prototype.dropChecker,"Interactable#dropChecker is deprecated. use Interactable#dropzone({ dropChecker: checkerFunction }) instead"),Lt.prototype.context=Ht(Lt.prototype.context,"Interactable#context as a method is deprecated. It will soon be a DOM Node instead"),Ut.isSet=function(t,e){return-1!==m.indexOfElement(t,e&&e.context)},Ut.on=function(t,e,i){if(Q(t)&&-1!==t.search(" ")&&(t=t.trim().split(/ +/)),V(t)){for(var r=0;r<t.length;r++)Ut.on(t[r],e,i);return Ut}if(G(t)){for(var n in t)Ut.on(n,t[n],e);return Ut}return Gt(k,t)?P[t]?P[t].push(e):P[t]=[e]:Y.add(s,t,e,i),Ut},Ut.off=function(t,e,i){if(Q(t)&&-1!==t.search(" ")&&(t=t.trim().split(/ +/)),V(t)){for(var r=0;r<t.length;r++)Ut.off(t[r],e,i);return Ut}if(G(t)){for(var n in t)Ut.off(n,t[n],e);return Ut}var o;Gt(k,t)?t in P&&-1!==(o=Vt(P[t],e))&&P[t].splice(o,1):Y.remove(s,t,e,i);return Ut},Ut.enableDragging=Ht(function(t){return null!=t?(M.drag=t,Ut):M.drag},"interact.enableDragging is deprecated and will soon be removed."),Ut.enableResizing=Ht(function(t){return null!=t?(M.resize=t,Ut):M.resize},"interact.enableResizing is deprecated and will soon be removed."),Ut.enableGesturing=Ht(function(t){return null!=t?(M.gesture=t,Ut):M.gesture},"interact.enableGesturing is deprecated and will soon be removed."),Ut.eventTypes=k,Ut.debug=function(){var t=v[0]||new Ot;return{interactions:v,target:t.target,dragging:t.dragging,resizing:t.resizing,gesturing:t.gesturing,prepared:t.prepared,matches:t.matches,matchElements:t.matchElements,prevCoords:t.prevCoords,startCoords:t.startCoords,pointerIds:t.pointerIds,pointers:t.pointers,addPointer:F.addPointer,removePointer:F.removePointer,recordPointer:F.recordPointer,snap:t.snapStatus,restrict:t.restrictStatus,inertia:t.inertiaStatus,downTime:t.downTimes[0],downEvent:t.downEvent,downPointer:t.downPointer,prevEvent:t.prevEvent,Interactable:Lt,interactables:m,pointerIsDown:t.pointerIsDown,defaultOptions:x,defaultActionChecker:Ft,actionCursors:C,dragMove:F.dragMove,resizeMove:F.resizeMove,gestureMove:F.gestureMove,pointerUp:F.pointerUp,pointerDown:F.pointerDown,pointerMove:F.pointerMove,pointerHover:F.pointerHover,eventTypes:k,events:Y,globalEvents:P,delegatedEvents:y,prefixedPropREs:$}},Ut.getPointerAverage=mt,Ut.getTouchBBox=vt,Ut.getTouchDistance=ft,Ut.getTouchAngle=yt,Ut.getElementRect=ut,Ut.getElementClientRect=dt,Ut.matchesSelector=Kt,Ut.closest=St,Ut.margin=Ht(function(t){return J(t)?(S=t,Ut):S},"interact.margin is deprecated. Use interact(target).resizable({ margin: number }); instead."),Ut.supportsTouch=function(){return E},Ut.supportsPointerEvent=function(){return b},Ut.stop=function(t){for(var e=v.length-1;e>=0;e--)v[e].stop(t);return Ut},Ut.dynamicDrop=function(t){return Z(t)?(f=t,Ut):f},Ut.pointerMoveTolerance=function(t){return J(t)?(z=t,this):z},Ut.maxInteractions=function(t){return J(t)?(T=t,this):T},Ut.createSnapGrid=function(t){return function(e,i){var r=0,n=0;G(t.offset)&&(r=t.offset.x,n=t.offset.y);var s=Math.round((e-r)/t.x),o=Math.round((i-n)/t.y);return{x:s*t.x+r,y:o*t.y+n,range:t.range}}},Bt(s),I in Element.prototype&&K(Element.prototype[I])||(i=function(t,e,i){for(var r=0,n=(i=i||t.parentNode.querySelectorAll(e)).length;r<n;r++)if(i[r]===t)return!0;return!1}),function(){for(var e=0,i=["ms","moz","webkit","o"],r=0;r<i.length&&!t.requestAnimationFrame;++r)R=t[i[r]+"RequestAnimationFrame"],X=t[i[r]+"CancelAnimationFrame"]||t[i[r]+"CancelRequestAnimationFrame"];R||(R=function(t){var i=(new Date).getTime(),r=Math.max(0,16-(i-e)),n=setTimeout(function(){t(i+r)},r);return e=i+r,n}),X||(X=function(t){clearTimeout(t)})}(),"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=Ut),exports.interact=Ut):"function"==typeof define&&define.amd?define("interact",function(){return Ut}):t.interact=Ut}function L(){}function H(t){if(!t||"object"!=typeof t)return!1;var e=lt(t)||n;return/object|function/.test(typeof e.Element)?t instanceof e.Element:1===t.nodeType&&"string"==typeof t.nodeName}function j(t){return t===n||!(!t||!t.Window)&&t instanceof t.Window}function B(t){return!!t&&t instanceof o}function V(t){return G(t)&&void 0!==typeof t.length&&K(t.splice)}function G(t){return!!t&&"object"==typeof t}function K(t){return"function"==typeof t}function J(t){return"number"==typeof t}function Z(t){return"boolean"==typeof t}function Q(t){return"string"==typeof t}function tt(t){return!!Q(t)&&(s.querySelector(t),!0)}function et(t,e){for(var i in e)t[i]=e[i];return t}function it(t,e){for(var i in e){var r=!1;for(var n in $)if(0===i.indexOf(n)&&$[n].test(i)){r=!0;break}r||(t[i]=e[i])}return t}function rt(t,e){t.page=t.page||{},t.page.x=e.page.x,t.page.y=e.page.y,t.client=t.client||{},t.client.x=e.client.x,t.client.y=e.client.y,t.timeStamp=e.timeStamp}function nt(t,e,i){t.page.x=i.page.x-e.page.x,t.page.y=i.page.y-e.page.y,t.client.x=i.client.x-e.client.x,t.client.y=i.client.y-e.client.y,t.timeStamp=(new Date).getTime()-e.timeStamp;var r=Math.max(t.timeStamp/1e3,.001);t.page.speed=d(t.page.x,t.page.y)/r,t.page.vx=t.page.x/r,t.page.vy=t.page.y/r,t.client.speed=d(t.client.x,t.page.y)/r,t.client.vx=t.client.x/r,t.client.vy=t.client.y/r}function st(t){return t instanceof n.Event||E&&n.Touch&&t instanceof n.Touch}function ot(t,e,i){return t=t||"page",(i=i||{}).x=e[t+"X"],i.y=e[t+"Y"],i}function at(t,e){return e=e||{},O&&st(t)?(ot("screen",t,e),e.x+=n.scrollX,e.y+=n.scrollY):ot("page",t,e),e}function pt(t,e){return e=e||{},O&&st(t)?ot("screen",t,e):ot("client",t,e),e}function ht(t){return J(t.pointerId)?t.pointerId:t.identifier}function ct(t){return t instanceof h?t.correspondingUseElement:t}function lt(t){if(j(t))return t;var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||n}function dt(t){var e=t instanceof a?t.getBoundingClientRect():t.getClientRects()[0];return e&&{left:e.left,right:e.right,top:e.top,bottom:e.bottom,width:e.width||e.right-e.left,height:e.height||e.bottom-e.top}}function ut(t){var e,i=dt(t);if(!_&&i){var r={x:(e=(e=lt(t))||n).scrollX||e.document.documentElement.scrollLeft,y:e.scrollY||e.document.documentElement.scrollTop};i.left+=r.x,i.right+=r.x,i.top+=r.y,i.bottom+=r.y}return i}function gt(t){var e=[];return V(t)?(e[0]=t[0],e[1]=t[1]):"touchend"===t.type?1===t.touches.length?(e[0]=t.touches[0],e[1]=t.changedTouches[0]):0===t.touches.length&&(e[0]=t.changedTouches[0],e[1]=t.changedTouches[1]):(e[0]=t.touches[0],e[1]=t.touches[1]),e}function mt(t){for(var e,i={pageX:0,pageY:0,clientX:0,clientY:0,screenX:0,screenY:0},r=0;r<t.length;r++)for(e in i)i[e]+=t[r][e];for(e in i)i[e]/=t.length;return i}function vt(t){if(t.length||t.touches&&t.touches.length>1){var e=gt(t),i=Math.min(e[0].pageX,e[1].pageX),r=Math.min(e[0].pageY,e[1].pageY);return{x:i,y:r,left:i,top:r,width:Math.max(e[0].pageX,e[1].pageX)-i,height:Math.max(e[0].pageY,e[1].pageY)-r}}}function ft(t,e){var i=(e=e||x.deltaSource)+"X",r=e+"Y",n=gt(t),s=n[0][i]-n[1][i],o=n[0][r]-n[1][r];return d(s,o)}function yt(t,e,i){var r=(i=i||x.deltaSource)+"X",n=i+"Y",s=gt(t),o=s[0][r]-s[1][r],a=s[0][n]-s[1][n],p=180*Math.atan(a/o)/Math.PI;if(J(e)){var h=(p-e)%360;h>315?p-=360+p/360|0:h>135?p-=180+p/360|0:h<-315?p+=360+p/360|0:h<-135&&(p+=180+p/360|0)}return p}function xt(t,e){var i=t?t.options.origin:x.origin;return"parent"===i?i=zt(e):"self"===i?i=t.getRect(e):tt(i)&&(i=St(e,i)||{x:0,y:0}),K(i)&&(i=i(t&&e)),H(i)&&(i=ut(i)),i.x="x"in i?i.x:i.left,i.y="y"in i?i.y:i.top,i}function wt(t,e,i,r){var n=1-t;return n*n*e+2*n*t*i+t*t*r}function Et(t,e,i,r){return-i*(t/=r)*(t-2)+e}function bt(t,e){for(;e;){if(e===t)return!0;e=e.parentNode}return!1}function St(t,e){for(var i=zt(t);H(i);){if(Kt(i,e))return i;i=zt(i)}return null}function zt(t){var e=t.parentNode;if(B(e)){for(;(e=e.host)&&B(e););return e}return e}function Dt(t,e){return t._context===e.ownerDocument||bt(t._context,e)}function Tt(t,e,i){var r=t.options.ignoreFrom;return!(!r||!H(i))&&(Q(r)?Jt(i,r,e):!!H(r)&&bt(r,i))}function Ct(t,e,i){var r=t.options.allowFrom;return!r||!!H(i)&&(Q(r)?Jt(i,r,e):!!H(r)&&bt(r,i))}function Mt(t,e){if(!e)return!1;var i=e.options.drag.axis;return"xy"===t||"xy"===i||i===t}function At(t,e){var i=t.options;return/^resize/.test(e)&&(e="resize"),i[e].snap&&i[e].snap.enabled}function kt(t,e){var i=t.options;return/^resize/.test(e)&&(e="resize"),i[e].restrict&&i[e].restrict.enabled}function Pt(t,e,i){for(var r=t.options,n=r[i.name].max,s=r[i.name].maxPerElement,o=0,a=0,p=0,h=0,c=v.length;h<c;h++){var l=v[h],d=l.prepared.name;if(l.interacting()){if(++o>=T)return!1;if(l.target===t){if((a+=d===i.name|0)>=n)return!1;if(l.element===e&&(p++,d!==i.name||p>=s))return!1}}}return T>0}function Ot(){if(this.target=null,this.element=null,this.dropTarget=null,this.dropElement=null,this.prevDropTarget=null,this.prevDropElement=null,this.prepared={name:null,axis:null,edges:null},this.matches=[],this.matchElements=[],this.inertiaStatus={active:!1,smoothEnd:!1,ending:!1,startEvent:null,upCoords:{},xe:0,ye:0,sx:0,sy:0,t0:0,vx0:0,vys:0,duration:0,resumeDx:0,resumeDy:0,lambda_v0:0,one_ve_v0:0,i:null},K(Function.prototype.bind))this.boundInertiaFrame=this.inertiaFrame.bind(this),this.boundSmoothEndFrame=this.smoothEndFrame.bind(this);else{var t=this;this.boundInertiaFrame=function(){return t.inertiaFrame()},this.boundSmoothEndFrame=function(){return t.smoothEndFrame()}}this.activeDrops={dropzones:[],elements:[],rects:[]},this.pointers=[],this.pointerIds=[],this.downTargets=[],this.downTimes=[],this.holdTimers=[],this.prevCoords={page:{x:0,y:0},client:{x:0,y:0},timeStamp:0},this.curCoords={page:{x:0,y:0},client:{x:0,y:0},timeStamp:0},this.startCoords={page:{x:0,y:0},client:{x:0,y:0},timeStamp:0},this.pointerDelta={page:{x:0,y:0,vx:0,vy:0,speed:0},client:{x:0,y:0,vx:0,vy:0,speed:0},timeStamp:0},this.downEvent=null,this.downPointer={},this._eventTarget=null,this._curEventTarget=null,this.prevEvent=null,this.tapTime=0,this.prevTap=null,this.startOffset={left:0,right:0,top:0,bottom:0},this.restrictOffset={left:0,right:0,top:0,bottom:0},this.snapOffsets=[],this.gesture={start:{x:0,y:0},startDistance:0,prevDistance:0,distance:0,scale:1,startAngle:0,prevAngle:0},this.snapStatus={x:0,y:0,dx:0,dy:0,realX:0,realY:0,snappedX:0,snappedY:0,targets:[],locked:!1,changed:!1},this.restrictStatus={dx:0,dy:0,restrictedX:0,restrictedY:0,snap:null,restricted:!1,changed:!1},this.restrictStatus.snap=this.snapStatus,this.pointerIsDown=!1,this.pointerWasMoved=!1,this.gesturing=!1,this.dragging=!1,this.resizing=!1,this.resizeAxes="xy",this.mouse=!1,v.push(this)}function _t(t,e,i){var r,n=0,s=v.length,o=/mouse/i.test(t.pointerType||e)||4===t.pointerType,a=ht(t);if(/down|start/i.test(e))for(n=0;n<s;n++){var p=i;if((r=v[n]).inertiaStatus.active&&r.target.options[r.prepared.name].inertia.allowResume&&r.mouse===o)for(;p;){if(p===r.element)return r;p=zt(p)}}if(o||!E&&!b){for(n=0;n<s;n++)if(v[n].mouse&&!v[n].inertiaStatus.active)return v[n];for(n=0;n<s;n++)if(v[n].mouse&&(!/down/.test(e)||!v[n].inertiaStatus.active))return r;return(r=new Ot).mouse=!0,r}for(n=0;n<s;n++)if(Gt(v[n].pointerIds,a))return v[n];if(/up|end|out/i.test(e))return null;for(n=0;n<s;n++)if((!(r=v[n]).prepared.name||r.target.options.gesture.enabled)&&!r.interacting()&&(o||!r.mouse))return r;return new Ot}function It(t){return function(e){var i,r,n=ct(e.path?e.path[0]:e.target),s=ct(e.currentTarget);if(E&&/touch/.test(e.type))for(D=(new Date).getTime(),r=0;r<e.changedTouches.length;r++){var o=e.changedTouches[r];(i=_t(o,e.type,n))&&(i._updateEventTargets(n,s),i[t](o,e,n,s))}else{if(!b&&/mouse/.test(e.type)){for(r=0;r<v.length;r++)if(!v[r].mouse&&v[r].pointerIsDown)return;if((new Date).getTime()-D<500)return}if(!(i=_t(e,e.type,n)))return;i._updateEventTargets(n,s),i[t](e,e,n,s)}}}function Rt(t,e,i,r,n,s){var o,a,p=t.target,h=t.snapStatus,c=t.restrictStatus,l=t.pointers,u=(p&&p.options||x).deltaSource,g=u+"X",m=u+"Y",v=p?p.options:x,f=xt(p,n),y="start"===r,w="end"===r,E=y?t.startCoords:t.curCoords;n=n||t.element,a=et({},E.page),o=et({},E.client),a.x-=f.x,a.y-=f.y,o.x-=f.x,o.y-=f.y;var b=v[i].snap&&v[i].snap.relativePoints;!At(p,i)||y&&b&&b.length||(this.snap={range:h.range,locked:h.locked,x:h.snappedX,y:h.snappedY,realX:h.realX,realY:h.realY,dx:h.dx,dy:h.dy},h.locked&&(a.x+=h.dx,a.y+=h.dy,o.x+=h.dx,o.y+=h.dy)),!kt(p,i)||y&&v[i].restrict.elementRect||!c.restricted||(a.x+=c.dx,a.y+=c.dy,o.x+=c.dx,o.y+=c.dy,this.restrict={dx:c.dx,dy:c.dy}),this.pageX=a.x,this.pageY=a.y,this.clientX=o.x,this.clientY=o.y,this.x0=t.startCoords.page.x-f.x,this.y0=t.startCoords.page.y-f.y,this.clientX0=t.startCoords.client.x-f.x,this.clientY0=t.startCoords.client.y-f.y,this.ctrlKey=e.ctrlKey,this.altKey=e.altKey,this.shiftKey=e.shiftKey,this.metaKey=e.metaKey,this.button=e.button,this.buttons=e.buttons,this.target=n,this.t0=t.downTimes[0],this.type=i+(r||""),this.interaction=t,this.interactable=p;var S=t.inertiaStatus;if(S.active&&(this.detail="inertia"),s&&(this.relatedTarget=s),w?"client"===u?(this.dx=o.x-t.startCoords.client.x,this.dy=o.y-t.startCoords.client.y):(this.dx=a.x-t.startCoords.page.x,this.dy=a.y-t.startCoords.page.y):y?(this.dx=0,this.dy=0):"inertiastart"===r?(this.dx=t.prevEvent.dx,this.dy=t.prevEvent.dy):"client"===u?(this.dx=o.x-t.prevEvent.clientX,this.dy=o.y-t.prevEvent.clientY):(this.dx=a.x-t.prevEvent.pageX,this.dy=a.y-t.prevEvent.pageY),t.prevEvent&&"inertia"===t.prevEvent.detail&&!S.active&&v[i].inertia&&v[i].inertia.zeroResumeDelta&&(S.resumeDx+=this.dx,S.resumeDy+=this.dy,this.dx=this.dy=0),"resize"===i&&t.resizeAxes?v.resize.square?("y"===t.resizeAxes?this.dx=this.dy:this.dy=this.dx,this.axes="xy"):(this.axes=t.resizeAxes,"x"===t.resizeAxes?this.dy=0:"y"===t.resizeAxes&&(this.dx=0)):"gesture"===i&&(this.touches=[l[0],l[1]],y?(this.distance=ft(l,u),this.box=vt(l),this.scale=1,this.ds=0,this.angle=yt(l,void 0,u),this.da=0):w||e instanceof Rt?(this.distance=t.prevEvent.distance,this.box=t.prevEvent.box,this.scale=t.prevEvent.scale,this.ds=this.scale-1,this.angle=t.prevEvent.angle,this.da=this.angle-t.gesture.startAngle):(this.distance=ft(l,u),this.box=vt(l),this.scale=this.distance/t.gesture.startDistance,this.angle=yt(l,t.gesture.prevAngle,u),this.ds=this.scale-t.gesture.prevScale,this.da=this.angle-t.gesture.prevAngle)),y)this.timeStamp=t.downTimes[0],this.dt=0,this.duration=0,this.speed=0,this.velocityX=0,this.velocityY=0;else if("inertiastart"===r)this.timeStamp=t.prevEvent.timeStamp,this.dt=t.prevEvent.dt,this.duration=t.prevEvent.duration,this.speed=t.prevEvent.speed,this.velocityX=t.prevEvent.velocityX,this.velocityY=t.prevEvent.velocityY;else if(this.timeStamp=(new Date).getTime(),this.dt=this.timeStamp-t.prevEvent.timeStamp,this.duration=this.timeStamp-t.downTimes[0],e instanceof Rt){var z=this[g]-t.prevEvent[g],D=this[m]-t.prevEvent[m],T=this.dt/1e3;this.speed=d(z,D)/T,this.velocityX=z/T,this.velocityY=D/T}else this.speed=t.pointerDelta[u].speed,this.velocityX=t.pointerDelta[u].vx,this.velocityY=t.pointerDelta[u].vy;if((w||"inertiastart"===r)&&t.prevEvent.speed>600&&this.timeStamp-t.prevEvent.timeStamp<150){var C=180*Math.atan2(t.prevEvent.velocityY,t.prevEvent.velocityX)/Math.PI;C<0&&(C+=360);var M=112.5<=C&&C<247.5,A=202.5<=C&&C<337.5,k=!M&&(292.5<=C||C<67.5),P=!A&&22.5<=C&&C<157.5;this.swipe={up:A,down:P,left:M,right:k,angle:C,speed:t.prevEvent.speed,velocity:{x:t.prevEvent.velocityX,y:t.prevEvent.velocityY}}}}function Xt(){this.originalEvent.preventDefault()}function Yt(t){var e="";if("drag"===t.name&&(e=C.drag),"resize"===t.name)if(t.axis)e=C[t.name+t.axis];else if(t.edges){for(var i="resize",r=["top","bottom","left","right"],n=0;n<4;n++)t.edges[r[n]]&&(i+=r[n]);e=C[i]}return e}function $t(t,e,i,r,n,s,o){if(!e)return!1;if(!0===e){var a=J(s.width)?s.width:s.right-s.left,p=J(s.height)?s.height:s.bottom-s.top;if(a<0&&("left"===t?t="right":"right"===t&&(t="left")),p<0&&("top"===t?t="bottom":"bottom"===t&&(t="top")),"left"===t)return i.x<(a>=0?s.left:s.right)+o;if("top"===t)return i.y<(p>=0?s.top:s.bottom)+o;if("right"===t)return i.x>(a>=0?s.right:s.left)-o;if("bottom"===t)return i.y>(p>=0?s.bottom:s.top)-o}return!!H(r)&&(H(e)?e===r:Jt(r,e,n))}function Ft(t,e,i){var r,n=this.getRect(i),s=!1,o=null,a=null,p=et({},e.curCoords.page),h=this.options;if(!n)return null;if(M.resize&&h.resize.enabled){var c=h.resize;if(r={left:!1,right:!1,top:!1,bottom:!1},G(c.edges)){for(var l in r)r[l]=$t(l,c.edges[l],p,e._eventTarget,i,n,c.margin||S);r.left=r.left&&!r.right,r.top=r.top&&!r.bottom,s=r.left||r.right||r.top||r.bottom}else{var d="y"!==h.resize.axis&&p.x>n.right-S,u="x"!==h.resize.axis&&p.y>n.bottom-S;s=d||u,a=(d?"x":"")+(u?"y":"")}}return o=s?"resize":M.drag&&h.drag.enabled?"drag":null,M.gesture&&e.pointerIds.length>=2&&!e.dragging&&!e.resizing&&(o="gesture"),o?{name:o,axis:a,edges:r}:null}function Nt(t,e){if(!G(t))return null;var i=t.name,r=e.options;return("resize"===i&&r.resize.enabled||"drag"===i&&r.drag.enabled||"gesture"===i&&r.gesture.enabled)&&M[i]?("resize"!==i&&"resizeyx"!==i||(i="resizexy"),t):null}function Wt(t,e){var i={},r=y[t.type],n=ct(t.path?t.path[0]:t.target),s=n;for(var o in e=!!e,t)i[o]=t[o];for(i.originalEvent=t,i.preventDefault=Xt;H(s);){for(var a=0;a<r.selectors.length;a++){var p=r.selectors[a],h=r.contexts[a];if(Kt(s,p)&&bt(h,n)&&bt(h,s)){var c=r.listeners[a];i.currentTarget=s;for(var l=0;l<c.length;l++)c[l][1]===e&&c[l][0](i)}}s=zt(s)}}function qt(t){return Wt.call(this,t,!0)}function Ut(t,e){return m.get(t,e)||new Lt(t,e)}function Lt(t,i){var r;if(this._element=t,this._iEvents=this._iEvents||{},tt(t)){this.selector=t;var s=i&&i.context;r=s?lt(s):n,s&&(r.Node?s instanceof r.Node:H(s)||s===r.document)&&(this._context=s)}else r=lt(t),H(t)&&(b?(Y.add(this._element,e.down,F.pointerDown),Y.add(this._element,e.move,F.pointerHover)):(Y.add(this._element,"mousedown",F.pointerDown),Y.add(this._element,"mousemove",F.pointerHover),Y.add(this._element,"touchstart",F.pointerDown),Y.add(this._element,"touchmove",F.pointerHover)));this._doc=r.document,Gt(g,this._doc)||Bt(this._doc),m.push(this),this.set(i)}function Ht(t,e){var i=!1;return function(){return i||(n.console.warn(e),i=!0),t.apply(this,arguments)}}function jt(t){for(var e=0;e<v.length;e++)v[e].pointerEnd(t,t)}function Bt(t){if(!Gt(g,t)){var i=t.defaultView||t.parentWindow;for(var r in y)Y.add(t,r,Wt),Y.add(t,r,qt,!0);b?(e=l===i.MSPointerEvent?{up:"MSPointerUp",down:"MSPointerDown",over:"mouseover",out:"mouseout",move:"MSPointerMove",cancel:"MSPointerCancel"}:{up:"pointerup",down:"pointerdown",over:"pointerover",out:"pointerout",move:"pointermove",cancel:"pointercancel"},Y.add(t,e.down,F.selectorDown),Y.add(t,e.move,F.pointerMove),Y.add(t,e.over,F.pointerOver),Y.add(t,e.out,F.pointerOut),Y.add(t,e.up,F.pointerUp),Y.add(t,e.cancel,F.pointerCancel),Y.add(t,e.move,F.autoScrollMove)):(Y.add(t,"mousedown",F.selectorDown),Y.add(t,"mousemove",F.pointerMove),Y.add(t,"mouseup",F.pointerUp),Y.add(t,"mouseover",F.pointerOver),Y.add(t,"mouseout",F.pointerOut),Y.add(t,"touchstart",F.selectorDown),Y.add(t,"touchmove",F.pointerMove),Y.add(t,"touchend",F.pointerUp),Y.add(t,"touchcancel",F.pointerCancel),Y.add(t,"mousemove",F.autoScrollMove),Y.add(t,"touchmove",F.autoScrollMove)),Y.add(i,"blur",jt);try{if(i.frameElement){var n=i.frameElement.ownerDocument,s=n.defaultView;Y.add(n,"mouseup",F.pointerEnd),Y.add(n,"touchend",F.pointerEnd),Y.add(n,"touchcancel",F.pointerEnd),Y.add(n,"pointerup",F.pointerEnd),Y.add(n,"MSPointerUp",F.pointerEnd),Y.add(s,"blur",jt)}}catch(t){Ut.windowParentError=t}Y.add(t,"dragstart",function(t){for(var e=0;e<v.length;e++){var i=v[e];if(i.element&&(i.element===t.target||bt(i.element,t.target)))return void i.checkAndPreventDefault(t,i.target,i.element)}}),Y.useAttachEvent&&(Y.add(t,"selectstart",function(t){var e=v[0];e.currentAction()&&e.checkAndPreventDefault(t)}),Y.add(t,"dblclick",It("ie8Dblclick"))),g.push(t)}}function Vt(t,e){for(var i=0,r=t.length;i<r;i++)if(t[i]===e)return i;return-1}function Gt(t,e){return-1!==Vt(t,e)}function Kt(e,r,s){return i?i(e,r,s):(n!==t&&(r=r.replace(/\/deep\//g," ")),e[I](r))}function Jt(t,e,i){for(;H(t);){if(Kt(t,e))return!0;if((t=zt(t))===i)return Kt(t,e)}return!1}}("undefined"==typeof window?void 0:window),function(t){var e=!1;if("function"==typeof define&&define.amd&&(define(t),e=!0),"object"==typeof exports&&(module.exports=t(),e=!0),!e){var i=window.Cookies,r=window.Cookies=t();r.noConflict=function(){return window.Cookies=i,r}}}(function(){function t(){for(var t=0,e={};t<arguments.length;t++){var i=arguments[t];for(var r in i)e[r]=i[r]}return e}return function e(i){function r(e,n,s){var o;if("undefined"!=typeof document){if(arguments.length>1){if("number"==typeof(s=t({path:"/"},r.defaults,s)).expires){var a=new Date;a.setMilliseconds(a.getMilliseconds()+864e5*s.expires),s.expires=a}s.expires=s.expires?s.expires.toUTCString():"";try{o=JSON.stringify(n),/^[\{\[]/.test(o)&&(n=o)}catch(t){}n=i.write?i.write(n,e):encodeURIComponent(String(n)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),e=(e=(e=encodeURIComponent(String(e))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape);var p="";for(var h in s)s[h]&&(p+="; "+h,!0!==s[h]&&(p+="="+s[h]));return document.cookie=e+"="+n+p}e||(o={});for(var c=document.cookie?document.cookie.split("; "):[],l=/(%[0-9A-Z]{2})+/g,d=0;d<c.length;d++){var u=c[d].split("="),g=u.slice(1).join("=");this.json||'"'!==g.charAt(0)||(g=g.slice(1,-1));try{var m=u[0].replace(l,decodeURIComponent);if(g=i.read?i.read(g,m):i(g,m)||g.replace(l,decodeURIComponent),this.json)try{g=JSON.parse(g)}catch(t){}if(e===m){o=g;break}e||(o[m]=g)}catch(t){}}return o}}return r.set=r,r.get=function(t){return r.call(r,t)},r.getJSON=function(){return r.apply({json:!0},[].slice.call(arguments))},r.defaults={},r.remove=function(e,i){r(e,"",t(i,{expires:-1}))},r.withConverter=e,r}(function(){})});class wasWM{loadWindowManagerIcons(t){var e=this;e.icons=[],$.get(t,function(i){var r=0,n={},s=Cookies.get("window-manager-icons");s&&(n=JSON.parse(s)),$.each(i,function(i,s){/\.html$/.test(s)&&$.get(t+"/"+s,function(i){if("icon"===(i=$(i).get(0)).getAttribute("data-type")){var o=i.getAttribute("data-target");if(e.icons.push(o),i.addEventListener("dblclick",()=>{e.openWindowManagerWindow(o,t+"/"+s)}),void 0!==n[o]){var a=n[o].x,p=n[o].y;return i.style.webkitTransform=i.style.transform="translate("+a+"px, "+p+"px)",i.setAttribute("data-x",a),i.setAttribute("data-y",p),void $("#window-manager-desktop").append(i)}i.style.webkitTransform=i.style.transform="translate("+r+"px, 0px)",i.setAttribute("data-x",r),i.setAttribute("data-y",0),$("#window-manager-desktop").append(i),r+=64}})})})}openWindowManagerWindow(t,e){if(!$("#"+t).length){var i=$("#"+t+"-window-manager-icon-image").attr("src");$("#"+t+"-window-manager-icon-image").attr("src","/img/loader.gif"),$("#"+t+"-window-manager-icon").prop("disabled",!0),$.get(e,function(e){e=$(e).get().filter(e=>"window"===$(e).attr("data-type")&&$(e).attr("id")===t).pop();var i=[];$(e).find("script").each(function(){var t=$(this).attr("src");void 0!==t&&(i[t]=$(this))}),$(document).find("script").each(function(){var t=$(this).attr("src");void 0!==i[t]&&i[t].remove()});var r=Cookies.get("window-manager-windows");if(r){var n=JSON.parse(r);if(void 0!==n[t]){var s=n[t].x,o=n[t].y,a=$(e).find(".window-manager-window").get(0);a.style.webkitTransform=a.style.transform="translate("+s+"px, "+o+"px)",a.setAttribute("data-x",s),a.setAttribute("data-y",o)}}$(e).hide().appendTo("#window-manager-desktop").fadeIn(750)}).done(function(e){$("#"+t+"-window-manager-icon-image").attr("src",i),$("#"+t+"-window-manager-icon").prop("disabled",!1)})}}static getTopWindowIndex(){return Math.max.apply(null,$.map($(".window-manager-window"),function(t,e){if("static"!==$(t).css("position"))return parseInt($(t).css("z-index"))||1}))}static dragMoveListener(t){var e,i,r=t.target,n=(parseFloat(r.getAttribute("data-x"))||0)+t.dx,s=(parseFloat(r.getAttribute("data-y"))||0)+t.dy;r.style.webkitTransform=r.style.transform="translate("+n+"px, "+s+"px)",r.setAttribute("data-x",n),r.setAttribute("data-y",s),r.classList.contains("window-manager-window")&&(e={},(i=Cookies.get("window-manager-windows"))&&(e=JSON.parse(i)),e[$(t.target).data("target")]={x:n,y:s},Cookies.set("window-manager-windows",e,{path:""})),r.classList.contains("window-manager-icon")&&(e={},(i=Cookies.get("window-manager-icons"))&&(e=JSON.parse(i)),e[$(t.target).data("target")]={x:n,y:s},Cookies.set("window-manager-icons",e,{path:""}))}constructor(t){this.icons=[],interact(".window-manager-window").draggable({inertia:!0,restrict:{restriction:$("#window-manager-desktop").get(0),endOnly:!0,elementRect:{top:0,left:0,bottom:1,right:1}},autoScroll:!0,onmove:wasWM.dragMoveListener,onend:function(t){t.target.style.opacity=1},onstart:function(t){t.target.style.zIndex=wasWM.getTopWindowIndex()+1,t.target.style.opacity=.5}}).allowFrom(".panel-heading"),interact(".window-manager-icon").draggable({inertia:!1,restrict:{restriction:$("#window-manager-desktop").get(0),endOnly:!0,elementRect:{top:0,left:0,bottom:1,right:1}},snap:{targets:[],range:1/0,relativePoints:[{x:0,y:0}]},autoScroll:!0,onmove:wasWM.dragMoveListener,onend:function(t){t.target.style.opacity=1},onstart:function(t){t.target.style.opacity=.5}}),$(document).on("click",".window-manager-close-button",function(t){var e=$("#"+$(this).data("target"));e.fadeOut(750,function(){e.remove()})}),$(document).on("click",".window-manager-window",function(t){$(t.target).closest(".window-manager-window").css("z-index",wasWM.getTopWindowIndex()+1)}),window.dragMoveListener=wasWM.dragMoveListener,this.loadWindowManagerIcons(t)}}wasWM.prototype.icons=[];
/trunk/lib/wm.js
@@ -69,7 +69,7 @@
}
 
// Open a window manager window.
static openWindowManagerWindow(nucleon, file) {
openWindowManagerWindow(nucleon, file) {
// If the nucleon already exists, then do not append the content again.
if($('#' + nucleon).length) {
return;