               @[v] = componentInstance['__' + v]
 
   for v, getSet of getSets
-    config = (__v) ->
+    config = (__v, getSet) ->
       return {
         get: ()->
           return @[__v]

                args.push(@[arg])  
              getSetConfig.cb.apply(@_components[getSetConfig.ctx], args)
      }
    Object.defineProperty(NewClass.prototype, v, config('__' + v))

  return NewClass


    for name, extension of extensions
      component.prototype[name] = extension

  component.prototype._entity = null
  component.prototype._sync = null
  component.prototype._listensTo = null
  component.prototype._observes = null
