#include <bits/stdc++.h>
using namespace std;
struct debugger {
  static void call(string::iterator it, string::iterator ed) {}
  template <typename T, typename... aT>
  static void call(string::iterator it, string::iterator ed, T a, aT... rest) {
    string b;
    for (; *it != ','; ++it)
      if (*it != ' ') b += *it;
    cout << b << "=" << a << " ";
    call(++it, ed, rest...);
  }
};
int main() {
  int lm = 1e5 + 10;
  char S[lm];
  string F = "abcdefghijklmnopqrstuvwxyz";
  int j = 0;
  scanf("%s", S);
  for (int i = 0; i < (int)(strlen(S)); ++i) {
    if (S[i] <= F[j]) {
      S[i] = F[j];
      j++;
      if (j == 26) return !printf("%s\n", S);
    }
  }
  puts("-1");
}
