           for k, v of arguments
             arg[k] = v
           arg.push @
+          @get = ((self, k) -> self.get k, @connection.id).bind @, self
           r = f.apply self, arg
           r
       )(f)

          delete doc._id
          unless init
            #Add to @PaginatedCollection
            subscription.added(@id, id, doc)
            (@Collection.find @filters,
              sort: @sort
              fields: @fields
              skip: skip
              limit: @perPage
            ).forEach (o, i) =>
              if i >= at
                subscription.changed(@id, o._id, _.object([["_#{@id}_i", i + 1]]))
        catch e
      ).bind @, subscription
    handle2 = c.observeChanges
      movedBefore: ((subscription, id, before) ->
        ref = false
        (@Collection.find @filters,
          sort: @sort
          fields: @fields
          skip: skip
          limit: @perPage
        ).forEach (o, i) =>
          if !ref and o._id is before
            ref = true
            at = i
          if ref
            subscription.changed(@id, o._id, _.object([["_#{@id}_i", i + 1]]))
          subscription.changed(@id, id, _.object([["_#{@id}_i", i]]))
        #Change in @PaginatedCollection
      ).bind @, subscription
      changed: ((subscription, id, fields) ->
        try
          #Change in @PaginatedCollection
          subscription.changed @id, id, fields
        catch e
      ).bind @, subscription
      removed: ((subscription, id) ->
        try
          #Remove from @PaginatedCollection
          subscription.removed @id, id
        catch e
      ).bind @, subscription
    n = 0
    c.forEach ((doc, index, cursor) ->
      n++
      doc["_#{@id}_p"] = page
      doc["_#{@id}_i"] = index
      #Initial add to @PaginatedCollection
      subscription.added @id, doc._id, doc
    ).bind @
    init = false
    subscription.onStop ->
      handle.stop()
      handle2.stop()
    @ready()
    @subscriptions.push subscription
    c
  loading: (p) ->
    if !@fastRender and p is @currentPage() and Session?

          options = r[1]
      else if _.isFunction r.fetch
        c = r
    if !EJSON.equals({}, filters) and !EJSON.equals(get("filters"), filters)
      set "realFilters", filters
    c ?= @Collection.find filters, options
    init = true
    self = @
    handle = c.observe
      addedAt: ((sub, doc, at) ->
        try
          doc["_#{@id}_p"] = page
          doc["_#{@id}_i"] = at
