 			// request the child object
 			var hashMap:ILinkableHashMap = parent as ILinkableHashMap;
 			var dynamicObject:ILinkableDynamicObject = parent as ILinkableDynamicObject;
-			var child:Object = null;
+			var child:* = null;
 			if (hashMap)
 			{
 				if (childName is Number)

		 * Shortcut for WeaveAPI.SessionManager.getLinkableDescendants()
		 * @copy weave.api.core.ISessionManager#getLinkableDescendants()
		 */
		public static function getDescendants/*/<T>/*/(object:ILinkableObject, filter:/*/new(..._:any[])=>T | string/*/Class = null):Array/*/<T & ILinkableObject>/*/
		{
			if (filter is String)
				filter = Weave.getDefinition(String(filter), true);

		 * @return The closest ancestor of the given type.
		 * @see weave.api.core.ISessionManager#getLinkableOwner()
		 */
		public static function getAncestor/*/<T>/*/(descendant:ILinkableObject, ancestorType:/*/(new(..._:any[])=>T) | string/*/Class):/*/T & ILinkableObject/*/ILinkableObject
		{
			if (ancestorType is String)
				ancestorType = Weave.getDefinition(String(ancestorType), true);
