import numpy as np

n = int(input())
a = list(map(int, input().split()))

max_digits = 60  # 最大桁数は60
MOD = 10**9 + 7

# format関数で10進数から2進数に変換
bin_arr = np.array(list(map(lambda x: list(format(x, 'b').zfill(max_digits))[::-1], a)), dtype='int')

ans = 0
n_mod = n % MOD
for i in range(max_digits):
    # 各位ごとの合計は2**k × 1の数 × 0の数
    one_mod = np.count_nonzero(bin_arr[:, i]) % MOD
    radix_mod = 2**i % MOD
    ans += (radix_mod * one_mod * (n_mod - one_mod)) % MOD
print(ans % MOD)