#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
    int W, H, R, Q;
    scanf("%d %d %d %d", &W, &H, &R, &Q);
    int arr[Q][3];
    int i, j, ind;
    double xi, yi, xt, yt;
    double height;
    double prvi, drugi;
    for(i = 0; i < Q; i++){
        scanf("%d", &arr[i][0]);
        if(arr[i][0] == 1)
        {
            scanf("%d %d", &arr[i][1], &arr[i][2]);
        } else scanf("%d", &arr[i][1]);
    }
    double koord[2][W];
    for(i = 0; i < W; i++){
        koord[0][i] = 0;
        koord[1][i] = H;

    }
    for(i = 0; i < Q; i++){

        if(arr[i][0] == 2){
            ind = arr[i][1];
            height = koord[1][ind] - koord[0][ind];
            printf("%.12lf\n", height);
        } else
        {
            xi = (double)arr[i][1];
            yi = (double)arr[i][2];
            for(j = 0; j < W; j++){
                prvi = yi + sqrt(R*R - (xi - j)*(xi - j));
                drugi = yi - sqrt(R*R - (xi - j)*(xi - j));
//                printf("%lf %lf %lf %lf\n", prvi, drugi, koord[1][j], koord[0][j]);
                if(abs(prvi - koord[1][j]) < abs(drugi - koord[1][j]) && prvi < koord[1][j]) koord[1][j] = prvi;
                else if(drugi < koord[1][j])koord[1][j] = drugi;
            }
        }
    }
}