/* imports all std modules {{{*/
import
  std.algorithm,
  std.array,
  std.ascii,
  std.base64,
  std.bigint,
  std.bitmanip,
  std.compiler,
  std.complex,
  std.concurrency,
  std.container,
  std.conv,
  std.csv,
  std.datetime,
  std.demangle,
  std.encoding,
  std.exception,
  std.file,
  std.format,
  std.functional,
  std.getopt,
  std.json,
  std.math,
  std.mathspecial,
  std.meta,
  std.mmfile,
  std.net.curl,
  std.net.isemail,
  std.numeric,
  std.parallelism,
  std.path,
  std.process,
  std.random,
  std.range,
  std.regex,
  std.signals,
  std.socket,
  std.stdint,
  std.stdio,
  std.string,
  std.system,
  std.traits,
  std.typecons,
  std.uni,
  std.uri,
  std.utf,
  std.uuid,
  std.variant,
  std.zip,
  std.zlib;
/*}}}*/

/+---test
3
1 2 3
---+/
/+---test
10
3 1 4 1 5 9 2 6 5 3
---+/
/+---test
10
3 14 159 2653 58979 323846 2643383 27950288 419716939 9375105820
---+/

enum MOD = 1000000007;

void main(string[] args) {
  const N = readln.chomp.to!long;
  const A = readln.split.map!(to!long).array;

  long ans;
  foreach (i; 0..60) {
    long x;
    foreach (a; A) if ((a >> i) & 1) ++x;

    long cnt = x * (N-x);
    foreach (j; 0..i) cnt = cnt*2%MOD;
    ans = (ans+cnt)%MOD;
  }
  ans.writeln;
}
