added intial functions