Solution

23968