             var w:ChangeWatcher =
                 new ChangeWatcher(chain[0], handler, commitOnly,
                     watch(null, chain.slice(1), handler, commitOnly));
+            w.useWeakReference = useWeakReference;
             w.reset(host);
             return w;
         }

        this.commitOnly = commitOnly;
        this.next = next;
        events = {};
    }

    //--------------------------------------------------------------------------

            events = getEvents(host, name, commitOnly);
            for (p in events)
            {
                host.addEventListener(p, wrapHandler, false,
                    EventPriority.BINDING, useWeakReference);
            }
        }

