var a:array[1..1000000] of longint;
n,i,max,min:longint;
begin
min:=1000000;
read(n);
for i:=1 to n do
read(a[i]);
for i:=1 to n do
begin
if a[i]>max then max:=a[i];
if a[i]<min then min:=a[i];
end;
for i:=1 to n do
if a[i]=max then write(a[i]*2,' ') else if a[i]=min then write(a[i]+1,' ')else write(a[i],' ');
end.
/**************************************************************
Problem: 1583
User: admin
Language: Pascal
Result: Wrong Answer
****************************************************************/