The translation from the Berland language into the Birland language is not an easy task. Those languages are very similar: a berlandish word differs from a birlandish word with the same meaning a little: it is spelled (and pronounced) reversely. For example, a Berlandish word code corresponds to a Birlandish word edoc. However, it's easy to make a mistake during the «translation». Vasya translated word *s* from Berlandish into Birlandish as *t*. Help him: find out if he translated the word correctly.
The first line contains word *s*, the second line contains word *t*. The words consist of lowercase Latin letters. The input data do not consist unnecessary spaces. The words are not empty and their lengths do not exceed 100 symbols.
def read_str():
    return input()
def read_int():
    return int(input())
def read_str_array():
    return [str(i) for i in input().split()]
def read_int_array():
    return [int(i) for i in input().split()]
def is_lucky(n):
    for i in n:
        temp = int(i)
        if temp != 4 and temp != 7:
            return False
    return True
def solve(st):
    count = 0
    for i in st:
        temp = int(i)
        if temp == 4 or temp == 7:
            count+=1
    if is_lucky(str(count)):
        return "YES"
    else:
        return "NO"
st = read_str()
ans = solve(st)
print(ans)
