N, K = map(int, input().split())
sum = 0
for i in range(1, N+1):
	j = 0
	while True:
		if (i*(2**j)) >= K:
			break
		j += 1
	sum += (1/N)*((1/2)**j)
print(sum) N, K = map(int, input().split()) N map(int, input().split()) map int input().split() ().split () input split K sum = 0 sum 0 for i in range(1, N+1):
	j = 0
	while True:
		if (i*(2**j)) >= K:
			break
		j += 1
	sum += (1/N)*((1/2)**j) i range(1, N+1) range 1 N+1 N 1 j = 0 j 0 while True:
		if (i*(2**j)) >= K:
			break
		j += 1
	 True if (i*(2**j)) >= K:
			break
		 (i*(2**j)) >= K i*(2**j) i 2**j 2 j K break j += 1 j 1 sum += (1/N)*((1/2)**j) sum (1/N)*((1/2)**j) 1/N 1 N (1/2)**j 1/2 1 2 j print(sum) print sum N, K = map(int, input().split()) map(int, input().split()) N sum += (1/N)*((1/2)**j) (1/N)*((1/2)**j) sum K = map(int, input().split()) map(int, input().split()) K sum = 0 0 sum j += 1 1 j j = 0 0 j
N, K = map(int, input().split())
sum = 0
for i in range(1, N+1):
	j = 0
	while True:
		if (i*(2**j)) >= K:
			break
		j += 1
	sum += (1/N)*((1/2)**j)
print(sum)