#include <bits/stdc++.h>
using namespace std;
int main() {
  string a, b;
  cin >> a >> b;
  int ind = 0;
  while (ind < a.size() && a[ind] == b[ind]) ind++;
  if (ind == a.size() + 1) {
    cout << "No such string\n";
    ind++;
    return 0;
  }
  for (int i = ind; i < a.size(); i++) {
    int c1 = int(a[i]) - 'a', c2 = int(b[i]) - 'a';
    if (i == ind && c1 + 1 < c2) {
      for (int i = 0; i < ind; i++) {
        cout << a[i];
      }
      cout << char(c1 + 1 + 'a');
      for (int i = ind + 1; i < a.size(); i++) cout << a[i];
      return 0;
    } else if (i != ind && a[i] != 'z') {
      for (int j = 0; j < i; j++) {
        cout << a[j];
      }
      cout << char(c1 + 1 + 'a');
      for (int j = i + 1; j < a.size(); j++) cout << a[j];
      return 0;
    }
  }
  for (int i = ind; i < a.size(); i++) {
    int c1 = int(a[i]) - 'a', c2 = int(b[i]) - 'a';
    if (i == ind && c2 - 1 > c1 && b[i] != 'a') {
      for (int i = 0; i < ind; i++) {
        cout << b[i];
      }
      cout << char(c2 - 1 + 'a');
      for (int i = ind + 1; i < b.size(); i++) cout << b[i];
      return 0;
    } else if (i != ind && b[i] != 'a') {
      for (int j = 0; j < i; j++) {
        cout << b[j];
      }
      cout << char(c2 - 1 + 'a');
      for (int j = i + 1; j < b.size(); j++) cout << b[j];
      return 0;
    }
  }
  cout << "No such string\n";
}
