Vitaly is a diligent student who never missed a lesson in his five years of studying in the university. He always does his homework on time and passes his exams in time. 

During the last lesson the teacher has provided two strings *s* and *t* to Vitaly. The strings have the same length, they consist of lowercase English letters, string *s* is lexicographically smaller than string *t*. Vitaly wondered if there is such string that is lexicographically larger than string *s* and at the same is lexicographically smaller than string *t*. This string should also consist of lowercase English letters and have the length equal to the lengths of strings *s* and *t*. 

Let's help Vitaly solve this easy problem!
The first line contains string *s* (1 ≤ |*s*| ≤ 100), consisting of lowercase English letters. Here, |*s*| denotes the length of the string.

The second line contains string *t* (|*t*| = |*s*|), consisting of lowercase English letters.

It is guaranteed that the lengths of strings *s* and *t* are the same and string *s* is lexicographically less than string *t*.
# Tìm kí tự đầu tiên khác nhau giữa 2 chuỗi
# từ đó sẽ theo từng trường hợp mà có cách tạo nên chuỗi cần tìm.

s = input()
t = input()

n = len(s)
result = 'No such string'

for i in range(n):

    # Kiểm tra khoảng cách giữa 2 kí tự trong mỗi chuỗi "s" và "t"
    diff = ord(t[i]) - ord(s[i])
    if diff > 1:
        # Nếu hai kí tự không liền kề nhau, thì chỉ việc cộng kí tự đó lên kí tự liền kề.
        # Chỉ thay thế 1 kí tự trong chuối s.
        result = s[:i] + chr(ord(s[i]) + 1) + s[i+1:]
        break

    # Nếu liền kề nhau và không phải là phần tử cuối cùng.
    # Vì nếu là phần tử cuối cùng thì sẽ rơi vào "No such string"
    if diff == 1 and i < n - 1:
        # Vì s, t và chuỗi cần tìm là lexicographically nên
        # chỉ cần quan tâm kí tự đầu tiên khác nhau tính từ trái qua
        # và thay đổi các kí tự bên phải còn lại để tìm được chuỗi cần tìm.
        for j in range(i + 1, n):

            # Nếu có kí tự bên phải của chuỗi "s" < "z" thì chỉ cần
            # thay thế các kí tự còn lại1 thành "z"
            # để đảm bảo chuỗi cần tìm luôn > s và < t
            if s[j] < "z":
                result = s[:i + 1] + "z" * (n - i - 1)
                break

            # Tương tự như trên cho chuỗi "t" để tìm được chuỗi cần tìm.
            if t[j] > "a":
                result = t[:i + 1] + "a" * (n - i - 1)
                break

print(result)
exit(0)
