n = int(input())
a = list(map(int,input().split()))
ba = [format(i,'b').zfill(60) for i in a]
mod = 10**9+7

#2^iをmodで割った余りを出しておく
twos = [1]
for i in range(1,60):
    twos.append((twos[i-1]*2)%mod)

#各baのbitごとに0の個数と1の個数を求める
c0 = [0]*60
c1 = [0]*60
for i in range(n):
    for j in range(60):
        if ba[i][j] == "0":
            c0[59-j] += 1
        else:
            c1[59-j] += 1

#答えは各bitごとの(0の数)*(1の数)より求まる
ans = 0
for i in range(60):
    ans += (((c0[i]*c1[i])%mod)*twos[i])%mod

ans %= mod
print(ans)
