initial commit, problems 1-4