use an idle observer.