done implementing all problems

you can change Main.debug and Main.details to see more print statements