merged  authentication implementing