#include <stdio.h>


int main(void)
{
	int N;
	int A[200000];
	int i;
	int maxNum = 0;
	int secondMaxNum = 0;
	int maxPos;
	int secondMaxPos;
	scanf("%d", &N);
	for (i = 0; i < N; i++) {
		scanf_s("%d", &A[i]);
		if (maxNum < A[i]) {
			maxNum = A[i];
			maxPos = i;
		}
	}

	for (i = 0; i < N; i++) {
		if (secondMaxNum < A[i] && i != maxPos) {
			secondMaxNum = A[i];
			secondMaxPos = i;
		}
	}

	for (i = 0; i < N; i++) {
		if (i != maxPos) {
			printf("%d\n", maxNum);
		}
		else {
			printf("%d\n", secondMaxNum);

		}
	}
    return 0;
}
