#include <bits/stdc++.h>
using namespace std;
long long int pwr(long long int p, long long int n) {
  long long int ans = 1, i;
  for (i = 1; i <= n; i++) ans *= p;
  return ans;
}
int main() {
  string s;
  cin >> s;
  long long int ans = 1, p, l, i;
  l = s.size();
  for (i = 0; i < l; i++) {
    ans *= (s[i] - '0');
  }
  p = s[0] - '0';
  if (p == 1)
    ans = max(ans, pwr(9, l - 1));
  else {
    ans = max(ans, pwr(9, l - 1) * (p - 1));
  }
  long long int j = l - 2, k;
  for (i = 1; i < l; i++) {
    p = 1;
    for (k = 0; k < i; k++) {
      p *= (s[k] - '0');
    }
    p *= (s[i] - '1');
    p *= pwr(9, j);
    j--;
    ans = max(ans, p);
  }
  cout << ans << endl;
}
