first commit of implementation