simplified, no need for userName