#include <stdio.h>
#include <stdlib.h>

int int_cmp(const void *va, const void *vb)
{
	int *ia = (int*)va, *ib = (int*)vb;
	return *ia - *ib;
}

int main()
{
	int L,S,M,D,B;
	int SF[2000], MF[2000], DF[2000], BF[2000];
	
	int i,j,k,l,ii,jj,kk,ll;

	long int count;
	while(1)
	{
		count = 0;	
			
		scanf("%d %d %d %d %d", &L, &S, &M, &D, &B);
		
		if(L == 0 && S == 0 && M == 0 && D == 0 && B == 0) break;
		
		for (i = 0; i < S; i++)
		{
			scanf("%d", &SF[i]);
		}

		for (i = 0; i < M; i++)
		{
			scanf("%d", &MF[i]);
		}

		for (i = 0; i < D; i++)
		{
			scanf("%d", &DF[i]);
		}
		
		for (i = 0; i < B; i++)
		{
			scanf("%d", &BF[i]);
		}

		qsort(SF, S, sizeof(int), int_cmp);
		qsort(MF, M, sizeof(int), int_cmp);
		qsort(DF, D, sizeof(int), int_cmp);
		qsort(BF, B, sizeof(int), int_cmp);
		
		for (i = 0; i < S; ++i)
		{
			ii = SF[i];
			if (ii > L) break;

			for (j = 0; j < M; ++j)
			{
				jj = ii + MF[j];
				if (jj > L) break;

				for (k = 0; k < D; ++k)
				{
					kk = jj + DF[k];
					if (kk > L) break;

					for (l = 0; l < B; ++l)
					{
						ll = kk + BF[l];
						if (ll > L) break;

						count++;
					}
				}
			}		
		}

		printf("%ld\n",count);
	}
	
	return 0;
}