#include<bits/stdc++.h>
#define For(i,a,b)for(int i=a;i<=b;++i)
using namespace std;
const int N=3e5+5;
int n[4],m,x,y;
pair<long long,int>a[4][N];
set<int>s[4][N];
int main()
{
	for(int i=0; i<=3; i++)
		scanf("%d",n+i);
	for(int i=0; i<=3; i++)
		for(int j=1; j<=n[i]; j++)
			scanf("%d",&a[i][j].first),a[i][j].second=j;
	for(int i=0; i<=3; i++)
		a[i][n[i]+1]= {1e9,0};
	for(int i=1; i<=3; i++)
	{
		cin>>m;
		while(m--)
			scanf("%d%d",&x,&y),s[i][y].insert(x);
	}
	sort(a[0]+1,a[0]+n[0]+1);
	for(int i=1; i<=3; i++)
	{
		for(int j=1; j<=n[i]; j++)
			for(int k=1;; ++k)
				if(!s[i][j].count(a[i-1][k].second))
				{
					a[i][j].first+=a[i-1][k].first;
					break;
				}
		sort(a[i]+1,a[i]+n[i]+1);
	}
	if(a[3][1].first>=1e9)puts("-1");
	else printf("%d\n",a[3][1].first);
	return 0;
}