#include <bits/stdc++.h>
using namespace std;
long long inline read() {
  long long num = 0, neg = 1;
  char c = getchar();
  while (!isdigit(c)) {
    if (c == '-') neg = -1;
    c = getchar();
  }
  while (isdigit(c)) {
    num = (num << 3) + (num << 1) + c - '0';
    c = getchar();
  }
  return num * neg;
}
const long long maxn = 300010, mod = 998244353;
long long n, m, a[maxn], inv[maxn];
signed main() {
  n = read();
  for (long long i = 1; i <= 2 * n; i++) a[i] = read();
  sort(a + 1, a + 2 * n + 1);
  long long s = 0;
  for (long long i = 1; i <= n; i++) s = (s - a[i] + mod) % mod;
  for (long long i = 1; i <= n; i++) s = (s + a[i + n]) % mod;
  inv[1] = 1;
  for (long long i = 2; i <= n; i++)
    inv[i] = 1ll * (mod - mod / i) * inv[mod % i] % mod;
  for (long long i = 1; i <= 2 * n; i++) s = 1ll * s * i % mod;
  for (long long i = 1; i <= n; i++) s = 1ll * s * inv[i] % mod * inv[i] % mod;
  printf("%d", s);
  return 0;
}
