added a second version of Observable