       value = f(value)
     value
 toSimpleExtractor = (args) -> (key) -> (value) ->
-  if not value?
+  unless value?
     undefined
   else
     fieldValue = value[key]

    removeSub = (subscription) ->
      subscriptions = _.without(subscription, subscriptions)
    pushIt = (event) ->
      if not pushing
        return if event is prevError
        prevError = event if event.isError()
        success = false

class Source
  constructor: (@obs, @sync, @subscribe, @lazy = false) ->
    @queue = []
    @subscribe = @obs.subscribeInternal unless @subscribe?
  toString: -> @obs.toString.call(this)
  markEnded: -> @ended = true
  consume: ->
