#include <bits/stdc++.h>
#include <unordered_map>
#include <unordered_set>
using namespace std;
string ss(string s) {
    unordered_set<char> charSet(s.begin(), s.end());
    if (charSet.size() < 2) {
        return "-1"; // 无解
    }
    unordered_map<char, char> charMap;
    vector<char> chars(charSet.begin(), charSet.end());
    for (int i = 0; i < chars.size(); ++i) {// 选择字符集的下一个字符作为替换,%的作用是如果到了最后一个字符,则循环回第一个字符
        charMap[chars[i]] = chars[(i + 1) % chars.size()];
    }
    // 构造t
    string t;
    for (char c : s)
        t += charMap[c];
    return t;
}

int main() {
    string s;
    cin >> s;
    string t = ss(s);
    if (t == "-1") {
        cout << -1 << std::endl;
	else
        cout << t << std::endl;
    return 0;
}