492_B. Vanya and Lanterns_36744
Vanya walks late at night along a straight street of length l, lit by n lanterns. Consider the coordinate system with the beginning of the street corresponding to the point 0, and its end corresponding to the point l. Then the i-th lantern is at the point ai. The lantern lights all points of the street that are at the distance of at most d from it, where d is some positive number, common for all lanterns. 

Vanya wonders: what is the minimum light radius d should the lanterns have to light the whole street?

Input

The first line contains two integers n, l (1 ≤ n ≤ 1000, 1 ≤ l ≤ 109) — the number of lanterns and the length of the street respectively. 

The next line contains n integers ai (0 ≤ ai ≤ l). Multiple lanterns can be located at the same point. The lanterns may be located at the ends of the street.

Output

Print the minimum light radius d, needed to light the whole street. The answer will be considered correct if its absolute or relative error doesn't exceed 10 - 9.

Examples

Input

7 15
15 5 3 7 9 14 0


Output

2.5000000000


Input

2 5
2 5


Output

2.0000000000

Note

Consider the second sample. At d = 2 the first lantern will light the segment [0, 4] of the street, and the second lantern will light segment [3, 5]. Thus, the whole street will be lit.
n,l=map(int,input().split())
a=list(map(int,input().split()))
a.sort()
max=0
for i in range(len(a)-1):
    if a[i+1]-a[i]>max:
        max=a[i+1]-a[i]
if a[0]>=max/2 and a[0]>=l-a[len(a)-1]:
    print("%.10f"%(a[0]))
elif l-a[len(a)-1]>=max/2 and l-a[len(a)-1]>=a[0]:
    print("%.10f"%(l-a[len(a)-1]))
elif max/2>=l-a[len(a)-1] and max/2>=a[0]:
    print("%.10f"%(max/2))


    

7 15
15 5 3 7 9 14 0
 2 5
2 5
 46 615683844
431749087 271781274 274974690 324606253 480870261 401650581 13285442 478090364 266585394 425024433 588791449 492057200 391293435 563090494 317950 173675329 473068378 356306865 311731938 192959832 321180686 141984626 578985584 512026637 175885185 590844074 47103801 212211134 330150 509886963 565955809 315640375 612907074 500474373 524310737 568681652 315339618 478782781 518873818 271322031 74600969 539099112 85129347 222068995 106014720 77282307
 2 555
200 300
 1 1
1
 1 5
2
 1 999999999
499999999
 4 15
1 3 9 11
 2 1000000000
0 1000000000
 2 1000
400 600
 5 1000
0 250 500 750 1000
 4 700
0 250 475 700
 1 1000000000
1000000000
 1 1
0
 4 700
0 225 450 700
 5 2000
1001 1001 1001 1001 1001
 1 1000000000
0
 1 999
501
 46 615683844
262825022 271781274 274974690 324606253 480870261 401650581 13285442 478090364 266585394 425024433 588791449 492057200 391293435 563090494 317950 173675329 473068378 356306865 311731938 192959832 321180686 141984626 578985584 512026637 175885185 590844074 47103801 212211134 330150 509886963 565955809 315640375 612907074 500474373 524310737 568681652 315339618 478782781 518873818 271322031 74600969 539099112 85129347 222068995 106014720 77282307
 2 555
200 265
 1 4
2
 1 707022538
499999999
 4 700
1 250 475 700
 5 2000
1001 1001 1001 1001 1000
 1 999
291
 7 15
15 5 5 7 9 14 0
 1 4
3
 4 700
1 116 475 700
 1 4
0
 5 2135
1001 1001 1001 1001 1000
 1 694
291
 4 1164
1 116 475 700
 1 8
0
 4 1164
1 116 769 700
 5 1518
1001 0001 1001 1001 1000
 7 23
7 5 2 5 4 14 0
 2 555
221 300
 1 2
1
 1 9
2
 2 1000
203 600
 5 1000
0 250 798 750 1000
 1 1000000001
1000000000
 2 951
200 265
 4 700
1 250 475 464
 5 2000
1001 0001 1001 1001 1000
 5 2135
1101 1001 1001 1001 1000
 1 496
291
 4 1164
1 116 771 700
 5 1518
1001 0001 1001 1001 1010
 5 1518
0001 0001 1001 1011 1000
 2 555
221 292
 2 1000
203 318
 7 15
15 5 5 7 18 14 0
 2 1638
200 265
 4 700
0 185 475 700
 2 1010
203 318
 2 1050
200 265
 5 2134
1001 0001 1001 1001 1001
 5 3202
1101 1001 1001 1001 0000
 5 1000
0 250 753 754 1010
 2 1806
200 265
 5 3674
1001 0001 1001 1001 1001
 1 2
0
 7 15
15 5 2 7 9 14 0
 1 6
3
 5 2135
1001 0001 1001 1001 1000
 7 23
15 5 2 7 9 14 0
 7 23
15 5 2 5 9 14 0
 5 1518
0001 0001 1001 1001 1000
 7 23
15 5 2 5 4 14 0
 7 23
7 2 2 5 4 14 0
 5 2000
1000 1001 1001 1001 1001
 7 15
15 5 5 7 11 14 0
 7 15
15 9 5 7 9 14 0
 1 5
3
 4 700
0 116 475 700
 7 18
15 5 2 7 9 14 0
 1 7
3
 4 1164
1 221 475 700
 5 2135
1001 0101 1001 1001 1000
 7 23
15 5 0 7 9 14 0
 7 23
15 5 2 5 10 14 0
 7 23
15 7 2 5 4 14 0
 1 3
2
 5 1000
0 250 753 750 1000
 5 2000
1000 1001 1001 1101 1001
 5 2000
1001 0001 1001 1001 1001
 5 2135
1101 1001 1001 1001 0000
 7 18
6 5 2 7 9 14 0
 7 23
15 5 0 7 6 14 0
 7 23
15 5 2 4 10 14 0
 7 23
15 7 2 5 4 14 1
 5 1000
0 250 753 750 1010
 7 15
15 5 5 7 6 14 0
 7 23
15 5 0 7 6 11 0
 7 23
15 5 2 4 10 14 1
 7 23
15 7 2 5 8 14 1
 2 1010
302 318
 7 15
15 5 5 7 1 14 0
 5 3202
1101 1001 1001 0001 0000
 7 23
15 5 0 7 6 12 0

2.5
 2.0
 22258199.5
 255.0
 1.0
 3.0
 500000000.0
 4.0
 500000000.0
 400.0
 125.0
 125.0
 1000000000.0
 1.0
 125.0
 1001.0
 1000000000.0
 501.0
 24021972.5
 290
 2
 499999999
 124.5
 1000.0
 708
 2.5
 3
 179.5
 4
 1134
 403
 464
 8
 395
 517
 9
 255
 1
 7
 400
 250.0
 1000000000
 686
 225
 999
 1034
 291
 393
 508
 507
 263
 682
 3.5
 1373
 145.0
 692
 785
 1133
 2101
 251.5
 1541
 2673
 2
 2.5
 3
 1134
 8
 8
 517
 8
 9
 1000.0
 2.5
 2.5
 3
 179.5
 3
 4
 464
 1134
 8
 8
 8
 2
 250.0
 1000.0
 999
 1034
 4
 8
 8
 8
 250.0
 3.5
 8
 8
 8
 692
 3.5
 2101
 8
