// Alternate approach: generate all candidates into an array, sort, then scan.
#include <bits/stdc++.h>
using namespace std;

long long a[1000];
int k = 0;

void generate(long long x, int len) {
    if (len > 10)
        return;

    if (len > 0) {
        int four = 0, seven = 0;
        long long temp = x;

        while (temp > 0) {
            if (temp % 10 == 4)
                four++;
            else
                seven++;

            temp /= 10;
        }

        if (four == seven)
            a[k++] = x;
    }

    generate(x * 10 + 4, len + 1);
    generate(x * 10 + 7, len + 1);
}

int main() {
    long long n;
    cin >> n;

    generate(0, 0);

    sort(a, a + k);

    for (int i = 0; i < k; i++) {
        if (a[i] >= n) {
            cout << a[i];
            break;
        }
    }

    return 0;
}
