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 hitung(kata):
    kata = kata.upper()
    arr = [0]*26
    for i in range(len(kata)):
        iAscii = ord(kata[i])
        if(iAscii >= 65 and iAscii <= 90):
            arr[iAscii-65] += 1
    return arr

def cek(kata1, kata2):
    a1 = hitung(kata1)
    a2 = hitung(kata2)
    for i in range(26):
        if(a1[i] != a2[i]):
            return False
    return True

kata1 = input()
kata2 = input()
if(cek(kata1, kata2)):
    arr2 = []
    for i in range(len(kata2)-1,-1,-1):
        arr2 += [kata2[i]]
    for i in range(len(kata1)):
        if(kata1[i] == arr2[i]):
            hasil = "YES"
            print(arr2[i])
        else:
            hasil = "NO"
            break
else:
    hasil = "NO"

print(hasil + "\n")
