n,k = map(int,input().split())
coin = 1/2
pred = 1/n
ans = 0
for i in range(1, n+1):
    point = i
    count = 0
    while k > point:
        point *= 2
        count += 1
    ans += pred * coin ** count
print(ans) n,k = map(int,input().split()) n map(int,input().split()) map int input().split() ().split () input split k coin = 1/2 coin 1/2 1 2 pred = 1/n pred 1/n 1 n ans = 0 ans 0 for i in range(1, n+1):
    point = i
    count = 0
    while k > point:
        point *= 2
        count += 1
    ans += pred * coin ** count i range(1, n+1) range 1 n+1 n 1 point = i point i count = 0 count 0 while k > point:
        point *= 2
        count += 1
     k > point k point point *= 2 point 2 count += 1 count 1 ans += pred * coin ** count ans pred * coin ** count pred coin ** count coin count print(ans) print ans coin = 1/2 1/2 coin k = map(int,input().split()) map(int,input().split()) k ans += pred * coin ** count pred * coin ** count ans pred = 1/n 1/n pred ans = 0 0 ans point *= 2 2 point point = i i point n,k = map(int,input().split()) map(int,input().split()) n count = 0 0 count count += 1 1 count
n,k = map(int,input().split())
coin = 1/2
pred = 1/n
ans = 0
for i in range(1, n+1):
    point = i
    count = 0
    while k > point:
        point *= 2
        count += 1
    ans += pred * coin ** count
print(ans)