 
 reduceRight = createReduce(-1)
 
+# Returns a function, that, as long as it continues to be invoked,
+# will not be triggered.
+# The function will be called after it stops being called for N milliseconds.
+# If immediate is passed, trigger the function on the leading edge,
+# instead of the trailing.
 debounce = (func, wait, immediate) ->
   timeout = undefined
   args = undefined

      keys.push key
  keys

getValues = (obj) ->
  keys = getKeys obj
  length = keys.length

    fromIndex = 0
  obj.indexOf(item) >= 0

# Produce an array that contains every item
# shared between all the passed-in arrays.
intersection = (array) ->
  result = []
  argsLength = arguments.length
