#include <iostream>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <algorithm>
#include <stdlib.h>
using namespace std;

int arr[4][2000];
int variants, L;
int inx[4];

int compare(const void* v1,const void* v2){
//cout<<(int)(*(int*)v1-*(int*)v2)<<endl;
    return (int)(*(int*)v1-*(int*)v2);
}
/*for (int i=0;i<index[0];i++){
        cout<<arr[0][i]<<" ";
    }*/

void check(int ind,int money){
    for (int i=inx[ind]-1;i>=0;i--){


        if (money-arr[ind][i]>=0){
            if (ind == 3){
                variants+=i+1; return;
            }
            else{
                check(ind+1,money-arr[ind][i]);
            }

        }

    }
}

int main()
{
    while (1){
        cin>>L>>inx[0]>>inx[1]>>inx[2]>>inx[3];
        if (L==0){return 0;}
        for (int i=0;i<4;i++){
            for (int j=0;j<inx[i];j++){
                cin>>arr[i][j];
            }
            qsort(&arr[i],inx[i],sizeof (int),compare);
        }
        variants=0;
        check(0,L);
        cout<<variants<<endl;
    }
return 0;
}