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

#コイン投げの回数
def coincnt(base,k):
    ans = 0
    while base<k:
        ans+=1
        base*=2
        
    return ans

p=0.0
for i in range(1,n+1):
    p+=(1/n)*(1/2)**coincnt(i,k)
    
print(p) n,k = map(int,input().split()) n map(int,input().split()) map int input().split() ().split () input split k def coincnt(base,k):
    ans = 0
    while base<k:
        ans+=1
        base*=2
        
    return ans coincnt ans = 0 ans 0 while base<k:
        ans+=1
        base*=2
        
     base<k base k ans+=1 ans 1 base*=2 base 2 return ans ans base base k k p=0.0 p 0.0 for i in range(1,n+1):
    p+=(1/n)*(1/2)**coincnt(i,k)
     i range(1,n+1) range 1 n+1 n 1 p+=(1/n)*(1/2)**coincnt(i,k) p (1/n)*(1/2)**coincnt(i,k) 1/n 1 n (1/2)**coincnt(i,k) 1/2 1 2 coincnt(i,k) coincnt i k print(p) print p k = map(int,input().split()) map(int,input().split()) k n,k = map(int,input().split()) map(int,input().split()) n def coincnt(base,k):
    ans = 0
    while base<k:
        ans+=1
        base*=2
        
    return ans def coincnt(base,k):
    ans = 0
    while base<k:
        ans+=1
        base*=2
        
    return ans coincnt p=0.0 0.0 p p+=(1/n)*(1/2)**coincnt(i,k) (1/n)*(1/2)**coincnt(i,k) p
n,k = map(int,input().split())

#コイン投げの回数
def coincnt(base,k):
    ans = 0
    while base<k:
        ans+=1
        base*=2
        
    return ans

p=0.0
for i in range(1,n+1):
    p+=(1/n)*(1/2)**coincnt(i,k)
    
print(p)