#include <bits/stdc++.h>
using namespace std;
const long long mod = 1000000007;
int n;
pair<long long, long long> a[60];
long long sum = 0;
long long qpow(long long x, long long y) {
  long long p = 1;
  long long ans = 0;
  while (y) {
    if (y & 1) {
      ans += x * p;
      ans %= mod;
    }
    p <<= 1;
    y >>= 1;
  }
  return ans;
}
int main() {
  cin >> n;
  for (int i = 0; i < n; ++i) {
    long long x;
    cin >> x;
    for (int j = 0; j < 60; ++j) {
      if ((x >> j) & 1)
        a[j].first++;
      else
        a[j].second++;
    }
  }
  for (int i = 0; i < 60; i++) {
    sum += (qpow(qpow(a[i].first, a[i].second), (1ll << i) % mod));
  }
  cout << sum;
  return 0;
}
