 	import flash.utils.Dictionary;
 	import flash.utils.getQualifiedClassName;
 	
+	import weave.api.disposeObject;
+	import weave.api.getCallbackCollection;
+	import weave.api.newLinkableChild;
+	import weave.api.registerLinkableChild;
 	import weave.api.core.DynamicState;
+	import weave.api.core.ICallbackCollection;
 	import weave.api.core.IChildListCallbackInterface;
 	import weave.api.core.ILinkableHashMap;
-	import weave.api.core.ILinkableObject;
-	import weave.api.disposeObject;
-	import weave.api.newLinkableChild;
-	import weave.api.registerLinkableChild;
+	import weave.api.core.ILinkableObject;
 	
 	/**
 	 * Allows dynamically creating instances of objects implementing ILinkableObject at runtime.

			
			//trace(LinkableHashMap, "setSessionState "+setMissingValuesToNull, ObjectUtil.toString(newState.qualifiedClassNames), ObjectUtil.toString(newState));
			// first pass: make sure the types match and sessioned properties are instantiated.
			var i:int;
			var objectName:String;
			var className:String;
			var typedState:Object;

				}
			}
			// update name order AFTER objects have been added and removed.
			setNameOrder(newNameOrder);
			
			// final pass: resume all callbacks
			
			// next pass: delay callbacks of all children
			for each (callbacks in delayed)
				if (!WeaveAPI.SessionManager.objectWasDisposed(callbacks))
					callbacks.resumeCallbacks();
			
			resumeCallbacks();
		}
