finish data change callbacks, need to think about instance argument in data change callback