#include <bits/stdc++.h>
using namespace std;
const long long Mxn = 1e6 + 7;
const long long Mod = 1e9 + 7;
const long long Inf = 1e16 + 7;
const long long Module = 998244353;
int N;
long long Ans, A[Mxn], B[Mxn], Val[Mxn];
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  cin >> N;
  for (int i = 1; i <= N; i++) {
    cin >> A[i];
  }
  for (int i = 1; i <= N; i++) {
    cin >> B[i];
  }
  sort(B + 1, B + N + 1);
  for (int i = 1; i <= N; i++) {
    Val[i] = (1LL * A[i] * i * (N - i + 1));
  }
  sort(Val + 1, Val + N + 1);
  reverse(Val + 1, Val + N + 1);
  for (int i = 1; i <= N; i++) {
    Ans = (Ans + (1LL * B[i] * (Val[i] % Module)) % Module) % Module;
  }
  cout << Ans;
  return false;
}
