New version, observer path is now specified through parameter