initial commit for the problem. got stupid #3 wrong!