save
more observer work