needs an observer