Many thanks to Nick Coghlan for their contribution!