#include <bits/stdc++.h>

#define int long long

using namespace std;

const int MOD = 1e9 + 7;

const int MAXN = 110;

int C[MAXN];

int B[MAXN];

int T[MAXN];

int dp[MAXN][MAXN*MAXN];

int32_t main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);

	int N;
	cin >> N;

	for(int i = 1 ; i <= N ; i++)
	{
		cin >> C[i];
	}    

	for(int i = 2 ; i <= N ; i++)
	{
		cin >> B[i];
		T[i] = T[i-1]+B[i];
	}

	for(int i = 1 ; i <= N ; i++)
	{
		T[i] += T[i-1];
	}

	int Q;
	cin >> Q;

	int X;
	cin >> X;

	///Ta-Tb >= X*i

	dp[0][0] = 1;

	for(int i = 1 ; i <= N ; i++)
	{
		for(int j = 0 ; j <= 10000 ; j++)
		{
			for(int k = 0 ; k <= C[i] ; k++)
			{
				if(j-T[i] >= X*i && j-k >= 0)
				{
					dp[i][j] += dp[i-1][j-k];
					dp[i][j] %= MOD;
				}
			}
		}
	}

	int res = 0;

	for(int i = 0 ; i <= 10000 ; i++)
	{
		res += dp[N][i];
		res %= MOD;
	}

	cout << res << '\n';

    return 0;
}