#include <iostream>
#include <stdio.h>
#include <vector>
#include <cmath>

using namespace std;

void kvadratna(int w,int h,int r,int q)
{
    vector <double> x(w+1,h);
    int a,b,c;
    while(q--)
    {
        scanf("%d",&c);
        if(c==1)
        {
            scanf("%d %d",&a,&b);
            for(int i=max(0,a-r+1);i<w+1&&i<a+r-1;i++)
                if(b-sqrt(r*r+abs(a-i))<x[i])
                    x[i]=b-sqrt(r*r+abs(a-i));

        }
        else
        {
            scanf("%d",&a);
            printf("%.9f\n",x[a]);
        }
    }
}

int main()
{
    int w,h,r,q;
    scanf("%d %d %d %d",&w,&h,&r,&q);
    kvadratna(w,h,r,q);

    return 0;
}