\begin{problem}{Сумма различных}{distinct.in}{distinct.out}{2 секунды}{64 мегабайта}

%Author of problem and text: Ilya Razenshteyn

Есть набор натуральных чисел~--- $a_1$, $a_2$, \ldots, $a_n$.
Необходимо делать две операции~--- обновлять какое-то число и запрашивать сумму различных чисел на
отрезке $a_{i .. j}$. К примеру, если $a_4 = 5$, $a_5 = 13$, $a_6 = 5$, то результат запроса на отрезке
$a_{4 \ldots 6}$~--- 18, потому что множество чисел, которое встречается на данном отрезке~--- $\{5, 13\}$.

\InputFile

В первой строке дано натуральное $n$ ($1 \le n \le 50\,000$).
Во второй строке даны $n$ натуральных чисел~--- исходные значения $a_i$ ($1 \le a_i \le 10^9$).
В третьей строке дано натуральное $m$~--- количество операций, которые необходимо выполнить ($1 \le m \le 10^5)$.
Далее в $m$ строках заданы описания операций. Если очередная операция~--- обновление, то соответствующее описание
имеет вид ``\t{U~$u$~$v$}'' ($1 \le u \le n$, $1 \le v \le 10^9$),
означающее, что после выполнения операции $a_u$ должно равняться $v$. Если очередная
операция~--- запрос, то соответствующее описание имеет вид ``\t{Q~$l$~$r$}'' ($1 \le l \le r \le n$).
В качестве ответа на запрос необходимо вывести сумму различных чисел на отрезке $a_{l .. r}$.

\OutputFile

Для каждого запроса выведите ответ на него на отдельной строке.

\Example

\begin{example}
\exmp{
5
1 2 4 2 3
3
Q 2 4
U 4 7
Q 2 4
}{
6
13
}%
\end{example}

\end{problem}
