#include <bits/stdc++.h>
using namespace std;
priority_queue<char, vector<char>, greater<char> > pqc;
priority_queue<long long, vector<long long>, greater<long long> > pq;
int n;
char ar2[1000][1000];
bool vis[1000][1000] = {0};
int arr[1000][1000] = {0};
map<int, int> mp;
set<string>::iterator it;
bitset<64> bt;
set<string> st;
int main() {
  string s;
  cin >> s;
  char z = 'a';
  for (int i = 0; i < s.size() && z <= 'z'; i++)
    if (s[i] <= z) s[i] = z++;
  if (z > 'z')
    cout << s << endl;
  else
    cout << -1 << endl;
}
