project 3 b/c implmented, tested