   take: (count) ->
     return Bacon.never() if count <= 0
     withDescription(this, "take", count, @withHandler (event) ->
-      if !event.hasValue()
+      unless event.hasValue()
         @push event
       else
         count--

    triggerFound = false
    for s in patSources
      index = _.indexOf(sources, s)
      if !triggerFound
        triggerFound = Source.isTrigger(s)
      if index < 0
        sources.push(s)

          Bacon.noMore)

  endOnError: (f, args...) ->
    f = true unless f?
    convertArgsToFunction this, f, args, (f) ->
      withDescription(this, "endOnError", @withHandler (event) ->
        if event.isError() and f(event.error)
