#include <bits/stdc++.h>
int main(void) {
  int i, j;
  int n;
  int x[60], y[60], z[60];
  for (i = 0; i < 60; i++) {
    x[i] = 0;
    y[i] = 0;
  }
  scanf("%d", &n);
  for (i = 0; i < n; i++) {
    long long a;
    int b[60];
    scanf("%lld", &a);
    for (j = 0; j < 60; j++) {
      if (a % 2 == 0) {
        x[j]++;
      } else {
        y[j]++;
      }
      a = a / 2;
    }
  }
  for (j = 0; j < 60; j++) {
    z[j] = x[j] * y[j];
  }
  int ans = 0;
  for (j = 59; j >= 0; j--) {
    ans = (2 * ans + z[j]) % 1000000007;
  }
  printf("%d\n", ans);
  return 0;
}
