VimUnDony`H =(ML;m^kA reduce(result = buffer(input), next, initial) vvvvPܚP_P 5_P 5_P function cache()5_P function cache(source)5_P function cache(source) {}5_P function cache(source) {5_P '/* 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';function cache(input) {}5_ P 5_ P  5_ P  var self = convert()5_ "P $. var self = convert(source, input.accumulate)5_ !P %- var self = convert(source, cach.accumulate)5_  !P ' 5_ P * self[]5_ P + self[state]5_P - 5_P 1 self5_P ;5_ P H5_P I5_P S. var self = convert(source, cache.accumulate)5_P \ self[]5_ P _ self[bufferd]5_ vP dvar queued = Name()5_vP g self[buffered]5_vP k 5_vP ہ5_vP ۉcache.accumulate = function()5_1vP ێ1cache.accumulate = function(cache, next, initial)5_3vP ۏ4cache.accumulate = function(cache, next, initial) {}5_  vP ۖ   5_! vP ۛ  if ()5_ "!vP ۫  if (isAccumulated)5_!#"vP ۫  if (isAccumulated())5_"$#vP ۭ  if (isAccumulated(cache))5_#%$vP ۾  if (isAccumulated(cache)) 5_$&%.vP  / if (isAccumulated(cache)) return accumulate()5_%'&4vP  6 if (isAccumulated(cache)) return accumulate(cache[])5_&('=vP  > if (isAccumulated(cache)) return accumulate(cache[buffered])5_')(vP ! 5_(*)  vP !function isAccumulated()5_)+*  vP !function isAccumulated() {}5_*,+!M!!vP  #"M if (isAccumulated(cache)) return accumulate(cache[buffered], next, initial)5_+-, !!vP  "$  "#5_,.-""vP % $5_-/.##vP % self[]5_.0/##vP % self[source]5_/10##vP % self[source] = initial5_021##vP %function cache(input) {5_132 ##vP % self[source] = input5_243##vP % self[input] = input5_354##vP %- var self = convert(input, cache.accumulate)5_465"##vP !#% // If 5_576#:##vP 0#%& #%%5_687$##vP 5#%& if ()5_798$##vP 9#%& if (isAccumulating)5_8:9$##vP 9#%& if (isAccumulating())5_9;:$##vP =#%& if (isAccumulating(cache))5_:<;##vP M'&5_;=<$$vP Q'function isAccumulating()5_<>=$$vP R'function isAccumulating() {}5_=?>&%%vP h%'( if (isAccumulating(cache)) 5_>@?&%%vP r%'( if (!isAccumulating(cache)) 5_?A@&)%%vP u%'(* if (!isAccumulating(cache)) accumulate()5_@CA&/%%vP v%'(1 if (!isAccumulating(cache)) accumulate(cache[])5_ADBC&7%%vP ܅%'(9 if (!isAccumulating(cache)) accumulate(cache[buffered])5_CED&6%%vP ܇%'(7 if (!isAccumulating(cache)) accumulate(cache[source])5_DFE%%vP ܐ)(5_EGF&&vP ܓ)function buffer()5_FHG&&vP ܔ)function buffer() {}5_GIH(''vP ܗ')*? if (!isAccumulating(cache)) accumulate(cache[source], buffer)5_HJI'''vP ܝ&(*M if (isAccumulated(cache)) return accumulate(cache[buffered], next, initial)5_IKJ''vP ܫ*function isAccumulated() {5_JLK''vP ܯ*function isAccumulating() {5_KML(3''vP ܷ')*= if (!isBufferring(cache)) accumulate(cache[source], buffer)5_LNM(:''vP (*+ (**5_MON)''vP ()5_NPO(''vP (*+ (**5_OQP) ''vP (*+ accumulate()5_PRQ)''vP (*+ accumulate(append())5_QSR)''vP (*+ accumulate(append(cache[]))5_RTS)#''vP (*+% accumulate(append(cache[buffered]))5_SWT)''vP ()' accumulate(append(cache[buffered], ))5_T^UW"''vP '!#* self[buffered] = []5_W_X^"''vP B!#* self[buffere] = []5_^`_" ''vP D!#* self[buffer] = []5__a`"''vP F!#* self[bufferer] = []5_`ba ''vP H!* self[input] = source5_acb ''vP K!* self[input] = hub(source5_bdc ''vP Q var hub = require +  *5_ced ))vP W ,var hub = require()5_dfe ))vP W  ,var hub = require('')5_egf*1))vP ݈*,- *,,5_fhg*))vP ݟ)+-< if (!isBufferring(cache)) accumulate(cache[input], buffer)5_gih*#))vP ݡ)+-C if (!isBufferring(cache)) buffer(accumulate(cache[input], buffer)5_hji*I))vP ݥ)+-I if (!isBufferring(cache)) buffer(cache)accumulate(cache[input], buffer)5_ikj*())vP ݧ*,. *,-5_jlk+))vP ݩ*+5_kml+))vP ݪ*+5_lnm+))vP ݫ*,,5_mon+ ))vP ݳ*,, accumulate()5_npo+))vP ݹ*,, accumulate(append())5_oqp+))vP ݻ*,, accumulate(append(cache[]))5_prq+#))vP ݼ*,,% accumulate(append(cache[buffered]))5_qsr+))vP *,,% accumulate(append(cache[buffered]))5_rws+2))vP  *,,3 accumulate(append(cache[input], cache[buffered]))5_sxvw 8))vP   ,8 convert = core.convert, accumulate = core.accumulate5_wyx$**vP < #$ self[state] = null5_xzy))vP A,function buffer() {5_y{z))vP H -  ,5_z|{ **vP K - accumulate()5_{}|**vP M - accumulate(cache[])5_|~}**vP O - accumulate(cache[source])5_}~**vP R - accumulate(cache[soure])5_~**vP S .  -5_++vP X . var source = cache[]5_++vP Y!/ !.5_ ,,vP ޭ!/ var target = cache[]5_!,,vP ޴ "/ accumulate(cache[input])5_!,,vP ޹ "/ accumulate(source, function())5_!!,,vP ޹ #/# accumulate(source, function() {})5_!--vP ޼ "0! accumulate(source, function() {5_!#--vP !#1 !#05_"..vP !#1 if ()5_""..vP !#1" if (value && value.is === end)5_"#..vP !#1# if (value && value.is === end) 5_ ..vP 1var forward = Name()5_..vP var state = Name()5_!)--vP  "0* if (value && value.is === end) cache[]5_!.--vP  "0/ if (value && value.is === end) cache[cache]5_!0--vP  "00 if (value && value.is === end) cache[cached]5_!7--vP  "07 if (value && value.is === end) cache[cached] = ture5_!!--vP !#1 !#05_"..vP !#1 target.push()5_"""vP !#1 target.push(value)5_ ""vP  "2  "15_###vP "# 5_##vP 2 15_$$vP #2function isBufferred() {5_ $$vP &2 return 5_$$vP (2 return cache[]5_)$$vP .)+3 )+25_*$$vP /)+3 self[]5_*$$vP 1)+3 self[cached]5_*$$vP 3*,4 *,35_+$$vP 5*,4 self[]5_+$$vP ;*,4 self[caching]5_ $$vP ?545_%%vP E5 var caching5_  v P G5 var cacheing5_, v P M+-5 self[caching] = false5_,,,vP Z+-5 self[cacheing] = false5_ v P _5var cacheing = Name()5_! v P h!#6 !#55_" v P j!#6 cache[]5_" v P m!#6 cache[caching]5_. v P x-/6 self[buffered] = []5_ v P |7 65_ v P ߁7 return cache[]5_ v P ߅7 return cache[buffer]5_ v P ߇7 return cache[buffered]5_. v P ߍ-. self[caching] = false5_ v P ߗ6 return cache[cache]5_ v P ߜ6 return cache[]5_ v P ߝ6 return cache[source]5_ v P ߣ6 return cache[source] === null5_&/ v P ߩ%'67 if (value && value.is === end) cache[cached] = true5_&6 v P ߫%'66 if (value && value.is === end) cache[input] = true5_# v P ߵ"$6 cache[caching] = true5_# v P ߷"# cache[5_" v P ߹!#5 var target = cache[buffered]5_  v P  5 append = core.append5_ v P !55_- v P ,- self[cached] = false5_ v P var cached = Name()5_ v P var caching = Name()5_  v P 3var buffered = Name()5_ vP 3! return cache[buffered] !== null5_! vP  "3# var target = cache[buffered] = []5_!  vP  "3! var target = cache[cached] = []5_!  vP  "3! var buffer = cache[cached] = []5_#  vP "$3 target.push(value)5_+ vP *,3 self[buffered] = null5_0: vP /13K if (isBufferred(cache)) return accumulate(cache[buffered], next, initial)5_20 vP %133B accumulate(append(cache[input], cache[buffered]), next, initial)5_+ vP F+-4 +-35_, vP J+-4 self[]5_, vP N+-4 self[transitional]5_+ vP S*,4 self[cached] = null5_, vP Z +, self[transitional] = append()5_!!!vP l "3# var buffered = cache[cached] = []5_!!!vP m "3 var buffered = = []5_! !!vP n!#4 !#35_"!!vP r!#4 var cache[cached]5_"!!vP s!#4 cache[cached]5_"!!vP v!#4 cache[cached] = append()5_")!!vP ~!#4+ cache[cached] = append(buffered, cache[])5_%#!!vP $'46 if (value && value.is === end) cache[input] = null5_&!!vP &(6 &(55_&!!vP &(7 &(65_' !!vP &(7 cache[]5_'!!vP !&(7 cache[cached]5_/!!vP ".07 self[cached] = []5_55(5vP 467) if (!isBufferring(cache)) buffer(cache)5_35(5vP 3575_26(6vP 249 2485_57(7vP 45 //5_5!6(6vP 468I if (isBufferred(cache)) return accumulate(cache[cached], next, initial)5_66(6vP 56 5_66(6vP $56@ accumulate(append(cache[input], cache[cached]), next, initial)5_44:4vP 356; // If input is already accumulated just forward consumer.5_44:4vP 34 5_24:4vP %246 2455_35:5vP 246; // If input is already accumulated just forward consumer.5_3 5:5vP 2467 // If input is not accumulated just forward consumer.5_35:5vP 2466 // If input is not bufferring just forward consumer.5_3:5:5vP 246: // If input is not being buffered just forward consumer.5_315:5vP &2465 // If input is not being buffered start bufferring.5_4 4 4vP 356) if (!isBufferring(cache)) buffer(cache)5_4 4 4vP 356( if (!isbuffering(cache)) buffer(cache)5_  vP '6function isBufferring() {5_ vP function isBufferred(cache) {5_ vP  return cache[input] === null5_ vP (}5_ vP )3function isBuffering() {5_1 vP 134 1335_2 vP *134 // 5_)vP : 41 cache[cached] = append(buffered, cache[source])5_*vP <, 4+ cache[cached] = append(buffered, source])5_! vP J!#5 !#45_"vP R!#5 // If source is ended5_"8vP \!$58 // If source is ended remove reference to the input.5_#"7vP f"$6 //5_#"7vP m-"$6 // and replace 5_#'"7vP "$64 // and replace internal cache with actual array.5_#6"7vP "$67 // and replace internal cache with an actual array.5_#"7vP "$62 // and replace internal cache with an actual .5_#""7vP "$63 // and replace internal `cache with an actual .5_##"7vP "$66 // and replace internal `cacheed` with an actual .5_ #)"7vP /"$65 // and replace internal `cached` with an actual .5_  ##"7vP "$6? // and replace internal `cached` representation an actual .5_  #""7vP "$6> // and replace internal `cache` representation an actual .5_  #"7vP "$69 // and replace internal `` representation an actual .5_#1"7vP "$6= // and replace internal buffer representation an actual .5_#4"7vP "$64 // and replace internal buffer with an actual .5_#""7vP "$6( // and replace internal buffer with 5_#'"7vP "$6' // and replace internal cache with 5_#6"7vP "$6> // and replace internal cache with a simple array buffered5_#8"7vP 0"$68 // and replace internal cache with a simple buffered5_4 "7vP 1356 // Forward 5_4+"7vP F2356+ // Forward all cached and upcoming values5_6"7vP R7665_%%vP 8 close = channels.close5_$$vP  9; enqueue = channels.enqueue, dispose = channels.dispose,5_##vP  ; isClosed = channels.isClosed, isOpen = channels.isOpen,5_""vP $var channels = require('./channel'),5_!!vP ;5_P|var Method = require('method')5_P|5_ P|<5_! P|= 5_ "! P| 5_!#" P|> .5_"$#Pvar Name = require('name')5_#%$ P .var cached = Name()5_$&% P .var cached = ""5_%'& P .var cached = "cached@"5_&(' P .var input = Name()5_')( P .var input = ""5_(*) P? .var input = "input@"5_)+*Pvar core = require('./core'),5_*,+ P-9 convert = core.convert, accumulate = core.accumulate,5_+-, P-7var convert core.convert, accumulate = core.accumulate,5_,.-P -9var convert = core.convert, accumulate = core.accumulate,5_-/.P -6var convert = require(), accumulate = core.accumulate,5_.0/P -8var convert = require(""), accumulate = core.accumulate,5_/10$P-Avar convert = require("./convert"), accumulate = core.accumulate,5_021P.!var accumulate = core.accumulate,5_132'P.'var accumulate = require("./accumulate,5_243'P / .5_354P% /var concat = require()5_465P' /var concat = require("")5_576P* 0 /5_687 P/ 0var end = require()5_798 P/ 0var end = require("")5_8:9 P1@ ( append = core.append, end = core.end5_9@:P7B/* cache[cached] = append(buffered, source)5_:A?@PI'/* vim:set ts=2 sw=2 sts=2 expandtab */5_@BAPIM/*jshint asi: true undef: true es5: true node: true browser: true devel: true5_ACB PIC9 forin: true latedef: false globalstrict: true */5_BDCPI, 'use strict';5_CED PID, "use strict';5_DFEPEvar end = require("./end")5_EGF!PF+$ if (value && value.is === end) {5_FHGP, +. var self = convert(source, cache.accumulate)5_GIHP,L +* var self = convert({}, cache.accumulate)5_HJIPb)"var convert = require("./convert")(var accumulate = require("./accumulate") var concat = require("./concat")var hub = require('./hub')"var cached = "cached@" + module.id var input = "input@" + module.idfunction isBuffering(cache) { return cache[cached] !== null}function buffer(cache) { var source = cache[input] var buffered = []* cache[cached] = concat(buffered, source)& accumulate(source, function(value) { buffered.push(value)7 // If source is ended remove reference to the input? // and replace internal cache with a simple buffered array. if (value === null) { cache[input] = null cache[cached] = buffered } })}function cache(source) {, var self = convert(null, cache.accumulate) self[input] = hub(source) self[cached] = null return self}3cache.accumulate = function(cache, next, initial) {4 // If input is not being buffered start buffering.( if (!isBuffering(cache)) buffer(cache): // Forward all cached and upcoming values to a consumer.* accumulate(cache[cached], next, initial)}module.exports = cache5_IKJPb5_JLKPbfunction cache()5_KMLPbfunction cache() {}5_LNMPbfunction cache() {5_MONPb 5_NPOPbvar buffer = require5_OQPPbvar buffer = require()5_PRQPbHvar buffer = require("")5_QSRPb5_RTSPbvar 5_SUTPbvar reducible = require()5_TVUPbvar reducible = require("")5_UWV#Pb 5_VXWPb var reduce = require()5_WYXPb var reduce = require("")5_XZY Pb "var reduce = require("./reducers")5_Y[ZPb  return reducers5_Z\[Pb  return reducible()5_[]\Pb  return reducible(function())5_\^]Pb ! return reducible(function() {})5_]_^Pb   5_^`_ Pb   5__a` Pb  var result5_`ba Pb  return reducible(function() {5_acb (Pb   5_bdc Pb  result ? 5_ced Pb  return result ? 5_dfe Pb  return result ? reduce()5_egf 1Pb 1 return result ? reduce(result, next, initial)5_fhg 1Pb 1 return result ? reduce(result, next, initial)5_gih Pb  5_hji "Pc # result = buffer()5_ikj Pc ( result = buffer(input)5_jlk /Pc / reduce(result = buffer(input)5_kml Pc  ? reduce(result = buffer(input), next, initial)5_lnm Pc J  5_msn PcN  5_ntos P܊ var reduce = require("./reduce")5_sut"P܎O$var accumulate = require("./reduce")5_tvu Pܗ 3 return result ? reduce(result, next, initial) :5_uv PܙP A reduce(result = buffer(input), next, initial)5_npsoPӟ, "use strict";"var convert = require("./convert")(var accumulate = require("./accumulate") var concat = require("./concat")var end = require("./end")var hub = require('./hub')"var cached = "cached@" + module.id var input = "input@" + module.idfunction isBuffering(cache) { return cache[cached] !== null}function buffer(cache) { var source = cache[input] var buffered = []* cache[cached] = concat(buffered, source)& accumulate(source, function(value) { buffered.push(value)7 // If source is ended remove reference to the input? // and replace internal cache with a simple buffered array.$ if (value && value.is === end) { cache[input] = null cache[cached] = buffered } })}function cache(source) {. var self = convert(source, cache.accumulate) self[input] = hub(source) self[cached] = null return self}3cache.accumulate = function(cache, next, initial) {4 // If input is not being buffered start buffering.( if (!isBuffering(cache)) buffer(cache): // Forward all cached and upcoming values to a consumer.* accumulate(cache[cached], next, initial)}module.exports = cache5_oqpP -+ "use strict";"var convert = require("./convert")(var accumulate = require("./accumulate") var concat = require("./concat")var hub = require('./hub')"var cached = "cached@" + module.id var input = "input@" + module.idfunction isBuffering(cache) { return cache[cached] !== null}function buffer(cache) { var source = cache[input] var buffered = []* cache[cached] = concat(buffered, source)& accumulate(source, function(value) { buffered.push(value)7 // If source is ended remove reference to the input? // and replace internal cache with a simple buffered array. if (value === null) { cache[input] = null cache[cached] = buffered } })}function cache(source) {. var self = convert(source, cache.accumulate) self[input] = hub(source) self[cached] = null return self}3cache.accumulate = function(cache, next, initial) {4 // If input is not being buffered start buffering.( if (!isBuffering(cache)) buffer(cache): // Forward all cached and upcoming values to a consumer.* accumulate(cache[cached], next, initial)}module.exports = cache5_prqPP,, "use strict";"var convert = require("./convert")(var accumulate = require("./accumulate") var concat = require("./concat")var end = require("./end")var hub = require('./hub')"var cached = "cached@" + module.id var input = "input@" + module.idfunction isBuffering(cache) { return cache[cached] !== null}function buffer(cache) { var source = cache[input] var buffered = []* cache[cached] = concat(buffered, source)& accumulate(source, function(value) { buffered.push(value)7 // If source is ended remove reference to the input? // and replace internal cache with a simple buffered array.$ if (value && value.is === end) { cache[input] = null cache[cached] = buffered } })}function cache(source) {. var self = convert(source, cache.accumulate) self[input] = hub(source) self[cached] = null return self}3cache.accumulate = function(cache, next, initial) {4 // If input is not being buffered start buffering.( if (!isBuffering(cache)) buffer(cache): // Forward all cached and upcoming values to a consumer.* accumulate(cache[cached], next, initial)}module.exports = cache5_qrP! -+ "use strict";"var convert = require("./convert")(var accumulate = require("./accumulate") var concat = require("./concat")var hub = require('./hub')"var cached = "cached@" + module.id var input = "input@" + module.idfunction isBuffering(cache) { return cache[cached] !== null}function buffer(cache) { var source = cache[input] var buffered = []* cache[cached] = concat(buffered, source)& accumulate(source, function(value) { buffered.push(value)7 // If source is ended remove reference to the input? // and replace internal cache with a simple buffered array. if (value === null) { cache[input] = null cache[cached] = buffered } })}function cache(source) {. var self = convert(source, cache.accumulate) self[input] = hub(source) self[cached] = null return self}3cache.accumulate = function(cache, next, initial) {4 // If input is not being buffered start buffering.( if (!isBuffering(cache)) buffer(cache): // Forward all cached and upcoming values to a consumer.* accumulate(cache[cached], next, initial)}module.exports = cache5_:>@?PJ5_:=?>PH 5_:<>=PD5_:;=< PA 5_:<; P> 5_  #"7vP "$6. // and replace representation an actual .5_ . "7vP -/6 self[buffer] = null5_&"7vP %'6 cache[buffer] = buffered5_#7vP 65_ "7vP  5_  "7vP  6* cache[buffer] = append(buffered, source)5_  "7vP .6 return cache[buffer] !== null5_"7vP 6 var target = []5_ "7vP 6 var buf = []5_"7vP b6jjjvar cached = Name()5_vP )4 var source = 5_vP )5_vP ++ 3, accumulate(cache[input], function(value) {5_!#--vP ޿ "0. accumulate(source, function(value, result) {5_!*..vP !"05_stwv))vP ,% close = channels.close, append = 5_suvt+B))vP *,,C accumulate(append(cache[input], cache[buffered]), next, initial))5_tu+C))vP *,,D accumulate(append(cache[input], cache[buffered]), next, initial)))5_WY^X"''vP (!#* self[buffer] = []5_XZY"''vP )!#* self[buffer] = channel()5_Y[Z"''vP -!#* self[buffer] = hub(channel()5_Z\["''vP /!#* self[buffer] = hub(channel())5_[]\"((vP 6"#* "$+ self[]5_\]#''vP ;"$5_TVWU ''vP !* self[input] = hub(source5_UV ''vP !* self[input] = hub(source)5_ACB&8%%vP z%'(* if (!isAccumulating(cache)) accumulate()5