                     invalidateDisplayObjectSharing();       
             }
         }
+    }
+    
+    /**
+     * @private
+     */
+    private function isAIMBlendMode(value:String):Boolean
+    {
+        if (value == "colordodge" || 
+            value =="colorburn" || value =="exclusion" || 
+            value =="softlight" || value =="hue" || 
+            value =="saturation" || value =="color" ||
+            value =="luminosity")
+            return true; 
+        else return false; 
     }
     
     /**

                    displayObject.alpha = _effectiveAlpha;
            }  

            if (blendModeChanged || displayObjectChanged && !blendShaderChanged)
            {
                blendModeChanged = false;
                if (_blendMode == "auto" && alpha < 1 && alpha > 0)
                    displayObject.blendMode = BlendMode.LAYER;
                else if (_blendMode == "auto" && alpha == 1 || alpha == 0)
                    displayObject.blendMode = BlendMode.NORMAL;
                else 
                    displayObject.blendMode = _blendMode;                 
            }
            
            if (blendShaderChanged || displayObjectChanged)
            {
                // The graphic element's blendMode was set to a non-Flash 
                // blendMode. We mimic the look by instantiating the 
                // appropriate shader class and setting the blendShader
                // property on the displayObject. 
                blendShaderChanged = false; 
                switch(_blendMode)
                {
                    case "color": 
                    {
                        displayObject.blendShader = new ColorShader();
                        break; 
                    }
                    case "colordodge":
                    {
                        displayObject.blendShader = new ColorDodgeShader();
                        break; 
                    }
                    case "colorburn":
                    {
                        displayObject.blendShader = new ColorBurnShader();
                        break; 
                    }
                    case "exclusion":
                    {
                        displayObject.blendShader = new ExclusionShader();
                        break; 
                    }
                    case "hue":
                    {
                        displayObject.blendShader = new HueShader();
                        break; 
                    }
                    case "luminosity":
                    {
                        displayObject.blendShader = new LuminosityShader();
                        break; 
                    }
                    case "saturation": 
                    {
                        displayObject.blendShader = new SaturationShader();
                        break; 
                    }
                    case "softlight":
                    {
                        displayObject.blendShader = new SoftLightShader();
                        break; 
                    }
                }
            }

import mx.events.PropertyChangeEvent;
import mx.filters.BaseFilter;
import mx.filters.IBitmapFilter;
import mx.graphics.shaderClasses.ColorBurnShader;
import mx.graphics.shaderClasses.ColorDodgeShader;
import mx.graphics.shaderClasses.ColorShader;
import mx.graphics.shaderClasses.ExclusionShader;
import mx.graphics.shaderClasses.HueShader;
import mx.graphics.shaderClasses.LuminosityMaskShader;
import mx.graphics.shaderClasses.LuminosityShader;
import mx.graphics.shaderClasses.SaturationShader;
import mx.graphics.shaderClasses.SoftLightShader; 
import mx.geom.Transform;
import mx.geom.TransformOffsets;
import mx.managers.ILayoutManagerClient;
