#include <bits/stdc++.h>   using namespace std;   long long power(long long b, long long e, long long m) {     if (e == 0) return 1;     if (e & 1) return b * power(b * b % m, e / 2, m) % m;     return power(b * b % m, e / 2, m);   }   long long power(long long b, long long e) {     if (e == 0) return 1;     if (e & 1) return b * power(b * b, e / 2);     return power(b * b, e / 2);   }   int _runtimeTerror_() {     long long n;     cin >> n;     long long i, a[n], b[n];     for (i = 0; i < n; ++i) cin >> a[i];     for (i = 0; i < n; ++i) cin >> b[i];     long long ans = 0;     long long arr[n];     for (i = 0; i < n; ++i) {       arr[i] = a[i] * (i + 1) * (n - i);     }     sort(arr, arr + n, greater<long long>());     sort(b, b + n);     for (i = 0; i < n; ++i) {       ans += (b[i] * (arr[i] % 998244353)) % 998244353;       ans %= 998244353;     }     cout << ans <<   n ;     return 0;   }   int main() {     ios_base::sync_with_stdio(0);     cin.tie(0);     cout.tie(0);     int TESTS = 1;     while (TESTS--) _runtimeTerror_();     return 0;   }   