import java.util.*;

public class Main{
    public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);

      int n=sc.nextInt();

      int ans;

      int[] a = new int[n];

      for(int i=0;i<n;i++){
        a[i]=sc.nextInt();
      }

      int max1=0;
      int max2=0;
      int memo1=0;
      int memo2=0;
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max1){
          max1=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        }
      }
/////////////////////////////////////////
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max2){
          max2=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max2){
          memo2 = j;
        }
      }
/////////////////////////////////////////

      for(int i=0;i<n;i++){
        if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        }
      }


    }
} import java.util.*; util.* java public class Main{
    public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);

      int n=sc.nextInt();

      int ans;

      int[] a = new int[n];

      for(int i=0;i<n;i++){
        a[i]=sc.nextInt();
      }

      int max1=0;
      int max2=0;
      int memo1=0;
      int memo2=0;
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max1){
          max1=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        }
      }
/////////////////////////////////////////
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max2){
          max2=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max2){
          memo2 = j;
        }
      }
/////////////////////////////////////////

      for(int i=0;i<n;i++){
        if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        }
      }


    }
} Main public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);

      int n=sc.nextInt();

      int ans;

      int[] a = new int[n];

      for(int i=0;i<n;i++){
        a[i]=sc.nextInt();
      }

      int max1=0;
      int max2=0;
      int memo1=0;
      int memo2=0;
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max1){
          max1=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        }
      }
/////////////////////////////////////////
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max2){
          max2=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max2){
          memo2 = j;
        }
      }
/////////////////////////////////////////

      for(int i=0;i<n;i++){
        if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        }
      }


    } main {
      Scanner sc = new Scanner(System.in);

      int n=sc.nextInt();

      int ans;

      int[] a = new int[n];

      for(int i=0;i<n;i++){
        a[i]=sc.nextInt();
      }

      int max1=0;
      int max2=0;
      int memo1=0;
      int memo2=0;
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max1){
          max1=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        }
      }
/////////////////////////////////////////
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max2){
          max2=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max2){
          memo2 = j;
        }
      }
/////////////////////////////////////////

      for(int i=0;i<n;i++){
        if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        }
      }


    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n=sc.nextInt(); n sc.nextInt() sc.nextInt sc int ans; ans int[] a = new int[n]; a new int[n] n for(int i=0;i<n;i++){
        a[i]=sc.nextInt();
      } int i=0; int i=0; i 0 i<n i n i++ i++ i {
        a[i]=sc.nextInt();
      } {
        a[i]=sc.nextInt();
      } a[i]=sc.nextInt() a[i] a i sc.nextInt() sc.nextInt sc int max1=0; max1 0 int max2=0; max2 0 int memo1=0; memo1 0 int memo2=0; memo2 0 for(int j=0;j<n;j++){
        if(a[j]>max1){
          max1=a[j];
        }
      } int j=0; int j=0; j 0 j<n j n j++ j++ j {
        if(a[j]>max1){
          max1=a[j];
        }
      } {
        if(a[j]>max1){
          max1=a[j];
        }
      } if(a[j]>max1){
          max1=a[j];
        } a[j]>max1 a[j] a j max1 {
          max1=a[j];
        } max1=a[j] max1 a[j] a j for(int j=0;j<n;j++){
        if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        }
      } int j=0; int j=0; j 0 j<n j n j++ j++ j {
        if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        }
      } {
        if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        }
      } if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        } a[j]==max1 a[j] a j max1 {
          memo1 = j;
          a[j] = 0;
          break;
        } memo1 = j memo1 j a[j] = 0 a[j] a j 0 break; for(int j=0;j<n;j++){
        if(a[j]>max2){
          max2=a[j];
        }
      } int j=0; int j=0; j 0 j<n j n j++ j++ j {
        if(a[j]>max2){
          max2=a[j];
        }
      } {
        if(a[j]>max2){
          max2=a[j];
        }
      } if(a[j]>max2){
          max2=a[j];
        } a[j]>max2 a[j] a j max2 {
          max2=a[j];
        } max2=a[j] max2 a[j] a j for(int j=0;j<n;j++){
        if(a[j]==max2){
          memo2 = j;
        }
      } int j=0; int j=0; j 0 j<n j n j++ j++ j {
        if(a[j]==max2){
          memo2 = j;
        }
      } {
        if(a[j]==max2){
          memo2 = j;
        }
      } if(a[j]==max2){
          memo2 = j;
        } a[j]==max2 a[j] a j max2 {
          memo2 = j;
        } memo2 = j memo2 j for(int i=0;i<n;i++){
        if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        }
      } int i=0; int i=0; i 0 i<n i n i++ i++ i {
        if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        }
      } {
        if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        }
      } if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        } i!=memo1 i memo1 {
          System.out.println(max1);
        } System.out.println(max1) System.out.println System.out System System.out max1 {
          System.out.println(max2);
        } System.out.println(max2) System.out.println System.out System System.out max2 String[] args args public class Main{
    public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);

      int n=sc.nextInt();

      int ans;

      int[] a = new int[n];

      for(int i=0;i<n;i++){
        a[i]=sc.nextInt();
      }

      int max1=0;
      int max2=0;
      int memo1=0;
      int memo2=0;
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max1){
          max1=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        }
      }
/////////////////////////////////////////
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max2){
          max2=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max2){
          memo2 = j;
        }
      }
/////////////////////////////////////////

      for(int i=0;i<n;i++){
        if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        }
      }


    }
} public class Main{
    public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);

      int n=sc.nextInt();

      int ans;

      int[] a = new int[n];

      for(int i=0;i<n;i++){
        a[i]=sc.nextInt();
      }

      int max1=0;
      int max2=0;
      int memo1=0;
      int memo2=0;
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max1){
          max1=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        }
      }
/////////////////////////////////////////
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max2){
          max2=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max2){
          memo2 = j;
        }
      }
/////////////////////////////////////////

      for(int i=0;i<n;i++){
        if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        }
      }


    }
} Main
import java.util.*;

public class Main{
    public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);

      int n=sc.nextInt();

      int ans;

      int[] a = new int[n];

      for(int i=0;i<n;i++){
        a[i]=sc.nextInt();
      }

      int max1=0;
      int max2=0;
      int memo1=0;
      int memo2=0;
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max1){
          max1=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max1){
          memo1 = j;
          a[j] = 0;
          break;
        }
      }
/////////////////////////////////////////
/////////////////////////////////////////
      for(int j=0;j<n;j++){
        if(a[j]>max2){
          max2=a[j];
        }
      }
      for(int j=0;j<n;j++){
        if(a[j]==max2){
          memo2 = j;
        }
      }
/////////////////////////////////////////

      for(int i=0;i<n;i++){
        if(i!=memo1){
          System.out.println(max1);
        }
        else{
          System.out.println(max2);
        }
      }


    }
}
