#include <bits/stdc++.h>
using namespace std;

#define rep(i,a,b) for(int i=a;i<b;i++)
#define int long long
const int inf = 100100100100100009;
const int mod = 1000000007;


signed main(){
    std::ios::sync_with_stdio(false);
    std::cin.tie(0);

    int n, v;
    cin >> n >> v;

    int coins[4][n];
    rep(i,0,4) rep(j,0,n) cin >> coins[i][j];

    vector<int> ab;
    vector<int> cd;

    

    rep(i,0,n){
        rep(j,0,n){
            ab.push_back(coins[0][i] + coins[1][j]);
            cd.push_back(coins[2][i] + coins[3][j]);
        }
    }

    sort(ab.begin(), ab.end());
    sort(cd.begin(), cd.end());

    int ans = 0;
    for(auto e: ab){
        ans += upper_bound(cd.begin(), cd.end(), v - e) - lower_bound(cd.begin(), cd.end(), v - e);
    }

    cout << ans << endl;

}
