n = gets.to_i
nums = []
n.times { nums << gets.to_i }

sort_nums = nums.sort{|x,y| y<=>x}
max_unip = true if sort_nums[0] != sort_nums[1]

nums.each do |num|
  if num != sort_nums[0]
    puts sort_nums[0]
  elsif max_unip == true
    puts sort_nums[1]
  else
    puts sort_nums[0]
  end
end