     (@reportDeferred(nextStep.description); @runNextStep(); return) if nextStep.pending
     nextTick =
       if nextStep instanceof Description then =>
-        nextStep.run @runner, @assertions, @binding, @bare, @runNextStep, \
-          @dsl._beforeBlocks_, @dsl._afterBlocks_
+        nextStep.run @assertions, @runNextStep, @dsl._beforeBlocks_, @dsl._afterBlocks_
       else => # ExampleWithHooks
         nextStep.run @runner, @assertions, @binding, @bare, @onExampleFinished
     setTimeout nextTick, 0

    @runner.emit 'oojspec:examples:add', @dsl._examplesCount_
    @removeDsl() unless @bare
    @bare or= @binding.bare
    @runAround @dsl._beforeAllBlocks_, @dsl._afterAllBlocks_, onFinish, (@onExamplesFinished)=>
      @runNextStep()

  injectDsl: -> @binding[p] = v for p, v of @dsl; return

  removeDsl: -> delete @binding[p] for p in RESERVED_FOR_DESCRIPTION_DSL; return

  runNextStep: =>
    (@onExamplesFinished(); return) unless @dsl._examples_.length

      @block = @description
      @description = @block.description or @block.name

  processDsl: (@runner, @binding, @bare)->
    @dsl = new DescribeDsl
    (@block.runSpecs or @block.prototype?.runSpecs) and @detectBindingError()

    @binding or= {}
    @injectDsl() unless @bare
    if @block.runSpecs or @block.prototype?.runSpecs
