#include <bits/stdc++.h>
using namespace std;
long long mod = 998244353;
const long long MOD = 1e9 + 7;
inline long long add(long long x, long long y) {
  x += y;
  if (x >= mod) x -= mod;
  return x;
}
inline long long sub(long long x, long long y) {
  x -= y;
  if (x < 0) x += mod;
  return x;
}
inline long long mul(long long x, long long y) { return (x * y) % mod; }
inline long long powr(long long a, long long b) {
  long long x = 1 % mod;
  while (b) {
    if (b & 1) x = mul(x, a);
    a = mul(a, a);
    b >>= 1;
  }
  return x;
}
inline long long inv(long long a) { return powr(a, mod - 2); }
const long long N = 2e5 + 10;
void solve() {
  string a, b;
  cin >> a >> b;
  string astore = a;
  long long sz = a.size();
  bool check = false;
  for (long long i = sz - 1; i >= 0; i--) {
    if (a[i] != 'z') {
      a[i]++;
      check = true;
      break;
    } else {
      a[i] = 'a';
    }
  }
  if (a > astore && a < b) {
    cout << a;
  } else {
    cout << "No such string";
  }
  return;
}
void io() {}
signed main() {
  long long t = 1;
  io();
  ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
  cout.tie(nullptr);
  for (long long i = 1; i < t + 1; i++) {
    solve();
  }
  return 0;
}
