Solution by Roman Kotelnikov