class a
{
    public static void Main()
    {
        int n = int.Parse(Console.ReadLine());
        int[] a = new int[n];
        for(int i = 0; i < n; i++)
        {
            a[i] = int.Parse(Console.ReadLine());
        }
        int max0 = 0;
        int point0 = 0;
        for(int i = 0; i < n; i++)
        {
            if (a[i] > max0)
            {
                max0 = a[i];
                point0= i;
            }
        }
        int max1 = 0;
        int point1 = 0;
        for (int i = 0; i < n; i++)
        {
            if (i!=point0&&a[i] > max1)
            {
                max1 = a[i];
                point1 = i;
            }
        }
        for (int i = 0; i < n; i++)
        {
            if (i != point0)
            {
                Console.WriteLine(max0);
            }
            else
            {
                Console.WriteLine(max1);
            }
        }



    }
}