 	import weave.api.core.ILinkableHashMap;
 	import weave.api.core.ILinkableObject;
 	import weave.api.getCallbackCollection;
-	import weave.api.reportError;
 	import weave.compiler.Compiler;
 	import weave.compiler.ICompiledObject;
+	import weave.compiler.StandardLib;
 	import weave.utils.Dictionary2D;
 
 	/**

					}
					catch (e:*)
					{
						reportError(e);
					}
					ExternalInterface.marshallExceptions = prev;
				}

		 */
		public function removeObject(objectPath:Array):Boolean
		{
			if (objectPath && objectPath.length)
			{
				objectPath = objectPath.concat();
				var childName:Object = objectPath.pop();
				var parent:ILinkableObject = WeaveAPI.SessionManager.getObject(_rootObject, objectPath);
				var hashMap:ILinkableHashMap = parent as ILinkableHashMap;
				var dynamicObject:ILinkableDynamicObject = parent as ILinkableDynamicObject;
				if (hashMap)
				{
					if (childName is Number)
						childName = hashMap.getNames()[childName];
					hashMap.removeObject(childName as String);
					return true;
				}
				else if (dynamicObject)
				{
					dynamicObject.removeObject();
					return true;
				}
			}
			
			externalWarning("No suitable parent from which to remove a child at path " + Compiler.stringify(objectPath));
			return false;
		}
		
		/**
