#include <stdio.h>

int should_move_right(int arrcj,int arrbmh,int pivot_cj,int pivot_bmh)
{
    if(arrcj != pivot_cj)
        return arrcj > pivot_cj;//按成绩降序
    else
        return arrbmh < pivot_bmh;//按报名号升序
}
void quick_sort(int arrcj[],int arrbmh[],int left,int right)
{
    if(left >= right) return;//递归结束条件
    int pivot_cj = arrcj[left];
    int pivot_bmh = arrbmh[left];
    int l = left;
    int r = right;
    while(l < r)
    {
        while(l < r && !should_move_right(arrcj[r],arrbmh[r],pivot_cj,pivot_bmh))
            r--;
        if(l < r)
        {
            arrcj[l] = arrcj[r];
            arrbmh[l] = arrbmh[r];
            l++;
        }
        while(l < r && should_move_right(arrcj[l],arrbmh[l],pivot_cj,pivot_bmh))
            l++;
        if(l < r)
        {
            arrcj[r] = arrcj[l];
            arrbmh[r] = arrbmh[l];
            r--;
        }
    }
    arrcj[l] = pivot_cj;
    arrbmh[l] = pivot_bmh;
    quick_sort(arrcj,arrbmh,left,l-1);
    quick_sort(arrcj,arrbmh,r+1,right);
}
int main() {
    int n,m;
    scanf("%d %d",&n,&m);
    int arrbmh[n],arrcj[n];
    int i;
    for(i=0;i<n;i++) scanf("%d %d",&arrbmh[i],&arrcj[i]);

    quick_sort(arrcj,arrbmh,0,n-1);//排序

    int t = m*1.5;
    int line = arrcj[t-1];//分数线,第t个人的分数,在数组中对应的下标应该减一
    int cnt = 0;
    //统计分数大于等于分数线的人数(进入面试的人数)
    for(i=0;i<n;i++)
    {
        if(arrcj[i] >= line)
            cnt++;
    }
    //最终输出
    printf("%d %d\n",line,cnt);
    for(i=0;i<cnt;i++)
        printf("%d %d\n",arrbmh[i],arrcj[i]);
    return 0;
}