#include <iostream>

using namespace std;

int main()
{
    while(!cin.fail()){

        long int L = 0, S = 0, M = 0, D = 0, B = 0;
        long double pocet = 0;
        cin >> L >> S >> M >> D >> B;

        while (L >0 && S > 0 && M >> 0 && D > 0 && B > 0)
        {
            int *sp = new int[S];
            int *mp = new int[M];
            int *dp = new int[D];
            int *bp = new int[B];

            for (int i = 0; i < S; i++) cin >> sp[i];
            for (int i = 0; i < M; i++) cin >> mp[i];
            for (int i = 0; i < D; i++) cin >> dp[i];
            for (int i = 0; i < B; i++) cin >> bp[i];

            for (int i = 0; i < S; i++)
            {
                for (int y = 0; y < M; y++)
                {
                    for (int x = 0; x < D; x++)
                    {
                        for (int g = 0; g < B; g++)
                        {
                            if (sp[i] + mp[y] + dp[x] + bp[g] <= L)
                            {
                                pocet++;
                            }
                        }
                    }
                }
            }
            cout << pocet << endl << endl;

            delete sp;
            delete mp;
            delete dp;
            delete bp;

            break;
        }
        if((L == 0 && S == 0 && M == 0 && D == 0 && B == 0))
        {
            break;
        }
    }


    return 0;
}