Genes

Uma sequência de DNA é representada por uma cadeia de caracteres TT. Também são conhecidos diversos genes, representados por cadeias de caracteres e ordenados do mais relevante para o menos relevante. Os genes são numerados sequencialmente, começando de 1.

São feitas QQ consultas. Cada uma delas delimita um trecho de TT, entre os índices LiL_i e RiR_i, inclusive. Para cada consulta, o objetivo é determinar o índice do gene mais relevante que ocorre inteiramente como subcadeia desse trecho.

Entrada

A primeira linha da entrada contém a cadeia TT (1|T|1051 \leq |T| \leq 10^{5}). A segunda linha contém o número GG de genes (1G5×1051 \leq G \leq 5 \times 10^{5}). As próximas GG linhas contêm os genes, do mais para o menos relevante, um por linha. Cada gene é uma cadeia não vazia. É garantido que os genes são distintos e que a soma SS dos seus comprimentos é de no máximo 5×1055 \times 10^{5}.

A linha seguinte contém o número de consultas QQ (1Q1051 \leq Q \leq 10^{5}). Cada uma das próximas QQ linhas contém dois inteiros LiL_i e RiR_i (1LiRi|T|1 \leq L_i \leq R_i \leq |T|), representando os limites inclusivos da consulta.

Todas as cadeias contêm apenas as letras A, C, G e T.

Saída

Para cada consulta, imprima o índice do gene mais relevante que ocorre inteiramente no trecho correspondente do DNA. Se nenhum gene ocorrer naquele trecho, imprima 1-1.

Exemplos

Entrada

ACAGACA
3
ACA
G
CA
3
1 7
2 6
1 2

Saída

1
2
-1

Na primeira consulta, o trecho é a sequência inteira ACAGACA. O gene mais relevante que ocorre nele é ACA (índice 1).

Na segunda consulta, o trecho é CAGAC. O gene mais relevante que ocorre nele é G (índice 2).

Na terceira consulta, o trecho é AC. Nenhum gene ocorre nesse trecho, então a resposta é −1.

Entrada

ACGT
2
ACGT
GT
2
1 3
2 4

Saída

-1
2