N, K = list(map(int, input().split()))
Pd = 1 / N
Pc = 0.5
ans = []
def f(i):
  P = Pd
  while(i<K):
    P = P * Pc
    i = 2 * i
  return P

for j in range(1,N+1):
  ans.append(f(j))
  
print(sum(ans)) N, K = list(map(int, input().split())) N list(map(int, input().split())) list map(int, input().split()) map int input().split() ().split () input split K Pd = 1 / N Pd 1 / N 1 N Pc = 0.5 Pc 0.5 ans = [] ans [] def f(i):
  P = Pd
  while(i<K):
    P = P * Pc
    i = 2 * i
  return P f P = Pd P Pd while(i<K):
    P = P * Pc
    i = 2 * i
   i<K i K P = P * Pc P P * Pc P Pc i = 2 * i i 2 * i 2 i return P P i i for j in range(1,N+1):
  ans.append(f(j))
   j range(1,N+1) range 1 N+1 N 1 ans.append(f(j)) ans.append ans append f(j) f j print(sum(ans)) print sum(ans) sum ans def f(i):
  P = Pd
  while(i<K):
    P = P * Pc
    i = 2 * i
  return P def f(i):
  P = Pd
  while(i<K):
    P = P * Pc
    i = 2 * i
  return P f Pd = 1 / N 1 / N Pd K = list(map(int, input().split())) list(map(int, input().split())) K ans = [] [] ans N, K = list(map(int, input().split())) list(map(int, input().split())) N Pc = 0.5 0.5 Pc
N, K = list(map(int, input().split()))
Pd = 1 / N
Pc = 0.5
ans = []
def f(i):
  P = Pd
  while(i<K):
    P = P * Pc
    i = 2 * i
  return P

for j in range(1,N+1):
  ans.append(f(j))
  
print(sum(ans))