using injected user provider