Problem: A positive integer x is called a power of two if it can be represented as x = 2^y, where y is a non-negative integer. So, the powers of two are 1, 2, 4, 8, 16, ....

You are given two positive integers n and k. Your task is to represent n as the sum of exactly k powers of two.

Input

The only line of the input contains two integers n and k (1 ≤ n ≤ 10^9, 1 ≤ k ≤ 2 ⋅ 10^5).

Output

If it is impossible to represent n as the sum of k powers of two, print NO.

Otherwise, print YES, and then print k positive integers b_1, b_2, ..., b_k such that each of b_i is a power of two, and ∑ _{i = 1}^{k} b_i = n. If there are multiple answers, you may print any of them.

Examples

Input


9 4


Output


YES
1 2 2 4 


Input


8 1


Output


YES
8 


Input


5 1


Output


NO


Input


3 7


Output


NO

Solution (in PYTHON3):

Solution:
from math import log

L = []

def power_of_2(x):
    return 1<< (x).bit_length() - 1

def solve(n, k):
	if n == k:
		for i in range(n):
			L.append(1)
		return True
	if n < k:
		return False
	return helper(n, k - power_of_2(n), k - 1)

def helper(n, x, y):
	## Get closest power of 2
	p = power_of_2(n)
	## Get difference
	d = n - p

	L.append(p)

	## So we must use between 1 and p numbers
	## to get to p. Hence we must use between
	## k-p and k-1 numbers to make d 

	if d == 0 and x <= 0 and y >= 0:
		return True

	elif d == 0:
		return False

	else:
		return helper(d, x - p, y - 1)

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

if solve(n, k):
	total = len(L)
	ans = []
	for i, p in enumerate(L):
		if total + (p - 1) > k:
			## We need to split n into (k - total) groups
			chunks = k - total + 1

			p1 = p.bit_length() - 1
			p2 = chunks.bit_length() - 1

			num1 = 2 ** (p1 - p2)
			num2 = 2 ** (p1 - p2 -1)

			s1 = int((2 * (2 ** p2)) - chunks)
			s2 = int(chunks - s1)

			ans += [num1 for _ in range(s1)]
			ans += [num2 for _ in range(s2)]

			ans += L[i+1:]
			break

		else:
			total += p - 1
			ans += [1 for _ in range(p)]

	print('YES')
	print(' '.join(map(str,ans)))
else:
	print('NO')