VimUnDo%-DRn8E|?ŁSq96 convert = convert, accumulated = core.accumulated, P ߼7_P ν5_P 5_P function open()5_P function open() {}5_vP |function open() {5_vP function open(element, ) {5_#vP  5_ $vP  'function open(eventTarget, eventType) {5_ vP  5_ vP   5_ 2vP  5_  vP  5_   vP   if ()5_vP   5_vP  var addListener = 5_vP  5_vP +var addListener = null5_vP ,5_ vP /   5_ !vP 7 " eventTarget.addEventListener()5_ ,vP A - eventTarget.addEventListener(eventType, )5_ ;vP G  eventTarget.   5_ vP S  eventTarget.attachEvent()5_ vP Y & eventTarget.attachEvent(eventType)5_ ,vP \ - eventTarget.attachEvent('on' + eventType)5_2vP d   5_ vP h  function handler()5_ vP h  function handler() {}5_ vP jvar channel = require5_! vP pvar channel = require()5_ "!vP pvar channel = require('')5_!#" vP u   5_"$# vP }  5_#%$ vP ԃ   var eventChannel = channel()5_$(%"vP ԋ  "var channel = require('./channel')5_%*&( vP Ԣ enqueue = channel.enqueue5_(+)* vP Դ#var channel = require('./channel'),5_*,+ vP Է var channel = require('./core'),5_+-,vP Ը var core = require('./core'),5_,.-  vP Կ  var result = channel()5_-/.  vP   function handler() {5_.0/  vP   }5_/20  vP   5_0312  vP   return 5_243  vP   return convert()5_354  vP  ' return convert(eventTarget, function)5_465  vP   return convert({}, function)5_576  vP   return convert({}, function())5_687 ! vP  # return convert({}, function() {})5_798  vP   5_8:9  vP  function EventChannel()5_9;:  vP  function EventChannel() {}5_:<;  vP  function EventChannel() {} }5_;=<  vP   5_<>=  vP  accumulate.define()5_=?> * vP  +accumulate.define(EventChannel, function())5_>@? , vP  .accumulate.define(EventChannel, function() {})5_?A@  vP  5_@BA  vP " function EventChannel() {}5_ACB . vP % 2function EventChannel(eventTarget, eventTarget) {}5_BDC % vP ) &function EventChannel(target, type) {}5_CED  vP *   5_DFE  vP .   5_EGF) vP 5 ,accumulate.define(EventChannel, function() {5_FHG  vP U   5_GIH  vP Z  this.channel = channel()5_HJI  vP \  this.channel = channel5_IKJ   vP _  this.channel = channel()5_JMK   vP `  5_KNLM   vP g  5_MON  vP j 5_NPO   vP k  5_OQP   vP n function isOpen()5_PRQ   vP n function isOpen() {}5_QSR vP q 5_RTSvP t 5_SUT vP v isOpen()5_TVUvP y isOpen(self)5_UWVvP | if(isOpen(self)5_VXWvP Ճ if(isOpen(self)) accumulate()5_WYX:vP Ջ=accumulate.define(EventChannel, function(self, accumulator) {5_XZY6;/v/P Ր7 if(isOpen(self)) accumulate(self.channel, accumulate)5_Y[Z8;/v/P ՘ 5_Z\[;/v/P ՞: if(isOpen(self)) accumulate(self.channel, next, initial)5_[]\;/v/P ա; if(!isOpen(self)) accumulate(self.channel, next, initial)5_\^];/v/P գ  if(!isOpen(self))5_]_^;/v/P զ  if(!isOpen(self)) open()5_^`_;/v/P ը 5__a` ;/v/P    5_`ba ;/v/P  function isOpen() {5_acb ;/v/P   r5_bdc ;/v/P   self.channel 5_ced;/v/P !  5_dfe ;/v/P  ! self.channel !=== null5_egf ;/v/P  ! self.channel === null5_fhg ;/v/P  ! return self.channel === null5_gih ;/v/P x " !5_hji ;/v/P { "function open()5_ikj ;/v/P { "function open() {}5_jlk ;/v/P ؃ #function open() {5_kml ;/v/P ؄ $  #5_lnm;/v/P ؊%$5_mon;/v/P ؎%var channel = require()5_npo;/v/P ؎%var channel = require('')5_oqp;/v/P ؕ& %5_prq;/v/P ؜& self.target.addEventListener()5_qsr;/v/P د' &5_rts;/v/P ذ' ig ()5_sut;/v/P س' if5_tvu;/v/P  if ) (5_uwv;/v/P * if ()5_vxw;/v/P *5_wyx;/v/P +5_xzy;/v/P + target.addEventListener()5_y{z;/v/P + target.addEventListener()5_z|{;/v/P , +5_{}|;/v/P , this.handler = function()5_|~};/v/P , this.handler = function() {}5_}~vP - this.handler = function() { } this.channel = null5_~vP + this.channel = null5_vP , +5_vP . this.handler = function() {5_vP / .5_vP / this.target = target5_vP / this.type = type5_vP / this.channel = null5_vP / this.handler = function () {5_vP / self.handler = function () {5_"vP /% self.handler = function handler() {5_&vP 0 /5_vP 0 self.channel5_vP "0 emit(self.channel5_"vP 7 0"var channel = require('./channel')5_vP ? 1 emit(self.channel, event)5_!vP E !5_"vP Y0# target.addEventListener(type, )5_vP [1 05_'vP d1/ target.addEventListener(type, self.handler)5_vP g1 if (target.addEventListener)&target.addEventListener(type, handler)1* target.addEventListener(type, handler)5_DvP i0E if (target.addEventListener) target.addEventListener(type, handler)5_#vP n0%function EventChannel(target, type) {5_"vP p0%function EventChannel(target, type) {5_+vP s0.function EventChannel(target, type, capture) {5_vP w1 05_vP ه2 15_FvP ٌ2G if (target.addEventListener) target.addEventListener(type, handler, )5_LvP ٍ3 25_vP ٚ3 else target.attachEvent()5_vP ٛ3 else target.attachEvent('')5_vP ٛ3 else target.attachEvent('on')5_vP ٠ . self.target.addEventListener(self.eventType)5_vP ٣!25_+vP *+3 var capture = options && options.capture || false5_+vP *+5_+vP *+! return convert({}, function() {5_+vP *+ })5_+vP *+# if (eventTarget.addEventListener)5_+vP *+= eventTarget.addEventListener(eventType, handler, capture)5_+vP *+ else5_+vP *+6 eventTarget.attachEvent('on' + eventType, handler)5_*vP *,, *,+5_+vP "*,, return new EventChannel()5_,vP #,,5_ vP -function open(self) {5_& v P $%'- if(!isOpen(self)) open(self)5_  v P  -function isOpen(self) {5_ &&vP ( -function isWatching(self) {5_ &&vP + -function issubscribe(self) {5_ &&vP ,% -function isSubscribe(self) {5_&&& v P 2'%'-# if(!isOpen(self)) subscribe(self)5_*&& v P b)+-0function open(eventTarget, eventType, options) {5_*&& v P d)+-+function open(target, eventType, options) {5_+&& v P p(*+: return new EventChannel(eventTarget, eventType, options)5_*&& v P x*,- *,,5_+&& v P |*,- accumulate.define()5_+&& v P ܁*,- accumulate.define({}5_+&& v P ܄*,- accumulate.define({}, fun5_+&& v P ܉*,- accumulate.implement({}, fun5_+%&& v P ܊*,-% accumulate.implement({}, function()5_+'&& v P ܋*--( accumulate.implement({}, function() {}5_,&& v P ܍+-. }5_+$&& v P ܏*,.' accumulate.implement({}, function() {5_*%&& v P ܜ)*,/ *,.5_,2&& v P ܪ,./5_-.,vP ܾ,005_.0,vP -/2/ else target.attachEvent('on' + type, handler)5_/0,vP *./5_,/,vP ,.2 ,.15_-0,vP ,.2 function handler()5_-0,vP ,/2 function handler() {}5_-1,vP ,.3 function handler() {5_- 1,vP +,.3# function handler(eventTarget) {5_,71,vP ,+-3: accumulate.implement({}, function(self, next, initial) {5_,41,vP ,.35_-2,vP ,-5_-1,vP -/4 -/35_.2,vP -/4 state = next()5_.2,vP .05 .045_/ 3,vP -.05 if ()5_ 3,vP . 5 accumulate = accumulate5_/,3,vP .05, if (state && state.is === accumulated)5_/.3,vP .15/ if (state && state.is === accumulated) {}5_/.4,vP .06. if (state && state.is === accumulated) {5_04,vP //0 }5_/,3,vP ".05, if (state && state.is === accumulated)5_/.3,vP ".15/ if (state && state.is === accumulated) {}5_/4,vP $/165_,5,vP *,.8 ,.75_-6,vP ,0,- var 5_05,vP //175_0 5,vP 1/17 if ()5_0'5,vP ;/17) if (target.removeEventListener())5_0&5,vP A/17? if (target.removeEventListener(type, handler, capture))5_0(0%0 v P E/17A if (target.removeEventListener) (type, handler, capture))5_0[0%0 v P G/17[ if (target.removeEventListener) target.removeEventListener(type, handler, capture))5_0(0%0 v P I/27Z if (target.removeEventListener) target.removeEventListener(type, handler, capture)5_1 0%0 v P J24: target.149 1385_30%0 v P s124: target.detachEvent()5_320%0 v P ~35; 35:5_4 0%0 v P ݁35; next()5_40%0 v P ݅235; next(end())5_ ;0%0 v P ݒ3 ;; accumulate = accumulate, accumulated = core.accumulated5_-1%1 v P ,.<8 accumulate.implement({}, function(self, next, state) {5_-1%1 v P 4,.<? return accumulate.implement({}, function(self, next, state) {5_ 1%1 v P  << accumulate = accumulate, accumulated = core.accumulated,5_ 1%1 v P 5 <9 accumulate = convert, accumulated = core.accumulated,5_  )vP   <function isSubscribed(self) { return self.channel !== null}function subscribe(self) { self.channel = channel() var target = self.eventTarget var type = self.eventType var handler = self.handler var capture = self.captureN if (target.addEventListener) target.addEventListener(type, handler, capture)/ else target.attachEvent('on' + type, handler)}.function EventChannel(target, type, options) { var self = this self.target = target self.type = type self.channel = null4 self.capture = options && options.capture || false* self.handler = function handler(event) { enqueue(self.channel, event) }}?accumulate.define(EventChannel, function(self, next, initial) {) if(!isSubscribed(self)) subscribe(self)) accumulate(self.channel, next, initial)})5_  vP 6 5_  vP ߻7 6 convert = convert, accumulated = core.accumulated,5_*-&& v P )+-function open(options) {5_KML   vP a    this.channel = channel()5_021 vP   accumulate = accumulate,5_(*)vP ԰5_%'(& vP ԕ   enqueue = channel.enqueue, close = channel.close5_&'  vP ԝ  close = channel.close;5_ "vP (  if (addListener)5_  vP  9 if (eventTarget./* vim:set ts=2 sw=2 sts=2 expandtab */M/*jshint asi: true undef: true es5: true node: true browser: true devel: true9 forin: true latedef: false globalstrict: true */ 'use strict';)5