#include <bits/stdc++.h>
using namespace std;
const long long MOD = 998244353;
template <class T>
T power(T base, T exp, T mod) {
  T ans = 1;
  base %= mod;
  while (exp > 0) {
    if (exp & 1) ans = (ans * base) % mod;
    exp >>= 1;
    base = (base * base) % mod;
  }
  return ans;
}
template <class T>
T modInverse(T a, T m) {
  return power(a, m - 2, m);
}
const int N = 3e5 + 10;
long long fact[N];
void init(long long n, long long mod) {
  fact[0] = 1;
  for (int i = 1; i <= n; ++i) {
    fact[i] = (fact[i - 1] * 1LL * i) % mod;
  }
}
long long nCr(long long n, long long r, long long mod) {
  return (fact[n] * modInverse(fact[r] * 1LL * fact[n - r], mod + 0LL)) % mod;
}
int main() {
  long long n;
  scanf("%lld", &n);
  vector<long long> vec(2 * n);
  for (int i = 0; i < 2 * n; i++) scanf("%lld", &vec[i]);
  init(2 * n + 1, MOD);
  long long num = nCr(2 * n, n, MOD);
  sort(vec.begin(), vec.end());
  long long a = 0;
  for (int i = 0; i < n; i++) a -= vec[i];
  for (int i = n; i < 2 * n; i++) a += vec[i];
  printf("%lld", ((num % MOD) * (a % MOD)) % MOD);
}
