Solution by Daniel Mihaila