ceb89e10b7
Part two needs a tidy-up which will come in a bit. But this is how I got the correct answer.
Part two needs a tidy-up which will come in a bit. But this is how I got the correct answer.