N,K=map(int,input().strip().split())

c=0
for n in range(1,N+1):
    if n>K:
        c+=1/N
    else:
        cnt=0
        while n<K:
            n*=2
            cnt+=1
        c+=1/N*(1/2)**cnt
print(c) N,K=map(int,input().strip().split()) N map(int,input().strip().split()) map int input().strip().split() ().strip().split ().strip() ().strip () input strip split K c=0 c 0 for n in range(1,N+1):
    if n>K:
        c+=1/N
    else:
        cnt=0
        while n<K:
            n*=2
            cnt+=1
        c+=1/N*(1/2)**cnt n range(1,N+1) range 1 N+1 N 1 if n>K:
        c+=1/N
    else:
        cnt=0
        while n<K:
            n*=2
            cnt+=1
        c+=1/N*(1/2)**cnt n>K n K c+=1/N c 1/N 1 N cnt=0 cnt 0 while n<K:
            n*=2
            cnt+=1
         n<K n K n*=2 n 2 cnt+=1 cnt 1 c+=1/N*(1/2)**cnt c 1/N*(1/2)**cnt 1/N 1 N (1/2)**cnt 1/2 1 2 cnt print(c) print c c=0 0 c cnt+=1 1 cnt n*=2 2 n N,K=map(int,input().strip().split()) map(int,input().strip().split()) N cnt=0 0 cnt c+=1/N*(1/2)**cnt 1/N*(1/2)**cnt c c+=1/N 1/N c K=map(int,input().strip().split()) map(int,input().strip().split()) K
N,K=map(int,input().strip().split())

c=0
for n in range(1,N+1):
    if n>K:
        c+=1/N
    else:
        cnt=0
        while n<K:
            n*=2
            cnt+=1
        c+=1/N*(1/2)**cnt
print(c)