n,k=map(int,input().split())
ans=0
for i in range(1,n+1):
    for j in range(10**5):
        if i*2**j>=k:
            ans+=(0.5)**j/n
            break
print(ans) n,k=map(int,input().split()) n map(int,input().split()) map int input().split() ().split () input split k ans=0 ans 0 for i in range(1,n+1):
    for j in range(10**5):
        if i*2**j>=k:
            ans+=(0.5)**j/n
            break i range(1,n+1) range 1 n+1 n 1 for j in range(10**5):
        if i*2**j>=k:
            ans+=(0.5)**j/n
            break j range(10**5) range 10**5 10 5 if i*2**j>=k:
            ans+=(0.5)**j/n
            break i*2**j>=k i*2**j i 2**j 2 j k ans+=(0.5)**j/n ans (0.5)**j/n (0.5)**j 0.5 j n break print(ans) print ans n,k=map(int,input().split()) map(int,input().split()) n ans=0 0 ans ans+=(0.5)**j/n (0.5)**j/n ans k=map(int,input().split()) map(int,input().split()) k
n,k=map(int,input().split())
ans=0
for i in range(1,n+1):
    for j in range(10**5):
        if i*2**j>=k:
            ans+=(0.5)**j/n
            break
print(ans)