#include <bits/stdc++.h>
using namespace std;
const int nmax = 2000000 + 18;
int n;
int a1, a2, a3, a4;
int ans[nmax];
void print() {
  for (int i = 1; i <= n; ++i) printf("%d", ans[i]);
  printf("\n");
}
bool check47(int k) {
  int l = (k + 1) / 2;
  int r = k / 2;
  if (l > a1 || r > a2) return 0;
  int tot = 0;
  for (int i = 1; i + l - 1 <= a1; ++i) ans[++tot] = 4;
  for (int i = 1; i < r; ++i) {
    ans[++tot] = 7;
    if (i < l) ans[++tot] = 4;
  }
  for (int i = r; i <= a2; ++i) ans[++tot] = 7;
  if (r < l) ans[++tot] = 4;
  return 1;
}
bool check74(int k) {
  int l = (k + 1) / 2;
  int r = k / 2;
  if (l > a2 || r > a1) return 0;
  int tot = 0;
  ans[++tot] = 7;
  for (int i = 1; i + r - 1 <= a1; ++i) ans[++tot] = 4;
  for (int i = 2; i < l; ++i) {
    ans[++tot] = 7;
    if (i <= r) ans[++tot] = 4;
  }
  for (int i = l; i <= a2; ++i) ans[++tot] = 7;
  if (l <= r) ans[++tot] = 4;
  return 1;
}
int main() {
  scanf("%d%d%d%d", &a1, &a2, &a3, &a4);
  n = a1 + a2;
  if (abs(a3 - a4) > 1)
    printf("-1\n");
  else if (a3 == a4) {
    if (check47(a3 * 2 + 1))
      print();
    else if (check74(a4 * 2 + 1))
      print();
    else
      printf("-1\n");
  } else if (a3 > a4) {
    if (check47(a3 * 2))
      print();
    else
      printf("-1\n");
  } else {
    if (check74(a4 * 2))
      print();
    else
      printf("-1\n");
  }
  return 0;
}
