 	    var container:* = target.parent;
 		if (property == "index")
 			return container ? 
-                ((container is Group) ? container.getItemIndex(target) : container.getChildIndex(target)) : 0;
+                ((container is IVisualElementContainer) ? 
+                    IVisualElementContainer(container).getElementIndex(target) : 
+                    container.getChildIndex(target)) 
+                : 0;
 		
 		return super.getValueFromTarget(target, property);
 	}

import flash.display.DisplayObjectContainer;

import mx.components.Group;
import mx.core.mx_internal;
import mx.effects.effectClasses.AddActionInstance;
import mx.effects.effectClasses.PropertyChanges;

		    {
                // TODO : workaround for current situation of mis-match between
                // Group having 'item's and Flex3 components having 'parent's
                if (target.parent is IVisualElementContainer)
                    IVisualElementContainer(target.parent).removeElement(target);
                else
                    target.parent.removeChild(target);
            }
