 	import mx.core.UIComponent;
 	import mx.core.UIComponentDescriptor;
 	import mx.core.mx_internal;
+	import mx.managers.IFocusManagerContainer;
+	import mx.core.IRawChildrenContainer;
+	import mx.core.IDataRenderer;
+	import flash.display.DisplayObject;
 	
 	use namespace mx_internal;
 

				canvas.createComponentFromDescriptor(desc, true);
			}
		}
	}
}
		 * the childDescriptors property with UIComponentDescriptor objects. These are used to create 
		 * the child components that are set in MXML.
		 */
		
		public function set childDescriptors(value:Array):void {
			_childDescriptors = value;
		}
		
		mx_internal function setDocumentDescriptor(desc:UIComponentDescriptor):void {
			
			if (_documentDescriptor && _documentDescriptor.properties.childDescriptors) {
            	if (desc.properties.childDescriptors) {
                	throw new Error("Multiple sets of visual children have been specified for this component (base component definition and derived component definition).");
				}
			} else {
				_documentDescriptor = desc;
				_documentDescriptor.document = this;
			}
                   
            if(desc.properties.childDescriptors) {
				this.childDescriptors = desc.properties.childDescriptors; 
			}
		}
		
		/**
