MOD = 10**9+7 N = int(input()) A = list(map(int,input().split())) B = list(map(int,input().split())) C = [] for i in range(N): if A[i]>0: C.append((A[i],B[i],B[i]/A[i])) elif A[i]<0: C.append((-A[i],-B[i],B[i]/A[i])) C = sorted(C,key=lambda x:x[2]) M = len(C) K = 0 for i in range(M): K += C[i][0] if K%2==0: cnt = 0 for i in range(M): cnt += C[i][0] if cnt>=K//2: a,b = C[i][0],C[i][1] print((b*pow(a,MOD-2,MOD))%MOD) break else: cnt = 0 for i in range(M): cnt += C[i][0] if cnt>=K//2+1: a,b = C[i][0],C[i][1] print((b*pow(a,MOD-2,MOD))%MOD) break