#include <bits/stdc++.h>
using namespace std;
const long long sz = 3e5 + 10, mod = 998244353;
long long fact[sz], inv[sz], ara[sz];
long long fastPow(long long x, long long n, long long MOD) {
  long long ret = 1;
  while (n) {
    if (n & 1) ret = (ret * x) % MOD;
    x = (x * x) % MOD;
    n >>= 1;
  }
  return ret % MOD;
}
inline long long nCr(long long n, long long r) {
  long long den = (inv[r] * inv[n - r]) % mod;
  return (fact[n] * den) % mod;
}
int main() {
  fact[0] = 1;
  for (long long i = 1; i <= sz - 1; ++i) fact[i] = (fact[i - 1] * i) % mod;
  inv[sz - 1] = fastPow(fact[sz - 1], mod - 2, mod);
  for (long long i = (sz - 1 - 1); i >= 0; --i)
    inv[i] = (inv[i + 1] * (i + 1)) % mod;
  long long n;
  scanf("%lld", &n);
  long long way = nCr(2 * n - 1, n - 1), ans = 0;
  for (long long i = 1; i <= 2 * n; ++i) scanf("%lld", &ara[i]);
  sort(ara + 1, ara + 2 * n + 1);
  for (long long i = 1; i <= n; ++i) {
    ans -= (way * ara[i]) % mod;
    if (ans < 0) ans += mod;
  }
  for (long long i = n + 1; i <= 2 * n; i++) {
    ans += (way * ara[i]) % mod;
    if (ans >= mod) ans -= mod;
  }
  cout << (2 * ans) % mod << '\n';
  return 0;
}
