Олимпиадный тренинг

Задача . D. Jzzhu и числа


У Jzzhu есть n неотрицательных целых чисел a1, a2, ..., an. Назовем последовательность индексов i1, i2, ..., ik (1 ≤ i1 < i2 < ... < ik ≤ n) группой размера k.

Jzzhu интересно, сколько существует таких групп, что ai1 & ai2 & ... & aik = 0 (1 ≤ k ≤ n)? Помогите ему найти их количество по модулю 1000000007 (109 + 7).

Операция x & y обозначает операцию побитового И двух чисел.

Входные данные

В первой строке записано единственное целое число n (1 ≤ n ≤ 106). Во второй строке записано n целых чисел a1, a2, ..., an (0 ≤ ai ≤ 106).

Выходные данные

Выведите единственное целое число — количество требуемых групп по модулю 1000000007 (109 + 7).


Примеры
Входные данныеВыходные данные
1 3
2 3 3
0
2 4
0 1 2 3
10
3 6
5 2 0 5 2 1
53

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя