implimented login class