part3 done.