private function sel($n) {
$ls = range(1,999999);
$min = 1;
$max = count($ls);
$mid = 0;
$r = '';
while ($min<$max) {
$mid = intval(($min+$max) / 2);
switch ($ls[$mid]<=>$n) {
case -1:
$max = $mid-1;
break;
case 1:
$max = $mid+1;
break;
case 0:
return $r = $ls[$mid];
break;
}
}
return $r;
}