fix TODO with observables