#include <bits/stdc++.h>
using namespace std;
const long long MOD = (long long)1e9 + 7;
const long double PI = acos((long double)-1);
inline int Get_bit(long long x, int k) { return (x >> (k - 1)) & 1; }
inline long long Gcd(long long a, long long b) {
  long long r;
  while (b) {
    r = a % b;
    a = b;
    b = r;
  }
  return a;
}
inline long long Lcm(long long a, long long b) { return a / Gcd(a, b) * b; }
inline long long Pow(long long n, long long k) {
  long long r = 1;
  for (; k; k >>= 1, n = n * n % MOD) {
    if (k & 1) r = r * n % MOD;
  }
  return r;
}
const int base = 311;
const int N = 1e5 + 5;
long long bit[N];
long long n, m, k, q;
void Solve() {
  cin >> n;
  long long res = 0;
  for (int i = 1; i <= n; i++) {
    long long x;
    cin >> x;
    for (int i = 1; i <= 62; i++) {
      bit[i] += Get_bit(x, i);
    }
  }
  for (long long i = 1; i <= 62; i++) {
    res = (res + bit[i] * (n - bit[i]) * ((1LL << (i - 1)) % MOD)) % MOD;
  }
  cout << res;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  cout << fixed << setprecision(10);
  Solve();
}
