program px( input, output) ;
type list= array [ 1 .. 6 ] of integer ;
var
d, e : list; ii, N : integer ;
procedure merge( var a, b, c, e : list;
fa, la, fb, lb, fc : integer ;
var lc : integer ) ; forward ;
procedure mergesort( var a, e : list;
fa, la : integer ) ;
var b : list; i, mid : integer ;
begin
if fa<la then
begin mid : = ( fa + la) div 2 ;
mergesort( a, e, fa, mid) ;
mergesort( a, e, mid+ 1 , la) ;
merge( a, a, b, e, fa, mid, mid+ 1 ,
la, fa, la) ;
for i : = fa to la do a[ i] : = b[ i]
end
end ;
procedure merge( var a, b, c, e : list;
fa, la, fb, lb, fc : integer ;
var lc : integer ) ;
var ia, ib, ic, kk, tt : integer ;
begin
ia : = fa; ib : = fb; ic : = fc; kk: = fc;
repeat
if a[ ia] <b[ ib] then
begin tt: = e[ kk] ; e[ kk] : = e[ ia] ; e[ ia] : = tt; c[ ic] : = a[ ia] ; ia: = ia+ 1 ; kk: = kk+ 1 end
else
begin tt: = e[ kk] ; e[ kk] : = e[ ib] ; e[ ib] : = tt; c[ ic] : = b[ ib] ; ib: = ib+ 1 ; kk: = kk+ 1 end ;
ic : = ic+ 1
until ( ia>la) or ( ib>lb) ;
for ia : = ia to la do
begin tt: = e[ kk] ; e[ kk] : = e[ ia] ; e[ ia] : = tt; c[ ic] : = a[ ia] ; ic: = ic+ 1 ; kk: = kk+ 1 end ;
for ib : = ib to lb do
begin tt: = e[ kk] ; e[ kk] : = e[ ib] ; e[ ib] : = tt; c[ ic] : = b[ ib] ; ic: = ic+ 1 ; kk: = kk+ 1 end ;
lc : = ic- 1
end ;
begin
readln ( N) ;
for ii: = 1 to N do read ( d[ ii] ) ; readln ;
mergesort( d, e, 1 , N)
cHJvZ3JhbSBweChpbnB1dCxvdXRwdXQpOwp0eXBlIGxpc3Q9YXJyYXkgWzEuLjZdIG9mIGludGVnZXI7CnZhcgogZCxlIDogbGlzdDsgaWksTiA6IGludGVnZXI7Cgpwcm9jZWR1cmUgbWVyZ2UodmFyIGEsYixjLGUgOiBsaXN0OwpmYSxsYSxmYixsYixmYyA6IGludGVnZXI7CnZhciBsYyA6IGludGVnZXIpOyBmb3J3YXJkOwpwcm9jZWR1cmUgbWVyZ2Vzb3J0KHZhciBhLGUgOiBsaXN0OwpmYSwgbGEgOiBpbnRlZ2VyKTsKdmFyIGIgOiBsaXN0OyBpLCBtaWQgOiBpbnRlZ2VyOwpiZWdpbgppZiBmYTxsYSB0aGVuCmJlZ2luIG1pZCA6PSAoZmEgKyBsYSkgZGl2IDI7Cm1lcmdlc29ydChhLGUsIGZhLCBtaWQpOwptZXJnZXNvcnQoYSxlLCBtaWQrMSwgbGEpOwptZXJnZShhLCBhLCBiLGUsZmEsIG1pZCwgbWlkKzEsCmxhLCBmYSwgbGEpOwpmb3IgaSA6PSBmYSB0byBsYSBkbyBhW2ldOj1iW2ldCmVuZAplbmQ7Cgpwcm9jZWR1cmUgbWVyZ2UodmFyIGEsYixjLGUgOiBsaXN0OwpmYSxsYSxmYixsYixmYyA6IGludGVnZXI7CnZhciBsYyA6IGludGVnZXIpOwp2YXIgaWEsIGliLCBpYyxrayx0dCA6IGludGVnZXI7CmJlZ2luCmlhIDo9IGZhOyBpYiA6PSBmYjsgaWMgOj0gZmM7IGtrOj1mYzsKcmVwZWF0CmlmIGFbaWFdPGJbaWJdIHRoZW4KYmVnaW4gdHQ6PWVba2tdO2Vba2tdOj1lW2lhXTtlW2lhXTo9dHQ7IGNbaWNdOj1hW2lhXTsgaWE6PWlhKzE7a2s6PWtrKzEgZW5kCmVsc2UKYmVnaW4gdHQ6PWVba2tdO2Vba2tdOj1lW2liXTtlW2liXTo9dHQ7IGNbaWNdOj1iW2liXTsgaWI6PWliKzE7a2s6PWtrKzEgZW5kOwppYyA6PSBpYysxCnVudGlsIChpYT5sYSkgb3IgKGliPmxiKTsKZm9yIGlhIDo9IGlhIHRvIGxhIGRvCmJlZ2luIHR0Oj1lW2trXTtlW2trXTo9ZVtpYV07ZVtpYV06PXR0OyBjW2ljXTo9YVtpYV07IGljOj1pYysxO2trOj1raysxIGVuZDsKZm9yIGliIDo9IGliIHRvIGxiIGRvCmJlZ2luIHR0Oj1lW2trXTtlW2trXTo9ZVtpYl07ZVtpYl06PXR0OyBjW2ljXTo9YltpYl07IGljOj1pYysxOyBrazo9a2srMSBlbmQ7CmxjIDo9IGljLTEKZW5kOwoKYmVnaW4KcmVhZGxuKE4pOwpmb3IgaWk6PTEgdG8gTiBkbyByZWFkKGRbaWldKTsgcmVhZGxuOwptZXJnZXNvcnQoZCxlLDEsTikg