LCA Problem Revisited
Задано підвішене дерево, яке містить n (1 ≤ n ≤ 100000) вершин, пронумерованих від 0 до n-1. Потрібно відповісти на m (1 ≤ m ≤ 10000000) запитів про найменшого спільного предка для пари вершин.
Запити генеруються наступним чином. Задано числа a_1, a_2 та числа x, y і z. Числа a_3, ..., a_2m генерються наступним чином: ai = (x·a_{i-2}+y·a_{i-1}+z) mod n. Перший запит має вид < a_1, a_2 >. Якщо відповідь на i-1-й запит дорівнює v, то i-й запит має вид < (a_{2i-1} + v) mod n, a_2i >.
Вхідні дані
Перший рядок містить два числа: n та m. Корінь дерева має номер 0. Другий рядок містить n-1 цілих чисел, i-е з цих чисел рівне номеру предка вершини i. Третій рядок містить два цілих числа у діапазоні від 0 до n-1: a_1 та a_2. Четвертий рядок містить три цілих числа: x, y та z, ці числа невід'ємні і не перевищують 10^9.
Вихідні дані
Виведіть суму номерів вершин - відповідей на усі запити.