#include <bits/stdc++.h>

using namespace std;

int main()
{
    int w,q,broj, i, x, j;
    long double h, y, r;
    cin>>w>>h>>r>>q;

    long double niz[w+1];
    for(i=0; i<=w; i++)
    {
        niz[i]=0.00000001;
        niz[i]=h;
    }
    for(j=0; j<q; j++)
    {
        cin>>broj;
        if(broj==1)
        {
            cin>>x>>y;
            if(r>(y-niz[x]))
            {
                double j=x;
                niz[x]=y-r;
                for(i=1; ((i<r)&&(i+x<=w)); i++)
                {
                    if(niz[x+i]>(y-sqrt(r*r-i*i)))
                    {
                        niz[x+i]=y-sqrt((r*r-i*i));
                    }
                    else
                    {
                        break;
                    }
                }
                for(i=1; ((i<r)&&(x-i>=0)); i++)
                {
                    if(niz[x-i]>(y-sqrt(r*r-i*i)))
                    {
                        niz[x-i]=y-sqrt(r*r-i*i);
                    }
                    else
                    {
                        break;
                    }
                }
            }
        }
        else
        {
            cin>>x;
            cout<<setprecision(10)<<niz[x];
        }
    }

    return 0;
}