facto AuthFactory
fix conflict