   registerGlobal: ->
     return if @_isRegistered
     @_isRegistered = true
-    for { name, type, subname } in @definition.globalDependencies
+    @definition.globalDependencies.forEach (dep) =>
+      { name, type, subname } = dep
       switch type
         when "singular"
           if @object[name]

  trigger: =>
    @clearCache()
    if @hasChanged()
      value = @get()

      changes = {}
      changes[name] = @object[name] for name in @dependents when name isnt @name

      @event.trigger(@_oldValue, value)
      for own name, value of changes
        prop = @object[name + "_property"]
        prop.clearCache()

          prop.event.trigger(prop._oldValue, value)
          prop._oldValue = value

      changes[@name] = newValue
      @object.changed?.trigger?(changes)
      @_oldValue = newValue

  ["bind", "rebind", "unbind", "one", "resolve"].forEach (fn) =>
    this::[fn] = -> @event[fn](arguments...)
