# ビット演算なのでビット桁ごとに計算、ORなので1があるかどうか # 入力例1の2の0乗桁は、1,1,0、つまり1のない区間は1,ある区間はN*(N+1)//2-1=5 N = int(input()) A = list(map(int, input().split())) ans = 0 for d in range(0, 30): zero_segment = 0 zero_count = 0 for a in A: if (a>>d)&1 == 0: zero_count += 1 else: zero_segment += zero_count*(zero_count+1)//2 zero_count = 0 zero_segment += zero_count*(zero_count+1)//2 calc = (1<