#include<iostream>
#include<cmath>
#include<iomanip>
using namespace std;
int main()
{
    int w,h,r,q,i,k,d=0,j,x0;
    double x[100000],y[100000];
    long double maks,duz,ymax,hd;
    cin>>w>>h>>r>>q;
    for(i=0;i<q;i++)
    {
        cin>>k;
        if(k==1)
        {
            cin>>x[d]>>y[d];
            d++;
        }
        else if (k==2)
        {
            maks=0;
            ymax=0;
            cin>>x0;
            for(j=0;j<d;j++)
            {
                if (x[j]>=x0-r+1 && x[j]<=x0+r-1)
                {
                    duz=sqrt(r*r-(x0-x[j])*(x0-x[j]));
                    if (duz>maks){
                        maks=duz;
                        ymax=y[j];}
                }
            }
            if (maks!=0){
            cout<<fixed;
            cout<<setprecision(9);
            cout<<ymax-maks<<endl;
            }
            else{
                hd=h;
                cout<<fixed;
                cout<<setprecision(12);
                cout<<hd<<endl;
            }
        }
    }
}