fixed observer