/*! For license information please see hammer.js.LICENSE.txt */ !function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var n=e();for(var i in n)("object"==typeof exports?exports:t)[i]=n[i]}}(self,(function(){return function(){var t={840:function(t,e,n){var i;!function(r,s,o,a){"use strict";var u,h=["","webkit","Moz","MS","ms","o"],c=s.createElement("div"),l="function",p=Math.round,f=Math.abs,v=Date.now;function d(t,e,n){return setTimeout(I(t,n),e)}function m(t,e,n){return!!Array.isArray(t)&&(g(t,n[e],n),!0)}function g(t,e,n){var i;if(t)if(t.forEach)t.forEach(e,n);else if(t.length!==a)for(i=0;i\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=r.console&&(r.console.warn||r.console.log);return s&&s.call(r.console,i,n),t.apply(this,arguments)}}u="function"!=typeof Object.assign?function(t){if(t===a||null===t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n-1}function D(t){return t.trim().split(/\s+/g)}function O(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var i=0;in[e]})):i.sort()),i}function R(t,e){for(var n,i,r=e[0].toUpperCase()+e.slice(1),s=0;s1&&!n.firstMultiple?n.firstMultiple=it(e):1===r&&(n.firstMultiple=!1);var s=n.firstInput,o=n.firstMultiple,u=o?o.center:s.center,h=e.center=rt(i);e.timeStamp=v(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=ut(u,h),e.distance=at(u,h),function(t,e){var n=e.center,i=t.offsetDelta||{},r=t.prevDelta||{},s=t.prevInput||{};e.eventType!==k&&s.eventType!==L||(r=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=t.offsetDelta={x:n.x,y:n.y}),e.deltaX=r.x+(n.x-i.x),e.deltaY=r.y+(n.y-i.y)}(n,e),e.offsetDirection=ot(e.deltaX,e.deltaY);var c,l,p=st(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=p.x,e.overallVelocityY=p.y,e.overallVelocity=f(p.x)>f(p.y)?p.x:p.y,e.scale=o?(c=o.pointers,at((l=i)[0],l[1],tt)/at(c[0],c[1],tt)):1,e.rotation=o?function(t,e){return ut(e[1],e[0],tt)+ut(t[1],t[0],tt)}(o.pointers,i):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,function(t,e){var n,i,r,s,o=t.lastInterval||e,u=e.timeStamp-o.timeStamp;if(e.eventType!=H&&(u>j||o.velocity===a)){var h=e.deltaX-o.deltaX,c=e.deltaY-o.deltaY,l=st(u,h,c);i=l.x,r=l.y,n=f(l.x)>f(l.y)?l.x:l.y,s=ot(h,c),t.lastInterval=e}else n=o.velocity,i=o.velocityX,r=o.velocityY,s=o.direction;e.velocity=n,e.velocityX=i,e.velocityY=r,e.direction=s}(n,e);var d=t.element;x(e.srcEvent.target,d)&&(d=e.srcEvent.target),e.target=d}(t,n),t.emit("hammer.input",n),t.recognize(n),t.session.prevInput=n}function it(t){for(var e=[],n=0;n=f(e)?t<0?V:G:e<0?Z:B}function at(t,e,n){n||(n=Q);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return Math.sqrt(i*i+r*r)}function ut(t,e,n){n||(n=Q);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return 180*Math.atan2(r,i)/Math.PI}et.prototype={handler:function(){},init:function(){this.evEl&&_(this.element,this.evEl,this.domHandler),this.evTarget&&_(this.target,this.evTarget,this.domHandler),this.evWin&&_(N(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&P(this.element,this.evEl,this.domHandler),this.evTarget&&P(this.target,this.evTarget,this.domHandler),this.evWin&&P(N(this.element),this.evWin,this.domHandler)}};var ht={mousedown:k,mousemove:2,mouseup:L},ct="mousedown",lt="mousemove mouseup";function pt(){this.evEl=ct,this.evWin=lt,this.pressed=!1,et.apply(this,arguments)}b(pt,et,{handler:function(t){var e=ht[t.type];e&k&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=L),this.pressed&&(e&L&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:q,srcEvent:t}))}});var ft={pointerdown:k,pointermove:2,pointerup:L,pointercancel:H,pointerout:H},vt={2:W,3:"pen",4:q,5:"kinect"},dt="pointerdown",mt="pointermove pointerup pointercancel";function gt(){this.evEl=dt,this.evWin=mt,et.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}r.MSPointerEvent&&!r.PointerEvent&&(dt="MSPointerDown",mt="MSPointerMove MSPointerUp MSPointerCancel"),b(gt,et,{handler:function(t){var e=this.store,n=!1,i=t.type.toLowerCase().replace("ms",""),r=ft[i],s=vt[t.pointerType]||t.pointerType,o=s==W,a=O(e,t.pointerId,"pointerId");r&k&&(0===t.button||o)?a<0&&(e.push(t),a=e.length-1):r&(L|H)&&(n=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),n&&e.splice(a,1))}});var yt={touchstart:k,touchmove:2,touchend:L,touchcancel:H};function Tt(){this.evTarget="touchstart",this.evWin="touchstart touchmove touchend touchcancel",this.started=!1,et.apply(this,arguments)}function Et(t,e){var n=w(t.touches),i=w(t.changedTouches);return e&(L|H)&&(n=M(n.concat(i),"identifier",!0)),[n,i]}b(Tt,et,{handler:function(t){var e=yt[t.type];if(e===k&&(this.started=!0),this.started){var n=Et.call(this,t,e);e&(L|H)&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:W,srcEvent:t})}}});var bt={touchstart:k,touchmove:2,touchend:L,touchcancel:H},It="touchstart touchmove touchend touchcancel";function At(){this.evTarget=It,this.targetIds={},et.apply(this,arguments)}function St(t,e){var n=w(t.touches),i=this.targetIds;if(e&(2|k)&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,s,o=w(t.changedTouches),a=[],u=this.target;if(s=n.filter((function(t){return x(t.target,u)})),e===k)for(r=0;r-1&&i.splice(t,1)}),_t)}}function Dt(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,n=this.state;function i(n){e.manager.emit(n,t)}n<8&&i(e.options.event+Lt(n)),i(e.options.event),t.additionalEvent&&i(t.additionalEvent),n>=8&&i(e.options.event+Lt(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=jt},canEmit:function(){for(var t=0;te.threshold&&r&e.direction},attrTest:function(t){return Vt.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=Ht(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),b(Zt,Vt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[Nt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),b(Bt,kt,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[Rt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distancee.time;if(this._input=t,!i||!n||t.eventType&(L|H)&&!r)this.reset();else if(t.eventType&k)this.reset(),this._timer=d((function(){this.state=8,this.tryEmit()}),e.time,this);else if(t.eventType&L)return 8;return jt},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&t.eventType&L?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=v(),this.manager.emit(this.options.event,this._input)))}}),b($t,Vt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[Nt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),b(Jt,Vt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:$|J,pointers:1},getTouchAction:function(){return Gt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return n&($|J)?e=t.overallVelocity:n&$?e=t.overallVelocityX:n&J&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&f(e)>this.options.velocity&&t.eventType&L},emit:function(t){var e=Ht(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),b(Kt,kt,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[zt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance