added register method