updated for part3