import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
public class Solution {
static long maximumPeople(long[] p, long[] x, long[] y, long[] r) {
// Return the maximum number of people that will be in a sunny town after removing exactly one cloud.
long[] axis=new long[1000000];
long people=0, mnSubPeople=0;
for(int i=0;i
mnSubPeople)
mnSubPeople=axis[cl];
}
else if(axis[cl+1]!=0){
people-=axis[cl-1];
if(axis[cl+1]>mnSubPeople)
mnSubPeople=axis[cl+1];
}
axis[cl]=0;
axis[cl+1]=0;
}
if(y[i]==y.length-1){
if(axis[cl]!=0){
people-=axis[cl];
if(axis[cl]>mnSubPeople)
mnSubPeople=axis[cl];
}
else if(axis[cl-1]!=0){
people-=axis[cl-1];
if(axis[cl-1]>mnSubPeople)
mnSubPeople=axis[cl-1];
}
axis[cl]=0;
axis[cl-1]=0;
}
else{
if(axis[cl]!=0){
people-=axis[cl];
if(axis[cl]>mnSubPeople)
mnSubPeople=axis[cl];
}
else if(axis[cl-1]!=0){
people-=axis[cl-1];
if(axis[cl-1]>mnSubPeople)
mnSubPeople=axis[cl-1];
}
else{
people-=axis[cl+1];
if(axis[cl-1]>mnSubPeople)
mnSubPeople=axis[cl+1];
}
axis[cl]=0;
axis[cl-1]=0;
axis[cl+1]=0;
}
}
return people+mnSubPeople;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
long[] p = new long[n];
for(int p_i = 0; p_i < n; p_i++){
p[p_i] = in.nextLong();
}
long[] x = new long[n];
for(int x_i = 0; x_i < n; x_i++){
x[x_i] = in.nextLong();
}
int m = in.nextInt();
long[] y = new long[m];
for(int y_i = 0; y_i < m; y_i++){
y[y_i] = in.nextLong();
}
long[] r = new long[m];
for(int r_i = 0; r_i < m; r_i++){
r[r_i] = in.nextLong();
}
long result = maximumPeople(p, x, y, r);
System.out.println(result);
in.close();
}
}