N = gets.to_i
A = []
S = []  #sorted array A
N.times do |i|
  A << gets.to_i
  S << A[i]
end
S.sort!{|a, b| b <=> a }

#p A  #for debug
#p S  #for debug

N.times do |i|
  if A[i] == S[0]  #取り除く奴が最大値の時
    puts S[1]  #全部の大きい順の２番目
  else  #取り除く奴が最大値じゃない時
    puts S[0]  #一番大きいやつ
  end
end
