#include <bits/stdc++.h>
template <class T>
bool chmax(T &a, const T &b) {
  if (a < b) {
    a = b;
    return 1;
  }
  return 0;
}
template <class T>
bool chmin(T &a, const T &b) {
  if (b < a) {
    a = b;
    return 1;
  }
  return 0;
}
using namespace std;
int main() {
  long long N, ans = 0;
  cin >> N;
  long long A[61];
  for (int i = (0); i < (61); ++i) A[i] = 0;
  for (int i = 0; i < N; ++i) {
    long long a;
    cin >> a;
    for (int j = 0; j < 61; ++j) {
      if (a & (1 << j)) A[j]++;
    }
  }
  for (int i = 0; i < 61; ++i) {
    ans += A[i] * (N - A[i]) * (1 << i) % 1000000007;
  }
  cout << ans << endl;
  return 0;
}
