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>).
import math as ma

a,b=list(map(int,input().split()))

if b>a:
    print(-1)
else:
    e=[]
    d=ma.ceil((a-b)/(2*b))
    if (a-b)/(2*d)>=b:
        e.append((a-b)/(2*d))
    if d>1:
        d-=1
        if (a-b)/(2*d)>=b:
            e.append((a-b)/(2*d))
    d=ma.ceil((a+b)/(2*b))
    if (a+b)/(2*d)>=b:
        e.append((a+b)/(2*d))
    if d>1:
        d-=1
        if (a+b)/(2*d)>=b:
            e.append((a+b)/(2*d))
    if len(e)==0:
        print(-1)
    else:
        print(min(e))