#include <iostream>
#include <vector>

using namespace std;

int main(void) {
    int64_t N;
    cin >> N;
    vector<int64_t> A(N);
    for(int i=0; i<N; i++) {
        cin >> A.at(i);
    }

    vector<int64_t> num(60);
    for(int j=0; j<60; j++) {
        for(int i=0; i<N; i++) {
            if(A.at(i) & (1LL << j)) {
                num.at(j)++;
            }
        }
    }

    int64_t ans = 0;
    for(int j=0; j<60; j++) {
        ans =  (ans + ((num.at(j) * ((N-num.at(j))) * ((1LL << j) % 1'000'000'007)) % 1'000'000'007) % 1'000'000'007) % 1'000'000'007;
    }

    cout << ans << endl;
    return 0;
}
