       # 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?()
+          callback? view
           return
         if view.showAnimation? and view isnt this
           view.showAnimation callback
         else
           view.$el.show()
-          callback?()
+          callback? view
 
       # 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?()
+          callback? view
           return
         if view.closeAnimation? and view isnt this
           view.closeAnimation callback
         else
           view.$el.hide()
-          callback?()
+          callback? view
 
       # Depedencies Injection functionality
       # `options` - options for `new View(options)`  operations

          this.trigger "render"
          @render()

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

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


      show:(_view, options = {},callback)->
        unless _view?
          callback? _view
          return
        view = @getViewDI _view, options
        if view is @_$_p.currentView
          callback? view
          return view
        __show = =>
            @_setCurrentView null
