#include using namespace std; long long power(long long b, int p, long long M) { if(p == 0) return 1LL; long long x = power(b, p / 2, M); x = x * x % M; if(p % 2) x = x * b % M; return x; } int main() { int N, K, M; cin >> N >> K >> M; vector P(N), E(N), A(N), H(N); for(int i = 0; i < N; i++) { cin >> P[i]; } for(int i = 0; i < N; i++) { cin >> E[i]; } for(int i = 0; i < N; i++) { cin >> A[i]; } for(int i = 0; i < N; i++) { cin >> H[i]; } sort(P.begin(), P.end()); sort(E.begin(), E.end()); sort(A.begin(), A.end()); sort(H.begin(), H.end()); vector D(N); for(int i = 0; i < N; i++) { int mx = 0, mn = 1000000000; mx = max({P[i], E[i], A[i], H[i]}); mn = min({P[i], E[i], A[i], H[i]}); D[i] = (mx - mn); } long long ans = 0LL; for(int i = 0; i < N; i++) { ans += power(D[i], K, M); ans %= M; } if(ans < 0) ans += M; cout << ans; }