                     else
                         sp.document[sp.name] = sp.previousValue;
                 }
+                else if (o is SetEventHandler)
+                {
+                    var seh:SetEventHandler = SetEventHandler(o);
+                    if (seh.target != null)
+                    {
+                        seh.document[seh.target].removeEventListener(seh.name, seh.handlerFunction);
+                    }
+                    else
+                    {
+                        seh.document.removeEventListener(seh.name, seh.handlerFunction);
+                    }
+                }
             }
         }
         

                        sp.document[sp.name] = sp.value;                        
                    }
                }
            }            
        }
	}

    import flash.display.DisplayObject;
    
    import mx.states.AddItems;
    import mx.states.SetEventHandler;
    import mx.states.SetProperty;
    import mx.states.State;
    
