 		 */
 		public function set targetPath(path:Array/*/<string|number>/*/):void
 		{
-			// do not allow watching the globalHashMap
+			// do not allow watching the root object
 			if (path && path.length == 0)
 				path = null;
 			if (StandardLib.compare(_targetPath, path) != 0)

		{
			_targetPath = null;
			_target = null;
			// everything else will be cleaned up automatically
		}
		

				return;
			}
			
			_foundRoot = root != null;
			if (!_foundRoot && !_warned)
			{
				var error:Error = new Error("LinkableWatcher has a targetPath but no root");
				WeaveAPI.Scheduler.callLater(this, function():void {
					if (!_foundRoot && !root)
						JS.error("Warning:", error);
				});
				_warned = true;
			}
			var node:ILinkableObject = Weave.followPath(_root, _targetPath);
			if (!node)
			{
				// traverse the path, finding ILinkableDynamicObject path dependencies along the way
				node = _root;
				var subPath:Array = [];
				for each (var name:* in _targetPath)
				{
