An open-top box having a square bottom is placed on the floor. You see a number of needles vertically planted on its bottom.
You want to place a largest possible spheric balloon touching the box bottom, interfering with none of the side walls nor the needles.
Java Specific: Submitted Java programs may not use "java.awt.geom.Area". You may use it for your debugging purposes.
Figure 1 shows an example of a box with needles and the corresponding largest spheric balloon. It corresponds to the first dataset of the sample input below.
The input is a sequence of datasets. Each dataset is formatted as follows.
x_1 y_1 h_1
...
x_n y_n h_n
The first line of a dataset contains two positive integers, and , separated by a space. represents the number of needles, and represents the height of the side walls.
The bottom of the box is a 100 \times 100 square. The corners of the bottom face are placed at positions (, , ), (, , ), (, , ), and (, , ).
Each of the lines following the first line contains three integers, x_i, y_i, and h_i. (x_i, y_i, ) and h_i represent the base position and the height of the -th needle. No two needles stand at the same position.
You can assume that 1 \le n \le 10, 10 \le w \le 200, 0 < x_i < 100, 0 < y_i < 100 and 1 \le h_i \le 200. You can ignore the thicknesses of the needles and the walls.
The end of the input is indicated by a line of two zeros. The number of datasets does not exceed .

Figure 1. The upper shows an example layout and the lower shows the largest spheric balloon that can be placed.
For each dataset, output a single line containing the maximum radius of a balloon that can touch the bottom of the box without interfering with the side walls or the needles. The output should not contain an error greater than .
Esempio 1