step 4 mostly done