#include <bits/stdc++.h>
using namespace std;
template <class T>
inline bool chmax(T& a, T b) {
  if (a < b) {
    a = b;
    return true;
  }
  return false;
}
template <class T>
inline bool chmin(T& a, T b) {
  if (a > b) {
    a = b;
    return true;
  }
  return false;
}
int main() {
  long long n;
  cin >> n;
  vector<long long> a(60, 0LL);
  for (int i = (0); i < (n); i++) {
    long long d;
    cin >> d;
    for (int j = (0); j < (60); j++) {
      a[j] += d % 2;
      d /= 2;
    }
  }
  long long c = 0LL, d = 1LL;
  for (int i = (0); i < (60); i++) {
    (c += a[i] * (n - a[i]) % 1000000007 * d % 1000000007) % 1000000007;
    (d *= 2) % 1000000007;
  }
  cout << c;
}
