Solution by Ailbhe Tweedie