import java.util.*;
import java.util.stream.Collectors;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
int[] arr = new int[100001];
while (in.hasNext()) { // 注意 while 处理多个 case
int n = in.nextInt(), m = in.nextInt();
in.nextLine();
int k, s;
Map<Integer, Integer> map = new HashMap<Integer, Integer>();
for (int i = 0; i < n; i++) {
k = in.nextInt();
s = in.nextInt();
map.put(k, s);
}
List<Map.Entry<Integer, Integer>> list = map.entrySet().stream()
.sorted(Map.Entry.<Integer, Integer>comparingByValue((num1,
num2) -> num2 - num1) // 按value(成绩)降序
.thenComparing(Map.Entry.comparingByKey())) // 分数相同时按key(报考号)升序
.collect(Collectors.toList()); // 转成List
int quota = (int)(1.5 * m); // 计划录取名额
int score = list.get(quota - 1).getValue(); // 分数线
int persons = 0; // 实际录取人数
for (Map.Entry<Integer, Integer> entry : list) {
if (entry.getValue() < score)
break;
persons++;
}
System.out.println(score + " " + (persons));
for (Map.Entry<Integer, Integer> entry : list) {
if (entry.getValue() < score)
break;
System.out.println(entry.getKey() + " " + entry.getValue());
}
}
}
}