#include <bits/stdc++.h>
using namespace std;
int main() {
  long long int n, k = 1000000007;
  scanf("%lld", &n);
  long long int i, x[n], ans = 0, b, c = 1;
  scanf("%lld", &x[0]);
  for (i = 1; i < n; i++) {
    scanf("%lld", &x[i]);
    c = (c * 2) % k;
  }
  sort(x, x + n);
  for (i = 0; i < n; i++) {
    b = (c - 1) * ((x[n - 1 - i] - x[i]) % k);
    ans = (ans + b) % k;
    if (c % 2 == 1) c = c + k;
    c = c / 2;
  }
  if (ans < 0) ans = ans + k;
  printf("%lld\n", ans);
  return 0;
}
