finishing the first iteration of this project