fixed relative changed data back to absolute
added private _on_modified method which calls the public