#include <iostream>
#include <bits/stdc++.h>
typedef long long ll;
ll M = 998244353ll;
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
ll n; cin>>n;
vector<ll> a(n);
for(ll i = 0; i < n ; i++){
cin>>a[i];
a[i]*=(i+1ll)*(n - i);
}
vector<ll>b(n);
for(int i = 0; i < n;i++) cin>>b[i];
sort(a.rbegin(), a.rend());
sort(b.begin(), b.end());
ll ans = 0;
for(int i = 0;i<n;i++){
ll val = (a[i])%M;
ll v2 = b[i]%M;
val = (val*v2)%M;
ans = (ans + val)%M;
}
cout<<ans<<endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4gCnR5cGVkZWYgbG9uZyBsb25nIGxsOyAKCmxsIE0gPSA5OTgyNDQzNTNsbDsgIAoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgewoJaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7IAogICAgY2luLnRpZShOVUxMKTsgY291dC50aWUoTlVMTCk7IAogICAgIGxsIG47IGNpbj4+bjsgCiAgICB2ZWN0b3I8bGw+IGEobik7IAogICAgZm9yKGxsIGkgPSAwOyBpIDwgbiA7IGkrKyl7CiAgICAgICAgY2luPj5hW2ldOyAKICAgICAgICBhW2ldKj0oaSsxbGwpKihuIC0gaSk7IAogICAgfQogICAgdmVjdG9yPGxsPmIobik7IAogICAgZm9yKGludCBpID0gMDsgaSA8IG47aSsrKSBjaW4+PmJbaV07IAogICAgc29ydChhLnJiZWdpbigpLCBhLnJlbmQoKSk7IAogICAgc29ydChiLmJlZ2luKCksIGIuZW5kKCkpOyAKICAgIGxsIGFucyA9IDA7IAogICAgIGZvcihpbnQgaSA9IDA7aTxuO2krKyl7CiAgICAgICAgIGxsIHZhbCA9IChhW2ldKSVNOyAKICAgICAgICAgbGwgdjIgPSBiW2ldJU07IAogICAgICAgICB2YWwgPSAodmFsKnYyKSVNOyAKICAgICAgICAgYW5zID0gKGFucyArIHZhbCklTTsgCiAgICAgfQogICAgIGNvdXQ8PGFuczw8ZW5kbDsgCn0K