import java.util.*; class G27 { public static void swap( ArrayList list, int i, int j ){ swapGen(list,i,j); } private static void swapGen( ArrayList list, int i, int j ){ Object list_i = list.get(i); list.set(i,list.get(j)); list.set(j,list_i); } private static Comparable maxGen( Collection c ){ Iterator it = c.iterator(); Comparable m = (Comparable) it.next(); while( it.hasNext() ){ Comparable e = (Comparable) it.next(); if( m.compareTo(e) < 0 ){ m = e; } } return m; } public static Comparable max( Collection c ){ return maxGen(c); } private static Object maxGen( Collection c, Comparator comp ){ Iterator it = c.iterator(); Object m = it.next(); while( it.hasNext() ){ Object e = it.next(); if( comp.compare(m,e) < 0 ){ m = e; } } return m; } public static Object max( Collection c, Comparator comp ){ return maxGen(c,comp); } private static int indexOfMax( ArrayList c, int size ){ int mi = 0; Comparable m = size > 0 ? (Comparable) c.get(mi) : null; for( int i=1; i<size; ++i ){ Comparable e = (Comparable) c.get(i); if( m.compareTo(e) < 0 ){ m = e; mi = i; } } return mi; } private static void sortGen( ArrayList list ){ for( int i = list.size(); i > 1; --i ){ int mi = indexOfMax(list,i); swap(list,mi,i-1); } } public static void sort( ArrayList list ){ sortGen(list); } public static void main( String[] args ){ ArrayList list = fromArrayToList(args); sort(list); printCollection(list); } public static ArrayList fromArrayToList( Object[] a ){ ArrayList list = new ArrayList(a.length); for( Object o: a ){ list.add(o); } return list; } public static void printCollection( Collection c ){ for( Object o: c ){ System.out.println(o); } } }