Refactor Observable