#include <bits/stdc++.h>
using namespace std;
#pragma GCC optimize("Ofast")
const long long MOD = 1000000007;
const long long INF = MOD * MOD;
long long n, m, k, ans;
string s, t;
int main() {
  int n;
  cin >> n;
  long long a[n];
  for (int i = 0; i < n; i++) cin >> a[i];
  int bit[2][61] = {};
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < 61; j++) {
      if ((a[i] >> j) & 1)
        bit[1][j]++;
      else
        bit[0][j]++;
    }
  }
  long long ans = 0;
  for (int i = 0; i < 61; i++) {
    ans += powl(2, i) * bit[0][i] * bit[1][i];
  }
  cout << ans % MOD << "\n";
}
