   # The rules which have been traversed. Used to easily produce a new AST
   # using previously traversed nodes.
   #
-  rulesCache = []
+  traversedRules = []
 
   # ASTs which represent the stylesheets which should be created as a result
   # of processing.

  # Convert any remaining rules to a new AST. This also accounts for the case
  # where the selector limit was not reached.
  #
  newAsts.push createAst(rulesCache) if rulesCache.length

  newData = (css.stringify ast for ast in newAsts)


  newAsts = []


  # Helper function for a pushing a new AST and clearing traversed rules.
  #
  startNewAst = ->
    newAsts.push createAst(traversedRules)
    traversedRules = []
    numSelectors = 0


  # Increment the selector count and track traversed rules.
  #
  for rule in ast.stylesheet.rules
    switch rule.type
