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
****************************************************************/