some input from pb from corrections
skeleton for assignement 3