added DirtyHandler class