Solutions by David Ferrone.