     i = 0
     loop
       break unless @tokens[i]
-      move = block @tokens[i], i
+      move = block.call this, @tokens[i], i
       i += move
     true
 

  # Massage newlines and indentations so that comments don't have to be
  # correctly indented, or appear on a line of their own.
  adjustComments: ->
    @scanTokens (token, i) =>
      return 1 unless token[0] is 'HERECOMMENT'
      [before, prev, post, after] = [@tokens[i - 2], @tokens[i - 1], @tokens[i + 1], @tokens[i + 2]]
      if after and after[0] is 'INDENT'

    stack = []
    debt  = {}
    (debt[key] = 0) for key, val of INVERSES
    @scanTokens (token, i) ->
      tag = token[0]
      inv = INVERSES[token[0]]
      if include EXPRESSION_START, tag
