Задачі
Ну, постривай!
Ну, постривай!
\includegraphics{https://static.e-olymp.com/content/1d/1d7d5946399a147b3b3af3868aee0cfb2c893a0a.jpg}
Одного звичайного літього дня Заєць як завжди утікав від Вовка. І ось цього разу він добіг до довгого коридору з дверима і забіг в одні з них. Усі проходи через ці двері були дуже заплутані, але так сталось, що деякі з дверей можуть вести до однієї кімнати. Вовк не помітив, куди саме забіг Заєць, але бачив, що це були двері на проміжку від \textbf{l} до \textbf{r}. Для кожного проходу відомо, у яку кімнату він веде. Тепер Вовк називає число -- номер кімнати, і забігає у довільні двері, які ведуть до цієї кімнати (якщо такої немає, то Вовк залишається на місці).
Ваша задача, обчислити яка ймовірність того, що Вовк попаде у ту ж кімнату, що і Заєць, якщо врахуватиь, що Заєць вибирав випадкові двері на проміжку від \textbf{l} до \textbf{r}.
\InputFile
У першому рядку знаходиться одне число \textbf{N} (\textbf{1} ≤ \textbf{N} ≤ \textbf{10^5}), кількість дверей у коридорі. Далі йде \textbf{N} чисел \textbf{A}_\{i \}(\textbf{0} ≤ \textbf{A_i} ≤ \textbf{10^9}) -- номери кімнат, у які веде кожен прохід відповідно. Потім йде число \textbf{М }(\textbf{1} ≤ \textbf{M }≤ \textbf{10^5}) -- кількість запитів одного з двох типів. Потім знаходиться \textbf{М} рядків, де якщо перше число у рядку рівне одиниці, то далі йде три числа \textbf{l}, \textbf{r}, \textbf{p} -- вказаний проміжок та номер кімнати, яку назвав Вовк. Якщо перше число було рівне двом, то далі йде два числа \textbf{l}, \textbf{r} і це означає, что тепер двері, які знаходяться на позиції \textbf{l} ведуть у кімнату \textbf{r}.
\OutputFile
Для кожного запиту з номером один виведіть відповідь до задачі. Результат виводьте у вигляді нескоротного дробу (див. приклад).
Вхідні дані #1
6 1 2 3 1 2 3 5 1 1 6 2 2 1 2 1 1 6 2 1 1 1 1 1 2 2 2
Вихідні дані #1
1/3 1/2 0/1 1/1