#include using namespace std; #define REP(i,a,n) for(int i=(a); i<(int)(n); i++) #define rep(i,n) REP(i,0,n) #define FOR(it,c) for(__typeof((c).begin()) it=(c).begin(); it!=(c).end(); ++it) #define ALLOF(c) (c).begin(), (c).end() typedef long long ll; typedef unsigned long long ull; ll mod_pow(ll x, ll n, ll mod){ ll res = 1; while(n>0){ if(n&1) res = res*x%mod; x = x*x%mod; n >>= 1; } return res; } int main(){ ll N, K, M; cin >> N >> K >> M; vector v1(N),v2(N),v3(N),v4(N); rep(i,N) cin >> v1[i]; rep(i,N) cin >> v2[i]; rep(i,N) cin >> v3[i]; rep(i,N) cin >> v4[i]; sort(ALLOF(v1)); sort(ALLOF(v2)); sort(ALLOF(v3)); sort(ALLOF(v4)); ll ret = 0; rep(i,N){ vector w = {v1[i],v2[i],v3[i],v4[i]}; sort(ALLOF(w)); ll d = w[3] - w[0]; ll dK = mod_pow(d, K, M); ret += dK; ret %= M; } cout << ret << endl; return 0; }