start to extract auth module