New version with further commented-out solutions for last part, some of them worth to be further checked out, as per forums