Add Observer interface