intial functionality working