!function(n,t,i,r){"use strict";function si(n,t,i){return setTimeout(ci(n,i),t)}function tt(n,t,i){return Array.isArray(n)?(v(n,i[t],i),!0):!1}function v(n,t,i){var u;if(n)if(n.forEach)n.forEach(t,i);else if(n.length!==r)for(u=0;u<n.length;)t.call(i,n[u],u,n),u++;else for(u in n)n.hasOwnProperty(u)&&t.call(i,n[u],u,n)}function k(n,t,i){for(var f=Object.keys(t),u=0;u<f.length;)(!i||i&&n[f[u]]===r)&&(n[f[u]]=t[f[u]]),u++;return n}function hi(n,t){return k(n,t,!0)}function o(n,t,i){var r,u=t.prototype;r=n.prototype=Object.create(u),r.constructor=n,r._super=u,i&&k(r,i)}function ci(n,t){return function(){return n.apply(t,arguments)}}function li(n,t){return typeof n==pr?n.apply(t?t[0]||r:r,t):n}function ur(n,t){return n===r?t:n}function pt(n,t,i){v(bt(t),function(t){n.addEventListener(t,i,!1)})}function wt(n,t,i){v(bt(t),function(t){n.removeEventListener(t,i,!1)})}function fr(n,t){for(;n;){if(n==t)return!0;n=n.parentNode}return!1}function d(n,t){return n.indexOf(t)>-1}function bt(n){return n.trim().split(/\s+/g)}function it(n,t,i){if(n.indexOf&&!i)return n.indexOf(t);for(var r=0;r<n.length;){if(i&&n[r][i]==t||!i&&n[r]===t)return r;r++}return-1}function kt(n){return Array.prototype.slice.call(n,0)}function er(n,t,i){for(var f,u=[],e=[],r=0;r<n.length;)f=t?n[r][t]:n[r],it(e,f)<0&&u.push(n[r]),e[r]=f,r++;return i&&(u=t?u.sort(function(n,i){return n[t]>i[t]}):u.sort()),u}function dt(n,t){for(var i,u,e=t[0].toUpperCase()+t.slice(1),f=0;f<yr.length;){if(i=yr[f],u=i?i+e:t,u in n)return u;f++}return r}function ou(){return tf++}function or(n){var t=n.ownerDocument;return t.defaultView||t.parentWindow}function s(n,t){var i=this;this.manager=n,this.callback=t,this.element=n.element,this.target=n.options.inputTarget,this.domHandler=function(t){li(n.options.enable,[n])&&i.handler(t)},this.init()}function su(n){var i,t=n.options.inputClass;return new(i=t?t:uf?vi:ff?ti:wr?yi:ni)(n,hu)}function hu(n,t,i){var r=i.pointers.length,o=i.changedPointers.length,s=t&f&&r-o==0,h=t&(u|e)&&r-o==0;i.isFirst=!!s,i.isFinal=!!h,s&&(n.session={}),i.eventType=t,cu(n,i),n.emit("hammer.input",i),n.recognize(i),n.session.prevInput=i}function cu(n,t){var i=n.session,u=t.pointers,e=u.length,f;i.firstInput||(i.firstInput=sr(t)),e>1&&!i.firstMultiple?i.firstMultiple=sr(t):1===e&&(i.firstMultiple=!1);var o=i.firstInput,r=i.firstMultiple,s=r?r.center:o.center,h=t.center=hr(u);t.timeStamp=nr(),t.deltaTime=t.timeStamp-o.timeStamp,t.angle=ai(s,h),t.distance=gt(s,h),lu(i,t),t.offsetDirection=cr(t.deltaX,t.deltaY),t.scale=r?pu(r.pointers,u):1,t.rotation=r?yu(r.pointers,u):0,au(i,t),f=n.element,fr(t.srcEvent.target,f)&&(f=t.srcEvent.target),t.target=f}function lu(n,t){var i=t.center,r=n.offsetDelta||{},e=n.prevDelta||{},o=n.prevInput||{};(t.eventType===f||o.eventType===u)&&(e=n.prevDelta={x:o.deltaX||0,y:o.deltaY||0},r=n.offsetDelta={x:i.x,y:i.y}),t.deltaX=e.x+(i.x-r.x),t.deltaY=e.y+(i.y-r.y)}function au(n,t){var f,o,s,h,i=n.lastInterval||t,c=t.timeStamp-i.timeStamp;if(t.eventType!=e&&(c>sf||i.velocity===r)){var l=i.deltaX-t.deltaX,a=i.deltaY-t.deltaY,u=vu(c,l,a);o=u.x,s=u.y,f=ft(u.x)>ft(u.y)?u.x:u.y,h=cr(l,a),n.lastInterval=t}else f=i.velocity,o=i.velocityX,s=i.velocityY,h=i.direction;t.velocity=f,t.velocityX=o,t.velocityY=s,t.direction=h}function sr(n){for(var i=[],t=0;t<n.pointers.length;)i[t]={clientX:rt(n.pointers[t].clientX),clientY:rt(n.pointers[t].clientY)},t++;return{timeStamp:nr(),pointers:i,center:hr(i),deltaX:n.deltaX,deltaY:n.deltaY}}function hr(n){var t=n.length;if(1===t)return{x:rt(n[0].clientX),y:rt(n[0].clientY)};for(var r=0,u=0,i=0;t>i;)r+=n[i].clientX,u+=n[i].clientY,i++;return{x:rt(r/t),y:rt(u/t)}}function vu(n,t,i){return{x:t/n||0,y:i/n||0}}function cr(n,t){return n===t?fi:ft(n)>=ft(t)?n>0?ot:st:t>0?ht:ct}function gt(n,t,i){i||(i=kr);var r=t[i[0]]-n[i[0]],u=t[i[1]]-n[i[1]];return Math.sqrt(r*r+u*u)}function ai(n,t,i){i||(i=kr);var r=t[i[0]]-n[i[0]],u=t[i[1]]-n[i[1]];return 180*Math.atan2(u,r)/Math.PI}function yu(n,t){return ai(t[1],t[0],ei)-ai(n[1],n[0],ei)}function pu(n,t){return gt(t[0],t[1],ei)/gt(n[0],n[1],ei)}function ni(){this.evEl=cf,this.evWin=lf,this.allow=!0,this.pressed=!1,s.apply(this,arguments)}function vi(){this.evEl=dr,this.evWin=gr,s.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function lr(){this.evTarget=pf,this.evWin=wf,this.started=!1,s.apply(this,arguments)}function wu(n,t){var i=kt(n.touches),r=kt(n.changedTouches);return t&(u|e)&&(i=er(i.concat(r),"identifier",!0)),[i,r]}function ti(){this.evTarget=tu,this.targetIds={},s.apply(this,arguments)}function bu(n,t){var r=kt(n.touches),o=this.targetIds;if(t&(f|g)&&1===r.length)return o[r[0].identifier]=!0,[r,r];var i,s,h=kt(n.changedTouches),c=[],l=this.target;if(s=r.filter(function(n){return fr(n.target,l)}),t===f)for(i=0;i<s.length;)o[s[i].identifier]=!0,i++;for(i=0;i<h.length;)o[h[i].identifier]&&c.push(h[i]),t&(u|e)&&delete o[h[i].identifier],i++;if(c.length)return[er(s.concat(c),"identifier",!0),c]}function yi(){s.apply(this,arguments);var n=ci(this.handler,this);this.touch=new ti(this.manager,n),this.mouse=new ni(this.manager,n)}function pi(n,t){this.manager=n,this.set(t)}function ku(n){if(d(n,lt))return lt;var t=d(n,at),i=d(n,vt);return t&&i?at+" "+vt:t||i?t?at:vt:d(n,ir)?ir:fu}function y(n){this.id=ou(),this.manager=null,this.options=hi(n||{},this.defaults),this.options.enable=ur(this.options.enable,!0),this.state=oi,this.simultaneous={},this.requireFail=[]}function du(n){return n&yt?"cancel":n&b?"end":n&ut?"move":n&h?"start":""}function ar(n){return n==ct?"down":n==ht?"up":n==ot?"left":n==st?"right":""}function ii(n,t){var i=t.manager;return i?i.get(n):n}function c(){y.apply(this,arguments)}function ri(){c.apply(this,arguments),this.pX=null,this.pY=null}function wi(){c.apply(this,arguments)}function bi(){y.apply(this,arguments),this._timer=null,this._input=null}function ki(){c.apply(this,arguments)}function di(){c.apply(this,arguments)}function ui(){y.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function w(n,t){return t=t||{},t.recognizers=ur(t.recognizers,w.defaults.preset),new gi(n,t)}function gi(n,t){t=t||{},this.options=hi(t,w.defaults),this.options.inputTarget=this.options.inputTarget||n,this.handlers={},this.session={},this.recognizers=[],this.element=n,this.input=su(this),this.touchAction=new pi(this,this.options.touchAction),vr(this,!0),v(t.recognizers,function(n){var t=this.add(new n[0](n[1]));n[2]&&t.recognizeWith(n[2]),n[3]&&t.requireFailure(n[3])},this)}function vr(n,t){var i=n.element;v(n.options.cssProps,function(n,r){i.style[dt(i.style,r)]=t?n:""})}function gu(n,i){var r=t.createEvent("Event");r.initEvent(n,!0,!0),r.gesture=i,i.target.dispatchEvent(r)}var yr=["","webkit","moz","MS","ms","o"],nf=t.createElement("div"),pr="function",rt=Math.round,ft=Math.abs,nr=Date.now,tf=1,rf=/mobile|tablet|ip(ad|hone|od)|android/i,wr="ontouchstart"in n,uf=dt(n,"PointerEvent")!==r,ff=wr&&rf.test(navigator.userAgent),et="touch",ef="pen",tr="mouse",of="kinect",sf=25,f=1,g=2,u=4,e=8,fi=1,ot=2,st=4,ht=8,ct=16,l=ot|st,nt=ht|ct,br=l|nt,kr=["x","y"],ei=["clientX","clientY"],nu,tu,eu,rr;s.prototype={handler:function(){},init:function(){this.evEl&&pt(this.element,this.evEl,this.domHandler),this.evTarget&&pt(this.target,this.evTarget,this.domHandler),this.evWin&&pt(or(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&wt(this.element,this.evEl,this.domHandler),this.evTarget&&wt(this.target,this.evTarget,this.domHandler),this.evWin&&wt(or(this.element),this.evWin,this.domHandler)}};var hf={mousedown:f,mousemove:g,mouseup:u},cf="mousedown",lf="mousemove mouseup";o(ni,s,{handler:function(n){var t=hf[n.type];t&f&&0===n.button&&(this.pressed=!0),t&g&&1!==n.which&&(t=u),this.pressed&&this.allow&&(t&u&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[n],changedPointers:[n],pointerType:tr,srcEvent:n}))}});var af={pointerdown:f,pointermove:g,pointerup:u,pointercancel:e,pointerout:e},vf={2:et,3:ef,4:tr,5:of},dr="pointerdown",gr="pointermove pointerup pointercancel";n.MSPointerEvent&&(dr="MSPointerDown",gr="MSPointerMove MSPointerUp MSPointerCancel"),o(vi,s,{handler:function(n){var t=this.store,o=!1,h=n.type.toLowerCase().replace("ms",""),r=af[h],s=vf[n.pointerType]||n.pointerType,c=s==et,i=it(t,n.pointerId,"pointerId");r&f&&(0===n.button||c)?0>i&&(t.push(n),i=t.length-1):r&(u|e)&&(o=!0),0>i||(t[i]=n,this.callback(this.manager,r,{pointers:t,changedPointers:[n],pointerType:s,srcEvent:n}),o&&t.splice(i,1))}});var yf={touchstart:f,touchmove:g,touchend:u,touchcancel:e},pf="touchstart",wf="touchstart touchmove touchend touchcancel";o(lr,s,{handler:function(n){var i=yf[n.type],t;(i===f&&(this.started=!0),this.started)&&(t=wu.call(this,n,i),i&(u|e)&&t[0].length-t[1].length==0&&(this.started=!1),this.callback(this.manager,i,{pointers:t[0],changedPointers:t[1],pointerType:et,srcEvent:n}))}}),nu={touchstart:f,touchmove:g,touchend:u,touchcancel:e},tu="touchstart touchmove touchend touchcancel",o(ti,s,{handler:function(n){var i=nu[n.type],t=bu.call(this,n,i);t&&this.callback(this.manager,i,{pointers:t[0],changedPointers:t[1],pointerType:et,srcEvent:n})}}),o(yi,s,{handler:function(n,t,i){var r=i.pointerType==et,f=i.pointerType==tr;if(r)this.mouse.allow=!1;else if(f&&!this.mouse.allow)return;t&(u|e)&&(this.mouse.allow=!0),this.callback(n,t,i)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var iu=dt(nf.style,"touchAction"),ru=iu!==r,uu="compute",fu="auto",ir="manipulation",lt="none",at="pan-x",vt="pan-y";pi.prototype={set:function(n){n==uu&&(n=this.compute()),ru&&(this.manager.element.style[iu]=n),this.actions=n.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var n=[];return v(this.manager.recognizers,function(t){li(t.options.enable,[t])&&(n=n.concat(t.getTouchAction()))}),ku(n.join(" "))},preventDefaults:function(n){var t,i;if(!ru){if(t=n.srcEvent,i=n.offsetDirection,this.manager.session.prevented)return void t.preventDefault();var r=this.actions,u=d(r,lt),f=d(r,vt),e=d(r,at);return u||f&&i&l||e&&i&nt?this.preventSrc(t):void 0}},preventSrc:function(n){this.manager.session.prevented=!0,n.preventDefault()}};var oi=1,h=2,ut=4,b=8,p=b,yt=16,a=32;y.prototype={defaults:{},set:function(n){return k(this.options,n),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(n){if(tt(n,"recognizeWith",this))return this;var t=this.simultaneous;return n=ii(n,this),t[n.id]||(t[n.id]=n,n.recognizeWith(this)),this},dropRecognizeWith:function(n){return tt(n,"dropRecognizeWith",this)?this:(n=ii(n,this),delete this.simultaneous[n.id],this)},requireFailure:function(n){if(tt(n,"requireFailure",this))return this;var t=this.requireFail;return n=ii(n,this),-1===it(t,n)&&(t.push(n),n.requireFailure(this)),this},dropRequireFailure:function(n){if(tt(n,"dropRequireFailure",this))return this;n=ii(n,this);var t=it(this.requireFail,n);return t>-1&&this.requireFail.splice(t,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(n){return!!this.simultaneous[n.id]},emit:function(n){function t(t){r.manager.emit(r.options.event+(t?du(i):""),n)}var r=this,i=this.state;b>i&&t(!0),t(),i>=b&&t(!0)},tryEmit:function(n){return this.canEmit()?this.emit(n):void(this.state=a)},canEmit:function(){for(var n=0;n<this.requireFail.length;){if(!(this.requireFail[n].state&(a|oi)))return!1;n++}return!0},recognize:function(n){var t=k({},n);return li(this.options.enable,[this,t])?(this.state&(p|yt|a)&&(this.state=oi),this.state=this.process(t),void(this.state&(h|ut|b|yt)&&this.tryEmit(t))):(this.reset(),void(this.state=a))},process:function(){},getTouchAction:function(){},reset:function(){}},o(c,y,{defaults:{pointers:1},attrTest:function(n){var t=this.options.pointers;return 0===t||n.pointers.length===t},process:function(n){var t=this.state,i=n.eventType,r=t&(h|ut),f=this.attrTest(n);return r&&(i&e||!f)?t|yt:r||f?i&u?t|b:t&h?t|ut:h:a}}),o(ri,c,{defaults:{event:"pan",threshold:10,pointers:1,direction:br},getTouchAction:function(){var t=this.options.direction,n=[];return t&l&&n.push(vt),t&nt&&n.push(at),n},directionTest:function(n){var i=this.options,r=!0,u=n.distance,t=n.direction,f=n.deltaX,e=n.deltaY;return t&i.direction||(i.direction&l?(t=0===f?fi:0>f?ot:st,r=f!=this.pX,u=Math.abs(n.deltaX)):(t=0===e?fi:0>e?ht:ct,r=e!=this.pY,u=Math.abs(n.deltaY))),n.direction=t,r&&u>i.threshold&&t&i.direction},attrTest:function(n){return c.prototype.attrTest.call(this,n)&&(this.state&h||!(this.state&h)&&this.directionTest(n))},emit:function(n){this.pX=n.deltaX,this.pY=n.deltaY;var t=ar(n.direction);t&&this.manager.emit(this.options.event+t,n),this._super.emit.call(this,n)}}),o(wi,c,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[lt]},attrTest:function(n){return this._super.attrTest.call(this,n)&&(Math.abs(n.scale-1)>this.options.threshold||this.state&h)},emit:function(n){if(this._super.emit.call(this,n),1!==n.scale){var t=n.scale<1?"in":"out";this.manager.emit(this.options.event+t,n)}}}),o(bi,y,{defaults:{event:"press",pointers:1,time:500,threshold:5},getTouchAction:function(){return[fu]},process:function(n){var t=this.options,i=n.pointers.length===t.pointers,r=n.distance<t.threshold,o=n.deltaTime>t.time;if(this._input=n,!r||!i||n.eventType&(u|e)&&!o)this.reset();else if(n.eventType&f)this.reset(),this._timer=si(function(){this.state=p,this.tryEmit()},t.time,this);else if(n.eventType&u)return p;return a},reset:function(){clearTimeout(this._timer)},emit:function(n){this.state===p&&(n&&n.eventType&u?this.manager.emit(this.options.event+"up",n):(this._input.timeStamp=nr(),this.manager.emit(this.options.event,this._input)))}}),o(ki,c,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[lt]},attrTest:function(n){return this._super.attrTest.call(this,n)&&(Math.abs(n.rotation)>this.options.threshold||this.state&h)}}),o(di,c,{defaults:{event:"swipe",threshold:10,velocity:.65,direction:l|nt,pointers:1},getTouchAction:function(){return ri.prototype.getTouchAction.call(this)},attrTest:function(n){var t,i=this.options.direction;return i&(l|nt)?t=n.velocity:i&l?t=n.velocityX:i&nt&&(t=n.velocityY),this._super.attrTest.call(this,n)&&i&n.direction&&n.distance>this.options.threshold&&ft(t)>this.options.velocity&&n.eventType&u},emit:function(n){var t=ar(n.direction);t&&this.manager.emit(this.options.event+t,n),this.manager.emit(this.options.event,n)}}),o(ui,y,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:2,posThreshold:10},getTouchAction:function(){return[ir]},process:function(n){var t=this.options,o=n.pointers.length===t.pointers,s=n.distance<t.threshold,c=n.deltaTime<t.time,i,r,e;if(this.reset(),n.eventType&f&&0===this.count)return this.failTimeout();if(s&&c&&o){if(n.eventType!=u)return this.failTimeout();if(i=this.pTime?n.timeStamp-this.pTime<t.interval:!0,r=!this.pCenter||gt(this.pCenter,n.center)<t.posThreshold,this.pTime=n.timeStamp,this.pCenter=n.center,r&&i?this.count+=1:this.count=1,this._input=n,e=this.count%t.taps,0===e)return this.hasRequireFailures()?(this._timer=si(function(){this.state=p,this.tryEmit()},t.interval,this),h):p}return a},failTimeout:function(){return this._timer=si(function(){this.state=a},this.options.interval,this),a},reset:function(){clearTimeout(this._timer)},emit:function(){this.state==p&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),w.VERSION="2.0.4",w.defaults={domEvents:!1,touchAction:uu,enable:!0,inputTarget:null,inputClass:null,preset:[[ki,{enable:!1}],[wi,{enable:!1},["rotate"]],[di,{direction:l}],[ri,{direction:l},["swipe"]],[ui],[ui,{event:"doubletap",taps:2},["tap"]],[bi]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},eu=1,rr=2,gi.prototype={set:function(n){return k(this.options,n),n.touchAction&&this.touchAction.update(),n.inputTarget&&(this.input.destroy(),this.input.target=n.inputTarget,this.input.init()),this},stop:function(n){this.session.stopped=n?rr:eu},recognize:function(n){var r=this.session,i,f,t,u;if(!r.stopped)for(this.touchAction.preventDefaults(n),f=this.recognizers,t=r.curRecognizer,(!t||t&&t.state&p)&&(t=r.curRecognizer=null),u=0;u<f.length;)i=f[u],r.stopped===rr||t&&i!=t&&!i.canRecognizeWith(t)?i.reset():i.recognize(n),!t&&i.state&(h|ut|b)&&(t=r.curRecognizer=i),u++},get:function(n){if(n instanceof y)return n;for(var i=this.recognizers,t=0;t<i.length;t++)if(i[t].options.event==n)return i[t];return null},add:function(n){if(tt(n,"add",this))return this;var t=this.get(n.options.event);return t&&this.remove(t),this.recognizers.push(n),n.manager=this,this.touchAction.update(),n},remove:function(n){if(tt(n,"remove",this))return this;var t=this.recognizers;return n=this.get(n),t.splice(it(t,n),1),this.touchAction.update(),this},on:function(n,t){var i=this.handlers;return v(bt(n),function(n){i[n]=i[n]||[],i[n].push(t)}),this},off:function(n,t){var i=this.handlers;return v(bt(n),function(n){t?i[n].splice(it(i[n],t),1):delete i[n]}),this},emit:function(n,t){var i,r;if(this.options.domEvents&&gu(n,t),i=this.handlers[n]&&this.handlers[n].slice(),i&&i.length)for(t.type=n,t.preventDefault=function(){t.srcEvent.preventDefault()},r=0;r<i.length;)i[r](t),r++},destroy:function(){this.element&&vr(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},k(w,{INPUT_START:f,INPUT_MOVE:g,INPUT_END:u,INPUT_CANCEL:e,STATE_POSSIBLE:oi,STATE_BEGAN:h,STATE_CHANGED:ut,STATE_ENDED:b,STATE_RECOGNIZED:p,STATE_CANCELLED:yt,STATE_FAILED:a,DIRECTION_NONE:fi,DIRECTION_LEFT:ot,DIRECTION_RIGHT:st,DIRECTION_UP:ht,DIRECTION_DOWN:ct,DIRECTION_HORIZONTAL:l,DIRECTION_VERTICAL:nt,DIRECTION_ALL:br,Manager:gi,Input:s,TouchAction:pi,TouchInput:ti,MouseInput:ni,PointerEventInput:vi,TouchMouseInput:yi,SingleTouchInput:lr,Recognizer:y,AttrRecognizer:c,Tap:ui,Pan:ri,Swipe:di,Pinch:wi,Rotate:ki,Press:bi,on:pt,off:wt,each:v,merge:hi,extend:k,inherit:o,bindFn:ci,prefixed:dt}),typeof define==pr&&define.amd?define(function(){return w}):"undefined"!=typeof module&&module.exports?module.exports=w:n[i]=w}(window,document,"Hammer"),function(n,t){var r=function(n,t){r.options=t||{},r.setTouchLib(n)};r.touchLib=null,r.touchLibs={},r.touchEvents=["tap","doubletap","hold","rotate","drag","dragleft","dragright","dragup","dragdown","transform","transformstart","transformend","swipe","swipeleft","swiperight","swipeup","swipedown","pinch","pinchin","pinchout"],r.makeTouchHandlerShortcut=function(n){t.bindingHandlers[n]={init:function(t,i,u,f){var o=i(),s=u(),h=function(n){o(f,n)};r.touchLib.wrapper(t,n,h,s)}}},r.searchTouchLib=function(){for(i in r.touchLibs){var n=r.touchLibs[i];if(n.isLoaded()){r.touchLib=n;break}}if(r.touchLib===null)throw"could not find any touch library";},r.setTouchLib=function(n){if(r.touchLibs[n].isLoaded())r.touchLib=r.touchLibs[n];else throw"failed to select "+n+" check there`s no typos in "+n+" To make sure it`s supported refer to our documentation.";},r.unifyEventName=function(n,t){if(t[n]!==undefined)return t[n];throw"library you`ve selected doesn`t support "+n+" event";},r.init=function(){for(i in r.touchEvents){var n=r.touchEvents[i];r.makeTouchHandlerShortcut(n)}r.searchTouchLib()},r.touchLibs.Hammer={isLoaded:function(){return n.Hammer?!0:!1},optionsList:["doubletap_distance","doubletap_interval","drag","drag_block_horizontal","drag_block_vertical","drag_lock_to_axis","drag_max_touches","drag_min_distance","hold","hold_threshold","hold_timeout","prevent_default","release","show_touches","stop_browser_behavior","swipe","swipe_max_touches","swipe_velocity","tap","tap_max_distance","tap_max_touchtime","touch","transform","transform_always_block","transform_min_rotation","transform_min_scale"],setMoreOptions:function(n){var u=r.options,t;for(i in this.optionsList)t=this.optionsList[i],n[t]!==undefined&&n[t].constructor!==Function&&(r.options[t]=n[t]);return u},wrapper:function(n,t,i,r){var u=this.setMoreOptions(r);Hammer(n,u).on(t,i)}},r.init(),n.knockouch=r}(this,ko)