Needs["CSM`SortAux`"]

InsertionSort::usage = "InsertionSort[l] sorts the list l."

InsertionSort[list_List] :=
	Module[{l = list, i, n = Length[list], j},
		Do[
			j = i-1;
			While[ j >= 1 && l[[j]] > l[[j+1]], swap[l, j, j+1]; j-- ],
		   {i, 2, n}];
		l
	]
