/** * author: shu8Cream * created: 22.01.2021 22:56:51 **/ #include using namespace std; #define rep(i,n) for (int i=0; i<(n); i++) #define all(x) (x).begin(), (x).end() using ll = long long; using P = pair; using vi = vector; using vvi = vector; ll mod_pow(ll a, ll b, ll n){ if(b==0) return 1; if(b%2!=0) return a * mod_pow(a, b-1, n) % n; else return mod_pow(a * a % n, b / 2, n) % n; } int main() { cin.tie(nullptr); ios::sync_with_stdio(false); ll n,k,m; cin >> n >> k >> m; vi p(n),e(n),a(n),h(n); rep(i,n) cin >> p[i]; rep(i,n) cin >> e[i]; rep(i,n) cin >> a[i]; rep(i,n) cin >> h[i]; sort(all(p)); sort(all(e)); sort(all(a)); sort(all(h)); ll ans = 0; rep(i,n){ ll x = max({p[i], e[i], a[i], h[i]}); ll y = min({p[i], e[i], a[i], h[i]}); ans+=mod_pow(x-y,k,m); } ans%=m; cout << ans << endl; }