There is a polyline going through points (0, 0) – (*x*, *x*) – (2*x*, 0) – (3*x*, *x*) – (4*x*, 0) – ... - (2*kx*, 0) – (2*kx* + *x*, *x*) – .... 

We know that the polyline passes through the point (*a*, *b*). Find minimum positive value *x* such that it is true or determine that there is no such *x*.
Only one line containing two positive integers *a* and *b* (1 ≤ *a*, *b* ≤ 10<sup class="upper-index">9</sup>).
a, b=[int(k) for k in input().split()]
if b>a:
    print(-1)
else:
    if (a%b)==0 and (a//b)%2==1:
        print(b)
    else:
        c=(a//b-1)//2*2+1
        #print(c)
        #x-(a-c*x)=b
        #x+cx-a=b
        x=(a+b)/(1+c)
        print(x)

   
#/\/\/\/\/\/\