#include <bits/stdc++.h>
using namespace std;
bool check(string s) {
  int f = 0, ss = 0;
  for (int i = 0; i < s.size(); i++) {
    if (s[i] == '4') f++;
    if (s[i] == '7') ss++;
  }
  if (ss == f && ss + f == s.size())
    return true;
  else
    return false;
}
string generat(string ori) {
  string s, cs;
  int n = ori.size();
  if (n % 2 != 0) {
    n++;
  }
  for (int i = 0; i < n; i++) {
    if (i < n / 2)
      s.insert(s.begin() + i, '4');
    else
      s.insert(s.begin() + i, '7');
  }
  if (ori.size() % 2 != 0) {
    return s;
  }
  cs = s;
  do {
    if (s > ori) {
      return s;
      break;
    }
  } while (next_permutation(s.begin(), s.end()));
  cs.insert(cs.begin(), '4');
  cs.insert(--cs.end(), '7');
  return cs;
}
int main() {
  string s;
  cin >> s;
  if (check(s))
    cout << s << endl;
  else
    cout << generat(s) << endl;
  return 0;
}
