completed first part
finished everything