#include <bits/stdc++.h>
int diru[] = {-1, -1, -1, 0, 0, 1, 1, 1};
int dirv[] = {-1, 0, 1, -1, 1, -1, 0, 1};
using namespace std;
struct debugger {
  template <typename T>
  debugger& operator,(const T& v) {
    cerr << v << " ";
    return *this;
  }
} dbg;
template <class T>
T sq(T n) {
  return n * n;
}
template <class T>
T gcd(T a, T b) {
  return (b != 0 ? gcd<T>(b, a % b) : a);
}
template <class T>
T lcm(T a, T b) {
  return (a / gcd<T>(a, b) * b);
}
template <class T>
bool inside(T a, T b, T c) {
  return a <= b && b <= c;
}
template <class T>
void setmax(T& a, T b) {
  if (a < b) a = b;
}
template <class T>
void setmin(T& a, T b) {
  if (b < a) a = b;
}
template <class T>
T power(T N, T P) {
  return (P == 0) ? 1 : N * power(N, P - 1);
}
char in[100];
int n;
int get(int v) {
  int i, ret = 0;
  for (i = 0; i < n - 1; i++) {
    if (v == 47) {
      if (in[i] == '4' && in[i + 1] == '7') ret++;
    } else {
      if (in[i + 1] == '4' && in[i] == '7') ret++;
    }
  }
  return ret;
}
int main() {
  int T, t = 1, m, i, j, k, c4, c7, c47, c74;
  scanf("%d", &c4);
  scanf("%d", &c7);
  scanf("%d", &c47);
  scanf("%d", &c74);
  if (c47 - c74 == 1) {
    c4 -= c47;
    c7 -= c47;
    if (c4 < 0 || c7 < 0) {
      puts("-1");
      return 0;
    }
    for (i = 0; i < c4; i++) printf("4");
    for (i = 0; i < c47; i++) printf("47");
    for (i = 0; i < c7; i++) printf("7");
    puts("");
    return 0;
  }
  if (c47 - c74 == -1) {
    c7 -= c74;
    c4 -= c74;
    if (c4 < 0 || c7 < 0) {
      puts("-1");
      return 0;
    }
    printf("7");
    for (i = 0; i < c4; i++) printf("4");
    printf("4");
    for (i = 0; i < c74 - 2; i++) printf("74");
    printf("7");
    for (i = 0; i < c7; i++) printf("7");
    printf("4");
    puts("");
    return 0;
  }
  if (c47 == c74) {
    if (c4 >= c47 + 1) {
      c4 -= c47 + 1;
      c7 -= c47;
      if (c4 < 0 || c7 < 0) {
        puts("-1");
        return 0;
      }
      for (i = 0; i < c4; i++) printf("4");
      for (i = 0; i < c47; i++) printf("47");
      for (i = 0; i < c7; i++) printf("7");
      printf("4");
      puts("");
    } else {
      c4 -= c74;
      c7 -= c74;
      if (c4 < 0 || c7 <= 0) {
        puts("-1");
        return 0;
      }
      for (i = 0; i < c74; i++) printf("74");
      for (i = 0; i < c7; i++) printf("7");
      puts("");
    }
    return 0;
  }
  puts("-1");
  return 0;
}
