import std.algorithm;
import std.array;
import std.conv;
import std.math;
import std.range;
import std.stdio;
import std.string;

void main() {
  string s = readln.strip;
  foreach (i; 0 .. 26) {
    auto c = (i + 97).to!(char);
    if (s.find (c).empty) {
      writeln (s, c);
      return;
    }
  }
  
  int l = s.length.to!(int);

  auto a = s.map! (c => c.to!(int) - 97).array;
  
  string res = "~"; 
  foreach (i; 0 .. l) {
    foreach (j; 0 .. 26) {
      if (a[0 .. i].find (j).empty && j > a[i]) {
        auto t = s[0 .. i] ~ (j + 97).to!(char);
        if (res > t) {
          res = t;
        }
      }
    }
  }

  if (res == "~") {
    res = "-1";
  }
  writeln (res);
}
