Petya loves lucky numbers. We all know that lucky numbers are the positive integers whose decimal representations contain only the lucky digits 4 and 7. For example, numbers 47, 744, 4 are lucky and 5, 17, 467 are not.

Petya wonders eagerly what minimum lucky number has the sum of digits equal to n. Help him cope with the task.

Input

The single line contains an integer n (1 ≤ n ≤ 106) — the sum of digits of the required lucky number.

Output

Print on the single line the result — the minimum lucky number, whose sum of digits equals n. If such number does not exist, print -1.

Examples

Input

11


Output

47


Input

10


Output

-1
def main(inp):
    n = int(inp())
    c7_max = n//7
    for c7 in range(c7_max+1)[::-1]:
        if (n - c7*7) % 4 == 0:
            print('4'*((n - c7*7)//4), end='')
            print('7'*c7)
            return
    print(-1)


def add_t(t1, t2):
    return tuple(sum(t) for t in zip(t1, t2))
def split_inp_int(inp):
    return list(map(int, inp().split()))


def use_fast_io():
    import sys

    class InputStorage:
        def __init__(self, lines):
            lines.reverse()
            self.lines = lines

        def input_func(self):
            if self.lines:
                return self.lines.pop()
            else:
                return ""

    input_storage_obj = InputStorage(sys.stdin.readlines())
    return input_storage_obj.input_func


from collections import Counter, defaultdict
from functools import reduce
import operator
import math



def product(arr_):
    return reduce(operator.mul, arr_, 1)

if __name__ == "__main__":

    main(use_fast_io())
