#include <stdio.h>
#include <math.h>
int v[32000];
int s,e;
void swap(int x,int y)
{
int temp;
temp=v[x];
v[x]=v[y];
v[y]=temp;
}
int pt(int start,int end)
{
s=start+1;
e=end;
while (s<=e)
{
while (v[start]>v[s])
{
s++;
}
while (v[start]<v[e])
{
e--;
}
if (s<=e)
{
swap(s,e);
}
}
swap(start,e);
return e;
}
void qs(int g,int h)
{
int j;
j=pt(g,h);
if (g<=h)
{
qs(g,j-1);
qs(j+1,h);
}
}
int main()
{
int a,b,k=0,c=0,t=0;
int sa, sb;
for (int i=0; i<5; i++)
{
scanf("%d",&v[i]);
}
{
//scanf("%d %d",&a,&b);
/*
sa = sqrt(a);
sb = sqrt(b);
for (int i=1; i<=sb; i++)
{
if (a%i==0)
{
if(i<=sa)
{
v[k]=i;
k++;
if(i!=a/i)
{
v[k]=a/i;
k++;
}
}
c=1;
}
if (b%i==0&&(a!=b))
{
if (c==1)
{
if (b/i!=i)
{
v[k]=b/i;
k++;
}
}
else
{
if (b/i!=i)
{
if(i!=a)
{
v[k]=i;
k++;
}
if(b/i!=a)
{
v[k]=b/i;
k++;
}
}
else
{
if(i!=a)
{
v[k]=i;
k++;
}
}
}
}
c=0;
}
*/
}
qs(0,4);
for (int i=0; i<5; i++)
{
printf("%d ",v[i]);
}
}