update observer and helper