#!/bin/python import sys def maximumPeople(p, x, y, r): covered=list(); for yi in xrange(len(y)): for xi in xrange(len(x)) : if (x[xi]>=y[yi]-r[yi] and x[xi]<=y[yi]+r[yi]): covered.append(xi) covered.sort() notCovered=filter(lambda x: x not in covered,xrange(len(p))) coveredP=[p[x] for x in covered] sumP=0 for i in notCovered:sumP+=p[i] return sumP+max(coveredP) if __name__ == "__main__": n = int(raw_input().strip()) p = map(long, raw_input().strip().split(' ')) x = map(long, raw_input().strip().split(' ')) m = int(raw_input().strip()) y = map(long, raw_input().strip().split(' ')) r = map(long, raw_input().strip().split(' ')) result = maximumPeople(p, x, y, r) print result