
// D - Xor Sum 4

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

const int MOD = 1000000007;

// A の全てのペアについてXORを求め、その総和を計算することになる
// 各ビットごとにXORの和を求め、2^k * （各ビットのXORの和）の総和を求める
// 各ビットのXORの和は 1と0の組み合わせの数)となる

int main() {
	int N;
	cin >> N;

	vector<ll> A(N);
	for (int i = 0; i < N; i++) {
		cin >> A[i];
	}

	ll sum = 0;
	for (int k = 0; k <= 60; k++) {
		int ones = 0;
		for (int i = 0; i < N; i++) {
			ones += (A[i] >> k) & 1;
		}
		int xor_sum = ones * (N - ones);

		//cout << xor_sum << " "; // **** debug ****

		// 各ビットごとの和を計算
		ll bit_sum = xor_sum;
		for (int j = 0; j < k; j++) {
			bit_sum = (bit_sum * 2) % MOD;
		}
		sum = (sum + bit_sum) % MOD;
	}

	cout << sum << endl;
	return 0;
}
