Fatores Primos Distintos

Seja nn um número natural. A função ω(n)\omega(n) corresponde ao número de fatores primos distintos que dividem nn. Por exemplo, ω(6)=2\omega(6) = 2, pois 6=2×36 = 2\times 3, e ω(120)=3\omega(120) = 3, pois 120=22×3×5120 = 2^2\times 3\times 5.

Dados NN inteiros positivos a1,a2,,aNa_1, a_2, \ldots, a_N, processe QQ comandos, de um dos dois tipos abaixo:

Entrada

A primeira linha da entrada contém o valor de NN (1N2×1051\leq N\leq 2\times 10^5).

A segunda linha contém NN inteiros aia_i (1ai106,1iN1\leq a_i\leq 10^6, 1\leq i\leq N), separados por um espaço em branco.

A terceira linha contém o inteiro QQ (1Q2×1051\leq Q\leq 2\times 10^5), que indica o número de comandos a serem processados.

As QQ linhas seguintes contém, cada uma, um comando válido: ou a sequência 1iv1\ i\ v (1iN,1v101\leq i\leq N, 1\leq v\leq 10), ou a sequência 2ij2\ i\ j (1ijN1\leq i\leq j\leq N).

Saída

Para cada comando que inicia com o número 22 imprima, em uma linha, a mensagem “#cc: jj aja_j ω(aj)\omega(a_j)”, onde cc é o número do comando processado (cuja contagem tem início com o número um), jj é o índice do elemento que maximiza a função ω\omega, aja_j é o valor do elemento e ω(aj)\omega(a_j) é o número de primos distintos que dividem este número.

Exemplo de entrada 1

3
6 8 10
5
2 1 2
2 1 3
1 3 1
2 1 3
2 2 2

Exemplo de saída 1

#1: 1 6 2
#2: 3 10 2
#3: 1 6 2
#4: 2 8 1

Explicação do exemplo 1: No vetor inicial, 6 (2×32\times 3) e 10 (2×52\times 5) tem dois fatores primos distintos cada, enquanto que 8 (232^3) tem somente um. Assim, no primeiro comando, entre 6 e 8 o número com mais fatores primos distintos é o 6, mas considerados todos os 3 números, 10 é o maior com 2 fatores.

O terceiro comando soma uma unidade a 10, tornando-o igual a 11, o que reduz seus fatores primos distintos a um (o próprio 11). Assim, entre todos o número com maior número de divisores se torna 6, e considerado o 8 apenas, ele é a melhor opção.