YUI.add("event-touch",function(h,e){var i="scale",u="rotation",d="identifier",t=h.config.win,o={};h.DOMEventFacade.prototype._touch=function(e,t,o){var n,c,a,s,r;if(e.touches)for(this.touches=[],r={},n=0,c=e.touches.length;n<c;++n)s=e.touches[n],r[h.stamp(s)]=this.touches[n]=new h.DOMEventFacade(s,t,o);if(e.targetTouches)for(this.targetTouches=[],n=0,c=e.targetTouches.length;n<c;++n)s=e.targetTouches[n],a=r&&r[h.stamp(s,!0)],this.targetTouches[n]=a||new h.DOMEventFacade(s,t,o);if(e.changedTouches)for(this.changedTouches=[],n=0,c=e.changedTouches.length;n<c;++n)s=e.changedTouches[n],a=r&&r[h.stamp(s,!0)],this.changedTouches[n]=a||new h.DOMEventFacade(s,t,o);i in e&&(this[i]=e[i]),u in e&&(this[u]=e[u]),d in e&&(this[d]=e[d])},h.Node.DOM_EVENTS&&h.mix(h.Node.DOM_EVENTS,{touchstart:1,touchmove:1,touchend:1,touchcancel:1,gesturestart:1,gesturechange:1,gestureend:1,MSPointerDown:1,MSPointerUp:1,MSPointerMove:1,MSPointerCancel:1,pointerdown:1,pointerup:1,pointermove:1,pointercancel:1}),t&&"ontouchstart"in t&&!(h.UA.chrome&&h.UA.chrome<6)?(o.start=["touchstart","mousedown"],o.end=["touchend","mouseup"],o.move=["touchmove","mousemove"],o.cancel=["touchcancel","mousecancel"]):t&&t.PointerEvent?(o.start="pointerdown",o.end="pointerup",o.move="pointermove",o.cancel="pointercancel"):t&&"msPointerEnabled"in t.navigator?(o.start="MSPointerDown",o.end="MSPointerUp",o.move="MSPointerMove",o.cancel="MSPointerCancel"):(o.start="mousedown",o.end="mouseup",o.move="mousemove",o.cancel="mousecancel"),h.Event._GESTURE_MAP=o},"patched-v3.18.3",{requires:["node-base"]});