oving#2 implemntation
oving#3 and 4 assignments