D. Jzzhu и числа
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

У 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).

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