#define rep(i,n) for(int i=0;i<(int)(n);i++) #define ALL(v) v.begin(),v.end() typedef long long ll; #include using namespace std; ll n,k,MOD; ll modpow(ll x,ll n){ ll ans=1; while(n){ if(n&1) ans=ans*x%MOD; x=x*x%MOD; n/=2; } return ans; } int main(){ cin>>n>>k>>MOD; vector 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 ma=max({P[i],E[i],A[i],H[i]}); ll mi=min({P[i],E[i],A[i],H[i]}); ans=(ans+modpow(ma-mi,k))%MOD; } cout<