Assignment 3 finished although 2.b  isnt very performant ...