     import mx.managers.SystemManager;
     import mx.managers.ToolTipManager;
     import mx.styles.IStyleClient;
+    import mx.utils.ArrayUtil;
     import mx.validators.Validator;
-    import flash.geom.Utils3D;
-    import mx.utils.ArrayUtil;
     
     
     /**

                        
                        if (parent is DisplayObjectContainer) {
                            parent.addEventListener(ScrollEvent.SCROLL, parentContainerScrolled, false, 0, true);
                            if (!(containersToTargets[parent] is Array)) {
                                containersToTargets[parent] = [];
                            }

            }
        }
        
        private function parentContainerMoved(event:MoveEvent):void 
        {
            var parent:DisplayObjectContainer = (event.target as DisplayObjectContainer);
            
            // move all errors tips that are related to objects parented by this parent
            // TODO: how to figure out which ones?
            
            // for now, just move everything
            for (var target:* in errorTips)
            {
                positionErrorTip(errorTips[target], target);
            }
            
        }
            
        /**
         * When a target is hidden, then make sure the error tip is hidden too.
         */
