# -*- coding: utf-8 -*-
"""
Created on Sat Sep 12 23:11:33 2020

@author: liang
"""

N, K = map(int, input().split())
ans = 0
for i in range(1,N+1):
    tmp = i
    count = 0
    while tmp< K:
        count += 1
        tmp *= 2
    ans += 1/2**count
ans /= N
print(ans) """
Created on Sat Sep 12 23:11:33 2020

@author: liang
""" 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):
    tmp = i
    count = 0
    while tmp< K:
        count += 1
        tmp *= 2
    ans += 1/2**count i range(1,N+1) range 1 N+1 N 1 tmp = i tmp i count = 0 count 0 while tmp< K:
        count += 1
        tmp *= 2
     tmp< K tmp K count += 1 count 1 tmp *= 2 tmp 2 ans += 1/2**count ans 1/2**count 1 2**count 2 count ans /= N ans N print(ans) print ans tmp *= 2 2 tmp tmp = i i tmp N, K = map(int, input().split()) map(int, input().split()) N ans += 1/2**count 1/2**count ans ans /= N N ans K = map(int, input().split()) map(int, input().split()) K ans = 0 0 ans count += 1 1 count count = 0 0 count
# -*- coding: utf-8 -*-
"""
Created on Sat Sep 12 23:11:33 2020

@author: liang
"""

N, K = map(int, input().split())
ans = 0
for i in range(1,N+1):
    tmp = i
    count = 0
    while tmp< K:
        count += 1
        tmp *= 2
    ans += 1/2**count
ans /= N
print(ans)