authentication module
merged conflict done