Petya loves lucky numbers very much. Everybody knows that lucky numbers are positive integers whose decimal record contains only the lucky digits 4 and 7. For example, numbers 47, 744, 4 are lucky and 5, 17, 467 are not.

Petya loves long lucky numbers very much. He is interested in the minimum lucky number d that meets some condition. Let cnt(x) be the number of occurrences of number x in number d as a substring. For example, if d = 747747, then cnt(4) = 2, cnt(7) = 4, cnt(47) = 2, cnt(74) = 2. Petya wants the following condition to fulfil simultaneously: cnt(4) = a1, cnt(7) = a2, cnt(47) = a3, cnt(74) = a4. Petya is not interested in the occurrences of other numbers. Help him cope with this task.

Input

The single line contains four integers a1, a2, a3 and a4 (1 ≤ a1, a2, a3, a4 ≤ 106).

Output

On the single line print without leading zeroes the answer to the problem — the minimum lucky number d such, that cnt(4) = a1, cnt(7) = a2, cnt(47) = a3, cnt(74) = a4. If such number does not exist, print the single number "-1" (without the quotes).

Examples

Input

2 2 1 1


Output

4774


Input

4 7 3 1


Output

-1
import java.io.BufferedWriter;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.util.Scanner;


public class D {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        PrintWriter pw = new PrintWriter(new BufferedWriter(new OutputStreamWriter(System.out)));
        int a1 = sc.nextInt();
        int a2 = sc.nextInt();
        int a3 = sc.nextInt();
        int a4 = sc.nextInt();
        if (Math.abs(a3-a4) > 1) {
            System.out.println(-1);
            return;
        }
        if (a3==a4) {
            a1 -= a3+1;
            a2 -= a3;
            if (a1 < 0 || a2 < 0) {
                a1++;
                a2--;
                if (a1 < 0 || a2 < 0) {
                    System.out.println(-1);
                    return;
                }
                for (int i = 1; i <= a3; i++) {
                    pw.print("74");
                    if (i==1) {
                        for (int j = 1; j <= a1; j++) {
                            pw.print(4);
                        }
                    }
                }
                for (int i = 1; i <= a2+1; i++) {
                    pw.print(7);
                }
            }
            else {
                for (int i = 1; i <= a1; i++) {
                    pw.print(4);
                }
                for (int i = 1; i <= a3; i++) {
                    pw.print("47");
                }
                for (int i = 1; i <= a2; i++) {
                    pw.print(7);
                }
                pw.print(4);
            }
        }
        else {
            if (a3==a4+1) {
                a1 -= a3;
                a2 -= a3;
                if (a1 < 0 || a2 < 0) {
                    System.out.println(-1);
                    return;
                }
                for (int i = 1; i <= a1; i++) {
                    pw.print(4);
                }
                for (int i = 1; i <= a3; i++) {
                    pw.print("47");
                }
                for (int i = 1; i <= a2; i++) {
                    pw.print(7);
                }
            }
            else {
                a1 -= a4;
                a2 -= a4;
                if (a1 < 0 || a2 < 0) {
                    System.out.println(-1);
                    return;
                }
                for (int i = 1; i <= a4; i++) {
                    if (i==a4) {
                        for (int j = 1; j <= a2; j++) {
                            pw.print(7);
                        }
                    }
                    pw.print("74");
                    if (i==1) {
                        for (int j = 1; j <= a1; j++) {
                            pw.print(4);
                        }
                    }
                }
            }
        }
        pw.close();
    }
}
