some improvements.

It should be the full namespace as it was, pretty much where you changed you'll need to revert and you should use the `ProviderInterface` and not `UserProviderInterface` as the later is an alias.