B. Duas assinaturas
Dada uma sequência de inteiros positivos , conte os subconjuntos não vazios de índices para os quais
O símbolo representa o máximo divisor comum (MDC). O símbolo representa o XOR bit a bit: em cada posição binária, o resultado tem bit se uma quantidade ímpar dos números escolhidos tem bit nessa posição. Para um único número, tanto o MDC quanto o XOR são esse número.
Subconjuntos de índices diferentes contam separadamente, mesmo se os valores correspondentes forem iguais. Imprima a resposta módulo .
Input
A primeira linha contém ().
A segunda linha contém inteiros ().
Output
Imprima a quantidade pedida, módulo .
Samples
Sample 1
Input
3 2 3 4
Output
4
São válidos os três subconjuntos com um índice e o subconjunto de índices : .
Sample 2
Input
3 1 1 1
Output
4