Solution by Torgny Lyon.