#include <bits/stdc++.h>
using namespace std;
int main() {
  string a;
  getline(cin, a);
  vector<int> b(a.size());
  for (int i = 0; i < a.size(); ++i) b[i] = a[i] - '0';
  bool big = false, back;
  int pos = 0, c4 = b.size() / 2;
  int c7 = c4;
  if (b.size() % 2 == 1) goto out;
  while (true) {
    back = false;
    if (pos == b.size()) break;
    if (big == true) {
      if (c4 > 0)
        b[pos] = 4, c4--;
      else
        b[pos] = 7, c7--;
    } else {
      if (b[pos] <= 4 && c4 > 0) {
        if (b[pos] < 4) big = true;
        b[pos] = 4;
        c4--;
      } else {
        if (b[pos] > 7 || c7 == 0)
          back = true;
        else {
          if (b[pos] < 7) big = true;
          b[pos] = 7, c7--;
        }
      }
    }
    if (back) {
      big = false;
      while (!big) {
        pos--;
        if (pos < 0) goto out;
        if (b[pos] == 4) c4++;
        if (b[pos] == 7) c7++;
        if (b[pos] < 4 && c4 > 0) {
          b[pos] = 4;
          c4--;
          big = true;
        } else if (b[pos] < 7 && c7 > 0) {
          b[pos] = 7;
          c7--;
          big = true;
        }
      }
    }
    pos++;
  }
  for (int i = 0; i < b.size(); ++i) cout << b[i];
  return 0;
out:
  for (int i = 0; i < b.size() / 2 + 1; ++i) cout << 4;
  for (int i = 0; i < b.size() / 2 + 1; ++i) cout << 7;
}
