       #
         this.trigger "onBeforeClose"
         @onBeforeClose?()
-        finish = _.after 3, =>  callback?()             #--finish 3 times
+        finish = _.after 3, =>  callback? this         #--finish 3 times
 
         if(regions = _.result(this,"regions"))
           keys = _.chain(regions)

      # Helper method which can descride animation/behavior for `view` while base view `show` `view`. By default using `view.$el.show()`
      showViewAnimation:(view, callback)->
        unless view?
          callback?()
          return
        if view.showAnimation? and view isnt this
          view.showAnimation callback
        else
          view.$el.show()
          callback?()

      # Helper method which can descride animation/behavior for `view` while base view `close` `view`. By default using `view.$el.show()`
      closeViewAnimation:(view, callback)->
        unless view?
          callback?()
          return
        if view.closeAnimation? and view isnt this
          view.closeAnimation callback
        else
          view.$el.hide()
          callback?()

      # Depedencies Injection functionality
      # `options` - options for `new View(options)`  operations

          this.trigger "render"
          @render()

        finish = _.after 3, => callback? this              #--finish 3 times

        if(regions = _.result(this,"regions"))
          keys = _.chain(regions)
