Added the almost complete changes, plus the solution key