Зворотній збір бобів
Як ми вже казали у попередній задачі, Петя дуже любить гру з горошинами. Гра полягає у тому, що є N чаш, розставлених по колу, і деяка кількість горошин у кожній з них. Кожен хід він бере усі горошини з деякої чаші і послідовно кладе їх по одній у кожну наступну чашу. На першому ході використовуються горошини з першої чаші, а у подальшому з тієї, у яку була поміщена остання горошина на попередньому кроці. Виконавши декілька таких ходів, Петя отримав стан, у якому знову повинен брати горошини з першої чаші. Але тепер він задумався над тим, яка ж позиція була ходом раніше.
Вхідні дані
У першому рядку вхідного файлу задається кількість чаш N (1 ≤ N ≤ 10^5). У другому рядку записано N чисел a_i, які визначають кількості горошин у відповідних чашах (0 ≤ a_i ≤ 10^9, a_1 = 0) у поточному стані.
Вихідні дані
У єдиний рядок вихідного файлу необхідно вивести N чисел - кількості горошин у відповідних чашах на попередньому ході. Якщо існує декілька варіантів попереднього стану, можна виводити довільний з них. Якщо таких станів не існує, виведіть одне число −1.