CF1095C Powers Of Two

Description

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, \dots $ . 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 Format

The only line of the input contains two integers $ n $ and $ k $ ( $ 1 \le n \le 10^9 $ , $ 1 \le k \le 2 \cdot 10^5 $ ).

Output Format

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, \dots, b_k $ such that each of $ b_i $ is a power of two, and $ \sum \limits_{i = 1}^{k} b_i = n $ . If there are multiple answers, you may print any of them.