#include <bits/stdc++.h>
using namespace ::std;
int main() {
  int A;
  cin >> A;
  int *N = new int[A];
  for (int i = 0; i < A; i++) {
    cin >> N[i];
  }
  int Max = N[1];
  int SMax = 0;
  int dM = 0;
  for (int i = 1; i < A; i++) {
    if (Max <= N[i]) {
      Max = N[i];
    }
  }
  for (int i = 0; i < A; i++) {
    if (!(Max == N[i])) {
      if (SMax < N[i]) {
        SMax = N[i];
      }
    }
  }
  for (int i = 0; i < A; i++) {
    if (Max == N[i]) {
      dM++;
    }
  }
  for (int i = 0; i < A; i++) {
    if (dM > 1) {
      cout << Max << endl;
    } else if (N[i] == Max) {
      cout << SMax << endl;
    } else {
      cout << Max << endl;
    }
  }
}
