from decimal import Decimal, getcontext
getcontext().prec = 20
N, K = map(int, input().split())
res = 0
for p in range(1,N+1):
    cnt = 0
    q = 1
    while p*q <K:
        cnt += 1
        q *= 2
    res += Decimal(pow(1/2,cnt))
print(res/N) from decimal import Decimal, getcontext getcontext().prec = 20 getcontext().prec () getcontext prec 20 N, K = map(int, input().split()) N map(int, input().split()) map int input().split() ().split () input split K res = 0 res 0 for p in range(1,N+1):
    cnt = 0
    q = 1
    while p*q <K:
        cnt += 1
        q *= 2
    res += Decimal(pow(1/2,cnt)) p range(1,N+1) range 1 N+1 N 1 cnt = 0 cnt 0 q = 1 q 1 while p*q <K:
        cnt += 1
        q *= 2
     p*q <K p*q p q K cnt += 1 cnt 1 q *= 2 q 2 res += Decimal(pow(1/2,cnt)) res Decimal(pow(1/2,cnt)) Decimal pow(1/2,cnt) pow 1/2 1 2 cnt print(res/N) print res/N res N res = 0 0 res res += Decimal(pow(1/2,cnt)) Decimal(pow(1/2,cnt)) res N, K = map(int, input().split()) map(int, input().split()) N cnt = 0 0 cnt q *= 2 2 q q = 1 1 q K = map(int, input().split()) map(int, input().split()) K cnt += 1 1 cnt
from decimal import Decimal, getcontext
getcontext().prec = 20
N, K = map(int, input().split())
res = 0
for p in range(1,N+1):
    cnt = 0
    q = 1
    while p*q <K:
        cnt += 1
        q *= 2
    res += Decimal(pow(1/2,cnt))
print(res/N)