var buf = ''; process.stdin.on('readable', function () { var chunk = process.stdin.read(); if (chunk) buf += chunk.toString(); }); let getInputArgs = line => { return line .split(' ') .filter(s => s !== '') .map(x => parseInt(x)); }; function mergeSort(nums, left, right) { if (left >= right) { return; } const mid = (left + right) >> 1; mergeSort(nums, left, mid); mergeSort(nums, mid + 1, right); let i = left; let j = mid + 1; let tmp = []; while (i <= mid && j <= right) { if (nums[i] <= nums[j]) { tmp.push(nums[i++]); } else { tmp.push(nums[j++]); } } while (i <= mid) { tmp.push(nums[i++]); } while (j <= right) { tmp.push(nums[j++]); } for (i = left, j = 0; i <= right; ++i, ++j) { nums[i] = tmp[j]; } } process.stdin.on('end', function () { buf.split('\n').forEach(function (line, lineIdx) { if (lineIdx % 2 === 1) { nums = getInputArgs(line); mergeSort(nums, 0, nums.length - 1); console.log(nums.join(' ')); } }); });