#include <iostream>
#include<vector>
#include <algorithm>
using namespace std;


int main() {
    int x,y;
    int ld[2]={0,0};
        int ru[2]={0,0};
        vector<int> xz;
        vector<int> yz;
    while(cin>>x>>y)
    {
        
    if(x==0&&y==0)
    {
        if(ld[0]==0&&ld[1]==0&&ru[0]==0&&ru[1]==0)
        continue;
        else
         {
        cout<<ld[0]<<" "<<ld[1]<<" "<<ru[0]<<" "<<ru[1]<<endl;
        ld[0]=0;ld[1]=0;ru[0]=0;ru[1]=0;
        xz.clear();yz.clear();
         }
    }
    else {
        xz.push_back(x);
        yz.push_back(y);
        sort(xz.begin(),xz.end());
        sort(yz.begin(),yz.end());
        auto it=xz.begin();
        ld[0]=*it;
        it=yz.begin();
        ld[1]=*it;
        it=xz.end()-1;
        ru[0]=*it;
        it=yz.end()-1;
        ru[1]=*it;
    }
    
    
    }
}

// 64 位输出请用 printf("%lld")
//取x轴和y轴上最大值和最小值之差作为长宽就可以了

逻辑很简单,写起来这方法蠢爆了,更蠢的是第一次居然把ld和ru还有xz,yz都定义在while循环里面,导致每次循环都得初始化为空一次,所以没有任何输出,关键是排查了好久都没查出来,气笑了