 {
 
 import flash.display.DisplayObject;
-import flash.display.DisplayObjectContainer;
 import flash.events.Event;
+
 import mx.automation.IAutomationObject;
 import mx.core.Container;
 import mx.core.ContainerCreationPolicy;
 import mx.core.EdgeMetrics;
-import mx.managers.IHistoryManagerClient;
 import mx.core.IInvalidating;
+import mx.core.INavigatable;
+import mx.core.INavigatorContent;
 import mx.core.IUIComponent;
 import mx.core.ScrollPolicy;
 import mx.core.UIComponent;

        event.newIndex = newIndex;
        event.relatedObject = getChildAt(newIndex);
        dispatchEvent(event);
    }

    //--------------------------------------------------------------------------


        // Stop all currently playing effects
        if (lastIndex != -1 && lastIndex < numChildren)
            UIComponent(getChildAt(lastIndex)).endEffectsStarted();
        
        if (_selectedIndex != -1)
            (selectedChild as UIComponent).endEffectsStarted();

        // Remember the old index.
        lastIndex = _selectedIndex;
