{"version":3,"sources":["webpack:///./node_modules/vuedraggable/dist/vuedraggable.umd.min.js","webpack:///./node_modules/sortablejs/Sortable.js"],"names":["t","n","module","exports","self","e","r","o","i","l","call","m","c","d","Object","defineProperty","enumerable","get","Symbol","toStringTag","value","__esModule","create","bind","prototype","hasOwnProperty","p","s","u","String","a","f","length","charCodeAt","charAt","slice","this","global","ignoreCase","multiline","unicode","sticky","Math","max","min","1654","_t","_i","done","1691","split","S","isArray","toString","valueOf","TypeError","document","createElement","exec","groups","replace","apply","arguments","v","constructor","h","b","g","y","RegExp","callee","inspectSource","join","Function","store","P","F","includes","indexOf","keys","x","w","O","j","C","_","M","T","E","A","I","entries","next","name","values","documentElement","propertyIsEnumerable","3702","Array","ceil","floor","isNaN","4588","configurable","4630","writable","from","5147","5168","5176","assign","source","index","getPrototypeOf","5537","push","version","mode","copyright","5559","__e","G","B","U","core","W","R","random","concat","virtual","6762","6821","7726","window","__g","getIteratorMethod","getIterator","defineProperties","8378","8436","9003","9138","9306","forEach","9427","isIterable","getOwnPropertySymbols","a159","style","display","appendChild","src","contentWindow","open","write","close","a352","a3c3","a481","lastIndex","a4bb","a745","aae3","aebd","b0c5","target","proto","forced","b0dc","b447","b8e3","be13","c366","c367","_k","Arguments","c3a1","c649","console","toUpperCase","parentElement","removeChild","children","nextSibling","insertBefore","c69a","c8ba","c8bb","ca5a","cb7c","ce7e","d2c8","d2d5","d3f4","d864","d8e8","d9f6","dbdb","dc62","e4ae","e53d","e6f3","f410","f559","startsWith","f772","fa5b","fb15","currentScript","match","map","elm","filter","$nextTick","$emit","toLowerCase","realList","componentOptions","tag","L","header","footer","headerOffset","footerOffset","reduce","on","props","attrs","$","k","D","V","options","list","type","required","default","noTransitionOnDrag","Boolean","clone","element","move","componentData","N","inheritAttrs","data","transitionMode","noneFunctionalComponentMode","init","render","$slots","$attrs","getTag","created","error","warn","mounted","$el","nodeName","Error","onMove","onDragMove","draggable","_sortable","rootContainer","computeIndexes","beforeDestroy","destroy","computed","watch","handler","updateOptions","deep","methods","option","getChildrenNodes","$children","child","visibleIndexes","getUnderlyingVm","getUnderlyingPotencialDraggableComponent","__vue__","$options","_componentTag","$parent","emitChanges","alterList","spliceList","splice","updatePosition","getRelatedContextFromMoveEvent","to","related","component","getVmIndex","getComponent","componentInstance","resetTransitionData","kept","onDragStart","context","item","_underlying_vm_","onDragAdd","newIndex","added","onDragRemove","oldIndex","pullMode","removed","onDragUpdate","moved","updateProperty","computeFutureIndex","willInsertAfter","futureIndex","relatedContext","draggedContext","onDragEnd","Vue","factory","dragEl","parentEl","ghostEl","cloneEl","rootEl","nextEl","lastDownEl","scrollEl","scrollParentEl","scrollCustomFn","activeGroup","putSortable","pointerElemChangedInterval","lastPointerElemX","lastPointerElemY","tapEvt","touchEvt","lastTarget","lastDirection","lastMode","targetMoveDistance","ghostRelativeParent","realDragElRect","autoScrolls","scrolling","awaitingDragStarted","ignoreNextClick","sortables","pastFirstInvertThresh","isCircumstantialInvert","ghostRelativeParentInitialScroll","R_SPACE","expando","Date","getTime","win","parseInt","setTimeout","jQuery","Zepto","Polymer","captureMode","capture","passive","IE11OrLess","navigator","userAgent","Edge","FireFox","Safari","IOS","PositionGhostAbsolutely","CSSFloatProperty","supportDraggable","supportCssPointerEvents","el","cssText","pointerEvents","_silent","_alignedSilent","abs","savedInputChecked","_detectDirection","elCSS","_css","elWidth","width","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","child1","_getChild","child2","firstChildCSS","secondChildCSS","firstChildWidth","marginLeft","marginRight","_getRect","secondChildWidth","flexDirection","gridTemplateColumns","float","touchingSideChild2","clear","_detectNearestEmptySortable","_lastChild","rect","threshold","emptyInsertThreshold","insideHorizontally","left","right","insideVertically","top","bottom","_isClientInRowColumn","axis","targetRect","targetS1Opp","targetS2Opp","mouseOnOppAxis","_isElInRowColumn","el1","el2","el1Rect","el2Rect","el1S1Opp","el1S2Opp","el1OppLength","height","el2S1Opp","el2S2Opp","el2OppLength","_getParentAutoScrollElement","includeSelf","getBoundingClientRect","_getWindowScrollingElement","elem","gotSelf","clientWidth","scrollWidth","clientHeight","scrollHeight","elemCSS","overflowX","overflowY","body","parentNode","scrollingElement","_scrollBy","scrollLeft","scrollTop","_autoScroll","_throttle","evt","isFallback","scroll","_this","sens","scrollSensitivity","speed","scrollSpeed","clientX","clientY","winScroller","scrollThisInstance","_clearAutoScrolls","scrollFn","layersOut","currentParent","css","vx","vy","canScrollX","canScrollY","scrollPosX","scrollPosY","clearInterval","pid","setInterval","layer","Sortable","active","_emulateDragOver","_onTouchMove","scrollOffsetY","scrollOffsetX","bubbleScroll","autoScroll","_prepareGroup","toFn","pull","sameGroup","group","otherGroup","originalGroup","checkPull","checkPut","put","revertClone","_checkAlignment","_computeIsAligned","_isTrueParentSortable","trueParent","_artificalBubble","sortable","originalEvt","method","nextParent","_extend","artificialBubble","_hideGhostForTarget","_unhideGhostForTarget","addEventListener","preventDefault","stopPropagation","stopImmediatePropagation","_throttleTimeout","nearestEmptyInsertDetectEvent","touches","nearest","_onDragOver","nodeType","defaults","sort","disabled","handle","test","swapThreshold","invertSwap","invertedSwapThreshold","removeCloneOnHide","direction","ghostClass","chosenClass","dragClass","ignore","preventOnFilter","animation","easing","setData","dataTransfer","textContent","dropBubble","dragoverBubble","dataIdAttr","delay","touchStartThreshold","devicePixelRatio","forceFallback","fallbackClass","fallbackOnBody","fallbackTolerance","fallbackOffset","supportPointer","fn","nativeDraggable","_on","_onTapStart","_closest","selector","ctx","includeCTX","_matches","substring","_getParentOrHost","host","_globalDragOver","dropEffect","cancelable","event","_off","removeEventListener","_toggleClass","state","classList","className","prop","val","defaultView","getComputedStyle","currentStyle","_matrix","appliedTransforms","transform","DOMMatrix","WebKitCSSMatrix","CSSMatrix","_find","tagName","iterator","getElementsByTagName","_dispatchEvent","targetEl","toEl","fromEl","startIndex","onName","substr","CustomEvent","createEvent","initEvent","bubbles","originalEvent","lastPutMode","undefined","dispatchEvent","_onMove","dragRect","retVal","onMoveFn","dragged","draggedRect","relatedRect","_disableDraggable","_unsilent","childNum","currentChild","last","lastElementChild","previousElementSibling","_ghostIsLast","elRect","mouseOnAxis","targetS2","spacer","_getSwapDirection","isLastTarget","targetLength","targetS1","invert","_getInsertDirection","dragElIndex","_index","targetIndex","_generateId","str","href","sum","matches","msMatchesSelector","webkitMatchesSelector","callback","ms","args","_cancelThrottle","clearTimeout","dst","key","_clone","dom","cloneNode","_saveInputCheckedState","root","inputs","idx","checked","_nextTick","_cancelNextTick","id","adjustForTransform","container","adjustForFixed","innerHeight","innerWidth","containerRect","matrix","scaleX","scaleY","_isScrolledPast","side","parent","elSide","visible","parentSide","_getRelativeScrollOffset","offsetLeft","offsetTop","elementFromPoint","sortableMouseAligned","_getDirection","touch","originalTarget","shadowRoot","path","composedPath","button","isContentEditable","some","criteria","trim","_prepareDragStart","_handleAutoScroll","fallback","ogElemScroller","newElem","dragStartFn","ownerDocument","_lastX","_lastY","transition","_disableDelayedDragEvents","_triggerDragStart","_onDrop","_disableDelayedDrag","_delayedDragTouchMoveHandler","_dragStartTimer","pointerType","_onDragStart","selection","empty","getSelection","removeAllRanges","err","_dragStarted","_appendGhost","_nulling","forAutoScroll","inserted","relativeScrollOffset","dx","dy","translate3d","ghostRelativeParentRect","_hideClone","_cloneId","_loopId","effectAllowed","_dragStartId","revert","activeSortable","isOwner","canSort","animated","completed","contains","elLastChild","_showClone","changed","targetBeforeFirstSwap","aligned","differentLevel","side1","scrolledPastTop","scrollBefore","nextElementSibling","after","moveVector","insertion","_animate","prevRect","currentRect","offsetWidth","_offUpEvents","save","handleEvent","toArray","order","getAttribute","items","set","closest","querySelectorAll","removeAttribute","cloneHidden","utils","off","find","is","extend","throttle","toggleClass","nextTick","cancelNextTick","detectDirection","getChild"],"mappings":"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","file":"js/chunk-70f339e8.9f66ed5b.js","sourcesContent":["(function(t,n){\"object\"===typeof exports&&\"object\"===typeof module?module.exports=n(require(\"sortablejs\")):\"function\"===typeof define&&define.amd?define([\"sortablejs\"],n):\"object\"===typeof exports?exports[\"vuedraggable\"]=n(require(\"sortablejs\")):t[\"vuedraggable\"]=n(t[\"Sortable\"])})(\"undefined\"!==typeof self?self:this,function(t){return function(t){var n={};function e(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,e),o.l=!0,o.exports}return e.m=t,e.c=n,e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:r})},e.r=function(t){\"undefined\"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},e.t=function(t,n){if(1&n&&(t=e(t)),8&n)return t;if(4&n&&\"object\"===typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(e.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:t}),2&n&&\"string\"!=typeof t)for(var o in t)e.d(r,o,function(n){return t[n]}.bind(null,o));return r},e.n=function(t){var n=t&&t.__esModule?function(){return t[\"default\"]}:function(){return t};return e.d(n,\"a\",n),n},e.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},e.p=\"\",e(e.s=\"fb15\")}({\"02f4\":function(t,n,e){var r=e(\"4588\"),o=e(\"be13\");t.exports=function(t){return function(n,e){var i,u,c=String(o(n)),a=r(e),f=c.length;return a<0||a>=f?t?\"\":void 0:(i=c.charCodeAt(a),i<55296||i>56319||a+1===f||(u=c.charCodeAt(a+1))<56320||u>57343?t?c.charAt(a):i:t?c.slice(a,a+2):u-56320+(i-55296<<10)+65536)}}},\"0390\":function(t,n,e){\"use strict\";var r=e(\"02f4\")(!0);t.exports=function(t,n,e){return n+(e?r(t,n).length:1)}},\"07e3\":function(t,n){var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},\"0bfb\":function(t,n,e){\"use strict\";var r=e(\"cb7c\");t.exports=function(){var t=r(this),n=\"\";return t.global&&(n+=\"g\"),t.ignoreCase&&(n+=\"i\"),t.multiline&&(n+=\"m\"),t.unicode&&(n+=\"u\"),t.sticky&&(n+=\"y\"),n}},\"0fc9\":function(t,n,e){var r=e(\"3a38\"),o=Math.max,i=Math.min;t.exports=function(t,n){return t=r(t),t<0?o(t+n,0):i(t,n)}},1654:function(t,n,e){\"use strict\";var r=e(\"71c1\")(!0);e(\"30f1\")(String,\"String\",function(t){this._t=String(t),this._i=0},function(){var t,n=this._t,e=this._i;return e>=n.length?{value:void 0,done:!0}:(t=r(n,e),this._i+=t.length,{value:t,done:!1})})},1691:function(t,n){t.exports=\"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")},\"1af6\":function(t,n,e){var r=e(\"63b6\");r(r.S,\"Array\",{isArray:e(\"9003\")})},\"1bc3\":function(t,n,e){var r=e(\"f772\");t.exports=function(t,n){if(!r(t))return t;var e,o;if(n&&\"function\"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;if(\"function\"==typeof(e=t.valueOf)&&!r(o=e.call(t)))return o;if(!n&&\"function\"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;throw TypeError(\"Can't convert object to primitive value\")}},\"1ec9\":function(t,n,e){var r=e(\"f772\"),o=e(\"e53d\").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},\"20fd\":function(t,n,e){\"use strict\";var r=e(\"d9f6\"),o=e(\"aebd\");t.exports=function(t,n,e){n in t?r.f(t,n,o(0,e)):t[n]=e}},\"214f\":function(t,n,e){\"use strict\";e(\"b0c5\");var r=e(\"2aba\"),o=e(\"32e9\"),i=e(\"79e5\"),u=e(\"be13\"),c=e(\"2b4c\"),a=e(\"520a\"),f=c(\"species\"),s=!i(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:\"7\"},t},\"7\"!==\"\".replace(t,\"$\")}),l=function(){var t=/(?:)/,n=t.exec;t.exec=function(){return n.apply(this,arguments)};var e=\"ab\".split(t);return 2===e.length&&\"a\"===e[0]&&\"b\"===e[1]}();t.exports=function(t,n,e){var p=c(t),d=!i(function(){var n={};return n[p]=function(){return 7},7!=\"\"[t](n)}),v=d?!i(function(){var n=!1,e=/a/;return e.exec=function(){return n=!0,null},\"split\"===t&&(e.constructor={},e.constructor[f]=function(){return e}),e[p](\"\"),!n}):void 0;if(!d||!v||\"replace\"===t&&!s||\"split\"===t&&!l){var h=/./[p],b=e(u,p,\"\"[t],function(t,n,e,r,o){return n.exec===a?d&&!o?{done:!0,value:h.call(n,e,r)}:{done:!0,value:t.call(e,n,r)}:{done:!1}}),g=b[0],y=b[1];r(String.prototype,t,g),o(RegExp.prototype,p,2==n?function(t,n){return y.call(t,this,n)}:function(t){return y.call(t,this)})}}},\"230e\":function(t,n,e){var r=e(\"d3f4\"),o=e(\"7726\").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},\"23c6\":function(t,n,e){var r=e(\"2d95\"),o=e(\"2b4c\")(\"toStringTag\"),i=\"Arguments\"==r(function(){return arguments}()),u=function(t,n){try{return t[n]}catch(e){}};t.exports=function(t){var n,e,c;return void 0===t?\"Undefined\":null===t?\"Null\":\"string\"==typeof(e=u(n=Object(t),o))?e:i?r(n):\"Object\"==(c=r(n))&&\"function\"==typeof n.callee?\"Arguments\":c}},\"241e\":function(t,n,e){var r=e(\"25eb\");t.exports=function(t){return Object(r(t))}},\"25eb\":function(t,n){t.exports=function(t){if(void 0==t)throw TypeError(\"Can't call method on \"+t);return t}},\"294c\":function(t,n){t.exports=function(t){try{return!!t()}catch(n){return!0}}},\"2aba\":function(t,n,e){var r=e(\"7726\"),o=e(\"32e9\"),i=e(\"69a8\"),u=e(\"ca5a\")(\"src\"),c=e(\"fa5b\"),a=\"toString\",f=(\"\"+c).split(a);e(\"8378\").inspectSource=function(t){return c.call(t)},(t.exports=function(t,n,e,c){var a=\"function\"==typeof e;a&&(i(e,\"name\")||o(e,\"name\",n)),t[n]!==e&&(a&&(i(e,u)||o(e,u,t[n]?\"\"+t[n]:f.join(String(n)))),t===r?t[n]=e:c?t[n]?t[n]=e:o(t,n,e):(delete t[n],o(t,n,e)))})(Function.prototype,a,function(){return\"function\"==typeof this&&this[u]||c.call(this)})},\"2b4c\":function(t,n,e){var r=e(\"5537\")(\"wks\"),o=e(\"ca5a\"),i=e(\"7726\").Symbol,u=\"function\"==typeof i,c=t.exports=function(t){return r[t]||(r[t]=u&&i[t]||(u?i:o)(\"Symbol.\"+t))};c.store=r},\"2d00\":function(t,n){t.exports=!1},\"2d95\":function(t,n){var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},\"2fdb\":function(t,n,e){\"use strict\";var r=e(\"5ca1\"),o=e(\"d2c8\"),i=\"includes\";r(r.P+r.F*e(\"5147\")(i),\"String\",{includes:function(t){return!!~o(this,t,i).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},\"30f1\":function(t,n,e){\"use strict\";var r=e(\"b8e3\"),o=e(\"63b6\"),i=e(\"9138\"),u=e(\"35e8\"),c=e(\"481b\"),a=e(\"8f60\"),f=e(\"45f2\"),s=e(\"53e2\"),l=e(\"5168\")(\"iterator\"),p=!([].keys&&\"next\"in[].keys()),d=\"@@iterator\",v=\"keys\",h=\"values\",b=function(){return this};t.exports=function(t,n,e,g,y,x,m){a(e,n,g);var w,O,S,j=function(t){if(!p&&t in C)return C[t];switch(t){case v:return function(){return new e(this,t)};case h:return function(){return new e(this,t)}}return function(){return new e(this,t)}},_=n+\" Iterator\",M=y==h,T=!1,C=t.prototype,E=C[l]||C[d]||y&&C[y],A=E||j(y),P=y?M?j(\"entries\"):A:void 0,I=\"Array\"==n&&C.entries||E;if(I&&(S=s(I.call(new t)),S!==Object.prototype&&S.next&&(f(S,_,!0),r||\"function\"==typeof S[l]||u(S,l,b))),M&&E&&E.name!==h&&(T=!0,A=function(){return E.call(this)}),r&&!m||!p&&!T&&C[l]||u(C,l,A),c[n]=A,c[_]=b,y)if(w={values:M?A:j(h),keys:x?A:j(v),entries:P},m)for(O in w)O in C||i(C,O,w[O]);else o(o.P+o.F*(p||T),n,w);return w}},\"32a6\":function(t,n,e){var r=e(\"241e\"),o=e(\"c3a1\");e(\"ce7e\")(\"keys\",function(){return function(t){return o(r(t))}})},\"32e9\":function(t,n,e){var r=e(\"86cc\"),o=e(\"4630\");t.exports=e(\"9e1e\")?function(t,n,e){return r.f(t,n,o(1,e))}:function(t,n,e){return t[n]=e,t}},\"32fc\":function(t,n,e){var r=e(\"e53d\").document;t.exports=r&&r.documentElement},\"335c\":function(t,n,e){var r=e(\"6b4c\");t.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(t){return\"String\"==r(t)?t.split(\"\"):Object(t)}},\"355d\":function(t,n){n.f={}.propertyIsEnumerable},\"35e8\":function(t,n,e){var r=e(\"d9f6\"),o=e(\"aebd\");t.exports=e(\"8e60\")?function(t,n,e){return r.f(t,n,o(1,e))}:function(t,n,e){return t[n]=e,t}},\"36c3\":function(t,n,e){var r=e(\"335c\"),o=e(\"25eb\");t.exports=function(t){return r(o(t))}},3702:function(t,n,e){var r=e(\"481b\"),o=e(\"5168\")(\"iterator\"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},\"3a38\":function(t,n){var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},\"40c3\":function(t,n,e){var r=e(\"6b4c\"),o=e(\"5168\")(\"toStringTag\"),i=\"Arguments\"==r(function(){return arguments}()),u=function(t,n){try{return t[n]}catch(e){}};t.exports=function(t){var n,e,c;return void 0===t?\"Undefined\":null===t?\"Null\":\"string\"==typeof(e=u(n=Object(t),o))?e:i?r(n):\"Object\"==(c=r(n))&&\"function\"==typeof n.callee?\"Arguments\":c}},4588:function(t,n){var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},\"45f2\":function(t,n,e){var r=e(\"d9f6\").f,o=e(\"07e3\"),i=e(\"5168\")(\"toStringTag\");t.exports=function(t,n,e){t&&!o(t=e?t:t.prototype,i)&&r(t,i,{configurable:!0,value:n})}},4630:function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},\"469f\":function(t,n,e){e(\"6c1c\"),e(\"1654\"),t.exports=e(\"7d7b\")},\"481b\":function(t,n){t.exports={}},\"4aa6\":function(t,n,e){t.exports=e(\"dc62\")},\"4bf8\":function(t,n,e){var r=e(\"be13\");t.exports=function(t){return Object(r(t))}},\"4ee1\":function(t,n,e){var r=e(\"5168\")(\"iterator\"),o=!1;try{var i=[7][r]();i[\"return\"]=function(){o=!0},Array.from(i,function(){throw 2})}catch(u){}t.exports=function(t,n){if(!n&&!o)return!1;var e=!1;try{var i=[7],c=i[r]();c.next=function(){return{done:e=!0}},i[r]=function(){return c},t(i)}catch(u){}return e}},\"50ed\":function(t,n){t.exports=function(t,n){return{value:n,done:!!t}}},5147:function(t,n,e){var r=e(\"2b4c\")(\"match\");t.exports=function(t){var n=/./;try{\"/./\"[t](n)}catch(e){try{return n[r]=!1,!\"/./\"[t](n)}catch(o){}}return!0}},5168:function(t,n,e){var r=e(\"dbdb\")(\"wks\"),o=e(\"62a0\"),i=e(\"e53d\").Symbol,u=\"function\"==typeof i,c=t.exports=function(t){return r[t]||(r[t]=u&&i[t]||(u?i:o)(\"Symbol.\"+t))};c.store=r},5176:function(t,n,e){t.exports=e(\"51b6\")},\"51b6\":function(t,n,e){e(\"a3c3\"),t.exports=e(\"584a\").Object.assign},\"520a\":function(t,n,e){\"use strict\";var r=e(\"0bfb\"),o=RegExp.prototype.exec,i=String.prototype.replace,u=o,c=\"lastIndex\",a=function(){var t=/a/,n=/b*/g;return o.call(t,\"a\"),o.call(n,\"a\"),0!==t[c]||0!==n[c]}(),f=void 0!==/()??/.exec(\"\")[1],s=a||f;s&&(u=function(t){var n,e,u,s,l=this;return f&&(e=new RegExp(\"^\"+l.source+\"$(?!\\\\s)\",r.call(l))),a&&(n=l[c]),u=o.call(l,t),a&&u&&(l[c]=l.global?u.index+u[0].length:n),f&&u&&u.length>1&&i.call(u[0],e,function(){for(s=1;s1?arguments[1]:void 0,b=void 0!==h,g=0,y=s(p);if(b&&(h=r(h,v>2?arguments[2]:void 0,2)),void 0==y||d==Array&&c(y))for(n=a(p.length),e=new d(n);n>g;g++)f(e,g,b?h(p[g],g):p[g]);else for(l=y.call(p),e=new d;!(o=l.next()).done;g++)f(e,g,b?u(l,h,[o.value,g],!0):o.value);return e.length=g,e}})},\"54a1\":function(t,n,e){e(\"6c1c\"),e(\"1654\"),t.exports=e(\"95d5\")},5537:function(t,n,e){var r=e(\"8378\"),o=e(\"7726\"),i=\"__core-js_shared__\",u=o[i]||(o[i]={});(t.exports=function(t,n){return u[t]||(u[t]=void 0!==n?n:{})})(\"versions\",[]).push({version:r.version,mode:e(\"2d00\")?\"pure\":\"global\",copyright:\"© 2019 Denis Pushkarev (zloirock.ru)\"})},5559:function(t,n,e){var r=e(\"dbdb\")(\"keys\"),o=e(\"62a0\");t.exports=function(t){return r[t]||(r[t]=o(t))}},\"584a\":function(t,n){var e=t.exports={version:\"2.6.5\"};\"number\"==typeof __e&&(__e=e)},\"5b4e\":function(t,n,e){var r=e(\"36c3\"),o=e(\"b447\"),i=e(\"0fc9\");t.exports=function(t){return function(n,e,u){var c,a=r(n),f=o(a.length),s=i(u,f);if(t&&e!=e){while(f>s)if(c=a[s++],c!=c)return!0}else for(;f>s;s++)if((t||s in a)&&a[s]===e)return t||s||0;return!t&&-1}}},\"5ca1\":function(t,n,e){var r=e(\"7726\"),o=e(\"8378\"),i=e(\"32e9\"),u=e(\"2aba\"),c=e(\"9b43\"),a=\"prototype\",f=function(t,n,e){var s,l,p,d,v=t&f.F,h=t&f.G,b=t&f.S,g=t&f.P,y=t&f.B,x=h?r:b?r[n]||(r[n]={}):(r[n]||{})[a],m=h?o:o[n]||(o[n]={}),w=m[a]||(m[a]={});for(s in h&&(e=n),e)l=!v&&x&&void 0!==x[s],p=(l?x:e)[s],d=y&&l?c(p,r):g&&\"function\"==typeof p?c(Function.call,p):p,x&&u(x,s,p,t&f.U),m[s]!=p&&i(m,s,d),g&&w[s]!=p&&(w[s]=p)};r.core=o,f.F=1,f.G=2,f.S=4,f.P=8,f.B=16,f.W=32,f.U=64,f.R=128,t.exports=f},\"5d73\":function(t,n,e){t.exports=e(\"469f\")},\"5f1b\":function(t,n,e){\"use strict\";var r=e(\"23c6\"),o=RegExp.prototype.exec;t.exports=function(t,n){var e=t.exec;if(\"function\"===typeof e){var i=e.call(t,n);if(\"object\"!==typeof i)throw new TypeError(\"RegExp exec method returned something other than an Object or null\");return i}if(\"RegExp\"!==r(t))throw new TypeError(\"RegExp#exec called on incompatible receiver\");return o.call(t,n)}},\"626a\":function(t,n,e){var r=e(\"2d95\");t.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(t){return\"String\"==r(t)?t.split(\"\"):Object(t)}},\"62a0\":function(t,n){var e=0,r=Math.random();t.exports=function(t){return\"Symbol(\".concat(void 0===t?\"\":t,\")_\",(++e+r).toString(36))}},\"63b6\":function(t,n,e){var r=e(\"e53d\"),o=e(\"584a\"),i=e(\"d864\"),u=e(\"35e8\"),c=e(\"07e3\"),a=\"prototype\",f=function(t,n,e){var s,l,p,d=t&f.F,v=t&f.G,h=t&f.S,b=t&f.P,g=t&f.B,y=t&f.W,x=v?o:o[n]||(o[n]={}),m=x[a],w=v?r:h?r[n]:(r[n]||{})[a];for(s in v&&(e=n),e)l=!d&&w&&void 0!==w[s],l&&c(x,s)||(p=l?w[s]:e[s],x[s]=v&&\"function\"!=typeof w[s]?e[s]:g&&l?i(p,r):y&&w[s]==p?function(t){var n=function(n,e,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(n);case 2:return new t(n,e)}return new t(n,e,r)}return t.apply(this,arguments)};return n[a]=t[a],n}(p):b&&\"function\"==typeof p?i(Function.call,p):p,b&&((x.virtual||(x.virtual={}))[s]=p,t&f.R&&m&&!m[s]&&u(m,s,p)))};f.F=1,f.G=2,f.S=4,f.P=8,f.B=16,f.W=32,f.U=64,f.R=128,t.exports=f},6762:function(t,n,e){\"use strict\";var r=e(\"5ca1\"),o=e(\"c366\")(!0);r(r.P,\"Array\",{includes:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),e(\"9c6c\")(\"includes\")},6821:function(t,n,e){var r=e(\"626a\"),o=e(\"be13\");t.exports=function(t){return r(o(t))}},\"69a8\":function(t,n){var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},\"6a99\":function(t,n,e){var r=e(\"d3f4\");t.exports=function(t,n){if(!r(t))return t;var e,o;if(n&&\"function\"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;if(\"function\"==typeof(e=t.valueOf)&&!r(o=e.call(t)))return o;if(!n&&\"function\"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;throw TypeError(\"Can't convert object to primitive value\")}},\"6b4c\":function(t,n){var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},\"6c1c\":function(t,n,e){e(\"c367\");for(var r=e(\"e53d\"),o=e(\"35e8\"),i=e(\"481b\"),u=e(\"5168\")(\"toStringTag\"),c=\"CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList\".split(\",\"),a=0;a=f?t?\"\":void 0:(i=c.charCodeAt(a),i<55296||i>56319||a+1===f||(u=c.charCodeAt(a+1))<56320||u>57343?t?c.charAt(a):i:t?c.slice(a,a+2):u-56320+(i-55296<<10)+65536)}}},7726:function(t,n){var e=t.exports=\"undefined\"!=typeof window&&window.Math==Math?window:\"undefined\"!=typeof self&&self.Math==Math?self:Function(\"return this\")();\"number\"==typeof __g&&(__g=e)},\"774e\":function(t,n,e){t.exports=e(\"d2d5\")},\"77f1\":function(t,n,e){var r=e(\"4588\"),o=Math.max,i=Math.min;t.exports=function(t,n){return t=r(t),t<0?o(t+n,0):i(t,n)}},\"794b\":function(t,n,e){t.exports=!e(\"8e60\")&&!e(\"294c\")(function(){return 7!=Object.defineProperty(e(\"1ec9\")(\"div\"),\"a\",{get:function(){return 7}}).a})},\"79aa\":function(t,n){t.exports=function(t){if(\"function\"!=typeof t)throw TypeError(t+\" is not a function!\");return t}},\"79e5\":function(t,n){t.exports=function(t){try{return!!t()}catch(n){return!0}}},\"7cd6\":function(t,n,e){var r=e(\"40c3\"),o=e(\"5168\")(\"iterator\"),i=e(\"481b\");t.exports=e(\"584a\").getIteratorMethod=function(t){if(void 0!=t)return t[o]||t[\"@@iterator\"]||i[r(t)]}},\"7d7b\":function(t,n,e){var r=e(\"e4ae\"),o=e(\"7cd6\");t.exports=e(\"584a\").getIterator=function(t){var n=o(t);if(\"function\"!=typeof n)throw TypeError(t+\" is not iterable!\");return r(n.call(t))}},\"7e90\":function(t,n,e){var r=e(\"d9f6\"),o=e(\"e4ae\"),i=e(\"c3a1\");t.exports=e(\"8e60\")?Object.defineProperties:function(t,n){o(t);var e,u=i(n),c=u.length,a=0;while(c>a)r.f(t,e=u[a++],n[e]);return t}},8378:function(t,n){var e=t.exports={version:\"2.6.5\"};\"number\"==typeof __e&&(__e=e)},8436:function(t,n){t.exports=function(){}},\"86cc\":function(t,n,e){var r=e(\"cb7c\"),o=e(\"c69a\"),i=e(\"6a99\"),u=Object.defineProperty;n.f=e(\"9e1e\")?Object.defineProperty:function(t,n,e){if(r(t),n=i(n,!0),r(e),o)try{return u(t,n,e)}catch(c){}if(\"get\"in e||\"set\"in e)throw TypeError(\"Accessors not supported!\");return\"value\"in e&&(t[n]=e.value),t}},\"8aae\":function(t,n,e){e(\"32a6\"),t.exports=e(\"584a\").Object.keys},\"8e60\":function(t,n,e){t.exports=!e(\"294c\")(function(){return 7!=Object.defineProperty({},\"a\",{get:function(){return 7}}).a})},\"8f60\":function(t,n,e){\"use strict\";var r=e(\"a159\"),o=e(\"aebd\"),i=e(\"45f2\"),u={};e(\"35e8\")(u,e(\"5168\")(\"iterator\"),function(){return this}),t.exports=function(t,n,e){t.prototype=r(u,{next:o(1,e)}),i(t,n+\" Iterator\")}},9003:function(t,n,e){var r=e(\"6b4c\");t.exports=Array.isArray||function(t){return\"Array\"==r(t)}},9138:function(t,n,e){t.exports=e(\"35e8\")},9306:function(t,n,e){\"use strict\";var r=e(\"c3a1\"),o=e(\"9aa9\"),i=e(\"355d\"),u=e(\"241e\"),c=e(\"335c\"),a=Object.assign;t.exports=!a||e(\"294c\")(function(){var t={},n={},e=Symbol(),r=\"abcdefghijklmnopqrst\";return t[e]=7,r.split(\"\").forEach(function(t){n[t]=t}),7!=a({},t)[e]||Object.keys(a({},n)).join(\"\")!=r})?function(t,n){var e=u(t),a=arguments.length,f=1,s=o.f,l=i.f;while(a>f){var p,d=c(arguments[f++]),v=s?r(d).concat(s(d)):r(d),h=v.length,b=0;while(h>b)l.call(d,p=v[b++])&&(e[p]=d[p])}return e}:a},9427:function(t,n,e){var r=e(\"63b6\");r(r.S,\"Object\",{create:e(\"a159\")})},\"95d5\":function(t,n,e){var r=e(\"40c3\"),o=e(\"5168\")(\"iterator\"),i=e(\"481b\");t.exports=e(\"584a\").isIterable=function(t){var n=Object(t);return void 0!==n[o]||\"@@iterator\"in n||i.hasOwnProperty(r(n))}},\"9aa9\":function(t,n){n.f=Object.getOwnPropertySymbols},\"9b43\":function(t,n,e){var r=e(\"d8e8\");t.exports=function(t,n,e){if(r(t),void 0===n)return t;switch(e){case 1:return function(e){return t.call(n,e)};case 2:return function(e,r){return t.call(n,e,r)};case 3:return function(e,r,o){return t.call(n,e,r,o)}}return function(){return t.apply(n,arguments)}}},\"9c6c\":function(t,n,e){var r=e(\"2b4c\")(\"unscopables\"),o=Array.prototype;void 0==o[r]&&e(\"32e9\")(o,r,{}),t.exports=function(t){o[r][t]=!0}},\"9def\":function(t,n,e){var r=e(\"4588\"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},\"9e1e\":function(t,n,e){t.exports=!e(\"79e5\")(function(){return 7!=Object.defineProperty({},\"a\",{get:function(){return 7}}).a})},a159:function(t,n,e){var r=e(\"e4ae\"),o=e(\"7e90\"),i=e(\"1691\"),u=e(\"5559\")(\"IE_PROTO\"),c=function(){},a=\"prototype\",f=function(){var t,n=e(\"1ec9\")(\"iframe\"),r=i.length,o=\"<\",u=\">\";n.style.display=\"none\",e(\"32fc\").appendChild(n),n.src=\"javascript:\",t=n.contentWindow.document,t.open(),t.write(o+\"script\"+u+\"document.F=Object\"+o+\"/script\"+u),t.close(),f=t.F;while(r--)delete f[a][i[r]];return f()};t.exports=Object.create||function(t,n){var e;return null!==t?(c[a]=r(t),e=new c,c[a]=null,e[u]=t):e=f(),void 0===n?e:o(e,n)}},a352:function(n,e){n.exports=t},a3c3:function(t,n,e){var r=e(\"63b6\");r(r.S+r.F,\"Object\",{assign:e(\"9306\")})},a481:function(t,n,e){\"use strict\";var r=e(\"cb7c\"),o=e(\"4bf8\"),i=e(\"9def\"),u=e(\"4588\"),c=e(\"0390\"),a=e(\"5f1b\"),f=Math.max,s=Math.min,l=Math.floor,p=/\\$([$&`']|\\d\\d?|<[^>]*>)/g,d=/\\$([$&`']|\\d\\d?)/g,v=function(t){return void 0===t?t:String(t)};e(\"214f\")(\"replace\",2,function(t,n,e,h){return[function(r,o){var i=t(this),u=void 0==r?void 0:r[n];return void 0!==u?u.call(r,i,o):e.call(String(i),r,o)},function(t,n){var o=h(e,t,this,n);if(o.done)return o.value;var l=r(t),p=String(this),d=\"function\"===typeof n;d||(n=String(n));var g=l.global;if(g){var y=l.unicode;l.lastIndex=0}var x=[];while(1){var m=a(l,p);if(null===m)break;if(x.push(m),!g)break;var w=String(m[0]);\"\"===w&&(l.lastIndex=c(p,i(l.lastIndex),y))}for(var O=\"\",S=0,j=0;j=S&&(O+=p.slice(S,M)+P,S=M+_.length)}return O+p.slice(S)}];function b(t,n,r,i,u,c){var a=r+t.length,f=i.length,s=d;return void 0!==u&&(u=o(u),s=p),e.call(c,s,function(e,o){var c;switch(o.charAt(0)){case\"$\":return\"$\";case\"&\":return t;case\"`\":return n.slice(0,r);case\"'\":return n.slice(a);case\"<\":c=u[o.slice(1,-1)];break;default:var s=+o;if(0===s)return e;if(s>f){var p=l(s/10);return 0===p?e:p<=f?void 0===i[p-1]?o.charAt(1):i[p-1]+o.charAt(1):e}c=i[s-1]}return void 0===c?\"\":c})}})},a4bb:function(t,n,e){t.exports=e(\"8aae\")},a745:function(t,n,e){t.exports=e(\"f410\")},aae3:function(t,n,e){var r=e(\"d3f4\"),o=e(\"2d95\"),i=e(\"2b4c\")(\"match\");t.exports=function(t){var n;return r(t)&&(void 0!==(n=t[i])?!!n:\"RegExp\"==o(t))}},aebd:function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},b0c5:function(t,n,e){\"use strict\";var r=e(\"520a\");e(\"5ca1\")({target:\"RegExp\",proto:!0,forced:r!==/./.exec},{exec:r})},b0dc:function(t,n,e){var r=e(\"e4ae\");t.exports=function(t,n,e,o){try{return o?n(r(e)[0],e[1]):n(e)}catch(u){var i=t[\"return\"];throw void 0!==i&&r(i.call(t)),u}}},b447:function(t,n,e){var r=e(\"3a38\"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},b8e3:function(t,n){t.exports=!0},be13:function(t,n){t.exports=function(t){if(void 0==t)throw TypeError(\"Can't call method on \"+t);return t}},c366:function(t,n,e){var r=e(\"6821\"),o=e(\"9def\"),i=e(\"77f1\");t.exports=function(t){return function(n,e,u){var c,a=r(n),f=o(a.length),s=i(u,f);if(t&&e!=e){while(f>s)if(c=a[s++],c!=c)return!0}else for(;f>s;s++)if((t||s in a)&&a[s]===e)return t||s||0;return!t&&-1}}},c367:function(t,n,e){\"use strict\";var r=e(\"8436\"),o=e(\"50ed\"),i=e(\"481b\"),u=e(\"36c3\");t.exports=e(\"30f1\")(Array,\"Array\",function(t,n){this._t=u(t),this._i=0,this._k=n},function(){var t=this._t,n=this._k,e=this._i++;return!t||e>=t.length?(this._t=void 0,o(1)):o(0,\"keys\"==n?e:\"values\"==n?t[e]:[e,t[e]])},\"values\"),i.Arguments=i.Array,r(\"keys\"),r(\"values\"),r(\"entries\")},c3a1:function(t,n,e){var r=e(\"e6f3\"),o=e(\"1691\");t.exports=Object.keys||function(t){return r(t,o)}},c649:function(t,n,e){\"use strict\";(function(t){e.d(n,\"c\",function(){return l}),e.d(n,\"a\",function(){return f}),e.d(n,\"b\",function(){return u}),e.d(n,\"d\",function(){return s});e(\"a481\");var r=e(\"4aa6\"),o=e.n(r);function i(){return\"undefined\"!==typeof window?window.console:t.console}var u=i();function c(t){var n=o()(null);return function(e){var r=n[e];return r||(n[e]=t(e))}}var a=/-(\\w)/g,f=c(function(t){return t.replace(a,function(t,n){return n?n.toUpperCase():\"\"})});function s(t){null!==t.parentElement&&t.parentElement.removeChild(t)}function l(t,n,e){var r=0===e?t.children[0]:t.children[e-1].nextSibling;t.insertBefore(n,r)}}).call(this,e(\"c8ba\"))},c69a:function(t,n,e){t.exports=!e(\"9e1e\")&&!e(\"79e5\")(function(){return 7!=Object.defineProperty(e(\"230e\")(\"div\"),\"a\",{get:function(){return 7}}).a})},c8ba:function(t,n){var e;e=function(){return this}();try{e=e||new Function(\"return this\")()}catch(r){\"object\"===typeof window&&(e=window)}t.exports=e},c8bb:function(t,n,e){t.exports=e(\"54a1\")},ca5a:function(t,n){var e=0,r=Math.random();t.exports=function(t){return\"Symbol(\".concat(void 0===t?\"\":t,\")_\",(++e+r).toString(36))}},cb7c:function(t,n,e){var r=e(\"d3f4\");t.exports=function(t){if(!r(t))throw TypeError(t+\" is not an object!\");return t}},ce7e:function(t,n,e){var r=e(\"63b6\"),o=e(\"584a\"),i=e(\"294c\");t.exports=function(t,n){var e=(o.Object||{})[t]||Object[t],u={};u[t]=n(e),r(r.S+r.F*i(function(){e(1)}),\"Object\",u)}},d2c8:function(t,n,e){var r=e(\"aae3\"),o=e(\"be13\");t.exports=function(t,n,e){if(r(n))throw TypeError(\"String#\"+e+\" doesn't accept regex!\");return String(o(t))}},d2d5:function(t,n,e){e(\"1654\"),e(\"549b\"),t.exports=e(\"584a\").Array.from},d3f4:function(t,n){t.exports=function(t){return\"object\"===typeof t?null!==t:\"function\"===typeof t}},d864:function(t,n,e){var r=e(\"79aa\");t.exports=function(t,n,e){if(r(t),void 0===n)return t;switch(e){case 1:return function(e){return t.call(n,e)};case 2:return function(e,r){return t.call(n,e,r)};case 3:return function(e,r,o){return t.call(n,e,r,o)}}return function(){return t.apply(n,arguments)}}},d8e8:function(t,n){t.exports=function(t){if(\"function\"!=typeof t)throw TypeError(t+\" is not a function!\");return t}},d9f6:function(t,n,e){var r=e(\"e4ae\"),o=e(\"794b\"),i=e(\"1bc3\"),u=Object.defineProperty;n.f=e(\"8e60\")?Object.defineProperty:function(t,n,e){if(r(t),n=i(n,!0),r(e),o)try{return u(t,n,e)}catch(c){}if(\"get\"in e||\"set\"in e)throw TypeError(\"Accessors not supported!\");return\"value\"in e&&(t[n]=e.value),t}},dbdb:function(t,n,e){var r=e(\"584a\"),o=e(\"e53d\"),i=\"__core-js_shared__\",u=o[i]||(o[i]={});(t.exports=function(t,n){return u[t]||(u[t]=void 0!==n?n:{})})(\"versions\",[]).push({version:r.version,mode:e(\"b8e3\")?\"pure\":\"global\",copyright:\"© 2019 Denis Pushkarev (zloirock.ru)\"})},dc62:function(t,n,e){e(\"9427\");var r=e(\"584a\").Object;t.exports=function(t,n){return r.create(t,n)}},e4ae:function(t,n,e){var r=e(\"f772\");t.exports=function(t){if(!r(t))throw TypeError(t+\" is not an object!\");return t}},e53d:function(t,n){var e=t.exports=\"undefined\"!=typeof window&&window.Math==Math?window:\"undefined\"!=typeof self&&self.Math==Math?self:Function(\"return this\")();\"number\"==typeof __g&&(__g=e)},e6f3:function(t,n,e){var r=e(\"07e3\"),o=e(\"36c3\"),i=e(\"5b4e\")(!1),u=e(\"5559\")(\"IE_PROTO\");t.exports=function(t,n){var e,c=o(t),a=0,f=[];for(e in c)e!=u&&r(c,e)&&f.push(e);while(n.length>a)r(c,e=n[a++])&&(~i(f,e)||f.push(e));return f}},f410:function(t,n,e){e(\"1af6\"),t.exports=e(\"584a\").Array.isArray},f559:function(t,n,e){\"use strict\";var r=e(\"5ca1\"),o=e(\"9def\"),i=e(\"d2c8\"),u=\"startsWith\",c=\"\"[u];r(r.P+r.F*e(\"5147\")(u),\"String\",{startsWith:function(t){var n=i(this,t,u),e=o(Math.min(arguments.length>1?arguments[1]:void 0,n.length)),r=String(t);return c?c.call(n,r,e):n.slice(e,e+r.length)===r}})},f772:function(t,n){t.exports=function(t){return\"object\"===typeof t?null!==t:\"function\"===typeof t}},fa5b:function(t,n,e){t.exports=e(\"5537\")(\"native-function-to-string\",Function.toString)},fb15:function(t,n,e){\"use strict\";var r;(e.r(n),\"undefined\"!==typeof window)&&((r=window.document.currentScript)&&(r=r.src.match(/(.+\\/)[^\\/]+\\.js(\\?.*)?$/))&&(e.p=r[1]));var o=e(\"5176\"),i=e.n(o),u=(e(\"f559\"),e(\"a4bb\")),c=e.n(u),a=(e(\"6762\"),e(\"2fdb\"),e(\"a745\")),f=e.n(a);function s(t){if(f()(t))return t}var l=e(\"5d73\"),p=e.n(l);function d(t,n){var e=[],r=!0,o=!1,i=void 0;try{for(var u,c=p()(t);!(r=(u=c.next()).done);r=!0)if(e.push(u.value),n&&e.length===n)break}catch(a){o=!0,i=a}finally{try{r||null==c[\"return\"]||c[\"return\"]()}finally{if(o)throw i}}return e}function v(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}function h(t,n){return s(t)||d(t,n)||v()}function b(t){if(f()(t)){for(var n=0,e=new Array(t.length);n=i?o.length:o.indexOf(t)});return e?u.filter(function(t){return-1!==t}):u}function A(t,n){var e=this;this.$nextTick(function(){return e.$emit(t.toLowerCase(),n)})}function P(t){var n=this;return function(e){null!==n.realList&&n[\"onDrag\"+t](e),A.call(n,t,e)}}function I(t){if(!t||1!==t.length)return!1;var n=h(t,1),e=n[0].componentOptions;return!!e&&[\"transition-group\",\"TransitionGroup\"].includes(e.tag)}function L(t,n){var e=n.header,r=n.footer,o=0,i=0;return e&&(o=e.length,t=t?[].concat(S(e),S(t)):S(e)),r&&(i=r.length,t=t?[].concat(S(t),S(r)):S(r)),{children:t,headerOffset:o,footerOffset:i}}function F(t,n){var e=null,r=function(t,n){e=T(e,t,n)},o=c()(t).filter(function(t){return\"id\"===t||t.startsWith(\"data-\")}).reduce(function(n,e){return n[e]=t[e],n},{});if(r(\"attrs\",o),!n)return e;var u=n.on,a=n.props,f=n.attrs;return r(\"on\",u),r(\"props\",a),i()(e.attrs,f),e}var $=[\"Start\",\"Add\",\"Remove\",\"Update\",\"End\"],k=[\"Choose\",\"Sort\",\"Filter\",\"Clone\"],D=[\"Move\"].concat($,k).map(function(t){return\"on\"+t}),R=null,V={options:Object,list:{type:Array,required:!1,default:null},value:{type:Array,required:!1,default:null},noTransitionOnDrag:{type:Boolean,default:!1},clone:{type:Function,default:function(t){return t}},element:{type:String,default:\"div\"},tag:{type:String,default:null},move:{type:Function,default:null},componentData:{type:Object,required:!1,default:null}},N={name:\"draggable\",inheritAttrs:!1,props:V,data:function(){return{transitionMode:!1,noneFunctionalComponentMode:!1,init:!1}},render:function(t){var n=this.$slots.default;this.transitionMode=I(n);var e=L(n,this.$slots),r=e.children,o=e.headerOffset,i=e.footerOffset;this.headerOffset=o,this.footerOffset=i;var u=F(this.$attrs,this.componentData);return t(this.getTag(),u,r)},created:function(){null!==this.list&&null!==this.value&&M[\"b\"].error(\"Value and list props are mutually exclusive! Please set one or another.\"),\"div\"!==this.element&&M[\"b\"].warn(\"Element props is deprecated please use tag props instead. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#element-props\"),void 0!==this.options&&M[\"b\"].warn(\"Options props is deprecated, add sortable options directly as vue.draggable item, or use v-bind. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#options-props\")},mounted:function(){var t=this;if(this.noneFunctionalComponentMode=this.getTag().toLowerCase()!==this.$el.nodeName.toLowerCase(),this.noneFunctionalComponentMode&&this.transitionMode)throw new Error(\"Transition-group inside component is not supported. Please alter tag value or remove transition-group. Current tag value: \".concat(this.getTag()));var n={};$.forEach(function(e){n[\"on\"+e]=P.call(t,e)}),k.forEach(function(e){n[\"on\"+e]=A.bind(t,e)});var e=c()(this.$attrs).reduce(function(n,e){return n[Object(M[\"a\"])(e)]=t.$attrs[e],n},{}),r=i()({},this.options,e,n,{onMove:function(n,e){return t.onDragMove(n,e)}});!(\"draggable\"in r)&&(r.draggable=\">*\"),this._sortable=new _.a(this.rootContainer,r),this.computeIndexes()},beforeDestroy:function(){void 0!==this._sortable&&this._sortable.destroy()},computed:{rootContainer:function(){return this.transitionMode?this.$el.children[0]:this.$el},realList:function(){return this.list?this.list:this.value}},watch:{options:{handler:function(t){this.updateOptions(t)},deep:!0},$attrs:{handler:function(t){this.updateOptions(t)},deep:!0},realList:function(){this.computeIndexes()}},methods:{getTag:function(){return this.tag||this.element},updateOptions:function(t){for(var n in t){var e=Object(M[\"a\"])(n);-1===D.indexOf(e)&&this._sortable.option(e,t[n])}},getChildrenNodes:function(){if(this.init||(this.noneFunctionalComponentMode=this.noneFunctionalComponentMode&&1===this.$children.length,this.init=!0),this.noneFunctionalComponentMode)return this.$children[0].$slots.default;var t=this.$slots.default;return this.transitionMode?t[0].child.$slots.default:t},computeIndexes:function(){var t=this;this.$nextTick(function(){t.visibleIndexes=E(t.getChildrenNodes(),t.rootContainer.children,t.transitionMode,t.footerOffset)})},getUnderlyingVm:function(t){var n=C(this.getChildrenNodes()||[],t);if(-1===n)return null;var e=this.realList[n];return{index:n,element:e}},getUnderlyingPotencialDraggableComponent:function(t){var n=t.__vue__;return n&&n.$options&&\"transition-group\"===n.$options._componentTag?n.$parent:n},emitChanges:function(t){var n=this;this.$nextTick(function(){n.$emit(\"change\",t)})},alterList:function(t){if(this.list)t(this.list);else{var n=S(this.value);t(n),this.$emit(\"input\",n)}},spliceList:function(){var t=arguments,n=function(n){return n.splice.apply(n,S(t))};this.alterList(n)},updatePosition:function(t,n){var e=function(e){return e.splice(n,0,e.splice(t,1)[0])};this.alterList(e)},getRelatedContextFromMoveEvent:function(t){var n=t.to,e=t.related,r=this.getUnderlyingPotencialDraggableComponent(n);if(!r)return{component:r};var o=r.realList,u={list:o,component:r};if(n!==e&&o&&r.getUnderlyingVm){var c=r.getUnderlyingVm(e);if(c)return i()(c,u)}return u},getVmIndex:function(t){var n=this.visibleIndexes,e=n.length;return t>e-1?e:n[t]},getComponent:function(){return this.$slots.default[0].componentInstance},resetTransitionData:function(t){if(this.noTransitionOnDrag&&this.transitionMode){var n=this.getChildrenNodes();n[t].data=null;var e=this.getComponent();e.children=[],e.kept=void 0}},onDragStart:function(t){this.context=this.getUnderlyingVm(t.item),t.item._underlying_vm_=this.clone(this.context.element),R=t.item},onDragAdd:function(t){var n=t.item._underlying_vm_;if(void 0!==n){Object(M[\"d\"])(t.item);var e=this.getVmIndex(t.newIndex);this.spliceList(e,0,n),this.computeIndexes();var r={element:n,newIndex:e};this.emitChanges({added:r})}},onDragRemove:function(t){if(Object(M[\"c\"])(this.rootContainer,t.item,t.oldIndex),\"clone\"!==t.pullMode){var n=this.context.index;this.spliceList(n,1);var e={element:this.context.element,oldIndex:n};this.resetTransitionData(n),this.emitChanges({removed:e})}else Object(M[\"d\"])(t.clone)},onDragUpdate:function(t){Object(M[\"d\"])(t.item),Object(M[\"c\"])(t.from,t.item,t.oldIndex);var n=this.context.index,e=this.getVmIndex(t.newIndex);this.updatePosition(n,e);var r={element:this.context.element,oldIndex:n,newIndex:e};this.emitChanges({moved:r})},updateProperty:function(t,n){t.hasOwnProperty(n)&&(t[n]+=this.headerOffset)},computeFutureIndex:function(t,n){if(!t.element)return 0;var e=S(n.to.children).filter(function(t){return\"none\"!==t.style[\"display\"]}),r=e.indexOf(n.related),o=t.component.getVmIndex(r),i=-1!==e.indexOf(R);return i||!n.willInsertAfter?o:o+1},onDragMove:function(t,n){var e=this.move;if(!e||!this.realList)return!0;var r=this.getRelatedContextFromMoveEvent(t),o=this.context,u=this.computeFutureIndex(r,t);i()(o,{futureIndex:u});var c=i()({},t,{relatedContext:r,draggedContext:o});return e(c,n)},onDragEnd:function(){this.computeIndexes(),R=null}}};\"undefined\"!==typeof window&&\"Vue\"in window&&window.Vue.component(\"draggable\",N);var U=N;n[\"default\"]=U}})[\"default\"]});\n//# sourceMappingURL=vuedraggable.umd.min.js.map","/**!\n * Sortable\n * @author\tRubaXa \n * @author\towenm \n * @license MIT\n */\n\n(function sortableModule(factory) {\n\t\"use strict\";\n\n\tif (typeof define === \"function\" && define.amd) {\n\t\tdefine(factory);\n\t}\n\telse if (typeof module != \"undefined\" && typeof module.exports != \"undefined\") {\n\t\tmodule.exports = factory();\n\t}\n\telse {\n\t\t/* jshint sub:true */\n\t\twindow[\"Sortable\"] = factory();\n\t}\n})(function sortableFactory() {\n\t\"use strict\";\n\n\tif (typeof window === \"undefined\" || !window.document) {\n\t\treturn function sortableError() {\n\t\t\tthrow new Error(\"Sortable.js requires a window with a document\");\n\t\t};\n\t}\n\n\tvar dragEl,\n\t\tparentEl,\n\t\tghostEl,\n\t\tcloneEl,\n\t\trootEl,\n\t\tnextEl,\n\t\tlastDownEl,\n\n\t\tscrollEl,\n\t\tscrollParentEl,\n\t\tscrollCustomFn,\n\n\t\toldIndex,\n\t\tnewIndex,\n\n\t\tactiveGroup,\n\t\tputSortable,\n\n\t\tautoScrolls = [],\n\t\tscrolling = false,\n\n\t\tawaitingDragStarted = false,\n\t\tignoreNextClick = false,\n\t\tsortables = [],\n\n\t\tpointerElemChangedInterval,\n\t\tlastPointerElemX,\n\t\tlastPointerElemY,\n\n\t\ttapEvt,\n\t\ttouchEvt,\n\n\t\tmoved,\n\n\n\t\tlastTarget,\n\t\tlastDirection,\n\t\tpastFirstInvertThresh = false,\n\t\tisCircumstantialInvert = false,\n\t\tlastMode, // 'swap' or 'insert'\n\n\t\ttargetMoveDistance,\n\n\t\t// For positioning ghost absolutely\n\t\tghostRelativeParent,\n\t\tghostRelativeParentInitialScroll = [], // (left, top)\n\n\n\t\tforRepaintDummy,\n\t\trealDragElRect, // dragEl rect after current animation\n\n\t\t/** @const */\n\t\tR_SPACE = /\\s+/g,\n\n\t\texpando = 'Sortable' + (new Date).getTime(),\n\n\t\twin = window,\n\t\tdocument = win.document,\n\t\tparseInt = win.parseInt,\n\t\tsetTimeout = win.setTimeout,\n\n\t\t$ = win.jQuery || win.Zepto,\n\t\tPolymer = win.Polymer,\n\n\t\tcaptureMode = {\n\t\t\tcapture: false,\n\t\t\tpassive: false\n\t\t},\n\n\t\tIE11OrLess = !!navigator.userAgent.match(/(?:Trident.*rv[ :]?11\\.|msie|iemobile)/i),\n\t\tEdge = !!navigator.userAgent.match(/Edge/i),\n\t\tFireFox = !!navigator.userAgent.match(/firefox/i),\n\t\tSafari = !!(navigator.userAgent.match(/safari/i) && !navigator.userAgent.match(/chrome/i) && !navigator.userAgent.match(/android/i)),\n\t\tIOS = !!(navigator.userAgent.match(/iP(ad|od|hone)/i)),\n\n\t\tPositionGhostAbsolutely = IOS,\n\n\t\tCSSFloatProperty = Edge || IE11OrLess ? 'cssFloat' : 'float',\n\n\t\t// This will not pass for IE9, because IE9 DnD only works on anchors\n\t\tsupportDraggable = ('draggable' in document.createElement('div')),\n\n\t\tsupportCssPointerEvents = (function() {\n\t\t\t// false when <= IE11\n\t\t\tif (IE11OrLess) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tvar el = document.createElement('x');\n\t\t\tel.style.cssText = 'pointer-events:auto';\n\t\t\treturn el.style.pointerEvents === 'auto';\n\t\t})(),\n\n\t\t_silent = false,\n\t\t_alignedSilent = false,\n\n\t\tabs = Math.abs,\n\t\tmin = Math.min,\n\t\tmax = Math.max,\n\n\t\tsavedInputChecked = [],\n\n\t\t_detectDirection = function(el, options) {\n\t\t\tvar elCSS = _css(el),\n\t\t\t\telWidth = parseInt(elCSS.width)\n\t\t\t\t\t- parseInt(elCSS.paddingLeft)\n\t\t\t\t\t- parseInt(elCSS.paddingRight)\n\t\t\t\t\t- parseInt(elCSS.borderLeftWidth)\n\t\t\t\t\t- parseInt(elCSS.borderRightWidth),\n\t\t\t\tchild1 = _getChild(el, 0, options),\n\t\t\t\tchild2 = _getChild(el, 1, options),\n\t\t\t\tfirstChildCSS = child1 && _css(child1),\n\t\t\t\tsecondChildCSS = child2 && _css(child2),\n\t\t\t\tfirstChildWidth = firstChildCSS && parseInt(firstChildCSS.marginLeft) + parseInt(firstChildCSS.marginRight) + _getRect(child1).width,\n\t\t\t\tsecondChildWidth = secondChildCSS && parseInt(secondChildCSS.marginLeft) + parseInt(secondChildCSS.marginRight) + _getRect(child2).width;\n\n\t\t\tif (elCSS.display === 'flex') {\n\t\t\t\treturn elCSS.flexDirection === 'column' || elCSS.flexDirection === 'column-reverse'\n\t\t\t\t? 'vertical' : 'horizontal';\n\t\t\t}\n\n\t\t\tif (elCSS.display === 'grid') {\n\t\t\t\treturn elCSS.gridTemplateColumns.split(' ').length <= 1 ? 'vertical' : 'horizontal';\n\t\t\t}\n\n\t\t\tif (child1 && firstChildCSS.float !== 'none') {\n\t\t\t\tvar touchingSideChild2 = firstChildCSS.float === 'left' ? 'left' : 'right';\n\n\t\t\t\treturn child2 && (secondChildCSS.clear === 'both' || secondChildCSS.clear === touchingSideChild2) ?\n\t\t\t\t\t'vertical' : 'horizontal';\n\t\t\t}\n\n\t\t\treturn (child1 &&\n\t\t\t\t(\n\t\t\t\t\tfirstChildCSS.display === 'block' ||\n\t\t\t\t\tfirstChildCSS.display === 'flex' ||\n\t\t\t\t\tfirstChildCSS.display === 'table' ||\n\t\t\t\t\tfirstChildCSS.display === 'grid' ||\n\t\t\t\t\tfirstChildWidth >= elWidth &&\n\t\t\t\t\telCSS[CSSFloatProperty] === 'none' ||\n\t\t\t\t\tchild2 &&\n\t\t\t\t\telCSS[CSSFloatProperty] === 'none' &&\n\t\t\t\t\tfirstChildWidth + secondChildWidth > elWidth\n\t\t\t\t) ?\n\t\t\t\t'vertical' : 'horizontal'\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Detects first nearest empty sortable to X and Y position using emptyInsertThreshold.\n\t\t * @param {Number} x X position\n\t\t * @param {Number} y Y position\n\t\t * @return {HTMLElement} Element of the first found nearest Sortable\n\t\t */\n\t\t_detectNearestEmptySortable = function(x, y) {\n\t\t\tfor (var i = 0; i < sortables.length; i++) {\n\t\t\t\tif (_lastChild(sortables[i])) continue;\n\n\t\t\t\tvar rect = _getRect(sortables[i]),\n\t\t\t\t\tthreshold = sortables[i][expando].options.emptyInsertThreshold,\n\t\t\t\t\tinsideHorizontally = x >= (rect.left - threshold) && x <= (rect.right + threshold),\n\t\t\t\t\tinsideVertically = y >= (rect.top - threshold) && y <= (rect.bottom + threshold);\n\n\t\t\t\tif (insideHorizontally && insideVertically) {\n\t\t\t\t\treturn sortables[i];\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t_isClientInRowColumn = function(x, y, el, axis, options) {\n\t\t\tvar targetRect = _getRect(el),\n\t\t\t\ttargetS1Opp = axis === 'vertical' ? targetRect.left : targetRect.top,\n\t\t\t\ttargetS2Opp = axis === 'vertical' ? targetRect.right : targetRect.bottom,\n\t\t\t\tmouseOnOppAxis = axis === 'vertical' ? x : y;\n\n\t\t\treturn targetS1Opp < mouseOnOppAxis && mouseOnOppAxis < targetS2Opp;\n\t\t},\n\n\t\t_isElInRowColumn = function(el1, el2, axis) {\n\t\t\tvar el1Rect = el1 === dragEl && realDragElRect || _getRect(el1),\n\t\t\t\tel2Rect = el2 === dragEl && realDragElRect || _getRect(el2),\n\t\t\t\tel1S1Opp = axis === 'vertical' ? el1Rect.left : el1Rect.top,\n\t\t\t\tel1S2Opp = axis === 'vertical' ? el1Rect.right : el1Rect.bottom,\n\t\t\t\tel1OppLength = axis === 'vertical' ? el1Rect.width : el1Rect.height,\n\t\t\t\tel2S1Opp = axis === 'vertical' ? el2Rect.left : el2Rect.top,\n\t\t\t\tel2S2Opp = axis === 'vertical' ? el2Rect.right : el2Rect.bottom,\n\t\t\t\tel2OppLength = axis === 'vertical' ? el2Rect.width : el2Rect.height;\n\n\t\t\treturn (\n\t\t\t\tel1S1Opp === el2S1Opp ||\n\t\t\t\tel1S2Opp === el2S2Opp ||\n\t\t\t\t(el1S1Opp + el1OppLength / 2) === (el2S1Opp + el2OppLength / 2)\n\t\t\t);\n\t\t},\n\n\t\t_getParentAutoScrollElement = function(el, includeSelf) {\n\t\t\t// skip to window\n\t\t\tif (!el || !el.getBoundingClientRect) return _getWindowScrollingElement();\n\n\t\t\tvar elem = el;\n\t\t\tvar gotSelf = false;\n\t\t\tdo {\n\t\t\t\t// we don't need to get elem css if it isn't even overflowing in the first place (performance)\n\t\t\t\tif (elem.clientWidth < elem.scrollWidth || elem.clientHeight < elem.scrollHeight) {\n\t\t\t\t\tvar elemCSS = _css(elem);\n\t\t\t\t\tif (\n\t\t\t\t\t\telem.clientWidth < elem.scrollWidth && (elemCSS.overflowX == 'auto' || elemCSS.overflowX == 'scroll') ||\n\t\t\t\t\t\telem.clientHeight < elem.scrollHeight && (elemCSS.overflowY == 'auto' || elemCSS.overflowY == 'scroll')\n\t\t\t\t\t) {\n\t\t\t\t\t\tif (!elem || !elem.getBoundingClientRect || elem === document.body) return _getWindowScrollingElement();\n\n\t\t\t\t\t\tif (gotSelf || includeSelf) return elem;\n\t\t\t\t\t\tgotSelf = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t/* jshint boss:true */\n\t\t\t} while (elem = elem.parentNode);\n\n\t\t\treturn _getWindowScrollingElement();\n\t\t},\n\n\t\t_getWindowScrollingElement = function() {\n\t\t\tif (IE11OrLess) {\n\t\t\t\treturn document.documentElement;\n\t\t\t} else {\n\t\t\t\treturn document.scrollingElement;\n\t\t\t}\n\t\t},\n\n\t\t_scrollBy = function(el, x, y) {\n\t\t\tel.scrollLeft += x;\n\t\t\tel.scrollTop += y;\n\t\t},\n\n\t\t_autoScroll = _throttle(function (/**Event*/evt, /**Object*/options, /**HTMLElement*/rootEl, /**Boolean*/isFallback) {\n\t\t\t// Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=505521\n\t\t\tif (options.scroll) {\n\t\t\t\tvar _this = rootEl ? rootEl[expando] : window,\n\t\t\t\t\tsens = options.scrollSensitivity,\n\t\t\t\t\tspeed = options.scrollSpeed,\n\n\t\t\t\t\tx = evt.clientX,\n\t\t\t\t\ty = evt.clientY,\n\n\t\t\t\t\twinScroller = _getWindowScrollingElement(),\n\n\t\t\t\t\tscrollThisInstance = false;\n\n\t\t\t\t// Detect scrollEl\n\t\t\t\tif (scrollParentEl !== rootEl) {\n\t\t\t\t\t_clearAutoScrolls();\n\n\t\t\t\t\tscrollEl = options.scroll;\n\t\t\t\t\tscrollCustomFn = options.scrollFn;\n\n\t\t\t\t\tif (scrollEl === true) {\n\t\t\t\t\t\tscrollEl = _getParentAutoScrollElement(rootEl, true);\n\t\t\t\t\t\tscrollParentEl = scrollEl;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\n\t\t\t\tvar layersOut = 0;\n\t\t\t\tvar currentParent = scrollEl;\n\t\t\t\tdo {\n\t\t\t\t\tvar\tel = currentParent,\n\t\t\t\t\t\trect = _getRect(el),\n\n\t\t\t\t\t\ttop = rect.top,\n\t\t\t\t\t\tbottom = rect.bottom,\n\t\t\t\t\t\tleft = rect.left,\n\t\t\t\t\t\tright = rect.right,\n\n\t\t\t\t\t\twidth = rect.width,\n\t\t\t\t\t\theight = rect.height,\n\n\t\t\t\t\t\tscrollWidth,\n\t\t\t\t\t\tscrollHeight,\n\n\t\t\t\t\t\tcss,\n\n\t\t\t\t\t\tvx,\n\t\t\t\t\t\tvy,\n\n\t\t\t\t\t\tcanScrollX,\n\t\t\t\t\t\tcanScrollY,\n\n\t\t\t\t\t\tscrollPosX,\n\t\t\t\t\t\tscrollPosY;\n\n\n\t\t\t\t\tscrollWidth = el.scrollWidth;\n\t\t\t\t\tscrollHeight = el.scrollHeight;\n\n\t\t\t\t\tcss = _css(el);\n\n\t\t\t\t\tscrollPosX = el.scrollLeft;\n\t\t\t\t\tscrollPosY = el.scrollTop;\n\n\t\t\t\t\tif (el === winScroller) {\n\t\t\t\t\t\tcanScrollX = width < scrollWidth && (css.overflowX === 'auto' || css.overflowX === 'scroll' || css.overflowX === 'visible');\n\t\t\t\t\t\tcanScrollY = height < scrollHeight && (css.overflowY === 'auto' || css.overflowY === 'scroll' || css.overflowY === 'visible');\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcanScrollX = width < scrollWidth && (css.overflowX === 'auto' || css.overflowX === 'scroll');\n\t\t\t\t\t\tcanScrollY = height < scrollHeight && (css.overflowY === 'auto' || css.overflowY === 'scroll');\n\t\t\t\t\t}\n\n\t\t\t\t\tvx = canScrollX && (abs(right - x) <= sens && (scrollPosX + width) < scrollWidth) - (abs(left - x) <= sens && !!scrollPosX);\n\n\t\t\t\t\tvy = canScrollY && (abs(bottom - y) <= sens && (scrollPosY + height) < scrollHeight) - (abs(top - y) <= sens && !!scrollPosY);\n\n\n\t\t\t\t\tif (!autoScrolls[layersOut]) {\n\t\t\t\t\t\tfor (var i = 0; i <= layersOut; i++) {\n\t\t\t\t\t\t\tif (!autoScrolls[i]) {\n\t\t\t\t\t\t\t\tautoScrolls[i] = {};\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (autoScrolls[layersOut].vx != vx || autoScrolls[layersOut].vy != vy || autoScrolls[layersOut].el !== el) {\n\t\t\t\t\t\tautoScrolls[layersOut].el = el;\n\t\t\t\t\t\tautoScrolls[layersOut].vx = vx;\n\t\t\t\t\t\tautoScrolls[layersOut].vy = vy;\n\n\t\t\t\t\t\tclearInterval(autoScrolls[layersOut].pid);\n\n\t\t\t\t\t\tif (el && (vx != 0 || vy != 0)) {\n\t\t\t\t\t\t\tscrollThisInstance = true;\n\t\t\t\t\t\t\t/* jshint loopfunc:true */\n\t\t\t\t\t\t\tautoScrolls[layersOut].pid = setInterval((function () {\n\t\t\t\t\t\t\t\t// emulate drag over during autoscroll (fallback), emulating native DnD behaviour\n\t\t\t\t\t\t\t\tif (isFallback && this.layer === 0) {\n\t\t\t\t\t\t\t\t\tSortable.active._emulateDragOver(true);\n\t\t\t\t\t\t\t\t\tSortable.active._onTouchMove(touchEvt, true);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tvar scrollOffsetY = autoScrolls[this.layer].vy ? autoScrolls[this.layer].vy * speed : 0;\n\t\t\t\t\t\t\t\tvar scrollOffsetX = autoScrolls[this.layer].vx ? autoScrolls[this.layer].vx * speed : 0;\n\n\t\t\t\t\t\t\t\tif ('function' === typeof(scrollCustomFn)) {\n\t\t\t\t\t\t\t\t\tif (scrollCustomFn.call(_this, scrollOffsetX, scrollOffsetY, evt, touchEvt, autoScrolls[this.layer].el) !== 'continue') {\n\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t_scrollBy(autoScrolls[this.layer].el, scrollOffsetX, scrollOffsetY);\n\t\t\t\t\t\t\t}).bind({layer: layersOut}), 24);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tlayersOut++;\n\t\t\t\t} while (options.bubbleScroll && currentParent !== winScroller && (currentParent = _getParentAutoScrollElement(currentParent, false)));\n\t\t\t\tscrolling = scrollThisInstance; // in case another function catches scrolling as false in between when it is not\n\t\t\t}\n\t\t}, 30),\n\n\t\t_clearAutoScrolls = function () {\n\t\t\tautoScrolls.forEach(function(autoScroll) {\n\t\t\t\tclearInterval(autoScroll.pid);\n\t\t\t});\n\t\t\tautoScrolls = [];\n\t\t},\n\n\t\t_prepareGroup = function (options) {\n\t\t\tfunction toFn(value, pull) {\n\t\t\t\treturn function(to, from, dragEl, evt) {\n\t\t\t\t\tvar sameGroup = to.options.group.name &&\n\t\t\t\t\t\t\t\t\tfrom.options.group.name &&\n\t\t\t\t\t\t\t\t\tto.options.group.name === from.options.group.name;\n\n\t\t\t\t\tif (value == null && (pull || sameGroup)) {\n\t\t\t\t\t\t// Default pull value\n\t\t\t\t\t\t// Default pull and put value if same group\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} else if (value == null || value === false) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t} else if (pull && value === 'clone') {\n\t\t\t\t\t\treturn value;\n\t\t\t\t\t} else if (typeof value === 'function') {\n\t\t\t\t\t\treturn toFn(value(to, from, dragEl, evt), pull)(to, from, dragEl, evt);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar otherGroup = (pull ? to : from).options.group.name;\n\n\t\t\t\t\t\treturn (value === true ||\n\t\t\t\t\t\t(typeof value === 'string' && value === otherGroup) ||\n\t\t\t\t\t\t(value.join && value.indexOf(otherGroup) > -1));\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tvar group = {};\n\t\t\tvar originalGroup = options.group;\n\n\t\t\tif (!originalGroup || typeof originalGroup != 'object') {\n\t\t\t\toriginalGroup = {name: originalGroup};\n\t\t\t}\n\n\t\t\tgroup.name = originalGroup.name;\n\t\t\tgroup.checkPull = toFn(originalGroup.pull, true);\n\t\t\tgroup.checkPut = toFn(originalGroup.put);\n\t\t\tgroup.revertClone = originalGroup.revertClone;\n\n\t\t\toptions.group = group;\n\t\t},\n\n\t\t_checkAlignment = function(evt) {\n\t\t\tif (!dragEl || !dragEl.parentNode) return;\n\t\t\tdragEl.parentNode[expando] && dragEl.parentNode[expando]._computeIsAligned(evt);\n\t\t},\n\n\t\t_isTrueParentSortable = function(el, target) {\n\t\t\tvar trueParent = target;\n\t\t\twhile (!trueParent[expando]) {\n\t\t\t\ttrueParent = trueParent.parentNode;\n\t\t\t}\n\n\t\t\treturn el === trueParent;\n\t\t},\n\n\t\t_artificalBubble = function(sortable, originalEvt, method) {\n\t\t\t// Artificial IE bubbling\n\t\t\tvar nextParent = sortable.parentNode;\n\t\t\twhile (nextParent && !nextParent[expando]) {\n\t\t\t\tnextParent = nextParent.parentNode;\n\t\t\t}\n\n\t\t\tif (nextParent) {\n\t\t\t\tnextParent[expando][method](_extend(originalEvt, {\n\t\t\t\t\tartificialBubble: true\n\t\t\t\t}));\n\t\t\t}\n\t\t},\n\n\t\t_hideGhostForTarget = function() {\n\t\t\tif (!supportCssPointerEvents && ghostEl) {\n\t\t\t\t_css(ghostEl, 'display', 'none');\n\t\t\t}\n\t\t},\n\n\t\t_unhideGhostForTarget = function() {\n\t\t\tif (!supportCssPointerEvents && ghostEl) {\n\t\t\t\t_css(ghostEl, 'display', '');\n\t\t\t}\n\t\t};\n\n\n\t// #1184 fix - Prevent click event on fallback if dragged but item not changed position\n\tdocument.addEventListener('click', function(evt) {\n\t\tif (ignoreNextClick) {\n\t\t\tevt.preventDefault();\n\t\t\tevt.stopPropagation && evt.stopPropagation();\n\t\t\tevt.stopImmediatePropagation && evt.stopImmediatePropagation();\n\t\t\tignoreNextClick = false;\n\t\t\treturn false;\n\t\t}\n\t}, true);\n\n\tvar nearestEmptyInsertDetectEvent = function(evt) {\n\t\tevt = evt.touches ? evt.touches[0] : evt;\n\t\tif (dragEl) {\n\t\t\tvar nearest = _detectNearestEmptySortable(evt.clientX, evt.clientY);\n\n\t\t\tif (nearest) {\n\t\t\t\tnearest[expando]._onDragOver({\n\t\t\t\t\tclientX: evt.clientX,\n\t\t\t\t\tclientY: evt.clientY,\n\t\t\t\t\ttarget: nearest,\n\t\t\t\t\trootEl: nearest\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t};\n\t// We do not want this to be triggered if completed (bubbling canceled), so only define it here\n\t_on(document, 'dragover', nearestEmptyInsertDetectEvent);\n\t_on(document, 'mousemove', nearestEmptyInsertDetectEvent);\n\t_on(document, 'touchmove', nearestEmptyInsertDetectEvent);\n\n\t/**\n\t * @class Sortable\n\t * @param {HTMLElement} el\n\t * @param {Object} [options]\n\t */\n\tfunction Sortable(el, options) {\n\t\tif (!(el && el.nodeType && el.nodeType === 1)) {\n\t\t\tthrow 'Sortable: `el` must be HTMLElement, not ' + {}.toString.call(el);\n\t\t}\n\n\t\tthis.el = el; // root element\n\t\tthis.options = options = _extend({}, options);\n\n\n\t\t// Export instance\n\t\tel[expando] = this;\n\n\t\t// Default options\n\t\tvar defaults = {\n\t\t\tgroup: null,\n\t\t\tsort: true,\n\t\t\tdisabled: false,\n\t\t\tstore: null,\n\t\t\thandle: null,\n\t\t\tscroll: true,\n\t\t\tscrollSensitivity: 30,\n\t\t\tscrollSpeed: 10,\n\t\t\tbubbleScroll: true,\n\t\t\tdraggable: /[uo]l/i.test(el.nodeName) ? '>li' : '>*',\n\t\t\tswapThreshold: 1, // percentage; 0 <= x <= 1\n\t\t\tinvertSwap: false, // invert always\n\t\t\tinvertedSwapThreshold: null, // will be set to same as swapThreshold if default\n\t\t\tremoveCloneOnHide: true,\n\t\t\tdirection: function() {\n\t\t\t\treturn _detectDirection(el, this.options);\n\t\t\t},\n\t\t\tghostClass: 'sortable-ghost',\n\t\t\tchosenClass: 'sortable-chosen',\n\t\t\tdragClass: 'sortable-drag',\n\t\t\tignore: 'a, img',\n\t\t\tfilter: null,\n\t\t\tpreventOnFilter: true,\n\t\t\tanimation: 0,\n\t\t\teasing: null,\n\t\t\tsetData: function (dataTransfer, dragEl) {\n\t\t\t\tdataTransfer.setData('Text', dragEl.textContent);\n\t\t\t},\n\t\t\tdropBubble: false,\n\t\t\tdragoverBubble: false,\n\t\t\tdataIdAttr: 'data-id',\n\t\t\tdelay: 0,\n\t\t\ttouchStartThreshold: parseInt(window.devicePixelRatio, 10) || 1,\n\t\t\tforceFallback: false,\n\t\t\tfallbackClass: 'sortable-fallback',\n\t\t\tfallbackOnBody: false,\n\t\t\tfallbackTolerance: 0,\n\t\t\tfallbackOffset: {x: 0, y: 0},\n\t\t\tsupportPointer: Sortable.supportPointer !== false && (\n\t\t\t\t('PointerEvent' in window) ||\n\t\t\t\twindow.navigator && ('msPointerEnabled' in window.navigator) // microsoft\n\t\t\t),\n\t\t\temptyInsertThreshold: 5\n\t\t};\n\n\n\t\t// Set default options\n\t\tfor (var name in defaults) {\n\t\t\t!(name in options) && (options[name] = defaults[name]);\n\t\t}\n\n\t\t_prepareGroup(options);\n\n\t\t// Bind all private methods\n\t\tfor (var fn in this) {\n\t\t\tif (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n\t\t\t\tthis[fn] = this[fn].bind(this);\n\t\t\t}\n\t\t}\n\n\t\t// Setup drag mode\n\t\tthis.nativeDraggable = options.forceFallback ? false : supportDraggable;\n\n\t\tif (this.nativeDraggable) {\n\t\t\t// Touch start threshold cannot be greater than the native dragstart threshold\n\t\t\tthis.options.touchStartThreshold = 1;\n\t\t}\n\n\t\t// Bind events\n\t\tif (options.supportPointer) {\n\t\t\t_on(el, 'pointerdown', this._onTapStart);\n\t\t} else {\n\t\t\t_on(el, 'mousedown', this._onTapStart);\n\t\t\t_on(el, 'touchstart', this._onTapStart);\n\t\t}\n\n\t\tif (this.nativeDraggable) {\n\t\t\t_on(el, 'dragover', this);\n\t\t\t_on(el, 'dragenter', this);\n\t\t}\n\n\t\tsortables.push(this.el);\n\n\t\t// Restore sorting\n\t\toptions.store && options.store.get && this.sort(options.store.get(this) || []);\n\t}\n\n\tSortable.prototype = /** @lends Sortable.prototype */ {\n\t\tconstructor: Sortable,\n\n\t\t_computeIsAligned: function(evt) {\n\t\t\tvar target;\n\n\t\t\tif (ghostEl && !supportCssPointerEvents) {\n\t\t\t\t_hideGhostForTarget();\n\t\t\t\ttarget = document.elementFromPoint(evt.clientX, evt.clientY);\n\t\t\t\t_unhideGhostForTarget();\n\t\t\t} else {\n\t\t\t\ttarget = evt.target;\n\t\t\t}\n\n\t\t\ttarget = _closest(target, this.options.draggable, this.el, false);\n\t\t\tif (_alignedSilent) return;\n\t\t\tif (!dragEl || dragEl.parentNode !== this.el) return;\n\n\t\t\tvar children = this.el.children;\n\t\t\tfor (var i = 0; i < children.length; i++) {\n\t\t\t\t// Don't change for target in case it is changed to aligned before onDragOver is fired\n\t\t\t\tif (_closest(children[i], this.options.draggable, this.el, false) && children[i] !== target) {\n\t\t\t\t\tchildren[i].sortableMouseAligned = _isClientInRowColumn(evt.clientX, evt.clientY, children[i], this._getDirection(evt, null), this.options);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Used for nulling last target when not in element, nothing to do with checking if aligned\n\t\t\tif (!_closest(target, this.options.draggable, this.el, true)) {\n\t\t\t\tlastTarget = null;\n\t\t\t}\n\n\t\t\t_alignedSilent = true;\n\t\t\tsetTimeout(function() {\n\t\t\t\t_alignedSilent = false;\n\t\t\t}, 30);\n\n\t\t},\n\n\t\t_getDirection: function(evt, target) {\n\t\t\treturn (typeof this.options.direction === 'function') ? this.options.direction.call(this, evt, target, dragEl) : this.options.direction;\n\t\t},\n\n\t\t_onTapStart: function (/** Event|TouchEvent */evt) {\n\t\t\tif (!evt.cancelable) return;\n\t\t\tvar _this = this,\n\t\t\t\tel = this.el,\n\t\t\t\toptions = this.options,\n\t\t\t\tpreventOnFilter = options.preventOnFilter,\n\t\t\t\ttype = evt.type,\n\t\t\t\ttouch = evt.touches && evt.touches[0],\n\t\t\t\ttarget = (touch || evt).target,\n\t\t\t\toriginalTarget = evt.target.shadowRoot && ((evt.path && evt.path[0]) || (evt.composedPath && evt.composedPath()[0])) || target,\n\t\t\t\tfilter = options.filter,\n\t\t\t\tstartIndex;\n\n\t\t\t_saveInputCheckedState(el);\n\n\n\t\t\t// IE: Calls events in capture mode if event element is nested. This ensures only correct element's _onTapStart goes through.\n\t\t\t// This process is also done in _onDragOver\n\t\t\tif (IE11OrLess && !evt.artificialBubble && !_isTrueParentSortable(el, target)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Don't trigger start event when an element is been dragged, otherwise the evt.oldindex always wrong when set option.group.\n\t\t\tif (dragEl) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (/mousedown|pointerdown/.test(type) && evt.button !== 0 || options.disabled) {\n\t\t\t\treturn; // only left button and enabled\n\t\t\t}\n\n\t\t\t// cancel dnd if original target is content editable\n\t\t\tif (originalTarget.isContentEditable) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\ttarget = _closest(target, options.draggable, el, false);\n\n\t\t\tif (!target) {\n\t\t\t\tif (IE11OrLess) {\n\t\t\t\t\t_artificalBubble(el, evt, '_onTapStart');\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (lastDownEl === target) {\n\t\t\t\t// Ignoring duplicate `down`\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Get the index of the dragged element within its parent\n\t\t\tstartIndex = _index(target, options.draggable);\n\n\t\t\t// Check filter\n\t\t\tif (typeof filter === 'function') {\n\t\t\t\tif (filter.call(this, evt, target, this)) {\n\t\t\t\t\t_dispatchEvent(_this, originalTarget, 'filter', target, el, el, startIndex);\n\t\t\t\t\tpreventOnFilter && evt.cancelable && evt.preventDefault();\n\t\t\t\t\treturn; // cancel dnd\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (filter) {\n\t\t\t\tfilter = filter.split(',').some(function (criteria) {\n\t\t\t\t\tcriteria = _closest(originalTarget, criteria.trim(), el, false);\n\n\t\t\t\t\tif (criteria) {\n\t\t\t\t\t\t_dispatchEvent(_this, criteria, 'filter', target, el, el, startIndex);\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tif (filter) {\n\t\t\t\t\tpreventOnFilter && evt.cancelable && evt.preventDefault();\n\t\t\t\t\treturn; // cancel dnd\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (options.handle && !_closest(originalTarget, options.handle, el, false)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Prepare `dragstart`\n\t\t\tthis._prepareDragStart(evt, touch, target, startIndex);\n\t\t},\n\n\n\t\t_handleAutoScroll: function(evt, fallback) {\n\t\t\tif (!dragEl || !this.options.scroll) return;\n\t\t\tvar x = evt.clientX,\n\t\t\t\ty = evt.clientY,\n\n\t\t\t\telem = document.elementFromPoint(x, y),\n\t\t\t\t_this = this;\n\n\t\t\t// IE does not seem to have native autoscroll,\n\t\t\t// Edge's autoscroll seems too conditional,\n\t\t\t// MACOS Safari does not have autoscroll,\n\t\t\t// Firefox and Chrome are good\n\t\t\tif (fallback || Edge || IE11OrLess || Safari) {\n\t\t\t\t_autoScroll(evt, _this.options, elem, fallback);\n\n\t\t\t\t// Listener for pointer element change\n\t\t\t\tvar ogElemScroller = _getParentAutoScrollElement(elem, true);\n\t\t\t\tif (\n\t\t\t\t\tscrolling &&\n\t\t\t\t\t(\n\t\t\t\t\t\t!pointerElemChangedInterval ||\n\t\t\t\t\t\tx !== lastPointerElemX ||\n\t\t\t\t\t\ty !== lastPointerElemY\n\t\t\t\t\t)\n\t\t\t\t) {\n\n\t\t\t\t\tpointerElemChangedInterval && clearInterval(pointerElemChangedInterval);\n\t\t\t\t\t// Detect for pointer elem change, emulating native DnD behaviour\n\t\t\t\t\tpointerElemChangedInterval = setInterval(function() {\n\t\t\t\t\t\tif (!dragEl) return;\n\t\t\t\t\t\t// could also check if scroll direction on newElem changes due to parent autoscrolling\n\t\t\t\t\t\tvar newElem = _getParentAutoScrollElement(document.elementFromPoint(x, y), true);\n\t\t\t\t\t\tif (newElem !== ogElemScroller) {\n\t\t\t\t\t\t\togElemScroller = newElem;\n\t\t\t\t\t\t\t_clearAutoScrolls();\n\t\t\t\t\t\t\t_autoScroll(evt, _this.options, ogElemScroller, fallback);\n\t\t\t\t\t\t}\n\t\t\t\t\t}, 10);\n\t\t\t\t\tlastPointerElemX = x;\n\t\t\t\t\tlastPointerElemY = y;\n\t\t\t\t}\n\n\t\t\t} else {\n\t\t\t\t// if DnD is enabled (and browser has good autoscrolling), first autoscroll will already scroll, so get parent autoscroll of first autoscroll\n\t\t\t\tif (!_this.options.bubbleScroll || _getParentAutoScrollElement(elem, true) === _getWindowScrollingElement()) {\n\t\t\t\t\t_clearAutoScrolls();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\t_autoScroll(evt, _this.options, _getParentAutoScrollElement(elem, false), false);\n\t\t\t}\n\t\t},\n\n\t\t_prepareDragStart: function (/** Event */evt, /** Touch */touch, /** HTMLElement */target, /** Number */startIndex) {\n\t\t\tvar _this = this,\n\t\t\t\tel = _this.el,\n\t\t\t\toptions = _this.options,\n\t\t\t\townerDocument = el.ownerDocument,\n\t\t\t\tdragStartFn;\n\n\t\t\tif (target && !dragEl && (target.parentNode === el)) {\n\t\t\t\trootEl = el;\n\t\t\t\tdragEl = target;\n\t\t\t\tparentEl = dragEl.parentNode;\n\t\t\t\tnextEl = dragEl.nextSibling;\n\t\t\t\tlastDownEl = target;\n\t\t\t\tactiveGroup = options.group;\n\t\t\t\toldIndex = startIndex;\n\n\t\t\t\ttapEvt = {\n\t\t\t\t\ttarget: dragEl,\n\t\t\t\t\tclientX: (touch || evt).clientX,\n\t\t\t\t\tclientY: (touch || evt).clientY\n\t\t\t\t};\n\n\t\t\t\tthis._lastX = (touch || evt).clientX;\n\t\t\t\tthis._lastY = (touch || evt).clientY;\n\n\t\t\t\tdragEl.style['will-change'] = 'all';\n\t\t\t\t// undo animation if needed\n\t\t\t\tdragEl.style.transition = '';\n\t\t\t\tdragEl.style.transform = '';\n\n\t\t\t\tdragStartFn = function () {\n\t\t\t\t\t// Delayed drag has been triggered\n\t\t\t\t\t// we can re-enable the events: touchmove/mousemove\n\t\t\t\t\t_this._disableDelayedDragEvents();\n\n\t\t\t\t\tif (!FireFox && _this.nativeDraggable) {\n\t\t\t\t\t\tdragEl.draggable = true;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Bind the events: dragstart/dragend\n\t\t\t\t\t_this._triggerDragStart(evt, touch);\n\n\t\t\t\t\t// Drag start event\n\t\t\t\t\t_dispatchEvent(_this, rootEl, 'choose', dragEl, rootEl, rootEl, oldIndex);\n\n\t\t\t\t\t// Chosen item\n\t\t\t\t\t_toggleClass(dragEl, options.chosenClass, true);\n\t\t\t\t};\n\n\t\t\t\t// Disable \"draggable\"\n\t\t\t\toptions.ignore.split(',').forEach(function (criteria) {\n\t\t\t\t\t_find(dragEl, criteria.trim(), _disableDraggable);\n\t\t\t\t});\n\n\t\t\t\tif (options.supportPointer) {\n\t\t\t\t\t_on(ownerDocument, 'pointerup', _this._onDrop);\n\t\t\t\t} else {\n\t\t\t\t\t_on(ownerDocument, 'mouseup', _this._onDrop);\n\t\t\t\t\t_on(ownerDocument, 'touchend', _this._onDrop);\n\t\t\t\t\t_on(ownerDocument, 'touchcancel', _this._onDrop);\n\t\t\t\t}\n\n\t\t\t\t// Make dragEl draggable (must be before delay for FireFox)\n\t\t\t\tif (FireFox && this.nativeDraggable) {\n\t\t\t\t\tthis.options.touchStartThreshold = 4;\n\t\t\t\t\tdragEl.draggable = true;\n\t\t\t\t}\n\n\t\t\t\t// Delay is impossible for native DnD in Edge or IE\n\t\t\t\tif (options.delay && (!this.nativeDraggable || !(Edge || IE11OrLess))) {\n\t\t\t\t\t// If the user moves the pointer or let go the click or touch\n\t\t\t\t\t// before the delay has been reached:\n\t\t\t\t\t// disable the delayed drag\n\t\t\t\t\t_on(ownerDocument, 'mouseup', _this._disableDelayedDrag);\n\t\t\t\t\t_on(ownerDocument, 'touchend', _this._disableDelayedDrag);\n\t\t\t\t\t_on(ownerDocument, 'touchcancel', _this._disableDelayedDrag);\n\t\t\t\t\t_on(ownerDocument, 'mousemove', _this._delayedDragTouchMoveHandler);\n\t\t\t\t\t_on(ownerDocument, 'touchmove', _this._delayedDragTouchMoveHandler);\n\t\t\t\t\toptions.supportPointer && _on(ownerDocument, 'pointermove', _this._delayedDragTouchMoveHandler);\n\n\t\t\t\t\t_this._dragStartTimer = setTimeout(dragStartFn, options.delay);\n\t\t\t\t} else {\n\t\t\t\t\tdragStartFn();\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t_delayedDragTouchMoveHandler: function (/** TouchEvent|PointerEvent **/e) {\n\t\t\tvar touch = e.touches ? e.touches[0] : e;\n\t\t\tif (max(abs(touch.clientX - this._lastX), abs(touch.clientY - this._lastY))\n\t\t\t\t\t>= Math.floor(this.options.touchStartThreshold / (this.nativeDraggable && window.devicePixelRatio || 1))\n\t\t\t) {\n\t\t\t\tthis._disableDelayedDrag();\n\t\t\t}\n\t\t},\n\n\t\t_disableDelayedDrag: function () {\n\t\t\tdragEl && _disableDraggable(dragEl);\n\t\t\tclearTimeout(this._dragStartTimer);\n\n\t\t\tthis._disableDelayedDragEvents();\n\t\t},\n\n\t\t_disableDelayedDragEvents: function () {\n\t\t\tvar ownerDocument = this.el.ownerDocument;\n\t\t\t_off(ownerDocument, 'mouseup', this._disableDelayedDrag);\n\t\t\t_off(ownerDocument, 'touchend', this._disableDelayedDrag);\n\t\t\t_off(ownerDocument, 'touchcancel', this._disableDelayedDrag);\n\t\t\t_off(ownerDocument, 'mousemove', this._delayedDragTouchMoveHandler);\n\t\t\t_off(ownerDocument, 'touchmove', this._delayedDragTouchMoveHandler);\n\t\t\t_off(ownerDocument, 'pointermove', this._delayedDragTouchMoveHandler);\n\t\t},\n\n\t\t_triggerDragStart: function (/** Event */evt, /** Touch */touch) {\n\t\t\ttouch = touch || (evt.pointerType == 'touch' ? evt : null);\n\n\t\t\tif (!this.nativeDraggable || touch) {\n\t\t\t\tif (this.options.supportPointer) {\n\t\t\t\t\t_on(document, 'pointermove', this._onTouchMove);\n\t\t\t\t} else if (touch) {\n\t\t\t\t\t_on(document, 'touchmove', this._onTouchMove);\n\t\t\t\t} else {\n\t\t\t\t\t_on(document, 'mousemove', this._onTouchMove);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t_on(dragEl, 'dragend', this);\n\t\t\t\t_on(rootEl, 'dragstart', this._onDragStart);\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tif (document.selection) {\n\t\t\t\t\t// Timeout neccessary for IE9\n\t\t\t\t\t_nextTick(function () {\n\t\t\t\t\t\tdocument.selection.empty();\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\twindow.getSelection().removeAllRanges();\n\t\t\t\t}\n\t\t\t} catch (err) {\n\t\t\t}\n\t\t},\n\n\t\t_dragStarted: function (fallback, evt) {\n\t\t\tawaitingDragStarted = false;\n\t\t\tif (rootEl && dragEl) {\n\t\t\t\tif (this.nativeDraggable) {\n\t\t\t\t\t_on(document, 'dragover', this._handleAutoScroll);\n\t\t\t\t\t_on(document, 'dragover', _checkAlignment);\n\t\t\t\t}\n\t\t\t\tvar options = this.options;\n\n\t\t\t\t// Apply effect\n\t\t\t\t!fallback && _toggleClass(dragEl, options.dragClass, false);\n\t\t\t\t_toggleClass(dragEl, options.ghostClass, true);\n\n\t\t\t\t// In case dragging an animated element\n\t\t\t\t_css(dragEl, 'transform', '');\n\n\t\t\t\tSortable.active = this;\n\n\t\t\t\tfallback && this._appendGhost();\n\n\t\t\t\t// Drag start event\n\t\t\t\t_dispatchEvent(this, rootEl, 'start', dragEl, rootEl, rootEl, oldIndex, undefined, evt);\n\t\t\t} else {\n\t\t\t\tthis._nulling();\n\t\t\t}\n\t\t},\n\n\t\t_emulateDragOver: function (forAutoScroll) {\n\t\t\tif (touchEvt) {\n\t\t\t\tif (this._lastX === touchEvt.clientX && this._lastY === touchEvt.clientY && !forAutoScroll) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis._lastX = touchEvt.clientX;\n\t\t\t\tthis._lastY = touchEvt.clientY;\n\n\t\t\t\t_hideGhostForTarget();\n\n\t\t\t\tvar target = document.elementFromPoint(touchEvt.clientX, touchEvt.clientY);\n\t\t\t\tvar parent = target;\n\n\t\t\t\twhile (target && target.shadowRoot) {\n\t\t\t\t\ttarget = target.shadowRoot.elementFromPoint(touchEvt.clientX, touchEvt.clientY);\n\t\t\t\t\tparent = target;\n\t\t\t\t}\n\n\t\t\t\tif (parent) {\n\t\t\t\t\tdo {\n\t\t\t\t\t\tif (parent[expando]) {\n\t\t\t\t\t\t\tvar inserted;\n\n\t\t\t\t\t\t\tinserted = parent[expando]._onDragOver({\n\t\t\t\t\t\t\t\tclientX: touchEvt.clientX,\n\t\t\t\t\t\t\t\tclientY: touchEvt.clientY,\n\t\t\t\t\t\t\t\ttarget: target,\n\t\t\t\t\t\t\t\trootEl: parent\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\tif (inserted && !this.options.dragoverBubble) {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\ttarget = parent; // store last element\n\t\t\t\t\t}\n\t\t\t\t\t/* jshint boss:true */\n\t\t\t\t\twhile (parent = parent.parentNode);\n\t\t\t\t}\n\t\t\t\tdragEl.parentNode[expando]._computeIsAligned(touchEvt);\n\n\t\t\t\t_unhideGhostForTarget();\n\t\t\t}\n\t\t},\n\n\n\t\t_onTouchMove: function (/**TouchEvent*/evt, forAutoScroll) {\n\t\t\tif (tapEvt) {\n\t\t\t\tvar\toptions = this.options,\n\t\t\t\t\tfallbackTolerance = options.fallbackTolerance,\n\t\t\t\t\tfallbackOffset = options.fallbackOffset,\n\t\t\t\t\ttouch = evt.touches ? evt.touches[0] : evt,\n\t\t\t\t\tmatrix = ghostEl && _matrix(ghostEl),\n\t\t\t\t\tscaleX = ghostEl && matrix && matrix.a,\n\t\t\t\t\tscaleY = ghostEl && matrix && matrix.d,\n\t\t\t\t\trelativeScrollOffset = PositionGhostAbsolutely && ghostRelativeParent && _getRelativeScrollOffset(ghostRelativeParent),\n\t\t\t\t\tdx = ((touch.clientX - tapEvt.clientX)\n\t\t\t\t\t\t\t+ fallbackOffset.x) / (scaleX || 1)\n\t\t\t\t\t\t\t+ (relativeScrollOffset ? (relativeScrollOffset[0] - ghostRelativeParentInitialScroll[0]) : 0) / (scaleX || 1),\n\t\t\t\t\tdy = ((touch.clientY - tapEvt.clientY)\n\t\t\t\t\t\t\t+ fallbackOffset.y) / (scaleY || 1)\n\t\t\t\t\t\t\t+ (relativeScrollOffset ? (relativeScrollOffset[1] - ghostRelativeParentInitialScroll[1]) : 0) / (scaleY || 1),\n\t\t\t\t\ttranslate3d = evt.touches ? 'translate3d(' + dx + 'px,' + dy + 'px,0)' : 'translate(' + dx + 'px,' + dy + 'px)';\n\n\t\t\t\t// only set the status to dragging, when we are actually dragging\n\t\t\t\tif (!Sortable.active && !awaitingDragStarted) {\n\t\t\t\t\tif (fallbackTolerance &&\n\t\t\t\t\t\tmin(abs(touch.clientX - this._lastX), abs(touch.clientY - this._lastY)) < fallbackTolerance\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tthis._onDragStart(evt, true);\n\t\t\t\t}\n\n\t\t\t\t!forAutoScroll && this._handleAutoScroll(touch, true);\n\n\t\t\t\tmoved = true;\n\t\t\t\ttouchEvt = touch;\n\n\t\t\t\t_css(ghostEl, 'webkitTransform', translate3d);\n\t\t\t\t_css(ghostEl, 'mozTransform', translate3d);\n\t\t\t\t_css(ghostEl, 'msTransform', translate3d);\n\t\t\t\t_css(ghostEl, 'transform', translate3d);\n\n\t\t\t\tevt.cancelable && evt.preventDefault();\n\t\t\t}\n\t\t},\n\n\t\t_appendGhost: function () {\n\t\t\t// Bug if using scale(): https://stackoverflow.com/questions/2637058\n\t\t\t// Not being adjusted for\n\t\t\tif (!ghostEl) {\n\t\t\t\tvar container = this.options.fallbackOnBody ? document.body : rootEl,\n\t\t\t\t\trect = _getRect(dragEl, true, container, !PositionGhostAbsolutely),\n\t\t\t\t\tcss = _css(dragEl),\n\t\t\t\t\toptions = this.options;\n\n\t\t\t\t// Position absolutely\n\t\t\t\tif (PositionGhostAbsolutely) {\n\t\t\t\t\t// Get relatively positioned parent\n\t\t\t\t\tghostRelativeParent = container;\n\n\t\t\t\t\twhile (\n\t\t\t\t\t\t_css(ghostRelativeParent, 'position') === 'static' &&\n\t\t\t\t\t\t_css(ghostRelativeParent, 'transform') === 'none' &&\n\t\t\t\t\t\tghostRelativeParent !== document\n\t\t\t\t\t) {\n\t\t\t\t\t\tghostRelativeParent = ghostRelativeParent.parentNode;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (ghostRelativeParent !== document) {\n\t\t\t\t\t\tvar ghostRelativeParentRect = _getRect(ghostRelativeParent, true);\n\n\t\t\t\t\t\trect.top -= ghostRelativeParentRect.top;\n\t\t\t\t\t\trect.left -= ghostRelativeParentRect.left;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (ghostRelativeParent !== document.body && ghostRelativeParent !== document.documentElement) {\n\t\t\t\t\t\tif (ghostRelativeParent === document) ghostRelativeParent = _getWindowScrollingElement();\n\n\t\t\t\t\t\trect.top += ghostRelativeParent.scrollTop;\n\t\t\t\t\t\trect.left += ghostRelativeParent.scrollLeft;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tghostRelativeParent = _getWindowScrollingElement();\n\t\t\t\t\t}\n\t\t\t\t\tghostRelativeParentInitialScroll = _getRelativeScrollOffset(ghostRelativeParent);\n\t\t\t\t}\n\n\n\t\t\t\tghostEl = dragEl.cloneNode(true);\n\n\t\t\t\t_toggleClass(ghostEl, options.ghostClass, false);\n\t\t\t\t_toggleClass(ghostEl, options.fallbackClass, true);\n\t\t\t\t_toggleClass(ghostEl, options.dragClass, true);\n\n\t\t\t\t_css(ghostEl, 'box-sizing', 'border-box');\n\t\t\t\t_css(ghostEl, 'margin', 0);\n\t\t\t\t_css(ghostEl, 'top', rect.top);\n\t\t\t\t_css(ghostEl, 'left', rect.left);\n\t\t\t\t_css(ghostEl, 'width', rect.width);\n\t\t\t\t_css(ghostEl, 'height', rect.height);\n\t\t\t\t_css(ghostEl, 'opacity', '0.8');\n\t\t\t\t_css(ghostEl, 'position', (PositionGhostAbsolutely ? 'absolute' : 'fixed'));\n\t\t\t\t_css(ghostEl, 'zIndex', '100000');\n\t\t\t\t_css(ghostEl, 'pointerEvents', 'none');\n\n\t\t\t\tcontainer.appendChild(ghostEl);\n\t\t\t}\n\t\t},\n\n\t\t_onDragStart: function (/**Event*/evt, /**boolean*/fallback) {\n\t\t\tvar _this = this;\n\t\t\tvar dataTransfer = evt.dataTransfer;\n\t\t\tvar options = _this.options;\n\n\t\t\t// Setup clone\n\t\t\tcloneEl = _clone(dragEl);\n\n\t\t\tcloneEl.draggable = false;\n\t\t\tcloneEl.style['will-change'] = '';\n\n\t\t\tthis._hideClone();\n\n\t\t\t_toggleClass(cloneEl, _this.options.chosenClass, false);\n\n\n\t\t\t// #1143: IFrame support workaround\n\t\t\t_this._cloneId = _nextTick(function () {\n\t\t\t\tif (!_this.options.removeCloneOnHide) {\n\t\t\t\t\trootEl.insertBefore(cloneEl, dragEl);\n\t\t\t\t}\n\t\t\t\t_dispatchEvent(_this, rootEl, 'clone', dragEl);\n\t\t\t});\n\n\n\t\t\t!fallback && _toggleClass(dragEl, options.dragClass, true);\n\n\t\t\t// Set proper drop events\n\t\t\tif (fallback) {\n\t\t\t\tignoreNextClick = true;\n\t\t\t\t_this._loopId = setInterval(_this._emulateDragOver, 50);\n\t\t\t} else {\n\t\t\t\t// Undo what was set in _prepareDragStart before drag started\n\t\t\t\t_off(document, 'mouseup', _this._onDrop);\n\t\t\t\t_off(document, 'touchend', _this._onDrop);\n\t\t\t\t_off(document, 'touchcancel', _this._onDrop);\n\n\t\t\t\tif (dataTransfer) {\n\t\t\t\t\tdataTransfer.effectAllowed = 'move';\n\t\t\t\t\toptions.setData && options.setData.call(_this, dataTransfer, dragEl);\n\t\t\t\t}\n\n\t\t\t\t_on(document, 'drop', _this);\n\n\t\t\t\t// #1276 fix:\n\t\t\t\t_css(dragEl, 'transform', 'translateZ(0)');\n\t\t\t}\n\n\t\t\tawaitingDragStarted = true;\n\n\t\t\t_this._dragStartId = _nextTick(_this._dragStarted.bind(_this, fallback, evt));\n\t\t\t_on(document, 'selectstart', _this);\n\t\t\tif (Safari) {\n\t\t\t\t_css(document.body, 'user-select', 'none');\n\t\t\t}\n\t\t},\n\n\n\t\t// Returns true - if no further action is needed (either inserted or another condition)\n\t\t_onDragOver: function (/**Event*/evt) {\n\t\t\tvar el = this.el,\n\t\t\t\ttarget = evt.target,\n\t\t\t\tdragRect,\n\t\t\t\ttargetRect,\n\t\t\t\trevert,\n\t\t\t\toptions = this.options,\n\t\t\t\tgroup = options.group,\n\t\t\t\tactiveSortable = Sortable.active,\n\t\t\t\tisOwner = (activeGroup === group),\n\t\t\t\tcanSort = options.sort,\n\t\t\t\t_this = this;\n\n\t\t\tif (_silent) return;\n\n\t\t\t// IE event order fix\n\t\t\tif (IE11OrLess && !evt.rootEl && !evt.artificialBubble && !_isTrueParentSortable(el, target)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Return invocation when dragEl is inserted (or completed)\n\t\t\tfunction completed(insertion) {\n\t\t\t\tif (insertion) {\n\t\t\t\t\tif (isOwner) {\n\t\t\t\t\t\tactiveSortable._hideClone();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tactiveSortable._showClone(_this);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (activeSortable) {\n\t\t\t\t\t\t// Set ghost class to new sortable's ghost class\n\t\t\t\t\t\t_toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : activeSortable.options.ghostClass, false);\n\t\t\t\t\t\t_toggleClass(dragEl, options.ghostClass, true);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (putSortable !== _this && _this !== Sortable.active) {\n\t\t\t\t\t\tputSortable = _this;\n\t\t\t\t\t} else if (_this === Sortable.active) {\n\t\t\t\t\t\tputSortable = null;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Animation\n\t\t\t\t\tdragRect && _this._animate(dragRect, dragEl);\n\t\t\t\t\ttarget && targetRect && _this._animate(targetRect, target);\n\t\t\t\t}\n\n\n\t\t\t\t// Null lastTarget if it is not inside a previously swapped element\n\t\t\t\tif ((target === dragEl && !dragEl.animated) || (target === el && !target.animated)) {\n\t\t\t\t\tlastTarget = null;\n\t\t\t\t}\n\t\t\t\t// no bubbling and not fallback\n\t\t\t\tif (!options.dragoverBubble && !evt.rootEl && target !== document) {\n\t\t\t\t\t_this._handleAutoScroll(evt);\n\t\t\t\t\tdragEl.parentNode[expando]._computeIsAligned(evt);\n\t\t\t\t}\n\n\t\t\t\t!options.dragoverBubble && evt.stopPropagation && evt.stopPropagation();\n\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\t// Call when dragEl has been inserted\n\t\t\tfunction changed() {\n\t\t\t\t_dispatchEvent(_this, rootEl, 'change', target, el, rootEl, oldIndex, _index(dragEl, options.draggable), evt);\n\t\t\t}\n\n\n\t\t\tif (evt.preventDefault !== void 0) {\n\t\t\t\tevt.cancelable && evt.preventDefault();\n\t\t\t}\n\n\n\t\t\tmoved = true;\n\n\t\t\ttarget = _closest(target, options.draggable, el, true);\n\n\t\t\t// target is dragEl or target is animated\n\t\t\tif (!!_closest(evt.target, null, dragEl, true) || target.animated) {\n\t\t\t\treturn completed(false);\n\t\t\t}\n\n\t\t\tif (target !== dragEl) {\n\t\t\t\tignoreNextClick = false;\n\t\t\t}\n\n\t\t\tif (activeSortable && !options.disabled &&\n\t\t\t\t(isOwner\n\t\t\t\t\t? canSort || (revert = !rootEl.contains(dragEl)) // Reverting item into the original list\n\t\t\t\t\t: (\n\t\t\t\t\t\tputSortable === this ||\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\t(this.lastPutMode = activeGroup.checkPull(this, activeSortable, dragEl, evt)) &&\n\t\t\t\t\t\t\tgroup.checkPut(this, activeSortable, dragEl, evt)\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tvar axis = this._getDirection(evt, target);\n\n\t\t\t\tdragRect = _getRect(dragEl);\n\n\t\t\t\tif (revert) {\n\t\t\t\t\tthis._hideClone();\n\t\t\t\t\tparentEl = rootEl; // actualization\n\n\t\t\t\t\tif (nextEl) {\n\t\t\t\t\t\trootEl.insertBefore(dragEl, nextEl);\n\t\t\t\t\t} else {\n\t\t\t\t\t\trootEl.appendChild(dragEl);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn completed(true);\n\t\t\t\t}\n\n\t\t\t\tvar elLastChild = _lastChild(el);\n\n\t\t\t\tif (!elLastChild || _ghostIsLast(evt, axis, el) && !elLastChild.animated) {\n\t\t\t\t\t// assign target only if condition is true\n\t\t\t\t\tif (elLastChild && el === evt.target) {\n\t\t\t\t\t\ttarget = elLastChild;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (target) {\n\t\t\t\t\t\ttargetRect = _getRect(target);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (isOwner) {\n\t\t\t\t\t\tactiveSortable._hideClone();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tactiveSortable._showClone(this);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (_onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, !!target) !== false) {\n\t\t\t\t\t\tel.appendChild(dragEl);\n\t\t\t\t\t\tparentEl = el; // actualization\n\t\t\t\t\t\trealDragElRect = null;\n\n\t\t\t\t\t\tchanged();\n\t\t\t\t\t\treturn completed(true);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if (target && target !== dragEl && target.parentNode === el) {\n\t\t\t\t\tvar direction = 0,\n\t\t\t\t\t\ttargetBeforeFirstSwap,\n\t\t\t\t\t\taligned = target.sortableMouseAligned,\n\t\t\t\t\t\tdifferentLevel = dragEl.parentNode !== el,\n\t\t\t\t\t\tside1 = axis === 'vertical' ? 'top' : 'left',\n\t\t\t\t\t\tscrolledPastTop = _isScrolledPast(target, 'top') || _isScrolledPast(dragEl, 'top'),\n\t\t\t\t\t\tscrollBefore = scrolledPastTop ? scrolledPastTop.scrollTop : void 0;\n\n\n\t\t\t\t\tif (lastTarget !== target) {\n\t\t\t\t\t\tlastMode = null;\n\t\t\t\t\t\ttargetBeforeFirstSwap = _getRect(target)[side1];\n\t\t\t\t\t\tpastFirstInvertThresh = false;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Reference: https://www.lucidchart.com/documents/view/10fa0e93-e362-4126-aca2-b709ee56bd8b/0\n\t\t\t\t\tif (\n\t\t\t\t\t\t_isElInRowColumn(dragEl, target, axis) && aligned ||\n\t\t\t\t\t\tdifferentLevel ||\n\t\t\t\t\t\tscrolledPastTop ||\n\t\t\t\t\t\toptions.invertSwap ||\n\t\t\t\t\t\tlastMode === 'insert' ||\n\t\t\t\t\t\t// Needed, in the case that we are inside target and inserted because not aligned... aligned will stay false while inside\n\t\t\t\t\t\t// and lastMode will change to 'insert', but we must swap\n\t\t\t\t\t\tlastMode === 'swap'\n\t\t\t\t\t) {\n\t\t\t\t\t\t// New target that we will be inside\n\t\t\t\t\t\tif (lastMode !== 'swap') {\n\t\t\t\t\t\t\tisCircumstantialInvert = options.invertSwap || differentLevel;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tdirection = _getSwapDirection(evt, target, axis,\n\t\t\t\t\t\t\toptions.swapThreshold, options.invertedSwapThreshold == null ? options.swapThreshold : options.invertedSwapThreshold,\n\t\t\t\t\t\t\tisCircumstantialInvert,\n\t\t\t\t\t\t\tlastTarget === target);\n\t\t\t\t\t\tlastMode = 'swap';\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Insert at position\n\t\t\t\t\t\tdirection = _getInsertDirection(target);\n\t\t\t\t\t\tlastMode = 'insert';\n\t\t\t\t\t}\n\t\t\t\t\tif (direction === 0) return completed(false);\n\n\t\t\t\t\trealDragElRect = null;\n\t\t\t\t\tlastTarget = target;\n\n\t\t\t\t\tlastDirection = direction;\n\n\t\t\t\t\ttargetRect = _getRect(target);\n\n\t\t\t\t\tvar nextSibling = target.nextElementSibling,\n\t\t\t\t\t\tafter = false;\n\n\t\t\t\t\tafter = direction === 1;\n\n\t\t\t\t\tvar moveVector = _onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, after);\n\n\t\t\t\t\tif (moveVector !== false) {\n\t\t\t\t\t\tif (moveVector === 1 || moveVector === -1) {\n\t\t\t\t\t\t\tafter = (moveVector === 1);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t_silent = true;\n\t\t\t\t\t\tsetTimeout(_unsilent, 30);\n\n\t\t\t\t\t\tif (isOwner) {\n\t\t\t\t\t\t\tactiveSortable._hideClone();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tactiveSortable._showClone(this);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (after && !nextSibling) {\n\t\t\t\t\t\t\tel.appendChild(dragEl);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttarget.parentNode.insertBefore(dragEl, after ? nextSibling : target);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Undo chrome's scroll adjustment\n\t\t\t\t\t\tif (scrolledPastTop) {\n\t\t\t\t\t\t\t_scrollBy(scrolledPastTop, 0, scrollBefore - scrolledPastTop.scrollTop);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tparentEl = dragEl.parentNode; // actualization\n\n\t\t\t\t\t\t// must be done before animation\n\t\t\t\t\t\tif (targetBeforeFirstSwap !== undefined && !isCircumstantialInvert) {\n\t\t\t\t\t\t\ttargetMoveDistance = abs(targetBeforeFirstSwap - _getRect(target)[side1]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tchanged();\n\n\t\t\t\t\t\treturn completed(true);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (el.contains(dragEl)) {\n\t\t\t\t\treturn completed(false);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (IE11OrLess && !evt.rootEl) {\n\t\t\t\t_artificalBubble(el, evt, '_onDragOver');\n\t\t\t}\n\n\t\t\treturn false;\n\t\t},\n\n\t\t_animate: function (prevRect, target) {\n\t\t\tvar ms = this.options.animation;\n\n\t\t\tif (ms) {\n\t\t\t\tvar currentRect = _getRect(target);\n\n\t\t\t\tif (target === dragEl) {\n\t\t\t\t\trealDragElRect = currentRect;\n\t\t\t\t}\n\n\t\t\t\tif (prevRect.nodeType === 1) {\n\t\t\t\t\tprevRect = _getRect(prevRect);\n\t\t\t\t}\n\n\t\t\t\t// Check if actually moving position\n\t\t\t\tif ((prevRect.left + prevRect.width / 2) !== (currentRect.left + currentRect.width / 2)\n\t\t\t\t\t|| (prevRect.top + prevRect.height / 2) !== (currentRect.top + currentRect.height / 2)\n\t\t\t\t) {\n\t\t\t\t\tvar matrix = _matrix(this.el),\n\t\t\t\t\t\tscaleX = matrix && matrix.a,\n\t\t\t\t\t\tscaleY = matrix && matrix.d;\n\n\t\t\t\t\t_css(target, 'transition', 'none');\n\t\t\t\t\t_css(target, 'transform', 'translate3d('\n\t\t\t\t\t\t+ (prevRect.left - currentRect.left) / (scaleX ? scaleX : 1) + 'px,'\n\t\t\t\t\t\t+ (prevRect.top - currentRect.top) / (scaleY ? scaleY : 1) + 'px,0)'\n\t\t\t\t\t);\n\n\t\t\t\t\tforRepaintDummy = target.offsetWidth; // repaint\n\t\t\t\t\t_css(target, 'transition', 'transform ' + ms + 'ms' + (this.options.easing ? ' ' + this.options.easing : ''));\n\t\t\t\t\t_css(target, 'transform', 'translate3d(0,0,0)');\n\t\t\t\t}\n\n\t\t\t\t(typeof target.animated === 'number') && clearTimeout(target.animated);\n\t\t\t\ttarget.animated = setTimeout(function () {\n\t\t\t\t\t_css(target, 'transition', '');\n\t\t\t\t\t_css(target, 'transform', '');\n\t\t\t\t\ttarget.animated = false;\n\t\t\t\t}, ms);\n\t\t\t}\n\t\t},\n\n\t\t_offUpEvents: function () {\n\t\t\tvar ownerDocument = this.el.ownerDocument;\n\n\t\t\t_off(document, 'touchmove', this._onTouchMove);\n\t\t\t_off(document, 'pointermove', this._onTouchMove);\n\t\t\t_off(ownerDocument, 'mouseup', this._onDrop);\n\t\t\t_off(ownerDocument, 'touchend', this._onDrop);\n\t\t\t_off(ownerDocument, 'pointerup', this._onDrop);\n\t\t\t_off(ownerDocument, 'touchcancel', this._onDrop);\n\t\t\t_off(document, 'selectstart', this);\n\t\t},\n\n\t\t_onDrop: function (/**Event*/evt) {\n\t\t\tvar el = this.el,\n\t\t\t\toptions = this.options;\n\t\t\tawaitingDragStarted = false;\n\t\t\tscrolling = false;\n\t\t\tisCircumstantialInvert = false;\n\t\t\tpastFirstInvertThresh = false;\n\n\t\t\tclearInterval(this._loopId);\n\n\t\t\tclearInterval(pointerElemChangedInterval);\n\t\t\t_clearAutoScrolls();\n\t\t\t_cancelThrottle();\n\n\t\t\tclearTimeout(this._dragStartTimer);\n\n\t\t\t_cancelNextTick(this._cloneId);\n\t\t\t_cancelNextTick(this._dragStartId);\n\n\t\t\t// Unbind events\n\t\t\t_off(document, 'mousemove', this._onTouchMove);\n\n\n\t\t\tif (this.nativeDraggable) {\n\t\t\t\t_off(document, 'drop', this);\n\t\t\t\t_off(el, 'dragstart', this._onDragStart);\n\t\t\t\t_off(document, 'dragover', this._handleAutoScroll);\n\t\t\t\t_off(document, 'dragover', _checkAlignment);\n\t\t\t}\n\n\t\t\tif (Safari) {\n\t\t\t\t_css(document.body, 'user-select', '');\n\t\t\t}\n\n\t\t\tthis._offUpEvents();\n\n\t\t\tif (evt) {\n\t\t\t\tif (moved) {\n\t\t\t\t\tevt.cancelable && evt.preventDefault();\n\t\t\t\t\t!options.dropBubble && evt.stopPropagation();\n\t\t\t\t}\n\n\t\t\t\tghostEl && ghostEl.parentNode && ghostEl.parentNode.removeChild(ghostEl);\n\n\t\t\t\tif (rootEl === parentEl || (putSortable && putSortable.lastPutMode !== 'clone')) {\n\t\t\t\t\t// Remove clone\n\t\t\t\t\tcloneEl && cloneEl.parentNode && cloneEl.parentNode.removeChild(cloneEl);\n\t\t\t\t}\n\n\t\t\t\tif (dragEl) {\n\t\t\t\t\tif (this.nativeDraggable) {\n\t\t\t\t\t\t_off(dragEl, 'dragend', this);\n\t\t\t\t\t}\n\n\t\t\t\t\t_disableDraggable(dragEl);\n\t\t\t\t\tdragEl.style['will-change'] = '';\n\n\t\t\t\t\t// Remove class's\n\t\t\t\t\t_toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : this.options.ghostClass, false);\n\t\t\t\t\t_toggleClass(dragEl, this.options.chosenClass, false);\n\n\t\t\t\t\t// Drag stop event\n\t\t\t\t\t_dispatchEvent(this, rootEl, 'unchoose', dragEl, parentEl, rootEl, oldIndex, null, evt);\n\n\t\t\t\t\tif (rootEl !== parentEl) {\n\t\t\t\t\t\tnewIndex = _index(dragEl, options.draggable);\n\n\t\t\t\t\t\tif (newIndex >= 0) {\n\t\t\t\t\t\t\t// Add event\n\t\t\t\t\t\t\t_dispatchEvent(null, parentEl, 'add', dragEl, parentEl, rootEl, oldIndex, newIndex, evt);\n\n\t\t\t\t\t\t\t// Remove event\n\t\t\t\t\t\t\t_dispatchEvent(this, rootEl, 'remove', dragEl, parentEl, rootEl, oldIndex, newIndex, evt);\n\n\t\t\t\t\t\t\t// drag from one list and drop into another\n\t\t\t\t\t\t\t_dispatchEvent(null, parentEl, 'sort', dragEl, parentEl, rootEl, oldIndex, newIndex, evt);\n\t\t\t\t\t\t\t_dispatchEvent(this, rootEl, 'sort', dragEl, parentEl, rootEl, oldIndex, newIndex, evt);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tputSortable && putSortable.save();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (dragEl.nextSibling !== nextEl) {\n\t\t\t\t\t\t\t// Get the index of the dragged element within its parent\n\t\t\t\t\t\t\tnewIndex = _index(dragEl, options.draggable);\n\n\t\t\t\t\t\t\tif (newIndex >= 0) {\n\t\t\t\t\t\t\t\t// drag & drop within the same list\n\t\t\t\t\t\t\t\t_dispatchEvent(this, rootEl, 'update', dragEl, parentEl, rootEl, oldIndex, newIndex, evt);\n\t\t\t\t\t\t\t\t_dispatchEvent(this, rootEl, 'sort', dragEl, parentEl, rootEl, oldIndex, newIndex, evt);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (Sortable.active) {\n\t\t\t\t\t\t/* jshint eqnull:true */\n\t\t\t\t\t\tif (newIndex == null || newIndex === -1) {\n\t\t\t\t\t\t\tnewIndex = oldIndex;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t_dispatchEvent(this, rootEl, 'end', dragEl, parentEl, rootEl, oldIndex, newIndex, evt);\n\n\t\t\t\t\t\t// Save sorting\n\t\t\t\t\t\tthis.save();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\t\t\tthis._nulling();\n\t\t},\n\n\t\t_nulling: function() {\n\t\t\trootEl =\n\t\t\tdragEl =\n\t\t\tparentEl =\n\t\t\tghostEl =\n\t\t\tnextEl =\n\t\t\tcloneEl =\n\t\t\tlastDownEl =\n\n\t\t\tscrollEl =\n\t\t\tscrollParentEl =\n\t\t\tautoScrolls.length =\n\n\t\t\tpointerElemChangedInterval =\n\t\t\tlastPointerElemX =\n\t\t\tlastPointerElemY =\n\n\t\t\ttapEvt =\n\t\t\ttouchEvt =\n\n\t\t\tmoved =\n\t\t\tnewIndex =\n\t\t\toldIndex =\n\n\t\t\tlastTarget =\n\t\t\tlastDirection =\n\n\t\t\tforRepaintDummy =\n\t\t\trealDragElRect =\n\n\t\t\tputSortable =\n\t\t\tactiveGroup =\n\t\t\tSortable.active = null;\n\n\t\t\tsavedInputChecked.forEach(function (el) {\n\t\t\t\tel.checked = true;\n\t\t\t});\n\n\t\t\tsavedInputChecked.length = 0;\n\t\t},\n\n\t\thandleEvent: function (/**Event*/evt) {\n\t\t\tswitch (evt.type) {\n\t\t\t\tcase 'drop':\n\t\t\t\tcase 'dragend':\n\t\t\t\t\tthis._onDrop(evt);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'dragenter':\n\t\t\t\tcase 'dragover':\n\t\t\t\t\tif (dragEl) {\n\t\t\t\t\t\tthis._onDragOver(evt);\n\t\t\t\t\t\t_globalDragOver(evt);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'selectstart':\n\t\t\t\t\tevt.preventDefault();\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t},\n\n\n\t\t/**\n\t\t * Serializes the item into an array of string.\n\t\t * @returns {String[]}\n\t\t */\n\t\ttoArray: function () {\n\t\t\tvar order = [],\n\t\t\t\tel,\n\t\t\t\tchildren = this.el.children,\n\t\t\t\ti = 0,\n\t\t\t\tn = children.length,\n\t\t\t\toptions = this.options;\n\n\t\t\tfor (; i < n; i++) {\n\t\t\t\tel = children[i];\n\t\t\t\tif (_closest(el, options.draggable, this.el, false)) {\n\t\t\t\t\torder.push(el.getAttribute(options.dataIdAttr) || _generateId(el));\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn order;\n\t\t},\n\n\n\t\t/**\n\t\t * Sorts the elements according to the array.\n\t\t * @param {String[]} order order of the items\n\t\t */\n\t\tsort: function (order) {\n\t\t\tvar items = {}, rootEl = this.el;\n\n\t\t\tthis.toArray().forEach(function (id, i) {\n\t\t\t\tvar el = rootEl.children[i];\n\n\t\t\t\tif (_closest(el, this.options.draggable, rootEl, false)) {\n\t\t\t\t\titems[id] = el;\n\t\t\t\t}\n\t\t\t}, this);\n\n\t\t\torder.forEach(function (id) {\n\t\t\t\tif (items[id]) {\n\t\t\t\t\trootEl.removeChild(items[id]);\n\t\t\t\t\trootEl.appendChild(items[id]);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n\t\t * Save the current sorting\n\t\t */\n\t\tsave: function () {\n\t\t\tvar store = this.options.store;\n\t\t\tstore && store.set && store.set(this);\n\t\t},\n\n\n\t\t/**\n\t\t * For each element in the set, get the first element that matches the selector by testing the element itself and traversing up through its ancestors in the DOM tree.\n\t\t * @param {HTMLElement} el\n\t\t * @param {String} [selector] default: `options.draggable`\n\t\t * @returns {HTMLElement|null}\n\t\t */\n\t\tclosest: function (el, selector) {\n\t\t\treturn _closest(el, selector || this.options.draggable, this.el, false);\n\t\t},\n\n\n\t\t/**\n\t\t * Set/get option\n\t\t * @param {string} name\n\t\t * @param {*} [value]\n\t\t * @returns {*}\n\t\t */\n\t\toption: function (name, value) {\n\t\t\tvar options = this.options;\n\n\t\t\tif (value === void 0) {\n\t\t\t\treturn options[name];\n\t\t\t} else {\n\t\t\t\toptions[name] = value;\n\n\t\t\t\tif (name === 'group') {\n\t\t\t\t\t_prepareGroup(options);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\n\t\t/**\n\t\t * Destroy\n\t\t */\n\t\tdestroy: function () {\n\t\t\tvar el = this.el;\n\n\t\t\tel[expando] = null;\n\n\t\t\t_off(el, 'mousedown', this._onTapStart);\n\t\t\t_off(el, 'touchstart', this._onTapStart);\n\t\t\t_off(el, 'pointerdown', this._onTapStart);\n\n\t\t\tif (this.nativeDraggable) {\n\t\t\t\t_off(el, 'dragover', this);\n\t\t\t\t_off(el, 'dragenter', this);\n\t\t\t}\n\t\t\t// Remove draggable attributes\n\t\t\tArray.prototype.forEach.call(el.querySelectorAll('[draggable]'), function (el) {\n\t\t\t\tel.removeAttribute('draggable');\n\t\t\t});\n\n\t\t\tthis._onDrop();\n\n\t\t\tsortables.splice(sortables.indexOf(this.el), 1);\n\n\t\t\tthis.el = el = null;\n\t\t},\n\n\t\t_hideClone: function() {\n\t\t\tif (!cloneEl.cloneHidden) {\n\t\t\t\t_css(cloneEl, 'display', 'none');\n\t\t\t\tcloneEl.cloneHidden = true;\n\t\t\t\tif (cloneEl.parentNode && this.options.removeCloneOnHide) {\n\t\t\t\t\tcloneEl.parentNode.removeChild(cloneEl);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t_showClone: function(putSortable) {\n\t\t\tif (putSortable.lastPutMode !== 'clone') {\n\t\t\t\tthis._hideClone();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (cloneEl.cloneHidden) {\n\t\t\t\t// show clone at dragEl or original position\n\t\t\t\tif (rootEl.contains(dragEl) && !this.options.group.revertClone) {\n\t\t\t\t\trootEl.insertBefore(cloneEl, dragEl);\n\t\t\t\t} else if (nextEl) {\n\t\t\t\t\trootEl.insertBefore(cloneEl, nextEl);\n\t\t\t\t} else {\n\t\t\t\t\trootEl.appendChild(cloneEl);\n\t\t\t\t}\n\n\t\t\t\tif (this.options.group.revertClone) {\n\t\t\t\t\tthis._animate(dragEl, cloneEl);\n\t\t\t\t}\n\t\t\t\t_css(cloneEl, 'display', '');\n\t\t\t\tcloneEl.cloneHidden = false;\n\t\t\t}\n\t\t}\n\t};\n\n\tfunction _closest(/**HTMLElement*/el, /**String*/selector, /**HTMLElement*/ctx, includeCTX) {\n\t\tif (el) {\n\t\t\tctx = ctx || document;\n\n\t\t\tdo {\n\t\t\t\tif (\n\t\t\t\t\tselector != null &&\n\t\t\t\t\t(\n\t\t\t\t\t\tselector[0] === '>' && el.parentNode === ctx && _matches(el, selector.substring(1)) ||\n\t\t\t\t\t\t_matches(el, selector)\n\t\t\t\t\t) ||\n\t\t\t\t\tincludeCTX && el === ctx\n\t\t\t\t) {\n\t\t\t\t\treturn el;\n\t\t\t\t}\n\n\t\t\t\tif (el === ctx) break;\n\t\t\t\t/* jshint boss:true */\n\t\t\t} while (el = _getParentOrHost(el));\n\t\t}\n\n\t\treturn null;\n\t}\n\n\n\tfunction _getParentOrHost(el) {\n\t\treturn (el.host && el !== document && el.host.nodeType)\n\t\t\t? el.host\n\t\t\t: el.parentNode;\n\t}\n\n\n\tfunction _globalDragOver(/**Event*/evt) {\n\t\tif (evt.dataTransfer) {\n\t\t\tevt.dataTransfer.dropEffect = 'move';\n\t\t}\n\t\tevt.cancelable && evt.preventDefault();\n\t}\n\n\n\tfunction _on(el, event, fn) {\n\t\tel.addEventListener(event, fn, captureMode);\n\t}\n\n\n\tfunction _off(el, event, fn) {\n\t\tel.removeEventListener(event, fn, captureMode);\n\t}\n\n\n\tfunction _toggleClass(el, name, state) {\n\t\tif (el && name) {\n\t\t\tif (el.classList) {\n\t\t\t\tel.classList[state ? 'add' : 'remove'](name);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tvar className = (' ' + el.className + ' ').replace(R_SPACE, ' ').replace(' ' + name + ' ', ' ');\n\t\t\t\tel.className = (className + (state ? ' ' + name : '')).replace(R_SPACE, ' ');\n\t\t\t}\n\t\t}\n\t}\n\n\n\tfunction _css(el, prop, val) {\n\t\tvar style = el && el.style;\n\n\t\tif (style) {\n\t\t\tif (val === void 0) {\n\t\t\t\tif (document.defaultView && document.defaultView.getComputedStyle) {\n\t\t\t\t\tval = document.defaultView.getComputedStyle(el, '');\n\t\t\t\t}\n\t\t\t\telse if (el.currentStyle) {\n\t\t\t\t\tval = el.currentStyle;\n\t\t\t\t}\n\n\t\t\t\treturn prop === void 0 ? val : val[prop];\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (!(prop in style) && prop.indexOf('webkit') === -1) {\n\t\t\t\t\tprop = '-webkit-' + prop;\n\t\t\t\t}\n\n\t\t\t\tstyle[prop] = val + (typeof val === 'string' ? '' : 'px');\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction _matrix(el) {\n\t\tvar appliedTransforms = '';\n\t\tdo {\n\t\t\tvar transform = _css(el, 'transform');\n\n\t\t\tif (transform && transform !== 'none') {\n\t\t\t\tappliedTransforms = transform + ' ' + appliedTransforms;\n\t\t\t}\n\t\t\t/* jshint boss:true */\n\t\t} while (el = el.parentNode);\n\n\t\tif (window.DOMMatrix) {\n\t\t\treturn new DOMMatrix(appliedTransforms);\n\t\t} else if (window.WebKitCSSMatrix) {\n\t\t\treturn new WebKitCSSMatrix(appliedTransforms);\n\t\t} else if (window.CSSMatrix) {\n\t\t\treturn new CSSMatrix(appliedTransforms);\n\t\t}\n\t}\n\n\n\tfunction _find(ctx, tagName, iterator) {\n\t\tif (ctx) {\n\t\t\tvar list = ctx.getElementsByTagName(tagName), i = 0, n = list.length;\n\n\t\t\tif (iterator) {\n\t\t\t\tfor (; i < n; i++) {\n\t\t\t\t\titerator(list[i], i);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn list;\n\t\t}\n\n\t\treturn [];\n\t}\n\n\n\n\tfunction _dispatchEvent(sortable, rootEl, name, targetEl, toEl, fromEl, startIndex, newIndex, originalEvt) {\n\t\tsortable = (sortable || rootEl[expando]);\n\t\tvar evt,\n\t\t\toptions = sortable.options,\n\t\t\tonName = 'on' + name.charAt(0).toUpperCase() + name.substr(1);\n\t\t// Support for new CustomEvent feature\n\t\tif (window.CustomEvent && !IE11OrLess && !Edge) {\n\t\t\tevt = new CustomEvent(name, {\n\t\t\t\tbubbles: true,\n\t\t\t\tcancelable: true\n\t\t\t});\n\t\t} else {\n\t\t\tevt = document.createEvent('Event');\n\t\t\tevt.initEvent(name, true, true);\n\t\t}\n\n\t\tevt.to = toEl || rootEl;\n\t\tevt.from = fromEl || rootEl;\n\t\tevt.item = targetEl || rootEl;\n\t\tevt.clone = cloneEl;\n\n\t\tevt.oldIndex = startIndex;\n\t\tevt.newIndex = newIndex;\n\n\t\tevt.originalEvent = originalEvt;\n\t\tevt.pullMode = putSortable ? putSortable.lastPutMode : undefined;\n\n\t\tif (rootEl) {\n\t\t\trootEl.dispatchEvent(evt);\n\t\t}\n\n\t\tif (options[onName]) {\n\t\t\toptions[onName].call(sortable, evt);\n\t\t}\n\t}\n\n\n\tfunction _onMove(fromEl, toEl, dragEl, dragRect, targetEl, targetRect, originalEvt, willInsertAfter) {\n\t\tvar evt,\n\t\t\tsortable = fromEl[expando],\n\t\t\tonMoveFn = sortable.options.onMove,\n\t\t\tretVal;\n\t\t// Support for new CustomEvent feature\n\t\tif (window.CustomEvent && !IE11OrLess && !Edge) {\n\t\t\tevt = new CustomEvent('move', {\n\t\t\t\tbubbles: true,\n\t\t\t\tcancelable: true\n\t\t\t});\n\t\t} else {\n\t\t\tevt = document.createEvent('Event');\n\t\t\tevt.initEvent('move', true, true);\n\t\t}\n\n\t\tevt.to = toEl;\n\t\tevt.from = fromEl;\n\t\tevt.dragged = dragEl;\n\t\tevt.draggedRect = dragRect;\n\t\tevt.related = targetEl || toEl;\n\t\tevt.relatedRect = targetRect || _getRect(toEl);\n\t\tevt.willInsertAfter = willInsertAfter;\n\n\t\tevt.originalEvent = originalEvt;\n\n\t\tfromEl.dispatchEvent(evt);\n\n\t\tif (onMoveFn) {\n\t\t\tretVal = onMoveFn.call(sortable, evt, originalEvt);\n\t\t}\n\n\t\treturn retVal;\n\t}\n\n\tfunction _disableDraggable(el) {\n\t\tel.draggable = false;\n\t}\n\n\tfunction _unsilent() {\n\t\t_silent = false;\n\t}\n\n\t/**\n\t * Gets nth child of el, ignoring hidden children, sortable's elements (does not ignore clone if it's visible)\n\t * and non-draggable elements\n\t * @param {HTMLElement} el The parent element\n\t * @param {Number} childNum The index of the child\n\t * @param {Object} options Parent Sortable's options\n\t * @return {HTMLElement} The child at index childNum, or null if not found\n\t */\n\tfunction _getChild(el, childNum, options) {\n\t\tvar currentChild = 0,\n\t\t\ti = 0,\n\t\t\tchildren = el.children;\n\n\t\twhile (i < children.length) {\n\t\t\tif (\n\t\t\t\tchildren[i].style.display !== 'none' &&\n\t\t\t\tchildren[i] !== ghostEl &&\n\t\t\t\tchildren[i] !== dragEl &&\n\t\t\t\t_closest(children[i], options.draggable, el, false)\n\t\t\t) {\n\t\t\t\tif (currentChild === childNum) {\n\t\t\t\t\treturn children[i];\n\t\t\t\t}\n\t\t\t\tcurrentChild++;\n\t\t\t}\n\n\t\t\ti++;\n\t\t}\n\t\treturn null;\n\t}\n\n\t/**\n\t * Gets the last child in the el, ignoring ghostEl or invisible elements (clones)\n\t * @param {HTMLElement} el Parent element\n\t * @return {HTMLElement} The last child, ignoring ghostEl\n\t */\n\tfunction _lastChild(el) {\n\t\tvar last = el.lastElementChild;\n\n\t\twhile (last && (last === ghostEl || last.style.display === 'none')) {\n\t\t\tlast = last.previousElementSibling;\n\t\t}\n\n\t\treturn last || null;\n\t}\n\n\tfunction _ghostIsLast(evt, axis, el) {\n\t\tvar elRect = _getRect(_lastChild(el)),\n\t\t\tmouseOnAxis = axis === 'vertical' ? evt.clientY : evt.clientX,\n\t\t\tmouseOnOppAxis = axis === 'vertical' ? evt.clientX : evt.clientY,\n\t\t\ttargetS2 = axis === 'vertical' ? elRect.bottom : elRect.right,\n\t\t\ttargetS1Opp = axis === 'vertical' ? elRect.left : elRect.top,\n\t\t\ttargetS2Opp = axis === 'vertical' ? elRect.right : elRect.bottom,\n\t\t\tspacer = 10;\n\n\t\treturn (\n\t\t\taxis === 'vertical' ?\n\t\t\t\t(mouseOnOppAxis > targetS2Opp + spacer || mouseOnOppAxis <= targetS2Opp && mouseOnAxis > targetS2 && mouseOnOppAxis >= targetS1Opp) :\n\t\t\t\t(mouseOnAxis > targetS2 && mouseOnOppAxis > targetS1Opp || mouseOnAxis <= targetS2 && mouseOnOppAxis > targetS2Opp + spacer)\n\t\t);\n\t}\n\n\tfunction _getSwapDirection(evt, target, axis, swapThreshold, invertedSwapThreshold, invertSwap, isLastTarget) {\n\t\tvar targetRect = _getRect(target),\n\t\t\tmouseOnAxis = axis === 'vertical' ? evt.clientY : evt.clientX,\n\t\t\ttargetLength = axis === 'vertical' ? targetRect.height : targetRect.width,\n\t\t\ttargetS1 = axis === 'vertical' ? targetRect.top : targetRect.left,\n\t\t\ttargetS2 = axis === 'vertical' ? targetRect.bottom : targetRect.right,\n\t\t\tdragRect = _getRect(dragEl),\n\t\t\tinvert = false;\n\n\n\t\tif (!invertSwap) {\n\t\t\t// Never invert or create dragEl shadow when target movemenet causes mouse to move past the end of regular swapThreshold\n\t\t\tif (isLastTarget && targetMoveDistance < targetLength * swapThreshold) { // multiplied only by swapThreshold because mouse will already be inside target by (1 - threshold) * targetLength / 2\n\t\t\t\t// check if past first invert threshold on side opposite of lastDirection\n\t\t\t\tif (!pastFirstInvertThresh &&\n\t\t\t\t\t(lastDirection === 1 ?\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\tmouseOnAxis > targetS1 + targetLength * invertedSwapThreshold / 2\n\t\t\t\t\t\t) :\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\tmouseOnAxis < targetS2 - targetLength * invertedSwapThreshold / 2\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\t// past first invert threshold, do not restrict inverted threshold to dragEl shadow\n\t\t\t\t\tpastFirstInvertThresh = true;\n\t\t\t\t}\n\n\t\t\t\tif (!pastFirstInvertThresh) {\n\t\t\t\t\tvar dragS1 = axis === 'vertical' ? dragRect.top : dragRect.left,\n\t\t\t\t\t\tdragS2 = axis === 'vertical' ? dragRect.bottom : dragRect.right;\n\t\t\t\t\t// dragEl shadow (target move distance shadow)\n\t\t\t\t\tif (\n\t\t\t\t\t\tlastDirection === 1 ?\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\tmouseOnAxis < targetS1 + targetMoveDistance // over dragEl shadow\n\t\t\t\t\t\t) :\n\t\t\t\t\t\t(\n\t\t\t\t\t\t\tmouseOnAxis > targetS2 - targetMoveDistance\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t\t{\n\t\t\t\t\t\treturn lastDirection * -1;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tinvert = true;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Regular\n\t\t\t\tif (\n\t\t\t\t\tmouseOnAxis > targetS1 + (targetLength * (1 - swapThreshold) / 2) &&\n\t\t\t\t\tmouseOnAxis < targetS2 - (targetLength * (1 - swapThreshold) / 2)\n\t\t\t\t) {\n\t\t\t\t\treturn _getInsertDirection(target);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tinvert = invert || invertSwap;\n\n\t\tif (invert) {\n\t\t\t// Invert of regular\n\t\t\tif (\n\t\t\t\tmouseOnAxis < targetS1 + (targetLength * invertedSwapThreshold / 2) ||\n\t\t\t\tmouseOnAxis > targetS2 - (targetLength * invertedSwapThreshold / 2)\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn ((mouseOnAxis > targetS1 + targetLength / 2) ? 1 : -1);\n\t\t\t}\n\t\t}\n\n\t\treturn 0;\n\t}\n\n\t/**\n\t * Gets the direction dragEl must be swapped relative to target in order to make it\n\t * seem that dragEl has been \"inserted\" into that element's position\n\t * @param {HTMLElement} target The target whose position dragEl is being inserted at\n\t * @return {Number} Direction dragEl must be swapped\n\t */\n\tfunction _getInsertDirection(target) {\n\t\tvar dragElIndex = _index(dragEl),\n\t\t\ttargetIndex = _index(target);\n\n\t\tif (dragElIndex < targetIndex) {\n\t\t\treturn 1;\n\t\t} else {\n\t\t\treturn -1;\n\t\t}\n\t}\n\n\n\t/**\n\t * Generate id\n\t * @param {HTMLElement} el\n\t * @returns {String}\n\t * @private\n\t */\n\tfunction _generateId(el) {\n\t\tvar str = el.tagName + el.className + el.src + el.href + el.textContent,\n\t\t\ti = str.length,\n\t\t\tsum = 0;\n\n\t\twhile (i--) {\n\t\t\tsum += str.charCodeAt(i);\n\t\t}\n\n\t\treturn sum.toString(36);\n\t}\n\n\t/**\n\t * Returns the index of an element within its parent for a selected set of\n\t * elements\n\t * @param {HTMLElement} el\n\t * @param {selector} selector\n\t * @return {number}\n\t */\n\tfunction _index(el, selector) {\n\t\tvar index = 0;\n\n\t\tif (!el || !el.parentNode) {\n\t\t\treturn -1;\n\t\t}\n\n\t\twhile (el && (el = el.previousElementSibling)) {\n\t\t\tif ((el.nodeName.toUpperCase() !== 'TEMPLATE') && el !== cloneEl) {\n\t\t\t\tindex++;\n\t\t\t}\n\t\t}\n\n\t\treturn index;\n\t}\n\n\tfunction _matches(/**HTMLElement*/el, /**String*/selector) {\n\t\tif (el) {\n\t\t\ttry {\n\t\t\t\tif (el.matches) {\n\t\t\t\t\treturn el.matches(selector);\n\t\t\t\t} else if (el.msMatchesSelector) {\n\t\t\t\t\treturn el.msMatchesSelector(selector);\n\t\t\t\t} else if (el.webkitMatchesSelector) {\n\t\t\t\t\treturn el.webkitMatchesSelector(selector);\n\t\t\t\t}\n\t\t\t} catch(_) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\tvar _throttleTimeout;\n\tfunction _throttle(callback, ms) {\n\t\treturn function () {\n\t\t\tif (!_throttleTimeout) {\n\t\t\t\tvar args = arguments,\n\t\t\t\t\t_this = this;\n\n\t\t\t\t_throttleTimeout = setTimeout(function () {\n\t\t\t\t\tif (args.length === 1) {\n\t\t\t\t\t\tcallback.call(_this, args[0]);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcallback.apply(_this, args);\n\t\t\t\t\t}\n\n\t\t\t\t\t_throttleTimeout = void 0;\n\t\t\t\t}, ms);\n\t\t\t}\n\t\t};\n\t}\n\n\tfunction _cancelThrottle() {\n\t\tclearTimeout(_throttleTimeout);\n\t\t_throttleTimeout = void 0;\n\t}\n\n\tfunction _extend(dst, src) {\n\t\tif (dst && src) {\n\t\t\tfor (var key in src) {\n\t\t\t\tif (src.hasOwnProperty(key)) {\n\t\t\t\t\tdst[key] = src[key];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn dst;\n\t}\n\n\tfunction _clone(el) {\n\t\tif (Polymer && Polymer.dom) {\n\t\t\treturn Polymer.dom(el).cloneNode(true);\n\t\t}\n\t\telse if ($) {\n\t\t\treturn $(el).clone(true)[0];\n\t\t}\n\t\telse {\n\t\t\treturn el.cloneNode(true);\n\t\t}\n\t}\n\n\tfunction _saveInputCheckedState(root) {\n\t\tsavedInputChecked.length = 0;\n\n\t\tvar inputs = root.getElementsByTagName('input');\n\t\tvar idx = inputs.length;\n\n\t\twhile (idx--) {\n\t\t\tvar el = inputs[idx];\n\t\t\tel.checked && savedInputChecked.push(el);\n\t\t}\n\t}\n\n\tfunction _nextTick(fn) {\n\t\treturn setTimeout(fn, 0);\n\t}\n\n\tfunction _cancelNextTick(id) {\n\t\treturn clearTimeout(id);\n\t}\n\n\n\t/**\n\t * Returns the \"bounding client rect\" of given element\n\t * @param {HTMLElement} el The element whose boundingClientRect is wanted\n\t * @param {[HTMLElement]} container the parent the element will be placed in\n\t * @param {[Boolean]} adjustForTransform Whether the rect should compensate for parent's transform\n\t * @return {Object} The boundingClientRect of el\n\t */\n\tfunction _getRect(el, adjustForTransform, container, adjustForFixed) {\n\t\tif (!el.getBoundingClientRect && el !== win) return;\n\n\t\tvar elRect,\n\t\t\ttop,\n\t\t\tleft,\n\t\t\tbottom,\n\t\t\tright,\n\t\t\theight,\n\t\t\twidth;\n\n\t\tif (el !== win && el !== _getWindowScrollingElement()) {\n\t\t\telRect = el.getBoundingClientRect();\n\t\t\ttop = elRect.top;\n\t\t\tleft = elRect.left;\n\t\t\tbottom = elRect.bottom;\n\t\t\tright = elRect.right;\n\t\t\theight = elRect.height;\n\t\t\twidth = elRect.width;\n\t\t} else {\n\t\t\ttop = 0;\n\t\t\tleft = 0;\n\t\t\tbottom = window.innerHeight;\n\t\t\tright = window.innerWidth;\n\t\t\theight = window.innerHeight;\n\t\t\twidth = window.innerWidth;\n\t\t}\n\n\t\tif (adjustForFixed && el !== win) {\n\t\t\t// Adjust for translate()\n\t\t\tcontainer = container || el.parentNode;\n\n\t\t\t// solves #1123 (see: https://stackoverflow.com/a/37953806/6088312)\n\t\t\t// Not needed on <= IE11\n\t\t\tif (!IE11OrLess) {\n\t\t\t\tdo {\n\t\t\t\t\tif (container && container.getBoundingClientRect && _css(container, 'transform') !== 'none') {\n\t\t\t\t\t\tvar containerRect = container.getBoundingClientRect();\n\n\t\t\t\t\t\t// Set relative to edges of padding box of container\n\t\t\t\t\t\ttop -= containerRect.top + parseInt(_css(container, 'border-top-width'));\n\t\t\t\t\t\tleft -= containerRect.left + parseInt(_css(container, 'border-left-width'));\n\t\t\t\t\t\tbottom = top + elRect.height;\n\t\t\t\t\t\tright = left + elRect.width;\n\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t/* jshint boss:true */\n\t\t\t\t} while (container = container.parentNode);\n\t\t\t}\n\t\t}\n\n\t\tif (adjustForTransform && el !== win) {\n\t\t\t// Adjust for scale()\n\t\t\tvar matrix = _matrix(container || el),\n\t\t\t\tscaleX = matrix && matrix.a,\n\t\t\t\tscaleY = matrix && matrix.d;\n\n\t\t\tif (matrix) {\n\t\t\t\ttop /= scaleY;\n\t\t\t\tleft /= scaleX;\n\n\t\t\t\twidth /= scaleX;\n\t\t\t\theight /= scaleY;\n\n\t\t\t\tbottom = top + height;\n\t\t\t\tright = left + width;\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\ttop: top,\n\t\t\tleft: left,\n\t\t\tbottom: bottom,\n\t\t\tright: right,\n\t\t\twidth: width,\n\t\t\theight: height\n\t\t};\n\t}\n\n\n\t/**\n\t * Checks if a side of an element is scrolled past a side of it's parents\n\t * @param {HTMLElement} el The element who's side being scrolled out of view is in question\n\t * @param {String} side Side of the element in question ('top', 'left', 'right', 'bottom')\n\t * @return {HTMLElement} The parent scroll element that the el's side is scrolled past, or null if there is no such element\n\t */\n\tfunction _isScrolledPast(el, side) {\n\t\tvar parent = _getParentAutoScrollElement(el, true),\n\t\t\telSide = _getRect(el)[side];\n\n\t\t/* jshint boss:true */\n\t\twhile (parent) {\n\t\t\tvar parentSide = _getRect(parent)[side],\n\t\t\t\tvisible;\n\n\t\t\tif (side === 'top' || side === 'left') {\n\t\t\t\tvisible = elSide >= parentSide;\n\t\t\t} else {\n\t\t\t\tvisible = elSide <= parentSide;\n\t\t\t}\n\n\t\t\tif (!visible) return parent;\n\n\t\t\tif (parent === _getWindowScrollingElement()) break;\n\n\t\t\tparent = _getParentAutoScrollElement(parent, false);\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns the scroll offset of the given element, added with all the scroll offsets of parent elements.\n\t * The value is returned in real pixels.\n\t * @param {HTMLElement} el\n\t * @return {Array} Offsets in the format of [left, top]\n\t */\n\tfunction _getRelativeScrollOffset(el) {\n\t\tvar offsetLeft = 0,\n\t\t\toffsetTop = 0,\n\t\t\twinScroller = _getWindowScrollingElement();\n\n\t\tif (el) {\n\t\t\tdo {\n\t\t\t\tvar matrix = _matrix(el),\n\t\t\t\t\tscaleX = matrix.a,\n\t\t\t\t\tscaleY = matrix.d;\n\n\t\t\t\toffsetLeft += el.scrollLeft * scaleX;\n\t\t\t\toffsetTop += el.scrollTop * scaleY;\n\t\t\t} while (el !== winScroller && (el = el.parentNode));\n\t\t}\n\n\t\treturn [offsetLeft, offsetTop];\n\t}\n\n\t// Fixed #973:\n\t_on(document, 'touchmove', function(evt) {\n\t\tif ((Sortable.active || awaitingDragStarted) && evt.cancelable) {\n\t\t\tevt.preventDefault();\n\t\t}\n\t});\n\n\n\t// Export utils\n\tSortable.utils = {\n\t\ton: _on,\n\t\toff: _off,\n\t\tcss: _css,\n\t\tfind: _find,\n\t\tis: function (el, selector) {\n\t\t\treturn !!_closest(el, selector, el, false);\n\t\t},\n\t\textend: _extend,\n\t\tthrottle: _throttle,\n\t\tclosest: _closest,\n\t\ttoggleClass: _toggleClass,\n\t\tclone: _clone,\n\t\tindex: _index,\n\t\tnextTick: _nextTick,\n\t\tcancelNextTick: _cancelNextTick,\n\t\tdetectDirection: _detectDirection,\n\t\tgetChild: _getChild\n\t};\n\n\n\t/**\n\t * Create sortable instance\n\t * @param {HTMLElement} el\n\t * @param {Object} [options]\n\t */\n\tSortable.create = function (el, options) {\n\t\treturn new Sortable(el, options);\n\t};\n\n\n\t// Export\n\tSortable.version = '1.8.4';\n\treturn Sortable;\n});\n"],"sourceRoot":""}