     @
 
   adaptation: ( apply, cancel ) ->
-    apply.call @, model for model in @
+    @each ( model ) -> apply.call @, model
     @adaptations.apply.push apply
     @adaptations.cancel.unshift cancel if cancel
     @

    @clone model: model, filters: filters

  onModelCreated: ( extModel, model ) ->
    @add model if model.isCorrect @filters
    @

  onModelUpdated: ( extModel, model ) ->
    if model in @
      if model.isCorrect @filters
        @reorder()
        @trigger 'update.model', model
      else @remove model
    else if model.isCorrect @filters
      @add model
    @

  onModelDestroyed: ( model ) ->
    @remove model
    @

  adaptCollection: ->

    @

  removeAll: ->
    @each ( model ) -> @remove model
    @length = 0
    @

  each: ( callback ) ->
    callback.call @, model, index for model, index in @
    @

  pluck: ( property ) ->
