#include <bits/stdc++.h>
using namespace std;
int k[3], t[3];
int n;
long long a[100000];
long long was[100000];
int main() {
  scanf("%d %d %d", &k[0], &k[1], &k[2]);
  scanf("%d %d %d", &t[0], &t[1], &t[2]);
  scanf("%d", &n);
  for (int i = 0; i < n; i++) {
    scanf("%I64d", &a[i]);
    was[i] = a[i];
  }
  for (int i = 0; i < 3; i++) {
    for (int j = 0; j < k[i]; j++) {
      int pos = j;
      long long finished = -1000000;
      if (pos >= n) break;
      while (pos < n) {
        a[pos] = finished = max(finished + t[i], a[pos] + t[i]);
        pos += k[i];
      }
    }
  }
  long long res = a[0] - was[0];
  for (int i = 1; i < n; i++)
    if (res < a[i] - was[i]) res = a[i] - was[i];
  printf("%I64d\n", res);
  return 0;
}
