import math

n, k = map(int, input().split())

tmp = []
for i in range(1, n + 1):
    if i < k:
        num = (-1 * math.log2(k / i)) // 1 * -1 
        tmp.append(num)
    else:
        tmp.append(0)
        
ans = 0
for i in range(n):
    ans += 2**(tmp[0] - tmp[i])

print(ans / (n * 2**tmp[0])) import math math n, k = map(int, input().split()) n map(int, input().split()) map int input().split() ().split () input split k tmp = [] tmp [] for i in range(1, n + 1):
    if i < k:
        num = (-1 * math.log2(k / i)) // 1 * -1 
        tmp.append(num)
    else:
        tmp.append(0)
         i range(1, n + 1) range 1 n + 1 n 1 if i < k:
        num = (-1 * math.log2(k / i)) // 1 * -1 
        tmp.append(num)
    else:
        tmp.append(0)
         i < k i k num = (-1 * math.log2(k / i)) // 1 * -1 num (-1 * math.log2(k / i)) // 1 * -1 (-1 * math.log2(k / i)) // 1 -1 * math.log2(k / i) -1 math.log2(k / i) math.log2 math log2 k / i k i 1 -1 tmp.append(num) tmp.append tmp append num tmp.append(0) tmp.append tmp append 0 ans = 0 ans 0 for i in range(n):
    ans += 2**(tmp[0] - tmp[i]) i range(n) range n ans += 2**(tmp[0] - tmp[i]) ans 2**(tmp[0] - tmp[i]) 2 tmp[0] - tmp[i] tmp[0] tmp 0 tmp[i] tmp i print(ans / (n * 2**tmp[0])) print ans / (n * 2**tmp[0]) ans n * 2**tmp[0] n 2**tmp[0] 2 tmp[0] tmp 0 tmp = [] [] tmp n, k = map(int, input().split()) map(int, input().split()) n ans = 0 0 ans num = (-1 * math.log2(k / i)) // 1 * -1 (-1 * math.log2(k / i)) // 1 * -1 num ans += 2**(tmp[0] - tmp[i]) 2**(tmp[0] - tmp[i]) ans k = map(int, input().split()) map(int, input().split()) k
import math

n, k = map(int, input().split())

tmp = []
for i in range(1, n + 1):
    if i < k:
        num = (-1 * math.log2(k / i)) // 1 * -1 
        tmp.append(num)
    else:
        tmp.append(0)
        
ans = 0
for i in range(n):
    ans += 2**(tmp[0] - tmp[i])

print(ans / (n * 2**tmp[0]))