<?php

// your code goes here

$arr = array(2,3,4,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12);
$arr2 =array(2,2,3,3,4,4,5,5,6,7,8,9,10,11,12);
function sortIt($arr) {
	$sortedArray = array();
	$sortedArrays = array();
	
	while (count($arr)) {
		$mini = min($arr);
		$sortedArray = array();
		while (array_search($mini, $arr) !== false) {
			$pos = array_search($mini, $arr);
			array_push($sortedArray, $arr[$pos]);
			array_splice($arr, $pos, 1);
			$mini++;
		}
		array_push($sortedArrays, $sortedArray);
	}
	
	$changed = true;
	while ($changed) {
		$changed = false;
		for ($i = 0; $i < count($sortedArrays) - 1; $i++) {
			if ($sortedArrays[$i][0] > $sortedArrays[$i + 1][0]) {
				$temp = $sortedArrays[$i];
				$sortedArrays[$i] = $sortedArrays[$i + 1];
				$sortedArrays[$i + 1] = $temp;
				$changed = true;
			}
		}
	}
	
	$changed = true;
	while ($changed) {
		$changed = false;
		for ($i = 0; $i < count($sortedArrays) - 1; $i++) {
			if (end($sortedArrays[$i]) > end($sortedArrays[$i + 1])) {
				$temp = $sortedArrays[$i];
				$sortedArrays[$i] = $sortedArrays[$i + 1];
				$sortedArrays[$i + 1] = $temp;
				$changed = true;
			}
		}
	}
	$newArr = array();
	for ($i = 0; $i < count($sortedArrays); $i++) {
		$newArr = array_merge ($newArr, $sortedArrays[$i]);
	}
	return $newArr;
}
echo json_encode(sortIt($arr));
echo "\n";
echo json_encode(sortIt($arr2));