Many thanks to Harry Percival for their contribution!